hsp_ag.c (a874746709fd7a8c0715bc158b817e9b8a601294) | hsp_ag.c (5611a760af48d1ce1beea59c7908be73bd2393f1) |
---|---|
1/* 2 * Copyright (C) 2014 BlueKitchen GmbH 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 8 * 1. Redistributions of source code must retain the above copyright --- 83 unchanged lines hidden (view full) --- 92static uint8_t ag_send_ok = 0; 93static uint8_t ag_send_error = 0; 94static uint8_t ag_num_button_press_received = 0; 95static uint8_t ag_support_custom_commands = 0; 96 97typedef enum { 98 HSP_IDLE, 99 HSP_SDP_QUERY_RFCOMM_CHANNEL, | 1/* 2 * Copyright (C) 2014 BlueKitchen GmbH 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 8 * 1. Redistributions of source code must retain the above copyright --- 83 unchanged lines hidden (view full) --- 92static uint8_t ag_send_ok = 0; 93static uint8_t ag_send_error = 0; 94static uint8_t ag_num_button_press_received = 0; 95static uint8_t ag_support_custom_commands = 0; 96 97typedef enum { 98 HSP_IDLE, 99 HSP_SDP_QUERY_RFCOMM_CHANNEL, |
100 HSP_W4_SDP_QUERY_COMPLETE, | 100 HSP_W4_SDP_EVENT_QUERY_COMPLETE, |
101 HSP_W4_RFCOMM_CONNECTED, 102 HSP_W4_RING_ANSWER, 103 HSP_W4_USER_ACTION, 104 HSP_W2_CONNECT_SCO, 105 HSP_W4_SCO_CONNECTED, 106 HSP_ACTIVE, 107 HSP_W2_DISCONNECT_SCO, 108 HSP_W4_SCO_DISCONNECTED, --- 253 unchanged lines hidden (view full) --- 362 if (err) { 363 ag_send_error = 1; 364 } 365 return; 366 } 367 368 switch (hsp_state){ 369 case HSP_SDP_QUERY_RFCOMM_CHANNEL: | 101 HSP_W4_RFCOMM_CONNECTED, 102 HSP_W4_RING_ANSWER, 103 HSP_W4_USER_ACTION, 104 HSP_W2_CONNECT_SCO, 105 HSP_W4_SCO_CONNECTED, 106 HSP_ACTIVE, 107 HSP_W2_DISCONNECT_SCO, 108 HSP_W4_SCO_DISCONNECTED, --- 253 unchanged lines hidden (view full) --- 362 if (err) { 363 ag_send_error = 1; 364 } 365 return; 366 } 367 368 switch (hsp_state){ 369 case HSP_SDP_QUERY_RFCOMM_CHANNEL: |
370 hsp_state = HSP_W4_SDP_QUERY_COMPLETE; | 370 hsp_state = HSP_W4_SDP_EVENT_QUERY_COMPLETE; |
371 printf("Start SDP query %s, 0x%02x\n", bd_addr_to_str(remote), SDP_HSP); 372 sdp_query_rfcomm_channel_and_name_for_uuid(remote, SDP_HSP); 373 break; 374 375 case HSP_W4_RING_ANSWER: 376 if (ag_ring){ 377 ag_ring = 0; 378 err = hsp_ag_send_str_over_rfcomm(rfcomm_cid, HSP_AG_RING); --- 243 unchanged lines hidden (view full) --- 622 default: 623 break; 624 } 625 hsp_run(); 626} 627 628static void handle_query_rfcomm_event(uint8_t packet_type, uint8_t *packet, uint16_t size, void * context){ 629 switch (event->type){ | 371 printf("Start SDP query %s, 0x%02x\n", bd_addr_to_str(remote), SDP_HSP); 372 sdp_query_rfcomm_channel_and_name_for_uuid(remote, SDP_HSP); 373 break; 374 375 case HSP_W4_RING_ANSWER: 376 if (ag_ring){ 377 ag_ring = 0; 378 err = hsp_ag_send_str_over_rfcomm(rfcomm_cid, HSP_AG_RING); --- 243 unchanged lines hidden (view full) --- 622 default: 623 break; 624 } 625 hsp_run(); 626} 627 628static void handle_query_rfcomm_event(uint8_t packet_type, uint8_t *packet, uint16_t size, void * context){ 629 switch (event->type){ |
630 case SDP_QUERY_RFCOMM_SERVICE: | 630 case SDP_EVENT_QUERY_RFCOMM_SERVICE: |
631 channel_nr = sdp_query_rfcomm_service_event_get_rfcomm_channel(packet); 632 printf("** Service name: '%s', RFCOMM port %u\n", sdp_query_rfcomm_service_event_get_name(packet), channel_nr); 633 break; | 631 channel_nr = sdp_query_rfcomm_service_event_get_rfcomm_channel(packet); 632 printf("** Service name: '%s', RFCOMM port %u\n", sdp_query_rfcomm_service_event_get_name(packet), channel_nr); 633 break; |
634 case SDP_QUERY_COMPLETE: | 634 case SDP_EVENT_QUERY_COMPLETE: |
635 if (channel_nr > 0){ 636 hsp_state = HSP_W4_RFCOMM_CONNECTED; 637 printf("RFCOMM create channel. state %d\n", HSP_W4_RFCOMM_CONNECTED); 638 rfcomm_create_channel(remote, channel_nr, NULL); 639 break; 640 } 641 hsp_ag_reset_state(); 642 printf("Service not found, status %u.\n", sdp_query_complete_event_get_status(packet)); --- 12 unchanged lines hidden --- | 635 if (channel_nr > 0){ 636 hsp_state = HSP_W4_RFCOMM_CONNECTED; 637 printf("RFCOMM create channel. state %d\n", HSP_W4_RFCOMM_CONNECTED); 638 rfcomm_create_channel(remote, channel_nr, NULL); 639 break; 640 } 641 hsp_ag_reset_state(); 642 printf("Service not found, status %u.\n", sdp_query_complete_event_get_status(packet)); --- 12 unchanged lines hidden --- |