第30回:「twittbot」サーバからの脱却!第2回
第28回:「twittbot」サーバからの脱却!第1回の続きです。
【ご依頼内容】
現在運用中の「twittbot」サーバを止めて、自前で「bot」サーバに移行したい。

、、、というわけで、前回までは、
・Botプログラム選定 ⇒ EasyBotter
・サーバ選定 ⇒ さくらインターネットサーバ
まで行いました。
今回は、EasyBotter のインストールです。
といっても、CD-ROMからインストール、、、という訳ではないので、多少Webの知識が必要になってきます。まずは、準備として、、、
Twitterアカウントの登録
当たり前ですが、Bot用のTwitterアカウントを準備します。
こちらは、普通にTwitterアカウントを作れば問題ありません。
OAuth認証キーの取得
以下のサイトより、OAuth認証キーを取得します。
https://dev.twitter.com/apps
(注意 Default Access typeでRead&Writeにチェックを入れます。)
取得したら、以下のキーをメモしておきます。
・$consumer_key
・$consumer_secret
・$access_token
・$access_token_secret
テキストエディタの準備
「文字コード:UTF-8、改行コード LF」を確認・指定できるもを選んで下さい。
私の場合は、秀丸を使います。
FTPソフトの準備
EasyBotterをサーバーへアップロードする為に必要です。
私の場合は、FFFTPを使います。
EasyBotterのダウンロード
今回の目玉となるプログラム本体EasyBotterをダウンロードします。
ダウンロードは、以下のサイトから無料でダウンロードできます。
http://pha22.net/twitterbot/
私がダウンロードした時、バージョンは、2.0.5 でしたが、最新版のバージョンは、2.1.2(2013.1.9)です。ここでは、2.0.5 で話を進めていきますので、最新版と違う箇所は、適当に読み換えて下さい。
いよいよ準備開始です!
必要なファイルの編集
基本的なことは、こちらで説明してある通りです。まずは、一通り読んでみて下さい。
http://pha22.net/twitterbot/
使いたい機能、投稿したい文章、返答したい文言などは、後から自由に決められます。
大切なことは、最低限動かせることを確認してからの方が良いと思います。
プログラミングだけでなく、どんな場合でも、基本をまず出来るようになってからでないと、予想外の事が起きた時に、原因の切り分けや対応が非常に難しくなります。何事も基本に忠実に、、、
ここでは、最低限忘れないで欲しいことだけ書きます。
setting.php編集
先に準備した認証キーを記述します。
具体的には、「setting.php」をエディタで開いて、以下の記述を編集します。
この時、「文字コード:UTF-8、改行コード LF」に気を付けて下さい。
(文字コード/改行コードは、ご利用のエディタソフトの説明書を見ましょう!)
//設定
$screen_name = "◆◆◆◆◆◆◆◆◆◆"; //botのid名
$consumer_key = "◆◆◆◆◆◆◆◆◆◆"; // Consumer keyの値
$consumer_secret = "◆◆◆◆◆◆◆◆◆◆"; // Consumer secretの値
$access_token = "◆◆◆◆◆◆◆◆◆◆"; // Access Tokenの値
$access_token_secret = "◆◆◆◆◆◆◆◆◆◆"; // Access Token Secretの値
EasyBotter.phpの編集⇒APIを最新版に変更
EasyBotterは、API「TwitterAPI」を利用して動作します。
APIは「Application Program Interface」の略で、要は共通プログラムと考えて下さい。
プログラム自体は、Twitter側にあるので関係ないですが、そのプログラムを呼び出す側、つまり自分のプログラムを最新版のインターフェースに合わせてあげる必要があります。
具体的には、「EasyBotter.php」をエディタで開いて、以下の記述を編集します。
この時も、「文字コード:UTF-8、改行コード LF」に気を付けて下さい。
https://twitter.com/statuses/update.xml
↓
http://api.twitter.com/1/statuses/update.xml
http://twitter.com/statuses/friends_timeline.xml
↓
http://api.twitter.com/1/statuses/friends_timeline.xml
http://twitter.com/statuses/replies.xml
↓
http://api.twitter.com/1/statuses/mentions.xml
http://twitter.com/statuses/friends.xml
↓
http://api.twitter.com/1/statuses/friends.xml
http://twitter.com/statuses/followers.xml
↓
http://api.twitter.com/1/statuses/followers.xml
http://twitter.com/friendships/create/".$screen_name.".xml
↓
http://api.twitter.com/1/friendships/create/".$screen_name.".xml
EasyBotterのアップロード
編集したファイルも含めて、準備したWebサイトにアップロードします。
あらかじめ、「twitbot」フォルダなどを作成しておき、そこにまとめてアップロードする方が、管理上良いと思います。
この時、転送方法は、アスキーモードで転送することに注意して下さい。
(転送方法は、ご利用のFTPソフトの説明書を見ましょう!)
パーミッションの変更
最後に、アップロードしたファイルのパーミッションを変更します。
・datファイル(ログファイル)
・phpファイル ⇒ こちらは変えなくても大丈夫かも!?
パーミッション値は各サーバによって違うので、そちらをお読み下さい。
いよいよテスト!
ブラウザから、bot.phpにアクセスしてみて下さい。
白いページに「2分以内に受け取った@はないようです。」などと表示されれば正常です!
(英語で意味不明な文字列が表示された場合、PHPエラーが発生しています。
今までやったところに間違いが無いか、よく確認してみて下さい。)
おめでとうございます!
ここまでで環境は整いました。あとは利用する機能や文言、実行時間など、それぞれの仕様に合わせてカスタマイズして、運用していくことになります。

