Zmiany obowiązujące od 4 marca na Messengerze (więcej informacji) wymusiły poniekąd zmianę myślenia o wykorzystaniu chatbotów na Messengerze. W pierwszym odcinku swojego podcastu opowiadałem, że boty będą głównie wspierały obsługę klienta.

To także świetne narzędzie do kampanii marketingowych. Czekam jak tylko agencje i marketerzy połączą kropki, a dokładnie to te dwa słowa: grywalizacja i automatyzacja, bo do tej pory jestem zdziwiony, że niemal nikt nie myśli w tych kategoriach, a przynajmniej świadczy o tym brak takich wdrożeń.

Chatboty to od początku świetne narzędzie do pobierania danych i niezbędnych informacji, które są np. przekazywane do zewnętrznych systemów czy bezpośrednio do działów sprzedaży lub zespołów customer service. Dobitnie pokazuje to chociażby case study dla marki Nissan, który automatyzując pobieranie danych zaczął generować 10x więcej zysku z samego Facebooka. Organicznie i uwierz, to nic skomplikowanego. Założę się, że budowa takiego bota to kwestia maksymalnie kilku godzin. Maksymalnie.

Z tego względu zdecydowałem się pokazać, jak w prosty sposób zbudować mechanizm, dzięki któremu pobierzesz numer telefonu od użytkownika w Messengerze i zintegrujesz go z systemem SMS. Opisany mechanizm możesz wykorzystać na kilka sposobów, oto 3 przykłady z brzegu:

  • Do powiadomienia użytkownika o np. rozpoczęciu promocji, akcji marketingowej, rabatach i ofertach specjalnych – forma newslettera.
  • Do dodatkowej weryfikacji, gdzie użytkownik np. podczas rezerwacji miejsca musi wprowadzić kod otrzymany SMSem – sam przyznasz, że to już brzmi ciekawie?
  • Do notyfikacji osób wewnątrz firmy np. użytkownik XYZ prosi o pilny kontakt pod numerem lub adresem e-mail.

Tak naprawdę możliwości jest całkiem sporo, a tak jak wspomniałem, po ostatnich zmianach połączenie Messengera z systemami do e-mail marketingu czy SMS nabrała większego znaczenia. Świadczy o tym chociażby fakt, że 4 ostatnich moich klientów (z ostatnich 2 tygodni) zdecydowało się na integrację z systemami e-mail oraz CallPage.


W dzisiejszym wpisie pokażę Ci jak:

  • Pobrać numer telefonu od użytkownika (i sprawdzić, czy podał faktycznie numer telefonu),
  • Jak zintegrować Chatfuela z narzędziem Twilio, czyli narzędziem do wysyłki SMS,
  • W jaki sposób wysłać wiadomość SMS na podstawie akcji w chatbocie w narzędziu Integromat.
  • Save
Twilio – narzędzie do wysyłania SMS

Tu warto wspomnieć, że bramki SMS są narzędziami płatnymi i jeżeli zdecydujesz się na taką integrację, to pamiętaj, że jest to ten mechanizm wiąże się z kosztami, które wynikają z wysyłki SMS. Nie ma tego złego, bo do testów Twilio oferuje darmowy pakiet o wartości 16$, dzięki czemu spokojnie wyślesz kilkadziesiąt testowych SMSów bez konieczności wydawania własnych lub klienta pieniędzy – pozwoli Ci to przetestować mechanizm i pokazać klientowi, jak w praktyce działa taka integracja.

Oto efekt, który osiągniesz po przeczytaniu dzisiejszego wpisu:

💡 Czy wspominałem, że nie musisz być programistą, aby przygotować takiego bota? W integracji pomoże nam Integromat, o którym pisałem na blogu przy okazji wpisu o organizacji własnej pracy. Całość nie powinna nam zająć dłużej niż godzina. Jest to także pierwszy wpis, w którym mam zamiar walczyć z patologią panującą w branży i obalić kilka mitów na temat wdrożeń chatbotów. Do rzeczy.


Konfiguracja w Chatfuelu

