首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过TCP将Teltonika设备与Python连接起来

通过TCP将Teltonika设备与Python连接起来
EN

Stack Overflow用户
提问于 2017-11-06 00:45:16
回答 2查看 1.8K关注 0票数 1

我正试图用以下代码连接到Teltonika设备(FMB1xx):

代码语言:javascript
复制
import socket
port = 12050
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('', port))
s.listen(1)
conn, addr = s.accept()
print('Connected by ', addr)
imei = conn.recv(1024)
conn.send('\x01')

while True:

    try:
         data = conn.recv(1024)
         if not data: break
         print (data)

    except socket.error:
         print ("Error Occured.")
         break

到目前为止,我已经发现conn.send('\x01')不能正常工作,设备也不发送其他数据。有几个像这样的问题,但没有一个有好的答案。在这里您可以找到该设备的文档。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-01-18 11:39:05

如果发送的字节超过一个字节,则必须对其进行编码和排序(小-/大端)。使用这样的东西:

代码语言:javascript
复制
conn.send(struct.pack('!L', 1))

关于连接端粒gps:服务器/

票数 1
EN

Stack Overflow用户

发布于 2020-12-31 07:36:55

就像@uglymaxweber提到的那样,您已经将它打包为整数(4个字节),在python3上,您可以使用内置的to_bytes。

字节顺序是小的或大的,第一个参数是bytesize。

代码语言:javascript
复制
   response = 5 
   conn.send(response.to_bytes(4, byteorder = 'big'))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47128207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档