Implement ping
This commit is contained in:
parent
6feb0ee2f3
commit
b9d2324552
1 changed files with 8 additions and 0 deletions
|
@ -15,6 +15,7 @@ class Client():
|
||||||
self.privateKey = ''
|
self.privateKey = ''
|
||||||
self.hashMethod = 'sha1'
|
self.hashMethod = 'sha1'
|
||||||
self.pongTimer = 0
|
self.pongTimer = 0
|
||||||
|
self.pingTimer = 0
|
||||||
self.supportedMethods = 0
|
self.supportedMethods = 0
|
||||||
self.tellduscore = TelldusCore()
|
self.tellduscore = TelldusCore()
|
||||||
self.serverList = ServerList()
|
self.serverList = ServerList()
|
||||||
|
@ -58,6 +59,7 @@ class Client():
|
||||||
|
|
||||||
self.socket.write(self.signedMessage(msg))
|
self.socket.write(self.signedMessage(msg))
|
||||||
self.pongTimer = time.time()
|
self.pongTimer = time.time()
|
||||||
|
self.pingTimer = time.time()
|
||||||
while(1):
|
while(1):
|
||||||
try:
|
try:
|
||||||
resp = self.socket.read(1024)
|
resp = self.socket.read(1024)
|
||||||
|
@ -66,8 +68,14 @@ class Client():
|
||||||
if (time.time() - self.pongTimer >= 360): # No pong received
|
if (time.time() - self.pongTimer >= 360): # No pong received
|
||||||
print("No pong received, disconnecting")
|
print("No pong received, disconnecting")
|
||||||
break
|
break
|
||||||
|
if (time.time() - self.pingTimer >= 120):
|
||||||
|
# Time to ping
|
||||||
|
msg = LiveMessage("Ping")
|
||||||
|
self.socket.write(self.signedMessage(msg))
|
||||||
|
self.pingTimer = time.time()
|
||||||
|
|
||||||
continue
|
continue
|
||||||
|
|
||||||
if (resp == ''):
|
if (resp == ''):
|
||||||
print("no response")
|
print("no response")
|
||||||
break
|
break
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue