Wir erstellen einen Bot auf Aimylogic, um den Online-Shop zu automatisieren



Heute schreiben nur die Faulen nicht über die Automatisierung der Kommunikation mit Kunden. Aber hier erfahren Sie, wie Sie es in der Praxis einsetzen können - darüber wird selten gesprochen.

Wir bei Just AI verstehen, dass Automatisierung ein Trend ist, und wir wissen, wie sie Ihrem kleinen und großen Unternehmen helfen kann. Und heute haben wir beschlossen, ein faszinierendes Tutorial darüber zu schreiben, wie Sie mit Google-Tabellen und dem Aimylogic-Bot-Designer die erste Kommunikationslinie mit Ihren Kunden einfach und ohne Programmierung automatisieren können, um echte Vorteile daraus zu ziehen und nicht nur einen weiteren nutzlosen Chat-Bot zu erstellen.

Vorlage fertig


Wir haben eine Bot-Vorlage in unserem Aimylogic-Konstruktor vorbereitet, damit Sie sie mit einem Klick erstellen und lernen können, wie sie in der Praxis funktioniert. Es heißt "Online-Bestellungen" und befindet sich im Abschnitt " Vorlagen " der Startseite in Ihrem Aimylogic-Konto.



Weiter im Artikel sprechen wir über den Entstehungsprozess.

Das Schema des Online-Shops


Betrachten Sie einen typischen Online-Shop. Der Client besucht die Site oder die VKontakte-Gruppe. In einem Online-Chat erfährt er vom Berater die Verfügbarkeit und die Preise der Waren. Und wenn alles passt, schreibt die Lieferadresse. Der Berater startet einen neuen Auftrag und gibt seine Nummer an den Kunden weiter. Dann kann der Kunde zurückkehren und nach dem Status der Bestellung fragen, indem er einfach seine Nummer angibt.

Wenn es viele Kunden gibt, haben Berater möglicherweise keine Zeit, auf typische Anfragen zu antworten. Und das ist schlecht fürs Geschäft - der Kunde geht einfach in ein anderes Geschäft. Wenn Sie mehr Berater einstellen, fallen zusätzliche Kosten an.

Google-Tabellen als Datenbank


In unserem Fall speichern wir die Warenbasis und die Liste der Bestellungen in Schildern auf Google Drive , und unser Bot kann Informationen davon empfangen und automatisch an den Kunden ausgeben.


Natürlich können Sie anstelle von Tabellen auch jedes andere Tool verwenden, aber in diesem Tutorial haben wir diese Option als die einfachste und intuitivste und gleichzeitig in der Praxis anwendbare Option ausgewählt. Viele kleine Online-Shops laufen unter Excel, ohne dass zusätzliches CMS verwendet wird.

Wenn nun eine Frage von einem Kunden eingeht, geht der Berater einfach zum Tablet, prüft die Verfügbarkeit der Waren und den Preis und gibt eine Antwort auf den Chat. Wenn der Kunde bestellen möchte, fragt der Berater nach der Lieferadresse, geht zum zweiten Blatt in der Tabelle und fügt eine neue Zeile dieser Art hinzu



Wenn der Kunde dann nach dem Status fragt, findet der Berater die Bestellnummer von ihm heraus, geht zum zweiten Blatt auf dem Schild, findet den Status anhand der Nummer und gibt ihn dem Kunden.
Wir automatisieren diese Prozesse jetzt mit Ihnen.

Wir klassifizieren Kundenwünsche


Bevor wir beginnen, einen Bot in Aimylogic zu entwerfen, werden wir in einem Chat mit Beratern bestimmen, was unsere Kunden schreiben .

Die meisten Chat-Leute fragen:

  1. Was kosten iPhones / iPads / MacBooks?
  2. Ich möchte kaufen
  3. Und wo ist meine Bestellung?

Daraus sehen wir, dass unser Bot in der Lage sein sollte, mit den Namen unserer Produkte zu arbeiten, und sie sind nicht immer genau so geschrieben wie auf unserem Teller. Zum Beispiel "iPhone Hintergrund", nicht "iPhone".

Erstellen eines Bots auf Aimylogic


Das Erstellen eines Bots in Aimylogic entspricht dem Erstellen einer Site in einem beliebigen Site Builder. Nur mit der Ausnahme, dass wir keine statische Site entwerfen, sondern einen dynamischen Dialog mit dem Client.



