
Teilen Sie:
Aaron war ein Entwickler-Befürworter bei Nexmo. Aaron ist ein erfahrener Software-Ingenieur und Möchtegern-Digitalkünstler, der häufig Dinge mit Code oder Elektronik entwickelt, manchmal auch beides. Wenn er an etwas Neuem arbeitet, erkennt man das in der Regel am Geruch von brennenden Bauteilen in der Luft.
Anonyme Proxy Voice-Anrufe mit Express
Lesedauer: 5 Minuten
Wer kennt das nicht: Man steigt aus dem Taxi aus und stellt ein paar Minuten später fest, dass man seinen Regenschirm vergessen hat. Oder Sie sind am Verhungern, starren aus dem Fenster, wenn Sie ein Auto vorbeifahren hören, und fragen sich, wo die Essenslieferung ist, die Sie vor einer Stunde bestellt haben.

Vielleicht ist es auch andersherum. Vielleicht machen Sie eine Lieferung und brauchen eine Wegbeschreibung zu der Adresse.
In all diesen Situationen werden Sie die andere Person anrufen müssen, aber Sie wollen Ihre Telefonnummer nicht an Fremde weitergeben. Deshalb können Sie stattdessen eine virtuelle Nummer verwenden, die die beiden Parteien miteinander verbindet, aber nur für die Dauer der aktuellen Transaktion verwendet werden kann.
Mieten einer virtuellen Nummer
In diesem Lernprogramm verwenden wir die Vonage CLI um unsere virtuelle Nummer zu mieten, aber Sie können Ihre Numbers und Voice Applications auch über Dashboard von Vonage verwalten, wenn Sie lieber eine grafische Benutzeroberfläche verwenden möchten. Falls Sie dies noch nicht getan haben, können Sie die Vonage CLI über npm/yarn installieren. Eine vollständige Anleitung finden Sie im Github-Repository.
Zum Zeitpunkt der Erstellung dieses Artikels können Sie virtuelle Numbers in 85 verschiedenen Ländern mieten. In meinem Beispiel werde ich GB (Großbritannien) verwenden; eine vollständige Liste der Länder und Preise finden Sie auf unserer Preisseite.
Erstellen unseres Voice-Proxy-Servers
Wenn Sie derzeit versuchen, die virtuelle Nummer anzurufen, die wir gerade gemietet haben, passiert nichts.

Wir müssen die virtuelle Nummer mit einer Anwendung verknüpfen. Sie können mehrere Numbers mit derselben Voice-Applikation verknüpfen, so dass Sie mehrere Nummern - auch in verschiedenen Ländern - haben können, die alle über ein einziges Backend betrieben werden.
In diesem Beispiel werden wir unser Backend mit Node und Express erstellen und es auf Glitch. Sie können den Code auf Github ansehen oder ihn direkt auf Glitch remixen.
Unser Express-Server hat einen einzigen Endpunkt, der wie folgt aussieht:
app.get("/", (request, response) => {
response.json([
{
"action": "connect",
"eventUrl": [`${process.env.EVENTS_URL}`],
"from": `${process.env.FROM_NUMBER}`,
"endpoint": [
{
"type": "phone",
"number": `${process.env.TO_NUMBER}`
}
]
}
])
})
Die oben definierte Route gibt ein NCCO (Anrufsteuerungsobjekt)zurück, eine JSON-Datei, die verwendet wird, um der Vonage-API Anweisungen zu geben, wenn jemand einen eingehenden oder ausgehenden Anruf beantwortet. Ein NCCO kann viele verschiedene Arten von Aktionen enthalten. Sie können können Sie die verfügbaren Aktionen in unseren Entwicklerdokumenten einsehen.
Unser Proxyserver erfordert eine einzige Aktion connect. Damit können wir unseren eingehenden Anruf an eine Reihe verschiedener Endpunkte weiterleiten: eine andere Telefonnummer, einen WebSocket oder sogar einen SIP-URI. Im obigen Beispiel stellen wir eine Verbindung zu einer anderen Telefonnummer her.
Eine der Voraussetzungen für die connect Aktion ist, dass die process.env.FROM_NUMBER sein muss. eine virtuelle Number von Vonage sein. Diese virtuelle Nummer ist das, was Ihr Anrufempfänger sieht. Sie können dieselbe virtuelle Nummer verwenden, die Sie oben gemietet haben. Auf diese Weise sehen Ihr Anrufer und der Angerufene dieselbe virtuelle Nummer, und ihre Nummern bleiben privat.
Wenn Sie die App neu mischenverwenden, müssen Sie die FROM_NUMBER und TO_NUMBER in Ihrer Glitch .env Datei. Diese Numbers müssen im E.164-Format. In diesem Beispiel verwenden wir nicht die EVENTS_URL in diesem Beispiel nicht, aber wenn Sie daran interessiert sind, wie Sie Analysen über Ihre Voice-Anrufe verfolgen können, dann sollten Sie sich unser Webinar "Verfolgung eingehender Voice-Anrufkampagnen mit virtuellen Numbers von Vonage und Mixpanel" oder den zugehörigen Blog-Beitrag lesen.
Verknüpfung unserer virtuellen Nummer mit unserem Proxyserver
Um unsere virtuelle Nummer mit unserem Proxy-Server auf Glitch zu verbinden, müssen wir zunächst eine Vonage Voice Anwendung. Sie können eine Voice-Applikation erstellen und sie über das Vonage-Dashboard mit Ihrer Nummer verknüpfenoder über die Vonage CLI.
Die Anwendungsübersicht und die Vonage CLI README enthalten weitere Informationen über apps:create und die erwarteten Argumente.
Wie geht es weiter?
Lesen Sie die "Private Voice-Kommunikation" für ein ausführlicheres Beispiel. Für ein Beispiel für Proxy-Server in Kotlin, sehen Sie sich mein Webinar. Alternativ können Sie weitere Informationen darüber erhalten, was Sie sonst noch mit Vonage Voice APIs sehen Sie unsere Beispiel-Anwendungsfälle oder lesen Sie die Entwicklerdokumentation.
Teilen Sie:
Aaron war ein Entwickler-Befürworter bei Nexmo. Aaron ist ein erfahrener Software-Ingenieur und Möchtegern-Digitalkünstler, der häufig Dinge mit Code oder Elektronik entwickelt, manchmal auch beides. Wenn er an etwas Neuem arbeitet, erkennt man das in der Regel am Geruch von brennenden Bauteilen in der Luft.