2016-08-08 35 views
1

Ich versuche SMS und Anrufe von Twilio. Ich kann SMS senden und Anrufe von meinem Java-Code tätigen. Aber ich bekomme nicht, wie ich Statusrückruf im gleichen Java-Code erhalten kann.Abrufen von StatusCallback-Ereignissen von Twilio nur in Java

Gibt es eine Möglichkeit, Statusrückrufereignisse in meinem Java-Code zu erhalten?

params.add(new BasicNameValuePair("StatusCallback", "https://www.myapp.com/events")); 
params.add(new BasicNameValuePair("StatusCallbackMethod", "POST")); 
params.add(new BasicNameValuePair("StatusCallbackEvent", "initiated")); 
params.add(new BasicNameValuePair("StatusCallbackEvent", "ringing")); 
params.add(new BasicNameValuePair("StatusCallbackEvent", "answered")); 
params.add(new BasicNameValuePair("StatusCallbackEvent", "completed")); 

Auch ist es eine Möglichkeit, die wir TwiML Daten geben können (die xml für Sprachanrufe) in der Aufruf der Funktion Funktion von Java, anstatt ihm eine URL zur TwiML/XML-Datei geben. params.add (neuer BasicNameValuePair ("Url", "http://demo.twilio.com/docs/voice.xml"));

CallFactory callFactory = client.getAccount().getCallFactory(); 
Call call = callFactory.create(params); 

Antwort

0

Twilio Entwickler Evangelist hier.

Twilio führt status callbacks as webhooks, ähnlich wie Sie, wenn Sie receive an incoming call oder message. Um diese Webhooks zu erhalten, muss Ihre Anwendung von Twilio erreichbar sein.

Wenn Sie Schwierigkeiten mit diesem lokal haben, dann könnten Sie Interesse an ngrok, die a great tool for exposing your local development environment to external services like Twilio ist.

Als Antwort auf Ihre andere Frage können Sie Ihren TwiML nicht in der API-Anfrage an Twilio liefern. Sie benötigen einen Server, von dem Twilio den TwiML abfragen kann, wenn der Anruf verbunden wird.

+0

danke @philnash für Ihre Antwort. Es sieht etwas kompliziert aus, Statusrückrufe in meiner Java-App zu erhalten. Besser werde ich die PHP-Skripte für den Rückruf als einfachste Methode verwenden. –

+0

Sie müssen Java noch nicht aufgeben! Hier ist ein [Tutorial zum Senden und Empfangen von Nachrichten in Java] (https://www.twilio.com/docs/tutorials/walkthrough/masked-numbers/java/servlets), das helfen könnte, die Dinge klarer zu machen. Oder die [Schnellstartanleitung für Java] (https://www.twilio.com/docs/quickstart/java/sms) könnte auch helfen. – philnash

+0

Danke @philnash. Die von Ihnen erwähnten Links erwähnen, wie Sie SMS oder Anrufe erhalten. Was ich genau machen möchte ist, einen Anruf an den Benutzer zu tätigen und das Ergebnis des Anrufs zu erhalten, egal ob verbunden oder gekauft oder Benutzer nicht abgeholt wurde, damit ich es in meiner Datenbank entsprechend markieren kann. Wie wenn die Nummer von besetzt oder Benutzer den Anruf nicht angenommen hat, möchte ich wissen, dass Feedback-Ergebnis in Java selbst, aber die API nimmt nur die Callback-URL, keine Callback-Ereignisse für Java, aus denen ich den Anruf. –