boolean callhangCall(void* user_data) { VMINT ret; VMINT* result = (VMINT*)user_data; vm_gsm_tel_single_call_action_request_t req; vm_gsm_tel_call_actions_data_t data; if(IDLE_CALL == g_call_status)return true; req.action_id.sim = g_uid_info.sim; req.action_id.call_id = g_uid_info.call_id; req.action_id.group_id = g_uid_info.group_id; data.action = VM_GSM_TEL_CALL_ACTION_END_SINGLE; data.data_action = (void*)&req; //data.user_data = result; data.user_data = NULL; data.callback = call_hangCall_callback; ret = vm_gsm_tel_call_actions(&data); if(ret < 0) { return false; } else { *result = 1; return true; } }
boolean callvoiceCall(void* user_data) { VMINT ret; call_info_struct* callInfo_p = (call_info_struct*)user_data; vm_gsm_tel_dial_action_request_t req; vm_gsm_tel_call_actions_data_t data; req.sim = VM_GSM_TEL_CALL_SIM_1; req.is_ip_dial = 0; req.module_id = 0; vm_chset_ascii_to_ucs2((VMWSTR)req.num_uri, VM_GSM_TEL_MAX_NUMBER_LENGTH, (VMSTR)callInfo_p->num); req.phonebook_data = NULL; data.action = VM_GSM_TEL_CALL_ACTION_DIAL; data.data_action = (void*)&req; //data.user_data = (void*)&callInfo_p->result; data.user_data = NULL; data.callback = _call_voiceCall_callback; ret = vm_gsm_tel_call_actions(&data); vm_gsm_tel_set_output_device(VM_GSM_TEL_DEVICE_LOUDSPK); vm_gsm_tel_set_volume(VM_AUDIO_VOLUME_6); if(ret < 0) { return false; } else { callInfo_p->result = 1; return true; } }
boolean callanswerCall(void* user_data) { VMINT ret; //VMINT* result = (VMINT*)user_data; vm_gsm_tel_single_call_action_request_t req; vm_gsm_tel_call_actions_data_t data; req.action_id.sim = g_uid_info.sim; req.action_id.call_id = g_uid_info.call_id; req.action_id.group_id = g_uid_info.group_id; data.action = VM_GSM_TEL_CALL_ACTION_ACCEPT; data.data_action = (void*)&req; //data.user_data = result; data.user_data = NULL; data.callback = _call_voiceCall_callback; ret = vm_gsm_tel_call_actions(&data); vm_gsm_tel_set_output_device(VM_GSM_TEL_DEVICE_LOUDSPK); vm_gsm_tel_set_volume(VM_AUDIO_VOLUME_6); if(ret < 0) { //*result = 0; return false; } else { //*result = 1; return true; } }
int gsm_hang(lua_State *L) { int result = 0; vm_gsm_tel_single_call_action_request_t req; vm_gsm_tel_call_actions_data_t data; // vm_log_info("callhangCall"); if (IDLE_CALL != g_call_status) { req.action_id.sim = g_uid_info.sim; req.action_id.call_id = g_uid_info.call_id; req.action_id.group_id = g_uid_info.group_id; // req.action_id.sim = 1; // req.action_id.call_id = 1; // req.action_id.group_id = 1; data.action = VM_GSM_TEL_CALL_ACTION_END_SINGLE; data.data_action = (void *)&req; data.user_data = NULL; data.callback = call_voiceCall_callback; result = vm_gsm_tel_call_actions(&data); } lua_pushnumber(L, result); return 1; }
int _gsm_call(const char *phone_number) { vm_gsm_tel_dial_action_request_t req; vm_gsm_tel_call_actions_data_t data; vm_chset_ascii_to_ucs2((VMWSTR)req.num_uri, VM_GSM_TEL_MAX_NUMBER_LENGTH, (VMSTR)phone_number); req.sim = VM_GSM_TEL_CALL_SIM_1; req.is_ip_dial = 0; req.module_id = 0; req.phonebook_data = NULL; data.action = VM_GSM_TEL_CALL_ACTION_DIAL; data.data_action = (void *)&req; data.user_data = NULL; data.callback = call_voiceCall_callback; return vm_gsm_tel_call_actions(&data); }
static v7_val_t gsm_answer(struct v7* v7) { int result; vm_gsm_tel_single_call_action_request_t req; vm_gsm_tel_call_actions_data_t data; req.action_id.sim = g_uid_info.sim; req.action_id.call_id = g_uid_info.call_id; req.action_id.group_id = g_uid_info.group_id; data.action = VM_GSM_TEL_CALL_ACTION_ACCEPT; data.data_action = (void*)&req; data.user_data = NULL; data.callback = call_voiceCall_callback; result = vm_gsm_tel_call_actions(&data); return v7_create_number(result); }
int gsm_anwser(lua_State *L) { int result; vm_gsm_tel_single_call_action_request_t req; vm_gsm_tel_call_actions_data_t data; req.action_id.sim = g_uid_info.sim; req.action_id.call_id = g_uid_info.call_id; req.action_id.group_id = g_uid_info.group_id; data.action = VM_GSM_TEL_CALL_ACTION_ACCEPT; data.data_action = (void *)&req; data.user_data = NULL; data.callback = call_voiceCall_callback; result = vm_gsm_tel_call_actions(&data); lua_pushnumber(L, result); return 1; }
static v7_val_t gsm_hang(struct v7* v7) { int result = 0; vm_gsm_tel_single_call_action_request_t req; vm_gsm_tel_call_actions_data_t data; if(IDLE_CALL != g_call_status) { req.action_id.sim = g_uid_info.sim; req.action_id.call_id = g_uid_info.call_id; req.action_id.group_id = g_uid_info.group_id; // req.action_id.sim = 1; // req.action_id.call_id = 1; // req.action_id.group_id = 1; data.action = VM_GSM_TEL_CALL_ACTION_END_SINGLE; data.data_action = (void*)&req; data.user_data = NULL; data.callback = call_voiceCall_callback; result = vm_gsm_tel_call_actions(&data); } return v7_create_number(result); }