1)User Request to SoulHub

    Discription: User request to SoulHub for set State

    Direction: Application ----> SoulHub

    Request Topic: "NameSpaceId + "/CONTROLLER/" + modelNumber + "/" + SERIAL + "/HUB_REQ"
                    e.g. "TEST_123/CONTROLLER/GENfvb5fdgfgfg4/ClouzerSoulTest-51/HUB_REQ"

    Request Object:

        {
            "data":{
                "requestId":"TS_1590131864339",
                "userId":"admin@clouzer.com",
                "clientId":"v2admin_1658766940226",
                "connectionProtocol":"MQTT",
                "connectionId":"TS_1590131864339",
                "dataArray":[],
                "updateData":{
                    "CML_TEMPERATURE":4500
                },
                "queryData":{
                    "CML_CONTROL_MODE":1,
                    "CML_SUB_TYPE":"LIGHT",
                    "TARGET":"/ID1657800689908705780517124/ID1657805052207362508128703/ID165786438343196932317753/ID1658491406986159298727409"
                },
                "CallerInfo":{
                    "source":[],
                    "caller":"soulHubAction",
                    "portalAction":false,
                    "tsEntry":1658766940677
                }
            },
            "essentialList":{
                "ID_ARRAY":[
                    "ID1658491406986159298727409"
                ]
            },
            "type":"set_properties"
        }

2)checking soulPy process

    Discription: SoulHub checks python process is running or not.

    Direction: SoulHub ----> ProcessMonitor

    Process: "soulPy"

    Request Topic: "process/status/get"

    Response Topic: "process/status/get_res"

3)SoulHub request to database for userlist

    Discription: if soulPy is running then SoulHub needs to fetch the userlist from database.

    Direction: SoulHub ----> soulPy

    Request Topic: "soulDb/fetch"

    Request Object:

        {
            "data":{
                "entity_type":"userlist",
                "and":{
                    "eq":{
                        "username":"admin@clouzer.com"
                    }
                }
            },
            "communicationId":"1658767862896get_user185",
            "CallerInfo":{
                "source":[],
                "caller":"soulHubAction",
                "portalAction":false,
                "tsEntry":1658767862894
            }
        }

    Direction: soulPy ----> soulHub

    Response Topic: "soulDb/Response"

    Response Object:

        {
            "data":[
                {
                    "userId":"",
                    "username":"admin@clouzer.com",
                    "RECOVERY_MAIL":"admin@clouzersoul.com",
                    "LKEY_VAL":"admin@clouzer.com",
                    "ACTION":"REGISTER_HUB_USER",
                    "hubId":"",
                    "RegisterWith":"clouzer",
                    "firstName":"admin",
                    "lastName":"admin",
                    "JWTTOKEN":"",
                    "ACTIVE_STATUS":1,
                    "KEY_VAL":"",
                    "logintype":"default",
                    "ROLE":1,
                    "USM_IMAGE_PATH":"",
                    "entity_type":"userlist",
                    "CML_HIDDEN":0
                },
                {
                    "userId":"ID1657804966667940453170",
                    "username":"admin@clouzer.com",
                    "RECOVERY_MAIL":"admin@cloudsmaintenance.clouzer.com",
                    "LKEY_VAL":"admin@cloudsmaintenance.clouzer.com",
                    "ACTION":"",
                    "hubId":"ClouzerSoulTest-51",
                    "RegisterWith":"cloudsmaintenance.clouzer",
                    "firstName":"clouzer",
                    "lastName":"user",
                    "JWTTOKEN":"",
                    "ACTIVE_STATUS":1,
                    "KEY_VAL":"tempKeyVal",
                    "logintype":"user",
                    "ROLE":1,
                    "USM_IMAGE_PATH":"",
                    "entity_type":"userlist",
                    "CML_HIDDEN":1
                }
            ],
            "type":"dbFetch",
            "communicationId":"1658767862896get_user185",
            "CallerInfo":{
                "portalAction":false,
                "caller":"soulHubAction",
                "source":[
                    "soulHub",
                    "soulPy"
                ]
            }
        }

