https://d226lax1qjow5r.cloudfront.net/blog/blogposts/break-awkward-silences-with-terrible-festive-jokes-via-sms-dr/Break-Awkward-Silences-With-Terrible-Festive-Jokes-Via-SMS.png

Brechen Sie unangenehme Stille mit schrecklichen Festtagswitzen per SMS

Zuletzt aktualisiert am April 19, 2021

Lesedauer: 13 Minuten

In diesem Tutorial zeige ich dir, wie du dir deinen eigenen peinlichen Schweigebrecher bauen kannst, in Form einer SMS-App, die dir mit schrecklichen Festtagswitzen und Einzeilern antwortet, die du auf den Tisch werfen kannst, um die Spannung zu brechen.

Wenn zu jeder Jahreszeit große Gruppen von Familienmitgliedern zusammenkommen, kann das manchmal etwas unangenehm werden. Zum Beispiel, wenn Onkel Bill seine Drinks gemixt hat und am Ende etwas über Cousine Roberta sagt, das dazu führt, dass alle unangenehm an Pastinaken knabbern.

Peinlich. Starten Sie Ihren Code-Editor und fangen wir an.

Versuchen Sie, bevor Sie bauen

Meine Version dieser App ist live, Sie können sie also gleich per E-Mail versenden und die Ergebnisse sehen, bevor wir uns mit dem Code beschäftigen.


Senden Sie eine SMS mit dem Wort "peinlich" an +44 7520619627 wenn Sie in Großbritannien leben, oder +1 201 844 9627 wenn du in den USA bist und dich über die genialen Sprüche kaputtlachst, die du als Antwort erhältst... vielleicht.


(Dem aufmerksamen Auge wird bereits aufgefallen sein, dass die letzten 4 Ziffern jeder dieser Numbers auf einer Telefontastatur X-M-A-S ergeben).

Eine Zeile hat die düstere Stille nicht durchbrochen? Okay, schicken Sie eine SMS mit dem Wort "mehr" als Antwort und Sie erhalten eine weitere Zeile, die helfen könnte.

Die App erstellen

Die Anwendung, die wir erstellen werden, verwendet Node.js, das Koa-Framework (bei dem es sich lediglich um eine modernere Implementierung von Express handelt) und die Vonage Messages API.

Der Code ist in einem Repository auf der Nexmo Gemeinschaft GitHub Account, und auch in remixbaren Form auf Glitch.

Voraussetzungen

  • Die Vonage-Befehlszeilenschnittstelle

  • Eine neue SMS-fähige Nummer

  • Node.js Version 8 oder höher

  • Eine Auswahl an schrecklichen Witzen und Einzeilern

  • Eine peinliche Situation

Vonage API-Konto

Um dieses Tutorial durchzuführen, benötigen Sie ein Vonage API-Konto. Wenn Sie noch keines haben, können Sie sich noch heute anmelden und mit einem kostenlosen Guthaben beginnen. Sobald Sie ein Konto haben, finden Sie Ihren API-Schlüssel und Ihr API-Geheimnis oben auf dem Vonage-API-Dashboard.

In diesem Lernprogramm wird auch eine virtuelle Telefonnummer verwendet. Um eine zu erwerben, gehen Sie zu Rufnummern > Rufnummern kaufen und suchen Sie nach einer Nummer, die Ihren Anforderungen entspricht.

Das Repository klonen

Klonen Sie in einem beliebigen Verzeichnis eine Kopie des Codes aus unserer nexmo-Gemeinschaft Repository auf GitHub:

git clone git@github.com:nexmo-community/xmas-jokes-nodejs.git

Wechseln Sie dann in das Verzeichnis, um auf den Code zuzugreifen:

cd xmas-jokes-nodejs

Öffnen Sie dieses festliche Wunderpaket in Ihrem Editor, und wir beginnen mit der Konfiguration.

Start it up

Um diese App zu konfigurieren, muss sie von der Außenwelt aus erreichbar sein. Verwenden Sie Ngrok um den Port freizulegen 3000 und notieren Sie sich die https URL, die Sie erhalten:

ngrok http 3000

Wenn Sie noch nicht mit Ngrok noch nicht benutzt haben, folgen Sie der Anleitung in diesem Blogbeitrag um loslegen zu können.

Konfiguration

Der erste zu konfigurierende Teil ist die .env.sample Datei. Beginnen Sie damit, sie umzubenennen in .env.

Fügen Sie alle folgenden Informationen hinzu:

NEXMO_API_KEY="" # from your account dashboard NEXMO_API_SECRET="" # from your account dashboard

