23 lines
863 B
Python
23 lines
863 B
Python
|
|
import socket,time
|
||
|
|
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
|
||
|
|
s.settimeout(3)
|
||
|
|
s.bind(("192.168.68.1",0))
|
||
|
|
def cmd(c):
|
||
|
|
s.sendto(c.encode(),("192.168.68.200",5002))
|
||
|
|
try:
|
||
|
|
d,_=s.recvfrom(1024); print(c,"->",d.decode(errors="replace").strip())
|
||
|
|
except socket.timeout: print(c,"-> TIMEOUT")
|
||
|
|
cmd("ping")
|
||
|
|
cmd("mode")
|
||
|
|
cmd("info")
|
||
|
|
# e:net discovery ??(?? enet ????)
|
||
|
|
import struct
|
||
|
|
f=bytearray(180); f[0:4]=b"ENet"
|
||
|
|
struct.pack_into("<I",f,4,1); struct.pack_into("<H",f,0x0A,31772)
|
||
|
|
f[0x12]=1; struct.pack_into("<H",f,0x14,180); struct.pack_into("<H",f,0x18,1)
|
||
|
|
s2=socket.socket(socket.AF_INET,socket.SOCK_DGRAM); s2.settimeout(3); s2.bind(("192.168.68.1",0))
|
||
|
|
s2.sendto(bytes(f),("192.168.68.200",31772))
|
||
|
|
try:
|
||
|
|
d,_=s2.recvfrom(2048); print("enet discovery ->",len(d),"B name=",d[0x1A:0x29])
|
||
|
|
except socket.timeout: print("enet discovery -> TIMEOUT")
|