https://github.com/XiaoxingChen/roboshopAPI_py/blob/master/netprotocol/rbkNetProtoEnums.py

import json
import struct

API_PORT_ROBOD = 19200
API_PORT_STATE = 19204
API_PORT_CTRL = 19205
API_PORT_TASK = 19206
API_PORT_CONFIG = 19207
API_PORT_KERNEL = 19208
API_PORT_OTHER = 19210

robot_status_info_req = 1000
robot_status_run_req = 1002
robot_status_mode_req = 1003
robot_status_loc_req = 1004
robot_status_speed_req = 1005
robot_status_area_req = 1011
robot_status_io_res = 1013
robot_status_task_req = 1020
robot_status_all1_req = 1100
robot_status_alarm_res = 1050

robot_control_reloc_req = 2002
robot_control_motion_req = 2010

robot_task_gotarget_req = 3051

robot_daemon_ls_req = 5100
robot_daemon_scp_req = 5101
robot_daemon_rm_req = 5102

robot_other_setdo_req = 6001


# 0x5A + Version + serierNum + jsonLen + reqNum + rsv
PACK_HEAD_FMT_STR = '!BBHLH6s'
PACK_RSV_DATA = b'\x00\x00\x00\x00\x00\x00'


def packMsg(reqId, msgTyp, msg={}):
    msgLen = 0
    jsonStr = json.dumps(msg)
    if(msg != {}):
        msgLen = len(jsonStr)
    rawMsg = struct.pack(PACK_HEAD_FMT_STR, 0x5A, 1, reqId,
                         msgLen, msgTyp, PACK_RSV_DATA)
    if(msg != {}):
        rawMsg += bytearray(json.dumps(msg), 'ascii')
    return rawMsg


def unpackHead(data):
    result = struct.unpack(PACK_HEAD_FMT_STR, data)
    jsonLen = result[3]
    reqNum = result[4]

    return (jsonLen, reqNum)

原文地址:http://www.cnblogs.com/zhuoss/p/16891627.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性