Als nächstes folgen die anwendungsspezifischen Details. Richten Sie diese über die CLI ein.

Die App, die Sie geklont haben, enthält zwei Endpunkte:

  • /inbound empfängt neue SMS-Nachrichten

  • /status ist eine erforderliche URL für jede Nachrichten- und Versandanwendung. Sie empfängt Lesebestätigungen und andere Informationen über die von Ihnen gesendeten Nachrichten

vonage apps:create ✔ Application Name … Xmas Jokes ✔ Select App Capabilities › Messages ✔ Create messages webhooks? … yes ✔ Inbound Message Webhook - URL … https:///inbound ✔ Inbound Message Webhook - Method › POST ✔ Status Webhook - URL … https:///status ✔ Status Webhook - Method › POST ✔ Allow use of data for AI training? Read data collection disclosure - https://help.nexmo.com/hc/en-us/articles/4401914566036 … yes

Mit diesem Befehl wird eine neue Anwendung "Nachrichten & Versand" auf Ihrem Account eingerichtet. Er gibt den Application ID auf dem Bildschirm aus und erstellt außerdem einen privaten Schlüssel in dem Verzeichnis, in dem Sie sich gerade befinden. Beide werden für den nächsten Schritt der Konfiguration benötigt:

NEXMO_APPLICATION_ID="" # The new App ID you just generated NEXMO_APPLICATION_PRIVATE_KEY="./XmasJokes.key" # No need to change this unless you called your keyfile something different

Geben Sie schließlich Ihre neue SMS-fähige Nummer ein:

NEXMO_FROM_NUMBER="" # If you have a Non-US number put it here, otherwise blank NEXMO_FROM_NUMBER_US="" # If you have a US number, put it here, otherwise blank

Wenn Sie alle Felder ausgefüllt haben, können Sie Ihr .env und schließen.

Jetzt brauchen Sie eine Nummer, damit Sie Anrufe empfangen können. Sie können eine Nummer mieten, indem Sie den folgenden Befehl verwenden (ersetzen Sie die Landesvorwahl durch Ihre Vorwahl). Wenn Sie sich zum Beispiel in den USA befinden, ersetzen Sie GB durch US:

  • vonage numbers:search US vonage numbers:buy [NUMBER] [COUNTRYCODE]

    Verknüpfen Sie nun die Nummer mit Ihrer App:

    vonage apps:link --number=VONAGE_NUMBER APP_ID

Das war's. Die Einrichtung ist abgeschlossen!

Schüren Sie die festliche Stimmung

Vonage weiß jetzt, wo alles hingeht und wie neue Nachrichten an Ihre Anwendung weitergeleitet werden können. Es gibt nur noch eine Sache, die zu tun ist:

npm run dev

Sobald der Server läuft, vergewissern Sie sich, dass Ihre Ngrok-Verbindung über dieselbe URL, die Sie in den Rückrufen verwendet haben, immer noch besteht, und senden Sie dann eine SMS mit dem Wort "peinlich" an Ihre neue Nummer.

Numbers in action

Wie geht es weiter?

Als nächstes müssen Sie diese Anwendung auf einem Server bereitstellen. Heroku ist dafür eine ausgezeichnete Wahl, und die App erfordert keine Codeänderungen, um dort zu funktionieren.

Denken Sie daran, dass Sie die Rückrufe für die SMS-Nummer und die beiden URLs für Ihre Nachrichten- und Versandanwendung aktualisieren müssen, wenn Sie die Anwendung an einem anderen Ort einsetzen.

Dazu benötigen Sie die folgenden CLI-Befehle:

vonage apps:update [APP_ID] --voice_event_url=http://example.com/webhooks/event --voice_answer_url=http://example.com/webhooks/answer

Dann sind Sie startklar.

Möchten Sie es noch einfacher haben?

Wenn du einen noch schnelleren Weg suchst, um mit dem Code für diese Anwendung zu spielen, kannst du sie auf Glitch remixen remixen, indem du auf die Schaltfläche unten klickst:

remix button

Teilen Sie:

https://a.storyblok.com/f/270183/250x250/d0444194cd/martyn.png
Martyn DaviesVonage Ehemalige

Ehemaliger Direktor für Entwicklerschulung bei Vonage. Mit einem Hintergrund als kreativer Entwickler, Produktmanager und Organisator von Hack-Days arbeitet Martyn seit 2012 als Befürworter der Technologie, nachdem er zuvor beim Rundfunk und bei großen Plattenfirmen tätig war. Er bildet Entwickler auf der ganzen Welt aus und unterstützt sie.