読者です 読者をやめる 読者になる 読者になる

seri::diary

プログラミングのこととかポエムとか

とりあえずtwitter bot作った

PHP 作ってみた twitterAPI

特定のキーワードに反応してリプライするtwitter botを作ってみた。

『Enochbot』
https://twitter.com/#!/Enochbot

詳細は後でまとめるとして最低限の説明を。


1.bot概要
フォローしているユーザのツィートを定期的に取得し、
『大丈夫』『不安』『心配』というキーワードが含まれていたら
ランダムで選ばれた定型文をリプライする。

2.作成の目的
・twitterAPIの勉強
phpによるREST型API使用の練習
phpにおけるhttpリクエストの取り扱いの練習

3.bot機能概要
 2.1 TimeLine自動取得機能
 2.2 自動リプライ機能
 2.3 自動フォロー・リムーブ機能
 2.4 実行結果ログ出力機能

4.大体の処理フロー
 1 cronで2分毎に起動
 2 Botで使用するtwitterアカウント(@Enochbot)のTimeLineの最新差分を1件ずつ取得
 3 取得したTimeLineのつぶやきの中から特定ワードを含むツイートにリプライする
 4 取得したTimeLineのつぶやき分だけ2〜3を繰り返す


ホントは今後の機能拡張性を考えて、共通機能を部品化しようと思ったんだけど
考え出すとキリがないのと、とりあえずやってみた方が勉強になるだろうと思い
とりあえず完成版として上記機能だけを一つのファイルにベタ書きした持ったbotをリリースした。

なお、使用させて頂いたライブラリ、資料は以下の通り

■毎度おなじみAbraham Williams氏作成のtwitteroauthライブラリ
https://github.com/abraham/twitteroauth/blob/master/twitteroauth/twitteroauth.php

■いつもお世話になっているトメさんの資料、上記ライブラリのbot用拡張ライブラリ
http://www.sdn-project.net/labo/oauth.html

今回のbotを作るに当たって上記ライブラリの中身もちょいちょいいじらせて頂いた。


特記すべき事項があればソース乗っけてそのうちまた記事を書く予定。