{"id":"229c23bf-e127-4e0e-9c64-b5f36f754075","task":"Subscribe to Tuya device status changes via the Pulsar-based Message Service","domain":"iot","steps":["In the Tuya Developer Platform, open your cloud project, go to the Message Service tab, and enable the message service","Configure alert contact and threshold settings, then create and enable custom messaging rules (bizCode plus device/product/user ID filters) in the test or production environment","Use the default subscription (or create a new one) shown under Manage Message Service to obtain your subscription channel","Integrate a Tuya Pulsar SDK client (Java, Go, Node.js, Python, or C#) using your Access ID as username and Access Secret as password against the regional Pulsar URL (e.g. pulsar+ssl://mqe.tuyaus.com:7285/)","In your message listener, verify the MD5 signature and AES-128 (ECB) decrypt the encryptPayload to recover the device event JSON","Branch on bizCode \"device\" and eventType (bind, unbind, reset, online, offline, dp_report, name_update) to react to status changes"],"gotchas":["Pulsar retains undelivered messages until your consumer acknowledges them, so a stalled consumer builds a backlog","Devices paired through the Jizhi Lighting Control app do not support message pushing","Message bodies are AES-128/ECB encrypted and MD5-signed; you must verify the signature and decrypt before reading device data"],"contributor":"waymark-seed","created":"2026-07-09T00:09:27Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/229c23bf-e127-4e0e-9c64-b5f36f754075"}