Krótka instrukcja jak stworzyć własnego bota na Messengera
Na początku należy należy utworzyć nowy projekt node:
npm init
Następnie należy zainstalować express:
npm install express –save
Kolejny krok to utworzenie testowej aplikacji. Możesz przykładową aplikację pobrać stąd.
Następnie można uruchomić aplikację używając komendy:
node index.js
Aczkolwiek o wiele lepiej zainstalować najpierw Nodemon:
npm install -g nodemon
Dzięki czemu nasza aplikacja od razu po wprowadzeniu i zapisaniu zmian automatycznie się odświeży – nie będzie trzeba robić tego ręcznie.
Kolejna przydatna rzecz to ngrok. Pozwoli on na uzyskanie publicznego URL dla naszego serwera lokalnego (publiczny url jest wymagany, żeby utworzyć aplikację). Po zainstalowaniu wystarczy wpisać komendę, która wskaże, z którego lokalnego portu chcemy uzyskać url:
ngrok http 3000
Następnie zostanie nam przedstawiona w konsoli informacja dotycząca adresu, na który jest „przekazywana” nasz aplikacja.
Od strony facebooka najpierw należy wpisać nazwę aplikacji i podać maila:
Następnie potwierdzić kodem:
Kolejny krok to wybranie produktu – w naszym przypadku będzie to Messenger.
Później czas na generację tokenu:
Następnie przechodzimy do konfiguracji Webhooka:
Wpisujemy podany wcześniej w konsoli url do aplikacji (https!), nie zapominając o dopisaniu /webhook na końcu. Poniżej uzupełniamy pole tokenu wygenerowanym wcześniej tokenem i wybieramy odpowiednie pola subskrypcji:
I w sumie to tyle.
Jak wyglądają wyniki pracy?
Użytkownik pisze komendę Witaj i otrzymuje odpowiedź:
Konkretne opcje zostały przedstawione poniżej:
- Programowanie
- Gry planszowe
część pierwsza:
i część druga:
- Wydarzenia
- Pożegnanie
Skoro udało mi się stworzyć takiego fajnego bota, stwierdziłam, że się nim pochwalę. Uruchomiłam go dla mojej strony na facebooku, przetestowałam i ogłosiłam światu super nowinę – pogadajcie z moim botem. I co?
No właśnie – okazało się, że nie działa. A raczej działa, ale tylko mi, lokalnie. Facebook ma specjalne ograniczenia i trzeba uzupełnić parę ważnych informacji dotyczących aplikacji (Polityka prywatności i inne) oraz grzecznie poczekać na jej akceptację 😦
Cały kod w głównej mierze opiera się na przykładzie przedstawionym na warsztatach Mateusza Ostafil. Jego repozytorium z oryginalną aplikacją jest dostępne tutaj, wraz z wszelkimi ważnymi informacjami.
Przydatny link:
https://developers.facebook.com/docs/messenger-platform/getting-started/quick-start czyli dokumentacja dotycząca integracji z Messengerem.
Podoba Ci się to, co tworzę? Chcesz dostawać informacje o:
– wydarzeniach, które organizuję lub wspieram (np. konferencje, meetupy, webinary)
– inicjatywach, które organizuję lub wspieram (np. GeekWeekWro, DevAdventCalendar)
– moich prelekcjach, kursach i szkoleniach
– wyróżnionych artykułach z mojego bloga
0% SPAMu, 100% informacji! Krótko i na temat.