《Socket私有协议修改版.docx》由会员分享,可在线阅读,更多相关《Socket私有协议修改版.docx(25页珍藏版)》请在第一文库网上搜索。
1、yt数据互换合同VI.OO11141.阐明2.概述客户端命令帧格式:表格中偏移量和长度以ASC11字符长度表达偏移字段长度描述O217213739535757+NCRC-16校验码4CRC-I6服务端命令帧格式:偏移字段长度描述O268222626+NCRC-16校验码4CRC-I6。例外答复命令帧格式:偏移字段长度描述57例外信息201/02/03/04/05错误59CRC-I6校验码4。其中例外信息中错误码定义如下:O1H:命令码错02H:数据校验错03H:命令解析错04H:命令执行出错05H:顾客未认证。采用ASC11码方式交互;命令首字符为,命令尾字符为3.CRCJQVa实现代码:pr
2、ivatestaticintpo/yomia/=Ox1021;O。pub1icstaticintcrc(bytebytes)intcrc=0xffff;。for(intindex=0;indexbytes.1egth;index+)。byteb=bytesindex;。3for(inti=0;i8;i+)。boo1enbit=(b(7-i)&1)=1);。boo1eanc15=(crc15)&1)=1);。crc=1;。crc&=Oxffff;if(bit)。一。crc+=1;。if(c15)。crc八=po/yomia1。)CrC&=Oxffff;for(inti=0;i15)&1)=1);
3、。crc=1;crc&=Oxffff;。if(c15)os。crcA=poIynomiat,。crc&=Oxffff;returncrc;)4.客户端命令3.1命令功能描述:Djfntyhgf65743219iuyhrf1、注册功能命令格式:偏移字段长度描述0#1数据标记1000000004Key(32位)YHZC功能编码:4个字母5000053(根据JOSN串长度设立)66位JSON数据长度,最小OOOOO0,最大9999999JSON:data:,tingbh:H01taibh:01workerNum”:6666Tingbh:厅编号】;【taibh:台编号】;(workerNum:点菜员编
4、号】;62结束符2回车换行,rn答复格式:偏移字段长度描述0#1数据标记1QTCZ4功能编码:4个字母50006(根据JoSN串长度设立)6JSON数据长度,最小000000,最大9999999JSON:,resu1t:0k,data:w,;msg:nu11ResuIt:成果标记(【ok:成功,faxJed:失败】:data:返回json数据】;msg:提示信息】)15结束符2回车换行,rn2、启用操作命令格式:偏移字段长度描述01数据标记1QYCZ4功能编码:4个字母50053(根据JOSN串长度设立)6JSON数据长度,最小000000,最大9999999JSON:data:tingbh:
5、01,taibh:01workerNum6666【Tingbh:厅编号】;【taibh:台编号】;workerNum:点菜员编号】;62结束符2回车换行,rn答复格式:偏移字段长度描述0#1数据标记1QYCZ4功能编码:4个字母50006(根据JOSN串长度设立)6JSON数据长度,最小OOO000,最大9999999JSON:resu1t:okdata:”,msg,nu11ReSU1t:成果标记(【。k:成功,于CriIed:失败】;data:返回json数据;msg:提示信息】)15结束符2回车换行,rn3、禁用操作命令格式:偏移字段长度描述0#1数据标记1JYCZ4功能编码:4个字母50
6、053(根据JoSN串长度设立)6JSoN数据长度,最小OOOOO0,最大9999999JSON:data:tingbh:O1taibh:017,workerNum:6666,Tingbh:厅编号】;taibh:台编号】;workerNum:点菜员编号】;62结束符2回车换行,rn答复格式:偏移字段长度描述0#1数据标记1JYCZ4功能编码:4个字母50006(根据JOSN串长度设立)6JSON数据长度,最小000000,最大9999999JSON:,resu1tfok7data:/z;msg,:nu11)Resu1t:成果标记(10k:成功,fai1ed:失败】;【data:返回json数据
7、据msg:提示信息】)15结束符2回车换行,rn4、获取厅信息操作命令格式:偏移字段长度描述0#1数据标记1TWXX4功能编码:4个字母5000000(根据JOSN串长度设立)6JSON数据长度,最小000000,最大9999999没有数据不占位9结束符2回车换行,rn答复格式:偏移字段长度描述O#1数据标记1TWXX4功能编码:4个字母50023(根据JOSN串长度设立)6JSON数据长度,最小000000,最大9999999,resu1t:,Ok,dataz,:tingbh:01,tingname:”大厅,*m1fs*:1,*autom1*:0,“1ingbh:01,tingname:二楼
8、,m1fs:I,autom1:0)J,msg:)ResuIt:成果标记(ok:成功,fai1ed:失败】;Data:tingbh:厅编号】;【tingname:厅名称】;【m1fs:抹零方式0不抹零1-四舍五入2一抹去不不小于1元的零头3-抹去不不小于10元的零头】,autom1:自动抹零0-不启动自动抹零1一启动自动抹零】;【msg:提示信息】)32结束符2回车换行,rn5、获取台信息操作命令格式:偏移字段长度描述0#1数据标记1TZXX4功能编码:4个字母50053(根据JoSN串长度设立)6JSON数据长度,最小000000,最大9999999JSON:,tingbh:,taibh:O1
9、tingbh:厅编号】;taibh:台编号】,tingbh为空是同步所有台位,tingbh不为空是同步整个厅位的台位,如果tingbh和taibh都不为空,同步指定的这个台位62结束符2回车换行,rn答复格式:偏移字段长度描述0#1数据标记1TZXX4功能编码:4个字母50006(根据JOSN串长度设立)6JSON数据长度,最小Ooo000,最大9999999JSON:resu1t,ok,data:taibh:01,z,tainame:1号桌state:1,maxseats,:Oz,kt1sh:1234567,starttime:-09-2010:35:36,tingbh:01),taibh:
10、02,tainame:2号桌,state:0;maxseats”:Ojkt1Sh:1234567,starttime,nu11,tingbh:,01z,msg,:nu11)Resu1t:成果标记(【ok:成功;fat1ed:失败】,Data:taibh:台编号】;tainame:台名称】;state:台状态(0空闲,1占用,2禁用,3待清)】;maxseats:最大座位数】;【kt1sh:开台流水号】;starttime:开台时间】;tingbh:厅编号】;【msg:提示信息】)15结束符2回车换行,rn6、登录操作命令格式:偏移字段长度描述01数据标记1YHD14功能编码:4个字母50053
11、(根据JoSN串长度设立)6JSoN数据长度,最小OOOo00,最大9999999JSON:w0rknum,:0,z,pwd:01(worknum:点菜员编号】;【pwd:登录密码】62结束符2回车换行,rn答复格式:偏移字段长度描述0#1数据标记1YHD14功能编码:4个字母50006(根据JOSN串长度设立)6JSON数据长度,最小000000,最大9999999JSON:resu1t:ok,data:z,32位的KEY(通过md5加密)Jmsg:nuI1Resu1t:成果标记(ok:成功,fai1ed:失败】;data:返回js0n数据】;【msg:提示信息】)key生成规则:Sh0pidhhmmss后md5一次15结束符2回车换行,rn7、修改密码操作命令格式:偏移字段长度描述O#1数据标记1MPWD4功能编码:4个字母50053(根据JOSN串长度设立)6JSoN数据长度,最小000000,最大9999999JSON:wOrknum01o1dPwd:01;newPwd:0【worknum:点菜员编号】;