LoginSignup
8

More than 5 years have passed since last update.

node.js + line notifyを使ってみた

Last updated at Posted at 2016-10-13

Line Notifyが出た!

Line Notifyが出たという記事

自分宛てとグループチャット宛に送れるようです。
この記事は自動テスト結果を受け取り、
テストが失敗だったらプギャーな画像をLINEに送りつけるというなかなかストイックな内容でした。

とりあえず普通に呼んでみる

curl -X POST -H 'Authorization: Bearer [token]' -F 'message=だが断る' https://notify-api.line.me/api/notify

tokenの部分はここからゲットしたものを使用してください。
これで指定したLINEグループか自分にだが断るというメッセージがLine Notifyから来ます。

だが断る。カッコイイですね。
ちなみに画像を付ける場合は下記のようにすれば送れました。

curl -X POST -H 'Authorization: Bearer [token]' -F 'message=だが断る' -F 'imageThumbnail=http://dagakotowaru.png' -F 'imageFullsize=http://dagakotowaru.png' https://notify-api.line.me/api/notify

imageThumbnailとimageFullsizeが別URLを指定できるので、
開いてみたら実は違う画像とかもできましたw

node.jsで組み合わせる

node.jsからcurlを呼び出すには下記2つの手段があります。
1. node-libcurlのパッケージを使う
2. 普通にnode.jsからcurlを実行する

node-libcurlはドキュメントが少ないのとレンサバのglibcのバージョンが古くて、
そもそも呼び出せなかったので、2でやりました。
おはようございます!とはてブから適当な記事リンクをツイートする
jsファイルを作っていたので、それを流用してLINE Notifyに投げるようにしました。

フィードから記事を解析とかは飛ばして、curlの実行部分はこんな感じです。
txtという変数にもろもろ入っています。

var exec = require('child_process').exec;
        exec("curl -X POST -H 'Authorization: Bearer [token]' -F 'message="+txt+"' https://notify-api.line.me/api/notify",
    function(){}
);
node line_hotentry.js

あとは普通に呼び出すとこんな感じでLINEが来ます。

Slack for iOS Upload-2.jpg

使ってみた感じ

curlで呼び出すだけなので、かんたんですね。スタンプとかも送れるとおもしろいかも。
普段から自分用に画像や天気予報、山手線情報など取得した情報を自分のメールに送っていましたが、
メールって普段使わないしなーと思っていたので、それらすべてLINE Notifyに送れるようになるのがうれしいですね。

以前読んだこの記事で、slackを家族用に・・・とあり、
真似したかったのですがslack導入の敷居が高く諦めてました。
LINEであれば、非エンジニアでもほとんど導入しているので、
家族用にbot導入にはちょうど良さそうですね。

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
8