4)SoulHub request to database for role map

    Discription: after fetching userlist SoulHub request to fetch role_map.

    Direction: SoulHub ----> soulPy

    Request Topic: "soulDb/fetch"

    Request Object:

        {
            "data":{
                "entity_type":"role_map",
                "and":{
                    "eq":{
                        "ROLE":1
                    }
                }
            },
            "communicationId":"1658767863174role_map204",
            "CallerInfo":{
                "portalAction":false,
                "caller":"soulHubAction",
                "source":[
                    "soulHub",
                    "soulPy"
                ]
            }
        }

    Direction: soulPy ----> soulHub

    Response Topic: "soulDb/Response"

    Response Object:

        {
            "data":[
                {
                    "ID":"ID1657804939149286176019566",
                    "ROLE":1,
                    "RULE_ID":1,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID165780493971797945719749",
                    "ROLE":1,
                    "RULE_ID":21,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID1657804939110212934482361",
                    "ROLE":1,
                    "RULE_ID":23,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID1657804939169828374230985",
                    "ROLE":1,
                    "RULE_ID":54,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID1657804939528693387514626",
                    "ROLE":1,
                    "RULE_ID":22,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID1657804939570917227761302",
                    "ROLE":1,
                    "RULE_ID":31,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID165780493992649211128092",
                    "ROLE":1,
                    "RULE_ID":32,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID1657804939291574658040093",
                    "ROLE":1,
                    "RULE_ID":33,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID1657804939248706673048143",
                    "ROLE":1,
                    "RULE_ID":41,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID16578049393374858610603",
                    "ROLE":1,
                    "RULE_ID":42,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID1657804939884208612488340",
                    "ROLE":1,
                    "RULE_ID":43,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID165780493955464856151590",
                    "ROLE":1,
                    "RULE_ID":11,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID1657804939891182192696343",
                    "ROLE":1,
                    "RULE_ID":51,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID1657804939408133139661798",
                    "ROLE":1,
                    "RULE_ID":52,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                },
                {
                    "ID":"ID165780493948145682751619",
                    "ROLE":1,
                    "RULE_ID":53,
                    "KEY_VAL":"",
                    "entity_type":"role_map"
                }
            ],
            "type":"dbFetch",
            "communicationId":"1658767863174role_map204",
            "CallerInfo":{
                "portalAction":false,
                "caller":"soulHubAction",
                "source":[
                    "soulHub",
                    "soulPy",
                    "soulHub",
                    "soulPy"
                ]
            }
        }

