ex
Fork of mbed-os-example-mbed5-blinky by
dumi_doc-master/doc/bot/alerts.md@44:c1d8923072ba, 2017-07-18 (annotated)
- Committer:
- TMBOY
- Date:
- Tue Jul 18 16:27:22 2017 +0800
- Revision:
- 44:c1d8923072ba
?
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| TMBOY | 44:c1d8923072ba | 1 | # Alerts 设备端能力要求 |
| TMBOY | 44:c1d8923072ba | 2 | |
| TMBOY | 44:c1d8923072ba | 3 | ## 连接网络 |
| TMBOY | 44:c1d8923072ba | 4 | 用户使用设备创建、删除Alerts,需要接受DCS(duer conversation service)下发的Directive去创建、删除Alert,创建、删除失败后必须向DCS上报Event。 |
| TMBOY | 44:c1d8923072ba | 5 | |
| TMBOY | 44:c1d8923072ba | 6 | ## Alerts创建后在设备离线后可以正确触发 |
| TMBOY | 44:c1d8923072ba | 7 | 例如用户创建第二天早上8点的alarm后,设备断网,第二天早上8点alarm需要准时触发。 |
| TMBOY | 44:c1d8923072ba | 8 | |
| TMBOY | 44:c1d8923072ba | 9 | ## 支持本地重建Alerts |
| TMBOY | 44:c1d8923072ba | 10 | 设备重启后需要能够在本地重建Alerts,这种场景下不需要向DCS上报Event。 |
| TMBOY | 44:c1d8923072ba | 11 | |
| TMBOY | 44:c1d8923072ba | 12 | ## 支持NTP网络时间协议 |
| TMBOY | 44:c1d8923072ba | 13 | DCS Alerts下发Alerts都为标准时间戳,设备端需要支持NTP协议对齐时间。 |
| TMBOY | 44:c1d8923072ba | 14 | |
| TMBOY | 44:c1d8923072ba | 15 | # Alerts 流程 |
| TMBOY | 44:c1d8923072ba | 16 | ## 基本Alerts流程 |
| TMBOY | 44:c1d8923072ba | 17 |  |
| TMBOY | 44:c1d8923072ba | 18 | ## 通过设备实体交互停止响铃流程 |
| TMBOY | 44:c1d8923072ba | 19 |  |
| TMBOY | 44:c1d8923072ba | 20 | ## 周期重复alarm流程 |
| TMBOY | 44:c1d8923072ba | 21 |  |
| TMBOY | 44:c1d8923072ba | 22 | ## 删除Alerts流程 |
| TMBOY | 44:c1d8923072ba | 23 |  |
| TMBOY | 44:c1d8923072ba | 24 | ## mateapp删除Alerts流程 |
| TMBOY | 44:c1d8923072ba | 25 |  |
| TMBOY | 44:c1d8923072ba | 26 | |
| TMBOY | 44:c1d8923072ba | 27 | |
| TMBOY | 44:c1d8923072ba | 28 | # Alerts接口协议 |
| TMBOY | 44:c1d8923072ba | 29 | |
| TMBOY | 44:c1d8923072ba | 30 | ## 输出能力级别定义 |
| TMBOY | 44:c1d8923072ba | 31 | ### all: 输出完整的Alerts能力 |
| TMBOY | 44:c1d8923072ba | 32 | 完整能力输出包括qu解析、Alerts业务逻辑、数据存储。 |
| TMBOY | 44:c1d8923072ba | 33 | |
| TMBOY | 44:c1d8923072ba | 34 | ### qu: 仅输出qu能力 |
| TMBOY | 44:c1d8923072ba | 35 | qu能力输出仅包括qu解析,接入端需要实现Alerts业务逻辑、数据存储。使用DCS管理需要将设备端Alerts详细数据通过device_status携带,且数据格式需是[duer约定格式](#alert_struct)。 |
| TMBOY | 44:c1d8923072ba | 36 | |
| TMBOY | 44:c1d8923072ba | 37 | ## Alerts数据结构 |
| TMBOY | 44:c1d8923072ba | 38 | ### <span id="alert_struct">AlertsStruct</span> |
| TMBOY | 44:c1d8923072ba | 39 | ```javascript |
| TMBOY | 44:c1d8923072ba | 40 | AlertsStruct = { |
| TMBOY | 44:c1d8923072ba | 41 | "token": string,// 唯一标识 |
| TMBOY | 44:c1d8923072ba | 42 | "type": string,// Alert类型 TIMER|ALARM |
| TMBOY | 44:c1d8923072ba | 43 | "scheduled_time": string,// Alert触发时间,秒级时间戳 |
| TMBOY | 44:c1d8923072ba | 44 | "content": string, // Alert事件名称 |
| TMBOY | 44:c1d8923072ba | 45 | |
| TMBOY | 44:c1d8923072ba | 46 | // ####### 接入完整能力不要关注此字段######### |
| TMBOY | 44:c1d8923072ba | 47 | "extensions": ExtensionsStruct json, // 可选,额外信息,qu能力级别输出携带,例如接入完整能力的A音箱则没有该字段,接入qu能力的B手机助手则有该字段|mateapp携带 |
| TMBOY | 44:c1d8923072ba | 48 | } |
| TMBOY | 44:c1d8923072ba | 49 | ``` |
| TMBOY | 44:c1d8923072ba | 50 | ```javascript |
| TMBOY | 44:c1d8923072ba | 51 | ExtensionsStruct = { |
| TMBOY | 44:c1d8923072ba | 52 | "start_time": int, // 开始时间 |
| TMBOY | 44:c1d8923072ba | 53 | "content": string, // 事件名称 |
| TMBOY | 44:c1d8923072ba | 54 | "duration": int, // timer时长 |
| TMBOY | 44:c1d8923072ba | 55 | "repeat_type": string, // 重复类型 day|week|month|year |
| TMBOY | 44:c1d8923072ba | 56 | "repeat_week": int, // 可选,重复星期 从低位到高位表示星期一到星期日 |
| TMBOY | 44:c1d8923072ba | 57 | "repeat_month": int, // 可选,重复月 从低位到高位表示1~12月 |
| TMBOY | 44:c1d8923072ba | 58 | "repeat_year": string, // 可选, 重复年 12-1,8-2 |
| TMBOY | 44:c1d8923072ba | 59 | "special_calender": string, // 农历,lunar |
| TMBOY | 44:c1d8923072ba | 60 | "special_day": string, // 工作日, weekday |
| TMBOY | 44:c1d8923072ba | 61 | } |
| TMBOY | 44:c1d8923072ba | 62 | ``` |
| TMBOY | 44:c1d8923072ba | 63 | |
| TMBOY | 44:c1d8923072ba | 64 | |
| TMBOY | 44:c1d8923072ba | 65 | ## device_status Alerts |
| TMBOY | 44:c1d8923072ba | 66 | 客户端请求DCS、上报Event需要携带Alerts device_status |
| TMBOY | 44:c1d8923072ba | 67 | ```javascript |
| TMBOY | 44:c1d8923072ba | 68 | { |
| TMBOY | 44:c1d8923072ba | 69 | "all_alerts": [ |
| TMBOY | 44:c1d8923072ba | 70 | AlertsStruct,// 见Alerts数据结构 |
| TMBOY | 44:c1d8923072ba | 71 | ], |
| TMBOY | 44:c1d8923072ba | 72 | // 正在活跃的Alerts |
| TMBOY | 44:c1d8923072ba | 73 | "active_alerts": [ |
| TMBOY | 44:c1d8923072ba | 74 | AlertsStruct,// 见Alerts数据结构 |
| TMBOY | 44:c1d8923072ba | 75 | ], |
| TMBOY | 44:c1d8923072ba | 76 | } |
| TMBOY | 44:c1d8923072ba | 77 | ``` |
| TMBOY | 44:c1d8923072ba | 78 | |
| TMBOY | 44:c1d8923072ba | 79 | ## Create |
| TMBOY | 44:c1d8923072ba | 80 | 设备Alerts的本地创建,必须且只有在接受到DCS 的SetAlert Directive之后进行。 |
| TMBOY | 44:c1d8923072ba | 81 | ### SetAlert Directive |
| TMBOY | 44:c1d8923072ba | 82 | DCS下发SetAlert Directive场景: |
| TMBOY | 44:c1d8923072ba | 83 | 1、客户端通过语音创建alarm、timer |
| TMBOY | 44:c1d8923072ba | 84 | 2、mateapp重新开启已经创建的alarm、timer |
| TMBOY | 44:c1d8923072ba | 85 | 3、mateapp更新已经创建的alarm、timer |
| TMBOY | 44:c1d8923072ba | 86 | |
| TMBOY | 44:c1d8923072ba | 87 | ```javascript |
| TMBOY | 44:c1d8923072ba | 88 | { |
| TMBOY | 44:c1d8923072ba | 89 | "header": { |
| TMBOY | 44:c1d8923072ba | 90 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 91 | "name": "SetAlert", |
| TMBOY | 44:c1d8923072ba | 92 | "message_id": string, |
| TMBOY | 44:c1d8923072ba | 93 | }, |
| TMBOY | 44:c1d8923072ba | 94 | "payload": AlertsStruct,// 见Alerts数据结构 |
| TMBOY | 44:c1d8923072ba | 95 | } |
| TMBOY | 44:c1d8923072ba | 96 | ``` |
| TMBOY | 44:c1d8923072ba | 97 | |
| TMBOY | 44:c1d8923072ba | 98 | ### SetAlertSucceeded Event |
| TMBOY | 44:c1d8923072ba | 99 | 客户端在收到SetAlert Directive后成功创建Alert必须向DCS上报SetAlertSucceeded Event |
| TMBOY | 44:c1d8923072ba | 100 | ```javascript |
| TMBOY | 44:c1d8923072ba | 101 | { |
| TMBOY | 44:c1d8923072ba | 102 | "header": { |
| TMBOY | 44:c1d8923072ba | 103 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 104 | "name": "SetAlertSucceeded" |
| TMBOY | 44:c1d8923072ba | 105 | }, |
| TMBOY | 44:c1d8923072ba | 106 | "payload": { |
| TMBOY | 44:c1d8923072ba | 107 | "token": string,// 唯一标识 |
| TMBOY | 44:c1d8923072ba | 108 | } |
| TMBOY | 44:c1d8923072ba | 109 | } |
| TMBOY | 44:c1d8923072ba | 110 | ``` |
| TMBOY | 44:c1d8923072ba | 111 | |
| TMBOY | 44:c1d8923072ba | 112 | ### SetAlertFailed Event |
| TMBOY | 44:c1d8923072ba | 113 | 客户端在收到SetAlert Directive后未成功创建Alert必须向DCS上报SetAlertFailed Event |
| TMBOY | 44:c1d8923072ba | 114 | ```javascript |
| TMBOY | 44:c1d8923072ba | 115 | { |
| TMBOY | 44:c1d8923072ba | 116 | "header": { |
| TMBOY | 44:c1d8923072ba | 117 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 118 | "name": "SetAlertFailed" |
| TMBOY | 44:c1d8923072ba | 119 | }, |
| TMBOY | 44:c1d8923072ba | 120 | "payload": { |
| TMBOY | 44:c1d8923072ba | 121 | "token": string,// 唯一标识 |
| TMBOY | 44:c1d8923072ba | 122 | } |
| TMBOY | 44:c1d8923072ba | 123 | } |
| TMBOY | 44:c1d8923072ba | 124 | ``` |
| TMBOY | 44:c1d8923072ba | 125 | |
| TMBOY | 44:c1d8923072ba | 126 | ## Delete |
| TMBOY | 44:c1d8923072ba | 127 | 设备Alerts的本地删除,必须且只有在接受到DCS 的SetAlert Directive之后进行。 |
| TMBOY | 44:c1d8923072ba | 128 | ### DeleteAlert Directive |
| TMBOY | 44:c1d8923072ba | 129 | DCS下发DeleteAlert Directive场景: |
| TMBOY | 44:c1d8923072ba | 130 | 1、客户端通过语音删除alarm、timer |
| TMBOY | 44:c1d8923072ba | 131 | 2、客户端通过语音停止响铃的alarm、timer |
| TMBOY | 44:c1d8923072ba | 132 | 2、mateapp删除alarm、timer |
| TMBOY | 44:c1d8923072ba | 133 | 3、mateapp暂停已经创建的alarm |
| TMBOY | 44:c1d8923072ba | 134 | |
| TMBOY | 44:c1d8923072ba | 135 | ```javascript |
| TMBOY | 44:c1d8923072ba | 136 | { |
| TMBOY | 44:c1d8923072ba | 137 | "header": { |
| TMBOY | 44:c1d8923072ba | 138 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 139 | "name": "DeleteAlert", |
| TMBOY | 44:c1d8923072ba | 140 | "message_id": string, |
| TMBOY | 44:c1d8923072ba | 141 | }, |
| TMBOY | 44:c1d8923072ba | 142 | "payload":{ |
| TMBOY | 44:c1d8923072ba | 143 | "token": string,// 唯一标识 |
| TMBOY | 44:c1d8923072ba | 144 | } |
| TMBOY | 44:c1d8923072ba | 145 | } |
| TMBOY | 44:c1d8923072ba | 146 | ``` |
| TMBOY | 44:c1d8923072ba | 147 | |
| TMBOY | 44:c1d8923072ba | 148 | ### DeleteAlertSucceeded Event |
| TMBOY | 44:c1d8923072ba | 149 | 客户端在收到DeleteAlert Directive后成功删除Alert必须向DCS上报DeleteAlertSucceeded Event |
| TMBOY | 44:c1d8923072ba | 150 | ```javascript |
| TMBOY | 44:c1d8923072ba | 151 | { |
| TMBOY | 44:c1d8923072ba | 152 | "header": { |
| TMBOY | 44:c1d8923072ba | 153 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 154 | "name": "DeleteAlertSucceeded" |
| TMBOY | 44:c1d8923072ba | 155 | }, |
| TMBOY | 44:c1d8923072ba | 156 | "payload": { |
| TMBOY | 44:c1d8923072ba | 157 | "token": string,// 唯一标识 |
| TMBOY | 44:c1d8923072ba | 158 | } |
| TMBOY | 44:c1d8923072ba | 159 | } |
| TMBOY | 44:c1d8923072ba | 160 | ``` |
| TMBOY | 44:c1d8923072ba | 161 | |
| TMBOY | 44:c1d8923072ba | 162 | ### DeleteAlertFailed Event |
| TMBOY | 44:c1d8923072ba | 163 | 客户端在收到DeleteAlert Directive后未成功删除Alert必须向DCS上报DeleteAlertfailed Event |
| TMBOY | 44:c1d8923072ba | 164 | ```javascript |
| TMBOY | 44:c1d8923072ba | 165 | { |
| TMBOY | 44:c1d8923072ba | 166 | "header": { |
| TMBOY | 44:c1d8923072ba | 167 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 168 | "name": "DeleteAlertFailed" |
| TMBOY | 44:c1d8923072ba | 169 | }, |
| TMBOY | 44:c1d8923072ba | 170 | "payload": { |
| TMBOY | 44:c1d8923072ba | 171 | "token": string,// 唯一标识 |
| TMBOY | 44:c1d8923072ba | 172 | } |
| TMBOY | 44:c1d8923072ba | 173 | } |
| TMBOY | 44:c1d8923072ba | 174 | ``` |
| TMBOY | 44:c1d8923072ba | 175 | |
| TMBOY | 44:c1d8923072ba | 176 | ## Start and Stop |
| TMBOY | 44:c1d8923072ba | 177 | ### AlertStarted Event |
| TMBOY | 44:c1d8923072ba | 178 | Alert到触发时间响铃必须向DCS上报AlertStarted Event |
| TMBOY | 44:c1d8923072ba | 179 | ```javascript |
| TMBOY | 44:c1d8923072ba | 180 | { |
| TMBOY | 44:c1d8923072ba | 181 | "header": { |
| TMBOY | 44:c1d8923072ba | 182 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 183 | "name": "AlertStarted" |
| TMBOY | 44:c1d8923072ba | 184 | }, |
| TMBOY | 44:c1d8923072ba | 185 | "payload": { |
| TMBOY | 44:c1d8923072ba | 186 | "token": string,// 唯一标识 |
| TMBOY | 44:c1d8923072ba | 187 | } |
| TMBOY | 44:c1d8923072ba | 188 | } |
| TMBOY | 44:c1d8923072ba | 189 | ``` |
| TMBOY | 44:c1d8923072ba | 190 | ### AlertStoped Event |
| TMBOY | 44:c1d8923072ba | 191 | Alert停止正在响铃的Alert必须向DCS上报AlertStoped Event |
| TMBOY | 44:c1d8923072ba | 192 | ```javascript |
| TMBOY | 44:c1d8923072ba | 193 | { |
| TMBOY | 44:c1d8923072ba | 194 | "header": { |
| TMBOY | 44:c1d8923072ba | 195 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 196 | "name": "AlertStoped" |
| TMBOY | 44:c1d8923072ba | 197 | }, |
| TMBOY | 44:c1d8923072ba | 198 | "payload": { |
| TMBOY | 44:c1d8923072ba | 199 | "token": string,// 唯一标识 |
| TMBOY | 44:c1d8923072ba | 200 | } |
| TMBOY | 44:c1d8923072ba | 201 | } |
| TMBOY | 44:c1d8923072ba | 202 | ``` |
| TMBOY | 44:c1d8923072ba | 203 | |
| TMBOY | 44:c1d8923072ba | 204 | |
| TMBOY | 44:c1d8923072ba | 205 | ## 前后台切换 |
| TMBOY | 44:c1d8923072ba | 206 | ### AlertEnteredForeground Event |
| TMBOY | 44:c1d8923072ba | 207 | ```javascript |
| TMBOY | 44:c1d8923072ba | 208 | { |
| TMBOY | 44:c1d8923072ba | 209 | "header": { |
| TMBOY | 44:c1d8923072ba | 210 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 211 | "name": "AlertEnteredForeground" |
| TMBOY | 44:c1d8923072ba | 212 | }, |
| TMBOY | 44:c1d8923072ba | 213 | "payload": { |
| TMBOY | 44:c1d8923072ba | 214 | "token": string,// 唯一标识 |
| TMBOY | 44:c1d8923072ba | 215 | } |
| TMBOY | 44:c1d8923072ba | 216 | } |
| TMBOY | 44:c1d8923072ba | 217 | ``` |
| TMBOY | 44:c1d8923072ba | 218 | |
| TMBOY | 44:c1d8923072ba | 219 | ### AlertEnteredBackground Event |
| TMBOY | 44:c1d8923072ba | 220 | ```javascript |
| TMBOY | 44:c1d8923072ba | 221 | { |
| TMBOY | 44:c1d8923072ba | 222 | "header": { |
| TMBOY | 44:c1d8923072ba | 223 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 224 | "name": "AlertEnteredBackground" |
| TMBOY | 44:c1d8923072ba | 225 | }, |
| TMBOY | 44:c1d8923072ba | 226 | "payload": { |
| TMBOY | 44:c1d8923072ba | 227 | "token": string,// 唯一标识 |
| TMBOY | 44:c1d8923072ba | 228 | } |
| TMBOY | 44:c1d8923072ba | 229 | } |
| TMBOY | 44:c1d8923072ba | 230 | ``` |
| TMBOY | 44:c1d8923072ba | 231 | |
| TMBOY | 44:c1d8923072ba | 232 | # Alarm输出schema |
| TMBOY | 44:c1d8923072ba | 233 | ## 输出实例 |
| TMBOY | 44:c1d8923072ba | 234 | |
| TMBOY | 44:c1d8923072ba | 235 | ### 创建实例 |
| TMBOY | 44:c1d8923072ba | 236 | ```javascript |
| TMBOY | 44:c1d8923072ba | 237 | { |
| TMBOY | 44:c1d8923072ba | 238 | "result": { |
| TMBOY | 44:c1d8923072ba | 239 | "bot_id": "alarm", |
| TMBOY | 44:c1d8923072ba | 240 | "bot_meta": { |
| TMBOY | 44:c1d8923072ba | 241 | "version": "1.0.0", |
| TMBOY | 44:c1d8923072ba | 242 | "type": "其他", |
| TMBOY | 44:c1d8923072ba | 243 | "description": "desc" |
| TMBOY | 44:c1d8923072ba | 244 | }, |
| TMBOY | 44:c1d8923072ba | 245 | "directives":[ |
| TMBOY | 44:c1d8923072ba | 246 | { |
| TMBOY | 44:c1d8923072ba | 247 | "header": { |
| TMBOY | 44:c1d8923072ba | 248 | "namespace": "SpeechSynthesizer", |
| TMBOY | 44:c1d8923072ba | 249 | "name": "Speak", |
| TMBOY | 44:c1d8923072ba | 250 | "message_id": "message_id-1344" |
| TMBOY | 44:c1d8923072ba | 251 | }, |
| TMBOY | 44:c1d8923072ba | 252 | "payload": { |
| TMBOY | 44:c1d8923072ba | 253 | "token": "156", |
| TMBOY | 44:c1d8923072ba | 254 | "type": "Text", |
| TMBOY | 44:c1d8923072ba | 255 | "content": ["为你设置了【起床】提醒。\n度秘将于明天上午8点通知你"], |
| TMBOY | 44:c1d8923072ba | 256 | "speak_behavior": "REPLACE_ALL", |
| TMBOY | 44:c1d8923072ba | 257 | "should_get_next_speech": true |
| TMBOY | 44:c1d8923072ba | 258 | } |
| TMBOY | 44:c1d8923072ba | 259 | }, |
| TMBOY | 44:c1d8923072ba | 260 | { |
| TMBOY | 44:c1d8923072ba | 261 | "header": { |
| TMBOY | 44:c1d8923072ba | 262 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 263 | "name": "SetAlert", |
| TMBOY | 44:c1d8923072ba | 264 | "message_id": "test_message_id", |
| TMBOY | 44:c1d8923072ba | 265 | }, |
| TMBOY | 44:c1d8923072ba | 266 | "payload": { |
| TMBOY | 44:c1d8923072ba | 267 | "token": "test_token", |
| TMBOY | 44:c1d8923072ba | 268 | "type": "ALARM", |
| TMBOY | 44:c1d8923072ba | 269 | "scheduled_time": "1490774496", |
| TMBOY | 44:c1d8923072ba | 270 | } |
| TMBOY | 44:c1d8923072ba | 271 | } |
| TMBOY | 44:c1d8923072ba | 272 | ], |
| TMBOY | 44:c1d8923072ba | 273 | "views": [ |
| TMBOY | 44:c1d8923072ba | 274 | { |
| TMBOY | 44:c1d8923072ba | 275 | "type": "list", |
| TMBOY | 44:c1d8923072ba | 276 | "list": [ |
| TMBOY | 44:c1d8923072ba | 277 | { |
| TMBOY | 44:c1d8923072ba | 278 | "title": "起床", |
| TMBOY | 44:c1d8923072ba | 279 | "summary": "为你设置了【起床】提醒。\n度秘将于明天上午8点通知你", |
| TMBOY | 44:c1d8923072ba | 280 | "url": "http://xiaodu.baidu.com/saiya/events", |
| TMBOY | 44:c1d8923072ba | 281 | "image": "http://xiaodu.baidu.com/saiya/img/remind.png" |
| TMBOY | 44:c1d8923072ba | 282 | } |
| TMBOY | 44:c1d8923072ba | 283 | ] |
| TMBOY | 44:c1d8923072ba | 284 | } |
| TMBOY | 44:c1d8923072ba | 285 | ], |
| TMBOY | 44:c1d8923072ba | 286 | "nlu": { |
| TMBOY | 44:c1d8923072ba | 287 | "domain": "alarm", |
| TMBOY | 44:c1d8923072ba | 288 | "intent": "alarm", |
| TMBOY | 44:c1d8923072ba | 289 | "slots": { |
| TMBOY | 44:c1d8923072ba | 290 | "event_title": "起床", |
| TMBOY | 44:c1d8923072ba | 291 | "event_type": "wakeup", |
| TMBOY | 44:c1d8923072ba | 292 | "alarm_time": "{\"day\":\"next\",\"hour\":\"8\",\"apm\":\"am\"}", |
| TMBOY | 44:c1d8923072ba | 293 | } |
| TMBOY | 44:c1d8923072ba | 294 | }, |
| TMBOY | 44:c1d8923072ba | 295 | "speech": { |
| TMBOY | 44:c1d8923072ba | 296 | "type": "Text", |
| TMBOY | 44:c1d8923072ba | 297 | "content": "为你设置了【起床】提醒。\n度秘将于明天上午8点通知你" |
| TMBOY | 44:c1d8923072ba | 298 | } |
| TMBOY | 44:c1d8923072ba | 299 | }, |
| TMBOY | 44:c1d8923072ba | 300 | "id": "1490616124_7372v4pbq", |
| TMBOY | 44:c1d8923072ba | 301 | "logid": "14906161247428", |
| TMBOY | 44:c1d8923072ba | 302 | "user_id": "2856", |
| TMBOY | 44:c1d8923072ba | 303 | "time": 1490616124, |
| TMBOY | 44:c1d8923072ba | 304 | "cuid": "test_1490616124403", |
| TMBOY | 44:c1d8923072ba | 305 | "se_query": "明天上午8点提醒我起床", |
| TMBOY | 44:c1d8923072ba | 306 | "msg": "ok", |
| TMBOY | 44:c1d8923072ba | 307 | "client_msg_id": "c9bfe944-992b-45b1-8afe-dc2cdaee622a", |
| TMBOY | 44:c1d8923072ba | 308 | "speech_id": "12345", |
| TMBOY | 44:c1d8923072ba | 309 | "status": 0 |
| TMBOY | 44:c1d8923072ba | 310 | } |
| TMBOY | 44:c1d8923072ba | 311 | ``` |
| TMBOY | 44:c1d8923072ba | 312 | ### 管理实例 |
| TMBOY | 44:c1d8923072ba | 313 | ```javascript |
| TMBOY | 44:c1d8923072ba | 314 | { |
| TMBOY | 44:c1d8923072ba | 315 | "result": { |
| TMBOY | 44:c1d8923072ba | 316 | "directives":[ |
| TMBOY | 44:c1d8923072ba | 317 | { |
| TMBOY | 44:c1d8923072ba | 318 | "header": { |
| TMBOY | 44:c1d8923072ba | 319 | "namespace": "SpeechSynthesizer", |
| TMBOY | 44:c1d8923072ba | 320 | "name": "Speak", |
| TMBOY | 44:c1d8923072ba | 321 | "message_id": "message_id-1344" |
| TMBOY | 44:c1d8923072ba | 322 | }, |
| TMBOY | 44:c1d8923072ba | 323 | "payload": { |
| TMBOY | 44:c1d8923072ba | 324 | "token": "156", |
| TMBOY | 44:c1d8923072ba | 325 | "type": "Text", |
| TMBOY | 44:c1d8923072ba | 326 | "content": ["当前没有任何闹钟"], |
| TMBOY | 44:c1d8923072ba | 327 | "speak_behavior": "REPLACE_ALL", |
| TMBOY | 44:c1d8923072ba | 328 | "should_get_next_speech": true |
| TMBOY | 44:c1d8923072ba | 329 | } |
| TMBOY | 44:c1d8923072ba | 330 | }, |
| TMBOY | 44:c1d8923072ba | 331 | { |
| TMBOY | 44:c1d8923072ba | 332 | "header": { |
| TMBOY | 44:c1d8923072ba | 333 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 334 | "name": "DeleteAlert", |
| TMBOY | 44:c1d8923072ba | 335 | "message_id": "test_message_id", |
| TMBOY | 44:c1d8923072ba | 336 | }, |
| TMBOY | 44:c1d8923072ba | 337 | "payload": { |
| TMBOY | 44:c1d8923072ba | 338 | "token": "test_token", |
| TMBOY | 44:c1d8923072ba | 339 | "type": "ALARM", |
| TMBOY | 44:c1d8923072ba | 340 | "scheduled_time": "1490774496", |
| TMBOY | 44:c1d8923072ba | 341 | } |
| TMBOY | 44:c1d8923072ba | 342 | } |
| TMBOY | 44:c1d8923072ba | 343 | ], |
| TMBOY | 44:c1d8923072ba | 344 | "views": [ |
| TMBOY | 44:c1d8923072ba | 345 | { |
| TMBOY | 44:c1d8923072ba | 346 | "type": "txt", |
| TMBOY | 44:c1d8923072ba | 347 | "content": "当前没有任何闹钟" |
| TMBOY | 44:c1d8923072ba | 348 | } |
| TMBOY | 44:c1d8923072ba | 349 | ], |
| TMBOY | 44:c1d8923072ba | 350 | "speech": { |
| TMBOY | 44:c1d8923072ba | 351 | "type": "Text", |
| TMBOY | 44:c1d8923072ba | 352 | "content": "当前没有任何闹钟" |
| TMBOY | 44:c1d8923072ba | 353 | }, |
| TMBOY | 44:c1d8923072ba | 354 | "bot_id": "alarm", |
| TMBOY | 44:c1d8923072ba | 355 | "bot_meta": { |
| TMBOY | 44:c1d8923072ba | 356 | "version": "1.0.0", |
| TMBOY | 44:c1d8923072ba | 357 | "type": "其他", |
| TMBOY | 44:c1d8923072ba | 358 | "description": "desc" |
| TMBOY | 44:c1d8923072ba | 359 | }, |
| TMBOY | 44:c1d8923072ba | 360 | "nlu": { |
| TMBOY | 44:c1d8923072ba | 361 | "domain": "alarm", |
| TMBOY | 44:c1d8923072ba | 362 | "intent": "alarm_manage", |
| TMBOY | 44:c1d8923072ba | 363 | "slots": { |
| TMBOY | 44:c1d8923072ba | 364 | "action": "delete", |
| TMBOY | 44:c1d8923072ba | 365 | "alarm_time": "null\n", |
| TMBOY | 44:c1d8923072ba | 366 | } |
| TMBOY | 44:c1d8923072ba | 367 | } |
| TMBOY | 44:c1d8923072ba | 368 | }, |
| TMBOY | 44:c1d8923072ba | 369 | "id": "1490663709_4834c2s7b", |
| TMBOY | 44:c1d8923072ba | 370 | "logid": "14906637094391", |
| TMBOY | 44:c1d8923072ba | 371 | "user_id": "2856", |
| TMBOY | 44:c1d8923072ba | 372 | "time": 1490663709, |
| TMBOY | 44:c1d8923072ba | 373 | "cuid": "4B7163F0FD2B34", |
| TMBOY | 44:c1d8923072ba | 374 | "se_query": "取消闹钟", |
| TMBOY | 44:c1d8923072ba | 375 | "msg": "ok", |
| TMBOY | 44:c1d8923072ba | 376 | "client_msg_id": "f67d63bb-917c-4c67-8fa8-be773ec913ba", |
| TMBOY | 44:c1d8923072ba | 377 | "status": 0 |
| TMBOY | 44:c1d8923072ba | 378 | } |
| TMBOY | 44:c1d8923072ba | 379 | ``` |
| TMBOY | 44:c1d8923072ba | 380 | |
| TMBOY | 44:c1d8923072ba | 381 | ## NLU |
| TMBOY | 44:c1d8923072ba | 382 | |slot |desc | value | |
| TMBOY | 44:c1d8923072ba | 383 | |---|---|---| |
| TMBOY | 44:c1d8923072ba | 384 | |intent|alarm意图|alarm,alarm_manage| |
| TMBOY | 44:c1d8923072ba | 385 | |action|alarm动作类型|create,list,update,delete| |
| TMBOY | 44:c1d8923072ba | 386 | |event_title | alarm标题 | eg:起床| |
| TMBOY | 44:c1d8923072ba | 387 | |event_type | alarm事件类型 | eg:wakeup| |
| TMBOY | 44:c1d8923072ba | 388 | |alarm_time|[alarm_time说明](#alarm_time)|json字符串 |
| TMBOY | 44:c1d8923072ba | 389 | |scheduled_time | alarm设置的时间。只会在提醒创建前(即槽位完备)给出 | 1486598400| |
| TMBOY | 44:c1d8923072ba | 390 | |
| TMBOY | 44:c1d8923072ba | 391 | ## <span id="alarm_time">alarm_time字段说明</span> |
| TMBOY | 44:c1d8923072ba | 392 | |Key |Value |说明| |
| TMBOY | 44:c1d8923072ba | 393 | |---|---|---| |
| TMBOY | 44:c1d8923072ba | 394 | |minute |3, +2, -1|string. 3分,2分钟后,1分钟前| |
| TMBOY | 44:c1d8923072ba | 395 | |hour|2, +1, -3|string. 2点,1小时后,3小时前| |
| TMBOY | 44:c1d8923072ba | 396 | |day|1, +2, -3, -1,next, +0|string. 1号,2天后,3天前,昨天,明天,今天| |
| TMBOY | 44:c1d8923072ba | 397 | |month|1, +2, -3, +0|string. 1月,2个月后,3个月前,这个月| |
| TMBOY | 44:c1d8923072ba | 398 | |year|1984, +1, -2, +0|string. 1984年,明年,2年前,今年| |
| TMBOY | 44:c1d8923072ba | 399 | |week|+1, -1, 2, 3, 2+1|string. 下周,上一周,星期二,周三, 下周二| |
| TMBOY | 44:c1d8923072ba | 400 | |apm|am, pm|string. 上午,下午| |
| TMBOY | 44:c1d8923072ba | 401 | |const|recent, awhile|string. 刚刚,一会儿| |
| TMBOY | 44:c1d8923072ba | 402 | |repeat|day, month, year|string. 每天,每月,每年| |
| TMBOY | 44:c1d8923072ba | 403 | |special_day |weekend, weekday|string. 周末,工作日,节气,节日| |
| TMBOY | 44:c1d8923072ba | 404 | |special_calendar|lunar|string. 农历| |
| TMBOY | 44:c1d8923072ba | 405 | |
| TMBOY | 44:c1d8923072ba | 406 | # timer输出schema |
| TMBOY | 44:c1d8923072ba | 407 | ## 输出实例 |
| TMBOY | 44:c1d8923072ba | 408 | ### 创建实例 |
| TMBOY | 44:c1d8923072ba | 409 | ```javascript |
| TMBOY | 44:c1d8923072ba | 410 | { |
| TMBOY | 44:c1d8923072ba | 411 | "result": { |
| TMBOY | 44:c1d8923072ba | 412 | "directives":[ |
| TMBOY | 44:c1d8923072ba | 413 | { |
| TMBOY | 44:c1d8923072ba | 414 | "header": { |
| TMBOY | 44:c1d8923072ba | 415 | "namespace": "SpeechSynthesizer", |
| TMBOY | 44:c1d8923072ba | 416 | "name": "Speak", |
| TMBOY | 44:c1d8923072ba | 417 | "message_id": "message_id-1344" |
| TMBOY | 44:c1d8923072ba | 418 | }, |
| TMBOY | 44:c1d8923072ba | 419 | "payload": { |
| TMBOY | 44:c1d8923072ba | 420 | "token": "156", |
| TMBOY | 44:c1d8923072ba | 421 | "type": "Text", |
| TMBOY | 44:c1d8923072ba | 422 | "content": ["5分钟,计时开始"], |
| TMBOY | 44:c1d8923072ba | 423 | "speak_behavior": "REPLACE_ALL", |
| TMBOY | 44:c1d8923072ba | 424 | "should_get_next_speech": true |
| TMBOY | 44:c1d8923072ba | 425 | } |
| TMBOY | 44:c1d8923072ba | 426 | }, |
| TMBOY | 44:c1d8923072ba | 427 | { |
| TMBOY | 44:c1d8923072ba | 428 | "header": { |
| TMBOY | 44:c1d8923072ba | 429 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 430 | "name": "SetAlert", |
| TMBOY | 44:c1d8923072ba | 431 | "message_id": "test_message_id", |
| TMBOY | 44:c1d8923072ba | 432 | }, |
| TMBOY | 44:c1d8923072ba | 433 | "payload": { |
| TMBOY | 44:c1d8923072ba | 434 | "token": "test_token", |
| TMBOY | 44:c1d8923072ba | 435 | "type": "TIMER", |
| TMBOY | 44:c1d8923072ba | 436 | "scheduled_time": "1490774496", |
| TMBOY | 44:c1d8923072ba | 437 | } |
| TMBOY | 44:c1d8923072ba | 438 | } |
| TMBOY | 44:c1d8923072ba | 439 | ], |
| TMBOY | 44:c1d8923072ba | 440 | "views": [ |
| TMBOY | 44:c1d8923072ba | 441 | { |
| TMBOY | 44:c1d8923072ba | 442 | "type": "txt", |
| TMBOY | 44:c1d8923072ba | 443 | "content": "5分钟,计时开始" |
| TMBOY | 44:c1d8923072ba | 444 | } |
| TMBOY | 44:c1d8923072ba | 445 | ], |
| TMBOY | 44:c1d8923072ba | 446 | "speech": { |
| TMBOY | 44:c1d8923072ba | 447 | "type": "Text", |
| TMBOY | 44:c1d8923072ba | 448 | "content": "5分钟,计时开始" |
| TMBOY | 44:c1d8923072ba | 449 | }, |
| TMBOY | 44:c1d8923072ba | 450 | "bot_id": "timer", |
| TMBOY | 44:c1d8923072ba | 451 | "bot_meta": { |
| TMBOY | 44:c1d8923072ba | 452 | "version": "1.0.0", |
| TMBOY | 44:c1d8923072ba | 453 | "type": "其他", |
| TMBOY | 44:c1d8923072ba | 454 | "description": "desc" |
| TMBOY | 44:c1d8923072ba | 455 | }, |
| TMBOY | 44:c1d8923072ba | 456 | "nlu": { |
| TMBOY | 44:c1d8923072ba | 457 | "domain": "timer", |
| TMBOY | 44:c1d8923072ba | 458 | "intent": "timer", |
| TMBOY | 44:c1d8923072ba | 459 | "slots": { |
| TMBOY | 44:c1d8923072ba | 460 | "intent": "create", |
| TMBOY | 44:c1d8923072ba | 461 | "minute": "5", |
| TMBOY | 44:c1d8923072ba | 462 | } |
| TMBOY | 44:c1d8923072ba | 463 | } |
| TMBOY | 44:c1d8923072ba | 464 | }, |
| TMBOY | 44:c1d8923072ba | 465 | "id": "1490664954_776f4315j", |
| TMBOY | 44:c1d8923072ba | 466 | "logid": "14906649544030", |
| TMBOY | 44:c1d8923072ba | 467 | "user_id": "2856", |
| TMBOY | 44:c1d8923072ba | 468 | "time": 1490664954, |
| TMBOY | 44:c1d8923072ba | 469 | "cuid": "4B7163F0FD2B34", |
| TMBOY | 44:c1d8923072ba | 470 | "se_query": "5分钟倒计时", |
| TMBOY | 44:c1d8923072ba | 471 | "msg": "ok", |
| TMBOY | 44:c1d8923072ba | 472 | "client_msg_id": "f67d63bb-917c-4c67-8fa8-be773ec913ba", |
| TMBOY | 44:c1d8923072ba | 473 | "status": 0 |
| TMBOY | 44:c1d8923072ba | 474 | } |
| TMBOY | 44:c1d8923072ba | 475 | ``` |
| TMBOY | 44:c1d8923072ba | 476 | |
| TMBOY | 44:c1d8923072ba | 477 | ### timer管理实例 |
| TMBOY | 44:c1d8923072ba | 478 | ```javascript |
| TMBOY | 44:c1d8923072ba | 479 | { |
| TMBOY | 44:c1d8923072ba | 480 | "result": { |
| TMBOY | 44:c1d8923072ba | 481 | "directives":[ |
| TMBOY | 44:c1d8923072ba | 482 | { |
| TMBOY | 44:c1d8923072ba | 483 | "header": { |
| TMBOY | 44:c1d8923072ba | 484 | "namespace": "SpeechSynthesizer", |
| TMBOY | 44:c1d8923072ba | 485 | "name": "Speak", |
| TMBOY | 44:c1d8923072ba | 486 | "message_id": "message_id-1344" |
| TMBOY | 44:c1d8923072ba | 487 | }, |
| TMBOY | 44:c1d8923072ba | 488 | "payload": { |
| TMBOY | 44:c1d8923072ba | 489 | "token": "156", |
| TMBOY | 44:c1d8923072ba | 490 | "type": "Text", |
| TMBOY | 44:c1d8923072ba | 491 | "content": ["刚刚5分钟内没有设置过计时"], |
| TMBOY | 44:c1d8923072ba | 492 | "speak_behavior": "REPLACE_ALL", |
| TMBOY | 44:c1d8923072ba | 493 | "should_get_next_speech": true |
| TMBOY | 44:c1d8923072ba | 494 | } |
| TMBOY | 44:c1d8923072ba | 495 | }, |
| TMBOY | 44:c1d8923072ba | 496 | { |
| TMBOY | 44:c1d8923072ba | 497 | "header": { |
| TMBOY | 44:c1d8923072ba | 498 | "namespace": "Alerts", |
| TMBOY | 44:c1d8923072ba | 499 | "name": "DeleteAlert", |
| TMBOY | 44:c1d8923072ba | 500 | "message_id": "test_message_id", |
| TMBOY | 44:c1d8923072ba | 501 | }, |
| TMBOY | 44:c1d8923072ba | 502 | "payload": { |
| TMBOY | 44:c1d8923072ba | 503 | "token": "test_token", |
| TMBOY | 44:c1d8923072ba | 504 | "type": "TIMER", |
| TMBOY | 44:c1d8923072ba | 505 | "scheduled_time": "1490774496", |
| TMBOY | 44:c1d8923072ba | 506 | } |
| TMBOY | 44:c1d8923072ba | 507 | } |
| TMBOY | 44:c1d8923072ba | 508 | ], |
| TMBOY | 44:c1d8923072ba | 509 | "views": [ |
| TMBOY | 44:c1d8923072ba | 510 | { |
| TMBOY | 44:c1d8923072ba | 511 | "type": "txt", |
| TMBOY | 44:c1d8923072ba | 512 | "content": "刚刚5分钟内没有设置过计时" |
| TMBOY | 44:c1d8923072ba | 513 | } |
| TMBOY | 44:c1d8923072ba | 514 | ], |
| TMBOY | 44:c1d8923072ba | 515 | "speech": { |
| TMBOY | 44:c1d8923072ba | 516 | "type": "Text", |
| TMBOY | 44:c1d8923072ba | 517 | "content": "刚刚5分钟内没有设置过计时" |
| TMBOY | 44:c1d8923072ba | 518 | }, |
| TMBOY | 44:c1d8923072ba | 519 | "bot_id": "timer", |
| TMBOY | 44:c1d8923072ba | 520 | "bot_meta": { |
| TMBOY | 44:c1d8923072ba | 521 | "version": "1.0.0", |
| TMBOY | 44:c1d8923072ba | 522 | "type": "其他", |
| TMBOY | 44:c1d8923072ba | 523 | "description": "desc" |
| TMBOY | 44:c1d8923072ba | 524 | }, |
| TMBOY | 44:c1d8923072ba | 525 | "nlu": { |
| TMBOY | 44:c1d8923072ba | 526 | "domain": "timer", |
| TMBOY | 44:c1d8923072ba | 527 | "intent": "timer_manage", |
| TMBOY | 44:c1d8923072ba | 528 | "slots": { |
| TMBOY | 44:c1d8923072ba | 529 | "condition": "recent", |
| TMBOY | 44:c1d8923072ba | 530 | "intent": "list", |
| TMBOY | 44:c1d8923072ba | 531 | } |
| TMBOY | 44:c1d8923072ba | 532 | } |
| TMBOY | 44:c1d8923072ba | 533 | }, |
| TMBOY | 44:c1d8923072ba | 534 | "id": "1490665516_47484jz9e", |
| TMBOY | 44:c1d8923072ba | 535 | "logid": "14906655159796", |
| TMBOY | 44:c1d8923072ba | 536 | "user_id": "2856", |
| TMBOY | 44:c1d8923072ba | 537 | "time": 1490665516, |
| TMBOY | 44:c1d8923072ba | 538 | "cuid": "4B7163F0FD2B34", |
| TMBOY | 44:c1d8923072ba | 539 | "se_query": "查看刚刚的倒计时", |
| TMBOY | 44:c1d8923072ba | 540 | "msg": "ok", |
| TMBOY | 44:c1d8923072ba | 541 | "client_msg_id": "f67d63bb-917c-4c67-8fa8-be773ec913ba", |
| TMBOY | 44:c1d8923072ba | 542 | "status": 0 |
| TMBOY | 44:c1d8923072ba | 543 | } |
| TMBOY | 44:c1d8923072ba | 544 | ``` |
| TMBOY | 44:c1d8923072ba | 545 | |
| TMBOY | 44:c1d8923072ba | 546 | ## NLU |
| TMBOY | 44:c1d8923072ba | 547 | |slot |Value |说明| |
| TMBOY | 44:c1d8923072ba | 548 | |---|---|---| |
| TMBOY | 44:c1d8923072ba | 549 | |minute|3|string. 3分| |
| TMBOY | 44:c1d8923072ba | 550 | |hour|2|string. 2小时| |
| TMBOY | 44:c1d8923072ba | 551 | |day|1|string. 1天| |
| TMBOY | 44:c1d8923072ba | 552 | |month|1|string. 1个月| |
| TMBOY | 44:c1d8923072ba | 553 | |year|2|string. 2年| |
| TMBOY | 44:c1d8923072ba | 554 | |week|1|string. 一周| |
| TMBOY | 44:c1d8923072ba | 555 | |condition|recent|string. 刚刚| |
| TMBOY | 44:c1d8923072ba | 556 | |
| TMBOY | 44:c1d8923072ba | 557 | |
| TMBOY | 44:c1d8923072ba | 558 | # mateapp 接口 |
| TMBOY | 44:c1d8923072ba | 559 | ## Alerts列表 |
| TMBOY | 44:c1d8923072ba | 560 | `/saiya/alerts` |
| TMBOY | 44:c1d8923072ba | 561 | `method:GET` |
| TMBOY | 44:c1d8923072ba | 562 | `datatype:JSON` |
| TMBOY | 44:c1d8923072ba | 563 | `params:type=(ALARM|TIMER)` |
| TMBOY | 44:c1d8923072ba | 564 | |
| TMBOY | 44:c1d8923072ba | 565 | ### response |
| TMBOY | 44:c1d8923072ba | 566 | ```javascript |
| TMBOY | 44:c1d8923072ba | 567 | { |
| TMBOY | 44:c1d8923072ba | 568 | "status": int, //状态码 0正确 其他错误 |
| TMBOY | 44:c1d8923072ba | 569 | "msg": string, // 错误信息 |
| TMBOY | 44:c1d8923072ba | 570 | "data": [ |
| TMBOY | 44:c1d8923072ba | 571 | AlertsStruct, // 见Alerts数据结构 |
| TMBOY | 44:c1d8923072ba | 572 | AlertsStruct, // 见Alerts数据结构 |
| TMBOY | 44:c1d8923072ba | 573 | ] |
| TMBOY | 44:c1d8923072ba | 574 | } |
| TMBOY | 44:c1d8923072ba | 575 | ``` |
| TMBOY | 44:c1d8923072ba | 576 | |
| TMBOY | 44:c1d8923072ba | 577 | ## Alerts暂停 |
| TMBOY | 44:c1d8923072ba | 578 | `/saiya/pause` |
| TMBOY | 44:c1d8923072ba | 579 | `method:POST` |
| TMBOY | 44:c1d8923072ba | 580 | `datatype:JSON` |
| TMBOY | 44:c1d8923072ba | 581 | ### postbody |
| TMBOY | 44:c1d8923072ba | 582 | ```javascript |
| TMBOY | 44:c1d8923072ba | 583 | { |
| TMBOY | 44:c1d8923072ba | 584 | "token": string, // 唯一标识 |
| TMBOY | 44:c1d8923072ba | 585 | } |
| TMBOY | 44:c1d8923072ba | 586 | ``` |
| TMBOY | 44:c1d8923072ba | 587 | |
| TMBOY | 44:c1d8923072ba | 588 | ### response |
| TMBOY | 44:c1d8923072ba | 589 | ```javascript |
| TMBOY | 44:c1d8923072ba | 590 | { |
| TMBOY | 44:c1d8923072ba | 591 | "status": int, //状态码 0正确 其他错误 |
| TMBOY | 44:c1d8923072ba | 592 | "msg": string, // 错误信息 |
| TMBOY | 44:c1d8923072ba | 593 | "data": null |
| TMBOY | 44:c1d8923072ba | 594 | } |
| TMBOY | 44:c1d8923072ba | 595 | ``` |
| TMBOY | 44:c1d8923072ba | 596 | |
| TMBOY | 44:c1d8923072ba | 597 | ## Alerts重新开启 |
| TMBOY | 44:c1d8923072ba | 598 | `/saiya/enable` |
| TMBOY | 44:c1d8923072ba | 599 | `method:POST` |
| TMBOY | 44:c1d8923072ba | 600 | `datatype:JSON` |
| TMBOY | 44:c1d8923072ba | 601 | ### postbody |
| TMBOY | 44:c1d8923072ba | 602 | ```javascript |
| TMBOY | 44:c1d8923072ba | 603 | { |
| TMBOY | 44:c1d8923072ba | 604 | "token": string, // 唯一标识 |
| TMBOY | 44:c1d8923072ba | 605 | } |
| TMBOY | 44:c1d8923072ba | 606 | ``` |
| TMBOY | 44:c1d8923072ba | 607 | |
| TMBOY | 44:c1d8923072ba | 608 | ## Alerts删除 |
| TMBOY | 44:c1d8923072ba | 609 | `/saiya/delete` |
| TMBOY | 44:c1d8923072ba | 610 | `method:POST` |
| TMBOY | 44:c1d8923072ba | 611 | `datatype:JSON` |
| TMBOY | 44:c1d8923072ba | 612 | ### postbody |
| TMBOY | 44:c1d8923072ba | 613 | ```javascript |
| TMBOY | 44:c1d8923072ba | 614 | { |
| TMBOY | 44:c1d8923072ba | 615 | "token": string, // 唯一标识 |
| TMBOY | 44:c1d8923072ba | 616 | } |
| TMBOY | 44:c1d8923072ba | 617 | ``` |
| TMBOY | 44:c1d8923072ba | 618 | |
| TMBOY | 44:c1d8923072ba | 619 | ### response |
| TMBOY | 44:c1d8923072ba | 620 | ```javascript |
| TMBOY | 44:c1d8923072ba | 621 | { |
| TMBOY | 44:c1d8923072ba | 622 | "status": int, //状态码 0正确 其他错误 |
| TMBOY | 44:c1d8923072ba | 623 | "msg": string, // 错误信息 |
| TMBOY | 44:c1d8923072ba | 624 | "data": null |
| TMBOY | 44:c1d8923072ba | 625 | } |
| TMBOY | 44:c1d8923072ba | 626 | ``` |
| TMBOY | 44:c1d8923072ba | 627 | |
| TMBOY | 44:c1d8923072ba | 628 | ## Alerts更新 |
| TMBOY | 44:c1d8923072ba | 629 | `/saiya/update` |
| TMBOY | 44:c1d8923072ba | 630 | `method:POST` |
| TMBOY | 44:c1d8923072ba | 631 | `datatype:JSON` |
| TMBOY | 44:c1d8923072ba | 632 | ### postbody |
| TMBOY | 44:c1d8923072ba | 633 | ```javascript |
| TMBOY | 44:c1d8923072ba | 634 | AlertsStruct |
| TMBOY | 44:c1d8923072ba | 635 | ``` |
| TMBOY | 44:c1d8923072ba | 636 | |
| TMBOY | 44:c1d8923072ba | 637 | ### response |
| TMBOY | 44:c1d8923072ba | 638 | ```javascript |
| TMBOY | 44:c1d8923072ba | 639 | { |
| TMBOY | 44:c1d8923072ba | 640 | "status": int, //状态码 0正确 其他错误 |
| TMBOY | 44:c1d8923072ba | 641 | "msg": string, // 错误信息 |
| TMBOY | 44:c1d8923072ba | 642 | "data": null |
| TMBOY | 44:c1d8923072ba | 643 | } |
| TMBOY | 44:c1d8923072ba | 644 | ``` |
| TMBOY | 44:c1d8923072ba | 645 |
