ArchLinuxからProwl通知

prowl.pl でコマンドラインから iPhone の Prowl にメッセージを送れるようにする

perl が入っていなければインストールする。

sudo pacman -S perl

LWP、httpsモジュールを追加。時間がかかるので気長に。

sudo perl -MCPAN -e shell
CPAN.pm requires configuration, but most of it can be done automatically.
If you answer 'no' below, you will enter an interactive dialog for each
configuration option instead.

Would you like to configure as much as possible automatically? [yes] yes↵
	:
Would you like me to automatically choose some CPAN mirror
sites for you? (This means connecting to the Internet) [yes] yes↵
	:
cpan[1]> install LWP↵
	:
cpan[2]> install LWP::Protocol:https↵
	:
cpan[3]> q↵
Terminal does not support GetHistory.
Lockfile removed.

※↵はエンターキー

prowl.pl でシェルやコマンドラインからメッセージ送信

prowl.pl をダウンロード。

cd /share/prowl
wget http://www.prowlapp.com/static/prowl.pl
sudo chmod +x prowl.pl

※prowl.plの場所は/share/prowlにしてありますがお好きな場所でどうぞ

Prowl の API Key をファイルに書き込む。

sudo vi apikey
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

お試しメッセージ送信

./prowl.pl -apikeyfile=apikey -priority=1 -event=TEST -notification="おためし"
Notification successfully posted.

iPhone の Prowl に通知されればOK。

TwiProwl で「ゆれくる」の地震ツイートをiPhoneへ通知させる。

rubyをインストールしておく

sudo pacman -S ruby

gemの設定

sudo vi /etc/gemrc
gem:  --user-install
        ↓
gem:  --no-user-install

アップデート

sudo gem update --system
sudo gem update bundler

ruby-hmac と oauth をインストール

sudo gem install ruby-hmac oauth

unzipが入っていなければインストール。

sudo pacman -S unzip

TwiProwlをダウンロードして解凍。

mkdir /share/prowl
cd /share/prowl
wget https://github.com/takuo/TwiProwl/archive/master.zip
unzip master.zip
mv TwiProwl-master TwiProwl
cd TwiProwl

※TwiProwlの場所は/share/prowl/TwiProwlにしてありますがお好きな場所でどうぞ

config.ymlを編集(Seqが 1 か final で、震度が 不明 か 3以上 の場合に通知する)

vi config.yml
    :
CAPath: /etc/ssl/certs     # コメント解除
    :
Prowl:
 APIKey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    # API Keyを記述
    :
Accounts:
    :
  User: example_username   # example_usernameを自分のアカウント名にする
    :
  RegexpMatch:             # この下に通知する条件を記述する
    -                      # 以下の例はSEQが1かfinalの場合で震度が3以上か不明の場合
      User: "yurekuru"
      Text: ".+SEQ:(1 |final ).+最大震度:(不明|[3-7])"
      Priority: 2
      Enable: true

twiprowlをカスタマイズ(設定ファイル等の場所をいじいってます)

vi twiprowl
#33行目を修正
#PIDFILE = File.join( ENV['HOME'], ".twiprowl.pid" )
PIDFILE = File.join( "/run/", "twiprowl.pid" )
	:
#84行目を修正
#pdbfile = File.join( ENV['HOME'], ".twiprowl.pdb" )
pdbfile = File.join( "/root/", ".twiprowl.pdb" )
	:
#309行目を修正
#file = File.join( ENV["HOME"] , ".twiprowl", url.path )
file = File.join( "/root/" , "twiprowl", url.path )
	:
#751行目をコメントアウト
#File.join( ENV['HOME'], '.twiprowl.conf' ),

一度 root で TwiProwl を起動

sudo ./twiprowl
LoadConf: /share/prowl/twiprowl/config.yml
All logs will be written into /tmp/twiprowl.log.
Enter the password for USER-NAME: 			←Twitterアカウントのパスワードを入力
** Processing OAuth authorization for USER-NAME... done.
Daemonized. PID=XXX
TwiProwl is running.

TwiProwl を-qオプションで終了

sudo ./twiprowl -q

サービスとして登録する

sudo vi /usr/lib/systemd/system/twiprowl.service
[Unit]
Description=TwiProwl Daemon
After=network.target

[Service]
Type=forking
PIDFile=/run/twiprowl.pid
ExecStart=/share/prowl/TwiProwl/twiprowl -c /share/prowl/TwiProwl/config.yml
ExecStop=/share/prowl/TwiProwl/twiprowl -q

[Install]
WantedBy=multi-user.target

サービスとして登録

sudo systemctl start twiprowl.service

systemctl コマンドでちゃんと動いているか確認

systemctl
UNIT LOAD ACTIVE SUB DESCRIPTION
        :
twiprowl.service loaded active running TwiProwl Daemon
        :

※loaded active running になってればOK

起動時に自動で起動するようにする。

sudo systemctl enable twiprowl.service

IMAProwl で新規メールの受信をiPhoneへ通知させる

cd /share/prowl
wget https://github.com/takuo/IMAProwl/archive/master.zip
unzip master.zip
mv IMAProwl-master IMAProwl
cd IMAProwl

※IMAProwlの場所は/share/prowl/IMAProwlにしてありますがお好きな場所でどうぞ

sudo vi config.yml
	:
LogDir: /tmp/                              # ログの場所を変更
	:
Prowl:
 APIKey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx    # ProwlのAPI Keyを記述
	:
Accounts:                                  # メールのアカウント情報を変更
	:

imaprowl.rbを少し修正

vi imaprowl.rb
#511行目をコメントアウト
#File.join( ENV['HOME'], '.imaprowl.conf' ),

サービスとして登録する

sudo vi /usr/lib/systemd/system/imaprowl.service
[Unit]
Description=IMAProwl Daemon
After=network.target

[Service]
Type=forking
ExecStart=/share/prowl/IMAProwl/imaprowl.rb -q -c /share/prowl/IMAProwl/config.yml
KillMode=process

[Install]
WantedBy=multi-user.target
sudo systemctl start imaprowl.service

ps コマンドでプロセスが動いているか確認

ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    :
root     30086  0.0  0.4  22424 10128 ?        Sl   05:11   0:00 IMAProwl/1.2.1.
    :

あとは設定したアカウントにメールを送ってiPhoneに通知が届けばOK。

起動時に自動で起動するようにする。

sudo systemctl enable imaprowl.service

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。