Example #1
0
 def update(self, message: MQTTMessage):
     from core.commons.CommonsManager import CommonsManager
     self.message = message
     self.intentName = message.topic
     self.payload = CommonsManager.payload(message)
     self.slots.update(CommonsManager.parseSlots(message))
     self.slotsAsObjects.update(CommonsManager.parseSlotsToObjects(message))
     self.customData.update(CommonsManager.parseCustomData(message))
Example #2
0
    def test_parseCustomData(self):
        class MQTTMessage:
            def __init__(self, payload):
                self.payload = payload

        self.assertEqual(CommonsManager.parseCustomData(MQTTMessage(None)),
                         dict())
        self.assertEqual(
            CommonsManager.parseCustomData(
                MQTTMessage(b'{"customData": "nonJsonString"}')), dict())
        self.assertEqual(
            CommonsManager.parseCustomData(
                MQTTMessage(b'{"customData": null}')), dict())
        self.assertEqual(
            CommonsManager.parseCustomData(
                MQTTMessage('{"customData": "{\\"test\\": \\"test\\"}"}')),
            {'test': 'test'})
Example #3
0
    def extend(self, message: MQTTMessage, sessionId: str = None):
        if sessionId:
            self.sessionId = sessionId

        from core.commons.CommonsManager import CommonsManager
        self.message = message
        self.intentName = message.topic
        self.payload = CommonsManager.payload(message)
        self.slots = CommonsManager.parseSlots(message)
        self.slotsAsObjects = CommonsManager.parseSlotsToObjects(message)
        self.customData = CommonsManager.parseCustomData(message)