This commit is contained in:
Milanka Ringwald 2015-11-27 10:31:47 +01:00
commit 955ea1ca0f
4 changed files with 11 additions and 9 deletions

View File

@ -1123,8 +1123,8 @@ static void parse_sequence(hfp_connection_t * context){
// AG parses new gen. ind. state // AG parses new gen. ind. state
if (context->ignore_value){ if (context->ignore_value){
context->ignore_value = 0; context->ignore_value = 0;
log_info("Parsed Enable AG indicator pos %u('%s') - unchanged\n", context->parser_item_index, log_info("Parsed Enable AG indicator pos %u('%s') - unchanged (stays %u)\n", context->parser_item_index,
context->ag_indicators[context->parser_item_index].name); context->ag_indicators[context->parser_item_index].name, context->ag_indicators[context->parser_item_index].enabled);
} }
else if (context->ag_indicators[context->parser_item_index].mandatory){ else if (context->ag_indicators[context->parser_item_index].mandatory){
log_info("Parsed Enable AG indicator pos %u('%s') - ignore (mandatory)\n", log_info("Parsed Enable AG indicator pos %u('%s') - ignore (mandatory)\n",

View File

@ -73,9 +73,9 @@ static uint8_t hfp_indicators_status;
static hfp_callback_t hfp_callback; static hfp_callback_t hfp_callback;
static hfp_call_status_t hfp_call_state; // static hfp_call_status_t hfp_call_state;
static hfp_callsetup_status_t hfp_callsetup_state; static hfp_callsetup_status_t hfp_callsetup_state;
static hfp_callheld_status_t hfp_callheld_state; // static hfp_callheld_status_t hfp_callheld_state;
void hfp_hf_register_packet_handler(hfp_callback_t callback){ void hfp_hf_register_packet_handler(hfp_callback_t callback){
hfp_callback = callback; hfp_callback = callback;
@ -238,13 +238,15 @@ static int hfp_hf_cmd_ata(uint16_t cid){
static void hfp_emit_ag_indicator_event(hfp_callback_t callback, int status, hfp_ag_indicator_t indicator){ static void hfp_emit_ag_indicator_event(hfp_callback_t callback, int status, hfp_ag_indicator_t indicator){
if (!callback) return; if (!callback) return;
uint8_t event[6]; uint8_t event[6+HFP_MAX_INDICATOR_DESC_SIZE+1];
event[0] = HCI_EVENT_HFP_META; event[0] = HCI_EVENT_HFP_META;
event[1] = sizeof(event) - 2; event[1] = sizeof(event) - 2;
event[2] = HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED; event[2] = HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED;
event[3] = status; event[3] = status;
event[4] = indicator.index; event[4] = indicator.index;
event[5] = indicator.status; event[5] = indicator.status;
strncpy((char*)&event[6], indicator.name, HFP_MAX_INDICATOR_DESC_SIZE);
event[6+HFP_MAX_INDICATOR_DESC_SIZE] = 0;
(*callback)(event, sizeof(event)); (*callback)(event, sizeof(event));
} }

View File

@ -95,8 +95,8 @@ static hfp_ag_indicator_t ag_indicators[] = {
{2, "call", 0, 1, 0, 1, 1, 0}, {2, "call", 0, 1, 0, 1, 1, 0},
{3, "callsetup", 0, 3, 0, 1, 1, 0}, {3, "callsetup", 0, 3, 0, 1, 1, 0},
{4, "battchg", 0, 5, 3, 0, 0, 0}, {4, "battchg", 0, 5, 3, 0, 0, 0},
{5, "signal", 0, 5, 5, 0, 0, 0}, {5, "signal", 0, 5, 5, 0, 1, 0},
{6, "roam", 0, 1, 0, 0, 0, 0}, {6, "roam", 0, 1, 0, 0, 1, 0},
{7, "callheld", 0, 2, 0, 1, 1, 0} {7, "callheld", 0, 2, 0, 1, 1, 0}
}; };

View File

@ -198,7 +198,7 @@ static void packet_handler(uint8_t * event, uint16_t event_size){
} }
break; break;
case HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED: case HFP_SUBEVENT_AG_INDICATOR_STATUS_CHANGED:
printf("AG_INDICATOR_STATUS_CHANGED, AG indicator index: %d, status: %d\n", event[4], event[5]); printf("AG_INDICATOR_STATUS_CHANGED, AG indicator '%s' (index: %d) to: %d\n", (const char*) &event[6], event[4], event[5]);
break; break;
case HFP_SUBEVENT_NETWORK_OPERATOR_CHANGED: case HFP_SUBEVENT_NETWORK_OPERATOR_CHANGED:
printf("NETWORK_OPERATOR_CHANGED, operator mode: %d, format: %d, name: %s\n", event[4], event[5], (char *) &event[6]); printf("NETWORK_OPERATOR_CHANGED, operator mode: %d, format: %d, name: %s\n", event[4], event[5], (char *) &event[6]);