2016-09-19 2 views
0

Ich habe Probleme mit the Twilio ClientQuickstart project for C#/js. Laut der Unterstützung von Twilio sollte das Projekt "out of the box" funktionieren, aber nicht für mich. Ich möchte in der Lage sein, von einem Telefon zum Browser und vom Browser zu einem Telefon zu telefonieren und mit den Leuten an jedem Ende zu sprechen (ohne dass der Computer mir eine Nachricht vorliest). Ich habe eine Reihe von Änderungen ohne Erfolg versucht, also bin ich jetzt zurück zum ursprünglichen Projekt, wo die einzigen Zusätze die appsettings in der lokalen Konfiguration sind. TwilioAccountSid, TwilioAuthToken und TwilioTwimlAppSid sind korrekt und TwilioCallerId sind auf meine Twillio-Telefonnummer eingestellt. Das Setup ist in Ordnung und das Gerät ist vor jedem Anruf bereit.Twilio ClientQuickstart funktioniert nicht wie vorgesehen

Im Moment benutze ich Ngrok, um die Website zu hosten. Die Sprachanforderungs-URL in der Twiml-App in der Twilio-Konsole wird mit/voice auf die angegebene URL von Ngrok gesetzt.

Kein Anruf oder kein Gespräch mit einer Person funktioniert. Wenn ich vom Browser zu einem Telefon rufe, höre ich nur die automatisierte 'Congratulations'-Nachricht von twilio. Das ist das exakt gleiche Ergebnis, das ich bekomme, wenn ich überhaupt keine Nummer in die 'make a call'-Textbox lege.

Beim Anrufen des Telefonanschlusses höre ich das Klingeln meines Telefons, aber im Browser passiert nichts. Das Debugging zeigt, dass die Index-Methode des VoiceControllers wiederholt aufgerufen wird und viele Antwortobjekte generiert werden, bis der Anruf abläuft. Dies führt zu einer Liste der eingehenden/ausgehenden Anrufe in der Anrufliste der tliio-Konsole, wobei das erste "von" meine Telefonnummer (und die zweite Nummer als "bis") ist und der Rest die zwei Nummern von und zwischen und "zwischen" eingehende 'und' ausgehende Wahl 'jede Sekunde.

Ich habe gesucht, aber kann keine Informationen zu dieser Art von Problem irgendwo finden. Wäre sehr dankbar, wenn jemand das Thema beleuchten könnte.

Antwort

0

Twilio Entwickler Evangelist hier.

Wenn Sie dialling from the browser eingeben, müssen Sie sicherstellen, dass Sie in der Browseranwendung eine echte Telefonnummer oder einen anderen Clientnamen eingeben.

enter image description here

diese Zeile: if (!string.IsNullOrEmpty(request.To)) { wird prüfen, ob die eingehende Anforderung eine Nummer oder Client hat, dass es zu wählen versucht. Wenn du nichts eingibst, fällt es einfach durch die Glückwunschmeldung. Wenn Sie eine Nummer zum Wählen eingeben, können Sie loggen oder debuggen, um zu sehen, ob eine Nummer gesendet wird?

Wenn Sie andererseits versuchen, Ihre Twilio-Nummer von einem externen Telefon aus anzurufen, versucht die Nummer, sich selbst zu wählen, wie Sie gesehen haben.

Dieser Schnellstart soll Sie dazu bringen, Anrufe im Browser zu tätigen und zu empfangen, entweder zu anderen Browsern oder zum Telefonnetz. Sie müssen etwas mehr arbeiten, um eingehende Anrufe aus dem Telefonnetzwerk in Ihrem Browser zu erhalten.

Was Sie tun können, ist, wenn die eingehenden request.To Ihre ist Twilio Zahl, dann wieder TwiML zu <Dial> zu einem <Client> Namen, den Sie wissen, ist jetzt angemeldet.

+0

Danke Phil, das 'Zifferblatt' zu einem 'Client' hat funktioniert! Aber was ist der richtige Weg? (Ich gehe einfach davon aus, dass es einen besseren Weg gibt, da Sie sagen "Was Sie tun könnten, ist ..."). Bei ausgehenden Anrufen gebe ich eine echte Telefonnummer ein, und ich habe verschiedene Nummern ausprobiert. Beim Aufruf versucht das Ausgabefenster im Testprojekt Folgendes zu drucken: > Anfordern von Fähigkeits-Token ... > Ich habe ein Token. > Twilio.Device bereit! > Erfolgreicher Anruf! > Auflegen ... > Anruf beendet. Das Javascript druckt die Nummer auf der Konsole aus, aber nur die "Gratulation" ist zu hören. –

+0

Wenn Sie ein vollständigeres Projekt, mehr als nur den QuickStart, ausprobieren möchten, dann werfen Sie einen Blick auf dieses Tutorial [mit Twilio Client telefonieren] (https://www.twilio.com/docs/tutorials/walkthrough/ browser-calls/csharp/mvc). – philnash

+0

Ich habe dasselbe Problem mit dem Aufruf aus dem BrowserCalls-Projekt, wie ich es mit dem Schnellstart hatte. Ich habe ein Ticket mit einer echten Telefonnummer erstellt und versuche es über das Dashboard aufzurufen. Laut dem Tutorial wird Twilio die Telefonnummer an/Call/Connect (die Anfrage-URL) übergeben. Ich habe einen Breakpoint in der Connect-Methode in der CallController, aber es wird nie erreicht. Ich sehe die Nummer ist korrekt, basierend auf den Updates des Anrufstatus. Beim Versuch, von meinem Telefon aus den Browser aufzurufen (Anzeige des Dashboards als support_agent), wird die Connect-Methode aufgerufen, und der Anruf wird ausgeführt. –

Verwandte Themen