5)SoulHub request to python for check device action.

    Discription: SoulHub sends request to python for check device action.

    Direction: SoulHub ----> soulPy

    Request Topic: "python/deviceActon"

    Request Object:

        {
            "data":{
                "requestId":"TS_1590131864339",
                "userId":"admin@clouzer.com",
                "clientId":"v2admin_1658767862451",
                "connectionProtocol":"MQTT",
                "connectionId":"TS_1590131864339",
                "dataArray":[],
                "updateData":{
                    "CML_TEMPERATURE":4500
                },
                "queryData":{
                    "CML_CONTROL_MODE":1,
                    "CML_SUB_TYPE":"LIGHT",
                    "TARGET":"/ID1657800689908705780517124/ID1657805052207362508128703/ID165786438343196932317753/ID1658491406986159298727409"
                },
                "CallerInfo":{
                    "source":[
                        "soulHub"
                    ],
                    "caller":"soulHubAction",
                    "portalAction":false,
                    "tsEntry":1658767862894
                },
                "communicationId":"1658767863457setProperties152"
            },
            "essentialList":{
                "ID_ARRAY":[
                    "ID1658491406986159298727409"
                ]
            },
            "type":"set_properties"
        }

    Direction: soulPy ----> soulHub

    Response Topic: "node/deviceState"

    Response Object:

        {
            "data":{
                "requestId":"TS_1590131864339",
                "userId":"admin@clouzer.com",
                "clientId":"v2admin_1658767862451",
                "connectionProtocol":"MQTT",
                "connectionId":"TS_1590131864339",
                "dataArray":[
                    {
                        "CML_SCENE_ID":185,
                        "override":"",
                        "CML_STATE":1,
                        "CML_SETPOINT":88,
                        "CML_TEMPERATURE":4500,
                        "CML_STATUS":1,
                        "CML_HUE":0,
                        "CML_SATURATION":0,
                        "CML_LIGHTNESS":-1,
                        "COLOR_SUPPORTED":0,
                        "DEVICE_ID":"ID1658491406986159298727409",
                        "LKEY_VAL":"ID1658491406986159298727409",
                        "STRUCTURE_ID":"ID165786438343196932317753",
                        "TARGET":"/ID1657800689908705780517124/ID1657805052207362508128703/ID165786438343196932317753/ID1658491406986159298727409",
                        "KEY_TYPE":"TSK",
                        "SUB_KEY_TYPE":"TSK_PRO_DEV_ORG",
                        "CML_TYPE":"DEVICE",
                        "CML_SUB_TYPE":"LIGHT",
                        "CML_TITLE":"Mirabella Light ecfabc0cd3f8",
                        "KEY_VAL":"bgfhiaajiafbiicfb.cloudsbuilder.clouzer.com#PRJ_HUB_1657804924595_18#SEC_PRO_DEV_ORG_001#TSK_PRO_DEV_ORG_1658576287990_16",
                        "SYNC_PENDING_STATUS":-1,
                        "CREATED_BY_ON_CLOUZER_SOUL":"",
                        "CREATED_ON_ON_CLOUZER_SOUL":1658491404863,
                        "LAST_MODIFIED_BY_ON_CLOUZER_SOUL":"",
                        "LAST_MODIFIED_ON_ON_CLOUZER_SOUL":1658491404863,
                        "CREATED_BY":"",
                        "CREATED_ON":"",
                        "LAST_MODIFIED_BY":"",
                        "LAST_MODIFIED_ON":"",
                        "ACTIVE_STATUS":1,
                        "CML_MANUFACTURER_NAME":"mirabella",
                        "CML_MANUFACTURER_ID":"",
                        "CML_SERIAL_ID":"ecfabc0cd3f8",
                        "CML_NAME":"Mirabella Light ecfabc0cd3f8",
                        "CML_TESTABLE":"true",
                        "CML_MAC_ID":"",
                        "CML_INSTALLATION_DATE":"",
                        "CML_CONTROLLER_ID":"NA",
                        "CML_CONTROL_MODE":1,
                        "CML_EXPIRY_DATE":"",
                        "IO_MODE":-1,
                        "INPUT_PROTOCOL":"",
                        "OUTPUT_PROTOCOL":"",
                        "CML_SUPPORTING_ZONE":"NA",
                        "CML_SUPPORTED_TYPE":"LIGHT",
                        "CML_DEVICE_FIRMWARE":"NA",
                        "MODEL_NUMBER":"1819043170",
                        "OWNER_ID":"NA",
                        "concept":"LIGHT",
                        "CML_DEVICE_REF":"",
                        "CML_GROUP_REF":"",
                        "CREDENTIAL_ID":"NA",
                        "INTERFACE_ID":"ID16584906349775561509344",
                        "entity_type":"devices",
                        "CML_SWITCH_CNTR_ID":"NA",
                        "CML_SHORT_NAME":"smartLight",
                        "DEVICE_TYPE_ID":""
                    }
                ],
                "updateData":{
                    "CML_TEMPERATURE":4500
                },
                "queryData":{
                    "CML_CONTROL_MODE":1,
                    "CML_SUB_TYPE":"LIGHT",
                    "TARGET":"/ID1657800689908705780517124/ID1657805052207362508128703/ID165786438343196932317753/ID1658491406986159298727409"
                },
                "CallerInfo":{
                    "source":[
                        "soulHub",
                        "soulPy"
                    ],
                    "caller":"soulHubAction",
                    "portalAction":false,
                    "tsEntry":1658767862894
                },
                "communicationId":"1658767863457setProperties152"
            },
            "essentialList":{
                "ID_ARRAY":[
                    "ID1658491406986159298727409"
                ]
            },
            "type":"set_properties_hub"
        }

    Direction: soulPy ----> soulHub

    Response Topic: "node/roomState "

    Response Object:

        {
            "data":{
                "requestId":"TS_1590131864339",
                "userId":"admin@clouzer.com",
                "clientId":"v2admin_1658767862451",
                "connectionProtocol":"MQTT",
                "connectionId":"TS_1590131864339",
                "dataArray":[
                    {
                        "CML_SCENE_ID":185,
                        "override":0,
                        "CML_STATE":1,
                        "CML_SETPOINT":88,
                        "CML_TEMPERATURE":4500,
                        "CML_STATUS":1,
                        "CML_HUE":0,
                        "CML_SATURATION":0,
                        "CML_LIGHTNESS":-1,
                        "COLOR_SUPPORTED":0,
                        "STRUCTURE_ID":"ID165786438343196932317753",
                        "LKEY_VAL":"ID165786438343196932317753",
                        "TARGET":"/ID1657800689908705780517124/ID1657805052207362508128703/ID165786438343196932317753",
                        "PROPERTY_ID":"ID1657800689908705780517124",
                        "FLOOR_ID":"ID1657805052131155289",
                        "ROOM_ID":"ID1657864382923170261",
                        "GROUP_ID":"-1",
                        "CML_TYPE":"room",
                        "CML_SUB_TYPE":"Kitchen",
                        "CML_TITLE":"r2",
                        "KEY_VAL":"bgfhiaajiafbiicfb.cloudsbuilder.clouzer.com#PRJ_ORG_WKS_1657801024796_1670#SEC_FLR_1657805053043_18#TSK_PRO_ROM_ORG_1657864383757_79",
                        "SYNC_PENDING_STATUS":-1,
                        "KEY_TYPE":"TSK",
                        "SUB_KEY_TYPE":"TSK_PRO_ROM_ORG",
                        "CREATED_BY_ON_CLOUZER_SOUL":"ashwini.tote@clouzer.com",
                        "CREATED_ON_ON_CLOUZER_SOUL":1657844583256,
                        "LAST_MODIFIED_BY_ON_CLOUZER_SOUL":"ashwini.tote@clouzer.com",
                        "LAST_MODIFIED_ON_ON_CLOUZER_SOUL":1657844583257,
                        "CREATED_BY":"",
                        "CREATED_ON":"",
                        "LAST_MODIFIED_BY":"",
                        "LAST_MODIFIED_ON":"",
                        "ACTIVE_STATUS":1,
                        "entity_type":"structure",
                        "PROJECT_ID":"",
                        "CREDENTIAL_ID":"",
                        "INTERFACE_ID":"",
                        "ELEM_TYPE":"LIGHT",
                        "device_count":[

                        ]
                    }
                ],
                "updateData":{
                    "CML_TEMPERATURE":4500
                },
                "queryData":{
                    "CML_CONTROL_MODE":1,
                    "CML_SUB_TYPE":"LIGHT",
                    "TARGET":"/ID1657800689908705780517124/ID1657805052207362508128703/ID165786438343196932317753/ID1658491406986159298727409"
                },
                "CallerInfo":{
                    "source":[
                        "soulHub",
                        "soulPy"
                    ],
                    "caller":"soulHubAction",
                    "portalAction":false,
                    "tsEntry":1658767862894
                },
                "communicationId":"1658767863457setProperties152"
            },
            "essentialList":{
                "ID_ARRAY":[
                    "ID1658491406986159298727409"
                ]
            },
            "type":"set_properties_hub"
        }

    Direction: soulPy ----> soulHub

    Response Topic: "node/floorState"

    Response Object:

        {
            "data":{
                "requestId":"TS_1590131864339",
                "userId":"admin@clouzer.com",
                "clientId":"v2admin_1658767862451",
                "connectionProtocol":"MQTT",
                "connectionId":"TS_1590131864339",
                "dataArray":[
                    {
                        "CML_SCENE_ID":185,
                        "override":0,
                        "CML_STATE":1,
                        "CML_SETPOINT":0,
                        "CML_TEMPERATURE":2265,
                        "CML_STATUS":1,
                        "CML_HUE":-1,
                        "CML_SATURATION":-1,
                        "CML_LIGHTNESS":-1,
                        "COLOR_SUPPORTED":0,
                        "STRUCTURE_ID":"ID1657805052207362508128703",
                        "LKEY_VAL":"ID1657805052207362508128703",
                        "TARGET":"/ID1657800689908705780517124/ID1657805052207362508128703",
                        "PROPERTY_ID":"ID1657800689908705780517124",
                        "FLOOR_ID":"ID1657805052131155289",
                        "ROOM_ID":"0",
                        "GROUP_ID":"-1",
                        "CML_TYPE":"floor",
                        "CML_SUB_TYPE":"",
                        "CML_TITLE":"floor1",
                        "KEY_VAL":"bgfhiaajiafbiicfb.cloudsbuilder.clouzer.com#PRJ_ORG_WKS_1657801024796_1670#SEC_WIZ_LYT_0057#TSK_LST_FLR_1657805053041_9",
                        "SYNC_PENDING_STATUS":0,
                        "KEY_TYPE":"SEC",
                        "SUB_KEY_TYPE":"SEC_FLR",
                        "CREATED_BY_ON_CLOUZER_SOUL":"ashwini.tote@bgfhiaajiafbiicfb.cloudsbuilder.clouzer.com",
                        "CREATED_ON_ON_CLOUZER_SOUL":1657785251917,
                        "LAST_MODIFIED_BY_ON_CLOUZER_SOUL":"ashwini.tote@bgfhiaajiafbiicfb.cloudsbuilder.clouzer.com",
                        "LAST_MODIFIED_ON_ON_CLOUZER_SOUL":1657785251918,
                        "CREATED_BY":"",
                        "CREATED_ON":"",
                        "LAST_MODIFIED_BY":"",
                        "LAST_MODIFIED_ON":"",
                        "ACTIVE_STATUS":1,
                        "entity_type":"structure",
                        "PROJECT_ID":"",
                        "CREDENTIAL_ID":"",
                        "INTERFACE_ID":"",
                        "ELEM_TYPE":"LIGHT",
                        "device_count":[

                        ]
                    }
                ],
                "updateData":{
                    "CML_TEMPERATURE":4500
                },
                "queryData":{
                    "CML_CONTROL_MODE":1,
                    "CML_SUB_TYPE":"LIGHT",
                    "TARGET":"/ID1657800689908705780517124/ID1657805052207362508128703/ID165786438343196932317753/ID1658491406986159298727409"
                },
                "CallerInfo":{
                    "source":[
                        "soulHub",
                        "soulPy"
                    ],
                    "caller":"soulHubAction",
                    "portalAction":false,
                    "tsEntry":1658767862894
                },
                "communicationId":"1658767863457setProperties152"
            },
            "essentialList":{
                "ID_ARRAY":[
                    "ID1658491406986159298727409"
                ]
            },
            "type":"set_properties_hub"
        }

    Direction: soulPy ----> soulHub

    Response Topic: "node/propertyState"

    Response Object:

        {
            "data":{
                "requestId":"TS_1590131864339",
                "userId":"admin@clouzer.com",
                "clientId":"v2admin_1658767862451",
                "connectionProtocol":"MQTT",
                "connectionId":"TS_1590131864339",
                "dataArray":[
                    {
                        "CML_SCENE_ID":185,
                        "override":0,
                        "CML_STATE":1,
                        "CML_SETPOINT":0,
                        "CML_TEMPERATURE":2265,
                        "CML_STATUS":1,
                        "CML_HUE":-1,
                        "CML_SATURATION":-1,
                        "CML_LIGHTNESS":-1,
                        "COLOR_SUPPORTED":0,
                        "PROPERTY_ID":"ID1657800689908705780517124",
                        "LKEY_VAL":"",
                        "KEY_VAL":"bgfhiaajiafbiicfb.cloudsbuilder.clouzer.com#PRJ_ORG_WKS_1657801024796_1670",
                        "CML_TYPE":"property",
                        "TARGET":"/ID1657800689908705780517124",
                        "SYNC_PENDING_STATUS":0,
                        "CML_TITLE":"cst51",
                        "KEY_TYPE":"PRJ",
                        "SUB_KEY_TYPE":"PRJ_PRO",
                        "CREATED_BY_ON_CLOUZER_SOUL":"",
                        "CREATED_ON_ON_CLOUZER_SOUL":1657800689,
                        "LAST_MODIFIED_BY_ON_CLOUZER_SOUL":"ashwini.tote@bgfhiaajiafbiicfb.cloudsbuilder.clouzer.com",
                        "LAST_MODIFIED_ON_ON_CLOUZER_SOUL":1657804933759,
                        "CREATED_BY":"",
                        "CREATED_ON":"",
                        "LAST_MODIFIED_BY":"",
                        "LAST_MODIFIED_ON":"",
                        "ACTIVE_STATUS":1,
                        "CML_RETROFIT":"",
                        "LOCATION_ID":"ID1657800689861221959162181",
                        "entity_type":"property",
                        "PROPERTY_TYPE":"",
                        "CML_IMAGE_PATH":"['/hdfs/ashwini.tote@clouzer.com/Cloud%20Vault/Media/Upload/2022/Jul/1657800978966_9568_cropped1.png']",
                        "ELEM_TYPE":"LIGHT",
                        "device_count":[

                        ]
                    }
                ],
                "updateData":{
                    "CML_TEMPERATURE":4500
                },
                "queryData":{
                    "CML_CONTROL_MODE":1,
                    "CML_SUB_TYPE":"LIGHT",
                    "TARGET":"/ID1657800689908705780517124/ID1657805052207362508128703/ID165786438343196932317753/ID1658491406986159298727409"
                },
                "CallerInfo":{
                    "source":[
                        "soulHub",
                        "soulPy"
                    ],
                    "caller":"soulHubAction",
                    "portalAction":false,
                    "tsEntry":1658767862894
                },
                "communicationId":"1658767863457setProperties152"
            },
            "essentialList":{
                "ID_ARRAY":[
                    "ID1658491406986159298727409"
                ]
            },
            "type":"set_properties_hub"
        }

