Subversion Repositories HomeAutomation

Rev

Details | Last modification | View Log | SVN | RSS feed

Rev Author Line No. Line
742 olof 1
import socket
2
 
3
class TCPClient():
4
 
5
    host = 'localhost'
6
    port = 50007
7
    sock = None
8
 
9
    def __init__(self, host, port):
10
        self.host = host
11
        self.port = port
12
 
13
    def connect(self, timeout = None):
14
        try:
15
            self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
16
            if timeout is not None:
17
                self.sock.settimeout(timeout)
18
            self.sock.connect((self.host, self.port))
19
            self.sock.settimeout(0.5)
20
            return True
21
        except Exception, e:
22
            print 'TCP Client connect failed:', e
23
            return False
24
 
25
    def disconnect(self):
26
        if self.sock is not None:
27
            self.sock.close()
28
 
29
    def read(self):
30
        try:
31
            data = self.sock.recv(1024)
32
            return repr(data)
33
        except socket.timeout:
34
            pass
35
        return None
36
 
37
    def write(self, data):
38
        self.sock.send(data)