Node LINEBot 快速製作聊天機器人

Share This Post

Node x LINEBot 快速製作聊天機器人

LINEBot 架構

用戶傳送訊息給LINE官方帳號,由Platform負責接收,並且透過HTTP協定通知我們(伺服器),經過邏輯判斷再將結果以特定格式傳回Platform,最後顯示給使用者。

LINE Developers 後台設定

https://developers.line.biz/en/

點選右上角進行登入

登入成功後點選Create a new channel並選擇Messaging API

輸入帳號相關訊息後,按下Create會看到以下畫面

後台建立已完成

Node.js程式撰寫

建立一個空白的資料夾,並且輸入指令安裝套件

$ npm install linebot --save

linebot套件說明

https://github.com/boybundit/linebot

資料夾新增app.js檔案,並輸入範例程式碼

var linebot = require('linebot');

var bot = linebot({
  channelId: CHANNEL_ID,
  channelSecret: CHANNEL_SECRET,
  channelAccessToken: CHANNEL_ACCESS_TOKEN
});

bot.on('message', function (event) {
  event.reply(event.message.text).then(function (data) {
    // success
  }).catch(function (error) {
    // error
  });
});

bot.listen('/linewebhook', 3000);

程式碼第4.5.6行替換自己的Channel資訊

Basic Settings中可找到IDSECRET

Messaging API中可找到ACCESS_TOKEN

Ngrok測試LINEBot

https://ngrok.com/

點選Get started for free,進行登入與下載

完成後開啟Ngrok,並且依照網站上指示連接帳戶

$ ngrok authtoken <your token>

輸入以下指令產生公開的URL

$ ngrok.exe http 3000

回到程式碼部分啟動app.js

`$ node app.js

再回到LINE Developers新增產生的URL

Webhook URLNgrok產生的https網址加上app.js中的監聽路徑

並且將預設關閉的Use webhook開啟

可按下Verify確認是否有連接上

接著關閉LINE的自動回覆訊息

即可加入此帳號測試是否成功

全部展開回到頂部移至底部選擇 Repo

訂閱研究文章

Get updates and learn from the best

More To Explore

Scroll to Top

hurry up !

軟體工程師培訓

限時免費報名中

藉由與「真實世界軟體專案」相同的技術、工具與開發流程,化簡成與商業機密無關、門檻較低更容易上手的「模擬專案」,讓你有機會在職場前輩的陪伴下,完成真槍實彈的練習,動手解決真實的問題,快速累積個人的經驗與作品,而不只是「學習技術」而已。