def startService(self): """Initiates the bluetooth sockets and listen for a connection""" self.serverSocket = bt.socket(bt.AF_BT,bt.SOCK_STREAM) #Gets a free channel for communication self.channel = bt.bt_rfcomm_get_available_server_channel(self.serverSocket) #Binds the socket to that channel and listen for connection self.serverSocket.bind(("",self.channel)) bt.bt_advertise_service( self.serviceName, self.serverSocket, True, bt.RFCOMM ) bt.set_security(self.serverSocket, bt.AUTHOR | bt.AUTH ) self.serverSocket.listen(1) #Forking into the background appswitch.switch_to_fg(u'PythonScriptShell') ui.note(u"SmsConsole: Waiting for connections","info") appswitch.switch_to_bg(u'PythonScriptShell') self.clientConn,self.clientAddr = self.serverSocket.accept() appswitch.switch_to_fg(u'PythonScriptShell') ui.note(u"Client %s Connected" % (self.clientAddr), "info") appswitch.switch_to_bg(u'PythonScriptShell')
def stopService(self): if self.service: self.service = False self.statusUpdate() socket.bt_advertise_service("pys60_remote", self.sock, False, socket.RFCOMM) self.sock.close() self.sock = None
def chat_server(): server = btsocket.socket(btsocket.AF_BT, btsocket.SOCK_STREAM) channel = btsocket.bt_rfcomm_get_available_server_channel(server) server.bind(("", channel)) server.listen(1) btsocket.bt_advertise_service(u"btchat", server, True, btsocket.RFCOMM) btsocket.set_security(server, btsocket.AUTH | btsocket.AUTHOR) print "Waiting for clients..." conn, client_addr = server.accept() print "Client connected!" talk(conn, None)
def startService(self): self.service = True self.statusUpdate() self.sock = socket.socket(socket.AF_BT, socket.SOCK_STREAM) self.sock.bind(('', PORT)) self.sock.listen(1) socket.set_security(self.sock, socket.AUTH | socket.AUTHOR) socket.bt_advertise_service(u"pys60_remote", self.sock, True, socket.RFCOMM) self.listen()
def startService(self): self.service = True self.statusUpdate() self.sock = socket.socket(socket.AF_BT, socket.SOCK_STREAM) self.sock.bind(("", self.port)) self.sock.listen(1) socket.set_security(self.sock, socket.AUTH | socket.AUTHOR) socket.bt_advertise_service("pys60_remote", self.sock, True, socket.RFCOMM) note("Listenning on port %d" % self.port) self.listen()
def receiveCoinsBT(self,transport): if sys.platform == 'symbian_s60': import btsocket server_socket = btsocket.socket(btsocket.AF_BT, btsocket.SOCK_STREAM) #port = btsocket.bt_rfcomm_get_available_server_channel(server_socket) #server_socket.bind(("", port)) server_socket.bind(("", 3)) server_socket.listen(1) btsocket.bt_advertise_service( u"opencoin", server_socket, True, btsocket.RFCOMM) btsocket.set_security(server_socket, btsocket.AUTH) self.feedback(u'Receive coins: ready to receive...') (sock,peer_addr) = server_socket.accept() else: import bluetooth as bt server_sock=bt.BluetoothSocket(bt.RFCOMM) #server_sock.bind(("",bt.PORT_ANY)) server_sock.bind(("",3)) server_sock.listen(1) port = server_sock.getsockname()[1] uuid = "9e72d9d8-e06d-41cb-bbd4-89cd052cccb8" bt.advertise_service( server_sock, u"opencoin", service_id = uuid, service_classes = [ uuid, bt.SERIAL_PORT_CLASS ], profiles = [ bt.SERIAL_PORT_PROFILE ] ) #bt.advertise_service( server_sock, u"opencoin",) self.feedback(u'Receive coins: ready to receive...') sock, client_info = server_sock.accept() bt = transports.BTTransport(sock) self.wallet.getApproval = self.getApproval bt.send(self.wallet.listenSum(bt.receive())) self.feedback(u'Receive coins: receiving...') bt.send(self.wallet.listenSpend(transport,bt.receive())) import e32 e32.ao_sleep(1)
def test_bt_server(self): server_socket = btsocket.socket(btsocket.AF_BT, btsocket.SOCK_STREAM) port = btsocket.bt_rfcomm_get_available_server_channel(server_socket) server_socket.bind(("", port)) server_socket.listen(1) btsocket.bt_advertise_service(u"port1", server_socket, True, btsocket.RFCOMM) btsocket.bt_advertise_service(u"port1", server_socket, False, btsocket.RFCOMM) btsocket.bt_advertise_service(u"port2", server_socket, True, btsocket.OBEX) btsocket.bt_advertise_service(u"port2", server_socket, False, btsocket.OBEX) btsocket.set_security(server_socket, (btsocket.AUTH | btsocket.ENCRYPT | btsocket.AUTHOR)) server_socket.close()