1、到 https://nodejs.org/en/download/ 下載合適的node.js版本並安裝
2、到https://notepad-plus-plus.org/download/下載合適的notepad++版本並安裝
3、到https://devcenter.heroku.com/articles/heroku-cli下載heroku專用的上傳檔案的程式,並安裝
4、在D:建立一個bottest的資料夾(可自行命名)
5、在bottest這個資料夾,建立一個叫做package.json的純文字檔案(建議可安裝notepad++來編輯),檔案內容如下:
{ "name": "bottest", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "start": "node ." }, "author": "", "license": "ISC"}6、接下來要為node.js安裝一些和Line溝通的模組,找到Node.js的command,進入指令模式
7、Node.js和Line溝通,須要linebot和express這二個模組,必須要安裝,指令如下:
8、安裝完後,bottest資料夾底下,會多出一個叫node_modules的資料夾,原本的package.json這個檔案也會變成如下:
{ "name": "bottest", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "start": "node ." }, "author": "", "license": "ISC", "dependencies": { "express": "^4.15.3", "linebot": "^1.3.0" }}9、在bottest底下新增一個主程式,檔名叫做index.js,內容如下,請將申請LineBot時,取得的channelId、channelSecret及channelAccessToken三個資料,填入下面的內容中 (注意,引號不能刪掉),以下的程式,主要是使用者在Line上和LineBot對話,你說什麼話,LineBot就回你什麼話。
var linebot = require('linebot');var express = require('express');var bot = linebot({ channelId: '這裡改成自己Line的channelId', channelSecret: '這裡改成自己Line的channelSecret', channelAccessToken: '這裡改成自己Line的channelAccessToken'});//這一段的程式是專門處理當有人傳送文字訊息給LineBot時,我們的處理回應bot.on('message', function(event) { if (event.message.type = 'text') { var msg = event.message.text; //收到文字訊息時,直接把收到的訊息傳回去 event.reply(msg).then(function(data) { // 傳送訊息成功時,可在此寫程式碼 console.log(msg); }).catch(function(error) { // 傳送訊息失敗時,可在此寫程式碼 console.log('錯誤產生,錯誤碼:'+error); }); }});const app = express();const linebotParser = bot.parser();app.post('/', linebotParser);var server = app.listen(process.env.PORT || 8080, function() { var port = server.address().port; console.log('目前的port是', port);});10、接下來還要做一個文字檔案,檔名叫做「.gitignore」,(沒錯,最前面有個點,不要漏掉了),檔案裡面內容:
node_modules因為要能和LineBot溝通的伺服器比須能提供https的服務,而https服務的SSL憑證是要錢的,所以我們必須找一個網路上提供的免費程式空間並且提供https的伺服器來放置程式,像azure、koa或是現在要介紹的heroku。
1、進入heroku,https://www.heroku.com/,點選右上角sign up註冊。
填寫相關資料
程式語言選擇Node.js
勾選「我不是機器人」後,按下「CREATE FREE ACCOUNT」,便可申請免費程式空間
2、接下來請到自己的email信箱,點擊確認的連結點
3、設定密碼
4、設定好密碼,點擊出現的連結,便可進入heroku
5、畫面的右上角,點選'New',再點選'Create new app',開始建立程式空間
6、為您的app取一個名稱,您的網站程式空間的網址便會是
https://app名稱.herokuapp.com,例如 https://test123.herokuapp.com
7、將在申請LineBot時所取得的ChannelAccessToken和ChannelSecret在setting的頁面輸入
(請用複製的方式輸入資料,不要自己打字,以免打錯)
1、在window的功能表,找到Git→Git CMD進入命令列模式,輸入以下指令
(我以前上傳時不用執行以上兩行git config的命令,但是現在沒下這二個指令會出問題)
如此,便將自己電腦上寫好旳node.js程式上傳上去了
2、回到LineBot的設定畫面,接下來要把heroku放程式的網址,告訴LineBot(上面步驟6取得的網址)。按EDIT修改資料
3、將heroku建立app時取得的網址輸入Webhook URL欄位後,按SAVE。
4、依據下圖的步驟依序完成。下圖的QRCode的圖檔,請自行下載保留,才能讓別人掃瞄加入此好友。
5、用手機和剛加入的LineBot好友對話,隨便輸入什麼,它都會忠實回應回來。
附註:
heroku同一個帳號可以建很多個app,所以如果有不同功能的LineBot要建置,可以在heroku建立不同功能的app,但建好的app都有各自獨立的網址,在上面第3個步驟的Webhook URL必須要修改成相對應的app網址。