https://twitter.com/sasairc_yasuna の中身。
844196_rengeを参考にさせて頂きました。
yasuna
とn_cipher
に加えて、perl5
で用いる下記ライブラリが必要です。
FindBin
YAML::Tiny
Net::OAuth
AnyEvent::Twitter
AnyEvent::Twitter::Stream
% cat <<EOF > config.yml
TWITTER_BOT_SCREEN_NAME: '@sasairc_yasuna'
TWITTER_CONSUMER_KEY: ''
TWITTER_CONSUMER_SECRET: ''
TWITTER_ACCESS_TOKEN: ''
TWITTER_ACCESS_TOKEN_SECRET: ''
EOF
% nohup ./reply.pl &!
まれにセッションが切断する場合、以下のように crontab へ登録して下さい。
27 8,20 * * * pkill -f 'reply.pl$'; /path/sasairc_yasuna/reply.pl > /dev/null 2>&1 &
0 * * * * /path/sasairc_yasuna/periodic.pl
一部機能に関しては、user.yml
のallow:
に含まれるユーザのみ使用することができます。
N暗号のシード及びデリミタの値は--seed="くそぅ" --delimiter="!"
です。
Command | Pattern | Description |
---|---|---|
encode STR |
encode\s(.+) | N暗号のエンコード |
decode STR |
decode\s(.+) | N暗号のデコード ※1 |
number INT |
(number|n)\s[0-9]+$ | 指定した番号INT の台詞を出力 |
version | version$ | yasunaのバージョンを出力 |
oudon | ^(お?うどん|o?udon)$ | @keep_off07さんにおうどん 🍜 をあげる ※2 |
osakana | ^(お?さかな|o?sakana)$ | @sasairc_2におさかな 🐟 をあげる |
uptime | uptime$ | 稼働システムのuptimeを通知する |
revision | revision$ | 稼働中スクリプトのリビジョンを通知する |
talk | talk(?:.*)\z | しゃべる |
※1 許可されたユーザのみ、デコード結果でリプライすることが可能。
※2 許可されたユーザのみ、おうどんをあげることができる。