Aimylogic Bot ist eine Folge von Bildschirmen , durch die der Bot mithilfe von Konnektoren navigiert (Pfeile, die Karten mit Blöcken verbinden). Und der Block ist tatsächlich die Aktion, die der Bot auf jedem Bildschirm ausführt. Sie können Zweige erstellen , Benutzeranforderungen verarbeiten , HTTP-Aufrufe tätigen usw.

Erstellen Sie eine Warendatenbank


Unser Bot sollte verstehen, wenn Kunden ihn nach den Preisen und der Verfügbarkeit von Waren aus unserer Datenbank fragen. Außerdem muss er sowohl die englische als auch die russische Schreibweise unter Berücksichtigung der Morphologie verstehen. Aimylogic kann dies tun - sogenannte Entities . Klicken Sie im Menü auf Entitäten , erstellen Sie ein Entitätselement und hämmern Sie die Namen von Produkten mit Synonymen ein.



Eines ist hier wichtig - damit der Name in der Essence-Spalte mit dem übereinstimmt, was auf dem Tablet steht . Dann wirst du sehen warum.

Wir veröffentlichen die Warentabelle


Damit der Bot unterwegs Verfügbarkeit und Preise sowie den Status von Bestellungen ermitteln kann, muss die Google-Tabelle veröffentlicht werden. Dann „füttern“ wir ihren Bot auf besondere Weise.

Um eine Google-Tabelle zu veröffentlichen, gehen Sie zu Datei - Im Web veröffentlichen. Es öffnet sich ein Fenster, in dem Sie nur auf die Schaltfläche Veröffentlichen klicken müssen.



Alles, nichts anderes zu tun. Wir kehren zum Herausgeber des Bots Aimylogic zurück.

Dialog aufbauen


Tatsächlich erstellen wir jetzt ein Skript für den Dialog mit dem Kunden, damit der Bot Fragen zum aktuellen Preis der Waren beantworten, deren Verfügbarkeit mitteilen, nach der Lieferadresse fragen und den Status der Bestellung anhand seiner Nummer mitteilen kann.

Wie bereits erwähnt, ist ein Bot in Aimylogic eine Folge von Bildschirmen. Wenn Sie den Bot-Skript-Editor aufrufen, wird sofort die Blockpalette des ersten Bildschirms geöffnet. Auf dem ersten Bildschirm platzieren wir den Phrasenblock , den der Bot vom Benutzer erwartet. Klicken Sie auf Phrasen. Ein Fenster wird geöffnet, in dem Sie Beispiele für Phrasen angeben und diese je nach Betreff in Gruppen aufteilen müssen.



Wenn der Benutzer etwas über das Produkt fragen kann, geben wir einen Link zu unserer Entität $ item an . Zum Beispiel "Wie viel kostet $ item" . Da Aimylogic an Algorithmen für maschinelles Lernen arbeitet , versteht unser Bot alle Kundenausdrücke und speichert die Produktkennung automatisch in der Variablen $ item.

Sie müssen auch das Kontrollkästchen "Globaler Block" aktivieren, damit der Bot auf allen Bildschirmen auf die angegebenen Sätze reagiert.

Wir lesen Daten aus Google-Tabellen


Dann beginnt der Spaß. Wenn ein Kunde sagt: "Wie viel kosten iPhones heute?" oder "Sind MacBooks verfügbar?" Der Bot sollte die Produktdaten aus der Google-Tabelle abrufen und dem Kunden mitteilen, ob sie verfügbar sind und wie hoch der heutige Preis ist.

Aimylogic-Bots können mithilfe des HTTP-Anforderungsblocks HTTP-Anforderungen direkt über das Skript stellen . Um das Arbeiten mit Daten zu vereinfachen, muss der Dienst auf dieser Seite jedoch einfaches JSON und keine Tabelle zurückgeben.

Dazu können Sie folgende URL verwenden:

http://tools.aimylogic.com/api/googlesheet2json?sheet=1&id=

Wenn Sie eine solche URL in einem Browser öffnen, wird wie in Ihrer Tabelle ein Array von JSON-Objekten mit Feldern angezeigt. Und dies kann im Bot-Skript verwendet werden. Anstelle der Dokumentenkennung müssen Sie nur die Kennung Ihrer Google-Tabelle ersetzen. Um dies zu erkennen, öffnen Sie Ihre Google-Tabelle in einem Browser und sehen Sie in der Adressleiste nach.



