I was trying to implement voice call using Twilio API(Using node twilio wrapper) in which it would require to retry x number of times if call not answered. It seems that if i ignore call from Twilio, it keeps trying automatically. So, is there any way i can set the retying limit to particular number of times?
Thanks in advance.
Twilio evangelist here.
As far as I know we do not have any auto-retry behavior built into Twilio, so its odd that you are seeing this behavior. I'd suggest sending an email over to help [at] twilio.com with some example CallSids. Our awesome support team can work directly with you to help figure out whats going on.
Hope that helps.
Related
I use Twilio and want to make call center. I use the TaskRouter and VoiceAPI but I didn't find the way to redirect accepted call to an another specialist. For example, if a manager after a couple of minutes of a conversation wants to connect a client to specialist from the support service. Can I do this in using Twilio?
#Andrew here is a perfect example for your use case. It worked for me. Do try it and if there is any question let me know in the comments. I will update the answer accordingly.
There are some sequence diagrams below that should help.
Call Control Concepts
Call Control Concepts | Appendix | Web Sequence Diagrams
I'm trying to gather data from the caller like their email address.
In twilio autopilot \collect\ there is a fieldtype TWILIO.EMAIL where it will automatically detect email address in the speech and it really do well (also the other fieldtypes)
But in twilio voice \gather\ there's no fieldtype to do that job and it returns
johncarlo#gmail.com to john carlo at gmail com
Is there any way in the docs to apply fieldtype in \gather\?
btw, I'm using \gather\ because some questions are dynamic (depends on the answer on the previous question)
Thanks
Twilio Developer Evangelist here. 👋
I don't think that's possible with gather (will double-check though).
Is there any way in the docs to apply fieldtype in \gather\? btw, I'm using \gather\ because some questions are dynamic (depends on the answer on the previous question)
Autopilot may do the job just fine though. Did you discover the redirect property? Using redirect you can dynamically route to different tasks depending on an answer. :)
Hope that helps. Let me know how it goes. 😊
I am trying to build an API which can Onhold both inbound and outbound calls, what I basically do is, update the CallResource and forward it to a Play command when I want to hold on and connect to the agent if I want to resume the call.
This works good, I am able to hold on/ resume call successfully.
I have seen some questions and answers regarding this, Twilio support suggests to use Conference option for that, isn't there may be a new solution (or other solution) for this.
What I want is actually merge child call recordings, isn't there an option for this?
Thanks.
Twilio developer evangelist here.
There is no way to concatenate call recordings within Twilio, what I would recommend is to download the files and concatenate them with something like ffmpeg. You should be able to script this too.
I made a simple chatbot using the studio template and it works fine. However, it then loops after the last response. So let's say I give the user 2 choices, Y and N. After they say Y they get a response but if they message the bot again they get the initial message once again to loop the process. How do I stop this? In the docs I only found info on how to stop all incoming messages but this isn't what I want. I just want to end the convo for good as in my application it has a one time use intention. Thanks.
Twilio developer evangelist here.
There's not really a way to stop incoming texts. What you want to do in this case is stop responding to an incoming text after the initial flow through.
The way to do this would be to use Twilio Functions and function widgets to store the numbers that have successfully completed the questions (you could use any database for this, if you want to keep it within Twilio then Twilio Sync can help here). Then you can insert a function widget at the start of the flow that retrieves whether the number messaging has completed the questions and combine with a split widget to decide whether to send the first message or just complete the flow.
Let me know if that helps at all.
When forwarding calls to a twilio number using unconditional forwarding from a mobile phone like this:
*21*0031123456789#
I never get information about the original caller id, or better, I get +266696687 which is the equivalent for ANONYMOUS.
This is a sample of the request parameters that twilio sends
/twilioml?AccountSid=AC9xxxxxxxxxxxxxxxxxx&ToZip=&FromState=&Called=%2B31123456789&FromCountry=LS&CallerCountry=LS&CalledZip=&Direction=inbound&FromCity=&CalledCountry=NL&CallerState=&CallSid=CAxxxxxxxxxxxxxxxxxxxx&CalledState=&From=%2B266696687&CallerZip=&FromZip=&ApplicationSid=APxxxxxxxxxxxxxxxxx&CallStatus=ringing&ToCity=&ToState=&To=%2B31123456789&ToCountry=NL&CallerCity=&ApiVersion=2010-04-01&Caller=%2B266696687&CalledCity=
If I try a conditional call forwarding like this one for example:
*61*0031123456789#
/twilioml?AccountSid=AC9xxxxxxxx&ToZip=&FromState=&Called=%2B31123456789&FromCountry=NL&CallerCountry=NL&CalledZip=&Direction=inbound&FromCity=&CalledCountry=NL&CallerState=&CallSid=CAxxxxxxxxxxxxxxx&CalledState=&From=%2B315555555&CallerZip=&FromZip=&ApplicationSid=APxxxxxxxxxxxxxxxxxx&CallStatus=ringing&ToCity=&ToState=&To=%2B31123456789&ToCountry=NL&CallerCity=&ApiVersion=2010-04-01&Caller=%2B315555555&CalledCity=
In this case, assuming that my number is +315555555, the caller id information is my own number and not the original number that called my phone
I'm trying this from Vodafone Netherlands but I haven't tried with another operator yet.
Is there anyway to make this work? Is it a Vodafone (Netherlands) issue or something at the Twilio side because otherwise I'm afraid this is a major setback to our solution.
Thanks in advance
Can you try this example: https://www.twilio.com/labs/twimlets/forward ?
If that also fails, there's something wrong with the entire process, potentially related to your phone number or carrier.
If it does work, there's probably an error in your TwiML. Would you be able to share the underlying code? Or at least whatever is generated?
Either way, we should be a little closer to the underlying problem. :)
According to Twilio it's an operator issue