Wie man Flows mit der Google Vision API und Google Cloud Functions verwendet

Flows ist eine leistungsstarke Drag-and-Drop-Automatisierungsmaschine zur Erstellung von Kommunikationsflüssen. Ursprünglich haben wir es als No-Code-Lösung konzipiert, aber wir haben festgestellt, dass viele Benutzer sehr leistungsstarkes Verhalten erzielen können, indem sie etwas Code für spezifische Anwendungsfälle schreiben. Diese Code-Schnipsel können sich im Flow Builder befinden oder sie können 3rd Party Cloud-Funktionen wie AWS Lambda-Funktionen oder Google Cloud Funktionen sein.

Author

Vogel

Kategorie

Flow-Builder

Wie man Flows mit der Google Vision API und Google Cloud Functions verwendet

Flows ist eine leistungsstarke Drag-and-Drop-Automatisierungsmaschine zur Erstellung von Kommunikationsflüssen. Ursprünglich haben wir es als No-Code-Lösung konzipiert, aber wir haben festgestellt, dass viele Benutzer sehr leistungsstarkes Verhalten erzielen können, indem sie etwas Code für spezifische Anwendungsfälle schreiben. Diese Code-Schnipsel können sich im Flow Builder befinden oder sie können 3rd Party Cloud-Funktionen wie AWS Lambda-Funktionen oder Google Cloud Funktionen sein.

Author

Vogel

Kategorie

Flow-Builder

Wie man Flows mit der Google Vision API und Google Cloud Functions verwendet

Flows ist eine leistungsstarke Drag-and-Drop-Automatisierungsmaschine zur Erstellung von Kommunikationsflüssen. Ursprünglich haben wir es als No-Code-Lösung konzipiert, aber wir haben festgestellt, dass viele Benutzer sehr leistungsstarkes Verhalten erzielen können, indem sie etwas Code für spezifische Anwendungsfälle schreiben. Diese Code-Schnipsel können sich im Flow Builder befinden oder sie können 3rd Party Cloud-Funktionen wie AWS Lambda-Funktionen oder Google Cloud Funktionen sein.

Author

Vogel

Kategorie

Flow-Builder

Dies ist eine einfache Demonstration mit GoogleCloud Functions und Flows, um eine Bilderkennung auf einem Bild vorzunehmen, das über Telegram gesendet wurde.


Flows und darüber hinaus

Als Entwickler von Flows denke ich oft darüber nach, wer unsere Benutzer sind, warum sie Flows verwenden und was sie benötigen, um ihre Ziele zu erreichen; und dann, welche Funktionen wir implementieren müssen, um diesen Benutzern am besten zu dienen.


Flows ist eine leistungsstarke Drag-and-Drop-Automatisierungs-Engine zur Erstellung von Kommunikationsflows. Wir haben es zunächst als No-Code-Lösung konzipiert, aber wir haben festgestellt, dass viele Benutzer durch das Schreiben von etwas Code für spezifische Anwendungsfälle wirklich mächtige Verhaltensweisen erzielen können.   Diese Codefragmente können in Flows enthalten sein oder sie können von Dritten bereitgestellte Cloud-Funktionen wie AWS Lambda Funktionen oder Google Cloud Functions sein. 


Ein interessantes Anwendungsbeispiel: Bilderkennung 

Für ein kurzes und lustiges Beispiel zeige ich Ihnen, wie man eine App implementiert, die Hotdogs erkennt. Wir werden einen Flow in Flows einrichten, der Bilder von Benutzern empfängt und entscheidet, ob sie einen Hotdog gesendet haben oder nicht.


Für viele unserer Kunden kann diese Art der Bilderkennung sehr leistungsstark sein. Stellen Sie sich vor, Sie betreiben einen Lieferservice und möchten erfolgreiche Lieferungen automatisch überprüfen. Ähnlich wie ich zeigen werde, könnten Sie Standortdaten, Fotos von Paketen und sogar Unterschriften des Empfängers verwenden, um einen Verifizierungsflow in Flows zu erstellen. 


Ein Plan für den Erfolg

