Help us understand the problem. What is going on with this article?

複数人にプッシュメッセージを簡単に送信するツール

はじめに

2019年春からMessagingAPIの料金プランが改定されてフリープランでもプッシュメッセージが利用出来るようになります。MessagingAPIはRESTAPIなのでcurlで叩けばすぐにプッシュメッセージを送信することは出来るのですが、複数人に送信するとなるとなかなか面倒臭いですし、一度に150人までしか送信することが出来ません。なので、userIdのリスト(CSVファイル)を読み込めば簡単にプッシュメッセージが送信できるツールを作成しました。

導入方法

  1. 任意の場所にフォルダをひとつ作り、そこでターミナル(Windowsの場合はcmd)を開きます image.png
  2. 以下のコマンドを入力してGitからツールのコードをクローンします

    git clone https://github.com/shinbunbun/Sending-Push-Message.git
    
  3. クローンが完了したら以下のコマンドを入力してディレクトリを移動します

    cd Sending-Push-Message
    
  4. 以下のコマンドを入力してモジュールをインストールします

    npm i
    
  5. 以上で環境構築は完了です

使い方

導入方法の時に使ったterminalをそのまま使用します

  1. 以下のコマンドを入力してサーバを立ち上げます

    node app.js
    
  2. 以下のような表示が出れば成功です

    Server running at http://localhost:3000
    
  3. http://localhost:3000 にアクセスして以下の画像のようなページが表示されたらOKです
    image.png

  4. 「AccessToken」という所にBotのアクセストークンを入力します(LINEDevelopersのBotのページから取得出来ます)
    image.png

  5. 「Choose File」を押して送信したいuserIdのリスト(CSV)を選択します
    ※CSVは以下の画像のような(各userIdを改行で区切るような)形式で作成してください

Excelで開くと
image.png
テキストエディタで開くと
image.png
6. 送信したいメッセージをMessagingAPIのリファレンスに載っているような形式のJSONで入力してください(こちらにサンプルを載せています)
7. 「submit」を押して送信完了です
image.png
8. 「result」という所にAPIから返ってきたレスポンスが表示されます。

※プッシュメッセージは一度に150人までしか送信する事が出来ないため、csvに150以上のuserIdが入っていた場合は150人ごとに分割してAPIを叩いています。
例えば500人に送信する場合は、「150人,150人,150人,50人」の4回に分けてAPIを叩くといった具合です。そのため、APIからのレスポンスもAPIを叩いた分だけ配列になって表示されます。先程の例でいうと[1回目のレス,2回目のレス,3回目のレス,4回目のレス]といった感じです。
メッセージ送信処理が正常に完了した場合は以下のようなレスポンスが返ってきます

#150人以下の人にメッセージを送信する場合
["{}"]
#150人以上の人にメッセージを送信する場合
["{}","{}","{}" ... "{}","{}"]

"{}" ではなく何か文字列が返ってきた場合はエラーとなりますので、入力した情報が正しいかご確認ください。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away