ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
[TOC] # key:template 具体分类 主要是课件中交互题型相关的,因为是固定的不同题型,所以发送的是模板性质的,在下面每个类型里主要介绍发出的消息模板格式是如何的? ## connection 连线 ## wheel 转盘 只发送一个模板消息 ``` template:{ type:'3', //Number 3 转盘的数字 wheel:{ payload:JSON.stringfy( { type:'', //play | angle:'' //Number }) } } ``` ## 拖动图片 开始拖动图片 ``` template:{ free:{ type:"lockedDrag", payload:JSON.stringfy({"id":"image0"}) }, type:4 } ``` 拖动图片 ``` template:{ type:'4', //String drag free:{ type:'drag',// String free payload:JSON.stringfy({ x:'', //play | y:'', //play | id:'', //play | userId:'' //Number, }) } } ``` 结束拖动图片 ``` template:{ free:{ type:"unLockedDrag", payload:JSON.stringfy({"id":"image0"}) }, type:4 } ``` ## ab -choice 选择器,ad-choice选择器 答对题目 ``` template:{ choice:{ payload:JSON.stringfy({ "key":"a", userId:'', isRight:true // boolean }) }, type:1 } ``` 答错题目 ``` template:{ choice:{ payload:JSON.stringfy({ "key":"b", userId:'', isRight:false }) }, type:1 } ``` ## connect 连线题 原理:每次连线正确的信息都会汇总到sync里的m对象信息里,连接正确,那么对应的一题比如a:true设置为true. 点击选项,发送两个模板消息 ``` template:{ connection:{ type:'answer', payload:'a' }, type:0, // userId:''// } ``` ``` template:{ connection:{ type:'sync', payload:JSON.stringfy({ "c":{to:'a'}, m:{} }) }, type:0, // userId:''// } ``` 再点击匹配项目,如果匹配正确,发送3个模板消息 ``` template:{ connection:{ type:'sync', payload:JSON.stringfy({ "c":{to:'a',from:'a'}, m:{a:true} }) }, type:0, // userId:''// } ``` ``` template:{ connection:{ type:'choice', payload:'a' }, type:0, // userId:''// } ``` ``` template:{ connection:{ type:'sync', payload:JSON.stringfy({ "c":{}, m:{a:true} }) }, type:0, // userId:''// } ``` answer部分选择之后,answer消息发布,同步增加c:to的内容;(共2个模板消息)。 **选错**choice之后,choice消息发布,另外choice消息仍然一致,将c的内容清空,选择的anwser清空。(共2个模板消息) 连线重置,发送两个模板消息,行为本身,sync清空 ``` template:{ connection:{ type:'reset', payload:null }, type:0, // userId:''// } ``` ``` template:{ connection:{ type:'sync', payload:JSON.stringfy({ "c":{}, m:{} }) }, type:0, // userId:''// } ``` ## 筛子 dice 备注:筛子传送的数组比实际数字-1 开始筛子 ``` template:{ dice:{ payload:JSON.stringfy({ type:'play' //string :play }) }, type:2, // } ``` 结束筛子 ``` template:{ dice:{ payload:JSON.stringfy({ type:'sync', //string :play number:1 }) }, type:2, // } ``` ## card卡片 正常下一张 ``` template:{ card:{ type:'swap', payload:JSON.stringfy({id:0}) }, type:5, // userId:'' } ``` 反面 ``` template:{ card:{ type:'swapAll' }, type:5, // userId:'' } ``` 重置 ``` template:{ card:{ type:'reset' }, type:5, // userId:'' } ``` ## 判断题 ``` template:{ choice:{ payload:JSON.stringfy({ "key":"b", userId:'', isRight:false }) }, type:1 } ```