Zuerst werden wir eine Cloud-Funktion einrichten, die eine Anfrage mit einer URL zu einem Bild empfängt, dann verwendet sie eine Bilderkennungs-API, um das Bild zu verarbeiten,  und antwortet, ob sich ein Hotdog im Bild befindet oder nicht.


Dann werden wir einen Flow erstellen, der eine Nachricht von einem Benutzer über einen Messaging-Kanal (in diesem Fall Telegram) empfängt, die oben genannte Cloud-Funktion ausführt und dem Benutzer antwortet, ob sich ein Hotdog in dem Bild befindet, das er gesendet hat.


Einrichten der Google Cloud-Funktion

Zuerst,  müssen wir eine Cloud-Funktion einrichten. Um schnell zu beginnen, erstellen Sie eine Cloud-Funktion mit diesem Tutorial: https://cloud.google.com/functions/docs/quickstart-console. Wählen Sie als „Trigger“ HTTP-Trigger, Ausführungsumgebung: Node.js 10, und fügen Sie im Feld Quellcode das Code-Snippet ein. Es ist einfacher Code, der überprüft, ob die Anfrage JSON-Code enthält, und mit Ja oder Nein antwortet. 



Als nächstes müssen Sie diese Funktion bereitstellen. Um sie im Google Cloud Platform zu testen, folgen Sie den Schritten des Tutorials. 

Um sie von Ihrem Browser aus zu testen, gehen Sie zu folgendem URL und fügen Sie die spezifische Adresse für Ihre Funktion ein:


https://your-function-address.cloudfunctions.net/HotDogOrNot/?url=hello sollte {“isHotDog”: true} zurückgeben und die Adresse https://your-function-address.cloudfunctions.net/HotDogOrNot sollte {“isHotDog”: false}. zurückgeben.


Gut gemacht! Sie haben eine Google Cloud-Funktion eingerichtet. Jetzt müssen wir unsere Cloud-Funktion intelligenter machen.


Einrichten der Google Vision API

Um sie intelligenter zu machen, fügen wir die Bilderkennung hinzu. Zu diesem Zweck verwenden wir die Google Vision API. Um loszulegen, folgen Sie den Schritten 1-4 dieses Tutorials: https://cloud.google.com/vision/docs/quickstart-client-libraries. Im Tutorial aktivieren Sie die Vision API und erstellen ein Dienstkonto, um sie zu nutzen.


Jetzt kehren Sie zu der Cloud-Funktion zurück, die Sie erstellt haben. Aktivieren Sie „Umgebungsvariablen, Netzwerkkonfigurationen, Zeitüberschreitungen und mehr“ und wählen Sie im Feld „Dienstkonto“ das VisionAPI-Dienstkonto aus, das Sie gerade erstellt haben. Jetzt können wir auf die Vision API innerhalb unserer Funktion zugreifen.



Jetzt lassen Sie uns den Code ändern. Im Tab „Package.json“ fügen Sie diesen Code ein. Dadurch wird die Google Vision API-Bibliothek als Abhängigkeit zu Ihrer Funktion hinzugefügt, und im Tab "Index.js" aktualisieren Sie den vorhandenen Code mit dem folgenden Code-Snippet.



Was ist der Unterschied zur vorherigen Version? Wir haben eine Anfrage an die VisionAPI hinzugefügt, die die ‘Labels’ zurückgibt, die sie im Bild gefunden hat.  Dann filtern wir diese Labels nach Beschreibung: wenn sie „Hotdog“ enthält und wenn sie mehr als 60% Vertrauen in dieses Label hat. Wenn nach der Filterung mindestens 1 Label übrig bleibt, bedeutet das, dass wir einen Hotdog im Bild gefunden haben.


Um zu verstehen, wie die Google VisionAPI funktioniert und wie die Antwort aussieht, überprüfen Sie deren Dokumentation: https://cloud.google.com/vision/docs