6)SoulHub request to dapi for set state

    Discription: SoulHub respond with updated device status and then after request for dapi to set state

    Direction: SoulHub ----> dapi

    Request Topic: "mirabella/light/set_properties_hub"

    Request Object:

        {
            "deviceArr":[
                {
                    "id":"ecfabc0cd3f8",
                    "controllerId":"NA"
                }
            ],
            "CallerInfo":{
                "source":[
                    "soulHub"
                ],
                "caller":"soulHubAction",
                "portalAction":false,
                "tsEntry":1658767862894
            },
            "requestId":"TS_1590131864339",
            "userId":"admin@clouzer.com",
            "CML_SCENE_ID":185,
            "override":"",
            "state":1,
            "setpoint":88,
            "kelvin":4500,
            "status":1,
            "hue":0,
            "saturation":0,
            "lightness":-1,
            "COLOR_SUPPORTED":0,
            "device_id":"ID1658491406986159298727409",
            "LKEY_VAL":"ID1658491406986159298727409",
            "STRUCTURE_ID":"ID165786438343196932317753",
            "TARGET":"/ID1657800689908705780517124/ID1657805052207362508128703/ID165786438343196932317753/ID1658491406986159298727409",
            "KEY_TYPE":"TSK",
            "SUB_KEY_TYPE":"TSK_PRO_DEV_ORG",
            "cml_type":"DEVICE",
            "deviceType":"LIGHT",
            "title":"Mirabella Light ecfabc0cd3f8",
            "key_val":"bgfhiaajiafbiicfb.cloudsbuilder.clouzer.com#PRJ_HUB_1657804924595_18#SEC_PRO_DEV_ORG_001#TSK_PRO_DEV_ORG_1658576287990_16",
            "SYNC_PENDING_STATUS":-1,
            "CREATED_BY_ON_CLOUZER_SOUL":"",
            "CREATED_ON_ON_CLOUZER_SOUL":1658491404863,
            "LAST_MODIFIED_BY_ON_CLOUZER_SOUL":"",
            "LAST_MODIFIED_ON_ON_CLOUZER_SOUL":1658491404863,
            "CREATED_BY":"",
            "CREATED_ON":"",
            "LAST_MODIFIED_BY":"",
            "LAST_MODIFIED_ON":"",
            "ACTIVE_STATUS":1,
            "manufacturer":"mirabella",
            "CML_MANUFACTURER_ID":"",
            "id":"ecfabc0cd3f8",
            "device_name":"Mirabella Light ecfabc0cd3f8",
            "CML_TESTABLE":"true",
            "CML_MAC_ID":"",
            "CML_INSTALLATION_DATE":"",
            "controllerId":"NA",
            "CML_CONTROL_MODE":1,
            "CML_EXPIRY_DATE":"",
            "IO_MODE":-1,
            "INPUT_PROTOCOL":"",
            "OUTPUT_PROTOCOL":"",
            "supporting_zone":"NA",
            "supported_type":"LIGHT",
            "CML_DEVICE_FIRMWARE":"NA",
            "product_id":"1819043170",
            "OWNER_ID":"NA",
            "concept":"LIGHT",
            "CML_DEVICE_REF":"",
            "CML_GROUP_REF":"",
            "CREDENTIAL_ID":"NA",
            "INTERFACE_ID":"ID16584906349775561509344",
            "entity_type":"devices",
            "switchcontrollerId":"NA",
            "CML_SHORT_NAME":"smartLight",
            "DEVICE_TYPE_ID":"",
            "actions":{
                "CML_TEMPERATURE":4500
            }
        }

Sequence Diagram

test