為什麼這篇LINE BOT 訂便當鄉民發文收入到精華區:因為在LINE BOT 訂便當這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者johnny9144 (Johnny)看板Soft_Job標題[心得] line bot aut...
最近有點忙,所以做完後到今天才補上文章~
跨年前在等待煙火時,因為等待時間有點長,所以又想起了之前曾經用
facebook message 製作的 ptt beauty 機器人,可以自動發送表特版上
面的圖片,但是因為臉書表示"表特版的圖違反善良風俗,希望能把message
api 用在更有意義的地方"(可能看到某人泳裝照?),所以一直不給通過...
http://i.imgur.com/OdSO5Wm.jpg

所以一直沒有公開,稍微查了一下,發現最近 Line bot又可以免費申請試玩
帳號,所以一放完煙火回家就迫不及待的開始製作
1.首先我們要到 https://business.line.me/zh-hant/用你原本的 Line 帳號
登入,並在上面的帳號清單裡面,申請建立商用帳號
http://i.imgur.com/WySfjlc.png

http://i.imgur.com/etDxF6p.png

2.再來就是重頭戲的地方,點選"前往LINE@MANAGER"後會看到以下畫面
http://i.imgur.com/WU6liDb.png

再跟使用者1:1對話了,不過不按確認就沒辦法繼續下去,還是得往下走,
再來會出現此畫面
http://i.imgur.com/UodGzio.png

接著同個頁面有個 "LINE Developers"可以點選(個人覺得很不明顯,當初找超久)
http://i.imgur.com/2wlODbs.png

http://i.imgur.com/hgsURF6.png

http://i.imgur.com/DVPUyZW.png

有找到他的list,但是不知道去哪了XD)
我個人是使用 https://www.sslforfree.com/ 取得的憑證,取得憑證他會需要
驗證你是不是這個主機的擁有者,他有三種方式前兩種都是必須要在 server上,
進行操作,我是直接使用第三種,直接在 DNS裡面加上 TXT record,然後就
可以取得 SSL憑證了。
3.至於怎麼加憑證到你自己的 server,就請自行 google了,使用 NodeJs的人,
可以參考。
4.再來就是圖片來源的方式,我是使用之前自己寫的另一個 npm crawler 模組,定時去
ptt beauty 版,把圖片連結儲存回來,詳情就不在這裡多做介紹。(有興趣可以
參考 https://www.npmjs.com/package/pttcrawler)
5.接下來就是 Bot的部分,Bot 的訊息傳送流程大概是像這樣
用戶傳訊息給 Bot -> Line Server -> 你的 Server -> Line Server -> 用戶
你的 callback Server 會收到 POST Request 然後會帶一組 json資料,裡面會包含
用戶傳送的內文或是觸發的 Event,以及 一組 "replyToken",這很重要!!
一組 replyToken 只能讓你對用戶進行一次操作( facebook messages只要知道用戶是誰
就可以對他主動發話),然後就可以參考
https://devdocs.line.me/en/#reply-message
看你想要回應怎麼樣的動作,document send-message-object 裡面有各種可以回應的
方式,任君挑選~ 我當然是回應圖片拉~~
完成後,只要用用手機 LINE 掃描前面提到的 LINE@MANAGER裡面的帳號設定的行動條碼
將自己的 Bot 加到自己的 LINE 好友,就會觸發第一種 Event 加入好友,
預設是會回應一些罐頭字串,可以在 LINE@MANAGER改掉,再來發送訊息或貼圖,
就可以開始跟自己的 Bot 對話拉~
做完抬頭才赫然發現竟然天亮了,好像差不多該去總統府升旗了?
6.接下來當然是要附上 Beauty Bot 的 QrCode
http://qr-official.line.me/L/4QChidDkJ_.png

就可以開始玩拉,吃飯、睡覺、工作之餘隨手來幾張美圖,心情暢快~
7. 附上 Githb 專案 https://github.com/johnny9144/beautyPtt
各位大神請手下留情,不要鞭太用力~
facebook 該 Bot 的 粉絲專業 https://www.facebook.com/pttBeautyAuto/
P.S 第一次加入該 Bot時,請使用手機,Bot會要求授權,用電腦好像會有問題
有寫錯或是少寫的地方還請各位大神補充~
祝大家新年快樂~都不要刷到"馬囧"圖!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.116.45.17
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1484237067.A.6C2.html
※ 編輯: johnny9144 (122.116.45.17), 01/13/2017 00:06:23