W pierwszej kolejności przygotujemy blok, w którym pobierzemy od użytkownika niezbędne informacje. W naszym przypadku będzie to liczba osób oraz numer kontaktowy. Oczywiście możesz dowolnie modyfikować pytania oraz informacje, które będziesz za pomocą bota pobierał i przekazywał dalej. Wykorzystamy do tego:

  • Plugin Save User Input – do pobierania i zapisania danych.
  • Atrybuty wewnątrz – zawsze powtarzam, że kluczowe jest zrozumienie jak wykorzystać atrybuty, a jak nie wierzysz to zapytaj „moich” studentów.
  • JSON API – spokojnie, zobaczysz, że to turbo proste.

#1 Utwórz nowy blok w Chatfuelu

Tak naprawdę do całego mechanizmu wystarczy 1 blok. Opcjonalnie możesz podzielić konkretne pytania na osobne bloki, lecz na potrzeby tego tekstu pokażę Ci to w obrębie 1 bloczku. Nazwij blok pobieranie_danych.

  • Save
Dodaj nowy blok, który nazwij pobieranie_danych, w którym pobierzemy niezbędne informacje od użytkownika.

#2 Dodaj plugin Save User Input

Przejdź do utworzonego bloku i umieść w nim na samej górze plugin Save User Input. Poniżej tłumaczę, dlaczego korzystam z tego mechanizmu, a nie dedykowanych Save User Number Phone oraz Save User Email.

  • Save
Pluginy, za pomocą, których możesz pobrać informacje od użytkowników. Powtórzę raz jeszcze, atrybuty!

🎓 Chatfuel, a raczej Messenger oferuje dedykowane mechanizmy do pobierania adresu e-mail i numeru telefonu. Ich zaletą jest wyświetlenie sugestii adresu e-mail oraz numeru, który mamy powiązany z kontem na Facebooku. Zgoda, że jest to turbo wygodne, lecz te mechanizmy nie mają wbudowanych zabezpieczeń, dzięki czemu użytkownik w tych polach może wpisać cokolwiek, a umówmy się, zależy nam na prawdziwym numerze i adresie e-mail, a nie tekście w ramach głupiego żartu. Zwłaszcza, że za każdą taką interakcję po prostu płacisz.

Tak, więc mając umieszczony plugin Save User Input na samej górze czas na jego konfigurację. W naszym wypadku chcemy pobrać 2 informacje:

  • liczbę osób do rezerwacji,
  • numer telefonu w celu kontaktu.

Tak, więc konfiguracja pluginu wygląda następująco, poniżej tłumaczę co, jak i po co:

  • Save
Konfiguracja pluginu Save User Input.

1/2 Pytanie o liczbę osób

Pytanie, a raczej wprowadzona odpowiedź przez użytkownika jest dodatkowo sprawdzana (opcja Validation), więc użytkownik w tym pytaniu musi odpowiedzieć liczbą. Wprowadzenie tekstu lub innego ciągu znaków wywoła błąd, który skonfigurujsz klikając Modify Default Plugin Phrases. Teraz kluczowe, odpowiedź użytkownika z tego pytania zostanie zapisana pod atrybutem o nazwie {{rezerwacja_liczba}}. Atrybut po prawej stronie od pytania oznacza, że właśnie tam zostanie zapisana podana informacja przez użytkownika.

2/2 Pytanie o numer telefonu:

Odpowiedź jest sprawdzana, aby odpowiedź zawierała ciąg 9 liczb – oczywiście, można się przyczepić, że użytkownik wpisze 111111111, ale nie istnieje publicznie dostępna baza numerów, by móc stworzyć serwis, który będzie, to jeszcze dodatkowo sprawdzał (tworzyłem taki serwis do integracji z GUS, gdzie użytkownik podawał swój NIP). W odróżnieniu od pluginu Save User Phone Number tu mamy gwarancję, że jest to ciąg 9 liczb. Odpowiedź, czyli wprowadzony numer jest zapisany do do atrybutu {{numertelefonu}}.

💡 Nazwy atrybutów są widoczne tylko dla Ciebie i nie mają wpływu na działanie bota. Służą tylko temu, abyś w przyszłości wiedział, że pod danym atrybutem kryje się określona informacja.


  • Save


