Can someone confirm that event handlers based on context should be fired on any utterance?
It seems that was the case until recently, now one of my skills is broken.
Consider the following.
# bridge.of.death.voc # bridge of death @intent_handler(IntentBuilder('BridgeOfDeathIntent') .require('bridge.of.death')) def handle_bridge_of_death_intent(self, message): self.speak_dialog("What is your name?", expect_response=True) self.set_context('AskQuestContex') @intent_handler(IntentBuilder('').require('AskQuestContex').build()) def handle_quest_context_intent(self, message): self.remove_context('AskQuestContex') self.speak_dialog("What is your quest?")
I expect the second handler to respond to any utterance, since ‘AskQuestContext’ is set.
This is what happens:
bridge of death >> What is your name? sir robin --- 4.59 >> You might have to say that a different way.
Interestingly I have a file named “sir.lancelot.voc” containing the single line “sir lancelot”.
Even though the file is never mentioned in init.py this happens:
bridge of death >> What is your name? sir lancelot 5 -*- 4.80 >> What is your quest?