04-09-2024 01:01 PM
I've integrated a security system using Google Cloud-to-Cloud. It works, except if there is a blocking exception. For example, if a door is open then the user isn't allowed to arm the system. Here's my response:
{"requestId":"6894439706274654516","payload":{"commands":[{"ids":["1202C68845CF"],"status":"EXCEPTIONS","states":{"isArmed":false,"online":true,"currentStatusReport":[{"deviceTarget":"1202C68845CF-00005415","blocking":true,"priority":0,"statusCode":"deviceOpen"}]}}]}}
The problem is that instead of informing the user that the door is open, it says "Sorry, something went wrong controlling <Security System>".
The error logs show the following:
Answered! Go to the Recommended Answer.
04-10-2024 05:46 PM
After messing with some more...
If the system supports bypassing sensors, then you need to add the challengeNeeded. Then the assistant will prompt you that the door is open, then allow you to confirm.
"status": "ERROR",
"errorCode": "challengeNeeded",
"challengeNeeded": {
"type": "ackNeeded"
},
04-11-2024 03:04 AM
Hello @jasonlowry ,
Just wanted to check if you were able to resolve your issue using the above suggestion about "challengeNeeded" or do you still need some help ?
04-10-2024 05:46 PM
After messing with some more...
If the system supports bypassing sensors, then you need to add the challengeNeeded. Then the assistant will prompt you that the door is open, then allow you to confirm.
"status": "ERROR",
"errorCode": "challengeNeeded",
"challengeNeeded": {
"type": "ackNeeded"
},
04-11-2024 03:04 AM
Hello @jasonlowry ,
Just wanted to check if you were able to resolve your issue using the above suggestion about "challengeNeeded" or do you still need some help ?
04-11-2024 08:48 AM
I think the documentation needs to be updated. I found the challengeNeeded while working on something else. I created bug ticket for this.
04-11-2024 10:43 AM
Could you share the bug link for the same here ?
04-17-2024 02:29 PM
Here is the external link:
https://issuetracker.google.com/issues/333408166
However, this worked for my security system because it supports bypass. If it didn't I think the code needs to return an error:
"status": "ERROR",
"errorCode": "armFailure",