3
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Rails】LINEBotでPush送信

Last updated at Posted at 2020-09-12

概要

RailsからLineBotのPush送信します
以下のように、任意のタイミングで送信するやつです
Screenshot_20200912-131255.png

LINEBotの作成

記事がたくさんあるので、そちらを参照してください
例えば、以下のような記事があります

LINE BOTの作り方を世界一わかりやすく解説(1)【アカウント準備編】

RailsからLINEBotでPush送信

  1. Gemfileでライブラリline-bot-apiをインストールしておいてください
  2. ENV["LINE_CHANNEL_SECRET"]ENV["LINE_CHANNEL_TOKEN"]は、herokuなど、サーバ側で、設定する必要があります。この後、説明します
  3. 自分のuser_idは、チャンネル基本設定->あなたのユーザーID、から確認できます
  4. push_messageがlinebotでpush送信する部分です
linebot_controller.rb
class LinebotController < ApplicationController  
    require 'line/bot'  # gem 'line-bot-api'  
     
    def client  
      @client ||= Line::Bot::Client.new { |config|  
        config.channel_secret = ENV["LINE_CHANNEL_SECRET"]  
        config.channel_token = ENV["LINE_CHANNEL_TOKEN"]  
      }  
    end  
     
    def push
        
        message={
            type: 'text',
            text: "hello"
           }
        user_id =  '[送信先のLINEアカウントのユーザID]'
        response = client.push_message(user_id, message)
    end

  end  

Railsアプリをherokuにデプロイ

Railsアプリのデプロイの記事がたくさんあるので、そちらを参照してください
例えば、以下のような記事があります

HerokuにRailsアプリをデプロイする手順

この時、以下のように、チャネル基本設定->チャネルシークレット、Messaging API設定->チャネルアクセストークン、をherokuに必ず設定してください

$ heroku config:set LINE_CHANNEL_SECRET="[チャネルシークレット]"
$ heroku config:set LINE_CHANNEL_TOKEN="[チャネルアクセストークン]"

結果

herokuにデプロイした、Railsアプリのlinebot_controller.rbのアクションpushを実行します
以下のように「hello」がpush送信できました
Screenshot_20200912-131255.png

3
5
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
3
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?