tinc一些认识
tinc组网后,某一节点如果承担子网,只需在该节点的配置文件下配置即可,无需下发到所有节点
但是每个子网只有一个,不存在多个节点承担一个子网
tinc组网后,某一节点如果承担子网,只需在该节点的配置文件下配置即可,无需下发到所有节点
但是每个子网只有一个,不存在多个节点承担一个子网
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import serial
import time
import os
from datetime import datetime
def test():
ser.write('at\r'.encode())
ret = ser.readall()
print(ret)
return ret.decode()
def getv():
ser.write('ati\r'.encode())
ret = ser.readall()
print(ret)
def startGPS():
ser.write('AT+QGPS=2\r'.encode())
ret = ser.readall()
print(ret)
def endGPS():
ser.write('AT+QGPSEND\r'.encode())
ret = ser.readall()
print(ret)
def getGPS():
ser.write('AT+QGPSLOC=0\r'.encode())
ret = ser.readall()
print(ret)
def sendFile(fn):
print("send.....")
ser.write('AT+QFLDS="RAM"\r'.encode())
ret = ser.readall()
print(ret)
ser.write('AT+QFLST="RAM:*"\r'.encode())
ret = ser.readall()
print(ret)
cmd = 'AT+QFDEL="RAM:%s"\r' % fn
ser.write(cmd.encode())
ret = ser.readall()
print(ret)
print("send go.....")
st = os.stat(fn)
cmd = 'AT+QFUPL="RAM:%s",%d\r' % (fn,st.st_size)
print(cmd)
ser.write(cmd.encode())
ret = ser.readall()
print(ret)
f = open(fn,"r")
a = f.read(1024)
while a:
ser.write(a)
ret = ser.readall()
print(ret)
a = f.read(1024)
def setXTRA(fn):
ser.write('AT+QGPSXTRA=1\r'.encode())
ret = ser.readall()
print(ret)
dt = datetime.now()
cmd=dt.strftime('AT+QGPSXTRATIME=0,"%Y/%m/%d,%H:%M:%S",1,1,3500')
print(cmd)
ser.write(cmd.encode())
ret = ser.readall()
print(ret)
print("======")
cmd = 'AT+QGPSXTRADATA="RAM:xtra2.bin"\r'
#cmd = 'AT+QGPSXTRADATA="RAM:%s"\r' % fn
print(cmd)
ser.write(cmd.encode())
ret = ser.readall()
print(ret)
def getjzloc():
'''
ser.write('AT+QLBSCFG="token","11o7hd19W2858601"\r'.encode())
ret = ser.readall()
print(ret)
'''
ser.write('AT+QLBSCFG="withTime",1\r'.encode())
ret = ser.readall()
print(ret)
ser.write('AT+QLBSCFG="timeUpdate",1\r'.encode())
ret = ser.readall()
print(ret)
ser.write('AT+QLBS\r'.encode())
ret = ser.readall()
print(ret)
def recvmsg():
'''
ser.write('AT+CMGF=1\r'.encode())
ret = ser.readall()
print(ret)
ser.write('AT+CMGL="ALL"\r'.encode())
ret = ser.readall()
print(ret)
ser.write('AT+CMGF=0\r'.encode())
ret = ser.readall()
print(ret)
ser.write('AT+CMGL=4\r'.encode())
ret = ser.readall()
print(ret)
'''
ser.write('AT+CMGR=6\r'.encode())
print("=====")
ret = ser.readline()
ret = ser.readline()
ret = ser.readline().strip()
print(ret)
print(len(ret))
ret = ser.readall()
def sendmsg(num,text):
'''
目前只会英文
'''
ser.write('AT+CMGF=1\r'.encode())
ret = ser.readall()
print(ret)
ser.write('AT+CMGS="'+num+'"\r'.encode())
ret = ser.readall()
print(ret)
ser.write(text.encode())
#python3
#bytes.fromhex('1a')
ser.write("1a".decode('hex'))
ret = ser.readall()
print(ret)
ser = serial.Serial("/dev/ttyUSB2", 115200, timeout=0.5)
if "OK" not in test():
raise(ValueError("serial err....."))
getv()
'''
fn = "xtra2.bin"
endGPS()
sendFile(fn)
setXTRA(fn)
startGPS()
time.sleep(2)
getGPS()
endGPS()
'''
#getjzloc()
#sendmsg("177123456","this is test for me")
recvmsg()