コード例 #1
0
def test_volume_data():

    from random import choice, randint
    import string

    no_of_transmissions = randint(100, 200)
    test_data = ''
    received = Event()

    def data_received_server(data):
        assert data == test_data
        bts.send(test_data)

    def data_received_client(data):
        assert data == test_data
        received.set()

    bts = BluetoothServer(data_received_server, device = "hci0")
    btc = BluetoothClient(bta0.address, data_received_client, device = "hci1")

    for test_no in range(no_of_transmissions):
        test_data = ''.join(choice(string.ascii_uppercase + string.ascii_lowercase + string.digits) for _ in range(randint(30,100)))
        print(test_data)
        btc.send(test_data)
        assert received.wait(1)
        received.clear()
        
    btc.disconnect()
    bts.stop()
コード例 #2
0
def test_client_connect_disconnect():

    client_connected = Event()
    client_disconnected = Event()

    def when_client_connects():
        client_connected.set()

    def when_client_disconnects():
        client_disconnected.set()

    bts = BluetoothServer(None)
    btc = BluetoothClient(bta0.address, None, device = "hci1", auto_connect = False)
    bts.when_client_connects = when_client_connects
    bts.when_client_disconnects = when_client_disconnects

    btc.connect()
    assert btc.connected
    assert bts.client_address == btc.client_address
    assert client_connected.wait(1)
    
    btc.disconnect()
    assert not btc.connected
    assert client_disconnected.wait(1)

    bts.stop()
コード例 #3
0
def test_client_alt_values():
    def data_received(data):
        pass

    bts = BluetoothServer(None, port=2, encoding=None)
    btc = BluetoothClient(bta0.address,
                          data_received,
                          device="hci1",
                          auto_connect=False,
                          port=2,
                          encoding=None)

    assert btc.data_received_callback == data_received
    assert btc.device == "hci1"
    assert btc.client_address == bta1.address
    assert not btc.connected
    assert btc.port == 2
    assert btc.encoding == None

    btc.connect()
    assert btc.connected

    btc.disconnect()
    assert not btc.connected

    bts.stop()
コード例 #4
0
def get_ip():
    """
    Receives sender IP through bluetooth
    Relays its IP back to the sender using send's IP that was 
    received
    Also generates pygame GUI to inform user that we are looking
    for bluetooth.
    Blocks until one robot connects 
    """
    global flag
    blue = BluetoothServer(data_received, power_up_device=True)
    flag = True
    i = 0
    while flag:
        screen.fill((0, 0, 0))
        mytext = "Connecting to Bluetooth"

        if (i == 0):
            mytext = mytext + '.'
        elif (i == 1):
            mytext = mytext + '..'
        elif (i == 2):
            mytext = mytext + '...'
        else:
            i = -1
        i += 1
        text_surface = my_font.render(mytext, True, (255, 255, 255))
        text_surface = pygame.transform.rotate(text_surface, 180)
        rect = text_surface.get_rect(center=(160, 120))
        screen.blit(text_surface, rect)

        time.sleep(1)
        pygame.display.flip()
    blue.send(host_IP)
    blue.stop()
コード例 #5
0
ファイル: mainserver.py プロジェクト: xy97cornell/ece5725
def get_ip():
    global flag
    blue = BluetoothServer(data_recieved, power_up_device=True)
    flag = True
    while flag:
        time.sleep(1)
    blue.send(host_IP)
    blue.stop()
コード例 #6
0
def test_server_start_stop():

    bts = BluetoothServer(None, auto_start = False)

    bts.start()
    assert bts.running

    bts.stop()
    assert not bts.running
コード例 #7
0
def bluetooth_client(done_event):
    def data_received(data):
        print(data)  # adds data to the queue and leaves

    s = BluetoothServer(data_received)  #starts RFCOMM Server

    while not (done_event.wait(0.00001)):
        pass

    s.stop()
コード例 #8
0
def test_server_default_values():
    def data_received(data):
        pass

    bts = BluetoothServer(data_received)
    assert bts.data_received_callback == data_received
    assert bts.device == "hci0"
    assert bts.server_address == bta0.address
    assert bts.running
    assert bts.port == 1
    assert bts.encoding == "utf-8"
    assert bts.when_client_connects == None
    assert bts.when_client_disconnects == None 

    bts.stop()
コード例 #9
0
def test_client_default_values():
    def data_received(data):
        pass

    bts = BluetoothServer(data_received, device = "hci1")
    btc = BluetoothClient(bta1.address, data_received)
    
    assert btc.data_received_callback == data_received
    assert btc.device == "hci0"
    assert btc.server == bta1.address
    assert btc.client_address == bta0.address
    assert btc.connected
    assert btc.port == 1
    assert btc.encoding == "utf-8"

    btc.disconnect()
    bts.stop()
コード例 #10
0
def test_send_receive():

    data_received_at_server = Event()
    data_received_at_client = Event()
    
    def data_received_server(data):
        assert data == "hiserver"
        data_received_at_server.set()

    def data_received_client(data):
        assert data == "hiclient"
        data_received_at_client.set()

    bts = BluetoothServer(data_received_server, device = "hci0")
    btc = BluetoothClient(bta0.address, data_received_client, device = "hci1")

    btc.send("hiserver")
    assert data_received_at_server.wait(1)
    bts.send("hiclient")
    assert data_received_at_server.wait(1)
    
    btc.disconnect()
    bts.stop()
コード例 #11
0
from bluedot.btcomm import BluetoothServer

def data_received(data):
    print(data)
    

s = BluetoothServer(data_received)

_= input("Press Enter to quit...")

s.stop()

コード例 #12
0
    server.send(data)


def client_connected():
    print("client connected")


def client_disconnected():
    print("client disconnected")


print("init")
server = BluetoothServer(data_received,
                         auto_start=False,
                         when_client_connects=client_connected,
                         when_client_disconnects=client_disconnected)

print("starting")
server.start()
print(server.server_address)
print("waiting for connection")

try:
    pause()
except KeyboardInterrupt as e:
    print("cancelled by user")
finally:
    print("stopping")
    server.stop()
print("stopped")