iT邦幫忙

2024 iThome 鐵人賽

DAY 23
0

5-2-2 GAS to be webhook of LINE bot

https://ithelp.ithome.com.tw/upload/images/20240811/20046160fLPGf7wSUG.png
那 LNE Bot 的後端解決方案就直接請 LLMs 寫 範例程式

用 GAS 寫 LINE Bot

在 Google Apps Script (GAS) 上開發 LINE Bot 是一個有趣且強大的方式來利用雲端平台。以下是建立 LINE Bot 的基本步驟:

  1. 建立 LINE Messaging API 服務
    • 前往 LINE Developers Console
    • 創建一個新的提供者 (Provider) 和一個新的 Messaging API 渠道 (Channel)。
    • 記錄你的 Channel Secret 和 Channel Access Token。
  2. 設定 Google Apps Script 專案
  3. 撰寫程式碼
    • 在 Google Apps Script 編輯器中,撰寫以下程式碼來處理 LINE 的 Webhook 請求:
var LINE_CHANNEL_ACCESS_TOKEN = 'YOUR_CHANNEL_ACCESS_TOKEN'; // 請填入你的 Channel Access Token

function doPost(e) {
  var contents = JSON.parse(e.postData.contents);
  var events = contents.events;

  for (var i = 0; i < events.length; i++) {
    var event = events[i];
    if (event.type == 'message' && event.message.type == 'text') {
      var replyToken = event.replyToken;
      var userMessage = event.message.text;
      var replyMessage = handleUserMessage(userMessage);
      replyToUser(replyToken, replyMessage);
    }
  }
}

function handleUserMessage(message) {
  // 根據用戶消息進行處理,這裡簡單回覆相同消息
  return message;
}

function replyToUser(replyToken, message) {
  var url = '<https://api.line.me/v2/bot/message/reply>';
  var payload = {
    replyToken: replyToken,
    messages: [{
      type: 'text',
      text: message
    }]
  };

  var options = {
    method: 'post',
    headers: {
      'Content-Type': 'application/json',
      'Authorization': 'Bearer ' + LINE_CHANNEL_ACCESS_TOKEN
    },
    payload: JSON.stringify(payload)
  };

  UrlFetchApp.fetch(url, options);
}

  1. 部署 Web App
    • 在 Google Apps Script 編輯器中,點擊 部署 > 新部署
    • 選擇 Web 應用程式
    • 設定執行應用程式的人為 任何人
    • 部署並取得 Web App 的 URL。
  2. 設定 LINE Webhook
    • 回到 LINE Developers Console,在你的 Messaging API 頁面中找到 Webhook 設定。
    • 將 Webhook URL 設為剛才部署的 Google Apps Script Web App URL,並啟用 Webhook。
  3. 測試你的 LINE Bot
    • 在 LINE 中添加你的 Bot 為好友,並發送訊息以測試。

這些步驟應該能幫助你建立一個基本的 LINE Bot。如果你需要進一步的功能,如處理圖片、位置或其他類型的消息,可以擴展 handleUserMessage 函數以支援這些功能。

有需要進一步的細節或特定功能嗎?

測試

看能否作為 LINE Bot 後端解決方案

關於我

我是 Wolke。我是一名專業程式開發者,專長是開發 AI 和程式解決方案。

我投入了不少時間在專業發展上。我是多本書的作者,其中包括《LINE聊天機器人+AI+雲端+開源+程式:輕鬆入門到完整學習》《ChatGPT來襲,未來人人都需具備的運算思維!應用詠唱工程來釋放程式生產力—程式學習/開發篇》。也有出版線上課程,我熱衷於分享我的經驗和技術,幫助其他開發者更好地利用 AI 工具。

也在許多知名大學、論壇、社團擔任講者,如果貴方有需要也歡迎與我聯繫。
2023年 講座 紀錄

最後這篇文章若有切合你的需求,敬請訂閱按讚分享


上一篇
5-2-1 GAS call Gemini API
系列文
運用生成式 AI 服務 所提供的API 實做應用開發(以Gemini及ChatGPT為例)23
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言