腾讯云手机支持云手机实例事件回调。当云手机状态发生改变时,腾讯云将主动发送请求到客户服务器,客户服务器负责应答请求。验证通过后,您可被动获取到云手机事件回调信息的 JSON 数据包。
目前支持的事件包括:实例开机、实例关机、实例重置、实例升级镜像、实例重建、实例重启、实例拷贝、实例备份、实例还原、异步命令执行、文件分发、应用黑名单设置、宿主机重启、实例安装应用。
事件消息通知协议
网络协议
请求:HTTP POST 请求,包体内容为 JSON,消息的具体包体内容参见后文。
应答:HTTP STATUS CODE = 200,腾讯云忽略应答包具体内容。
通知可靠性
事件通知服务具备重试能力,重试间隔为1分钟,总计重试3次。
为了避免重试对您的服务器以及网络带宽造成冲击,请保持正常回包。触发重试条件如下:
长时间(5 秒)未回包应答。
应答 HTTP STATUS 不为200。
事件参数说明
事件类型参数
事件类型 | 字段取值说明 |
实例开机 | CallbackType = START_INSTANCE |
实例关机 | CallbackType = STOP_INSTANCE |
实例重置 | CallbackType = RESET_INSTANCE |
实例升级镜像 | CallbackType = UPGRADE_INSTANCE |
实例重建 | CallbackType = RECREATE_INSTANCE |
实例重启 | CallbackType = REBOOT_INSTANCE |
实例拷贝 | CallbackType = COPY_INSTANCE |
实例备份 | CallbackType = BACKUP_INSTANCE |
实例还原 | CallbackType = RESTORE_INSTANCE |
异步命令执行 | CallbackType = INSTANCE_EXEC_COMMAND |
文件分发 | CallbackType = INSTANCE_DISTRIBUTE_FILE |
应用黑名单设置 | CallbackType = SET_INSTANCE_APP_BLACK_LIST |
宿主机重启 | CallbackType = RESTART_HOST |
实例安装应用 | CallbackType = INSTALL_APP |
回调消息参数
字段名称 | 类型 | 说明 |
RequestId | string | 请求 ID。 |
CallbackType | string | 事件类型。 |
InstanceId | string | 实例 ID。 |
TaskId | string | 任务 ID。 |
TaskStatus | string | 任务状态:SUCCESS,FAILED,PROCESSING,PENDING, CANCELED。 |
TaskResult | string | 任务执行结果描述。针对某些任务,内容是可解析的 JSON。 |
Sign | string | 事件通知安全签名 sign = MD5(AuthKey + ExpiredTime)。 说明:AuthKey 为创建回调配置时设置参数,腾讯云把加密 AuthKey 和 ExpiredTime 进行字符串拼接后通过 MD5 计算得出 sign 值,并将其放在通知消息里,您的后台服务器在收到通知消息后可以根据同样的算法确认 sign 是否正确,进而确认消息是否确实来自腾讯云后台。 |
ExpiredTime | int64 | 过期时间,事件通知签名过期 UNIX 时间戳。 来自腾讯云的消息通知默认过期时间是10分钟,如果一条消息通知中的 t 值所指定的时间已经过期,则可以判定这条通知无效,进而可以防止网络重放攻击。 格式为十进制 UNIX 时间戳,即从1970年01月01日(UTC/GMT 的午夜)开始所经过的秒数。 |
回调消息示例
{"RequestId":"726789a2-1071-4aa0-b7d8-c082774665f6","CallbackType":"START_INSTANCE","InstanceId":"cai-82xkf291","TaskId":"678a2fae-ace6-40db-a508-8457491a5c1b","TaskStatus":"SUCCESS","TaskResult":"","Sign":"df49************************f5d4","ExpiredTime":1703732078}