💚

RubyでLINE公式アカウントのフォロワーにメッセージを送信する

2023/04/20に公開

この記事は

RubyでLINE公式アカウントのフォロワーにメッセージを送信する際に使用したコードを抜粋した。
ここで使用したAPIではユーザーを個別に指定してメッセージを送信できる。

使用するAPI

POST https://api.line.me/v2/bot/message/push
以下は公式ドキュメント
https://developers.line.biz/ja/reference/messaging-api/#send-push-message

送信対象

LINE公式アカウントを友だち追加しているユーザーなど
詳しくはドキュメントを参照

前提

gem 'line-bot-api'

事前にLINEのユーザーIDを取得する。

メッセージを送信する

module LineNotifier
  module_function

  def client
    @client ||= Line::Bot::Client.new do |config|
      config.channel_id = 'メッセージチャンネルのID'
      config.channel_secret = 'メッセージチャネルのシークレット'
      config.channel_token = 'メッセージチャネルのtoken'
    end
  end

  def push(user:, message:)
    line_id = user.line_user_id # LINEのユーザーIDを使用する
    return if line_id.blank?

    client.push_message(line_id, message)
  end
end

使い方

LineNotifier.push(user: user, message: 'hello')

Discussion