Diese Zeichenfolge ist die Kennung. Als Ergebnis sollten Sie eine URL dieser Art erhalten:

http://tools.aimylogic.com/api/googlesheet2json?sheet=1&id=1ydRCih3-el3dJFl4pBDjf717rfFWaTpB9qulkWw43TA

Nachdem wir die Tabelle in JSON umgewandelt haben, können wir dem Bot beibringen, wie man damit arbeitet. Klicken Sie auf dem ersten Bildschirm auf eine Gruppe von Phrasen (z. B. "Wie viel $ Artikel kostet" ) - ein zweiter Bildschirm wird erstellt. Fügen Sie einen HTTP-Anforderungsblock mit den folgenden Parametern hinzu:



Fügen Sie die zuvor erhaltene URL ein. Erstellen Sie auf der Registerkarte Antwort eine Variable namens Gerät . Dies ist in der Tat die Variable, in der der Bot die Produktdaten speichert, die er aus der Tabelle abruft. Geben Sie für den Wert der Variablen einen einfachen Javascript-Code an

 _.findWhere($httpResponse, {"name": $item}) 

Hier bringen wir dem Bot bei, aus der Serverantwort ( $ httpResponse ) ein Objekt zu extrahieren, dessen Namensfeld mit den Anforderungen des Clients übereinstimmt. Aimylogic out of the box funktioniert mit der underscorejs- Bibliothek, daher verwenden wir die findWhere- Funktion, um das gewünschte Produkt in einer Zeile zu ziehen.

Auf Lager, wollen kaufen?


Jetzt hat der Bot auf Wunsch des Benutzers die Produktdaten in die Variable $ device gezogen. Darüber hinaus kann der Client mindestens "iPads", mindestens "iPhones" schreiben - der Bot wird alles verstehen. Jetzt müssen Sie dem Bot beibringen, dem Kunden mitzuteilen, ob dieses Produkt auf Lager ist, seinen Preis bekannt zu geben und ein Bestellangebot abzugeben.

Jeder Gegenstand hat ein Instock- Feld, das entweder wahr ist oder nicht. Dies ist das gleiche Häkchen in der Google-Platte, das der Berater entfernt, wenn ein solches Produkt nicht verfügbar ist. Daher sollte der Bot auf diese Flagge schauen und, falls zutreffend, den Kauf anbieten und, falls nicht, sagen, dass ein solches Produkt vorübergehend nicht vorrätig ist.

Klicken Sie im Block mit der HTTP-Anfrage auf Erfolgreich abgeschlossen . Der folgende Bot-Bildschirm wird erstellt, auf dem Sie den Block Bedingungen hinzufügen müssen. Mit diesem Block in Aimylogic können Sie die Dialogverzweigung in Abhängigkeit von verschiedenen Bedingungen anordnen.



Jede Bedingung ist im Wesentlichen ein Javascript-Ausdruck, der entweder wahr oder falsch ist. Wenn dies der Fall ist, funktioniert der Dialogzweig, der von dieser Bedingung ausgeht. Wenn nicht, überprüft der Bot die nächste Bedingung und so weiter. Wenn keine Bedingung erfüllt ist, wird der Zweig else ausgeführt.



Zeigen Sie dem Client auf dem Bildschirm mit dem Zweig $ device.instock (Produkt auf Lager) den Text an



Und fügen Sie den Phrasenblock hinzu



Wir fragen nach der Lieferadresse


Wenn der Kunde etwas wie "Ja" sagt, sollte der Bot fragen, wohin er die Bestellung liefern soll. Klicken Sie im erstellten Block auf die Phrasengruppe „Ja“ und fügen Sie den Textblock Enter hinzu.



Auf diesem Bildschirm stellt der Bot eine Frage und speichert alle Benutzereingaben in der Adressvariablen. Danach müssen Sie sich beim Kunden bedanken und eine Benachrichtigung an den Berater senden, dass jemand ein iPhone kaufen möchte. Der Berater überprüft die Verfügbarkeit, startet eine neue Bestellung auf dem Tablet, geht zu VKontakte und informiert den Kunden in einer persönlichen Nachricht über die Bestellnummer.

