Ich bin durch den Twilio-Schnellstart und habe ein Problem - meine Ruftaste löst keine Anfrage für Twilio;Twilio Browser-zu-Browser
namespace twilioMvc.Controllers
{
public class BrowserToBrowserController : Controller
{
string accountSid;
string authToken;
string appSid;
string clientName;
string token;
public BrowserToBrowserController()
{
NameValueCollection manager = ConfigurationManager.GetSection("appSettings") as NameValueCollection;
accountSid = manager["acSID"];
authToken = manager["authToken"];
// put your Twilio Application Sid here
appSid = manager["appSID"];
// put your default Twilio Client name here
clientName = "jenny";
var capability = new TwilioCapability(accountSid, authToken);
capability.AllowClientOutgoing(appSid);
capability.AllowClientIncoming(clientName);
token = capability.GenerateToken();
}
public ActionResult Index(string name)
{
if (name != "" && name != null)
{
clientName = name;
}
var client = new Client() { clientName = clientName, token = token };
return View("Index", client);
}
[HttpPost]
public ActionResult Call(string PhoneNumber)
{
// put your default Twilio Client name here, for when a phone number isn't given
string number = "jenny";
// get the phone number from the page request parameters, if given
if (PhoneNumber != null)
{
number = PhoneNumber;
}
var response = new XElement("Response");
response.Add(new XElement("Dial", new XElement("Client", number)));
return this.Content(response.Value, "text/xml");
}
}
}
Hier ist die Seite Code
@model twilioMvc.Models.Client
<!DOCTYPE html>
<html>
<head>
<title>Hello Client Monkey 5</title>
<script type="text/javascript"
src="//media.twiliocdn.com/sdk/js/client/v1.3/twilio.min.js"></script>
<script type="text/javascript"
src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js">
</script>
<link href="//static0.twilio.com/resources/quickstart/client.css"
type="text/css" rel="stylesheet" />
<script type="text/javascript">
Twilio.Device.setup('@Model.token');
Twilio.Device.ready(function (device) {
$("#log").text("Client '@Model.clientName' is ready");
});
Twilio.Device.error(function (error) {
$("#log").text("Error: " + error.message);
});
Twilio.Device.connect(function (conn) {
$("#log").text("Successfully established call");
});
Twilio.Device.disconnect(function (conn) {
$("#log").text("Call ended");
});
Twilio.Device.incoming(function (conn) {
$("#log").text("Incoming connection from " + conn.parameters.From);
// accept the incoming connection and start two-way audio
conn.accept();
});
function call() {
// get the phone number or client to connect the call to
params = { "PhoneNumber": $("#number").val() };
Twilio.Device.connect(params);
}
function hangup() {
Twilio.Device.disconnectAll();
}
</script>
</head>
<body>
<button class="call" onclick="call();">
Call
</button>
<button class="hangup" onclick="hangup();">
Hangup
</button>
<input type="text" id="number" name="number"
placeholder="Enter a phone number or client to call" />
<div id="log">Loading pigeons...</div>
</body>
</html>
Also, wenn ich dort meine Ruftaste klicken sollte App Twilio wurde anrufen und dann soll es meine Seite mit Leerer Route (gefüllt in meinem apllication Abschnitt nennen auf Twilio Website), aber es gibt ein Problem. Kannst du mir bitte Helfen?
Versuchen Sie, '$ (" Nummer ")' anstelle von '$ (" # Nummer ")' zu verwenden. – gmiley
Es gibt kein Problem beim Abrufen von Daten aus dem Nummernfeld. –
Was ist der Fehler, den Sie dann bekommen? Haben Sie Debugging durchgeführt? Wo schlägt dein Code fehl? – gmiley