Facebooks "Messenger Bots" -Funktion ist nichts Neues und es gibt bereits viele tolle Bots. Die Ressourcen zum genauen Erstellen eines eigenen Bots sind jedoch knapp und für Personen, die mit der Facebook Graph-API noch nicht vertraut sind, nicht erklärbar. Für Messenger-Bots müssen Sie jetzt auch eine SSL-gesicherte Webhook-Rückruf-URL verwenden (dazu später mehr). Das Einrichten von SSL ist nicht jedermanns Sache und kostet auch Geld.
In diesem Artikel werde ich Sie durch den gesamten Prozess der Erstellung eines einfachen Facebook-Messenger-Bots führen, da die eigene Dokumentation von Facebook eher schlecht erklärt wird. Wir werden eine Cloud-App einrichten, die das https-Protokoll verwendet, den Bot in Node.js (einer serverseitigen Javascript-Sprache) codieren, den Code mit git in die Cloud-Anwendung übertragen und ihn auf Facebook Messenger testen.
Bot einrichten
Sie müssen Node auf Ihrem Laptop installiert haben. Wenn nicht, rufen Sie die Node-Website auf, um sie herunterzuladen und zu installieren.
Sobald Sie fertig sind, können Sie mit dem Setup für den Bot fortfahren. Folgen Sie den unteren Schritten:
1. Starten Sie das Terminal.
2. Sie benötigen ein separates Verzeichnis für Ihren Code.
- Erstellen Sie ein neues Verzeichnis
mkdir testbot
- Ändern Sie Ihr Arbeitsverzeichnis in das gerade erstellte Verzeichnis
CD-Testbot
3. Initialisieren Sie als Nächstes die Knotenanwendung.npm init
- Sie werden aufgefordert, Informationen zu Ihrer Anwendung einzugeben. Verwenden Sie einfach die Standardeinstellungen, indem Sie für alles die Eingabetaste drücken.
4. Installieren Sie die Paketenpm install express body-parser request --save
- Der Befehl wird ausgeführt und gibt einige Warnungen aus. ignoriere sie.
5. Öffnen Sie im Finder das Verzeichnis „Testbot", Die Sie erstellt haben, und suchen Sie die Datei mit dem Namen"package.json“; Öffnen Sie dies in einem Editor wie Sublime Text.
6. In dieser Datei müssen wir eine Zeile hinzufügen"start": "node index.js"
- Vergessen Sie nicht, a anzuhängen "," am Ende der vorherigen Zeile.
7. Erstellen Sie als Nächstes eine neue Datei in Sublime Text und geben Sie den folgenden Code ein:
[js]
var express = require ('express');
var bodyParser = require ('body-parser');
var request = require ('request');
var app = express ();
app.use (bodyParser.urlencoded (erweitert: false));
app.use (bodyParser.json ());
app.listen ((process.env.PORT || 3000));
app.get ('/', Funktion (req, res)
res.send ('Dies ist TestBot Server');
);
app.get ('/ webhook', Funktion (req, res)
if (req.query ['hub.verify_token'] === 'testbot_verify_token')
res.send (req.query ['hub.challenge']);
else
res.send ('Ungültiges Bestätigungstoken');
);
[/ js]
Speichern Sie diese Datei als index.js
Hinweis: In Zeile 13 wird der Wert von 'hub.verify_token' auf 'gesetzttestbot_verify_token ', Denken Sie an diesen Wert, da er beim Erstellen des Webhooks in Facebook verwendet wird.
Git Repository erstellen
Nachdem wir die Rückrufbehandlung unseres Bots eingerichtet haben, müssen wir den Code an Heroku senden. Dazu müssen wir ein Git-Repository in unserem Verzeichnis erstellen.
Hinweis: "Git" ist ein Versionskontrollsystem für Dateien und Software-Code. Sie können mehr darüber auf Wikipedia lesen.
Das Erstellen eines Git-Repositorys ist einfach und erfordert nur einige Terminalbefehle.
Hinweis: Stellen Sie sicher, dass Sie sich in der “TestbotVerzeichnis im Terminal. Sie können dies tun, indem Sie den Befehl eingeben pwd
in das Terminal.
Führen Sie die folgenden Schritte aus, um ein Git-Repository zu erstellen:
1. git init
2. git hinzufügen .
3. git commit -m "Facebook Webhook registrieren"
Richten Sie Heroku ein
Bevor wir überhaupt auf die Entwicklerseiten von Facebook gehen, benötigen wir eine Rückruf-URL, mit der Facebook sprechen kann. Diese URL muss die verwenden https-Protokoll, Dies bedeutet, dass wir ein SSL-Zertifikat auf unserer Website installieren müssen. Dies ist jedoch eine Anleitung für Anfänger zu Facebook-Messenger-Bots. Lassen Sie uns die Dinge also nicht komplizieren. Wir werden Heroku verwenden, um unseren Code bereitzustellen. Heroku gibt Ihnen https-URLs für Ihre Anwendungen und verfügt über einen kostenlosen Plan, der unsere (sehr grundlegenden) Anforderungen erfüllt.
Gehen Sie zur Heroku-Website und registrieren Sie sich.
Hinweis: Verwenden Sie im Feld "Wählen Sie Ihre primäre Entwicklungssprache" "Ich verwende eine andere Sprache"..
Wenn Sie damit fertig sind, installieren Sie den Heroku-Toolbelt für Ihr Betriebssystem (Mac, für mich) und installieren Sie ihn. Dadurch erhalten Sie Zugriff auf Heroku über Ihr Terminal (oder die Eingabeaufforderung unter Windows)..
Als nächstes erstellen wir eine App auf Heroku, die den gesamten Code für unseren Bot enthält. Folgen Sie den unteren Schritten:
1. Starten Sie das Terminal
2. Geben Sie ein Heroku Login
- Sie werden aufgefordert, Ihre E-Mail-Adresse und Ihr Passwort einzugeben.
- Geben Sie Ihre E-Mail-Adresse ein und drücken Sie die Eingabetaste. Geben Sie dann Ihr Passwort ein und drücken Sie die Eingabetaste.
- Sie werden bei heroku angemeldet
3. Geben Sie ein Heroku erstellen
- Dadurch wird eine App auf Heroku erstellt und Sie erhalten einen Hyperlink. Beachten Sie, dass der Link das https-Protokoll verwendet. Einfach richtig?
4. Jetzt können Sie Ihren App-Code an Heroku sendenGit Push Heroku Meister
5. Sobald dies erledigt ist, ist Ihre App im Grunde genommen live und Sie können den Link in Ihrem Browser besuchen, um zu überprüfen, ob alles einwandfrei funktioniert. Es sollte eine Webseite mit der Aufschrift „Dies ist TestBot Server„.
Facebook-Setup
Es ist Zeit, unseren Bot mit Facebook zu verbinden! Sie müssen eine neue Facebook-Seite erstellen oder eine vorhandene verwenden, die Sie besitzen. Ich zeige Ihnen, wie Sie vorgehen, indem Sie eine neue Facebook-Seite erstellen.
1. Gehen Sie zu Facebook und erstellen Sie eine neue Seite.
- Sie können eine Seite in einer beliebigen Kategorie erstellen. Ich entscheide mich ohne besonderen Grund für Unternehmen / Organisation.
2. Die nächsten Schritte, die Facebook anzeigt, sind optional und können übersprungen werden.
3. Besuchen Sie als Nächstes die Website der Facebook-Entwickler.
- Bewegen Sie die Maus oben rechts auf „Meine Applikationen"Und dann auf"Fügen Sie eine neue App hinzu”Aus dem Dropdown-Menü.
- Klicke auf "Grundeinstellung”Wenn Facebook Sie auffordert, eine Plattform auszuwählen.
4. Geben Sie die Details für Ihren App-Namen und Ihre Kontakt-E-Mail-Adresse ein.
- Wählen "Apps für Seiten”In der Kategorie.
- Klicke auf "App-ID erstellen„.
5. Sie werden zum Dashboard für Ihre App weitergeleitet. Navigieren Sie in der Seitenleiste zu „+Produkte hinzufügen”Und wählen Sie“BoteKlicken Sie auf "Loslegen" Taste.
6. Wählen Sie “Webhooks einrichten„.
7. Füllen Sie die erforderlichen Felder aus, ersetzen Sie die „Rückruf-URL“ durch die URL der Heroku-App, überprüfen Sie das Token mit dem in der Datei index.js verwendeten Token und wählen Sie die folgenden Abonnementfelder aus:
- message_deliveries
- Mitteilungen
- message_optins
- messaging_postbacks
Hinweis: Stellen Sie sicher, dass Sie “/ Webhook"Zur Callback-URL, damit index.js die erforderliche Funktion ausführt, wenn Facebook versucht, die URL zu pingen, kann es das" Verify Token "überprüfen..
8. Klicken Sie auf “Überprüfen und speichern„.
9. In der “Token-GenerierungKlicken Sie im Abschnitt "Klicken" auf "Wählen Sie eine Seite aus”Und wählen Sie die Seite aus, die Sie zuvor erstellt haben.
Dies wird ein “Seitenzugriffstoken“, Speichern Sie es irgendwo; Sie werden es später brauchen.
10. Als Nächstes müssen Sie eine POST-Abfrage an Ihre App mit dem im letzten Schritt generierten Seitenzugriffstoken durchführen. Dies kann einfach im Terminal erfolgen. Führen Sie einfach den folgenden Befehl aus, Ersetzen von PAGE_ACCESS_TOKEN durch das von Ihnen generierte Seitenzugriffstoken.
curl -X POST “https://graph.facebook.com/v2.6/me/subscribed_apps?access_token=PAGE_ACCESS_TOKEN”
Sie sollten ein “erhaltenErfolgAntwort im Terminal.
Mehr Heroku-Setup
Ja, wir sind noch nicht fertig. Nicht annähernd.
1. Gehen Sie zur Heroku-Website und melden Sie sich mit Ihrer E-Mail-ID an.
2. Suchen Sie Ihre App im „Dashboard“ und klicken Sie darauf.
3. Navigieren Sie zur Registerkarte Einstellungen.
4. Klicken Sie auf “Zeigen Sie Config Vars an”
5. Fügen Sie PAGE_ACCESS_TOKEN als „config var“Und klicken Sie auf“Hinzufügen„.
Codierung des tatsächlichen Bots
Nachdem wir mit dem Grunzen fertig sind, können wir uns auf das konzentrieren, was wirklich wichtig ist: den Bot auf Nachrichten reagieren zu lassen. Zu Beginn entwerfen wir einfach einen Bot, der einfach die empfangenen Nachrichten wiedergibt. Wie sich herausstellt, erfordert diese einfache Aufgabe ein beträchtliches Stück Code, um zu funktionieren.
1. Codieren des Nachrichten-Listeners
Bevor der Bot die Nachricht zurückgeben kann, muss er in der Lage sein, auf Nachrichten zu warten. Lassen Sie uns das zuerst tun.
Fügen Sie in der Datei index.js den folgenden Code hinzu:
[js]
app.post ('/ webhook', Funktion (req, res)
var events = req.body.entry [0] .messaging;
für (i = 0; i < events.length; i++)
var event = events [i];
if (event.message && event.message.text)
sendMessage (event.sender.id, text: "Echo:" + event.message.text);
res.sendStatus (200);
);
[/ js]
Diese Funktion prüft, ob empfangene Nachrichten vorhanden sind, und prüft dann, ob die Nachricht Text enthält. Wenn in der empfangenen Nachricht Text gefunden wird, ruft es die Funktion sendMessage (später gezeigt) auf und übergibt die Absender-ID und den zurückzusendenden Text. Es ist wichtig, die folgenden Werte zu verstehen und zu verstehen, was sie bedeuten:
- event.message.text ist der in der Nachricht empfangene Text. Wenn beispielsweise jemand die Nachricht "Hallo" an unseren Bot sendet, lautet der Wert von event.message.text "Hallo"..
- event.sender.id ist die ID der Person, die die Nachricht an den Bot gesendet hat. Dies ist erforderlich, damit der Bot weiß, an wen er die Antwort richten soll.
2. Codierung der sendMessage-Funktion
Lassen Sie uns jetzt die Funktion "sendMessage" codieren.
[js]
Funktion sendMessage (Empfänger-ID, Nachricht)
Anfrage(
URL: 'https://graph.facebook.com/v2.6/me/messages',
qs: access_token: process.env.PAGE_ACCESS_TOKEN,
Methode: 'POST',
json:
Empfänger: ID: Empfänger-ID,
Nachricht: Nachricht,
, Funktion (Fehler, Antwort, Körper)
if (Fehler)
console.log ('Fehler beim Senden der Nachricht:', Fehler);
else if (response.body.error)
console.log ('Fehler:', response.body.error);
);
;
[/ js]
Die Funktion "sendMessage" akzeptiert zwei Parameter:
- Empfänger-ID
- Botschaft
Die Empfänger-ID ist erforderlich, damit die Nachricht an den richtigen Benutzer adressiert werden kann.
Die Nachricht ist der eigentliche Text, der in der Antwort gesendet werden soll.
3. Übertragen Sie die Änderungen auf Heroku
Wenn Sie die obigen Schritte ausgeführt haben, sollte Ihr Bot in der Lage sein, den empfangenen Text wiederzugeben. Aber zuerst müssen Sie die Änderungen an der auf Heroku gehosteten Anwendung vornehmen. Führen Sie dazu die folgenden Schritte aus:
1. Starten Sie das Terminal.
2. Wechseln Sie in Ihr Testbot-Verzeichnis
CD-Testbot
3. Führen Sie die folgenden Schritte aus:
- git hinzufügen .
- Hinweis: Da ist ein "." am Ende von "git add"
- git commit -m "Erstes Commit"
- Git Push Heroku Meister
4. Senden Sie nun eine Nachricht an Ihre Seite, und der Bot gibt die Nachricht an Sie zurück.
Bedingte Antworten, auch bekannt als "Den Bot intelligenter machen"
Wir können Textabgleich verwenden, damit unser Facebook-Messenger-Bot nach bestimmten speziellen Schlüsselwörtern antworten kann.
Um dies zu erreichen, müssen wir eine weitere Funktion hinzufügen. Ich nenne es "bedingte Antworten", aber Sie können wählen, welchen Namen Sie bevorzugen.
1. Codieren der bedingten Antwortfunktion
[js]
Funktion conditionalResponses (Empfänger-ID, Text)
text = text || "";
var what = text.match (/ what / gi); // überprüfe ob die Textzeichenfolge das Wort "was" enthält; Fall ignorieren
var beebom = text.match (/ beebom / gi); // überprüfe ob die Textzeichenfolge das Wort "beebom" enthält; Fall ignorieren
var who = text.match (/ who / gi); // überprüfe ob die Textzeichenfolge das Wort "who" enthält; Fall ignorieren
var you = text.match (/ you / gi); // überprüfe ob die Textzeichenfolge das Wort "du" enthält; Fall ignorieren
// Wenn der Text sowohl "what" als auch "beebom" enthält, gehen Sie folgendermaßen vor:
if (what! = null &&; beebom! = null)
message =
Text: "Beebom ist eine Website, die technische Ressourcen anbietet. Willkommen."
sendMessage (Empfänger-ID, Nachricht);
return true;
// Wenn der Text sowohl "who" als auch "you" enthält, gehen Sie folgendermaßen vor:
if (who! = null && you! = null)
message =
Text: "Ich wurde gebeten, meine Identität nicht online zu besprechen."
sendMessage (Empfänger-ID, Nachricht);
return true;
// Wenn nichts übereinstimmt, geben Sie false zurück, um die Ausführung der inneren Funktion fortzusetzen.
falsch zurückgeben;
;
[/ js]
In den Zeilen 4 bis 7 haben wir Variablen definiert, die davon abhängen, ob die empfangene Zeichenfolge mit bestimmten Wörtern abgeglichen wird. Das Beste an der Verwendung von "text.match ()" ist, dass reguläre Ausdrücke verwendet werden (normalerweise Regex genannt, lesen Sie hier mehr.). Es ist gut für uns, denn dies bedeutet, dass die Variable nicht null ist, solange auch nur ein Teil eines Wortes im empfangenen Text mit einem der in text.match () erwähnten Wörter übereinstimmt. Dies bedeutet, dass, wenn die empfangene Nachricht "What's Beebom?" Lautete, "var what" und "var beebom" nicht null sind, da das Wort "What's" das Wort "what" enthält. So können wir keine zusätzlichen Anweisungen für jede Variation erstellen, in der jemand „Was“ sagen könnte..
2. Bearbeiten des Nachrichten-Listeners
Wir müssen auch den von uns codierten Nachrichten-Listener bearbeiten, um sicherzustellen, dass er versucht, den empfangenen Text auch mit der Funktion "conditionalResponses" abzugleichen.
[js]
app.post ('/ webhook', Funktion (req, res)
var events = req.body.entry [0] .messaging;
für (i = 0; i < events.length; i++)
var event = events [i];
if (event.message && event.message.text)
// Versuchen Sie zuerst zu überprüfen, ob die empfangene Nachricht für eine bedingte Antwort geeignet ist.
if (! conditionalResponses (event.sender.id, event.message.text))
// Wenn dies nicht der Fall ist, geben Sie die empfangene Nachricht einfach an den Absender zurück.
sendMessage (event.sender.id, text: "Echo:" + event.message.text);
res.sendStatus (200);
);
[/ js]
Die Änderungen im Hörer sehen vielleicht nicht sehr drastisch aus, aber ihre Auswirkungen sind sicher. Jetzt versucht der Listener zunächst, mit bedingten Antworten zu antworten. Wenn für die empfangene Nachricht keine gültige Bedingung vorliegt, wird die Nachricht einfach an den Benutzer zurückgesendet.
3. Übertragen Sie die Änderungen auf Heroku
Bevor Sie die neuen Funktionen ausprobieren können, müssen Sie den aktualisierten Code an die auf Heroku gehostete App senden. Führen Sie dazu die folgenden Schritte aus:
1. Starten Sie das Terminal.
2. Wechseln Sie in Ihr Testbot-Verzeichnis
CD-Testbot
3. Führen Sie die folgenden Schritte aus:
- git hinzufügen .
- Hinweis: Da ist ein "." am Ende von "git add"
- git commit -m "Bedingte Funktionen hinzufügen"
- Git Push Heroku Meister
4. Senden Sie nun eine Nachricht an Ihre Seite, und der Bot gibt die Nachricht an Sie zurück.
Noch mehr Funktionalität
Unser Bot reagiert jetzt auf eine kleine Reihe von Befehlen in schönen, gut strukturierten Antworten. Aber es ist immer noch nicht sehr nützlich. Nehmen wir noch einige Änderungen am Code vor, um unseren Bot zu einem „funktional”Stück Software. Wir werden es sein viele Funktionen überarbeiten, und noch ein paar hinzufügen, also sei aufgeregt.
1. Bearbeiten des Nachrichten-Listeners
Unser Nachrichten-Listener funktioniert zu diesem Zeitpunkt einwandfrei. Es ist jedoch nicht sehr schön formatiert und wenn wir die verschachtelten if-Anweisungen weiter erhöhen würden, um zusätzliche “Zustandsprüfungen„Es wird schnell hässlich anzusehen, schwer zu verstehen und langsamer bei der Ausführung. Das wollen wir jetzt nicht, oder? Nehmen wir einige Änderungen vor.
Hinweis: Der Nachrichten-Listener enthält eine Codezeile, die lautet "Res.sendStatus (200)", Diese Zeile sendet einen Code mit dem Status 200 an Facebook und teilt ihm mit, dass die Funktion erfolgreich ausgeführt wurde. Laut der Dokumentation von Facebook wartet Facebook maximal 20 Sekunden, um den Status 200 zu erhalten, bevor es entscheidet, dass die Nachricht nicht durchgegangen ist, und die Ausführung des Codes stoppt.
Unser neuer Nachrichten-Listener sieht so aus. Wir benutzen das "res.sendStatus (200)Befehl, um die Ausführung der Funktion zu stoppen, sobald eine Bedingung erfüllt und ausgeführt wird.
[js]
app.post ('/ webhook', Funktion (req, res)
var events = req.body.entry [0] .messaging;
für (i = 0; i < events.length; i++)
var event = events [i];
if (event.message && event.message.text)
// Überprüfen Sie zuerst den Nachrichtentext anhand der introResponse-Bedingungen
if (introResponse (event.sender.id, event.message.text))
res.sendStatus (200);
// mangels eines besseren Namens habe ich diese neue Antwort genannt: p; Überprüfen Sie dies als nächstes
sonst wenn (newResponse (event.sender.id, event.message.text))
res.sendStatus (200);
// Andernfalls geben Sie einfach die ursprüngliche Nachricht zurück
sonst
// Echo durch gültige Befehlsliste ersetzen
sendMessage (event.sender.id, text: "Echo:" + event.message.text);
res.sendStatus (200);
);
[/ js]
2. Codierung der newResponse-Funktion
Unser Nachrichten-Listener vergleicht jetzt den Nachrichtentext mit einer Reihe von Bedingungen in "NewResponse" Auch, aber zuerst müssen wir die newResponse-Funktion codieren. Wir werden diese Funktion verwenden, um zu überprüfen, ob der Benutzer danach gefragt hat Artikelvorschläge von der Beebom-Website, Suchen Sie die Abfrage Begriff auf der Website, und Präsentieren Sie den Link an den Benutzer. Wir werden wieder reguläre Ausdrücke verwenden, um Text mit bestimmten Schlüsselwörtern abzugleichen.
[js]
Funktion newResponse (Empfänger-ID, Text)
text = text || "";
var suggest = text.match (/ suggest / gi);
var random = text.match (/ random / gi);
var article = text.match (/ article / gi);
var iphone = text.match (/ iphone / gi);
var android = text.match (/ android / gi);
var mac = text.match (/ mac / gi);
var browser = text.match (/ browser / gi);
var vpn = text.match (/ vpn / gi);
// Überprüfen Sie, ob der Benutzer überhaupt nach Artikelvorschlägen fragt
if (vorschlagen! = null && Artikel! = null)
var query = "";
// Wenn Artikelvorschläge abgefragt werden, überprüfen Sie das Thema, nach dem der Benutzer sucht
if (android! = null)
query = "Android";
else if (mac! = null)
query = "Mac";
else if (iphone! = null)
query = "iPhone";
else if (browser! = null)
query = "Browser";
else if (vpn! = null)
query = "VPN";
sendButtonMessage (Empfänger-ID, Abfrage);
return true
falsch zurückgeben;
;
[/ js]
Wir verwenden eine andere benutzerdefinierte Funktion namens "SendButtonMessage" um die Nachricht zu senden, falls der Benutzer nach Artikelvorschlägen fragt. Wir werden dies als nächstes erstellen.
3. Codierung der sendButtonMessage-Funktion
Die Funktion sendButtonMessage akzeptiert zwei Parameter: a Empfänger-ID und ein Abfrage. Die Empfänger-ID wird verwendet, um den Benutzer zu identifizieren, an den die Nachricht gesendet werden muss, und die Abfrage wird verwendet, um das Thema zu identifizieren, zu dem der Benutzer Artikelvorschläge wünscht.
[js]
Funktion sendButtonMessage (Empfänger-ID, Abfrage)
var messageData =
Empfänger:
ID: Empfänger-ID
,
Botschaft:
Anhang:
Typ: "Vorlage",
Nutzlast:
template_type: "button",
Text: "Das habe ich gefunden für" + Abfrage,
Tasten:[
Typ: "web_url",
URL: "http://www.beebom.com/?s="+query,
Titel: "Beebom:" + Abfrage
]
;
callSendAPI (messageData);
[/ js]
Wir verwenden wieder eine benutzerdefinierte Funktion. Diesmal, um die endgültige Nachricht mit den Artikellinks an den Benutzer zu senden. Die Funktion ähnelt in vielerlei Hinsicht der "Nachricht senden" Die Funktion, die wir zuvor codiert haben, ist jedoch allgemeiner in der Art und Weise, wie die Nachrichtendaten verwendet werden, was zu uns passt, da sich unsere Nachrichtendaten mit der vom Benutzer vorgenommenen Abfrage ändern.
4. Codierung der callSendAPI-Funktion
Das "CallSendAPI" Funktion nimmt einen einzelnen Parameter, die "MessageData". Dieser Parameter enthält die gesamten Nachrichtendaten, die gemäß den Facebook-Regeln ordnungsgemäß formatiert wurden, damit der Messenger sie dem Benutzer ordnungsgemäß anzeigen kann.
[js]
Funktion callSendAPI (messageData)
Anfrage(
uri: 'https://graph.facebook.com/v2.6/me/messages',
qs: access_token: process.env.PAGE_ACCESS_TOKEN,
Methode: 'POST',
json: messageData
, Funktion (Fehler, Antwort, Körper)
if (! error && response.statusCode == 200)
var receptId = body.recipient_id;
var messageId = body.message_id;
console.log ("Generische Nachricht mit ID% s erfolgreich an Empfänger% s gesendet",
messageId, receptId);
else
console.error ("Nachricht kann nicht gesendet werden.");
console.error (Antwort);
console.error (Fehler);
);
[/ js]
5. Übertragen Sie die Änderungen auf Heroku
Wir sind am letzten Schritt, um unseren aktualisierten Bot live zu bringen. Wir müssen nur alle Codeänderungen auf Heroku übertragen. Der Vorgang ist der gleiche wie zuvor und wird im Folgenden beschrieben:
1. Starten Sie das Terminal.
2. Wechseln Sie in das Verzeichnis Testbot Verzeichnis.
CD-Testbot
3. Gehen Sie wie folgt vor:
- git hinzufügen .
- Hinweis: Da ist ein "." am Ende dieses Befehls.
- git commit -m "Verbesserung der Zustandsüberprüfung und Formatierung"
- Git Push Heroku Meister
4. Senden Sie jetzt eine Nachricht wie "Artikel auf Android vorschlagen" oder "Beebom, schlagen Sie mir einen Artikel zum Thema Android vor". und der Bot sendet eine schön formatierte Nachricht mit einem Link, auf den Sie tippen können, um die Artikel zu öffnen, die sich auf Ihre Anfrage beziehen.
SIEHE AUCH: 16 Tipps und Tricks für Facebook Messenger, die Sie kennen sollten
Grab tiefer
Nachdem Sie nun wissen, wie Sie mit der Entwicklung von Facebook-Messenger-Bots beginnen, lesen Sie die Facebook-Dokumentation zur Entwicklung von Facebook-Messenger-Bots. Während die Dokumentation nicht für Anfänger geeignet ist, sind Sie kein Anfänger mehr. Sie sollten die offizielle Dokumentation lesen und versuchen, herauszufinden, wie Sie Ihren Bot noch intelligenter machen können. Teaser: Sie können auch Nachrichten mit Bildern und Schaltflächen senden! Es ist auch möglich, Dienste wie Wit.ai und Api.ai zu verwenden, um Ihren Bot zu codieren und ihn dann in Facebook zu integrieren, aber bei meinen schwachen Versuchen, diese Dienste zu nutzen, funktioniert Wit.ai nicht so gut und Api.ai hat eine scharfe Lernkurve für Anfänger.
Haben Sie jemals einen Facebook Messenger Bot entwickelt? Wenn ja, wie haben Sie es entwickelt und was kann es tun? Haben Sie Dienste wie Wit.ai und Api.ai verwendet, um Ihren Bot zu erstellen? Wenn Sie noch nie versucht haben, einen Bot zu codieren, entwickeln Sie Ihren eigenen Facebook-Messenger-Bot, machen Sie ihn intelligenter und besser und teilen Sie uns Ihre Erfahrungen in den Kommentaren unten mit.