1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

API Lab for LINE WORKSAdvent Calendar 2024

Day 4

LINE WORKS API メッセージ送信 ユーザー指定 テキスト

Last updated at Posted at 2024-12-03

LINE WORKS API を使用してユーザーにメッセージを送信する

この記事では、LINE WORKS API を使用して、特定のユーザーにテキストメッセージを送信する方法を解説します。

以下の URL で Google Colab を使って簡単に試せます。
https://colab.research.google.com/drive/1qS2v4r5YDbfX4Zd8iVm_XiswFQUpJBwD?usp=sharing

必要な準備

  1. LINE WORKS Developer Console での設定

    • Bot を作成し、Bot ID を取得します。
    • Bot を対象ユーザーにメッセージ送信可能な状態に設定します。
  2. ユーザー ID の取得

    • LINE WORKS の管理画面で userId を確認します。ユーザーのログイン ID やメールアドレス形式で指定可能です。
  3. Access Token の発行

    • LINE WORKS API を使用するためのアクセストークンを取得します。

スクリプト

以下のスクリプトを使用して、特定のユーザーにテキストメッセージを送信します。

import requests
import json

# 必要な変数を入力
ACCESS_TOKEN = "YOUR_ACCESS_TOKEN"  # @param {type:"string"}
BOT_ID = 2000001  # @param {type:"integer"}
USER_ID = "userf7da-f82c-4284-13e7-030f3b4c756x"  # @param {type:"string"}

# API エンドポイント
API_URL = f"https://www.worksapis.com/v1.0/bots/{BOT_ID}/users/{USER_ID}/messages"

# メッセージの内容
message_content = {
    "content": {
        "type": "text",
        "text": "こんにちは、これは特定のユーザーへのテストメッセージです!"
    }
}

# HTTP ヘッダー
headers = {
    "Authorization": f"Bearer {ACCESS_TOKEN}",
    "Content-Type": "application/json"
}

# POST リクエストの送信
response = requests.post(API_URL, headers=headers, data=json.dumps(message_content))

# レスポンスの確認
if response.status_code == 201:
    print("メッセージが正常に送信されました!")
else:
    print(f"エラーが発生しました: {response.status_code}")
    print(response.text)

スクリプトのポイント

必要なパラメータ

  1. ACCESS_TOKEN

    • LINE WORKS API の認証に使用されるアクセストークンです。
  2. BOT_ID

    • 使用する Bot の ID です。LINE WORKS Developer Console から取得できます。
  3. USER_ID

    • メッセージを送信する対象のユーザー ID です。
    • ユーザーのログイン ID やメールアドレス形式で指定可能です。

メッセージの構造

送信するメッセージは以下の形式を取ります。

  • type
    • メッセージのタイプを指定します(例: text)。
  • text
    • 実際に送信するテキストメッセージを指定します。

例:

{
  "content": {
    "type": "text",
    "text": "こんにちは、これは特定のユーザーへのテストメッセージです!"
  }
}

レスポンス例

成功時:

メッセージが正常に送信されました!

失敗時:
アクセストークンが無効な場合:

エラーが発生しました: 401 {"error":"Unauthorized","error_description":"Invalid access token"}

応用

  • 多言語対応

    • i18nTexts プロパティを追加することで、メンバーの言語設定に応じたメッセージを送信できます。
  • 他のメッセージタイプ

    • テキスト以外のメッセージ(スタンプ、テンプレートなど)にも対応可能です。

まとめ

このスクリプトを使用すれば、LINE WORKS API を使ったユーザーへのメッセージ送信を簡単に行えます。ぜひ試してみてください!

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?