Line bot 是 什麼

Line bot 是 什麼

前言:

各位好, 我是 LINE Taiwan 資深開發技術推廣工程師 – Evan Lin。 今天這篇文章為各位詳細解釋 「 LINE Bot 開發指南」這一份投影片文件。這一份文件是來自於 Development guidelines 的投影片,考量到在台灣還沒有正式的公布與中文化。這一次跟總部共同合作準備中文版本之外,並且特定用這一系列文章加以解釋,希望可以讓更多開發者有更多的了解。 Development guidelines 文件內容很多,本篇文章也將以六篇文章的篇幅來加以解釋。

文章索引:

完整投影片鏈結 

希望各位可以持續關注:

  1. 關於LINE Bot (本篇文章)
  2. 使用Webhook URL接收請求時的注意事項
  3. 發送 API 請求時的注意事項
  4. LINE Login
  5. LINE Login (補充)
  6. 其他相關功能

本篇文章將專注在第一個段落,也就是 Page 3 ~ Page 8 的部分。

LINE Developers 相關資源

這邊主要提到兩個網站,分別是:

  • LINE Developer Doc:
    • 負責存放所有的相關產品說明文件, API 詳細說明。
  • LINE Developer Console:
    • 這就是開發者稱為的控制台部分,跟官方帳號 (Official Account) 的後台不同,這邊主要是負責設定相關的開發資源。 不論是建立新的 Channel 或是新增,修改 LIFF App 都可以利用控制來完成。

這一張投影片解釋了一個使用者傳訊息給一個官方帳號後,訊息會如何透貴 LINE 的平台傳遞到開發者的(也就是圖上的客戶端)的 Bot 伺服器。 這邊表達了幾件事情:

  • 所有訊息都會透過 LINE 平台的 Talk 伺服器與 Channel Gateway 伺服器處理後傳給 「 Bot 伺服器」。訊息都是透過 Webhook 的方式傳遞,開發者只要依照官方文件開發好像關的 「Bot 伺服器」並且在登入好 webhook 的位置。就可以正確地收到訊息。
  • 開發者處理完訊息後,可以透過 API 的方式發送給 LINE Channel Gateway 。 會在依照相關的訊息發送人透過 Talk 伺服器來發送訊息。

相關的開發者文件可以參考:

  • Receiving messages (webhooks)
  • Sending messages

關於 LINE Bot 與 Channel 之間的相關性

這張投影片解釋了官方帳號與 Channel 之間的相關性,接下來將為讀者詳細解釋:

  • 首先使用者對於官方帳號(LINE Bot) 所做的所有動作,都有相關的訊息透過 Webhook 來傳給開發者的 LINE Bot 。
  • LINE Bot 收到訊息後,可以透過取得的 Access Token 來通過伺服器認證來發送訊息給使用者。
  • 透過 LINE Login 的認證部分也可以將使用者鏈結到相關 LINEE Bot 帳號。( e.g. 透過網路商城的第三方登入 LINE Login ,可以讓使用者登入網路商城後,也直接加入 LINE Bot )。
    • 相關部分可以參考文章:
      • 如何透過 Golang 開發 OAuth2 的 PKCE – 以 LINE Login 為例
      • 如何讓 Chatbot 透過 Account Link 來串接使用者體驗 。

此外,這一張投影片也希望帶給各位關於 Provider 的相關概念如下。同一個 Provider 底下的 Channel 拿到的使用者ID會是相同的,也就是 LINE Login 登入取得的使用者 ID 跟 LINE Bot 上面只要是同一個服務提供者(Service Provider) 是相同的。 也提醒 LINE Login 必須要發佈(Publish), 才能被所有人使用。(參考 開發者文件: Published LINE Login Channel ) 。

LINE Bot Glossary

關於 Glossary 部分,這邊講解了許多常被詢問的用字。這邊補充一些大家常用字詞。 大家可以針對這份上面的對照表尋找相關用語。 其實有更多的用字在 https://developers.line.biz/en/glossary/ 可以找到。

開發 LINE Bot 的開始步驟/發布前的確認事項

這邊分成兩塊,大家可以參考官方文件上的逐步解釋。

  • 在進行開發時: 建議可以參考一下官方文件的說明,這部分已經有中文化了。
    • 開始使用 Messaging API(中文)
    • 建立聊天機器人(中文)。
  • 發布給用戶之前,請務必檢查以下內容
    • 這邊有提到的相關資料鏈結如下:
      • BASIC TERMS AND CONDITIONS OF LINE SERVICES FOR BUSINESS PARTNERS
      • SPECIFIC TERMS AND CONDITIONS OF LINE SERVICES FOR BUSINESS PARTNERS - LINE POINT CONNECT
      • LINE@Messaging API使用條款
    • 在開發 LINE Bot 的時候請必須要注意到相關條款如下:
      • LINE 服務條款 建議開發者們必須要詳讀 「禁止條款」,避免 LINE Bot 踩到相關禁止條款。

這些相關補充事項,希望每一個開發者都能夠遵守。所有的資料也都請以官方網站的資料為準。

結論:

以上就是「LINE Bot 開發指南」第一部分的補充與分享,想要知道更多內容可以查看完整投影片,或是找到其他篇的文章來了解。

想了解更多開發者的活動? 立即加入「LINE 開發者官方社群」官方帳號,就能收到第一手 Meetup 活動,或與開發者計畫有關的最新消息的推播通知。▼