Danach stellen Sie die neue Version unserer Funktion bereit. Um sie von Ihrem Browser aus zu testen, finden Sie ein beliebiges Bild eines Hotdogs und speichern Sie dessen URL. Gehen Sie nun zur URL  Ihrer Funktion (indem Sie die richtige Adresse für Ihre Funktion einfügen) https://your-function-address.cloudfunctions.net/HotDogOrNot?url=url_to_image und ersetzen Sie „url_to_image“ durch die URL des gefundenen Bildes. Wenn sich ein Hotdog im Bild befindet, gibt die Seite {“isHotDog”: true} zurück.


Jetzt lassen Sie uns diese Funktion mit dem Flow Builder verbinden.


Erstellen eines Flows in Flows

Loggen Sie sich in das Bird Dashboard ein oder registrieren Sie sich für ein Konto, wenn Sie noch keines haben.


Wenn Sie neu bei Flows sind und noch keine Kanäle eingerichtet haben, müssen Sie zur Seite zur Kanaleinrichtung gehen und den Telegram-Kanal einrichten. Ich habe mich für Telegram für diese Demo entschieden, da es einfach und schnell einzurichten ist.



Jetzt haben Sie einen Kanal, den wir in Flows verwenden können. Gehen Sie zur Flows-Seite, erstellen Sie einen neuen benutzerdefinierten Flow und wählen Sie den Trigger „Telegram“-Kanal aus.



Sie werden auf eine Flow-Seite weitergeleitet, auf der Sie Ihren Telegram-Kanal als Trigger wählen sollten, in unserem Fall „Hotdog“. Bitte fügen Sie 2 Schritte hinzu: „Variablen abrufen“ und „Auf Kanalnachricht antworten“.


Im Schritt „Variablen abrufen“ rufen wir unsere Cloud-Funktion auf und erhalten die Antwort in die Variable „isHotDog“, die „true“ oder „false“ als Antwort von der GoogleCloud-Funktion enthalten wird. Im URL-Feld fügen Sie bitte die URL zu Ihrer Funktion https://your-function-address.cloudfunctions.net/HotDogOrNot ein und füllen Sie alle anderen Felder wie im Bild „Inhalt des Fetch-Variablen-Schrittes“ aus.


Und im Schritt „Auf Kanalnachricht antworten“ werden wir dem Kunden mit einer Nachricht antworten, die die Ja- oder Nein-Antwort enthält. Fügen Sie dafür im Feld „Mit Nachricht antworten“ den folgenden Text „Hotdog auf dem Bild? {{isHotDog}}“ ein.



Wenn Sie beim Erstellen des Flows Probleme haben, können Sie ihn aus der Datei exportieren: simple-hotdog-flow.json.



Um es zu testen, senden Sie ein Bild an Ihren Telegram-Bot.

Bis jetzt sieht es cool aus! Wir haben einen kleinen Chatbot erstellt, der die Bilder überprüft, die Kunden gesendet haben. Um es schöner zu machen, lassen Sie uns einige weitere Schritte hinzufügen, wie unten gezeigt: 



Wenn Sie beim Erstellen des Flows Probleme haben, können Sie ihn aus der Datei exportieren: advanced-hotdog-flow.json.

Ergebnisse


Während dies ein unterhaltsames Beispiel ist, glauben wir, dass diese Art von Funktionalität für unsere Benutzer sehr nützlich sein kann. 

Wenn Sie mehr Funktionen wie diese in Flows wünschen, schreiben Sie unserem Support-Team, um uns dies mitzuteilen. 

Sign up

Die KI-gestützte Plattform für Marketing, Support und Finanzen

Indem Sie auf "Demo anfordern" klicken, stimmen Sie Bird's zu

Sign up

Die KI-gestützte Plattform für Marketing, Support und Finanzen

Indem Sie auf "Demo anfordern" klicken, stimmen Sie Bird's zu

Sign up

Die KI-gestützte Plattform für Marketing, Support und Finanzen

Indem Sie auf "Demo anfordern" klicken, stimmen Sie Bird's zu

Channels

Grow

Engage

Automate

APIs

Resources

Company

Socials

Wachsen

Verwalten

Automatisieren

Wachsen

Verwalten

Automatisieren