Jak zbudować chatbota dla Messengera w PHP #1 – Przygotowanie serwera

W tym kursie zbudujemy od podstaw chatbota działającego w Messengerze. Chatbot będzie mógł przywitać rozmówce, odpowiedzieć na różne pytania i podać informacje (np. o pogodzie we wskazanym mieście). Do stworzenia bota skorzystamy z PHP, Gita i Heroku. Aby w pełni zrozumieć tę serię, powinieneś znać przynajmniej podstawy PHP. Reszta zostanie wytłumaczona w trakcie kursu.

Instalacja serwera

Do zbudowania chatbota będziemy potrzebować serwera, na którym umieścimy nasz skrypt. Właśnie z tym skryptem będzie się komunikował Facebook. Musimy tutaj zwrócić szczególną uwagę na obowiązek użycia protokołu HTTPS. Bez tego Facebook nie nawiąże połączenia z naszą aplikacją.

Jeśli posiadasz domenę z certyfikatem SSL, to możesz jej użyć. W tym poradniku skorzystamy z Heroku, który w darmowej wersji zupełnie nam wystarczy.

Rejestracja w Heroku

Przejdź na stronę rejestracji Heroku i wypełnij wymagane pola. Pole Primary Development Language ustaw na PHP. Utwórz konto.

heroku rejestracja

Na podany adres email zostanie przesłany link potwierdzający. Po kliknięciu ustaw hasło.

Instalacja Heroku CLI i Git

Zainstalowanie Heroku CLI i Git pozwoli nam kontrolować aplikację z poziomu konsoli cmd. Przejdź na tę stronę i pobierz wersję odpowiednią dla Twojego systemu operacyjnego. Jeśli nie instalowałeś wcześniej Git, to w instalacji zaznacz tę opcję:

instalacja heroku

Przejdź dalej. Automatycznie uruchomi się instalacja Git. Przejdź przez kolejne kroki instalacji aż do tego:

git cmd

W tym poradniku używam domyślnej konsoli cmd, więc zaznacz tę opcję i przejdź dalej.

Po zakończeniu instalacji przejdź do cmd i wpisz:

git --version

git version

W tym samym oknie konsoli wpisz:

heroku -v

heroku version

Jeśli otrzymałeś podobne informacje zwrotne – gratulację. Zakończyliśmy instalację potrzebnych narzędzi i możemy przejść dalej 🙂

Tworzenie aplikacji Heroku

W dowolnym miejscu stwórz nowy folder o nazwie chatbot i wewnątrz utwórz 2 puste pliki: webhook.php composer.json. Wewnątrz webhook.php umieść prosty kod PHP:

<?php
    echo "Aplikacja uruchomiona.";
?>

Jeśli nie chcesz tworzyć tych plików samodzielnie, to pobierz cały folder.

Otwórz konsolę i przejdź do nowo utworzonego folderu chatbot. W Windows możesz to zrobić przy użyciu komendy cd + ścieżka do katalogu.

wybór katalogu

Teraz zaloguj się do Heroku wpisując:

heroku login

Następnie podaj dane do utworzonego wcześniej konta Heroku. Hasło będzie niewidoczne podczas wpisywania.

heroku login

Wrzućmy teraz nasz prosty skrypt (wyświetlający komunikat „Aplikacja uruchomiona.”). W tym celu skorzystamy z Git. W konsoli wpisz:

git init

Następnie dodajemy wszystkie pliki:

git add .

I zatwierdzamy:

git commit -m "first commit"

git

Stwórzmy teraz nową aplikację Heroku.

heroku create

heroku app create

Od teraz nasza aplikacja jest dostępna pod adresem https://ancient-journey-50863.herokuapp.com (w Twoim przypadku ten link będzie inny). Możesz zauważyć, że korzystamy z HTTPS. Jeśli przejdziesz teraz na wygenerowany adres, to zobaczysz komunikat Heroku | Welcome to your new app!.

Możemy teraz przesłać przygotowane wcześniej zmiany do aplikacji. W konsoli wpisz:

git push heroku master

Podobny komunikat oznacza sukces:

push heroku

Upewnijmy się, że aplikacja działa:

heroku ps:scale web=1

app success

Wszystko działa poprawnie. Uruchamiamy aplikację:

heroku open

Otworzy się strona o wygenerowanym wcześniej adresie. Zobaczysz też komunikat Forbidden. Dzieje się tak dlatego, że nie posiadamy pliku index.php i aplikacja nie wczytuje żadnego skryptu. Do adresu (w moim przypadku https://ancient-journey-50863.herokuapp.com) dopisz /webhook.php (https://ancient-journey-50863.herokuapp.com/webhook.php).

Na tej stronie zobaczysz tekst „Aplikacja uruchomiona.”.

To zamyka pierwszą część tego kursu. Zainstalowaliśmy i skonfigurowaliśmy nasz serwer.  W kolejnej części stworzymy nową stronę Facebook i „nauczymy” bota odpowiadać na kilka pytań 🙂

Przejdź do kolejnej części tej serii.

Spodobał Ci się artykuł? Dzięki naciśnięciu serduszka poniżej będę wiedział jakie treści tworzyć. Dzięki! :)

Tworzenie gry przeglądarkowej – #7 Praca Tworzenie wtyczek WordPress – #2 Niestandardowe pola i Widget 10 przydatnych bibliotek PHP – marzec 2017
View Comments
Bądź pierwszą osobą, która skomentuje ten wpis.