Twilio Caller ID (outgoing) show extension - twilio

How do i set up twilio where it shows an extension after sending the call to my phone? Example: the caller id that shows up from the caller to my phone is, "123-456-7890" - is there any way to make that number show up as "123-456-7890X" or anything after so that i know its coming from twilio.

Twilio developer evangelist here.
You can't add anything to the caller ID like that, but you can do something else to alert you that an incoming call is from Twilio.
When you set up your TwiML to forward the call, you can set the url attribute on the <Number> element. You can point this URL at some more TwiML that will be played before the calls are connected. This is called a call whisper and you can use it to tell yourself that the call is coming from Twilio before you connect with the caller.
Let me know if that helps at all.

Related

Specifying Twilio Incoming and Outgoing Callbacks using TwiML App

I have a number which I have configured to use a TwiML App. In the App itself, I have set the VoiceURL and StatusCallback on the Voice section.
The issue is, the callback is triggered when there is an incoming call to the Twilio-bought number.
However, if I place an outgoing call from the Twilio-bought number, the callback is not triggered.
Is this the expected behaviour, that the TwiML app callback is only triggered on incoming calls?
If this is not the intended behaviour, any pointers on what may be going wrong?
That is expected, that statusCallback URL handles only the incoming call leg.
If you are forwarding that call(which creates another call leg), you can use the parameter of the name name of the Number noun to capture events.
If you are using the REST API to make an outbound call, it has a statusCallback parameter as well.

Setting statusCallbackEvent on outbound calls with Voice SDK

Is there any way to change what events trigger the status callback? Normally you can use statusCallbackEvent but I can't seem to find a way to make this work for the Voice SDK's leg of the call. It works fine on the call leg of the outbound participant, but not the Voice SDK's call leg. I only get completed status event for this leg (and I also can get ringing from the called action url).
Things I tried without success:
Updating the call using the REST api to set statusCallbackEvent to initiated ringing answered completed when the outbound call starts
Setting statusCallbackEvent as an outbound parameter on the Voice SDK's token (in PHP you can set custom parameters using $clientToken->allowClientOutgoing(...) but it seems normal parameters cannot be modified)
I really wish you could set this on the TwiML Application so that any numbers calling out with that application set will just automatically use your set events. That or let me set the parameters on the client's token.
One way to fix this is just to poll for the information but that is an ugly hack and isn't real time.
Twilio developer evangelist here.
I don't think you can do what you're asking for here, but for good reason.
When you are placing the call from the Voice SDK, that call leg is then between the application and Twilio. You know the call was "initiated", because you started it. There is no "ringing" because Twilio is not a phone and won't ring. You know it is "answered" because a request is made to your voice URL defined by the TwiML app. And finally, you do get the "completed" event.
As you say, you do get the events for the outbound leg of the call from Twilio to another phone number.

Is there any way to map a twilio call to the webhook that receives the call?

I am sending a call to a twilio number using twilio api, and in turn recording the sid of the call (e.g. CAb90f709e54017969776d842873311746). While the call is received in the webhook I have a different sid in the receiver end (e.g. CA8d85ac8d8b169de8b0509c8585c6aaed ). Is there any way to map the call sent to the call received ?
Twilio developer evangelist here.
Yes, you can! You should find that the call on the receiver end, which is the second or child leg of the call, has a parameter called ParentCallSid which will point back to the first leg of the call.
In your example, the CallSid will be CA8d85ac8d8b169de8b0509c8585c6aaed and the ParentCallSid will be CAb90f709e54017969776d842873311746.
Let me know if that helps at all.

How to stop ringing sound on incoming call in Twilio

I want to stop the ringing sound when anyone call on my twilio number or is there any way I can make the incoming call to get retrieved automatically,I mean when any call comes to my twilio number it just instantly get received.I don't the caller to hear the ringing sound.
Thanks,
Twilio developer evangelist here.
As far as I'm aware, the ringing is the least possible, but it is also not under our control. As you can imagine, when you dial a Twilio number the call has to go through several networks before it reaches Twilio, Twilio then has to make an HTTP request to your application, retrieve the TwiML required to answer the phone and then respond to the call. All of that can't happen instantly so the phone will ring.
Does that make sense?

How can I tell if an incoming call is from OpenVBX but still see the caller's Caller ID information?

I have a OpenVBX/Twilio setup where I use its dial applet to call particular people in my company. However, when viewing an incoming call on my phone, I have no way to know if the caller is calling via OpenVBX or not.
Is there a way to customize OpenVBX/Twilio so that when viewing the caller's Caller ID on my phone, I can see the Caller ID information and some indicator that the call came through Twilio?
Thanks.
Not sure if this is configurable in OpenVBX itself, or if you'd have to change some of the Dial applet code, but you could just use the CallerID (number) of a Twilio number, instead of using the CallerId of the incoming call.

Resources