void hook(int dunno) { cmdResult("拒听电话 reject call",rejectCall()); cmdResult("挂机 hangup",handupCall()); printf("挂断电话\n"); unInitBlueHFP(); }
void ChatForm::onRejectCallTriggered() { qDebug() << "onRejectCallTriggered"; if (callConfirm) { delete callConfirm; callConfirm = nullptr; } audioInputFlag = false; audioOutputFlag = false; emit rejectCall(callId); enableCallButtons(); }
static DBusHandlerResult mking_signal_filter(DBusConnection *connection, DBusMessage *message, void *user_data) { DBusMessageIter arg; char *str; char *contents; if (dbus_message_is_signal(message,"com.asianux.pdaemon","call")) { if (!dbus_message_iter_init(message,&arg)) { fprintf(stderr,"Message has no Param\n"); } else if (dbus_message_iter_get_arg_type(&arg) != DBUS_TYPE_STRING) { g_printerr("Param is not string\n"); } else { dbus_message_iter_get_basic(&arg,&str); // app_agent_set_play(appAgent); cmdResult("拨打电话 dial",dial(str)); is_calling = TRUE; } } else if (dbus_message_is_signal(message,"com.asianux.pdaemon","hook")) { if (!dbus_message_iter_init(message,&arg)) { fprintf(stderr,"Message has no Param\n"); } else if (dbus_message_iter_get_arg_type(&arg) != DBUS_TYPE_STRING) { g_printerr("Param is not string\n"); } else { dbus_message_iter_get_basic(&arg,&str); cmdResult("挂机 hangup",handupCall()); send_panel_callinginactive(); is_calling = FALSE; } } else if (dbus_message_is_signal(message,"com.asianux.pdaemon","answer")) { printf("\n-------answer the call ------\n"); cmdResult("接听电话 answer call",answerCall()); is_calling = TRUE; } else if (dbus_message_is_signal(message,"com.asianux.pdaemon","reject")) { printf("\n---------reject the call ------\n"); cmdResult("拒听电话 reject call",rejectCall()); is_calling = FALSE; } else if (dbus_message_is_signal(message,"com.asianux.pdaemon","sms")) { if (!dbus_message_iter_init(message,&arg)) { fprintf(stderr,"Message has no Param\n"); } else if (dbus_message_iter_get_arg_type(&arg) != DBUS_TYPE_STRING) { g_printerr("Param is not string\n"); } else { dbus_message_iter_get_basic(&arg,&str); printf("Get phone number value:%s\n",str); dbus_message_iter_next(&arg); dbus_message_iter_get_basic(&arg,&contents); printf("get sms contents value;%s\n",contents); // sendmessage("send message",sendSM(contents,str)); sendSM(contents,str); sendSM(string(contents),string(str)); } } else if (dbus_message_is_signal(message,"com.asianux.pdaemon","fom")) { if (!dbus_message_iter_init(message,&arg)) { fprintf(stderr,"Message has no Param\n"); } else if (dbus_message_iter_get_arg_type(&arg) != DBUS_TYPE_STRING) { g_printerr("Param is not string\n"); } else { dbus_message_iter_get_basic(&arg,&str); printf("Get phone number value:%s\n",str); dbus_message_iter_next(&arg); dbus_message_iter_get_basic(&arg,&contents); printf("get sms contents value;%s\n",contents); // sendfom("send fom",sendSM(contents,str)); sendSM(contents,str); } } else if (dbus_message_is_signal(message,"com.asianux.pdaemon","register")) { if (!dbus_message_iter_init(message,&arg)) { fprintf(stderr,"Message has no Param\n"); } else if (dbus_message_iter_get_arg_type(&arg) != DBUS_TYPE_STRING) { g_printerr("Param is not string\n"); } else { dbus_message_iter_get_basic(&arg,&str); printf("Get phone number value:%s\n",str); dbus_message_iter_next(&arg); dbus_message_iter_get_basic(&arg,&contents); printf("get sms contents value;%s\n",contents); SendRegister("send register",sendSM(contents,str)); printf("---------------------------------------send register\n"); } } else if (dbus_message_is_signal(message,"com.asianux.pdaemon","extension")) { if (!dbus_message_iter_init(message,&arg)) { fprintf(stderr,"Message has no Param\n"); } else if (dbus_message_iter_get_arg_type(&arg) != DBUS_TYPE_STRING) { g_printerr("Param is not string\n"); } else { dbus_message_iter_get_basic(&arg,&str); printf("############Get extension value:%s\n",str); dialExtNumber(str); } } else if (dbus_message_is_signal(message,"com.asianux.pdaemon","read")) { //cmdResult("读取短信",readSM(UNREAD_SM)); } return DBUS_HANDLER_RESULT_NOT_YET_HANDLED; }