diff options
Diffstat (limited to 'binding/telephony-binding.c')
-rw-r--r-- | binding/telephony-binding.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/binding/telephony-binding.c b/binding/telephony-binding.c index dce0ef9..2f96338 100644 --- a/binding/telephony-binding.c +++ b/binding/telephony-binding.c @@ -79,6 +79,23 @@ static void last_dial(afb_req_t request) } } +static void send_tones(afb_req_t request) +{ + const char *value = afb_req_value(request, "value"); + + if (!voice_call) { + AFB_ERROR("send_tones: cannot send tone without active call"); + afb_req_fail(request, "there is no active call", NULL); + } else { + if (!ofono_voicecallmanager_send_tones(vcm, value)) { + afb_req_success(request, NULL, NULL); + } else { + AFB_ERROR("send_tones: failed to send tone\n"); + afb_req_fail(request, "failed send tone", NULL); + } + } +} + static void hangup(afb_req_t request) { if (voice_call) { @@ -364,6 +381,10 @@ static const afb_verb_t verbs[]= { .callback = last_dial, }, { + .verb = "send_tones", + .callback = send_tones, + }, + { .verb = "hangup", .callback = hangup, }, |