| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 
 | #####################CLIENT#####################
 
host = "00:24:7E:D6:C5:9A"
port = 3
 
import socket, sys, threading, time
from bluetooth import *
 
class ThreadReception(threading.Thread):
    def __init__(self, conn):
        threading.Thread.__init__(self)
        self.connexion = conn           
 
    def run(self):
        while 1:
            message_recu = self.connexion.recv(1024)
            print "*" + message_recu + "*"
            if message_recu.upper() == "FIN":
                break
            time.sleep(0.001)
 
class ThreadEmission(threading.Thread):
    def __init__(self, conn):
        threading.Thread.__init__(self)
        self.connexion = conn          
 
    def run(self):
        while 1:
            message_emis = raw_input()
            self.connexion.send(message_emis)
            time.sleep(0.001)
 
# Programme principal - Établissement de la connexion :
connexion = BluetoothSocket( RFCOMM )
try:
    connexion.connect((host, port))
except socket.error:
    print "La connexion a échoué."
    sys.exit()    
print "Connexion établie avec le serveur."
 
# Dialogue avec le serveur : on lance deux threads pour gérer
# indépendamment l'émission et la réception des messages :
th_E = ThreadEmission(connexion)
th_R = ThreadReception(connexion)
th_E.start()
th_R.start()
th_E.join()
th_R.join()
connexion.close()
###############SERVEUR####################
 
from bluetooth import *
import socket, sys, threading,time
 
port = 3
 
class ThreadReception(threading.Thread):
    def __init__(self, conn):
        threading.Thread.__init__(self)
        self.connexion = conn           
 
    def run(self):
        while 1:
            try:
                message_recu = self.connexion.recv(1024)
                print "*" + message_recu + "*"
                if message_recu.upper() == "FIN":
                    break
            except:pass    
            time.sleep(0.001)
 
 
class ThreadEmission(threading.Thread):
    def __init__(self, conn):
        threading.Thread.__init__(self)
        self.connexion = conn          
 
    def run(self):
        while 1:
            message_emis = raw_input()
            try:
                self.connexion.send(message_emis)
                if message_emis.upper() == "FIN":
                    break
            except:pass    
            time.sleep(0.001)
 
# Programme principal - Établissement de la connexion :
 
server_sock = BluetoothSocket( RFCOMM )
server_sock . bind(( "", 3))
server_sock . listen(2)
 
connexion , client_info = server_sock . accept( )
print "Accepted connection from " , client_info
 
# Dialogue avec le client : on lance deux threads pour gérer
# indépendamment l'émission et la réception des messages :
 
th_R = ThreadReception(connexion)
th_E = ThreadEmission(connexion)
th_E.start()
th_R.start()
th_R.join()
th_E.join()
 
connexion.close()
server_sock.close()
<code></code></code> | 
Partager