Security System Capability

I’ve had a little play with that. As there is also a ‘dead’ capability named Alarm System which matches the known attributes and commands for working with the Smart Home Monitor, I rather assumed Security System might be intended for SmartThings Home Monitor, and my limited experiments certainly suggest it doesn’t really have any broader utility at the moment. I guess perhaps we aren’t really supposed to have noticed it.

There are various, as yet undocumented, security things starting to appear on the radar, like the r:security:locations:*:armstate scope for tokens, and the SECURITY_ARM_STATE subscription type.

Update: In case anyone was wondering …

{
    "id": "alarmSystem",
    "version": 1,
    "status": "dead",
    "name": "Alarm System",
    "attributes": {
        "alarmSystemStatus": {
            "schema": {
                "type": "object",
                "properties": {
                    "value": {
                        "title": "AlarmSystemState",
                        "type": "string",
                        "enum": [
                            "away",
                            "off",
                            "stay"
                        ]
                    }
                },
                "additionalProperties": false,
                "required": [
                    "value"
                ]
            },
            "enumCommands": [
                {
                    "command": "sendEvent(alarmSystemStatus,off)",
                    "value": "off"
                },
                {
                    "command": "sendEvent(alarmSystemStatus,stay)",
                    "value": "stay"
                },
                {
                    "command": "sendEvent(alarmSystemStatus,away)",
                    "value": "away"
                }
            ]
        }
    },
    "commands": {
        "sendEvent(alarmSystemStatus,off)": {
            "arguments": []
        },
        "sendEvent(alarmSystemStatus,stay)": {
            "arguments": []
        },
        "sendEvent(alarmSystemStatus,away)": {
            "arguments": []
        }
    }
}
{
    "id": "securitySystem",
    "version": 1,
    "status": "live",
    "name": "Security System",
    "attributes": {
        "securitySystemStatus": {
            "schema": {
                "type": "object",
                "properties": {
                    "value": {
                        "type": "string",
                        "enum": [
                            "armedAway",
                            "armedStay",
                            "disarmed"
                        ]
                    }
                },
                "additionalProperties": false,
                "required": [
                    "value"
                ]
            },
            "enumCommands": [
                {
                    "command": "armStay",
                    "value": "armedStay"
                },
                {
                    "command": "armAway",
                    "value": "armedAway"
                },
                {
                    "command": "disarm",
                    "value": "disarmed"
                }
            ]
        },
        "alarm": {
            "schema": {
                "type": "object",
                "properties": {
                    "value": {
                        "title": "String",
                        "type": "string",
                        "maxLength": 255
                    }
                },
                "additionalProperties": false,
                "required": [
                    "value"
                ]
            },
            "enumCommands": []
        }
    },
    "commands": {
        "armStay": {
            "arguments": [
                {
                    "name": "bypassAll",
                    "optional": false,
                    "schema": {
                        "type": "boolean"
                    }
                }
            ]
        },
        "armAway": {
            "arguments": [
                {
                    "name": "bypassAll",
                    "optional": false,
                    "schema": {
                        "type": "boolean"
                    }
                }
            ]
        },
        "disarm": {
            "arguments": []
        }
    }
}
4 Likes