Go Down

Topic: Sending dial tones (i.e. numbers) on a connected call (Read 133 times) previous topic - next topic



I'm trying to send dial tones during a call. I need to do this on an automated call response system where they ask to dial numbers to navigate different call options (i.e. those calls where a voice tells you: "please dial '1' to enter "this" option, dial '2' to enter "that" option...).

So I tried to use my extended GSM Voice call class, which overrides the 'GSM3VoiceCallService' class providing a 'Send' method:

Code: [Select]
class GSM3VoiceCallServiceEx: public GSM3VoiceCallService
    : GSM3VoiceCallService() {}
    void Send(const char* cmd, bool addCR)
       theGSM3ShieldV1ModemCore.genericCommand_rqc(cmd, addCR);

Then I use this code:

Code: [Select]
    GSM3VoiceCallServiceEx gsmVoiceCall;
    Serial.println(F("\nMaking call..."));
    Serial.println(F("\nCall established!"));
    // Wait for call intro
    // Enter option '1'   
    gsmVoiceCall.Send("1", true);   

At this point call should end and the GMS provider might send me back an SMS, but this is not happening.

I tried with gsmVoiceCall.Send("1", true), gsmVoiceCall.Send("1", false) and gsmVoiceCall.Send("1;", ...)

And clues on how to send "dial tones" (i.e. numbers) during a call?


Go Up