V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
sunrain520
V2EX  ›  Python

python UDP 发送 16 进制报文 新手求教 (如何拼接报文和解析这个报文)

  •  
  •   sunrain520 · 2015-10-30 12:41:20 +08:00 · 3307 次点击
    这是一个创建于 3126 天前的主题,其中的信息可能已经有所发展或是发生改变。

    3 传输过程约定
    3.1 传输约定
    3.1.1 终端 /服务端通信端口: 2002 (可设置)
    3.1.2 编码规范:编码传输信息需遵照 ISO2022,通信传输中文字符需遵照 GB2312
    3.1.3 终端每隔 1 秒钟向服务端发送心跳报文,服务端在 3 秒内未收到心跳后则表示此终端处于脱机状态(岗亭软件未进入出入管理),终端 3 次未收到回应则认为服务端脱机状态;
    3.1.4 应答返回时间,默认 500ms ,最多不超出 1000ms ;

    3.1.5 交易报文体格式定义:字段不固定字节长度:每个字段用制表符分隔,每行数据用换行符分隔,每行数据的最后一个字段结尾不加制表符,最后一行数据的结尾不加换行符,报文体结构统一转化为 16 进制字符串后进行传输
    注:制表符 ASCII 码值 0x09, 换行符 ASCII 码值 0x0A
    4 通信报文定义
    4.1 报文结构说明
    序号 名称 代码 字节长度 备注
    1 报文起始 STX 2 0x0202 (固定值)
    2 交易秘钥 STRING 16 MD5 秘钥
    3 通道号 TDH 1 不需要为 0x00, 应答与请求一致
    4 交易代码 CMD 1 应答与请求一致
    5 报文体长度 LEN 3 代码 Content 的长度(如 100:0x000064)
    6 报文体 CONTENT 不定(0-N)
    7 报文终止 ETX 2 0x0303 (固定值)
    8 校验码 ETX 1 1-7 的异或校验

    mind3x
        1
    mind3x  
       2015-10-30 12:45:32 +08:00   ❤️ 1
    既然需求已经这么清晰,就请施主报个价吧。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3229 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 00:55 · PVG 08:55 · LAX 17:55 · JFK 20:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.