と、この記事もここで一応終了となりますが、気が向いたら、さくらインターネットサーバで、cronの複数実行(6個以上)なども、追記したいと思います。
そもそも、複数アカウントを自分で運用出来るようにすることが、本案件の目的だったので、、、
最後に
やってみてわかったことですが、EasyBotterは、名前の通り、必要な機能が盛込まれており、
一から自分でプログラムを組むよりは、はるかに効率的(Easy)です。
ただし、Webの一般的な知識や、プログラミングの知識も、ある程度は要求されます。
カスタマイズするとなると、初心者の方には、Easyではありません。(私はとても楽しいですが)
余談ですが、弊社では、
パソコンの相談/購入/設定から、パソコン修理、パソコン教室
を行っておりますが、
ソフトウェア開発/ITサポート
も行なっております。どちらかというと、ソフトウェア開発/SEの方が経歴が長いです。
もともと、ソフトウェア畑出身なので、
ホストコンピュータ(COBOL、Fortran)
クライアント・サーバ(VB、VB.Net、ExcelVBA、Oracle、SQLServer、Access)
Webアプリ(.Net、Javaはちょこっと、、、)
などなど、細かいものを入れればきりがないですが、色々と経験しております。
個人様/企業様を問わず、困ったときは、お気軽にご相談下さい。
追記
第31回:「twittbot」サーバからの脱却!第3回「CRON複数設定」
【宣伝・・・(*´ω`)】

システム葵では、個人様向けでも企業様向けでも、パソコン修理から、パソコン設定、パソコンの使い方、LAN環境構築、ソフトウェア開発まで、様々な実績がありますので、困ったことがあれば、お気軽にご相談下さい。
【ご依頼内容】
現在運用中の「twittbot」サーバを止めて、自前で「bot」サーバに移行したい。

、、、というわけで、前回までは、
・Botプログラム選定 ⇒ EasyBotter
・サーバ選定 ⇒ さくらインターネットサーバ
まで行いました。
今回は、EasyBotter のインストールです。
といっても、CD-ROMからインストール、、、という訳ではないので、多少Webの知識が必要になってきます。まずは、準備として、、、
Twitterアカウントの登録
当たり前ですが、Bot用のTwitterアカウントを準備します。
こちらは、普通にTwitterアカウントを作れば問題ありません。
OAuth認証キーの取得
以下のサイトより、OAuth認証キーを取得します。
https://dev.twitter.com/apps
(注意 Default Access typeでRead&Writeにチェックを入れます。)
取得したら、以下のキーをメモしておきます。
・$consumer_key
・$consumer_secret
・$access_token
・$access_token_secret
テキストエディタの準備
「文字コード:UTF-8、改行コード LF」を確認・指定できるもを選んで下さい。
私の場合は、秀丸を使います。
FTPソフトの準備
EasyBotterをサーバーへアップロードする為に必要です。
私の場合は、FFFTPを使います。
EasyBotterのダウンロード
今回の目玉となるプログラム本体EasyBotterをダウンロードします。
ダウンロードは、以下のサイトから無料でダウンロードできます。
http://pha22.net/twitterbot/
私がダウンロードした時、バージョンは、2.0.5 でしたが、最新版のバージョンは、2.1.2(2013.1.9)です。ここでは、2.0.5 で話を進めていきますので、最新版と違う箇所は、適当に読み換えて下さい。
いよいよ準備開始です!
必要なファイルの編集
基本的なことは、こちらで説明してある通りです。まずは、一通り読んでみて下さい。
http://pha22.net/twitterbot/
使いたい機能、投稿したい文章、返答したい文言などは、後から自由に決められます。
大切なことは、最低限動かせることを確認してからの方が良いと思います。
プログラミングだけでなく、どんな場合でも、基本をまず出来るようになってからでないと、予想外の事が起きた時に、原因の切り分けや対応が非常に難しくなります。何事も基本に忠実に、、、
ここでは、最低限忘れないで欲しいことだけ書きます。
setting.php編集
先に準備した認証キーを記述します。
具体的には、「setting.php」をエディタで開いて、以下の記述を編集します。
この時、「文字コード:UTF-8、改行コード LF」に気を付けて下さい。
(文字コード/改行コードは、ご利用のエディタソフトの説明書を見ましょう!)
//設定
$screen_name = "◆◆◆◆◆◆◆◆◆◆"; //botのid名
$consumer_key = "◆◆◆◆◆◆◆◆◆◆"; // Consumer keyの値
$consumer_secret = "◆◆◆◆◆◆◆◆◆◆"; // Consumer secretの値
$access_token = "◆◆◆◆◆◆◆◆◆◆"; // Access Tokenの値
$access_token_secret = "◆◆◆◆◆◆◆◆◆◆"; // Access Token Secretの値
EasyBotter.phpの編集⇒APIを最新版に変更
EasyBotterは、API「TwitterAPI」を利用して動作します。
APIは「Application Program Interface」の略で、要は共通プログラムと考えて下さい。
プログラム自体は、Twitter側にあるので関係ないですが、そのプログラムを呼び出す側、つまり自分のプログラムを最新版のインターフェースに合わせてあげる必要があります。
具体的には、「EasyBotter.php」をエディタで開いて、以下の記述を編集します。
この時も、「文字コード:UTF-8、改行コード LF」に気を付けて下さい。
https://twitter.com/statuses/update.xml
↓
http://api.twitter.com/1/statuses/update.xml
http://twitter.com/statuses/friends_timeline.xml
↓
http://api.twitter.com/1/statuses/friends_timeline.xml
http://twitter.com/statuses/replies.xml
↓
http://api.twitter.com/1/statuses/mentions.xml
http://twitter.com/statuses/friends.xml
↓
http://api.twitter.com/1/statuses/friends.xml
http://twitter.com/statuses/followers.xml
↓
http://api.twitter.com/1/statuses/followers.xml
http://twitter.com/friendships/create/".$screen_name.".xml
↓
http://api.twitter.com/1/friendships/create/".$screen_name.".xml
EasyBotterのアップロード
編集したファイルも含めて、準備したWebサイトにアップロードします。
あらかじめ、「twitbot」フォルダなどを作成しておき、そこにまとめてアップロードする方が、管理上良いと思います。
この時、転送方法は、アスキーモードで転送することに注意して下さい。
(転送方法は、ご利用のFTPソフトの説明書を見ましょう!)
パーミッションの変更
最後に、アップロードしたファイルのパーミッションを変更します。
・datファイル(ログファイル)
・phpファイル ⇒ こちらは変えなくても大丈夫かも!?
パーミッション値は各サーバによって違うので、そちらをお読み下さい。
いよいよテスト!
ブラウザから、bot.phpにアクセスしてみて下さい。
白いページに「2分以内に受け取った@はないようです。」などと表示されれば正常です!
(英語で意味不明な文字列が表示された場合、PHPエラーが発生しています。
今までやったところに間違いが無いか、よく確認してみて下さい。)
おめでとうございます!
ここまでで環境は整いました。あとは利用する機能や文言、実行時間など、それぞれの仕様に合わせてカスタマイズして、運用していくことになります。

と、この記事もここで一応終了となりますが、気が向いたら、さくらインターネットサーバで、cronの複数実行(6個以上)なども、追記したいと思います。
そもそも、複数アカウントを自分で運用出来るようにすることが、本案件の目的だったので、、、
最後に
やってみてわかったことですが、EasyBotterは、名前の通り、必要な機能が盛込まれており、
一から自分でプログラムを組むよりは、はるかに効率的(Easy)です。
ただし、Webの一般的な知識や、プログラミングの知識も、ある程度は要求されます。
カスタマイズするとなると、初心者の方には、Easyではありません。(私はとても楽しいですが)
余談ですが、弊社では、
パソコンの相談/購入/設定から、パソコン修理、パソコン教室
を行っておりますが、
ソフトウェア開発/ITサポート
も行なっております。どちらかというと、ソフトウェア開発/SEの方が経歴が長いです。
もともと、ソフトウェア畑出身なので、
ホストコンピュータ(COBOL、Fortran)
クライアント・サーバ(VB、VB.Net、ExcelVBA、Oracle、SQLServer、Access)
Webアプリ(.Net、Javaはちょこっと、、、)
などなど、細かいものを入れればきりがないですが、色々と経験しております。
個人様/企業様を問わず、困ったときは、お気軽にご相談下さい。
追記
第31回:「twittbot」サーバからの脱却!第3回「CRON複数設定」
【宣伝・・・(*´ω`)】

システム葵では、個人様向けでも企業様向けでも、パソコン修理から、パソコン設定、パソコンの使い方、LAN環境構築、ソフトウェア開発まで、様々な実績がありますので、困ったことがあれば、お気軽にご相談下さい。