#3 Potwierdzenie wprowadzonych danych

Tak, więc to, co udało nam się zrobić to pobrać od użytkownika niezbędne informacje. Dodatkowo, pod pluginem Save User Input umieściłem blok tekstowym, w którym za pomocą atrybutów daję użytkownikowi możliwość sprawdzenia poprawności wprowadzonych danych, a za pomocą przycisków Quick Reply na ich ponowne wprowadzenie. Wygląda to tak:

  • Save
Konfiguracja bloku pod pluginem Save User Input.

Na końcu tekstów umieściłem 3 przyciski Quick Reply, za pomocą, których użytkownik może:

  • Tak, potwierdź ✅ – przycisk, który nie jest podłączony do żadnego bloku, ponieważ po jego kliknięciu konwersja zostanie poprowadzona po prostu w dół, gdzie umieścimy JSON API do przekazania zebranych danych.
  • Nie, popraw dane 🔁 – przycisk, który jest podłączony z blokiem pobieranie_danych, dzięki czemu użytkownik może poprawić i ponownie wprowadzić dane. Po jego kliknięciu zostanie przeniesiony do pytania z liczbą osób.
  • 🔙 Cofnij do menu – przycisk, który daje możliwości użytkownikowi do przejścia do menu głównego. Customer Experience, pamiętajmy.

💡 Zasada działania chatbotów i poszczególnych elementów jest zabawnie prosta. Całość działa zgodnie z zasadą „Od góry do dołu”, więc umieszczenie tekstu pod pluginem Save User Input sprawi, że zostanie on wyświetlony dopiero, gdy użytkownik odpowie na powyższe pytania, które umieściliśmy w pluginie Save User Input. Dzieje się tak, ponieważ niektóre elementy zatrzymują konwersację do momentu, gdy użytkownik nie wykona akcji. Tak samo działają przyciski typu Quick Reply.


#4 JSON API

Za pomocą pluginu JSON API możesz zintegrować Chatfuela i swojego bota z aplikacjami trzecimi, dzięki czemu możesz wymieniać pomiędzy aplikacjami dane. W naszym wypadku chcemy przekazać zebrane dane (zapisane do atrybutów) do serwisu Twilio, który poinformuje nas o chęci rezerwacji przez użytkownika wraz z zebranymi danymi. Tak jak wspomniałem, że nie musisz być programistą, bo w integracji pomoże nam narzędzie Integromat, a samo wysłanie dany poprzez JSON API z danymi (jak sam się przekonasz) nie jest takie trudne.

  • Save
Integracja Chatfuel z Twilio za pomocą narzędzia Integromat.

➡ Tak, więc na początku, jeżeli jeszcze nie masz to niezbędne jest założenie darmowego konta w serwisie Twilio oraz Integromat.

Tak, więc jeżeli konta założone to czas na konfigurację.

Przy okazji wytłumaczę Ci w jaki sposób wysyłać dane do tak naprawdę każdej innej aplikacji niż Twilio. Mam cichą nadzieję, że po przeczytaniu tej części poczujesz jak ogromne możliwości oferuje wykorzystanie integracji pomiędzy wieloma aplikacjami. No i naprawdę nie musisz potrafić programować.

Do dzieła.

#5 JSON API – konfiguracja

Cały czas jesteśmy w bloku pobieranie_danych, gdzie pod przyciskami Quick Reply umieść plugin JSON API. Postaram się maksymalnie krótko omówić, w jaki sposób będzie to działało. Turbo zależy mi na tym, abyś w pełni zrozumiał możliwości, które własnie się otwierają.

  • Save
Plugin JSON API do wysyłania/odbierania/przetwarzania danych.

