[ create a new paste ] login | about

Link: http://codepad.org/PehDqzRL    [ raw code | fork ]

Python, pasted on Jan 10:
import socket
import gobject
import gtk
import time
import threading

PORT = 45454

def server():
    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
    sock.bind(('', PORT))
    sock.listen(1)
    conn, addr = sock.accept()
    while True:
        data = conn.recv(1024)
        if not data:
            break
        conn.send(data)
    conn.close()
    sock.close()

th = threading.Thread(target=server)
th.setDaemon(True)
th.start()
time.sleep(0.2)


class PyApp(gtk.Window):
    def __init__(self):
        gtk.Window.__init__(self)
        self.connect("destroy", gtk.main_quit)
        self.set_size_request(500, 500)
        self.label = gtk.Label("")
        self.add(self.label)
        self.show_all()

        self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        self.sock.connect(('', PORT))
        gobject.io_add_watch(self.sock, gobject.IO_IN, self.input_handler)
        gobject.timeout_add(0, self.send_message)

    def send_message(self):
        self.sock.send("unko\n")
        gobject.timeout_add(500, self.send_message)

    def input_handler(self, source, condition):
        data = self.sock.recv(1024)
        self.label.set_text(self.label.get_text() + data)
        return True

gtk.gdk.threads_init()
PyApp()
gtk.main()


Create a new paste based on this one


Comments: