Как сделать живой голосовой телефонный звонок, используя Twilio вместо того, чтобы просто проигрывать MP3 при ответе на звонок?
Для вызова номера телефона из записной книжки через Twilio я создал приложение ASP.NET-MVC 5.2.
Я могу позвонить по номеру и ответить на телефонный звонок, но я не знаю, как установить живое голосовое (чтобы иметь возможность говорить) соединение вместо того, чтобы просто играть музыку.
Я создал метод действия внутриHomeController
:
public ActionResult Call(string to) {
client = new TwilioRestClient(Settings.AccountSid, Settings.AuthToken);
var result = client.InitiateOutboundCall(Settings.TwilioNumber, to, "http://twimlets.com/message?Message%5B0%5D=http://demo.kevinwhinnery.com/audio/zelda.mp3"); //it causes to play zelda theme when call is answered by callee
if (result.RestException != null) {
return new System.Web.Mvc.HttpStatusCodeResult(500, result.RestException.Message);
}
return Content("Call enroute!");
}
public ActionResult Index() {
return View();
}
Этот метод действия вызывается вызовом Ajax.
Когда я нажимаю кнопку отViews\Home\Index.csthml
:
<form>
<p>Enter your mobile phone number:</p>
<input id="to" type="text"
placeholder="ex: +16518675309" />
<button>Send me a message</button>
</form>
Вызывается приведенный ниже скрипт, который передает номер телефона от<input id="to">
к методу действияpublic ActionResult Call(string to)
вHomeController
:
$('form button').on('click', function(e) {
e.preventDefault();
// expect just a string of text back from the server
var url = '/call';
$.ajax(url, { //invokes call action method
method:'POST',
dataType:'text',
data:{
to:$('#to').val()//passes the number argument to the action method
},
success: function(data) {
showFlash(data);
},
error: function(jqxhr) {
alert('There was an error sending a request to the server');
}
})
});
Начнется телефонный звонок на указанный номер, т.е.48123456789
где48
это код страны. Когда вызываемый абонент отвечает на звонок, воспроизводится тема zelda. (http://twimlets.com/message?Message%5B0%5D=http://demo.kevinwhinnery.com/audio/zelda.mp3 )
Вместо этого я хотел бы поговорить через ноутбук (у него есть внутренний микрофон) с человеком, которому я позвонил, и позволить этому человеку поговорить. В нескольких словах я хотел бы иметь живой голос.
Вопрос: Как добиться живого голосового звонка с помощью Twilio в ASP.NET-MVC 5.x?
Settings.AccountSid
а такжеSettings.AuthToken
мои полномочия:
public static class Settings
{
public static string AccountSid { get { return "A###############0"; } }
public static string AuthToken { get { return "e###############0"; } }
public static string TwilioNumber { get { return "4########1"; } }
}