[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
}
```
- 相关资源链接
- 米乐星球小程序内调研
- 项目结构说明
- 交互课件说明
- server项目说明
- 项目说明
- 项目启动
- app.js做的事情
- 获取互动课件的地址
- 分析互动课件地址的参数
- policy目录--lesson.js
- 解析ppt--api/lesson.js
- 信令中的key:template
- 信令中的key:media
- kk-talkee-engine.js
- Message
- 课件模板页的识别过程
- 解析课件模板的源文件
- 场景与模板的对应关系
- 所有场景的基类
- choiceScence为例
- 注意事项
- ws
- online项目的说明
- online消息
- 课件编辑项目
- 资源链接
- 基本项目信息
- electron项目结构分析
- ipc
- 模板题组
- 普通题组
- 游戏题组
- 课件导出内容分析
- 课件模板分类明细
- 图片题
- 视频题
- 音频题
- 选择题
- 判断题
- 转盘
- 筛子
- 图层拖拽
- 动画题
- 翻拍题
- 语音题
- 201908变更
- 课件制作流程分析
- 菜单配置
- 入口操作
- 定义模板布局与初始化
- 选择素材
- 导出过程
- egret
- interface
- ad选择器模板
- ab选择器模板
- 图层拖拽模板
- 判断题模板
- xml
- 转盘
- events
- components
- 父类组件
- 基本组件
- 判断题组件
- 龙骨动画调研
- 基本了解
- 产品原型
- 白板Client项目
- 消息类型
- 白板项目分析
- 入口