Klicken Sie nach Eingabe von $ address auf Transition und fügen Sie den Textblock hinzu



So benachrichtigen Sie einen Berater
Damit der Bot den Berater benachrichtigen kann, können Sie den Dienst ifttt.com verwenden , über den Sie einen Webhook erstellen und jemanden benachrichtigen können, z. B. in Telegramm . Auf diese Weise können Sie ein Applet erstellen, das über den Web-Hook eine Benachrichtigung an den Telegramm-Chat sendet. Im Bot müssen Sie lediglich eine weitere HTTP-Anforderung zur Webhook-Adresse hinzufügen. Wie das alles geht, haben wir in unserer Hilfe geschrieben .

Wir verbinden den Bot mit VKontakte


Die erste Version ist also fertig! Der Bot kann die Verfügbarkeit prüfen und Bestellungen entgegennehmen. Sie können es in der Aimylogic-Editor-Oberfläche testen. Anschließend müssen Sie den Bot mit der VKontakte-Gruppe verbinden. Dies geschieht einfach . Das VKontakte-Chat-Widget kann auch auf der Site platziert werden, sodass Besucher Ihrer Site sofort im Chat-Fenster an den Bot schreiben können.

Danach beginnt der Bot mit dem, wofür wir ihn erstellt haben - er beseitigt die Hauptlast in Chatrooms und bringt dem Berater nur Kunden, die bereit sind, unsere Waren zu kaufen.

Bestellstatus prüfen


Eine Filiale mit Statusprüfung unterscheidet sich grundsätzlich nicht von einer Filiale mit Auftragserstellung. Da wir unsere Bestellungen auf dem zweiten Blatt in einer Platte speichern, unterscheidet sich die HTTP-Anforderung vom Bot an die Tabelle geringfügig:

http://tools.aimylogic.com/api/googlesheet2json?sheet=2&id=1ydRCih3-el3dJFl4pBDjf717rfFWaTpB9qulkWw43TA

Hier haben wir einfach den Blattparameter durch 2 (zweites Blatt) ersetzt. Nun, die Antwortverarbeitung sieht auch etwas anders aus:

 _.findWhere($httpResponse, {"order": $number}) 

Hier suchen wir nach einer Bestellung, deren Nummer mit der übereinstimmt, die der Client im vorherigen Schritt des Skripts im Block Zahl eingeben angegeben hat.



Zusammenfassend


Sie können Google-Tabellen weiterhin als Datenbank zum Speichern von Waren und Bestellungen verwenden. Ein auf Aimylogic erstellter Bot kann damit auf Anfragen unserer Kunden in der VKontakte-Gruppe und auf der Website reagieren.

Entitäten in Aimylogic ermöglichen es dem Bot, Produktnamen basierend auf der Morphologie zu verstehen. Der HTTP-Anforderungsblock ist eine großartige Möglichkeit, den Bot in alles zu integrieren, was JSON (oder XML) erzeugen kann. Mit dem Dienst tools.aimylogic.com konnte die Tabelle in Google Drive nur in ein Array von JSON-Objekten umgewandelt werden.

Die Automatisierung in unserem Beispiel löst ein sehr spezifisches Problem und führt vor allem nicht dazu, dass Kunden die Site verlassen, auf der der Bot versucht, die Person vollständig zu ersetzen, aber am Ende nichts tun kann. Im Gegenteil, die Automatisierung trägt dazu bei, das Geschäft effizienter zu gestalten.

In diesem Artikel haben wir uns mit der Integration in reguläre Google-Tabellen befasst. Aber bereits jetzt arbeiten wir an der Integration von Aimylogic in bestehende CMS-Systeme für den E-Commerce und werden in Zukunft neue Vorlagen für Online-Shops hinzufügen.

Wir erinnern Sie daran, dass Sie einen fertigen Bot auf aimylogic.com mit einem Klick aus einer Vorlage namens "Online-Bestellungen" erstellen können.

→ Die Seite mit dem Testbot ist hier
→ Platte mit Waren und Bestellungen - hier
→ Eine vollständige Dokumentation zum Aimylogic-Konstruktor und neue Tutorials finden Sie hier.

Source: https://habr.com/ru/post/de416245/


All Articles