文档中心 > 预建模型 (Pre-Built Models)

ConnectedCar.LockController接口

更新时间:2019/02/26 访问次数:277

AliGenie.ConnectedCar.LockController 接口描述了用来控制智连车中车锁的信息。

指令

Lock指令

支持 Lock 指令能让用户使用语音透过你的技能进行锁车操作。

以下是一个用户用来锁车的问句:
用户: 天猫精灵,帮我锁车

Payload

Lock 指令的payload为空。

Lock指令示例

{
  "directive": {
    "header": {
      "namespace": "AliGenie.ConnectedCar.LockController",
      "name": "Lock",
      "payloadVersion": "1",
      "messageId": "abc-123-def-456",
      "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg=="
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "appliance-001",
      "cookie": {}
    },
    "payload": {}
  }
}

Lock回复事件

如果技能服务成功的处理了 Lock 指令,则回复事件的方式 (同步或异步返回) 需要根据硬件实际完成操作的速度来决定。

如果你的硬件只需要5秒或更少的时间就能进行上锁操作,则你可以直接返回 Response 事件。但如果硬件需要5秒以上的时间完成操作的话,则请先返回一个 DeferredResponse 事件,并在操作实际完成时再对TOP的回复接口进行上报。

也就是说,回复的处理有以下两种方式:

  • 同步回复,技能服务操作完后直接返回 Response 事件。
  • 异步回复,技能服务操作完后上报结果给 alibaba.ailabs.aligenie.response TOP接口。

记得要在回复的上下文中带上lockState属性的值。

能够较快完成操作的锁的response事件示例

{
    "event": {
        "header": {
            "namespace": "AliGenie",
            "name": "Response",
            "payloadVersion": "1",
            "messageId": "abc-123-def-456",
            "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg=="
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "access-token-from-Amazon"
            },
            "endpointId": "appliance-001"
        },
        "payload": {}
    },
    "context": {
        "properties": [
            {
                "namespace": "AliGenie.ConnectedCar.LockController",
                "name": "lockState",
                "value": "LOCKED",
                "timeOfSample": "2017-02-03T16:20:50Z",
                "uncertaintyInMilliseconds": 1000
            }
        ]
    },
}

慢锁的DeferredResponse事件示例

{
  "event": {
    "header": {
      "namespace": "AliGenie",
      "name": "DeferredResponse",
      "messageId": "abc-123-def-456",
      "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg==",
      "payloadVersion": "1"
    },
    "payload": {
      "estimatedDeferralInSeconds": 20
    }
  }
}

慢锁回复的TOP接口调用示例

TBD

Lock指令的错误处理

如果你无法成功处理 Lock 指令,则请回复 AliGenie.ErrorResponse 事件。

Unlock指令

支持 Unlock 指令能让用户使用语音透过你的技能进行解锁操作。

以下是一个用户用来解锁的问句:
用户: 天猫精灵,解锁我的车

Payload

Unlock 指令的payload为空。

Unlock指令示例

{
  "directive": {
    "header": {
      "namespace": "AliGenie.ConnectedCar.LockController",
      "name": "Unlock",
      "payloadVersion": "1",
      "messageId": "abc-123-def-456",
      "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg=="
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "appliance-001",
      "cookie": {}
    },
    "payload": {}
  }
}

Unlock回复事件

如果技能服务成功的处理了 Unlock 指令,则回复事件的方式 (同步或异步返回) 需要根据硬件实际完成操作的速度来决定。

如果你的硬件只需要5秒或更少的时间就能进行解锁操作,则你可以直接返回 Response 事件。但如果硬件需要5秒以上的时间完成操作的话,则请先返回一个 DeferredResponse 事件,并在操作实际完成时再对TOP的回复接口进行上报。

也就是说,回复的处理有以下两种方式:

  • 同步回复,技能服务操作完后直接返回 Response 事件。
  • 异步回复,技能服务操作完后上报结果给 alibaba.ailabs.aligenie.response TOP接口。

记得要在回复的上下文中带上lockState属性的值。

能够较快完成操作的锁的response事件示例

{
    "event": {
        "header": {
            "namespace": "AliGenie",
            "name": "Response",
            "payloadVersion": "1",
            "messageId": "abc-123-def-456",
            "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg=="
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "access-token-from-Amazon"
            },
            "endpointId": "appliance-001"
        },
        "payload": {}
    },
    "context": {
        "properties": [
            {
                "namespace": "AliGenie.ConnectedCar.LockController",
                "name": "lockState",
                "value": "UNLOCKED",
                "timeOfSample": "2017-02-03T16:20:50Z",
                "uncertaintyInMilliseconds": 1000
            }
        ]
    },
}

慢锁的DeferredResponse事件示例

{
  "event": {
    "header": {
      "namespace": "AliGenie",
      "name": "DeferredResponse",
      "messageId": "abc-123-def-456",
      "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg==",
      "payloadVersion": "1"
    },
    "payload": {
      "estimatedDeferralInSeconds": 20
    }
  }
}

慢锁回复的TOP接口调用示例

TBD

Unlock指令的错误处理

如果你无法成功处理 Unlock 指令,则请回复 AliGenie.ErrorResponse 事件。

FAQ

关于此文档暂时还没有FAQ
返回
顶部