Całość zasadniczo składa się z 3 głownych opcji, które nas interesując:

  • Metoda – JSON API oferuje wysyłanie danych (metoda POST), odbieranie danych (metoda GET). Jak zapewne się domyślasz, my chcemy wysłać dane, więc posłuży nam do tego metoda POST.
  • Webhook URL – to nic innego jak link za pomocą, którego aplikacje mogą się pomiędzy sobą komunikować. Tak w maksymalnym skrócie, ale nie ma sensu tu tego rozpisywać. Po prostu.
  • JSON – jest to nic innego jak format za pomocą, którego możesz wymieniać dane. Najważniejsze w integracji pomiędzy Chatfuelem a dowolną aplikacją jest dopasowanie formatu danych. Dokumentację JSON API do Chatfuela znajdziesz tutaj. Jest to o tyle ważne, że w przypadku, gdybyś chciał odebrać dane z np. Salesmanago lub innej aplikacji to zwrócone dane muszą być w formacie zgodnym z dokumentacją Chatfuela.

#6 JSON API – wysyłanie danych

  1. Wybierz metodę POST
  2. URL uzupełnimy w kolejnym kroku, ponieważ webhooka wygenerujemy za pomocą Integromatu.
  3. Wybierz JSON.
  4. Wysyłanie danych musi być zgodnych z dokumentacją, a w naszym wypadku JSON będzie wyglądał następująco:

{
"imie": "{{first name}}",
"liczbaosob": "{{rezerwacja_liczba}}",
"numer": "{{numertelefonu}}"
}

Pola:

  • „imie”,
  • „liczbaosob”,
  • „numer”

to nazwy własne, które będą widoczne w Integromacie (możesz je nazwać dowolnie, abyś wiedział, które pole przechowuje, którą daną), a obok nich jak już pewnie się domyślasz, pojawiają się atrybuty, do których zapisaliśmy dane za pomocą pluginu Save User Input – pamiętasz, prawda? Jeżeli zapisałbyś numer telefonu pod atrybut {{telefon}} to wtedy obok pola „numer” powinieneś wstawić {{telefon}}. Mam nadzieję, że teraz jest to dużo jaśniejsze, a przynajmniej czujesz motywację, by zacząć ten temat eksplorować dalej.

Jeżeli chciałbyś przekazać więcej danych to wystarczy, że dopiszesz kolejne linijki w tym formacie i wybierzesz odpowiednie atrybuty. W taki sposób zintegrujesz Chatfuela i swojego chatbota z każdą inną aplikacją trzecią np. systemem do e-mail marketingu. Jest bang?

💡 Ważne jest, że Messenger wymaga obsługi takich zapytań w ciągu 10 sekund. Tyle wynosi timeout. Oznacza to, że aplikacje pomiędzy sobą muszą zmieścić się w tym przedziale. W innym przypadku użytkownik zobaczy błąd, ale nie martw się. To dość egzotyczna sytuacja i jeżeli nie tworzysz bardzo rozbudowanej integracji to nie masz się czym martwić. Integromat obsługuje zapytania na poziomie 0,5-0,7 sekundy.

Mając tak skonfigurowany blok pobieranie_danych zostało nam wygenerowanie webhooka oraz stworzenie integracji z Twilio.

#6 Integromat

Otwórz swoje konto w Integromat. Na początek w zupełności wystarczy Ci wersja darmowa, która oferuje wykonanie 1000 operacji miesięcznie bez martwienia się o koszty. Po zalogowaniu kliknij Create a new scenario w prawym górnym rogu.

  • Save
Integromat – Twój klej do Internetu

Z listy dostępnych aplikacji wybierz Chatfuel oraz Twilio i kliknij Continue w prawym górnym rogu.

💡 Przeglądając listę aplikacji mam nadzieję, że zapaliła Ci się lampka jak wiele możliwości (lista dostępnych aplikacji) oferuje integrowanie chatbota z aplikacjami trzecimi.

  • Save
Integracja Chatfuel z Twilio.

#7 Integromat – webhook

Przed Tobą dashboard, gdzie stworzymy integrację pomiędzy Chatfuelem, a Twilio. Na początek wygenerujemy link do webhooka, który odbierze nasze dane z chatbota na Messengerze. Pokazuję to poniżej:

Wygenerowany link w Integromacie wprowadź w plugin JSON API i całość powinna prezentować się następująco:

  • Save

