I am trying to implement a call feature in my xamarin forms app using Twilio. I am able to call by providing From and To numbers using this API of Twilio. But the above call is happening via Twilio, I need to make a call via the internet (App to App). Is there any way to do this using Twilio?
Also is there a way to send a voice clip if the call is not answered? And any way to list out all the voices? I am able to list out SMS and call logs, but couldn't find a way to list the voices. I am using c# codes.
Twilio developer evangelist here.
If you want to make App to App calls then you want the Twilio Voice SDK. I am afraid we don't provide an official Xamarin wrapper for this SDK, though there are community wrappers available that might help you.
Related
I am just exploring voicemail at Twilio, and I thought that I can ask a related question here.
How would I send a voicemail to a group of numbers (as an effort of voice based marketing campaign)? what APIs will I need? and is there any related docs about it?
Shall we send an audio file? Or can we create the voice on Android or iPhone and send it using Android SDK or iPhone SDK?
Twilio Developer Evangelist here.
You can call those numbers and play an audio file using the Play verb. To call a number, you can use our REST API. Here's documentation on how to do that in multiple programming languages.
Hope this helps you out, but come back here if you have any more questions.
I'm new to Twilio and expected there to be a Xamarin SDK for iOS and Android but apparently there isn't. I have been working with https://github.com/dkornev/TwilioXamarinBindings for native libraries but cannot seem to find any help with getting an incoming (to the iOS/Android app) call. I'm not sure if there's a tutorial somewhere explaining exactly how to route the call to a specific device but I can't see it....
So, can somebody explain the procedure, do I need Apple APN and if so how is it acheived in Xamarin Forms?
I haven't found anything for incoming calls to Xamarin apps via VOIP but all outgoing is fine.
Twilio evangelist here.
I'm not familiar with those bindings but looking at the sample application that is included in the repo it looks like in iOS there is a method called AcceptWithDelegate that you call to accept an incoming Twilio Voice call.
https://github.com/dkornev/TwilioXamarinBindings/blob/master/sample/Twilio.Voice.Sample.iOS/TwilioVoiceHelper.cs#L131-L136
The binding source appears to map this to the iOS SDK's acceptWithDelegate function:
https://media.twiliocdn.com/sdk/ios/voice/releases/2.0.7/docs/Classes/TVOCallInvite.html#//api/name/acceptWithDelegate:
Hope that helps.
I have developed a small application using twilio api to make call to any phone number from my twilio number. After dialing call is establishing and a specific audio clip is playing in mobile end. But I am not getting any real voice in any side of the call. Please help me or give me some information regarding how can i get voice in voice call using twilio api. Can anyone tell me the full sceneriyo that how can i make a call from IOS app to any phone numebr. Thanks, Amit
Twilio developer evangelist here.
To make calls from an iOS application you need the Twilio Programmable Voice SDK. There is a quickstart application you can run and look at to see how it all fits together. Check out the rest of the documentation for more information.
We use microsoft botframework for our chatbots. We would want to enable Voice channel to our bot. Is there a way to solution this? Does Twilio have anything that can add speech capabilities to our bot. Our bots are exposed via webchat components, skype, facebook messenger etc.
Twilio developer evangelist here.
There's no way within Botframework to add voice capabilities from Twilio, however receiving calls works in a similar way. When someone calls your Twilio number you receive a webhook which you can respond to with TwiML to tell Twilio what to do with the call.
To then perform things by voice action you can <Record> the caller's response and set the transcribe parameter to true. You also need to set a transcribeCallback URL as the transcription is done asynchronously. Once you receive that callback, the text of the transcription will be available as a parameter in the request. You could also perform the transcription yourself with a third party service by just taking the recording and sending it off.
Once you receive the transcription you can then make your decision as the the next step of the conversation and redirect the live call to the next step of your process using the REST API.
This is just a high level overview of how you might accomplish this. Let me know if it is of any help.
Voximal offers as Twillo a similar product but based on VoiceXML. The difference is that Voximal integrates natively most of STT engines (Microsoft, Google, Watson, iSpeech) in the solution (you only need to set the key or the user/password to configure them). You use a builtin grammar "text" to translate. Then the processing is very similar to the Twilio. You need to push the content to a chatbot engine (HTTP/XML/JSON), and you have a way to play the result with a TTS engine.
Have a look to the Parrot example (a script that repeats all you said using the STT and TTS) :
https://github.com/voximal/voicexml-examples/blob/master/parrot/parrot.vxml
I recently integrated twillo iOS SDK in my iPhone app and it is working fine for native call it means i can make call from app to any verified phone numbers.
But my requirement is app to app call it means there is no native call.
So i would like to know if by using Twillio SDK, is it possible to call from application to application ? Something similar to whatsApp. So there will not be any phone number but both phones must have our apps with Twillio SDK integrated.
Please Help me.
Thanks.
Twilio developer evangelist here.
You absolutely can do app to app calls using the iOS SDK. Let me explain.
Your Twilio Client capability token is created with a TwiML Application, which supplies the URL that Twilio will hit when a call is created to find out what to do with it. Normally, you would pass a phone number as a parameter to your TCDevice's connect which would be handed to your app URL when the call connects. This would then be used to produce TwiML to direct the call onto that number, like this:
<Response>
<Dial>
<Number>{{ to_number }}</Number>
</Dial>
</Response>
To make this work for client to client calls, you can pass another client ID to the URL and on your server, instead of <Dial>ing to a <Number> you would <Dial> to a <Client>. Like so:
<Response>
<Dial>
<Client>{{ client_id }}</Client>
</Dial>
</Response>
You can discover which clients are available by listening for presence events with your TCDevice object. You will also have to handle incoming calls within applications.
I recommend following the Twilio Client iOS Quickstart guide all the way through, which will guide you through most of these points, including passing parameters to your application URL and generating the right TwiML to accomplish this (though it doesn't cover presence events).
Let me know if this helps at all.
Not sure it is possible with Twilio. We have used twilio for the same purpose u mentioned (Call to phone numbers) and was working fine. I think the main purpose of twilio is that. Anyways i'm not sure about it.
May be VoIP will suit for your functionality. PortSIP is a good SDK for voice and video communications between apps.
You can download the iOS SDK from here https://www.portsip.com/downloads-center/
It is payable like Twilio only if you want to use it for business.
For more refer here
Thanks.
Twilio support sip now. you must have some setting with your twilio account.
As I know ,you can follow here to set your twilio sip server and implement sip client on your ios client.