new bitcoind backend (experimental)
[electrum-server.git] / backends / irc / __init__.py
index 0372002..0c06d80 100644 (file)
@@ -15,6 +15,8 @@ class IrcThread(threading.Thread):
         self.daemon = True
         self.stratum_tcp_port = config.get('server','stratum_tcp_port')
         self.stratum_http_port = config.get('server','stratum_http_port')
+        self.stratum_tcp_ssl_port = config.get('server','stratum_tcp_ssl_port')
+        self.stratum_http_ssl_port = config.get('server','stratum_http_ssl_port')
         self.peers = {}
         self.host = config.get('server','host')
         self.nick = config.get('server', 'irc_nick')
@@ -34,6 +36,10 @@ class IrcThread(threading.Thread):
             s += 't' + self.stratum_tcp_port + ' ' 
         if self.stratum_http_port:
             s += 'h' + self.stratum_http_port + ' '
+        if self.stratum_tcp_port:
+            s += 's' + self.stratum_tcp_ssl_port + ' ' 
+        if self.stratum_http_port:
+            s += 'g' + self.stratum_http_ssl_port + ' '
         return s
 
 
@@ -44,6 +50,11 @@ class IrcThread(threading.Thread):
             try:
                 s = socket.socket()
                 s.connect(('irc.freenode.net', 6667))
+            except:
+                time.sleep(10)
+                continue
+
+            try:
                 s.send('USER electrum 0 * :' + self.host + ' ' + ircname + '\n')
                 s.send('NICK ' + self.nick + '\n')
                 s.send('JOIN #electrum\n')