Teraz czas wysłać do Integromatu dane, abyśmy zobaczyli, które dane możemy przekazać dalej, czyli do Twilio. Wystarczy, że uruchomisz w Integromacie opcję Run once w lewym dolnym rogu, a następnie przetestujesz chatbota, tak jakby to robił użytkownik, czyli odpowiesz na pytania i podasz liczbę osób oraz zostawisz numer.

  • Save
Kliknij Run once, a następnie przejdź do chatfuela i uruchom swojego bota.

W Chatfuelu kliknij Test your chatbot i odpowiedz na pojawiające się pytania, które zbudowaliśmy.

  • Save
Opcja do testowania chatbota.

Po przejściu przez test bota w Integromacie powinieneś zobaczyć taki widok:

  • Save

Oznacza to, że właśnie wysłałeś z Chatfuela dane, które pozyskałeś i zapisałeś pod atrybutami. Jedyne co nam zostało to konfiguracja Twilio, która jest już dziecinnie prosta. Oto jak skonfigurować aplikację Twilio w Integromacie na podstawie przekazanych danych:

  • Save

Tłumacząc, to dane, które odebraliśmy z Chatfuela są dostępne z poziomu dynamicznych pól (pola na niebiesko: imie, liczbaosob, numer), a dla każdego użytkownika są dynamicznie podstawione.

W polu Recipient number wystarczy, że wprowadzisz np. swój numer telefonu i wtedy po wypełnieniu przez użytkownika rezerwacji otrzymasz wiadomość SMS.

Informacje potrzebne do integracji Twilio znajdziesz oczywiście w panelu, gdzie wystarczy, że skopiujesz ACCOUNT SID oraz AUTH TOKEN, a treść uzupełnić w polu Message.

  • Save
Daashboard w aplikacji Twilio.

No i mamy to! 🙌 SMS, który powinien przyjść na Twój numer telefonu wygląda następująco:

  • Save
Działająca integracja Chatfuel z Twilio.

Podsumowując

Powiem szczerze, że na podstawie tego wpisu jesteś w stanie budować przepotężne chatboty, bo zasada integracji za pomocą JSON API jest niemal identyczna dla wszystkich aplikacji. Niezależnie, czy będziesz integrował SMS, e-mail czy rozwiązania typu Cloudinary, a dodając do tego rozbudowane scenariusze (wiele aplikacji w jednym scenariusz) to uwierz mi, że świat jest Twój 💥.

Nie skłamię jak powiem, że znam osoby, które tytułują się specjalistami od chatbotów, a nie mają pojęcia, że są takie możliwości, nie wspominając o tym, że gdyby przyszło do wykonania takiego bota to powiedziałyby, że to niemożliwe. No, ale taka branża, bo dziś np. wystarczy skopiować jeden efekt AR, aby nazywać się specjalistą/specjalistką od rozszerzonej rzeczywistości.

Niemniej cieszę się, że udało się ten wpis napisać i przelać (będę nieskromny) dość spory kawał know-how. Sprawia mi to ogrom frajdy i od zawsze ceniłem sobie możliwość dzielenia się wiedzą. Gdyby nie ona to nic nie miałoby tu znaczenia, bo gramy o coś więcej niż puste lajki i klepanie „kolegów po fachu”.

Jeżeli jesteś ciekaw ile zajęło napisanie tego wpisu to wg. Toggl przekroczyłem 12 godzin faktycznej pracy. Samo stworzenie mechanizmu zajmie Ci ok. godziny.

  • Save
Toggl – narzędzie do pomiaru czasu pracy

Nie pozostaje mi nic innego jak życzyć udanych chatbotów 🙌🤖

Autor

Kiedyś myślałem, że będę trenerem tenisa ziemnego 🎾, ale uparłem się na marketing. Tak mi zostało do dziś. Zawodowo na swoim – buduję chatboty dla klientów. Tak wyszło, że od małego miałem słabość do technologii 🤖Zawsze #PROSTO, więc czasami zaskakuję sam siebie. Zresztą...

Podziel się co sądzisz

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

close
Thanks !

Thanks for sharing this, you are awesome !

25 Shares
Copy link