Socket私有协议修改版
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据交换协议
V1.0
201601114
1.说明
2.概述
客户端命令帧格式:
服务端命令帧格式:
其中例外信息中错误码定义如下:
01H:命令码错
02H:数据校验错
03H:命令解析错
04H:命令执行出错
05H:用户未认证
采用ASCII码方式交互;命令首字符为“~”,命令尾字符为“`”。
3.CRC
Java实现代码:
private static int polynomial = 0x1021;
public static int crc(byte[] bytes){
int crc = 0xffff;
for(int index = 0; index < bytes.length; index++){ byte b = bytes[index];
for(int i=0; i<8; i++){
boolean bit = (((b >> (7-i)) & 1) == 1);
boolean c15 = (((crc >> 15) & 1) == 1);
crc <<= 1;
crc &= 0xffff;
if(bit)
crc += 1;
if(c15)
crc ^= polynomial;
}
}
crc &= 0xffff;
for(int i=0; i<16; i++){
boolean c15 = (((crc >> 15) & 1) == 1);
crc <<= 1;
crc &= 0xffff;
if(c15)
crc ^= polynomial;
crc &= 0xffff;
return crc;
}
4.客户端命令
3.1命令
功能描述:Djfn187654376tyhgf65743219iuyhrf
1、注册功能
命令格式:
2、启用操作
回复格式:
3、禁用操作命令格式:
回复格式:
4、获取厅信息操作
回复格式:
5、获取台信息操作
回复格式:
6、登录操作
7、修改密码操作命令格式:
8、获取口味说明操作命令格式:
9、获取赠菜说明操作
10、获取退菜说明操作命令格式:
回复格式:
11、获取菜品分类操作命令格式:
回复格式:
12、获取菜品操作
13、获取套餐操作
14、开台操作
回复格式:
15、点菜操作命令格式:
回复格式:
16、划菜操作命令格式:
回复格式:
17、退菜操作命令格式:
18、赠菜操作命令格式:
19、转菜操作
回复格式:
20、换台操作
21、查看已点菜品操作
22、账单打印操作命令格式:
24、获取市别操作命令格式:
回复格式:
26、心跳包
命令格式:
注:在四位功能码后面增加32位的key值校验码,其后面数据依次向后偏移32位例如:# HEATQWERTYUIOPLKJHGFDSAZXCVBNM1234JJ000006JSON