iT邦幫忙

2024 iThome 鐵人賽

DAY 5
0

在調整完架構後,終於可以準備讓 Line bot 成為我們的主要使用者介面了。

LINE Bot到底是什麼?

從服務的角度來說,LINE Bot就是大家熟悉的官方帳號(Official Account),而從技術的角度來說,它是一個建立在LINE Platform上的頻道(Channel)。

LINE Platform是什麼?

LINE Platform是一個後端平台,它整合並提供了各種LINE的相關服務給第三方應用程式或開發者。當使用者(User)傳送訊息給某個官方帳號時,實際上是傳送給LINE Platform上指定的頻道。

Messaging API的作用

Messaging API是LINE Platform發送的Webhook,或提供給開發者(以下簡稱Server端)的 API的統稱。Server端可以透過這些 API 和 LINE Platform溝通。
除了接收來自使用者的Webhook訊息以外,Server端還可以透過API去對指定的頻道進行多種操作。例如送出訊息,回覆訊息,或者取得向這個頻道發送訊息的使用者 ID等等。

LINE Bot運作原理

使用者傳訊息給LINE Bot
當使用者在手機或電腦上使用 LINE 傳訊息時,訊息實際上是透過 LINE 程式送到 LINE Platform 上的某個頻道。如果有設定好Webhook的目的端URL,LINE Plattform就會將訊息轉發到Server端。

Server端接收及回覆訊息

Server端可以收到LINE Platform 傳來的訊息。只要在API request,或者透過LINE Bot SDK指定好頻道,以及驗證需要的Token,就可以使用Message API將處理好的訊息交給LINE Platform,最後由它回覆給User。

簡單的原理如下 (圖來自官網)

https://ithelp.ithome.com.tw/upload/images/20240918/2010522739gnzcHMzR.png
使用者發送訊息 ➜ LINE Platform 收到訊息 ➜ LINE Platform 轉發Webhook訊息到 Server ➜ Server 處理並透過API回覆 ➜ LINE Platform 將回覆發送給使用者。

下一步:

了解原理後,下一步要做的是,從LINE Developers申請官方帳號 / 頻道,並且設定好這個頻道接收後要轉發的目的端。此外,還需要取得傳輸訊息所需的驗證資訊,才可以讓Server端到Client端的雙向溝通順利運作。
這些設定以及 Messaging的進一步介紹,我會在下一篇繼續說明。

Citation: https://developers.line.biz/en/docs/basics/channel-access-token/#what-is-channel


上一篇
架構描述: 技術考量
下一篇
LINE Bot 基本觀念: 官方帳號的建立流程 / 事件簡介
系列文
從零開始構建能理解語義的 Linebot 架構12
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言