State

/osc/state API 会返回相机的 state 属性。不同之处 与 info API 之间的不同之处在于,state 包含可变值 表示相机状态(例如 batteryLevel),而 info 仅包含相机的静态属性(例如 manufacturer 或 不经常更改的属性,如 firmwareVersion)

输入

  • 此命令不接受输入。

输出

名称 类型 说明
fingerprint 字符串 当前相机状态的指纹(唯一标识符)。
state 对象 包含各种相机状态的 JSON 对象。请参阅下表。

state 对象

此 JSON 对象提供各种相机状态。制造商可以 提供新的自定义状态,这些状态应以下划线 ( _ ) 为前缀 以防止命名空间冲突

名称 类型 说明
sessionId 字符串 当前会话的 ID。此字段在 API 级别 2 中已废弃。
batteryLevel 数字 以剩余电量的浮点值表示,例如0.5 分
storageChanged 布尔值 如果插入/移除了一种新的存储设备(例如 SD 卡或 U 盘),则为 true。 此字段在 API 级别 2 中已废弃。
storageUri 字符串 用于区分不同存储空间的唯一标识符。它用于判断存储空间是否已更改。 此字段是 API 级别 2 中的新增字段。
_vendorSpecific [类型](可选) 有关相机的供应商特定其他状态。请使用下划线 ( _ ) 作为前缀,以防止命名空间冲突。

错误

  • 此命令不会返回任何错误。

示例

请求
POST /osc/state HTTP/1.1
Host: [camera ip address]:[httpPort]
Accept: application/json
X-XSRF-Protected: 1
答案
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8
Content-Length: {CONTENT_LENGTH}
X-Content-Type-Options: nosniff

{
    "fingerprint": "12EGA33",
    "state": {
        "sessionId": "12ABC3",
        "batteryLevel": 0.5,
        "storageChanged": false
    }
}