fbpx

這篇文章適合誰及需先具備哪些知識

這篇文章適合之前對於Laravel及PHP有基礎認識,並想了解Botman,利用Botman來製作messenger聊天機器人的使用者。

Laravel文件參考:

在開始之前,你必須達到以下幾點

  • PHP的版本至少達到7
  • 確定Laravel的環境安裝完成
  • 確定Laravel Valet安裝完成
  • 創建一個Facebook的粉絲專頁
  • 創建一個Facebook App並指向剛剛創建的粉專

Botman是什麼

BotMan是一個PHP聊天機器人框架,可以讓我們製作Facebook Messenger聊天機器人。也可以在不同消息平台製作機器人,例如:Slack,Telegram,Nexmo,HipChat,Facebook Messenger以及微信等等。

流程:

BotMan Studio

透過下面的指令去建置Botman Studio

composer global require “botman/installer”

並使用以下指令去創建專案

botman new botman-facebook

再來可以去瀏覽器輸入“專案名.test“查看是否可以顯示Botman的頁面

(這裡有一點需要注意,官網教學是寫“專案名.dev”,不過dev已經不能用了)

配置BotMan Studio

使用以下指令去設定driver

php artisan botman:install-driver facebook

之後可以藉由以下指令去查看是不是設定完成,可以看到的Facebook被打勾

php artisan botman:list-drivers

再來把以下三行程式碼放入你的專案.ENV檔裡

FACEBOOK_TOKEN = YOUR_APP_FACEBOOK_PAGE_TOKEN

FACEBOOK_APP_SECRET = YOUR_APP_SECRET

FACEBOOK_VERIFICATION = YOUR_VERIFICATION

設置Facebook App

選擇先前設定的粉絲專頁,把得到的驗證權杖貼回.ENV檔裡的FACEBOOK_TOKEN

設定webhook,回呼網址是用你在本機端輸入valet share之後所得到的網址(選擇https://的網址)並將訂閱欄位messages 跟messaging_postbacks打勾,驗證權杖貼回.env檔裡的FACEBOOK_VERIFICATION,這裡需要注意的是所得到的回呼網址後面需加上/botman

之後就可以測試去messenger測試一下自己做的機器人拉~

看完以上的課程教學是不是覺得沒有很難,但也有些細節要注意喔,下面就整理一些當初在製作過程所遇到的一些細節〜

Laravel Valet設定

如果沒有設定好的話回呼網址在facebook頁面那邊是無法通過的

這裡的問題是因為valet 無法找到你的專案,所以你所分享的網址沒辦法被找到,在網頁上輸入”專案名.test會顯示404-not found,而你可以用以下方法去設定你的valet:

  • 確定PATH路徑設定正確
  • 你的專案資料夾必須儲存在一個資料夾中,valet park指令要在你專案所在的那個資料夾輸入(例如你的專案名叫做facebook bot,你需要把整個facebook bot的資料夾放入令外一個資料夾,假設叫做messenger,此時你需要在messenger的那一層輸入valet park,這樣valet才有辦法找到你的專案)
  • 再來使用ping 專案名.test查看有沒有東西跳出來,並在網頁上輸入專案名.test查看有沒有跳出Botman的頁面,如果有的話你的回呼網址設定就會通過摟~

文章重點

  • Laravel Valet相關設定要特別注意
  • 在瀏覽器上尋找自己的專案時,記得是“專案名.test”(官網是寫.dev)
  • 回呼網址記得後面要加/botman

結語

當初在製作這個專案的過程中其實沒有很順利,常常找不到錯誤的地方在哪裡,也來回嘗試了很多次,需要有耐心反覆查看錯誤的點,網路上也有很多教程可以參考,大家可以多搜尋自己適合的教學文章,也可以多跟其他人分享自己所遇到的問題,因為你的問題很可能別人剛好也遇到,多利用網路社群,多跟他人討論,問題可能就因此迎刃而解。

相關參考資料

One Comment

Leave a Reply