「LINE 開發者官方社群」官方帳號 ID:@line_tw_dev 

Line bot 是 什麼


  • 首頁

  • 標籤

  • 分類

  • 歸檔

發表於 2018-03-18 | 分類於 line |

Line bot 教學, 透過一連串的解說讓你快速打造自己的line bot

linebot教學-前言

Linebot 是line 在2016年推出的聊天機器人(Chatbot),類似的Chatbot 有FB Messenger、WeChat等等。
對於聊天機器人我們看Wiki的解釋。

聊天機器人泛指是經由對話或者文字進行交談的電腦程式

不少研究機構預測在2020年至少會超過一半以上的行動裝置搭載AI,其中Gartner更是預測行動裝置上會有40%以上的app
搭載Chatbot。科技的大浪推著我們前進,我們也來快速打造自己的linebot吧。

Linebot 申請

點我申請linebot

  1. 先上Line 官網申請帳號後,點上面連結開通Message API,也就是我們說的line bot
    這邊要提醒的是如果你把line@帳號開通message API 將失去1對1溝通的功能,建議直接新開一個Message API即可

  2. 在Select Provider這邊填入個人/組織名稱,我這邊填入”Freelance developers”,然後下一步

    Line bot 是 什麼
  3. 這邊要填入的資訊比較多,一個一個來講。
  4. 按照上面步驟建立完成後,即可看到新創好的bot,點畫面中箭頭的按鈕
  5. 再來會進入了Channel Setting的畫面,裡面有兩個重要的認證資訊我們要記起來
  6. channel secret 第一個重要的資訊,記起來,那是之後放在Webhook認證用的。
  7. Channel access token 畫面往下拉會看到這項,一開始空的,點擊Issue 按鈕產生token
  8. Issue token 我這邊選3小時,點擊後產生的token 要記起來,那是第二個重要的資訊
  9. 這邊進入正題了,來分別解釋一下各欄位的功用
    • Use webhooks: 這邊是選擇開啟/關閉 webhooks功能。
    • Webhook URL :這邊就是要給他一個網路位置,這個網路位置要求是https,加密的網路位置!!
    • Allow bot to join group chats: 這選項是指line bot 能不能加入群組。
  • Webwook 是甚麼,參見Wiki Webhook說明,簡單來說就是一個http 的callbacks。
    這樣講有點抽象可以想像成是一個接線生,專門接聽你指定或是任何的訊息,或是轉達。所以Webhook就是我們用來接聽來自line的訊息,
    然後傳給Line bot,Line bot 再根據訊息產生對應的動作再藉由這個Webhook傳回去給line,

    Line bot 佈署到 Heroku

到目前為止申請好了line bot,也設定好了,那麼就要來讓line bot 動起來。我們要給line bot 一個住的地方,佈署它讓它動起來
這邊我選擇Heroku,Heroku安裝可以參考先前的文章Heroku安裝使用教學。
直接參考以下指令

  1. 建立linebot 資料夾

    1
    2
    mkdir linebot_firts_project
    cd linebot_firts_project
  2. heroku 登入,打入帳號密碼

    1
    heroku login
  3. heroku 建立需要的應用程序 這邊我指定名子 mylinebot-eric-01,名字請讀者自行設定囉

    1
    heroku create "mylinebot-eric-01"
  4. 設定git config 名子跟信箱,並初始化資料夾

    1
    2
    3
    git config --global user.name "你的名字"
    git config --global user.emil "你的信箱"
    git init
  5. 將資料夾與 heroku 做連結,注意mylinebot-eric-01 請換成讀者自行設定的名子喔

    1
    heroku git:remote -a mylinebot-eric-01

將Github中的檔案放置linebot_firts_project這個資料夾,注意不要複製到.git

1
2
3
git add .
git commit -m "init"
git push heroku master

Heroku app 清單

  1. 點上方連結,就可以看到我們剛剛新增的應用程式了
  2. 設定Webhook 所需要的scret以及token
    點開新增的應用程式,這邊是mylinebot-eric-01,可以看到首頁,點擊settings 點擊Revea config,準備填入Webhook認證所需要的資訊 填入上面步驟 6、7 拿到的token,secret,注意key的名子 要跟 app.py相同(預設lineToken、lineSecret)
  3. 回到linebot網頁設定webhook url填入
    “yourHerokuAppName.herokuapp.com//callback”。
  4. 填入Webhook url後,趕緊加入你的line好友
  5. 直接測試,有回應就表示成功囉!! 這邊有看到bot 回了一串訊息”感謝您傳送訊息給我!…略”,這個是linebot 預設訊息只要進入官網關掉就可以
    官網位置
    進入官網後,找到bot,點左邊列表—>訊息—>自動回應訊息,關掉預設回覆訊息即可 恭喜,你的第一個line bot 完成了!!

整理所有流程

要完成line bot 要做以下步驟

  1. 先申請line bot 帳號並開通
  2. 記住channel secret以及channel token 待後續使用
  3. 安裝heroku Heroku安裝使用教學
  4. 上Github抓取line bot 初始所需要的檔案
  5. 依照指令一步一步做下去
  6. 在Heroku setting 填入token以及secret
  7. 在line bot 設定webhook url
  8. 加入Line bot 好友,測試成功!!

  • 文章連結: archives/c7f31b57.html
  • 版權聲明: 本網誌所有文章除特別聲明外,均採用 CC BY-NC-ND 4.0 許可協議。轉載請註明出處!