ping server every 5 minutes to make sure the link is not down
This commit is contained in:
parent
524d913bba
commit
f389cd6ad5
|
@ -212,7 +212,7 @@ class TcpStratumInterface(Interface):
|
||||||
def __init__(self, host, port):
|
def __init__(self, host, port):
|
||||||
Interface.__init__(self, host, port)
|
Interface.__init__(self, host, port)
|
||||||
self.s = socket.socket( socket.AF_INET, socket.SOCK_STREAM )
|
self.s = socket.socket( socket.AF_INET, socket.SOCK_STREAM )
|
||||||
self.s.settimeout(5)
|
self.s.settimeout(5*60)
|
||||||
self.s.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
|
self.s.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
|
||||||
try:
|
try:
|
||||||
self.s.connect(( self.host, self.port))
|
self.s.connect(( self.host, self.port))
|
||||||
|
@ -227,7 +227,9 @@ class TcpStratumInterface(Interface):
|
||||||
out = ''
|
out = ''
|
||||||
while self.is_connected:
|
while self.is_connected:
|
||||||
try: msg = self.s.recv(1024)
|
try: msg = self.s.recv(1024)
|
||||||
except socket.timeout:
|
except socket.timeout:
|
||||||
|
# ping the server with server.version, as a real ping does not exist yet
|
||||||
|
self.send([('server.version', [ELECTRUM_VERSION])])
|
||||||
continue
|
continue
|
||||||
out += msg
|
out += msg
|
||||||
if msg == '':
|
if msg == '':
|
||||||
|
|
Loading…
Reference in New Issue