したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |
レス数が900を超えています。1000を超えると投稿できなくなるよ。

EasyBotter初心者質問スレ4

1名無しさん:2011/10/19(水) 23:48:10
まず、公式ページや非公式wikiをチェックして下さい。
また、>>2-3のFAQ・過去スレ・関連スレをチェックして下さい。
それでも分からない場合は、【質問テンプレ】を使って質問して下さい。
もちろん回答が得られない場合もあります。(回答をもらえた時にはお礼もね。)

■手動でも(ブラウザで表示させても)動かない …… >>2-3のチェックを
■CRON関連でトラブル …… CRONスレへどうぞ。
 Twitterbotのcronスレ
 http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1260351215/
■EasyBotter.phpを修正したが動かない …… 改造は初心者の範疇外です。該当スレへ。
 EasyBotter2.0
 http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1265625817/

▼公式ページ:http://pha22.net/twitterbot/
▼非公式wiki:http://www26.atwiki.jp/easybotter_wiki

▼過去スレ
 1:http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1266290935/
 2:http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1273843076/
 3:http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1287944674/

▼質問テンプレ
【バージョン】 Ver.1.4x/Ver.2.0x
【設置鯖名】 レン鯖名/自宅鯖
【PHPのバージョン】
【手動】 動く/動かない
【実行】 CRON鯖名/ブラウザ自動更新/手動/他
【実行間隔】 ●分間隔(CRON等で定期的に実行している場合)
【不明点】 (エラーメッセージがあればコピペ推奨)

▼回答いただける方へ
 回答はあくまで任意、答えられる範囲で結構です。(誘導も兼ねてage進行)
 回答できない、したくない場合は下手に煽らずスルー推奨。

2名無しさん:2011/10/19(水) 23:48:51
■初心者の方へ■
いきなり色んな事をしようと思うと躓いてしまします。
アレ?と思ったらまずは基本に立ち返って確認してみよう!
・公式ページ、非公式wikiを読み、手順通りにしていますか?
・文字コード、改行コード、パーミッションの設定はOKですか?
・ランダムポストのみ記載してブラウザで表示させたら、動作しますか?
・表示されたエラー(英文)をそのままググって、解決できませんか?

■悩んだら検索■
上記を熟読してもわからなければ、思いつく単語をこの掲示板の全てのスレッドで検索してください。
初歩的なミスについてはほぼ解決方法が出そろっています。

▼検索例
 リプライ関連: リプ、@、reply、返信などで検索
 タイムライン関連: TL、タイムラインなどで検索
 CRON関連: CRON、bot.phpなどで検索
 機能の条件づけ・組み合わせ: if、switch、条件、bot.phpなどで検索
 二重投稿: 二重投稿、if、bot.phpなどで検索
 リプライと同時に他のポストをする: bot.php、if、同時などで検索
 via〜変更: API、via、OAuthなどで検索+http://twitter.com/oauth_clients

■初歩プログラムの勉強を■
スクリプト初体験の方は、PHPリファレンスで最低限の勉強をしましょう。
下記5項目がわかれば基本機能を使いこなすことができるようになります。
(これらはPHPに限らず多くのプログラミングにほぼ共通するものです)

bot.phpで必要な知識
 ├演算子
 ├比較演算子
 ├条件分岐(if、switch)
 └date関数

reply_pattern.phpで必要な知識
 └正規表現(メタ文字)

3名無しさん:2011/10/19(水) 23:49:41
■■2.0設置での多い質問■■
・ランダムPOSTを○分おき、リプライを○分おきにしたい
・時間別にリプライorPOSTを分けたい
・特定の人だけにリプライを分けたい/スルーさせたい
など
まずは自力で調べる
   http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1265625817/90
   http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1265625817/220
   http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1265625817/228-229
それから2.0、初心者、質問スレ(場合によってはあったらいいなスレ)をくまなく見たら
似たような質問があるはず

・アップしたら真っ白になるだけ/文字化けしてる
   エンコードUTF-8(TeraPadはUTF-8N)BOMなし、改行コードはLFになってるか
   data.txtとreply_pattern.phpとlog.datのパーミッションが666になってるか(サーバーによって違う場合もあり)
   setting.phpで何か間違ってないか

・二重投稿して直らない
   twitterが重いのでしばらく待つ
   とりあえずcronの間隔を長めにとってみる
   if構文がダブってないか見る
   一旦サーバーに上げたものを削除して上げなおし、cronの設定もやりなおす
   サーバーを変えてみる

・よくわからない英語のエラー文が出てくるんです
   それをそのまま自動翻訳なりぐぐるなりして調べてみよう
   簡単なエラーならエディターでチェックできます

・フッターが説明どおりにしてるのにうまくいかない

・会話終了にすると[[END]]と出て機能してない
   会話終了を機能させる
   http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1265625817/280

・昨日まで正常に動いていたのにリプライ等動かなくなった
   twitter側が重くなった時など、例外エラーが返される場合があります。
   こちらではどうしようもないので復旧を待ちましょう

■■OAuthがらみで多い質問■■
・via EasyBotter のEasyBotterという部分が変えられると聞きますがどうやって変えるのですか?
   setting.phpの編集ページのOAuth認証についてに貼られているサイト先をよく読む
   この掲示板の参考レス http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1265625817/176

・自分のアカウントでOAuth認証登録してしまってbotアカウントで再度取得しようと思ったら直らない
・access_token access_token_secretが出てきません。
・なんか途中でエラー出て進みません
   各OAuth認証方法紹介してくださってるサイト様が追記して分かりやすく書いてくれてます
   この掲示板の参考レス http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1259689986/88
   PHPのバージョンが5以上であるか確かめてください。また借りてるサーバーのQ&Aもよく読んでください

・Descriptionの所にDescription is too short (maximum 30 characters)がでてしまい登録ができません。
   とりあえずDescriptionのところを30文字以上埋める

4名無しさん:2011/10/19(水) 23:53:04
EasyBotte.php内の旧APIから現行APIに更新

ttps://twitter.com/statuses/update.xml

ttp://api.twitter.com/1/statuses/update.xml

ttp://twitter.com/statuses/friends_timeline.xml

ttp://api.twitter.com/1/statuses/friends_timeline.xml

ttp://twitter.com/statuses/replies.xml

ttp://api.twitter.com/1/statuses/mentions.xml

ttp://twitter.com/statuses/friends.xml

ttp://api.twitter.com/1/statuses/friends.xml

ttp://twitter.com/statuses/followers.xml

ttp://api.twitter.com/1/statuses/followers.xml

ttp://twitter.com/friendships/create/id.xml

ttp://api.twitter.com/1/friendships/create/id.xml

5名無しさん:2011/10/19(水) 23:57:12
【書き込み前の注意】

初心者さん
 →EasyBotter初心者質問スレ3
改造してる人・NOT初心者
 →EasyBotter2.0
雑多な質問
 →スレ立てるほどじゃないその他の質問スレ
CRON・定期実行
 →Twitterbotのcronスレ
自作・他botプログラム等
 →TwitterBotPHP質問スレ

------------------------------------------
逆引き

EasyBotter初心者質問スレ3
→初心者さんかつ改造未導入であること

EasyBotter2.0
→慣れきたので改造をしてみたい、改造を自己責任で行える方

botにこんな機能があったらいいなスレ
→考案及び提示

phaがときどき見るかもしれないスレ
→EB製作者様への感想・意見・バグ報告

------------------------------------------

本家よくある質問
http://pha22.net/twitterbot/2.0/faq.php

6名無しさん:2011/10/20(木) 00:26:01
コピペで書き換え見逃した場所が・・・orz

7名無しさん:2011/10/22(土) 16:26:21
2.05をDLして運用しているんですが、
今までローテーションだったものをランダムポストをしようとしたら
Fatal error: Call to undefined method EasyBotter::rento_check() in /****/****/****/EasyBotter2.05/EasyBotter.php on line 92
とでました
で、92行目を見たら
//ランダムにポスト
function postRandom($datafile = "data.txt"){
$status = $this->makeTweet($datafile);    ←92行目
if(empty($status)){
$message = "投稿するメッセージがないようです。<br />";
echo $message;
return array("error"=> $message);
}else{
//idなどの変換
if(preg_match("@{.+?}@",$status) == 1){
$status = $this->convertText($status);
}
$response = $this->setUpdate(array("status"=>$status));
return $this->showResult($response);


php自体は弄ってなく、最初からこの状態だったのですが、これは何がエラー原因なのでしょうか?

87:2011/10/23(日) 17:39:02
誰かいませんか・・・?

9seira:2011/10/23(日) 18:52:21
一見、普通の女の子の日記ですが、
ある事をした後に更新しています。かなり中毒性が高いので注意が必要かもしれないです。

ttp://prof9pop.web.fc2.com/hrk/

10名無し:2011/10/24(月) 23:24:36
【バージョン】 Ver.1.4x/Ver.2.0x
【設置鯖名】 @page
【PHPのバージョン】PHP-5.2.6
【実行】 GAE-cron
【実行間隔】 30分間隔
【不明点】
どうしても調べて分からなかったのでご伝授頂けたらと思います。

今現在とあるbotを稼働させていまして、特定のIDのTLには反応させないようにさせたいのですがPHPコードが調べても分からず頭を悩ませています。
今現在bot事態は普通に稼働しているので問題はないのですが、とあるbotと連携しているため、そのとあるbotからのリプには反応させてもTLには反応させたくないと考えているのですが上手い方法ないでしょうか。

プログラミングはbotを作りたいがために独学でいくらか調べてはいるのですが、まったくの初心者でどうも分からなかったので教えて頂けるとありがたいです。

11名無しさん:2011/10/25(火) 03:37:21
>>10
改造はスレ違い、書き込むなら2.0スレへ
ついでに言うと過去の書き込み漁ればソースある
…てわけで書き込む前に>>1-3くらい読もうね

12名無し:2011/10/25(火) 07:26:52
11>ご伝授ありがとうございます。もう一度2.0の方に書き込み直します。
どっちにするか悩んだのですが、初心者なのでこちらに書き込んでしまいました。
またソースもずっと探して過去スレも見ていたのですがしっくりくるソースが見つからなかったので書き込ませていただきました。
お手数おかけしてしまいすみません。

13名無しさん:2011/10/28(金) 02:03:47
調整あげ

14名無しさん:2011/10/29(土) 23:28:10
bot.phpの中身を

<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();

$response = $eb->reply(2,"date.txr","reply_pattern.php");
//$response = $eb->postRandom("data.txt");
?>
DL時よりもむしろ減ってるのにTLはできてリプライはできないとかおかしいやろ

プログラミングができなくても作れるTwitter botの作り方読みつつ「試しにbotを動かしてみる」までは読んだが

15名無しさん:2011/10/30(日) 00:02:05
>>14
wikiも見ると幸せになれる

16名無しさん:2011/10/30(日) 00:04:48
date.txr

(´・ω・)・・・・?

17名無しさん:2011/10/30(日) 12:42:05
どこかのwikiコピペした際に間違ってただけでアップロードしたデータはtxrになってなかったわ

解凍直後の
//$response = $eb->postRotation("data.txt");
//$response = $eb->reply(2,"data.txt","reply_pattern.php");の//削ってTLは毎時5分に話すようにできているが リプライ送ったときだけbop.phpが真っ白になる
そして送っていないときは『2分以内に受け取ったリプライはない』とご丁寧に答えてくれる

18名無しさん:2011/10/30(日) 14:40:06
>>17
>>1-3よく嫁

19名無しさん:2011/10/30(日) 18:35:32
【バージョン】 Ver.1.4x/Ver.2.0x
【設置鯖名】 @PAGES
【PHPのバージョン】
【手動】 動かない
【実行】 手動
【不明点】 ランダム発言を実行しようとすると以下の様に表示されます。

Twitterへの投稿に失敗しました。
ユーザー名:@〜〜〜

object(SimpleXMLElement)#5 (2) {
["error"]=>
string(22) "Status is a duplicate."
["request"]=>
string(22) "/1/statuses/update.xml"
}

全てのファイルは「UTF-8 LF」の形式なっており、bot.phpは


<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(2,"data.txt","reply_pattern.php");
$response = $eb->postRandom("data.txt");
?>

です。bot.phpからランダム発言の記述を消して、リフォローの記述を入れたところリフォローは正常に機能。
リプライ返しもリプライがあったかなかったかの判別はできるものの、やはり投稿ができずにとまります。
似たような症状の方は過去にも多いようですが、同じ症状の方は見つけられませんでした。
パーミッションはPHPが666でその他を606に設定しています。ご教授よろしくお願いします。

20名無しさん:2011/10/30(日) 18:38:55
↑すみませんバージョンは2.05です。

21名無しさん:2011/10/30(日) 19:38:15
>>19
http://www26.atwiki.jp/easybotter_wiki/pages/21.html#id_f2c49975

あと「全てのファイル」を「UTF-8 LF」にして良い訳でもない。

22名無しさん:2011/10/30(日) 19:51:15
>>18
あの後、もしかしたらと思い、pearフォルダ内のphpをすべて666にしたら解決しました

その代わりTLもリプライも二重投稿するようになってしまいましたが

2322:2011/10/30(日) 19:56:43
cronはgoogleから持ってきていますが今ははずして手動で叩いてテストしてます

24名無しさん:2011/10/30(日) 20:02:17
>>21
ありがとうございます。ログとライセンスは違いました。
しかしそのページの情報を辿って問題を解決しました。

>>22
ありがとうございます。
しかしどうやらdata.txtの選択肢の数が少なかったのが原因だったようです。

25名無しさん:2011/10/30(日) 20:03:12
>>24>>22とありますが無視でお願いします。スレ汚し申し訳ない。

26名無しさん:2011/10/30(日) 21:11:40
【バージョン】 Ver.2.05
【設置鯖名】 @PAGES
【PHPのバージョン】5.3.8
【手動】 動く
【実行】 cron
【不明点】

動作自体は正しく動いていますが
自分が投稿した言葉にもTL返信をしているようで、そこから自分宛のリプを繰り返し
独り言をずっと続けてしまうことがたまにあります。
(今回は2分間隔で約1時間自分宛のリプライを繰り返していました。)

投稿用かTL返信用、返信用のどれかからそのキーワードを外すのが一番早いかと思うものの、
どれも外し難いものなので困っています。
過去に別件で試行錯誤して何か余計なことをしたせいかもしれないと思い、
今のところはEasyBotter.phpを新たに上げなおして様子を見ています。
自分の投稿ワードにリプライさせないようにするにはどうしたら良いのでしょうか?

27名無しさん:2011/10/30(日) 23:50:44
>>26
とりあえずセッティングファイルで、botのスクリーンネームが大文字小文字も含め正しいか再確認
リプライ上限回数もちょっと確認してみる

他スレか過去スレで同様の症状と対処を見た記憶があるので
適当なワードでスレッドを検索しまくることをおすすめする

28名無しさん:2011/10/31(月) 01:51:52
>>26
とりあえず応急処置ならこれかな
http://www26.atwiki.jp/easybotter_wiki/pages/29.html#id_2e3272f0

2926:2011/10/31(月) 03:21:53
>>27
スクリーンネームの記述が間違っていました…お恥ずかしい限りです。
「ttp://twitter.com/#!/ABCbot」の「ABCbot」に当たる部分のことですね。
ご指摘どうもありがとうございます。

>>28
上記の解釈で間違いが無いようでしたらこれで大丈夫だと思いますが、
念のため応急処置もしておこうと思います。
ご指南どうもありがとうございます。

30名無しさん:2011/11/01(火) 00:59:29
【状態】ver2.05 @PAGES GAE Cron2分で動作確認済み

<?php
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(2,"data.txt","reply_pattern.php");
$response = $eb->postRandom("data.txt");
$response = $eb->autoFollow();
?>

なら2分おきにツイート・リプライ対応・リフォローも完璧ですが。

<?php
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->autoFollow();
$response = $eb->reply(2,"data.txt","reply_pattern.php");
if(date("i") % 6 == 0){
$response = $eb->postRandom("data.txt");
}
?>

としても6分おきにつぶやかないどころか、2分おきにもつぶやきません
ランダムポストが昨日しない状態ですね。手動でもつぶやかないことも確認済みです。
簡単な記述なのに間違えてるのか見つけられずお恥ずかしい限りですが、ご教授よろしくおねがいします。

31名無しさん:2011/11/01(火) 01:52:35
>>30
if(date("i") % 6 === 0){
$response = $eb->postRandom("data.txt");
}

32名無しさん:2011/11/01(火) 02:09:08
>>31ありがとうございます
しかしこれでもダメなようです。
確認してもcronが止まってる様子はないので記述のミスだとは思うのですが。

33名無しさん:2011/11/01(火) 04:34:07
>>30
ttp://www26.atwiki.jp/easybotter_wiki/pages/25.html
落とし穴に注意2…CRONと設置サーバーの時間がズレている、指定した時間に実行の処理が終わらないとかは?
GAEで2分はタイトだからリプライ後でランダムポストだとズレるかも

34名無しさん:2011/11/01(火) 10:48:13
>>33
深夜に2.3回ほどつぶやいていたので、一分、大きくて二分以内の時間ズレが原因な気がしてきました。
こうなってくるとCRONの間隔を2分や3分にするのは厳しいので5分にすることを考えると、もはや「if」を使う必要がないので「if」なしでいきます。
時間指定のポストもその内やりたいと思っているのでその時に2分以内の誤差をカバーしても無理だったらまた質問したいと思います。
ありがとうございました。

35名無しさん:2011/11/03(木) 22:24:15
@pagesを使ってPHPのファイルをサーバーにアップロードしたいのですが…ちょっとイマイチアップロードの仕方が分かりません。色々検索もかけてみたりはしたのですがいまだに分からず…。
@pagesを使ってる方は、どのようにしてファイルをアップロードしているのですか?

36名無しさん:2011/11/03(木) 22:51:31
>>35の者ですが、やり方が分かりました!><なのでこれについての回答はしなくていいです。お騒がせ者でスミマセン;

37名無しさん:2011/11/06(日) 10:18:09
TLのツイートを拾って挨拶を返すときに例として、
おはようございます、〜〜〜さん
と、〜〜〜の部分にそのツイートをした人の名前を入れたいのですが、どうやればいいのでしょうか?

38名無しさん:2011/11/06(日) 14:22:42
>>37
本家や過去レス見たら分かると思うけど{name}を使う

39名無しさん:2011/11/06(日) 18:12:40
曜日ごとに違うファイルを呼び出したいのですが、どういう記述をすればよいのか分かりません。
例えば、月曜日にはmon.txtを、火曜日にはtue.txtを…といった感じです。

40名無しさん:2011/11/06(日) 19:32:35
>>39
http://www26.atwiki.jp/easybotter_wiki/pages/33.html
を見て時間のところを曜日に書き換えればいけます

41名無しさん:2011/11/06(日) 19:54:43
>>38
ありがとうございます
それってランダムにフォロワーの名前が出るものだと思ってました(;・∀・)

42名無しさん:2011/11/07(月) 19:01:06
>>40
ありがとうございます!
今週動かしてみます

43densya103:2011/11/08(火) 21:53:07
OAuthの設定について - 認証キーの取得で、botのアカウントにログインした状態で、やったのですが、Access TokenもAccess Token Secretも空白になります。
どうすればよいでしょうか?

44densya103:2011/11/08(火) 21:57:39
使っているバージョンは最新のものです

45densya103:2011/11/08(火) 22:00:48
すいません三回やったら出てきました

46名無しさん:2011/11/13(日) 21:30:13
いくつか単語を登録しておいてたとえばtlに「ラーメン」と出た時に「ラーメン」を使った返事を返すようにはできますでしょうか
できるなら書き方教えてください

47名無しさん:2011/11/14(月) 00:26:47
>>46
お約束で聞いておくけど、>>1は読みましたか?

んで、EasyBotter公式サイトを読んでいるだけで「これかな?」と思う部分が一つもありませんでしたかね

48名無しさん:2011/11/14(月) 00:40:51
>>46
ここは教えてと言えば手取り足取り教えるスタンスじゃないし、
自分から調べる気やPHP学ぶ気がない人には教えることはナイデスヨ?
意地悪ではなく、自分でメンテナンスできないと他のレン鯖の方に迷惑を掛けることを頭に残してね。

49名無しさん:2011/11/14(月) 01:24:36
TLに反応するbotを作成中で練習しているのですが(手動)
反応する言葉を何文か投稿し反応させると、全部にそれぞれリプを送ってしまいます。
例:「おはよう」とツイートし次に「おやすみ」とツイートすると「@おはよう」「@おやすみ」というように送ってしまう
直前のTL(「おやすみ」)にだけ反応させるためにはどうすればいいでしょうか?

50名無しさん:2011/11/14(月) 02:10:11
>>49
直近の反応ツイートに対しリプライを送るは改造になるかな、ここではスレ違い
あと仕様上の問題で直近反応語句に反応させるということは「同一ID」のツイートを読み込んで
リプライをする時に反応語句が複数ある場合、直近以外無視するという動作が必要になります。

51名無しさん:2011/11/14(月) 02:31:06
>>50
難しそうですね…時間があるときに検索して頑張ってみます。
ありがとうございました。

52名無しさん:2011/11/15(火) 09:10:02
【バージョン】 Ver.2.0x
【設置鯖名】 ロリポップ
【PHPのバージョン】
【不明点】
Fatal error: Class 'HTTP_Request2' not found in (アップロード先URL)EasyBotter.php on line 51

easybotter公式や非公式wikiを見て進めていたのですがいきなりつまずきました…
パーミッション変更済、OAuth認証済、他はダウンロードしたときのままです。文字コードも正しいです。
ぐぐっても解決しなかったので質問させていただきます。解決法をご存知の方ご回答お願いいたします。

53名無しさん:2011/11/16(水) 01:32:35
>>52
not found ということは404エラー、つまりURL先がない。
URL間違ってませんか?

54名無しさん:2011/11/16(水) 16:06:29
・設定した返信間隔(設定上では3分)以内にリプライがあるとアップロード先URLが真っ白になります。
3分以内にリプライがないと「3分以内に受け取った@はないようです。」に変わる。
・つい数時間前まではしっかりと動作してたのに急に動作しなくなるという状態

55名無しさん:2011/11/17(木) 22:53:25
>>54
>>1-3

56名無しさん:2011/11/22(火) 13:29:59
//誕生日
switch(true){
case (date("m") == 11 && date("d") == 21 && date("G") == 0 && date("i") == 0):
$response = $eb->postRandom("hpb1.txt");
break;
case (date("m") == 11 && date("d") == 21 && date("G") == 0 && date("i") == "1"):
$response = $eb->postRandom("hpb1.txt");
break;
}

このようにbot.phpでキャラの誕生日につぶやくようにしているのですが
hpb1.txtの中身は1行しか書いてないので
わざわざtxtファイルを用意せずに同じファイル内に書いてしまいたいです

$response = $eb->postRandom("今日は○○の誕生日だな");

こんな感じにするにはどういうスクリプトにしたらいいのでしょうか

57名無しさん:2011/11/24(木) 20:53:49
>>56
その場合は本体の改造が必要なのでこのスレでは回答できない
改造が面倒、改造の方策が全く見当つかない、ってことならファイルを用意した方が良い

あと「==」より「<」でまとめた方がスマート

5856:2011/11/24(木) 23:11:26
>>57
なるほど改造になっちゃうんですね
では今までどおりで行こうと思います。

case (date("m") < 11 && date("d") < 21 && date("G") < 0 && date("i") < 0):
こういう感じにすればいいのでしょうか?

59名無しさん:2011/11/25(金) 00:38:56
>>58
おーい、==を<に(または=<)変える、ってのは1箇所だけだよ
等号、不等号は中学生レベルのものだからよく見直して
ついでに非公式Wikiの時間分けなんかの項目を読むと、理解度が深まると思う

6058:2011/11/25(金) 08:45:38
>>59
すいませんそしてありがとうございます!
勉強してきます〜

61名無しさん:2011/11/27(日) 18:03:39
>>60
っ http://www26.atwiki.jp/easybotter_wiki

62eee:2011/11/28(月) 23:31:46
▼質問テンプレ
【バージョン】 Ver.2.05
【設置鯖名】 @peges
【PHPのバージョン】
【手動】 動かない
【実行】 手動
【不明点】
Bot.phpに手動アクセスしたら500エラーが出ました
問題が全く分からないのでBot.phpの中を貼ります
よろしくお願いします

<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();

//=============================
//botの動作をここに書いてください
//先頭に//がある行はコメント扱いなので実行しません。実行したい行の頭の//を削除してください。
//=============================
//$response = $eb->autoFollow();
$response = $eb->postRandom("data.txt"); /$response = $eb->postRotation("data.txt");
$response = $eb->reply(2,"data.txt","reply_pattern.php");
$response = $eb->replyTimeline(2,"reply_pattern.php");



/*
//===================================================
//EasyBotter2.03 2010/02/11更新
//===================================================
////ここから下はphaによる解説です。
////cronなどでこのbot.phpを実行するわけですが、動作の指定の仕方はこんな感じです。

//用意したデータをランダムにポストしたい
$response = $eb->postRandom("データを書き込んだファイル名");

//用意したデータを順番にポストしたい
$response = $eb->postRotation("データを書き込んだファイル名");

//@で話しかけられたときにリプライしたい
$response = $eb->reply(cronで実行する間隔(単位:分), "データを書き込んだファイル名", "パターン反応を書き込んだファイル名");

//タイムラインの単語に反応してリプライしたい
$response = $eb->replyTimeline(cronで実行する間隔(単位:分),"パターン反応を書き込んだファイル名");

//自動でフォロー返ししたい
$response = $eb->autoFollow();


//===================================================
//// cronを実行するたびに毎回実行するのではなく、
//// 実行する頻度を変えたい場合の例は以下のとおりです。
//// PHPのdata()の応用の仕方は以下のURLを参照ください。
//// http://php.net/manual/ja/function.date.php

//bot.phpを実行したときに毎回実行される
$response = $eb->postRandom("data.txt");

//bot.phpを実行したときに、5回に1回ランダムに実行される
if(rand(0,4) == 0){
$response = $eb->postRandom("data.txt");
}

//bot.phpを実行したときに、0分、15分、30分、45分だったら実行される
if(date("i") % 15 == 0){
$response = $eb->postRandom("data.txt");
}

//bot.phpを実行したときに、午前だったらgozen.txtのデータを、午後だったらgogo.txtのデータを使う
if(date("G") < 12){
$response = $eb->postRandom("gozen.txt");
}else{
$response = $eb->postRandom("gogo.txt");
}

//bot.phpを実行したときに、2月14日のみvalentine.txtのデータを、それ以外はdata.txtのデータを使う
if(date("n") == 2 && datew("j") == 14){
$response = $eb->postRandom("valentine.txt");
}else{
$response = $eb->postRandom("data.txt");
}

//準備したテキストを順番にポストしていって、準備した中から「めでたしめでたし」が投稿されたらbotの投稿をそこで止める
$response = $eb->postRotation("data.txt","めでたしめでたし");
*/


?>

63名無しさん:2011/11/29(火) 00:02:16
>>62
とりあえず「500エラー PHP」でググってみたかな?
各種パーミッション(含ディレクトリ)を再確認&アップロードし直しなど試してみれ〜

64名無しさん:2011/11/30(水) 23:57:30
【バージョン】 Ver.2.05
【設置鯖名】 ロリポップ
【PHPのバージョン】5.2
【手動】 動く?
【実行】 手動
【不明点】
wikiのとおりに何の手も加えずに最初からやっていて
サーバーにアップし、2分以内に受け取った@はないようです。まではうまくいきました。
そこから本アカウントからBOTアカウントにリプしても2分以内に〜から表示がかわりません
これはいったい何が原因なのでしょうか…?確かツイッター側の問題かも、とあったので
時間をあけて再度リプしたのですが、やはり変わらず…。どなたかヒントでもくださると幸いです…

65名無しさん:2011/12/01(木) 02:35:02
>>64
基本情報が少ないので答えようがない。
リプライ用のファイルには充分にリプ内容があるのでしょうか?
テストされている反応語句とそのリプライファイルの反応語句部分の内容をうpしてくれたら答えれるかもしれません。

66名無しさん:2011/12/01(木) 09:14:25
>>64です
すみません、色々説明不足でした
何もいじらないままでやりましたのでリプライファイルは以下です
<?php
//特定の単語を受け取った場合に特定の反応を返したいときに使う、反応のパターンを書くためのファイルです。
//複数のパターンに一致する場合は上のものが優先されます。PHPの正規表現にも対応しています。

$data = array(
//「おはよ」を含む発言(「おはよ」「おはよう」「おはよー」など)を受け取ると「おはようございます、御主人様」もしくは「Good Morning, Master.」と返すサンプルです
"おはよ"=> array(
"おはようございます、御主人様",
"Good morning, master.",
),
//「今日の運勢」を含む発言を受け取ると6種類の中からランダムな返答を返すサンプルです
"今日の運勢"=> array(
"大吉",
"中吉",
"小吉",
"末吉",
"吉",
"凶",
),
//「こんにちは」「こんにちわ」「こんちは」「こんちわ」を含む発言を受け取ると「こんにちはこんにちは!」と返す正規表現のサンプルです
"こん(に)?ち[はわ]"=> array(
"こんにちはこんにちは!",
),
//「◯◯は好き?」という発言を受け取ると「◯◯おいしいです」と返す正規表現のサンプルです
//ただし「◯◯」の前には空白か「、」か「。」を入れないと「は好き?」以前の文章が全て繋がって表示されます
"([^\s、。]+?)は好き?"=> array(
"$1おいしいです",
),
//「会話終了」を含む発言を受け取るとリプライを返さなくするサンプルです
"会話終了"=> array(
"[[END]]",
),
);

そして本アカからのbotへは「おはよう」としました

67名無しさん:2011/12/01(木) 18:50:11
>>66
セッティングファイルの内容は正しい?
特にBotのスクリーンネームは大文字小文字含めて同一になってるか

68名無しさん:2011/12/02(金) 11:14:34
>>66です
遅くなりましたが原因が分かりました!大文字スペースがひとつだけ入ってました…
こいつを見つけるのに時間がかかってしまってお返事が遅くなりました。
レスくださった方ありがとうございます!
今は手動で色々やっています。レスすると通常ツイートも一緒に流れてしまってそれの原因を探している途中です。
またどうしても分からない時はお世話になってしまうかも知れません…

69名無しさん:2011/12/02(金) 20:02:25
【バージョン】 Ver.2.05
【設置鯖名】 ロリポップ
【PHPのバージョン】5.2
【手動】 動く?
【実行】 手動
【不明点】
何度もすみません…。あれから色々とやって、手動でツイートはしてくれるようになりましたし、リプライもしてくれるようになりました。
ただ相変わらず、リプライを返すと同時に通常のツイートも呟いてしまいます。
bot.phpの中身は以下です
<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(2,"data.txt","reply_pattern.php");
$response = $eb->postRandom("data.txt");
?>

またreply_pattern.phpの内容は以下です
<?php
//特定の単語を受け取った場合に特定の反応を返したいときに使う、反応のパターンを書くためのファイルです。
//複数のパターンに一致する場合は上のものが優先されます。PHPの正規表現にも対応しています。

$data = array(
//「おはよ」を含む発言(「おはよ」「おはよう」「おはよー」など)を受け取ると「おはようございます、御主人様」もしくは「Good Morning, Master.」と返すサンプルです
"おはよ"=> array(
"おはよう!",
"早起きだね",
),

"眠い"=> array(
"まだ眠そうだね",
),

と言った感じでいくつかリプライパターンを書いています。
bot.phpにアクセスして、2分以内に〜を見てから、botにリプライ、その後にbot.phpにアクセスすると
ツイートされた分のリプライと通常のツイートが投稿されてしまいます。
これはいったい何が原因なのでしょうか?
何度も本当に申し訳ありませんが、ヒントか何かいただけると幸いです…。

70名無しさん:2011/12/02(金) 21:13:52
>>69
非公式Wiki通りにやりましょう

71名無しさん:2011/12/02(金) 22:29:49
>>69
その設定の状態だとそれは正常。
発言させたくないなら
$response = $eb->postRandom("data.txt");
の所に条件を設定しなければならない

例えば
if(date("i") % 4 === 0){
$response = $eb->postRandom("data.txt");
}
なら4分の1の確率でつぶやく事になる
他のを勉強したいならここを参照
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/sak3php.htm

72名無しさん:2011/12/03(土) 02:23:39
【バージョン】 Ver.2.05
【設置鯖名】 @pages
【PHPのバージョン】5.2
【手動】 動く
【実行】 手動
【不明点】 通常Postの単語とリプライ用の単語を分けたくて新たにreply.txtを作り$response = $eb->reply(2,"data.txt","reply_pattern.php");のdata.txtをreply.txtに置き換えたところ、通常ツイートはできているのですが、
リプライの方が2分以内に受け取った@はないようです。さえも出ないようになってしまいました。
これはもっと別の設定ではないといけないのでしょうか?

73名無しさん:2011/12/03(土) 05:52:16
>>72
>>1-3読んだ?
特に>>3の↓
・アップしたら真っ白になるだけ/文字化けしてる
   エンコードUTF-8(TeraPadはUTF-8N)BOMなし、改行コードはLFになってるか
   data.txtとreply_pattern.phpとlog.datのパーミッションが666になってるか(サーバーによって違う場合もあり)
   setting.phpで何か間違ってないか

7472:2011/12/04(日) 02:08:03
>>73
申し訳ないです。読んでたつもりが見事にそこの辺り読み飛ばしてました。
エンコードを修正したら解消しました。ありがとうございます。

75名無しさん:2011/12/04(日) 16:53:56
【バージョン】 Ver.2.0x
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 動く
【実行】 WebCron お試し?
【実行間隔】 本文1時間、リプTL反応5分間隔(CRON等で定期的に実行している場合)
【不明点】 手動ではリプライもTL反応もしているのですが、cronによる起動ができません。
ヒストリーなどでは、cronが正常に動いた記録が残っているのですが、実際botはつぶやいていません。
どのような問題が考えられるか、アドバイスを頂ければと思います。

76名無しさん:2011/12/04(日) 17:26:55
>>75
BOT側は問題ないね
cronの叩くURL先がどこか間違ってないかチェックしてとしか答えれないかな
cronサービスがどこのか答えれたら案外答えれるかも

77名無しさん:2011/12/05(月) 14:11:37
鯖時間とcronがずれてるとかは?
時間指定の書き方にもよるけど@pagesなら少しずれることも考えて書くのもあり

78名無しさん:2011/12/06(火) 21:27:08
時間指定とかの話はここではなくEasyBotter2.0スレでしょうか?
・時間になったら特定のツイートをしてほしい
・時間内は呟きを止めたい
このふたつでお聞きしたいことがあるのですが…

79名無しさん:2011/12/06(火) 22:10:17
>>78
それだと簡単だけど一応改造になるのでEB2.0スレ
基本手を加える系はそうだと思ってもらって問題ない
手を加えず元からある機能の質問がこのスレ

80名無しさん:2011/12/06(火) 22:27:49
>>79
ありがとうございます!
そちらに移動してみます

81名無しさん:2011/12/07(水) 01:10:03
>>78=80
特定のつぶやきを別ファイルにすれば、bot.phpで時間指定すりゃ良いんだけど

82名無しさん:2011/12/07(水) 04:59:58
【バージョン】 EasyBotter2.05
【設置鯖名】 SiteMix
【PHPのバージョン】PHP Version 5.3.2
【手動】 動かない
【実行】 手動
【実行間隔】×
【不明点】
サーバーにファイルをアップして、手動でbot.phpをブラウザで見る段階ですが、
http://ボットの名前.sitemix.jp/ボットの名前/bot.php
で開いても真っ白で何のメッセージも出ません。
これはエラーということでしょうか?それともこの状態で良いのでしょうか?

非公式wikiには真っ白なページに「2分以内に受け取った@はないようです。」と表示されれば準備完了、間違っている場合はエラーメッセージが出る
とあったのですが、表示された画面がどちらにも当てはまらなかったため、何が間違っているのかわからなくなりました。
本アカから見本の反応ワードを@付きでツイートしても反応しません。ツイートした後にブラウザでもう一度開いてもページは真っ白のままです。

sitemixを使っている人の類似の質問がなかなか見つけ出せなかったため、書き込ませてもらいました。
どなたかご協力お願いします。

83名無しさん:2011/12/07(水) 17:41:37
>>82
ちょっとこのスレをさかのぼってもらえれば、全く同じ症状の人がいたんだが
繰り返しますが>>1-3は読みましょうよ、まんまな答えが書いてありますし

84名無しさん:2011/12/07(水) 18:53:33
>>81
>>78=80です
その時間指定がうまくいかなかったんです…

85名無しさん:2011/12/07(水) 19:27:03
>>83
82です。おっしゃる通りスレ4を1から見たら同じ症状を見つけ、文字コードを変えたらできました。
スレ1を見てあまりの量に諦めかけましたが、スレ4内にあると教えてくださったおかげで無事探し出すことが出来ました
ありがとうございました。

86eee:2011/12/07(水) 20:25:54
>>62なんですが500内部サーバーエラーがどう弄っても治りません...
パーミッションも確認したし再アップロードもしました
問題ないはずなんですが...

87aki:2011/12/07(水) 22:53:56
初めまして。質問させてください。easybotter2.05を使っております。
botの特定のポストに、ある単語でもってリプライすると特別な返信がくる、と言うような事は出来ないでしょうか。
例えば、
botがランダムポストで「さむいーさむいー」

「ぎゅっ」とリプライする

「言ってみるものね」と返信が来る。(通常は「ぎゅっ」とリプライすると「やめてよ!///」などと別の言葉が出るようになっている。)
と、言うようなものなのですが。
どこをどういじれば良いのかさっぱり検討もつきません。
ご教授宜しくお願いします。

88名無しさん:2011/12/07(水) 23:16:28
>>85
うん、だから>>72-73で出てきてた
1から見なくても書き込み前に最新10レス見るだけで解決してたわけだ



何度も繰り返しますが、>>1-3を読み実行する努力が足りない人が多い
今後書き込みする人はまず読む・調べるの努力を

89名無しさん:2011/12/07(水) 23:18:32
>>87
|
↑これが単語指定の末尾に多いとか、コピペ等でダブって指定はありませんか?

9087:2011/12/08(木) 01:07:22
>>89 ありがとうございます。ダブッて指定はありません。

91名無しさん:2011/12/08(木) 01:10:42
通常は  bot「ほげほげ」→@bot「ぎゅっ」→bot「やめてよ!///」
それを「さむいーさむいー」のポストの後だけ
bot「さむいーさむいー」→@bot「ぎゅっ」→bot「言ってみるものね」
こういうことじゃないの?

botのポストを記録して、リプする時そのファイルを読み込んでマッチするとか
該当ポストをしたときフラグを立てておいて、フラグが立ってたら指定リプをするようにするとか
改造しないとできないような

92名無しさん:2011/12/08(木) 02:55:20
取り合えず改造だからスレ移って欲しい

93名無しさん:2011/12/16(金) 09:10:06
【バージョン】 EasyBotter2.05
【設置鯖名】
【PHPのバージョン】5以上
【手動】 −
【実行】 現在手動
【実行間隔】−
【不明点】

反応用語がなかった場合にランダムリプライ(その言葉知らない等...)を
させたいのですがどうもうまく行きません

$response = $eb->reply(1,"random.txt","reply_pattern001.php");

反応用語をreply_pattern001.phpにランダムリプライはrandom.txtに入ってます
reply_pattern001.phpは作動しています。どなたかご教授よろしくお願いします。

94名無しさん:2011/12/18(日) 13:25:04
あげ

95名無しさん:2011/12/18(日) 15:15:04
>>93
反応語句がなかった場合のランダムリプライの内容は十分にある?
ないとTwitterの仕様の問題でリプライできなくなるよ

あとどのcron使うのかは知らないけど1分間隔はやめておいたほうがいい。
ほとんどの場合正常にcron働かないし、鯖にも負担を掛ける。
後者が自宅鯖ならいいけどレンタル鯖なら他の人にも迷惑を掛ける。

96名無しさん:2011/12/21(水) 03:14:27
【バージョン】 EasyBotter2.05
【設置鯖名】 @pages
【PHPのバージョン】5以上
【手動】 動かない
【実行】 手動
【実行間隔】 -
【不明点】

現在ファイルの書き換えも全て済まし、botを手動で動くか試している段階
です。
はじめ手動で試していたときは、通常呟き・リプライ共にできていたのですが、中身をいじっているうちにどちらも行えなくなってしまいました。
アクセス先のページにはエラーメッセージなど一切書れておらず、真っ白です。
とりあえず一旦はじめからやり直そうと思い、解凍したての中身に変え、ランダム呟きの文頭//を外してアクセスしてみました。
これにアクセスしてもさっきと同様ページに何も表示されません。

これはサーバーの問題なのでしょうか?

97名無しさん:2011/12/21(水) 09:09:37
【バージョン】 Ver.2.5x
【設置鯖名】 @page
【PHPのバージョン】PHP-5.2系
【手動】 動く/動かない
【実行】 CRON鯖名(GAE)
【実行間隔】 5分間隔
【不明点】10月にBOTを作って以来、問題なく動いていたはずの自作BOT
がここ1週間くらいはリプライを返してくれなくなりました。
通常POSTと、TL反応は問題なく動くようです。
手動でも様子を見てみましたが、こちらからBOTへリプライをした時のみbo
t.phpが真っ白になってしまいます。

>>3を見ながら、エンコード・改行コード・パーミッション値等チェックしな
おしましたが、状況は変わりません。
今まで問題なく動作してたこともあり、最初はクーロンかサーバーの不具合か
なとも思ったのですが、リプライだけしなくなるのはおかしいような気がしま
す。
直近の更新はreply_pattern.php内のリプライを増やしただけで他は何もいじ
っていません。
どこの記述が間違っているのかもわからない状態です。説明下手で申し訳ない
のですが、回答よろしくお願いいたします。

98名無しさん:2011/12/21(水) 10:31:56
>>97です。自己解決いたしました。
reply_pattern.php内のリプライを増やしただけで他はいじっていない、と前述しましたが、増やしたことそのものが原因なのかと思い当たり、
reply_pattern.phpに書いてあるものを一回ごっそり減らしてみたらリプライを返してくれるようになりました。

つまらないことでスレを使ってすみませんでした。

99名無しさん:2011/12/22(木) 12:25:43
初歩的な質問ですみません
リプライパターンをたくさん増やしたい場合どうすればいいのでしょうか?
reply_pattern1、reply_pattern2とファイルを増やせばいいのかと思ったのですが
reply_pattern2の反応用語の際、reply_pattern1のランダム返信になってしまいます。

100名無しさん:2011/12/25(日) 02:54:49

【バージョン】 Ver.2.0x
【設置鯖名】 @pages
【PHPのバージョン】5以上
【EasyBotterの改造】改造していない
【手動】 動く
【実行】 GAE-cron
【実行間隔】 2分間隔
【不明点】
手動、cron共に通常POSTは動いているのですが、リプライを返す動作をしてくれません。コード・パーミッション値は確かめましたが、変化はありませんでした。
解決方法をご提示いただけると幸いです、よろしくお願いします

101名無しさん:2011/12/25(日) 18:09:58
>>100
テンプレ使っていてもそれだけではエスパーではないので答えようがありません
bot.phpの中身をコピペしてください。

重要:EasyBotterはプログラムなので記述外の事は出来ません。

102名無しさん:2011/12/26(月) 15:44:55
【バージョン】 Ver.2.5x
【設置鯖名】 @page
【PHPのバージョン】5.2
【手動】 動かない
【実行】 GAE-cron
【実行間隔】 5分間隔
【不明点】
全部で3つbotを持ってるのですが
1つはreply_pattern.phpを一切読み込まなくなってしまいました
リプライすると返ってくるのですがランダム返信の方になります
2つめはreply_pattern.phpを読み込んでくれるのですが
[[END]]などの表現は一切通用せず返信してきます
もうひとつは正常です

考えられる理由としては2つめのbotのパーミッション変更のみです
一昨日までは正常でしたのでとても困っています。
どなたかよろしくお願いします。

103名無しさん:2011/12/26(月) 17:10:53
>>102
1つ目のほうは一昨日まで動いてたならその時の仕様に戻して動くなら概ね記述ミス。
(※バックアップがある場合のみ。手動記述直しは記述ミスに気付かない場合があるので×)

2つ目はEasyBotter.php弄った場合に起こる気がするが弄った?
それ以外に考えられる要素は?
これが原因のはずがないと排除しないで考えてみて

104名無しさん:2011/12/29(木) 23:46:51
【設置鯖名】 @page
【PHPのバージョン】5以上
【EasyBotterの改造】改造している
【手動】 動かない
【実行】 GAE-CRON
【実行間隔】 2分間隔(CRON等で定期的に実行している場合)
【不明点】
定期ポストにて、以前まで出なかったエラーが出ました。
理由がわかるかた、教えて頂ければ幸いです
object(SimpleXMLElement)#10 (2) {
["error"]=>
string(33) "Read-only application cannot POST"
["request"]=>
string(20) "/statuses/update.xml"
}

105名無しさん:2011/12/30(金) 02:17:12
>>104
改造はスレ違い
そしてエラーメッセージに答えがあると思います(^^)

106名無しさん:2011/12/30(金) 13:30:31
105>>
わざわざありがとうございました

107名無しさん:2011/12/30(金) 20:16:31
【バージョン】Ver.2.05
【設置鯖名】 @PAGES
【PHPのバージョン】5以上
【手動】 動く
【実行】 GAE
【実行間隔】 3分間隔
【不明点】 貰ったリプライに反応ワードがなかった時にdata.txtを読み込まない

bot.phpは、

<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();

$response = $eb->reply(3,"reply_pattern.php");
$response = $eb->replyTimeline(3,"tl_pattern.php");

//時間別
if(date("G") == 7 && date("i") <= 3){
$response = $eb->postRandom("data07.txt");
} elseif(date("G") == 8 && date("i") <= 3){
$response = $eb->postRandom("data08.txt");
} elseif(date("G") > 8 && date("G") < 12 && date("i") <= 3){
$response = $eb->postRandom("data09.txt");

(以降elseifの時間指定でdata●●.txtを読み込むようにしてあります)

反応ワードがなかった場合、本来はdata.txtを読み込んでランダムに相手へリプライすると思うのですが、その場合はここに何かの式を入れる必要があるのでしょうか?
色々調べてみても分からなかったので、教えて頂きたいです…

108名無しさん:2011/12/31(土) 01:50:02
>>107
それだと読み込まなくて当然
$response = $eb->reply(3,"data.txt","reply_pattern.php");
↑の記述でないと仕様の問題で読み込めない
というかデフォルトがそうなっていませんでしたか?

109107:2012/01/02(月) 14:35:25
>>108
すっかり見落としてました…orz
ありがとうございます、お陰でちゃんと動くようになりました!

110名無しさん:2012/01/05(木) 19:05:42
すみません質問します。
一回目はきちんとツイートできたのですが
二回目以降はこのようなエラーがでて出来ません
object(SimpleXMLElement)#10 (2) {
["error"]=>
string(22) "Status is a duplicate."
["request"]=>
string(20) "/statuses/update.xml"
}
どなたか対処法お願いします

111110:2012/01/05(木) 19:07:56
【バージョン】 Ver.2.05
【設置鯖名】 @peges
【PHPのバージョン】
【手動】 動かない
【実行】 手動
ですお願いします

112名無しさん:2012/01/05(木) 20:33:59
>>110
よくある質問です。過去ログや過去スレも確認してください。
調べることを怠ると自作の「BOT」でなくなるのでちゃんと自作したいなら調べてみよう。
なお、ここは基本的に教えてと言えば教えるスタンスではありません。
ある程度プログラムを組んでみたけどどうしても動かない、ソースはこんな感じですなどではじめて教えれる場所です。

↓ヒント
http://www26.atwiki.jp/easybotter_wiki/pages/21.html#id_f2c49975

113110:2012/01/06(金) 11:56:33
>>112
ありがとうございます
調べてみます

114名無しさん:2012/01/10(火) 02:58:45
【バージョン】Ver.2.05
【設置鯖名】 @PAGES
【PHPのバージョン】5以上
【手動】 動く
【実行】 なし
【実行間隔】 なし
【不明点】 改造?なのかわからないのでこちらで質問させていただきます

半自動フォローを取り入れたいのですが動いてくれません
スクリプトはwikiをコピー。取り入れる場所も間違ってません。
手動でアクセスするとフォローはしてくれますがリプライがなく
Could not authenticate with OAuthのエラーがありました
エラーを検索するとOAuth認証が出来なかったというものだと分かりましたが
他のリプライなどにはちゃんと返事をしてくれます

他に試したのが
http://twitter.com/〜をhttp://api.twitter.com/〜にしてみました。
これでもまだ直らないようです。どなたか教えてください

115名無しさん:2012/01/12(木) 22:48:38
質問させて下さい。

@pagesでbot.phpにアクセスすると、白いページで更新しても白いままです。
settingにはちゃんとOAuth認証のコードをコピペしました。botIDも記入しました。
PEARファイル以外はUTF-8とLFになってます。
easybotter.phpもUTF-8とLFになっています。
data.txtとreply_pattern.phpとlog.datのパーミッションは666にしました。
これ以外で原因は何か考えられるでしょうか?

ちなみに、PEARファイル内のphpの文字エンコードをUTF-8とLFにして保存しても、
再び見るとSJISに戻っています。
アップロード前にphp_editorを使いUTF-8とLFにしても、アップするとSJISになっています。

何かアドバイスをいただけると幸いです。

116名無しさん:2012/01/13(金) 00:14:05
>>115
とりあえず最初に注意だけど、>>1-3読んだらテンプレ使えと書いてある筈なんだがね
ちゃんと読んでないと露呈してるも同然ですよ、と

で、本題
エディタとFTPは何使ってる?

117115:2012/01/13(金) 01:18:58
>>116
返信有難う御座います。
そうですね。テンプレを使わず、すみませんでした。

【バージョン】Ver.2.05
【設置鯖名】 @PAGES
【PHPのバージョン】5.2系
【手動】 動かない
【実行】 なし
【実行間隔】 なし
【不明点】 白い画面で変化なし +>>115
エディタはterapadでUTF-8Nにして保存、アップ後はUTF-8でした。
FTPは@page付属のマネージャーを使っています。(@pages FTP)

何卒、アドバイスをお願いします。

118名無しさん:2012/01/13(金) 18:54:32
>>117
とりあえず@pagesのマネージャーではなくFTPソフトを使う方が良い、とだけ

119115:2012/01/13(金) 19:49:15
>>118
有難う御座います。
マネージャーは手軽だからと思ったのですが、FTPに変えてみます。

120115:2012/01/13(金) 20:26:36
連投失礼します。
>>118さんのおっしゃったとおりFFFTPからアップしたら出来ました!
有難う御座いました!

121名無しさん:2012/01/14(土) 21:39:30
【バージョン】 Ver.2.0x
【設置鯖名】 @page
【PHPのバージョン】5以上
【手動】 動く
【実行】 手動
【実行間隔】 cron未導入
【不明点】
夜に呟きを停止させたいと思いまして非公式wikiの時間指定でポスト〜など
を取り入れてみたのですが500番台エラーが出てしまい使用できません
既出かなと思い「停止」などで検索してみたのですがヒットせずとても困っております
今bot.phpに記載してるのではエラーみたいなのですがどなたかアドバイス頂けませんでしょうか?
よろしくお願いします。

//1時から7時まで停止、他2時間POST

if(date("G") > 0 && date("G") < 8){
$response = $eb->postRandom("no_data.txt");
} else if(date("G") % === 02 && date("i") <= 0 ){
$response = $eb->postRandom("data.txt");
}

122名無しさん:2012/01/14(土) 22:13:18
>>121
何度も繰り返す内容だけど「指定すると動く」のがプログラム
逆に言えば「指定しなければ動かない」んだな
つまり「動かしたいものだけ指定する」のがプログラムをシンプルで、エラーなく動かす秘訣

123名無しさん:2012/01/14(土) 22:15:44
>>121
追加
else if(date("G") % === 02 && date("i") <= 0 )
この部分が激しくおかしい
非公式wikiで時間分けを勉強するべし

124名無しさん:2012/01/15(日) 06:37:56
>>121
ありがとうございます。
あっているかは分かりませんが下記のように直したらエラーは出なくなりました

//1時から7時まで停止、他2時間POST
if(date("G") > 0 && date("G") < 8){
$response = $eb->postRandom("no.txt");
}
if(date("G") % 2 === 0 && date("i")<= 0){
$response = $eb->postRandom("data.txt");
}

ただnot.txtの中に投稿するメッセージを入れると正常に動いてくれるのですが
消してしまうと真っ白のタイプのエラーになってしまいます。
php形式に変えてみたりもしましたがやはりダメでした。
投稿するメッセージがありませんとなるのが理想だったのですが
リプライとPOSTを別のcronに叩かせなくてはならないのでしょうか…?

125名無しさん:2012/01/15(日) 11:30:07
>>124
あのー、>>122読みました?

126名無しさん:2012/01/15(日) 13:44:31
>>125
アンカミスすみません。
頂いた回答、wikiも全て読みましたがお恥ずかしながら理解力が足りないみたいです
>>124のエラーは自己解決しましたがそこに載せた内容では2時間POSTが制御出来てないですね(汗)
諦めます…スレを消費してしまい申し訳ありませんでした

127名無しさん:2012/01/15(日) 15:24:44
>>126
このやり取りは何度も繰り返すんだけど

何故、動いてほしくないものを指定しちゃうのってこと
動いてほしいものだけ書けば良いのに

128名無しさん:2012/01/18(水) 21:27:01
>>124
if(2時間ごと){//分を「<= 0」と指定してるけど「<=」の意味よく見て
if(8時〜0時の間){//左の数字が大きい時の指定は&&ではない
$response = $eb->postRandom("data.txt"); 
}
}

http://www26.atwiki.jp/easybotter_wiki/pages/25.html#id_04e6bcd2

129名無しさん:2012/01/19(木) 22:01:47
【バージョン】 Ver.2.04beta
【設置鯖名】 さくら
【PHPのバージョン】
【手動】 動かない
【実行】 さくら
【実行間隔】 2分間隔(CRON等で定期的に実行している場合)
【不明点】
誤って、data.txtに{name}を入れてしまい、確認したら
object(SimpleXMLElement)#11 (2) {
["error"]=>
string(22) "Status is a duplicate."
["request"]=>
string(22) "/1/statuses/update.xml"
}
 と表記されるようになりました。
 当該{name}を消し去っても同じエラーが出ます。
 TLに対するランダムポスト(data.txt)は返してくれます。

130名無しさん:2012/01/20(金) 00:40:10
>>129
Status is a duplicate.
答え出てんじゃんwww

131名無しさん:2012/01/21(土) 01:23:50
改造ではないので、こちらで質問させて下さい。

easy botterで呟く内容に曜日をいれるタグはありますか?
年月日、時分秒しか無いでしょうか?
%wや%uのような数字表示ではなく「今日は火曜日です」のようにしたいです。
一週間分の曜日別phpを作らないと不可能でしょうか?
教えていただけると助かります。

132名無しさん:2012/01/21(土) 02:03:56
>>131
基本機能にはないので、実装するなら要改造
改造が面倒なら曜日別ファイルだね

133名無しさん:2012/01/21(土) 15:09:55
>>132
ありがとうございます。
改造が必要なのですね…。難しそうなので、諦めます。

134名無しさん:2012/01/21(土) 17:23:35
質問です

1.bot.php内の、特定の日専用の書き方
//bot.phpを実行したときに、2月14日のみvalentine.txtのデータを、それ以外はdata.txtのデータを使う
if(date("n") == 2 && datew("j") == 14){
$response = $eb->postRandom("valentine.txt");
}else{
$response = $eb->postRandom("data.txt");
}

2.easybotter非公式wikiに書かれていた
switch(date("m.d")){
case "06.01":
$postfile = "specialdata.txt";
break;
default:
$postfile = "data.txt";
}
$response = $eb->postRandom($postfile);//ランダムPOST

両方の違いは何でしょうか?

135名無しさん:2012/01/21(土) 19:12:28
>>134
記述形式の違い

136名無しさん:2012/01/21(土) 19:29:32
>>135さん
書き方が違っても同じ内容にできるんですか。
easybotterとは違う箇所がたくさんあるサイトが非公式wiki以外にもあった理由がわかりました。
ありがとうございました!

137名無しさん:2012/01/22(日) 12:31:49
>>136
TwitterBotでもEasyBotter(EB)でないものもあるから、他のBOT説明書やサイトの機能が必ずしもEBで使えるわけではないので注意ね

138名無しさん:2012/01/22(日) 18:22:26
>>137さん
はい、ありがとうございます!気をつけます。

139名無しさん:2012/01/22(日) 20:16:26
>>130さん
多忙で遅れました。
原因は、自動フォロー返しをする際に、
@でフォローした旨の発言をさせている状態だったのですが、
フォローした方が鍵かけていたために、
定期的に同じフォローした発言を繰り返していたことに起因していました。
フォロー返しの際に発言させないようにしたら、解消されました。

140名無しさん:2012/01/23(月) 09:55:01
>>139
終わったみたいで何よりだが
それ、過去スレで出てた内容だし、改造はスレ違いだし…

141名無しさん:2012/01/25(水) 20:37:37
すみません、ver2.05をダウンロードしたんですが、どこにもtw.txtというファイルがありません。他のtxtファイルは表示されるので拡張子の表示云々では無いと思うのですが……
そのせいか、bot.phpにアクセスすると


2分以内に受け取った@はないようです。Twitterへの投稿に成功しました。@に投稿したメッセージ: http://twitter.com//status/

とだけ表示されます。ここのURLには本来自分が作成したbotのアドレスが表示されるものと思うのですが、何がどうなっているのか教えて下さい。

142名無しさん:2012/01/25(水) 23:02:51
>>141
tw.txtを過去スレで検索
あと>>1-3読んでちゃんと非公式wiki見れ

143名無しさん:2012/01/28(土) 17:10:28
午前1〜6時までPOSTしないようにしようと思い、時間わけの記事を参考にしたのですが、停止せずにずっとPOSTし続けていました。何が問題なんでしょうか?お知恵を貸して頂けると嬉しいです…。

<?php
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(2,"reply_pattern.php");
if(date("G") > 0 && date("G") < 7){
$response = $eb->postRandom("");
}
if(date("i") == 00 || date("i") == 59 ){
$response = $eb->postRandom("data.txt");
}
?>

144名無しさん:2012/01/28(土) 19:05:18
>>143
>>122>>127

145名無しさん:2012/01/28(土) 19:07:01
>>144
あとこれ読めば大概のことはわかるよ
http://www26.atwiki.jp/easybotter_wiki/pages/33.html

ヒントはelse

146名無しさん:2012/01/28(土) 20:43:10
バージョン】 Ver.2.05
【設置鯖名】 @pages
【PHPのバージョン】5.3.9
【手動】 動かない
【実行】手動
【不明点】
phpを1から始めた初心者ですが、何度見返しても分からなくなったので質問させていただきます。
wikiの通りにファイルを編集し、アップロード後にbot.phpをクリックしたところ
500エラーが発生してしまいました。検索をかけると同じような人がいたようなので
、提案されていた対処法を試しましたがそれでもエラーが出てしまいます。
UTF-8.LFに設定してパーカッション値も666にし、ダメなら再アップロードを何度も試みたのですが結果は変わらず…
easybotter.php、setting.phpなどは真っ白なページが表示されている状態です。
以下が私のbot.phpです。

<?php
require_once("EasyBotter.php");
$eb = new EasyBotter();
//$response = $eb->autoFollow();
$response = $eb->postRandom("data.txt");
//$response = $eb->postRotation("data.txt");
//$response = $eb->reply(2,"data.txt","reply_pattern.php");
//$response = $eb->replyTimeline(2,"reply_pattern.php");
?>

昨日からずっとこの状態なのですが、もしかしたらサーバーの問題でしょうか・・・?
ご教授お願いいたします。

147名無しさん:2012/01/28(土) 20:51:26
>>146
> easybotter.php、setting.phpなどは真っ白なページが表示されている状態です。
これに何か問題があるのかね?

148名無しさん:2012/01/28(土) 21:23:35
>>147
いえ、bot.phpのみ内部エラーが発生してしまうので、これをなんとかしたいです。その二つも真っ白では宜しくないのでしょうか?重ね重ねすみません;

149名無しさん:2012/01/28(土) 22:02:32
>>148
bot.php以外をブラウザで確認しろ、という事がEB公式や非公式wikiに書いてあったかい?
bot.php以外をブラウザで見てもぶっちゃけ無意味だよ

というわけで使用してるテキストエディタとFTPは何?
まさか@Pagesのアップローダーは使ってないだろうね

150146:2012/01/29(日) 00:52:04
>>149
前スレに確認するように促すのを見かけたのですが・・・そうでしたか;

テキストエディタはgreenpad使ってます。
申し訳ない、@pagesのアップローダー使ってますorz

151146:2012/01/29(日) 02:56:14
連投申し訳ありません;
指摘があったとおりFFFTPを用いたところ手動での稼動に成功しました!ありがとうございます!!

152名無しさん:2012/01/29(日) 03:01:10
まあぶっちゃけ@pagesのアップローダー使ってても解決方法分かってれば問題はないけどな
うpる時にUTF-8が解除される、つまり…言わんでも分かるよな

153名無しさん:2012/02/03(金) 11:18:53
【バージョン】 Ver.2.05
【設置鯖名】 ロリポップ
【PHPのバージョン】5以上
【手動】 動く
【実行】 手動
【不明点】
TLへの反応は正常に動くのですが、リプライに対しては
Warning: preg_match() expects parameter 2 to be string, array given in
というエラーが出てきて、全てArrayと返信してきます。
エラーで指定された所はEasyBotter.phpの

//リプライパターンと照合
if(!empty($this->_replyPatternData[$replyPatternFile])){
foreach($this->_replyPatternData[$replyPatternFile] as $pattern => $res){
if(preg_match("@".$pattern."@u",$reply->text, $matches) === 1){

この辺りなのですが、弄ったのはreplyPatternファイルだけで
EasyBotterの中身には手をつけていません。
思い当たる節があるとすれば、replyPatternファイルの方に出ていたエラーを直すついでにと
以前使っていたEasyBotter2.03betaをEasyBotter2.05に差し替えたところかと・・・
(replyPatternの方に出ていたエラーは一応全て直し終わりました)
中途半端な差し替えをした自分がわるいので、2.05でまた1から作り直そうかと思っているのですが、
それ以外の解決方法があれば、ご教授ください。
お願いします。

154名無しさん:2012/02/03(金) 14:35:30
preg_match()の引数が不正
というわけで、replyPattern.phpの中身がミスってると思われる
怪しいのは消し過ぎ、付け過ぎ、あたりかな

155153:2012/02/03(金) 23:15:11
>>154
ありがとうございます。
消し過ぎ、付け過ぎと言われて思い当たったのが、
最近replyPattern.php内に大量にワードを追加したことだったので、
試しに半分に減らしてみたのですが(そういう意味じゃなかったらすみません)
前述のWarning: preg_match()に加えて下の行に
object(SimpleXMLElement)#12 (2) {
["error"]=>
string(22) "Status is a duplicate."
["request"]=>
string(20) "/statuses/update.xml"
}
というものが出てきました。
長いこと弄ってるはずなのにいつまでも初心者で申し訳ないです。
とりあえず、指摘してもらった通り、replyPattern.phpの中身を重点的に再度見直していこうと思います。

156名無しさん:2012/02/04(土) 00:18:12
>>155
>>154さんじゃないけどそう言う意味じゃない
ワードを付け足した時に必要な物が足りなかったり多かったり
例えば"がなかったり,がなかったり、そんな辺り

157名無しさん:2012/02/04(土) 01:06:28
>>155

["error"]=>
string(22) "Status is a duplicate."

過去にもたくさん出てると思うけど重複エラー
ツイート文増やせば消えると思うよ

158名無しさん:2012/02/04(土) 09:39:20
すみません、どんなに調べてもわからなかったので教えてください、
bot.phpを
$response = $eb->reply(2,"reply_pattern.php");
$response = $eb->replyTimeline(2,"reply_pattern2.php");

と設定しました。TL反応のphpファイルを分けたかったからです。
しかしTLにだけ反応してくれません。
EasyBotter.php内も、
//タイムラインに反応する
function replyTimeline($cron = 2, $replyPatternFile = "reply_pattern2.php"){
//タイムラインを取得(以下略)
に変更しています。
文字コードその他は確実に正しいのですが、何が原因なのでしょうか。Wikiにもフォルダは別名でわけるべき!とあるんですがまるでbot.phpの中身を一部変えるだけで反応するかのように書いてあるので正直どうしてなのかわかりません。

159155:2012/02/04(土) 10:30:19
>>156
指摘ありがとうございます。本当に初歩的な質問をしてしまってお恥ずかしい限りです。

ワードの量が多いのでミスを探すのは骨が折れるなと、
試しにダウンロードしてきたデフォルトままのreplyPattern.phpに差し替えてみたのですが、
やはりpreg_match()と出てきてArrayと返信してきます。

>>157
色々と見返してみたら"Status is a duplicate."についての記述、確かにありました。
お手数かけてしまい申し訳ないです。
ツイート文の量ですが、依然普通に稼動していた量よりも多めになっているので、
おそらく、現在全てにArrayと返信してくる状態で、同じユーザーにArrayと返そうとすると
発言重複になるからかと思われます。

160名無しさん:2012/02/04(土) 13:09:32
>>158
とりあえず
> $response = $eb->reply(2,"reply_pattern.php");
この行からしてアカン

161名無しさん:2012/02/04(土) 13:39:57
>>158
>>160の指摘について補足
http://www26.atwiki.jp/easybotter_wiki/pages/18.html

>まるでbot.phpの中身を一部変えるだけで反応するかのように書いてあるので
事実そうなんだから仕方ない
reply_pattern.php を reply_pattern2.php に名前変更してもEasyBotter.phpファイル内は
変更する必要ない。bot.phpでだけ正しく指定すればいい

162名無しさん:2012/02/04(土) 15:22:04
160,161
ご指摘ありがとうございました。
EasyBotter様のサイトに記載してあるのはこうするな、という事なんですね。
てっきり、この表記にしろという意味で書いてあるのかと思っていました……浅慮ですみません。
問題解決しました、丁寧にありがとうございました。

163名無しさん:2012/02/04(土) 22:24:03
【バージョン】 Ver.2.0x
【設置鯖名】 @page
【PHPのバージョン】
【手動】 動かない
【実行】 CRON
【実行間隔】 4分間隔
【不明点】

リプライ制限がしっかり動作してくれません…
setting.php内の高度な設定部分で5回を指定してますが7、8回リプライしてしまいます
これ以外にリプライ制限を設定することは可能でしょうか?

どなたかよろしくお願いします。

164名無しさん:2012/02/05(日) 01:45:42
【バージョン】 Ver.2.05
【設置鯖名】 @nifty
【PHPのバージョン】
【手動】
【実行】 CRON
【実行間隔】
【不明点】
bot.phpの実行を「if(date("i") % 15 == 5 || date("i") % 15 == 6){」にしたのですが、
リプライにまったく反応しなくなりました、恐らくリプライの時間設定を変える必要があると思うのですが
どうすれば良いのでしょう?教えてください

165名無しさん:2012/02/05(日) 03:09:18
>>164
必要情報が少ない。
取り合えず確認だけど
前者:5分、20分、35分、50分
後者:6分、21分、36分、51分
に動かしたいでおk?

cronはちゃんとその時間に叩くようになってる?

166名無しさん:2012/02/05(日) 03:11:55
>>163
デフォルトのは基本機能しない
使うならwikiのこちらを参照、ただし改造になるので同質問関連はこちらでのレスは×
http://www26.atwiki.jp/easybotter_wiki/pages/29.html#id_ec12d6da

167名無しさん:2012/02/06(月) 00:52:11
「自動フォロー返しした時にリプライで知らせたい」時に
相手の名前を入れて「@○○ ☓☓さん、フォローありがとうございます」的なことって出来ないのですかね…
いろいろな所を巡回してみたり、{name}と入れてみたりしたのですが、うまく行かず…
どなたか教えていただけませんか?

168名無しさん:2012/02/06(月) 01:15:18
>>167です。
フォロー/リフォローのシステムを、半自動に変えたことでこの問題は多分解決しました
お騒がせしました

169名無しさん:2012/02/06(月) 01:17:42
>>165
御返事ありがとうございます、実行したいのは前者です
非公式wikiのこのページを参考にして、やってみました
CRONでは5分周期で叩く設定になってますがこれがいけないのですかね?
http://www26.atwiki.jp/easybotter_wiki/pages/25.html

170名無しさん:2012/02/06(月) 19:07:07
>>169
5分周期、と、0分始まりの5分周期、の違いもあるけどそこは大丈夫?
とりあえず同じページの「落とし穴に注意2」を確認してみれ

171名無しさん:2012/02/07(火) 02:52:30
>>170
見てみました
data.txtの内容(この1行のみ)として紹介されている「{hour}時{minute}分{second}秒」というのがありますが
これをdata.txtの一行目に追加すればよいということなのでしょうか?

172名無しさん:2012/02/07(火) 12:11:02
>171
違うよ
その一行上やその下数行も読みなよ

173名無しさん:2012/02/08(水) 13:21:18
【バージョン】Ver.2.05
【設置鯖名】 @page
【PHPのバージョン】
【手動】 動く
【実行】 GAE-cron
【実行間隔】 投稿テストのためcronを5分間隔に設定
【不明点】 手動で動くのにcronを使うと動かない
他にも2体ほどbotを動かしていますが、そちらは問題なく動いているので原因が分かりません。

ランダムポストだけ利用したいので$response = $eb->postRandom("data.txt"); のみ実行させています。
手動では問題なく動くのですが、cronを使っても投稿されません。
GAEのcron jobで確認したところ、cron自体は動いているようです。
cronで叩くURLを確認、パーミッションは@pageのFAQを見て、.datと.txtを604に変更(他のbotも同じパーミッションで動いています)
他に考えられる原因があれば教えて頂きたいです。

174名無しさん:2012/02/08(水) 20:03:34
>>173
取り合えずコード200出てない?

175名無しさん:2012/02/08(水) 21:48:42
>>174
コード200とは何でしょう?無知ですみません。
bot.phpを何度か手動で叩いてますが、投稿されましたの文章のみで、エラーは表示されません。

176名無しさん:2012/02/08(水) 23:16:00
>>175
HTTPステータスコード 200
→要するにちゃんと行使されました
コード200以外だとちゃんと実行されていない

177名無しさん:2012/02/09(木) 00:01:08
>>176
ありがとうございます。
そのコードはどこで確認できるのでしょうか?
200が返ってくるとか500(?)が返ってくるという言葉は検索で見つけましたが、どこで確認すればいいのかは分かりませんでした。

178名無しさん:2012/02/09(木) 00:17:06
>>173-177です。
http://neoinspire.net/status_check/
こちらのチェッカーを使ってステータスコードを確認したところ、取得結果は200でした。となると、原因はcronの方でしょうか?

179名無しさん:2012/02/09(木) 01:42:50
>>178
他のは問題なく動いてて、かつcronの問題じゃなさそうとなると…
確認してるみたいだけどcronで叩くURLがやっぱり間違ってるか、タイムアウトしてるか…
あとは基本的なこととして投稿するツイートはたくさん用意してる?

180名無しさん:2012/02/09(木) 03:18:06
>>178
URLはコピぺで何度か入れ直してみていますが、恐らく間違ってはいないと思います。
タイムアウトとは具体的にどういった現象なのでしょう?言葉はよく見かけるのですが、いまいちピンとこなくて…
投稿ツイートは50パターン程入れていますし、もちろん重複しているものはありません。
@pageさんとGAEは相性が悪いというような話を耳にしたのですが、その辺りも何か関係するのでしょうか?

181名無しさん:2012/02/09(木) 13:04:20
すみません分らないので教えてください…
@pagesさんで作業してるのんですがある程度呟いてもらう言葉を入力してアップロードしてbot.phpに手動でアクセスしてみたんですが、HTTP500エラーが出てしまって困ってます。原因、どなたか分りませんか?

182名無しさん:2012/02/09(木) 14:35:26
>>180
ちょっと気になるので横入りするけど
>>174の言ってるコード200って、自分でサーバにアップしたファイルについてじゃなくて
GAE-cronの実行結果じゃないの?
わざわざ他所で確認しなくても、GAE-cron設定画面の
呼び出しURL、周期、の下の■最終起動の結果のとこにある数字でわかると思うんだけど

そこを確認して言ってるならスルーしてください

183名無しさん:2012/02/09(木) 17:05:07
>>181
500エラーでスレ検索してみて

184名無しさん:2012/02/09(木) 17:28:44
【バージョン】 Ver.2.05
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 動く
【実行】 不明
【実行間隔】 一日間隔
【不明点】 自分で設置したbotがなぜ実行されているのか

cronの設置がよく分からず放置してたbotがありまして、
あらためて最近見たところ一日ごとにツイートが投稿されていました。

自分の記憶では定期実行できず、手動でbot.phpを叩いて投稿していました。
なのになぜ定期的な投稿が出来ているのでしょうか?
しかも最近一ヶ月ほどは投稿した覚えがありません。

携帯を登録してないのでGAE Cronは使ってません。
cron-job.orgも使っていません
Windowsのタスクにも登録はなく、どうもよく分かりません。
これはウェブクローラがbot.phpを叩いてるとみて良いのでしょうか?

アクセス解析も考えましたが、phpファイルへのアクセスが記録されるのかよく
分からずできていません。

わかりにくい内容ですみませんが、どなたかよろしくお願いします。

185名無しさん:2012/02/09(木) 19:25:12
バージョン】 Ver.2.5
【設置鯖名】
【PHPのバージョン】
【手動】 動く/動かない
【実行】 CRON鯖名/ブラウザ自動更新/手動/他
【実行間隔】 ●分間隔(CRON等で定期的に実行している場合)
【不明点】 (エラーメッセージがあればコピペ推奨)

186名無しさん:2012/02/09(木) 19:31:42
【バージョン】 Ver.2.5
【設置鯖名】 xrea
【PHPのバージョン】
【手動】 動く

上記誤投稿すいません
ランダムにポストするbotで任意のフォロワーさんの名前を
表示するようにしたいのですが、{follower_name}で表記すると
表示されず、{name}で表記するとbot名が表示されてしまいます。
どのように記述すれば、ちゃんと機能してくれるのでしょうか

187186:2012/02/09(木) 20:05:32
何度もすいません
なんどか手動で試したところ
{follower_name}で動くっぽいです
お騒がせしました

188名無しさん:2012/02/09(木) 21:19:17
>>182
2012-02-09 04:09:38.292 /cronの名前 200 11ms 0kb AppEngine-Google; (+http://code.google.com/appengine)
と表示されているところのことでしょうか?
cronの実行結果は全てこのように表示されています。エラー表示はありません。
cronjobで確認してもon time Successとなっているので実行されているのかとは思うのですが…。

189名無しさん:2012/02/10(金) 00:12:32
>>184
とりあえずbot.phpのファイル名変更を推奨

190名無しさん:2012/02/10(金) 01:03:45
GAEはどうもfetchしたURLの中身をキャッシュするらしく、それではデプロイしてからしばらく経つとphpを動かしてくれなくなります。風柳さんのGAE_cronじゃないならこの辺は?
ttp://s-clair.com/relier/bot_log/gae-cron/
私も@paegsの頃自分でデプロイしたcronだと2日くらいで動かなくなってしまうので風柳さんのGAE_cron使ってみたら無事動くようになったよ
ちなみにロリポは自分のcronでも動いたんだよね

191名無しさん:2012/02/10(金) 16:14:12
「フォロー返しのついでにリプライする」ではなく
「フォローは返さないがリプライだけする」は可能でしょうか?
前者で利用しているAPIだけでは不可能で、
SQLを使わないと実現できないように思えたのですが。。。。
よろしくお願いします。

192名無しさん:2012/02/10(金) 17:50:48
>>166
163です
改造が必要なんですね。。
再度質問しなおします、ありがとうございます。

193名無しさん:2012/02/10(金) 20:47:31
【バージョン】 Ver.2.05
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 動く
【実行】 GAE-Cron
【実行間隔】 3分間隔
【不明点】 Botへのリプライにのみ反応させたいのですが、リプライパターンにある語句がTL中にある場合、勝手にTLに反応してしまいます。
TLには反応させたくないのですが、どうしたらTLに勝手に反応しないようになるでしょうか。

bot.phpは以下のみ有効にしました。
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(3,"","reply_pattern.php");

また、TLリプライを空白にすれば直ると思い、
$response = $eb->replyTimeline(3,"");
に変更し、有効にした所、APIアドレスの変更を除けば素の状態のEasyBotter.phpの416行目でエラーが発生しました。

194名無しさん:2012/02/11(土) 09:07:41
>>183 探し方が悪いのか…検索してみても表示されないんですけど。

195名無しさん:2012/02/11(土) 10:57:12
>194
500で検索するとこのスレ内だけでも複数引っ掛かるんだが、君のPC大丈夫?
ググってみてもそれなりに答え拾えるし

言われたまま額面通りにしかできない人ならごめんね

196184:2012/02/11(土) 10:59:02
>>189
bet.phpに変更したところ投稿されなくなりました。
どうなってるんでしょうか。

197名無しさん:2012/02/11(土) 23:21:09
>>193
DLした時のbot.phpをよく読んでいますか?

エラーでもなんでもなく
TL反応を実行した時に返信用ファイルが見つからない時はreply_pattern.phpから返信するようになっている
だから
$response = $eb->replyTimeline(3,"");
とやってもTL反応は実行できてしまいます

つまり、TL反応させないためには
・コメントアウトする
・記述しない
の2パターンがあるわけですね

そして、「コメントアウトする」件についてはbot.phpとEB公式で書いてある

198名無しさん:2012/02/11(土) 23:23:43
>>196
どうなってるもこうなってるも
bot.phpのURLがバレたからURL表示してる何者かがいただけだよ
その何者かってのは人間かクローラーなんかのプログラムかは知らん

bet.phpもバレればまたURL表示する何者かが出現可能性はある
心配なら実行ファイル自体をWEBから削除するのが一番安全だ

199184:2012/02/11(土) 23:48:15
>>198
ということはbotの投稿間隔は制御しきれないという事ですか?
とりあえずもう一度放置して様子を見てみます。ありがとうございました。

200名無しさん:2012/02/12(日) 22:29:39
【バージョン】Easybotter 2.05beta
【設置鯖名】@pages
【PHPのバージョン】5
【実行】手動
【手動】 動かない
ファイルをアップロードし、bot.phpを開いても真っ白になるだけでなにも表示されません。この質問はかなり既出なのですがみなさん自己解決かミスを指摘されて動作が出来るようになっています。しかしそのミスをしていない場合どうして真っ白になってしまうのかまだ分かりません。
○エンコードUTF-8(TeraPadはUTF-8N)BOMなし、改行コードはLFになっています
○data.txtとreply_pattern.phpとlog.datのパーミッションが666になっています(@pagesは666⇒600との指定ということなので今は600にしています。666でも真っ白なのは変わりませんでした)
○setting.phpで何か間違ってないか⇒ないと思います
bot.phpの$response = $eb->autoFollow();の部分だけ//を外してみたり、他の場所一か所だけ//を外してみたりしていますが、全く反応してくれません。
○@pagesの自分のページらしきところにアップロードしたものがファイル形式で表示されており、そこのbot.phpを確認すればいいんですよね?
○data.tetは600にしなければ表示されます

何か解決がありましたらよろしくお願いします

201名無しさん:2012/02/13(月) 01:14:39
>>200
FTPは?

202名無しさん:2012/02/13(月) 02:45:59
>>200
取り合えずうp後のファイルをチェック。チェックするのはdata.txtなどツイートするファイル。
●Character encoding:のところがちゃんとUTF-8、LFになってるか否か。なってなければそれに変更する。
 @pagesのFTPであげた場合は必ずチェック。他のFTPであげた場合でもチェックしておいたほうが無難。
●パーミッションは@pagesでも666でいい。666にしてはいけないものはEasyBotter.php、bot.php、setting.phpのみ。それ以外は666でおk。

203名無しさん:2012/02/14(火) 14:40:14
回答ありがとうございます。無事手動でbotを動かせました。
TeraPadで編集したものをアップロードしたつもりだったのですが、どうやら編集前のものがアップロードされていたみたいでした…すみません。Zipをそのままアップロードすると解凍はされるけれど、それは編集前のものなんですね…
>>202 パーミッションは666でいいんですか〜ありがとうございます。製作者さんが666指定なのでそっちにしておきますね

204名無しさん:2012/02/16(木) 22:14:15
>>173です。
ttp://s-clair.com/relier/bot_log/gae-cron/こちらを参考にcronを設定したところ、botが動くようになりました。
ありがとうございます。
>>190さんの言うようにキャッシュが原因だったのかどうかはイマイチわかりませんが…。

ところで、最初に作ったbotはttp://d.hatena.ne.jp/twibotbot/20091211/1260500313 の手順で設定していたのですが、こちらだとcashコントロールの記述はありませんよね?
こちらにその記述を加えることはできますか?
また、どのように入れればいいかも教えて頂きたいです。

205名無しさん:2012/02/17(金) 00:12:07
reply_pattern.phpが大きすぎる(2000行弱)ため、
読み込み時間がかかりすぎてエラーになってしまいます。

返信文を条件毎にそれぞれ別々のtxtファイルとして分割し、
reply_pattern.phpで条件によって必要なtxtだけを参照するようにできれば
ロード時間を短縮できそうだと思うのですが、そのようなことは可能でしょうか?

206名無しさん:2012/02/17(金) 17:08:28
>>205
本当にタイムアウトなのか、まずは調べた方が良い

で、可能といえば可能だけど改造がわりと大変
初心者のうちはまずやめとけ
(以前スクリプト公開してるとこがあったが、閉鎖したようだ)

むしろ2000行程度でヘタるサーバーを変えた方が後々の為には良い
フォロワー5000以上、リプ返信もTL反応多く、返信用のファイル2MBを軽く超えでも30秒以上かからず動いてるわ

207名無しさん:2012/02/20(月) 02:04:22
【バージョン】 Ver.2.05
【設置鯖名】 @PAGES
【PHPのバージョン】
【手動】 動く
【実行】 GAE-cron
【実行間隔】 通常60分、リプライ4分
【不明点】
不明点というか、ディレクトリ直下に置いた方がいいというような話をよく聞くんですけど、ディレクトリ直下ってどこなんでしょう?
今稼働してるbotは最初のページに『bot』というフォルダを置いて、その中にEasyBotterの中身を全部入れて動かしてます。
問題なく動くんですけど、フォルダ置く場所が間違っているなら変えようと思いまして・・・

それから、2体目を作る時は、1体目とは別に@PAGESでアカウントを取得しないといけませんか?

208名無しさん:2012/02/20(月) 03:01:39
>>207
例えば@pagesならこう↓
ttp://www**.atpages.jp/ユーザー名/
ちなみに今動いてるなら別に問題ないし、動かす必要もない。

2体目も『bot』というフォルダの中に入れていい。
アカウント取るのは容量を超えそうになる場合だけど、
まず「普通」はそんな大容量すぎるBOTなんかないから取る必要なし。

209名無しさん:2012/02/20(月) 03:57:08
>>ありがとうございます。勉強になりました!

210名無しさん:2012/02/22(水) 03:26:55
2.0を使ってます。
特定の単語に反応しないように設定する事は[[END]]を用いてできたのですが、
「.com」や「.jp」などURLを含むツイートに反応しないようにしたいのにうまくいきません。
「.com」を含むツイートを除外したい場合
$data = array(
"\.com"=> array( "[[END]]",),);
ではだめなのですか?
どうすればURL(短縮含む)を除外できるか教えてください。お願いします。

211名無しさん:2012/02/22(水) 17:10:18
>>210
つ【メタ文字】

ついでに言うと「http」か「ttp」の方が良いよ

212名無しさん:2012/02/22(水) 18:03:22
>>211
「.」がメタ文字ってことですよね?
"\.com"としてバックスラッシュでエスケープしてるんですが、それじゃだめなんですか?
それ以上わからないのですが・・・

短縮URLだとttpが表示されないのでドメインで指定したいんです

213名無しさん:2012/02/22(水) 22:11:37
【バージョン】 Ver.2.0x
【設置鯖名】 @pages
【PHPのバージョン】
【実行】 GAE-CRON
【実行間隔】 2分間隔
【不明点】
一定の時間帯だけ違うリプライをするようにしようと思い、
下のようにbot.phpを書き換えたのですが、全て通常のリプライで返ってきてしまいます。原因はどこなんでしょうか…

<?php
require_once("EasyBotter.php");
$eb = new EasyBotter();

if(date("G") > 3 && date("G") < 8){
$response = $eb->reply(2,"soutyou.php");
} else if(date("G") > 17 || date("G") < 3){
$response = $eb->reply(2,"night.php");
} else {
$response = $eb->reply(2,"reply_pattern.php");
}

//1~7時の間はPOSTしない
if(date("G") > 0 && date("G") < 8){
$response = $eb->postRandom("");
}
?>

214名無しさん:2012/02/23(木) 14:55:39
>>213
頻出過ぎて説明が面倒なんで過去ログで>>143-145

3時台と8時〜17時台はreply_pattern.phpから返信する、とご自分で指定してらっしゃるようですが…はて?

215名無しさん:2012/02/24(金) 02:44:36
>>210
なんとか自己解決しました。
お邪魔しました。

216名無しさん:2012/02/24(金) 20:50:46
【バージョン】Ver.2.0x
【設置鯖名】 さくらネット
【PHPのバージョン】5
【手動】 動く/動かない
【実行】 CRON鯖名/ブラウザ自動更新/手動/他
【実行間隔】 15分

php自体初心者です。
御聞きしたい事がAさんが「おはよう」とつぶやいたらBotが自動で「Aさんおはよう」の様にフォロワーのつぶやきに反応して返信する方法ってどうやるのですか?

217名無しさん:2012/02/24(金) 20:59:40
>>1の公式ページでVer.2.0基本の設定をひと通り読むといいと思う 非公式wikiも便利

218名無しさん:2012/02/26(日) 20:03:18
はじめまして

botが@返信に反応するかどうかのところなんですが、
反応はするのですが、 reply_patternに書き込まれたものでなく
dataの中からランダムに反応して返信してきているみたいです・・・。
bot.phpの設定は間違っていないと思うのですが…。
良かったらアドバイスお願いできませんか?

bot.phpの内容は

<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();

//=============================
//botの動作をここに書いてください
//先頭に//がある行はコメント扱いなので実行しません。実行したい行の頭の//を削除してください。
//=============================
$response = $eb->autoFollow();
$response = $eb->postRandom("data.txt");
//$response = $eb->postRotation("data.txt");
$response = $eb->reply(2,"data.txt","reply_pattern.php");
//$response = $eb->replyTimeline(2,"reply_pattern.php");

になってます。

219名無しさん:2012/02/27(月) 11:12:59
>>218
reply_pattern.phpの書き方とコード関係を確認
@pagesのファイルマネジャー使ってたらFTP使え

220名無しさん:2012/02/29(水) 01:31:54
初めまして。
リプライに{tweet}を使いたいのですが使えません。
EasyBotter.phpは最新APIに変える以外は何も弄っていません。

【bot.phpの内容】
<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->postRandom("data.txt");
$response = $eb->reply(2,"","reply_pattern.php");
$response = $eb->autoFollow();
$response = $eb->replyTimeline(2,"tl_pattern.php");
?>


reply_pattern.phpに、試しに

"おうむがえし"=> array(
"{tweet}",
),

と記述し、botあてに「おうむがえし云々〜」とリプライを送ったのですが、
botからは空リプライしか返ってきません。
どうやったらリプライに{tweet}を使えるようになりますか?

221220:2012/02/29(水) 01:54:21
>>220です。自己解決しました。
もしかしたら私と同じことで躓いている方もいらっしゃるかもしれませんので、
解決方法を書かせていただきますね。

EasyBotter.php内の、

if(strpos($text,"{tweet}") !== FALSE && !empty($reply)){
$tweet = preg_replace("@\.?\@[a-zA-Z0-9-_]+\s@u","",$reply->status);
$text = str_replace("{tweet}",$tweet,$text);
}

の二行目にある「$reply->status」を「$reply->text」に書き換えます。
こうすることで、リプライに{tweet}が使えるようになります。

222名無しさん:2012/02/29(水) 17:46:52
自分だけでは思いつかなかったので助言頂けると幸いです。
botがある特定の言葉を呟いた数分後にもう一度呟かせたいのですが、どのように設定すればいいかわかりません。
例:
botA : こんばんは!
数分後
botA : 間違えた、おはよう!!
のように呟かせたいです。

TLに反応する、の設定で、違うbotがつぶやいたものを見てつぶやかせることはできるのですが、自分の呟きを見て再度つぶやくことはできませんでした。
何か方法があれば教えてください。

223名無しさん:2012/03/01(木) 00:36:48
【バージョン】Ver.2.0x
【設置鯖名】 @pages
【PHPのバージョン】5.5
【手動】 動く
【実行】 ブラウザ自動更新
【実行間隔】 2分間隔(CRON等で定期的に実行している場合)
【不明点】 何回も何回も見直したのですがどうしても分かりません。
不具合点は、下記にあるものなんですけれど、
朝と昼、夕方、夜、深夜に別れて別々にポストをさせるようにしてあるのですが、このときの深夜においてなぜかポストを30分と指定してあるのに、クーロンが定期的に動く2分おきにポストされるようになってしまうのです。
深夜だけなので、深夜のところを弄ればどうにかなるのだとは思いますがどうしても書き換えても2分おきにポストされてしまいます。
みなさんアドバイスください。


if(date("i") % 30 === 0){
if(date("i") % 30 == 0 && date("G") >= 5 && date("G") <= 12){
$response = $eb->postRandom("morning.txt");
}else if(date("i") % 30 == 0 && date("G") >= 12 && date("G") <= 16){
$response = $eb->postRandom("day.txt");
}else if(date("i") % 30 == 0 && date("G") >= 16 && date("G") <= 18){
$response = $eb->postRandom("after.txt");
}else if(date("i") % 30 == 0 && date("G") >= 18 || date("G") <= 1){
$response = $eb->postRandom("night.txt");
}else if(date("i") % 30 == 0){
$response = $eb->postRandom("midnight.txt");
}if(date("i") % 30 == 0 && date("n") == 3 && data("j") == 3){
$response = $eb->postRandom("hinamaturi.txt");
}

224名無しさん:2012/03/01(木) 13:00:05
【バージョン】Ver.2.05
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 動く
【実行】 GAE-cron
【実行間隔】 2分間隔
【不明点】多重リプライをする

1つのツイートにつき2回返事をしてしまうことがたまにあります。
実行間隔は2分にしておきたいので、間隔を長めにとる以外で解決できる方法はありますか?

ちなみにこちらのサイトを参考にしてcronの設定をしました。
ttp://s-clair.com/relier/bot_log/gae-cron/
タイムアウトエラーに関する設定の辺りが怪しいかなとも思うのですが関係ありますか?

225222:2012/03/01(木) 15:04:19
スレチでした。すみません。

226名無しさん:2012/03/06(火) 17:35:58
>>223
if(date("i") % 30 === 0){
if(date("i") % 30 == 0 && date("G") >= 5 && date("G") <= 12){

↑この時点で既に…

227名無しさん:2012/03/07(水) 15:27:36
【バージョン】Ver.2.0x
【設置鯖名】 ロリポップ
【PHPのバージョン】5以上
【手動】 動く
【実行】 ブラウザ
【実行間隔】 10分間隔
【不明点】
反応ワードを含まないリプライを飛ばすと反応せず以下のエラーが出ます

Twitterへの投稿に失敗しました。
ユーザー名:@****
object(SimpleXMLElement)#10 (2) {
["error"]=>
string(22) "Status is a duplicate."
["request"]=>
string(22) "/1/statuses/update.xml"

重複しているとのことですが何がどう重複しているのかわかりません…
このエラーは文字化けする問題でWikiに該当がありましたが今回の問題は文字化けではありません
ちなみにbot.phpは
$response = $eb->postRandom("data.txt");
$response = $eb->reply(10,"data.txt","reply_pattern.php");
このようになっています
どこを間違ってしまっているのでしょうか
既出パターンだと思われますが過去スレをここ二日ほど探しているものの該当が見つけられません
お教えいただけると助かります

228227:2012/03/07(水) 15:46:20
すみません…自己解決しました

229名無しさん:2012/03/09(金) 03:27:23
【バージョン】 Ver.2.05
【設置鯖名】 @pages
【PHPのバージョン】
【EasyBotterの改造】改造していない
【手動】 動く
【実行】 GAE-cron
【実行間隔】 2分間隔
【不明点】 通常POST(30分毎)は問題なくするものの、リプライに全く反応しない。
念のためそれまでの呟きを全て消して、別のアカウントから@で話しかけても「2分以内に受け取った@はないようです。」としか出ない。

bot.php内は
<?php
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(2,"data.php","reply_pattern.php");
if(date("i") % 30 == 0){
$response = $eb->postRandom("data.php");
}
?>
としてある。
アップロードにはFFFTPを利用。

とりあえずこことwikiやその他検索して出てきた掲示板等を参考にしつつ以上のようにしてみたのですが、原因は全くわかりません。
心当たりもないのですが、もう一つ数か月前に作ったbotも最初はリプライにも反応していたのがいつの間にか自動POSTとTLの単語の反応のみになってしまっていました。
こちらはreply_pattern.phpとbot.phpの中身の書き換えが原因かと思うのですが、どこに問題があるのかわかっていません。
調べている途中で、@pagesだとリプライに反応しないと言う書き込みを見かけたのですが、サーバーの問題…と言う事はあるのでしょうか?
もし何か改善策等のお心当たりがあるようでしたら、助言していただけるとありがたいです。
よろしくお願いいたします。

230229:2012/03/09(金) 03:48:50
連続で申し訳ありませんが、追記です。
30分毎の自動POSTと同じタイミングでリプライを送ったら自動POSTもしなくなってしまったため、ただ今試験的に

if(date("i") % 30 == 0){
$response = $eb->postRandom("data.php");
}

から

//bot.phpを実行したときに毎回実行される
$response = $eb->postRandom("data.php");

に書き換えて手動で試していたところ、botにリプライしてから2分と数十秒は手動でもPOSTが出来ませんでした。

何故そうなるのか余計に分かりません……。
どなたかお分かりでしたら教えて頂けないでしょうか……。
お手数ですが、よろしくお願いいたします。

231名無しさん:2012/03/10(土) 01:34:29
【バージョン】 Ver.2.05
【設置鯖名】 ロリポップ
【PHPのバージョン】 5以上
【手動】 通常ツイートのみ動く
【実行】 ブラウザ
【実行間隔】通常ツイート30分間隔、リプライ 5分間隔
【不明点】
先ほどまでbotと会話をつなぐテストをしており、botはきちんとリプライを返していたのですが
突然botが私に向けてArrayと謎のツイートしたきり何の反応も示さなくなりました
このような現象は例にあるのかと調べたところ不明のままです
また、手動でやると、通常ツイートは問題ないのに、リプライは返しません
「●分以内に受け取った@はないようです」という表示もされなくなりました
通常ツイートとリプライはbot.phpとbot_re.phpというように分けていますが
今まで2、3日間不具合はありませんでした
どこに原因があるのかまったくわかりません
心当たりのある方いらっしゃいますでしょうか

232231:2012/03/10(土) 20:22:08
すみません、今日までいろいろ調べていたところ
reply_pattern.phpのどこかで入力ミスしていることがわかりました
自力で解決できそうです

233名無しさん:2012/03/13(火) 15:25:46
【バージョン】 Ver.2.0x
【設置鯖名】 atpages
【PHPのバージョン】
【手動】 動かない
【実行】 ブラウザ自動更新
【実行間隔】 2分間隔
【不明点】
Twitterへの投稿に失敗しました。
ユーザー名:@botのID(伏せています)

object(SimpleXMLElement)#5 (2) {
["error"]=>
string(33) "Read-only application cannot POST"
["request"]=>
string(20) "/statuses/update.xml"
}

非公式wikiでの手順をやっていたらこうなりました、どこを直せばいいのか教えてくださいm(__)m

234名無しさん:2012/03/13(火) 15:33:15
>>233
Read-only application cannot POSTとはどういう意味かだな

235233:2012/03/13(火) 15:58:51
ちなにみOAuthはhttps://dev.twitter.com/を使っています。

236233:2012/03/13(火) 16:06:18
すいません、自己解決しました。
どうもありがとうございました

237名無しさん:2012/03/15(木) 21:28:44

【バージョン】 Ver.2.0x
【設置鯖名】 @page
【PHPのバージョン】2.05
【手動】 動かない
【実行】 CRON GAE
【実行間隔】 2分間隔(CRON等で定期的に実行している場合)
【不明点】

突然botがリプライに反応しなくなったことに気付き、
手動確認を行おうとしたところ、


「2分以内に受け取った@はないようです。」という表示が出ている。

試しにリプライを送る

手動でリロード

ロード後の画面は真っ白になる

繋がらなくなる

五分ほど時間をおいてからリロードすると「2分以内に受け取った@はないようです。」という表示が出ている。

というパターンが繰り返されます。
全てUPし直すなどの方法を取ってみたのですが、未だ解決できません。
何がエラーの原因となっているのか、可能性があるものを教えてくだささい。

238名無しさん:2012/03/15(木) 22:03:26
>>1->>3はちゃんと見て調べたり対策講じてみて、それでもわからなかったのかな?

以下>>3のコピペ

・アップしたら真っ白になるだけ/文字化けしてる
   エンコードUTF-8(TeraPadはUTF-8N)BOMなし、改行コードはLFになってるか
   data.txtとreply_pattern.phpとlog.datのパーミッションが666になってるか(サーバーによって違う場合もあり)
   setting.phpで何か間違ってないか

239名無しさん:2012/03/16(金) 08:31:39
>>238
お返事ありがとうございます。

・TeraPadはUTF-8N、改行コードはLF確認しました
・data.txtとreply_pattern.phpとlog.datのパーミッションはサーバーに合わせて606指定済みです
・setting.phpももう一度うpし直して試しました

以上のことを行ったのですが、リプライも定期ツイートまでもしなくなってしまいました。
予想されるエラーがあったらどうか教えてください。

240名無しさん:2012/03/16(金) 08:42:21
237,239の続きです。

・自動フォロー返し&フォローありがとうツイートは正常に行っている。
・手動リロードしてみたところ以下のものが表示される。

Twitterへの投稿に失敗しました。
ユーザー名:@なんとか_bot

object(SimpleXMLElement)#10 (2) {
["error"]=>
string(22) "Status is a duplicate."
["request"]=>
string(22) "/1/statuses/update.xml"
}
Twitterへの投稿に失敗しました。
ユーザー名:@なんとか_bot

object(SimpleXMLElement)#5 (2) {
["error"]=>
string(22) "Status is a duplicate."
["request"]=>
string(22) "/1/statuses/update.xml"
}
2分以内に受け取った@はないようです。


これは調べてみたところ、ツイートが重複してしまうから送れないというエラーということがわかったのですが、
dataやreply用の言葉は50以上登録しています。

とりあえずもう一度teraPadの文字コードの確認や、パーミッションをeasybotter指定・サーバー指定のものに切り替えるなど試してみたいと思います。

241名無しさん:2012/03/16(金) 10:14:38
240の続きです。連投失礼いたします。
"Status is a duplicate."については、自動フォロー返し時のリプライ機能(easybotter.php)を外した所
表示が消えました。
リプライの不具合についてはまだ解決しておりません。アドバイス宜しくお願いいたします。

242名無しさん:2012/03/16(金) 16:02:50
>>241
頻出だが「サーバーアップ後」の改行コードと文字コードを調べてる?
アップ前の自分のパソコン内のファイル見ても仕方ないが

243名無しさん:2012/03/16(金) 19:37:15
>>242
FFFTPを使用しています。
再度サーバーアップ後の全てのファイルをtaraPadでUTF8N/LFの確認をしたところ、
log.datがダウンロード後開いてみるとShiftの文字コードになっており、
文字コードと改行コードを整えて上書き保存してみても、
開くと必ずshiftになっています。

これが原因かと考え、自分で調べてみたところ、
「真っ白で何も書いていないファイルはshiftで読まれることもある」といったことが
書かれたページが出てきたのですが…

やはりこのdatが異常なのでしょうか。
とりあえず他のエディタをダウンロードして、datを開き試してみます。

244名無しさん:2012/03/16(金) 20:50:02
237,239,240,241,243の者です。
datについてはphpエディタで確認したところ大丈夫だったので、
もう一度全て入れ直しました。
全て一から設定し直したところどうにか治りましたが、未だに何が原因だったのかわかっていません…

お騒がせいたしました。アドバイスありがとうございます。

245名無しさん:2012/03/25(日) 15:27:17
アドバイスお願いします。
【バージョン】 Ver.2.0
【設置鯖名】 @pages
【PHPのバージョン】5.2
【手動】 動かない
【実行】 GAEcron
【実行間隔】 2分間隔
【不明点】
先日まで問題なく動いていたのですが、自動フォローの機能をつけようと思いbot.phpとEasyBotter.phpを更新したところ、
自動フォローは出来ましたが何故かリプライだけができなくなってしまいました。
定期ポスト、TL反応は今まで通りできています。
bot.phpとEasyBotter.phpを前の状態に戻してみたのですが、変わりませんでした。
リプライを受け取った時に手動でbot.phpにアクセスしてみると、「ファイル作成に失敗\n」と表示されています。
以下bot.phpの中身です。

<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(2,"data2.txt","reply_pattern.php");
if(date("i") == 0){
$response = $eb->postRotation("data.txt");
}
$response = $eb->replyTimeline(2,"reply_pattern2.php");
?>

・エンコードはUTF-8、改行コードはLF
・data.txtとreply_pattern.phpとlog.datのパーミッションは666
・setting.phpは何度も確認しましたが間違っていないと思います

「ファイル作成に失敗\n」でぐぐってみたのですが、それらしい答えが見つからなかったので質問させて頂きます。
どの部分を誤るとこのような表示になるのでしょうか…?アドバイスよろしくおねがいします。

246名無しさん:2012/03/25(日) 19:37:42
初めまして、
完全初心者で初めてbot編集します。
bot編集でとても分からないのです。

【バージョン】2.05(botのバージョン?
【設置鯖名】 オロチサーバー
【PHPのバージョン】5.2.9 http://w12.oroti.net/~rent/search.php
【実行】 手動
【手動】 動かない
【不明点など】 ftp://w12.oroti.net/public_html/bot/frameabc/bot.php
(エラーメッセージがあればコピペ推奨)
<?php
//=============================
//EasyBotter繧貞他縺ウ蜃コ縺励∪縺・//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();

//=============================
//bot縺ョ蜍穂ス懊r縺薙%縺ォ譖ク縺・※縺上□縺輔>
//蜈磯�ュ縺ォ//縺後≠繧玖。後・繧ウ繝。繝ウ繝域桶縺・↑縺ョ縺ァ螳溯。後@縺セ縺帙s縲ょョ溯。後@縺溘>陦後・鬆ュ縺ョ//繧貞炎髯、縺励※縺上□縺輔>縲・//=============================
//$response = $eb->autoFollow();
//$response = $eb->postRandom("data.txt");
//$response = $eb->postRotation("data.txt");
//$response = $eb->reply(2,"data.txt","reply_pattern.php");
//$response = $eb->replyTimeline(2,"reply_pattern.php");

文字化けがして動きません。
使用しているアップローダーはFFFTP1.97です。
@pagesのほうでやってみようかと思ったのですが、
おろちでできるならおろちでやろうと思いました。

文字コードなどはTeraPadであわせました。
666とかもあわせました。
セッティングphpもあわせました。

HTMLは分かるのですがphpは分かりません。

希望回答

①おろちサーバーでの作成は可能か。
②可能だとすれば改善点はどこか。
③不可能だとすれば@pagesで行う場合注意点はどこか。

助言などもいただけたらうれしいです。

247名無しさん:2012/03/26(月) 09:12:33
246です。
@pagesにしたら動きました;
無駄レス失礼しました;

248名無しさん:2012/03/27(火) 19:59:25
【バージョン】2.05
【設置鯖名】 @pages
【PHPのバージョン】
【実行】 gae-cron
【手動】 動く
【不明点など】
パーミッションについての説明を読み飛ばしてしまっていて今まで@pagesの説明書にあったパーミッション

『拡張子が .txt や .dat や .log などPHPで読み書きされるデータファイル ==> 606』

で動かしてたんですが、
666にした方がいいんでしょうか?
違いがよくわからないので教えて頂けると助かります。
ちなみに、bot自体はエラーも出さずに問題なく動いています

249名無しさん:2012/03/29(木) 20:35:32
>>220
助かりましたアリガトゴザイマス☆

250名無しさん:2012/03/31(土) 17:30:53
Unicodeの文字をdata.txtに入れたいんだけど
Unicodeで保存したらエラー出て呟けなかった

Unicode特有の文字を呟かせるにはどうすればよいでしょうか

251名無しさん:2012/03/31(土) 21:03:52
【バージョン】2.05
【設置鯖名】 @pages
【PHPのバージョン】5.2系
【実行】 gae-cron
【手動】 動く
【不明点など】時間分け構文を組んでも特定ファイルしか参照しない

 初歩的な事かもしれませんが、製作しているbotの時間わけ構文を
以下のように組んだのですが、data_12.txtだけを参照してしまい
他のファイルを参照してくれません。

if(date("G") > "5" && date("G") < "8"){
$response = $eb->postRandom("data_06.txt");
} else if(date("G") > "7" && date("G") < "11"){
$response = $eb->postRandom("data_07-08.txt");
} else if(date("G") > "10" && date("G") < "12"){
$response = $eb->postRandom("data_09-11.txt");
} else if(date("G") > "11" || date("G") < "13"){
$response = $eb->postRandom("data_12.txt");
} else if(date("G") > "12" || date("G") < "16"){
$response = $eb->postRandom("data_13-15.txt");
} else if(date("G") > "15" || date("G") < "18"){
$response = $eb->postRandom("data_16-17.txt");
} else if(date("G") > "17" || date("G") < "21"){
$response = $eb->postRandom("data_18-20.txt");
} else if(date("G") > "20" || date("G") < "1"){
$response = $eb->postRandom("data_21-00.txt");
} else {
$response = $eb->postRandom("sleeping.txt");
}

252名無しさん:2012/03/31(土) 21:10:28
>>251の者です。慌てて投稿した事に後で気づきました……。
皆さんのお力添えをお願いします。

253名無しさん:2012/04/01(日) 12:49:15
>>251
一行ずつ実際どの時間帯を指定してるのか見直してみたら?
&& と || の違いに気をつけながら日本語で。

> if(date("G") > "5" && date("G") < "8"){
> $response = $eb->postRandom("data_06.txt");

たとえばこの最初の部分は 5より大きく「かつ」8より小さい時間、つまり6時〜7時

> } else if(date("G") > "11" || date("G") < "13"){
> $response = $eb->postRandom("data_12.txt");

そしたら問題の部分は12時〜23時「または」0時〜12時、つまり0〜23時になってる

あと、それだけ細かく分けるなら、><で範囲指定するより==でそれぞれの時間を直接指定したほうが
わかりやすいと思う。

254名無しさん:2012/04/01(日) 21:47:35
>>253さん
 あれから色々と調べて回ったり非公式wikiの例文とにらめっこで手直ししていたところ、
ご指摘どおりの部分で書き間違いをやらかしていた事に気づきました。
 多分コピペした時に最後の行から複製したのが原因だと思います。
 自己解決した後ではありますがご指摘ありがとうございました。

255名無しさん:2012/04/02(月) 22:17:07
【バージョン】2.05
【設置鯖名】 @pages
【PHPのバージョン】5.2系
【実行】 gae-cron
【手動】 動く
【不明点など】デフォルトでの呼び方が上手くいかない

http://theninjabot.blog97.fc2.com/blog-entry-19.html
こちらのサイトの記述を参考に特定IDの呼び方を
固定しているのですが、デフォルト部分を『○○先輩』と
設定しようとして以下の通りに記述すると『先輩』としか
返してくれません。
 この記述をどういじれば良いのかずっと調べているのですが
まったく分からずに困っています。
どなたかお知恵をお貸し願えるでしょうか?

if(strpos($text,"{name}") !== FALSE){
if(!empty($reply)){
switch($reply->user->screen_name){
-------------------省略---------------------
default:
$text = str_replace("{name}",$rply->user->name . "先輩" ,$text);
}
}else{
$randomTweet = $this->getRandomTweet();
switch($randomTweet->user->screen_name){
-------------------省略---------------------
default:
$text = str_replace("{name}",$randomTweet->user->name . "先輩" ,$text);
}
}

 省略してある部分はすべて固定用の記述で、
こちらの動作は確認済みとなっています。

256名無しさん:2012/04/02(月) 23:24:54
>>255のものですが、よくよく見直したら'e'が抜けている事に気づき、
そこを修正したらちゃんと呼んでくれました。
確認不足のまま質問してしまいすみませんでした。

257名無しさん:2012/04/03(火) 07:52:25
【バージョン】2.05
【設置鯖名】 @pages
【PHPのバージョン】5.3.10
【実行】 gae-cron
【手動】 動かない
【不明点など】パーミッション値

先日まで全て問題無く動いていたのですが、少し変更を加えている内にリプライが手動ですら動かなくなりパーミッションの問題かと思って触っている内にbot.phpの画面が真っ白になって手動ポストもしなくなってしまいました。
なので@pagesさんのhelpを見ながらphpを644、txtやdatを606(604)に変更してみたのですがそれでも画面は白いままで、その後、過去スレや公式ページ、wikiなど参考にさせていただいて色々と試してみたのですが結局元通りには戻りませんでした。
今は@pagesさんのhelp通りの数値に戻していますが現状は変わっていません。bot.phpやreply-patternなどにミスが無いか確認したのですがそれらしいものは見当たらず、エンコードや改行コードも確認したのですが問題ありませんでした。
どなたかお力添えをいただけないでしょうか。お願い致します。

258名無しさん:2012/04/03(火) 09:34:46
そこまで拗れてしまったら最初からやり直しがいいと思う。公式から落としたEBをそのままUPしてちゃんと動くようになったら
bot.phpやreply-pattern.phpを一つづつ動作確認しながら直してくのが早い

259名無しさん:2012/04/03(火) 11:25:40
ありがとうございます。
ご指摘通り一度初めからやり直してみようと思います。
またどうにも分からない部分があったらこうして質問させていただくかもしれませんが、その時はまたよろしくお願い致します。

260名無しさん:2012/04/03(火) 16:31:58
FFFTPでアップロードするところまでできました。
そのあと「twitterbot/bot.php」を貼り付けても
404 Error - Not Found

指定されたページ(URL)は見つかりません。
と出ます。
どうすればよいのでしょうか?
ちなみにatpagesで作りました。

261名無しさん:2012/04/04(水) 02:51:59
>>260
まずは>>1-3

262名無しさん:2012/04/04(水) 02:52:23
>>260
まずは>>1-3

263名無しさん:2012/04/04(水) 09:48:52
>>261
役に立ちそうなのは全くありませんでした。

264名無しさん:2012/04/05(木) 03:10:35
【バージョン】2.05
【設置鯖名】 @page
【PHPのバージョン】5.3.10
【手動】 動かない
【実行】 SetCronJob
【実行間隔】 3分間隔
【不明点】
時間の条件に合わせて違うポストをするようにしたいと思っています。
現在は試しに、1時間の30分より前か、後かで条件分けをしています。

if(date("i") < 30){
$response = $eb->postRandom("days_7.txt");
} else {
$response = $eb->postRandom("data.txt");
}

ただ、data.txt単体でしたら手動でもcronでも問題なく動くのですが、
days_7.txt単体だけ(if(date("i") < 30){$response = $eb->postRandom("days_7.txt");} など)にして手動で動かそうとしても動きません。
以下がdays_7.txtを文章に記載した際に出るエラー文です。

object(SimpleXMLElement)#5 (2) {
["error"]=>
string(34) "Could not authenticate with OAuth."
["request"]=>
string(22) "/1/statuses/update.xml"
}
または
object(SimpleXMLElement)#5 (2) {
["error"]=>
string(47) "Invalid Unicode value in one or more parameters"
["request"]=>
string(22) "/1/statuses/update.xml"
}

新しく呟き内容のtxtを増やした場合、EasyBotter.phpの改変も必要なのでしょうか?
調べてみても、ただbot.php内に新しいtxtを増やした場合の条件分けしか載っていないので、
EasyBotter.phpの改変は必要ないのかと弄っていないのですが、
そのままだとどうやってもdays_7.txtを読み込んでくれないので、もうお手上げ状態になってしまいました。
お手数ですがどなたかご教授賜れませんでしょうか。何卒よろしくお願いいたします。

265名無しさん:2012/04/05(木) 21:34:10
【バージョン】2.05
【設置鯖名】 @page
【PHPのバージョン】5.3.10
【手動】 動かない
【実行】 【実行間隔】 3分間隔
【不明点】

266名無しさん:2012/04/05(木) 21:37:45
>265
レス誤爆しました。失礼しました。

267名無しさん:2012/04/06(金) 07:59:39
【バージョン】2.05
【設置鯖名】 @pages
【PHPのバージョン】5.3.10
【実行】 gae-cron
【手動】 動かない
【不明点など】bot.phpが白紙状態

現在、wiki通りの手順でリプライだけを行うよう指定し、FFFTPでアップロードするところまで来ています。
そのままではbot.phpは真っ白なので色々パーミッションを設定してみたのですが、結局bot.phpの画面が真っ白のまま変わりませんでした。
phpファイルにはPHPエディタ[UTF-8 LF]を使用し、datファイルにはTeraPad[UTF-8N LF]を使用しています。
data.txtの文字コードが直しても変わってしまうので今はdata.phpに書き直しています。
過去スレに書いてあることはある程度試しているのですが、
phpファイルにミスは見受けられないし、文字コードも問題なさそうなのでパーミッションが問題なのかなと考えています。
以前はちゃんと自動で動いていたのですが、色々あって現在全て最初からやり直している状態です。
その時も真っ白な状態がずっと続いていて、
過去スレを見ながらあれやこれやと訳も分からないままにいじっていたら出来たという感じだったので解決策が分かりません。
今現在のパーミッションはPEAR755/dat666(606)/php/644に設定しています。

どなたかお時間ありましたらご教授いただけないでしょうか。お願いします。

268名無しさん:2012/04/06(金) 18:23:26
>>264
days7.txtがUTF-8になっていない関係で、自力解決いたしました。
お騒がせいたしました。

269名無しさん:2012/04/07(土) 01:20:21
>>263
テンプレ使ってない=>>1-3読めてない

270age:2012/04/17(火) 18:15:11
【バージョン】 Ver.2.0x
【設置鯖名】 ロリポップ(コロリポ)
【PHPのバージョン】5.2
【手動】 動く
【実行】 ロリポップの付属cron
【実行間隔】 10分間隔
【不明点】
現在、複数人格のbotを製作しているのですが、「かっこいい」とリプを貰った時の反応に苦戦しています。
//「格好良い」発言個別反応
"格好良い|格好イイ|格好いい|カッコ良い|かっこ良い|かっこい[いー]|カッコイ[イー]|カッコい[いー]"=> array(
"田中「ありがとう」",
"山田「ありがとうございます」",
"鈴木「さんきゅー」",
),
と設定し、リプも問題なくランダムで返ってくるのですが、この反応以外に「田中+かっこいい」「山田+かっこいい」「鈴木+かっこいい」
でもそれぞれ個別の反応をさせたいのです。
しかし初心者なりに頑張ってみたのですが、「田中さんかっこいい」等でリプを送っても「かっこいい」という部分にしか反応せず、
ランダムリプライを返してきてしまいます。
過去スレで似たような質問があり、その時は優先順位を上にすれば良いとあったのですが、どのように優先順位を付ければ良いのか
わかりませんでした。
何かアドバイスを頂けると助かります。宜しくお願いします。

271名無しさん:2012/04/18(水) 07:11:31
>>270

「田中+かっこいい」「山田+かっこいい」「鈴木+かっこいい」を「かっこいい」より先に記述すればいいだけ。

272age:2012/04/18(水) 14:17:58
>>271
ご返答有難うございます。最初にその方法を試した際にはやはり「かっこいい」にしか反応しなかったので悩んでいましたが、
改めて記述を先にして試してみたらしっかりと反応してくれました。
アドバイス頂き、本当に有難うございました。

273名無しさん:2012/04/24(火) 23:50:46
正常に動作しているのですが質問があります。
reply_pattern.phpにて、

"今日のご飯"=> array(
"Aだよ",
"Bだよ",
"Cだよ",
"Dだよ",
),

同じ人が「今日のご飯」と単語を連続して発言した場合、何度も答えてしまうのを止めることはできますか?
いまのところ「Aだよ」というレスのみにして対応していますが、上記のようにA〜Dまで増やすと「今日のご飯」と発言するたびに答えてしまいます。
同じ人に対して、2度目は答えない方法がありましたら教えていただけないでしょうか
よろしくお願いします

274名無しさん:2012/04/26(木) 00:10:53
>>273
ログとらないと無理=要改造=初心者スレの範疇外

初心者スレの範疇でのやり方は、日にちや曜日別で読み込むファイルを固定することかな
月曜日に読み込むリプライパターンには
"今日のご飯"=> array(
"Aだよ",
),
火曜日に読み込むパターンには
"今日のご飯"=> array(
"Bだよ",
),
のようにしていけばいい
これが面倒なら精進して改造

275名無しさん:2012/04/26(木) 00:45:31
最近、RTやQTを使わない 「” ”」で囲んだ引用のツイートが増えてきたのですが
そのツイートにリプライパターンで反応してしまうのを止める方法はありますか?

276名無しさん:2012/04/26(木) 04:01:39
バージョン】Ver.2.0
【設置鯖名】 @pages
【PHPのバージョン】???
【実行】 主導
【手動】 動かない
【不明点など】
プログラミングができなくても作れるTwitter botの作り方http://pha22.net/twitterbot/
EasyBotter 非公式wiki http://www26.atwiki.jp/easybotter_wiki/pages/1.html

を参考にして、bot.phpで「2分以内に受け取った@はないようです。」とメッセージが出るところまで行ったのですが、本垢からボットにリプしても、ボットからリプしてもbot.phpの内容に変化がありません。
エラーメッセージはありません。どうしたらいいのでしょうか?

277名無しさん:2012/04/27(金) 12:59:30
>>275
つ【正規表現】

278名無しさん:2012/04/27(金) 13:09:45
>>276
settingファイルの内容を確認
botのスクリーンネームの大文字小文字も含めて合ってるかなど
データファイルのパーミッション、bot.phpを再確認

それでも解決しない場合はbot.phpをコピペ

279名無しさん:2012/04/27(金) 13:10:04
>>276
settingファイルの内容を確認
botのスクリーンネームの大文字小文字も含めて合ってるかなど
データファイルのパーミッション、bot.phpを再確認

それでも解決しない場合はbot.phpをコピペ

280名無しさん:2012/04/28(土) 12:34:19
一応お知らせ
サーバーに@PAGE使ってる人いたら、現在サーバー大規模障害で通常アドレスだとエラーが出るようになってます。
coronや利用しているアドレスを下記のように書き換えて対応したがいいよ。

お客様のURLが
http://www42.atpages.jp/アカウント名/
の場合
http://www42.atpage.jp/アカウント名/
となります。

詳細:
http://desk.atfreaks.com/tickets/form/atpages
http://d.hatena.ne.jp/tondol/20120428/1335561286

281名無しさん:2012/04/28(土) 12:45:06
すみません、cronスレに書いたつもりがスレ間違えた……スルーして下さい……

282名無しさん:2012/04/28(土) 14:05:57
>>280
@pages使ってたので助かりましたありがとうございます

283名無しさん:2012/04/28(土) 17:52:50
>>275
>>277
せめてこれくらいはってやれよ
http://www.scollabo.com/banban/php/php_15.html

284名無しさん:2012/04/30(月) 00:59:48
【バージョン】 Ver.2.05
【PHPのバージョン】PHP 5.2.6
【不明点】
リプライの正規表現について質問です。
<あいうえお>という言葉に反応させたり、あいうえおの部分を使ったりしたいのですが、<(.+)>では反応しません。
<あいうえお>で<(.+)>には反応します。

285名無しさん:2012/04/30(月) 05:05:10
>>277

//「"」を含む発言を受け取るとリプライを返さなくする
"""=> array(
"[[END]]",
),

これでいいんですかね?

286名無しさん:2012/04/30(月) 11:10:26
>>285
つ【メタ文字】

287名無しさん:2012/04/30(月) 12:29:55
>>286

//「"」を含む発言を受け取るとリプライを返さなくする
"(")"=> array(
"[[END]]",
),

メタ文字? こうですね?

288名無しさん:2012/04/30(月) 23:48:16
>>287
違いますね?

289名無しさん:2012/05/01(火) 04:31:22
>>288
違いますね???

誰かわかる方がいたらよろしくお願いします

290名無しさん:2012/05/01(火) 16:22:44
http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/231046/
これの「ダブル・クォーテイション(")」のところに書いてあるようにバックスラッシュをつければいいのかな?間違ってたらごめんぬ。

//「"」を含む発言を受け取るとリプライを返さなくする
"\""=> array(
"[[END]]",
),

291名無しさん:2012/05/01(火) 22:23:51
>>290

「"」もメタ文字扱いなんですね
勉強になりました。 ありがとうございます。

292名無しさん:2012/05/03(木) 14:48:25
例えば

"^(aa|bb)(cc|dd).?$"=> array(
"ggg",
),

このままですと反応しないのですが、先頭の「^」をとると反応します。
「^」と「$」を使って「(aa|bb)(cc|dd).?」だけに反応させたいのですがどこが間違っているかアドバイスをお願いします

293名無しさん:2012/05/04(金) 10:38:26
>>292
http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1259689986/
ここの550辺りから

294名無しさん:2012/05/08(火) 01:03:19
【バージョン】 Ver.2.05
【設置鯖名】 さくらインターネット(スタンダード)
【PHPのバージョン】5.2.17
【手動】 動かない
【実行】 現在は手動
【不明点】
 ダウンロードしたphpやtxtを、CrecentEveで編集し、文字コードUTF-8、改行をLFにして保存、サーバーにアップロードしました。そして、data.txt・reply_pattern.php・reply_random.txt(TL反応用)・reply_pattern.php(TL反応用)・log.datのパーミッションを666にしました。
 結果、通常ツイート用のphpは正常に動作しましたが、リプライ用のphpは「60分以内に受け取った@はないようです。」と出て動作しませんでした。当然そのbotと相互フォローのアカウントから、reply_pattern.phpに対応するポストを投げてから動作させました。過去ログからテスト用のreply_pattern.phpの内容をお借りしてphpを起動してみましたが、同様の結果でした。
 また、リプライ用のphpにTL反応も兼ねさせたのですが、そっちは「60分以内〜」すら出ず、動作していないようです。
 ルートフォルダのファイルのパーミッションを全て755にして試したりもしましたが、結果は変わらずでした。

 試しに正常に動作した通常ツイート用のphpにリプ返しを行う分を貼りつけてみた所、「投稿するメッセージがないようです。60分以内に受け取った@はないようです。(改行省略)」と出て通常ツイートすら機能しなくなりました。さくらインターネットのファイルマネージャーからの編集・CrecentEveで文字コード等合わせてアップロード・TeraPadでUTF-8Nにしてアップロード、どれも試しましたが同じ結果でした。
 その後、正常に動作していた時に取っておいたバックアップのzipを解凍してみた所、バックアップを取る前は正常に動作していた通常ツイート用phpも動作しなくなりました。

 気になったのは、CrecentEveで保存した物、TeraPadで保存した物を含めてファイルマネージャーのテキストエディタで開くと何故か文字コードがEUC-JPになっていた事です。逐一UTF-8に変更して保存しても、次に開くとEUC-JPになっていました。
 因みに別途で保管していて、正常動作を確認してから手つかずのフォルダの通常ツイート用phpは正常に動作し続けています。こっちの方でもリプライ用のphpは「60分以内に〜」のリプ返しについての事が書かれるだけで、TL反応に関しては何も書かれていませんでした。


 そこでお伺いしたいのは、

・何故通常ツイート用のphpが動作してリプライ用のphpが動作しなかったのか?
・何故勝手に文字コードがEUC-JPにされるのか、それがこの動作不全に関係しているのか?(EUC-JPに書き変えられるのがファイルを保存した時か開いた時か)

 この2点です。他にも問題はあるかもしれませんが、今の所質問という形にできるのはこの2つです。
 この段階まで来るのに1ヶ月以上かかっており、疲れとかで凡ミスなのかもしれませんが、力添えしていただけると助かります。

295名無しさん:2012/05/08(火) 06:39:40
【バージョン】 Ver.2.05
【設置鯖名】 @pages
【手動】 動かない
【実行】 現在は手動
【不明点】easybotter.phpの中身がこれしかないのですが…
----

'; $header .= ''; $header .= ''; $header .= ''; $header .= '
';
print $header;
}

//表示用HTML
function printFooter(){
echo "

----

296名無しさん:2012/05/09(水) 14:08:52
【バージョン】 2.05
【設置鯖名】 レン鯖名/ロリポップ
【PHPのバージョン】5.2
【手動】 動く
【実行】 CRON鯖名/ロリポップ
【実行間隔】 5分間隔
【不明点】

問題なく動いてはいるのですが毎回同じ長文エラーがでてしまい、エラーについて検索したり
一から設置しなおしたりと自分なりに試行錯誤したのですが解決できず、悩んでいます。
エラーの内容、このまま放っておいてもいいのかどうか、ご教授頂けるとありがたいです。
弄った部分はEasyBotter.phpのAPI更新、bot.php(ログ記録、一時間に一回ツイート、TL反応の確立2/5)です。

297296:2012/05/09(水) 14:11:19
下記がエラー内容になります

5分以内に受け取った@はないようです。
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 10: parser error : Opening and ending tag mismatch: link line 9 and head in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: </head> in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 25: parser error : Entity 'rarr' not defined in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: <li><a href="//twitter.com" id="homeLink">Home &rarr;</a></li> in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 36: parser error : Opening and ending tag mismatch: img line 35 and div in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: </div> in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 38: parser error : Entity 'mdash' not defined in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: <p>Thanks for noticing&mdash;we're going to fix it up and have things ba in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 60: parser error : Entity 'copy' not defined in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: <li class="first">&copy; 2012 Twitter</li> in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 187: parser error : Opening and ending tag mismatch: div line 32 and body in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: </body> in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 188: parser error : Opening and ending tag mismatch: body line 11 and html in /home/users/2/***/web/testbot2/EasyBotter.php on line 516

298296:2012/05/09(水) 14:13:16
Warning: simplexml_load_string() [function.simplexml-load-string]: </html> in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 189: parser error : Premature end of data in tag link line 8 in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 189: parser error : Premature end of data in tag meta line 6 in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 189: parser error : Premature end of data in tag meta line 5 in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 189: parser error : Premature end of data in tag meta line 4 in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 189: parser error : Premature end of data in tag head line 3 in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 189: parser error : Premature end of data in tag html line 2 in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: in /home/users/2/***/web/testbot2/EasyBotter.php on line 516
Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in /home/users/2/***/web/testbot2/EasyBotter.php on line 516

Twitterへの投稿に成功しました。
@に投稿したメッセージ: http://twitter.com//status/

EasyBotter.phpの156行目の記述は
$response = simplexml_load_string($response->getBody());
となっています

連投すみません。
ヒントだけでも教えて頂けると助かります。

299名無しさん:2012/05/09(水) 18:33:40
【バージョン】 2.05
【設置鯖名】 レン鯖名/@pages
【PHPのバージョン】5.2
【手動】 動かない
【実行】 CRON鯖名/FWCS
【実行間隔】 5分間隔
【不明点】リプライのみ反応しない。
テストbotと本botの2種類を、フォルダだけ分けて動作させています。

テストbotは手動でもcronでもリプライ・TL反応するのですが、
本botは手動の段階で、TL反応はするのにリプライに反応しません。
5分以内に受け取った@はないようです。
と返されます(テストbotから@送って5分以内です)。
bot.phpの中身は

<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();

$response = $eb->reply(5,"data.txt","reply_pattern_rp.php");
?>

のみにしても、

5分以内に受け取った@はないようです。

となります。
テストbotとはフォルダ名が異なるだけなので、試しにテストbotの中身をそっくり
本botに入れてみたのですが反応せず(Aouthの値は直しました)。
データ削除・再UPもしましたが駄目でした。
どうしたらいいのかわからず途方に暮れています。
どなたかいらっしゃいましたらご助力願います。

300名無しさん:2012/05/09(水) 20:54:45
>>299
bot.phpよりreply_patternやEasyBotterの方が怪しい気がする
テストbotが動いてるならそれを保存して使えばいいと思う

301名無しさん:2012/05/10(木) 22:00:30
>>294
>CrecentEveで保存した物、TeraPadで保存した物を含めてファイルマネージャーのテキストエディタで開くと
何故か文字コードがEUC-JPになっていた事

CrecentEvekの仕様をちゃんと読んだかな?※UTF-8,UTF-16はShift_JISに変換可能な文字にのみ対応と書いてある
違うエディター(TeraPad使っているならTeraPad)のみで編集・ファイルを開いた方がいいと思う

いろいろいじくりすぎて、どこで間違えてたのかが分かりづらくなっていると思う
まずはデフォルトで動くことを確認してから機能を増やしていったらいいと思う

あと、bot.phpがどうなっているか知りたいところ。reply_random.txt(TL反応用)・reply_pattern.php(TL反応用)
と2つあるのも謎。
TL反応は$response = $eb->replyTimelinee(何分毎にするかの数字,"TL反応用.php")だから1つでいいはずなんだが?

302名無しさん:2012/05/10(木) 23:34:33
【バージョン】 Ver.2.05

【設置鯖名】 さくら

【PHPのバージョン】5.2.17

【手動】 動く

【実行】 CRON鯖名/さくら

【実行間隔】 5分間隔

2点質問失礼します。


【不明点・1】

data.txt内に@{follower_id (内容)}を記述してリプライを行うようにしているのですが、
「@ (内容)」と、空白になってしまいます。
data.phpに差し替えて{id}にしても空白。
data.txtで{id}表記にしたらなぜかたまにちゃんとフォロワーIDを拾ったりするのですが、
ほとんどの場合は空白です。

過去ログを検索した所、似たような現象の質問が複数ありましたが、
「フォローが外れた人を偶然拾った場合」
→鍵をつけて試行錯誤制作中なので別垢2つからのフォローのみ、該当しません。
「TLに人がいないと起こりやすい」という方もいらっしゃいましたが、
具体的な解決策は見当たりませんでした。

【不明点・2】
上記前提で、@{id}または@{follower_id}で、botが自分のIDを呟いてしまいます。


過去ログを検索した所、同じ症状の方もいらっしゃって、回答に
「setting.phpのid記載が間違っていなければ起こらないはず」

とありましたが、
id項目には記載ミスありません。

気になっているのが、当初botを作った際、取得できる適当なIDを取ったことです。
botが動くようになってきたので、twitter設定でbot内容に見合ったIDに変更しました。
それに伴い、setting.phpのid欄も変更し、アップロードしなおしました。
ID変更までは起こらなかった現象ですので、これが関係しているように思われます。
twitterで自botを検索すると、古い方のIDでひっかかったりもしたので、
そういう反映どうこうの問題だろうかとも考えたのですが、
ID変更から既に丸一日以上が経過し、検索結果等も新IDしか出ない状態です。

以上2点、どうかご教授いただければ幸いです。

303302:2012/05/10(木) 23:38:02
> data.txt内に@{follower_id (内容)}
は、「@{follower_id} (内容)」の書き込みミスです。失礼致しました。

304294:2012/05/11(金) 00:14:22
 すみません、思考錯誤した結果UTF-8で保存する事には成功しました。

>>301
 記載ミスでしたねすみません、reply_random.txtは該当語句無いリプライ返し用です……。
 一部状況でながら通常ツイートには成功しているので、それと同じようにリプライもやろうとしてみた所、現在の状態に至っています。
 デフォルトの物を一部//を抜いてアップロードして試しに動かしてもみましたが、状況は変わりませんでした。

 リプライ返し・TL反応用のphpがこうなっています。
=============================================
<?php
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(60,"data.txt","reply_pattern.php");
$response = $eb->replyTimeline(60,"tlreply_pattern.php");
?>

305名無しさん:2012/05/11(金) 10:26:09
>>294
304を見る限り、該当語句無いリプライ返しはdata.txtからになってるけど…294的にこれでいいのか
あとはTL、リプライともcron実行間隔が60分だけどこれは意図したものなのか
カキコ見る限り1ヶ月いじって案外基本的な正確さが疎かになってるんじゃないかなぁ

306294:2012/05/11(金) 20:55:05
>>305
すみませんコピペする元を間違えてました…けど、ファイル名以外はこれをそのまま同じです。
間隔を60分にしてあるのは意図的です。いずれは1時間に1回cronで起動させる予定なので。

307名無しさん:2012/05/12(土) 02:11:35
>>294
自分でとったバックアップじゃなくてHPのものからやり直してみた?
デフォでは間隔が2分になってるから動くまではいじらない方がいいかも

308294:2012/05/12(土) 13:45:29
>>307
ダウンロードした物ほぼそのままでも試してみました。(setting.phpを変更・bot.phpのリプライ返信の//を消したのみ)
その状態でもリプライ投げて(おはよ)bot.phpを起動してみましたが、やっぱり動作しませんでした。

取得範囲広げ過ぎると、取得量多すぎて動作不完全になったりするのでしょうか?

309名無しさん:2012/05/13(日) 00:45:00
【バージョン】Ver.2.05
【設置鯖名】 @PAGES
【PHPのバージョン】5以上
【手動】 動く
【実行】 Gae-Cron
【実行間隔】 なし
【不明点】 フォローはしてくれるけどリムーブしてくれない

 非公式wikiに紹介されていた半自動フォロー&半自動リムーブを導入しているのですが、
フォローだけはしてくれるのですが、リムーブ処理を行わせるワードを入れてリプライしても
reply_pettern.phpに記述した通りの反応は帰してくれるのですがリムーブしてくれません。EasyBotter.phpの記述は

//リプライパターンと照合
if(!empty($this->_replyPatternData[$replyPatternFile])){
foreach($this->_replyPatternData[$replyPatternFile] as $pattern => $res){
if(preg_match("@".$pattern."@u",$reply->text, $matches) === 1){
$status = $res[array_rand($res)];
for($i=1;$i <count($matches);$i++){
$p = "$".$i;
$status = str_replace($p,$matches[$i],$status);
}
break;
}
}
}
//パターンになかった場合はランダムに
if(empty($status) && !empty($replyFile)){
$status = $this->makeTweet($replyFile);
}
if(empty($status) || $status == "[[END]]"){
continue;
}
if(preg_match("@{.+?}@",$status) == 1){
$status = $this->convertText($status, $reply);
}
$reply_name = (string)$reply->user->screen_name;
$in_reply_to_status_id = (string)$reply->id;
switch(true){
//半自動フォロー
case stristr($status, "[[AUTOFOLLOW]]"):
$status = str_replace("[[AUTOFOLLOW]]","",$status);
$followreq = $this->consumer->sendRequest("http://twitter.com/friendships/create/$reply_name.json&quot;,array(),&quot;POST&quot;);
$re["status"] = "@".$reply_name." ".$status;
break;

//半自動リムーブ
case stristr($status, "[[AUTOREMOVE]]"):
$status = str_replace("[[AUTOREMOVE]]","",$status);
$removereq = $this->consumer->sendRequest("http://twitter.com/friendships/destroy/$reply_name.json&quot;,array(),&quot;POST&quot;);
$re["status"] = "@".$reply_name." ".$status;
break;

//その他
default:
$re["status"] = "@".$reply_name." ".$status;
}

という感じにしています。どうかご指導お願いいたします。

310名無しさん:2012/05/13(日) 10:12:55
>>309
改造はスレチ、2.0スレへ

311名無しさん:2012/05/13(日) 21:00:00
>>310
 う、失礼しました・・・・・・。

312名無しさん:2012/05/14(月) 23:32:55
【バージョン】Ver2.04
【設置鯖名】 @PAGES
【PHPのバージョン】Version 5.3.8
【手動】 動く
【実行】 SetCronJob
【実行間隔】 2分
【不明点】 時間通りにポストしたり、しなかったりする

過去ログを参照して自分なりに改変してみたのですが、
やはり時折ポストされないことがありますのでご質問させて頂きます。

3月から5月までの限定ポストとして設定してあります。
1時間ごとに1度sp_days.txtを参照して呟き、
6-8時、12時、21-23時、0-5時(これだけランダム)は別の時間分けしたポストを呟く設定にしてあります。
最初のif(date("i") == "0"||date("i") == "1")は、鯖とcronの時間がもしあった場合の保険として設定しています。


if(date("i") == "0"||date("i") == "1"){
if(date("n") >= 3 && date("n") <= 5 && date("G") >= 0 && date("G") <= 5){
if(rand(0,12) === 0){
$response = $eb->postRandom("sp_days_0.txt");
}
} elseif(date("n") >= 3 && date("n") <= 5 && date("G") == 6){
$response = $eb->postRandom("sp_days_6.txt");
} elseif(date("n") >= 3 && date("n") <= 5 && date("G") == 7){
$response = $eb->postRandom("sp_days_7.txt");
} elseif(date("n") >= 3 && date("n") <= 5 && date("G") == 8){
$response = $eb->postRandom("sp_days_8.txt");
} elseif(date("n") >= 3 && date("n") <= 5 && date("G") == 12){
$response = $eb->postRandom("sp_days_12.txt");
} elseif(date("n") >= 3 && date("n") <= 5 && date("G") == 21){
$response = $eb->postRandom("sp_days_21.txt");
} elseif(date("n") >= 3 && date("n") <= 5 && date("G") == 22){
$response = $eb->postRandom("sp_days_22.txt");
} elseif(date("n") >= 3 && date("n") <= 5 && date("G") == 23){
$response = $eb->postRandom("sp_days_23.txt");
} elseif(date("n") >= 3 && date("n") <= 5 ){
$response = $eb->postRandom("sp_days.txt");
}
}

日によって呟いたり、呟かない時間帯が発生してしまっています。
ex)その日の6時には呟いたけれど7-8時は呟かなかった。次の日は6時は呟かず、7-8時だけ呟いた、など。
呟かなかった時間もリプライはすぐに飛ばしてくるので、cronが止まっているということもありません。
以前過去ログで『処理が遅い事に由来したdate関数取得時間のズレ』もあるという言葉を拝見したのですが、
その場合どのように改変すればいいのかが分からずお手上げ状態です…

313名無しさん:2012/05/15(火) 22:07:35
>>312
0分or1分だとまだズレがあるのかな
EasyBotter2.0その2スレ(今一番上)の59辺りのレスが参考になると思うよ

314名無しさん:2012/05/15(火) 23:03:06
【バージョン】 Ver.2.0x
【設置鯖名】 ロリポップ(コロリポ)
【PHPのバージョン】5.2
【手動】 動く
【実行】 GAE/GAE-cron
【実行間隔】 5分間隔
【不明点】
@PAGESの時はGAEで問題なく動いていたのですが、ロリポップサーバにあるbot.phpに移行したらGAEでもGAE-cronでも動きません。
logを見ると code: 403 と出ています。

ロリポップに問い合わせをした所、外部サーバからのアクセス制限はしてないといわれました。
bot.phpのパーミッションを644から666にすると良いと見かけたのでそれも試してみましたが、動きませんでした。
サーバのアクセスログを見るとAppEngine-Googleと403という文字がありました。

過去ログも検索したのですが対処方法が分からなかったので書き込みさせていただきました。

アドバイスよろしくお願いいたします。

315名無しさん:2012/05/15(火) 23:42:04
>>314
ロリポはEasyBotter2.05フォルダのパーミッションを747に変えるいいらしいです。

316名無しさん:2012/05/16(水) 21:20:47
>>315
2.04を使っていたので2.05をDLしたのですが、フォルダは2.05と出ているのですがEasyBotter.phpを開くとEasyBotter Ver2.04betaと書いてあるのですが大丈夫でしょうか?
それからPEARとlog.datを2.05フォルダに入っていたものに変更しました。

さらに〜〜jp/b/bot1/bot.php みたいな感じになっているのですが、

bot1のパーミッションを747に変更
bのパーミッションを747に変更
ロリポップサイトに記載があるようにphpのものを全て604、datを600に変更
botのパーミッションを666に変更

上記の流れで一つ変更するたびにエラーを確認していったのですが、GAEのlogはcode: 403のままでした。

何か他に原因があるのでしょうか?

317名無しさん:2012/05/17(木) 08:13:32
>>316
手動では動くの?

318314:2012/05/17(木) 21:04:07
>>317
すみません、動く様になりました。
からっぽで忘れていた.htaccessが邪魔をしていたみたいです。
お騒がせいたしました。

319名無しさん:2012/05/17(木) 23:09:59
>>313
回答ありがとうございます!
どうやら時間のズレで遅れている訳ではなく、たくさん条件分岐を作ってしまったことによって処理が間に合わないことで上手く動かないようでした。

http://www26.atwiki.jp/easybotter_wiki/pages/25.html を参照し、
date("i")やdate("G")を$minute・$hourとして代入することで回避できないかどうかを試してみます。
置き換えてみたところエラーは出ていませんので、一日ほど様子を見て一時間に一度きちんとポストするかどうかを様子見してみようと思います。

320名無しさん:2012/05/18(金) 12:26:49
テンプレートを使うまでもない質問だと思いましたので、テンプレ無視で失礼いたします。

コメントアウト内にdate("i")〜などの記述をしていた際、
反応することはありませんが、処理的には負担が掛かるものなのでしょうか?
もしそんな記述のコメントアウトが大量にあった場合、
その関係でポストが出来なかったりすることもあるのかと思いまして…
お答え頂けたら幸いです。よろしくお願いいたします。

321名無しさん:2012/05/20(日) 15:12:51
【バージョン】2.05
【設置鯖名】 @pages
【PHPのバージョン】PHP-5.2系
【実行】 GAE/ブラウザ自動更新
【手動】 動く
【不明点など】
エラーではないのですが、こういうことは可能かどうかで質問です

こちらのbotのツイートに対するリプライについて、
どのツイートに対するリプライのかによって判断分岐したいのですが、
判定することは可能ですか?

クイズっぽいBotを作っているのでそういうことができたら助かります

322名無しさん:2012/05/23(水) 06:50:18
【バージョン】 2.05
【設置鯖名】 ロリポップ
【PHPのバージョン】5.3
【手動】 動く
【実行】 ロリポのcron
【実行間隔】 5分間隔
【不明点】
質問失礼します。

非公式wiki(ランダムPOSTを●分おき、リプライを▲分おきにしたい!)を参考に、
ランダムPOSTを30分おき、リプライを5分おきに設定したいのですがうまく動作しません。

$response = $eb->reply(2,"data.txt","reply_pattern.php");
のところを、cron設定にあわせて
$response = $eb->reply(5,"data.txt","reply_pattern.php");
としています。
wikiに掲載されている、
if(date("i") % 30 == 0){
$response = $eb->postRandom("data.txt");
}
をそのままコピペして使っているのですが、ランダムPOSTも5分おきに動作してしまいます。

ファイルの記述部分はこうです

//=============================
//botの動作をここに書いてください
//先頭に//がある行はコメント扱いなので実行しません。実行したい行の頭の//を削除してください。
//=============================
$response = $eb->autoFollow();
$response = $eb->postRandom("data.txt");
//$response = $eb->postRotation("data.txt");
$response = $eb->reply(5,"data.txt","reply_pattern.php");
//$response = $eb->replyTimeline(2,"reply_pattern.php");
if(date("i") % 30 == 0){
$response = $eb->postRandom("data.txt");
}


検索し、過去スレも見ましたが未解決なのでよろしくお願いします。

323名無しさん:2012/05/23(水) 09:51:04
>322
$response = $eb->autoFollow();
の下にあるランダムポストが有効になってる

324322:2012/05/23(水) 13:01:22
>>323 さん
できました!!!ありがとうございます、助かりました!

325名無しさん:2012/05/24(木) 14:28:37
【バージョン】 2.05
【設置鯖名】 @pages
【PHPのバージョン】5.2
【手動】 動く
【実行】 GAE
【実行間隔】 2分間隔
【不明点】
こちら(http://iztlbot.en-grey.com/Entry/25/)の天気予報スクリプトをリプライファイルに組み込むと
天気予報と共にリプライも二重投稿してしまいます(返さない時もあるんですが9割返って来ます)
検索したりリプライのphpファイルと天気予報のphpファイルを分けたりcronの時間をズラしてみたり
無知なりに色々やってみたんですが、どうしても解決しません
天気予報だけ返すにはどうしたらいいのでしょうか…宜しければ教えて下さい
リプライファイルは以下の感じです
<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(2,"date.txt","reply_pattern.php");
?>

326名無しさん:2012/05/25(金) 22:41:48
>>325
reply_pattern.phpを編集して、「天気」を含むリプ受け取った場合、会話終了させたらいいんじゃないかな

327325:2012/05/26(土) 01:32:14
>>326
会話終了させればいいという事には全く気付けませんでした…
教えて下さってありがとうございました!

328あー:2012/05/29(火) 08:04:37
こんにちは!突然ですが質問させてください!
bot同士会話させる時、反応語に『^』とか『$』を使うと反応しないんでしょうか。
例えば僕の設定は
A『@BのID やあ!』(通常post)
B『やあAさん』(返信)
A『遊ぼうよ』(返信)
みたいな流れなんですが、僕は自分でプログラミングはしていないので
『^やあ!$』の様に完全一致した場合のみ『やあAさん』と返すようにしたかったのですが、シミュレーションではうまくいくのに実際ツイッターではうまくいかずランダム返信してしまいます。
どなたかご教授ねがいますm(_ _)m

329名無しさん:2012/05/30(水) 13:46:14
【バージョン】 2.05
【設置鯖名】 ロリポップ
【PHPのバージョン】5.3
【手動】 動く
【実行】 グーグルのcron
【実行間隔】 6時間隔
【不明点】
いきなり失礼します。
3つのツイッターアカウント(それぞれのトークンはあります)に対して、一つのbotを利用したいのですが、どう記述すれば出来るのでしょうか?
かれこれ1週間探していますが全く見つかりません。
もしかして、出来ないんですかね・・・。

330名無しさん:2012/06/06(水) 00:39:02
【バージョン】 2.04
【設置鯖名】 @pages
【PHPのバージョン】5.3
【手動】 動く
【実行】 GAE
【実行間隔】 3分ごと
【不明点】
半年ほど前から昨日まで正常に動いていたのですが、
突然今朝から定期post・リプライ共に2重で投稿してしまうようになりました。
2重で投稿しているものについては、全く同じ時刻に投稿しています。
(例えばAとBの言葉が2重に投稿されているとしたら、どちらも投稿時間が「30秒前」と同じ時刻の表記になっています)
最近は特に何も更新していないですし、何故このようになるのか調べても全く分かりません…
どなたか原因が分かる方がいらっしゃれば、教えて頂けますでしょうかorz

331名無しさん:2012/06/12(火) 15:32:49
【バージョン】 2.04
【設置鯖名】 @pages
【PHPのバージョン】5.3
【手動】 動く
【実行】 GAE
【実行間隔】 1分ごと
【不明点】
いきなり失礼します。
リプライだけ二重投稿してしまいます。
定期postは問題なく動いています。
リプライの投稿間隔が1分なのでリプライした後のcronでもう一度リプライしてるみたいです。
リプライの命令は、
$response = $eb->reply(1,"","reply_pattern.php");
のようになってます。
どうしたらいいのでしょうか。

332名無しさん:2012/06/12(火) 16:22:00
>331
自己解決できました。
log.datのパーミッションを666にしたら二重リプライしなくなりました。

333名無しさん:2012/06/28(木) 19:01:55
【バージョン】 2.04
【設置鯖名】 さくら
【PHPのバージョン】5.2
【手動】 動く
【実行】 さくら
【実行間隔】 5分ごと
【不明点】
http://www26.atwiki.jp/easybotter_wiki/pages/19.html
を参考にvia変更を試してみたのですが、手順4『oauth_test.phpへアクセス』
を行うと500エラーが出てしまい先に進めません。
問題なく動いているbot.phpと同じディレクトリですので、.htaccessやディレクトリパーミッションの問題ではないと思います。
OAuth.php、twitterOAuth.php、oauth_test.php3種のパーミッションを色々変更してみたり、
コピペミスを疑って何度か作り直し、再アップロードも試みましたが500から動きません。

500エラーでの検索や過去ログも探しましたが、手詰まりになってしまいました。
アドバイス頂ければありがたいです。

334名無しさん:2012/06/28(木) 19:11:51
【バージョン】Ver.2.04beta
【設置鯖名】 @Pages
【PHPのバージョン】5.2
【手動】 動かない
【実行】 手動

他の方と同様,bot.phpをブラウザ上で実行すると広告のみの白い画面が表示されるという現象です.
ファイルはDL後,非公式wikiの手動実行編の手順で編集したものです.

試してみた事は
・アップする前のファイルの文字コードの確認
・アップした後のファイルの文字コードの確認(data.txtのみ)
・パーミッションの変更(644-666)
・アップロードしたファイルの全削除→再アップ
・エディタの変更(さくらエディタ→terapad)

エディタは現在はTerapad,FTPはFFFTPを使用しています.
何か考えられる原因がありましたら教えて頂きたいです.

335名無しさん:2012/06/28(木) 21:36:19
>>333
自分も詳しいわけではないのですが、そのwikiの方法は多分使ったことがありません
(ごく初期に試して挫折したかも?)
いまbotを作るときにやっている手順は以下の通りです

1.項目の1の文頭からリンクされている『PHP+OAuthでTwitter』さんの記述の
『TwitterへOAuthクライアントの登録』〜『"Access Token"と"Access Token Secret"の取得』の項までを手順通りに行う

2.そこで得た
 ・Consumer key
 ・Consumer secret
 ・Access Token
 ・Access Token Secret
以上四つの値と、botのIDとをsetting.phpにコピペして、アップする

これで、bot.phpを叩くとviaの変更ができています(自分の場合は)
気付かず書き忘れている点もあるかもしれませんが、参考になれば幸いです

336333:2012/06/29(金) 01:33:43
>>335
その方法でできました!
本当に助かりました。ありがとうございました!

337名無しさん:2012/07/03(火) 20:39:30
【バージョン】 2.04
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 動く
【実行】 Free web cron service
【実行間隔】5分毎
【不明点】
はじめまして。当方botの制作といったことが全くの初心者です。
bot.phpの中を
<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(5,"data.text","reply_pattern.php");
$response = $eb->postRandom("data.txt");
$response = $eb->autoFollow();
$response = $eb->replyTimeline(5,"reply_pattern.php");
?>
としているのですが、cronでリプやTL反応をしてくれないため、手動で試したところ
「5分以内に受け取った@はないようです。」、「5分以内のタイムラインに反応する単語がないようです。」と表示されます。
ランダムpostは自動、手動、ともに正常に確認できております。
reply_pattern.phpの中身は
$data = array(


"リプライ対象語句"=> array(
    "台詞",
   "台詞",

),

);
となっております。どちらのファイルもUTF-8での編集、入力にはなっているはずです。
回答のほどよろしくお願いいたします。

338337:2012/07/03(火) 20:42:11
申し訳ありません、↑のバージョンは2.05でした。

339名無しさん:2012/07/03(火) 21:28:01
【バージョン】Ver.2.04
【設置鯖名】 自宅鯖
【PHPのバージョン】
【手動】 動かない
【実行】 GAE CRON
【実行間隔】 10分間隔
【不明点】
今まで問題なく動いていたのですが、
1週間前(6/25頃)ほどから突然動かなくなり、
手動で実行したところ、下記エラーが表示されています。
http://www26.atwiki.jp/easybotter_wiki/pages/21.html#id_aa5eb401

上記エラーをキーワードに検索したところ、
下記サイトを見つけ、APIの書き換えを行いました。
http://mira-cocoa.sblo.jp/article/56291047.html

しかし、それでも同様のエラーのため、下記方法で再度API更新も試してみましたが、
結果は同じエラーでした。
http://www26.atwiki.jp/easybotter_wiki/pages/34.html

エラーとなった日にはファイルの更新はしていないため、
コンパイルエラー(ソースの書き間違い)が原因ではないと考えております。
他に調査すべき個所、または解決策のこころあたりがある方は
ご教授頂けると幸いです。

340 ◆scuBOTBGlA:2012/07/04(水) 16:53:11
>339
下記エラー というのは Incorrect signature でしょうか?

とりあえず自宅鯖とのことですが、どのような構成のServerかわかりませんが、
試しに phpサーバーを再起動してみてはいかがでしょうか?

自分も以前、phpファイルを更新したのに反映されておらずというか、なんか変な
キャッシングがされていたみたいで正常に動作せず、phpサーバーを再起動して
ようやく反映されたということがあったので。

341 ◆scuBOTBGlA:2012/07/04(水) 17:22:33
>337
とりあえず確認ポイント

・手動で試す時はちゃんとcronは停止して試した?
・APIはちゃんと漏れなく書き換えてある?
・APIのACCESSレベル( https://dev.twitter.com/apps での設定) は read and writeになってる?

342337:2012/07/04(水) 20:32:05
>341

・手動の際はcronは停止させていました。
・APIとはsetting.php内の$screen_nameから$access_tokenまでの書き換え部分のことでしょうか?無知で申し訳ございません。
もしその部分のことでしたらきちんと書き換えができていると思います。
・きちんとread and writeとなっておりました。

343 ◆scuBOTBGlA:2012/07/04(水) 21:26:56
>342
ちょうど ↑の 339さんが書いてるとこ
http://mira-cocoa.sblo.jp/article/56291047.html
ここ参考に、EasyBotter.phpを書き換えるっていう作業が。

とりあえず、RT飛ばしても reply返ってこないってことは、自分のTLを見れてないって
ことだから、可能性としては、この書き換えしてないとかかなぁと・・・・・・。

344337:2012/07/05(木) 00:52:17
>342

分かりやすくありがとうございます。
書き換えをしましたところ、bot宛にリプを送ってbotを手動で動かした際に「5分以内に受け取った@はないようです。」の表示が消えたことから
一応@があった、ということは認識されるようになったのでは?と思います。
ただ、それでも今のところbotから返事がない状態です。

345 ◆scuBOTBGlA:2012/07/05(木) 02:41:34
>344
ということは、手動実行すると 真っ白な画面になるようになったのかな?

そこまできたら、後は

>>1-3 にヒント・解答があるので、探してみましょう。

346名無しさん:2012/07/24(火) 14:45:56
【バージョン】Ver.2.05(修正済み)
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 動かない
【実行】 GAE CRON
【実行間隔】 2分間隔
【不明点】
2分間隔でリプを返し1時間に1回ランダムpostになっているはずですがランダムpostは成功しているのにリプは成功しません。
手動アクセスでも真っ白+広告になります。(その後またアクセスすると2分以内に受け取った@はないようです。が出ます)
以下bot.phpです
<?php
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(2,"data.txt","reply_pattern.php");
if(date("i") == 0){
$response = $eb->postRandom("data.txt");
}
?>

347名無しさん:2012/07/24(火) 20:47:50
【バージョン】 Ver.2.0x
【設置鯖名】 @PAGES
【PHPのバージョン】
【手動】 動かない
【実行】 手動
【不明点】
非公式wikiの手順通りに進めて参りましたが、
手動でbot.phpをブラウザで開いてもページが真っ白になり何も表示されません。
一応こちらの>>1-3は全て読みました。
文字コード、改行コード、パーミッション、setting.phpは全て問題ありません。
エディタはTerapadを、アップロードにはFFFTPを使用しておりますが、アップ後も文字コード、改行コードともに変更はありませんでした。
その他にはどのような理由が考えられますでしょうか?

348名無しさん:2012/07/29(日) 03:36:43
>>346
reply_pattern.php内記述に不備があると
 (設定数)分内にbotあてリプライがあった時→真っ白
 リプライがなかった時→「○分以内に受け取った〜」という一見正常な画面が出ます
(他の状況でも出るかもしれませんが自分の体験上多かったパターンです)

>>347
FFFTP転送時にアスキーモードになっていたでしょうか
あとは他の人の場合でもありましたが、上位フォルダに.htaccessが無いかどうか
全削除→アップロードしなおし、でエラーが出なくなる場合もあります

どのファイルがおかしいのかわからない時は、
いじっていないDLした状態のファイル(setting.php除く)をアップロードし、正常に動作するのを確認してから
変更したファイルを一つずつ上書きアップロードしてみてはどうでしょうか
一つ上書きするたびにbot.phpを叩けば、どのファイルでおかしくなるのかわかります

349Argusheuromor:2012/09/01(土) 18:55:00
Ever considering the fact that the public grew to become mindful about the potential risks of cigarette smoking some many years in the past, many individuals have discovered quitting the tobacco addiction hard. Providers have already been innovating and developing using tobacco cessation solutions for a few years now. From nicotine patches to gum, nicotine addicts happen to be working with them to give up their addiction.

<a href=http://www.vaporultra.com/1-pack-5-cartridges/&gt;right here </a> (also called e-cigarettes and electrical cigarettes)are classified as the most recent solution to the sector. They may be intended to feel and look like genuine cigarettes, even down to emitting synthetic smoke however they do not in fact include any tobacco. End users inhale nicotine vapour which looks like smoke devoid of any of the carcinogens uncovered in tobacco smoke which are destructive to your smoker and other individuals close to him.

The Electronic cigarette contains a nicotine cartridge that contains liquid nicotine. Each time a user inhales, a very small battery powered atomizer turns a small degree of liquid nicotine into vapour. Inhaling nicotine vapour provides the user a nicotine hit in seconds rather than minutes with patches or gum. If the consumer inhales, a small LED mild at the tip from the electronic cigarette glows orange to simulate a real cigarette.

The nicotine cartridges on their own are available in numerous strengths. The majority of the main manufacturers, like the Gamucci ecigarette have entire power, 50 percent power and minimum energy. This really is created for persons who choose to quit smoking. As they get used to making use of the ecigarette, they could gradually decrease the power they use till they stop.

The principle advantages e-cigs have around nicotine patches or gum is first of all, customers have the nicotine strike substantially faster and next, because a giant motive why people who smoke fall short to stop suing patches and gum is given that they even now pass up the act of inhaling smoke from the cylindrical object. The electric cigarette emulates that even down to the smoke.

The ecigarette can also be helpful from a economical viewpoint. A set of five nicotine cartridges costs approximately £8 which is equal to 500 cigarettes. Even though the first expenditure of an electric cigarette package of £50 may appear steep in the beginning, end users help save revenue ultimately.

As with a lot of well-known products and solutions, there have been a large number of affordable Chinese imitations flooding the marketplace. They can be ordinarily fifty percent the price of a branded electronic cigarette and seem like the true issue likewise. It is actually inadvisable to implement these simply because they haven't been topic into the similar rigorous screening the official electric cigarettes have and may potentially be remarkably harmful for the user's wellbeing.

As e cigarettes become progressively more well-known, they are ever more utilised to smoke in pubs and clubs which has a smoking ban. Electric cigarettes seem to be the next factor and may before long swap genuine cigarettes in clubs.

350名無しさん:2012/09/02(日) 00:39:34
【バージョン】 2.05
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 動く
【実行】 手動/Free Web Cron Service
【実行間隔】 5分間隔
【不明点】
とくにエラーなどは出ないのですが「投稿するメッセージがないようです。」と表示され、投稿できません

昼頃に手動で試した時にはこのようなメッセージは出ず投稿もできましたので、ファイル名を間違えているということはないはずです
ツイート内容も70以上あるので少なすぎるということはないと思います
リプライも同じく昼頃は上手くいったのに現在やったところ「投稿するメッセージがないようです。」が表示され投稿できません
もし原因がわかる方がいらっしゃればお願いします

351350:2012/09/02(日) 00:48:43
すみません、自己解決しました。
bot.php内の$response = $eb->postRandomの()の中身を$response = $eb->replyTimelineと同じように書き変えてしまっていたようです。
ご迷惑をおかけしました

352Argusheuromor:2012/09/02(日) 12:25:33
At any time since the general public turned knowledgeable concerning the potential risks of using tobacco a handful of many years in the past, lots of people have discovered quitting the tobacco addiction challenging. Businesses are actually innovating and developing smoking cigarettes cessation merchandise for many years now. From nicotine patches to gum, nicotine addicts are actually working with them to give up their addiction.

<a href=http://www.vaporultra.com/product_images/j/842/5PackPic__16833_zoom.jpg&gt;www.vaporultra.com/5-pack-25-cartridges/ </a> (also referred to as e-cigarettes and electrical cigarettes)are classified as the newest merchandise within the market. These are meant to look and feel like authentic cigarettes, even all the way down to emitting artificial smoke having said that they don't actually contain any tobacco. Customers inhale nicotine vapour which looks like smoke without the need of any of your carcinogens uncovered in tobacco smoke which can be unsafe to your smoker and other folks about him.

The Ecigarette contains a nicotine cartridge that contains liquid nicotine. Each time a consumer inhales, a very small battery driven atomizer turns a small degree of liquid nicotine into vapour. Inhaling nicotine vapour gives the consumer a nicotine strike in seconds rather than minutes with patches or gum. If the person inhales, a small LED gentle with the suggestion on the electronic cigarette glows orange to simulate an actual cigarette.

The nicotine cartridges on their own can be found in many strengths. Nearly all of the major brand names, like the Gamucci e-cigarette have complete energy, half energy and minimal power. That is made for individuals who need to quit smoking. As they get accustomed to employing the ecigarette, they could steadily decrease the strength they use right up until they give up.

The primary rewards e-cigarettes have more than nicotine patches or gum is firstly, customers possess the nicotine strike much faster and the second thing is, for the reason that a big rationale why people who smoke fail to give up suing patches and gum is given that they even now miss the act of inhaling smoke from the cylindrical object. The ecigarette emulates that even down to the smoke.

The electric cigarette can be helpful from a economic point of view. A established of 5 nicotine cartridges expenses all-around £8 and is particularly equal to five hundred cigarettes. While the first financial investment of an electronic cigarette kit of £50 may seem steep at the outset, customers conserve cash in the long term.

As with numerous well known goods, there are actually a large number of low-priced Chinese imitations flooding the market. They can be commonly 50 percent the price of a branded ecigarette and look like the actual point at the same time. It's inadvisable to use these since they have not been matter to your very same rigorous screening the official e cigs have and may probably be extremely damaging to the user's wellness.

As e cigs come to be progressively more well known, they may be increasingly made use of to smoke in pubs and clubs with a smoking cigarettes ban. Electronic cigarettes seem to be the following factor and should soon replace real cigarettes in clubs.

353Argusheuromor:2012/09/03(月) 03:03:43
Ever considering that the general public became informed regarding the dangers of cigarette smoking several decades ago, lots of individuals have found quitting the tobacco habit tricky. Companies are already innovating and manufacturing using tobacco cessation items for a few years now. From nicotine patches to gum, nicotine addicts happen to be employing them to quit their addiction.

<a href=http://www.vaporultra.com/about-vapor-ultra/&gt;cheap disposable electronic cigarette </a> (also referred to as e-cigarettes and electric cigarettes)will be the latest products for the market place. They are made to appear and feel like serious cigarettes, even down to emitting artificial smoke even so they don't essentially include any tobacco. Buyers inhale nicotine vapour which appears like smoke with no any of the carcinogens identified in tobacco smoke that are unsafe on the smoker and other folks about him.

The Electronic cigarette contains a nicotine cartridge containing liquid nicotine. Any time a consumer inhales, a little battery driven atomizer turns a little degree of liquid nicotine into vapour. Inhaling nicotine vapour gives the consumer a nicotine strike in seconds rather than minutes with patches or gum. If the consumer inhales, a little LED light at the tip of the e-cigarette glows orange to simulate a real cigarette.

The nicotine cartridges themselves are available a variety of strengths. The majority of the most important manufacturers, including the Gamucci electronic cigarette have total strength, fifty percent power and minimal energy. This can be created for men and women who need to quit smoking. Since they get used to employing the electric cigarette, they could slowly decrease the energy they use till they give up.

The most crucial advantages e-cigs have about nicotine patches or gum is firstly, consumers hold the nicotine hit considerably faster and second of all, because a large rationale why people who smoke fail to stop suing patches and gum is given that they still miss the act of inhaling smoke from the cylindrical item. The electronic cigarette emulates that even right down to the smoke.

The e-cigarette can also be useful from the monetary perception. A established of five nicotine cartridges costs about £8 and is equal to 500 cigarettes. Whilst the initial investment of an electronic cigarette package of £50 may perhaps appear to be steep to start with, buyers help save cash in the long term.

As with many well-known solutions, there have been a great number of low-cost Chinese imitations flooding the marketplace. They can be ordinarily half the cost of a branded electronic cigarette and seem like the real factor too. It really is inadvisable to work with these because they have not been issue to the exact same rigorous testing the official electric cigarettes have and can potentially be remarkably destructive to your user's overall health.

As e-cigs develop into a growing number of well known, they can be increasingly utilized to smoke in pubs and clubs with a smoking ban. E cigs seem to be the following factor and could shortly substitute serious cigarettes in clubs.

354名無しさん:2012/09/05(水) 01:16:11
【バージョン】 Ver.2.0x
【設置鯖名】 @PAGES
【PHPのバージョン】5.2
【手動】 動く
【実行】 cron
【不明点】
 TLで取得するあいさつに対し、時間をある程度区切って
返答させようと非公式wikiを参考に拙いながらも構文を組んで
設置してみたのですが、あいさつに対して反応はするものの
こちらが指定するファイルとは違うファイルを読んでしまっています。

問題の構文は

//bot.phpを実行したときに、あいさつ関連のTL反応を制御する
if(date("G") > 5 && date("G") < 12 && date("w") == 0 || date("w") == 6){
$response = $eb->replyTimeline(15,"reply_tl01_weekend.php");
}
else{
$response = $eb->replyTimeline(15,"reply_tl01_weekday.php");
}
if(date("G") > 11 && date("G") < 18 && date("w") == 0 || date("w") == 6){
$response = $eb->replyTimeline(15,"reply_tl02_weekend.php");
}
else{
$response = $eb->replyTimeline(15,"reply_tl02_weekday.php");
}
if(date("G") > 17 && date("G") < 0 && date("w") == 0 || date("w") == 6){
$response = $eb->replyTimeline(15,"reply_tl03_weekend.php");
}
else{
$response = $eb->replyTimeline(15,"reply_tl03_weekday.php");
}
if(date("w") == 0 && date("w") ==6){
$response = $eb->replyTimeline(15,"reply_tl04_weekend.php");
}
else{
$response = $eb->replyTimeline(15,"reply_tl04_weekday.php");
}

となっていて、テスト時には『reply_tl04_weekday.php』を
参照してくれるはずが、何故か『reply_tl01_weekday.php』を
参照してしまいます。

 どなたかお知恵を貸していただける方いらっしゃいましたら
どうかお願いいたします。

355名無しさん:2012/09/05(水) 12:14:44
【バージョン】 2.05
【設置鯖名】 ロリポップ
【PHPのバージョン】5.2
【手動】 動かない
【実行】 手動
【実行間隔】 まだ実行していません
【不明点】
Fatal error: Call to undefined method EasyBotter::postRandom() in /home/users/1/noor.jp-naia/web/EasyBotter/bot.php on line 13と表示され、投稿できません

356名無しさん:2012/09/05(水) 21:03:30
>354
 すみません、自己解決しました。詳しい人とやり取りしながら
構文を教えてもらい、それを組み込むことにしました。

357名無しさん:2012/09/08(土) 14:32:38
はじめまして。
お伺いしたいのですが、こちらのbotスクリプトで
RSSを取得して配信することは可能でしょうか。

とあるサービスを利用してブログのRSSを配信するだけのbotを作っていたのですが、
TwitterのRSSに関する仕様変更に伴いサービスが今後も利用できるか不明になったため、
TwitterにRSSを投稿するだけの方法を探してますが、検索してもいまいち出て来ません。
コチラのスクリプトを利用してキャラクターbotは作っているのですが、
RSS配信となると、どこをどう変えたらいいのか判らないため、ご助言頂けると幸いです。

358名無しさん:2012/09/08(土) 19:25:04
【バージョン】2.05
【設置鯖名】 @PAGES
【PHPのバージョン】不明
【手動】 動く
【実行】 GAEcron
【実行間隔】 2分
【不明点】
bot.phpをcronに合わせて2分間隔で実行するように設定しましたが、
定期ポスト(1時間間隔)がうまくできません。
最初はcron、bot.php共に30分ごとの定期ポストで設定しておりましたが、
1時間ごとのポストで設定をし直しました。
時間分けを入れなければ、定期ポストは成功するのですが…。
設置サーバとcronの間にズレがあるのが原因かと思い、
以下の表記でアップロードしています。


if(date("i") == 0 || date("i") == 59){
$response = $eb->postRandom("data.txt");
}
$response = $eb->reply(2,"unknown.txt","reply_pattern.php");
$response = $eb->replyTimeline(2,"timeilne.php");


以上の表記だと、毎時0分にポストをしたり・しなかったりと不安定な状況です。
どなたか分かる方いらっしゃいましたらご指導いただけると嬉しいです。

359 ◆scuBOTBGlA:2012/09/29(土) 19:11:40
>358
毎時0分だったら、cronを5分に1度実行にして
if(date("i") == 0 || date("i") == 59 || date("i") == 1 || date("i") == 2){
でも良いかも。

ただ、毎時0分は、とにかく色々な人やスクリプトの処理が集中して 負荷がかかるから云々いう
話が出てるんで、避けた方が良いかもしれません。

まぁ、そういう理由もあって、発動しにくいってのもあるのかも。

360名無しさん:2012/09/30(日) 19:31:25
【バージョン】 Ver.2.05
【設置鯖名】 @PAGES
【PHPのバージョン】PHP-5.2系
【手動】 動く?
【実行】【実行間隔】 まだ手動で確認中です

【不明点】
非公式wikiの手動実行編を参考にbot.phpを書いて動かしていたところ、
botへ本アカから「おはよう!」とリプライしてみても
「2分以内に受け取った@はないようです。」と表示されたままです。
ランダムPOSTも試してみましたが「投稿するメッセージがないようです。」と表示されます。
リプライに対するコメントも、ランダムPOSTのコメントもDLしたままのもので確認しています。

この確認の前に、自分で書いたbot.phpとreply_pattern.php、data.txtで動かしていたところ、
ランダムPOSTが二重投稿になってしまったり、
リプライに対して反応語句が含まれるにも関わらずdata.txtから返事をしてしまい、
ちゃんと手順を踏まなければと思い上記の方法で確認していたところでした。

setting.phpは失敗したときから変えていないので問題はないと思います。
また、文字はUTF-8、改行コードもLFになっています。
data.txt、log.dat、reply_pattern.phpのパーミッションは666にしてあります。
(PEARの属性?が755、他は644で、いじっていません)
アップロードするのにFFFTPを使っていますが、アップロードしたものを開いてみても
UTF-8、LFのままのようです。

サクラエディタを使っているのですが、
それが悪いのかと思いTeraPadでやり直してみましたが同じ結果でした。

既出かと思い検索もしてみたのですが、私とは違うようだったり、解決方法がよくわからず、
このたび質問させていただきます。
くだらない間違いをおかしているかもしれませんが、どうかお教えいただきたいと思います。
書き漏らしなどもあるかもしれませんが、どうかよろしくおねがいします。

361名無しさん:2012/10/04(木) 04:49:17
はじめまして。お邪魔します。

圧縮新聞のようなものを作りたいのですが、
phaさんのこの記事以外に参考になるものがありましたら
お教え下さい。

http://d.hatena.ne.jp/pha/20071124/1195904502

362名無しさん:2012/10/04(木) 23:58:34
360です。
もう一度1からやり直してみたところ、ちゃんと動きました!
スレ汚しすみませんでした。

363江梨子:2012/10/09(火) 18:46:46
たくさんイヤラシイ事をおねだりできるよ(*´д`)ノ♪ http://www3.gffz.biz

364名無しさん:2012/10/11(木) 05:28:31
【バージョン】Ver 2.05
【設置鯖名】@pages
【PHPのバージョン】不明、おそらく5.2
【手動】 動く
【実行】 手動
【実行間隔】
【不明点】
第一段階
data.txtに幾つかのパターンを書き込み、手動で動作させる。→正常に動作する。
第二段階
reply_pattern.phpのデフォルトの物を別名に変えて保存し、同時にreply_pattern.txtのコピーを取る。
reply_pattern.phpのコピーの方のファイル名をreply_pattern.phpにし、デフォルトだった内容を
下記の様に書きかえる

<?php
//特定の単語を受け取った場合に特定の反応を返したいときに使う、反応のパターンを書くためのファイルです。
//複数のパターンに一致する場合は上のものが優先されます。PHPの正規表現にも対応しています。

$data = array(
"発言1"=> array(
"反応1",
"反応2",
"反応3",
"反応4",
),
"発言2"=> array(
"反応1",
"反応2",
"反応3",
"反応4",
),
);

発言の部分に特定の単語、反応の部分に、その単語をTLで拾った場合返す反応を書く
TLから特定の単語を拾って、その発言者に対して返信する動作をさせたかったため。

この際、同時にbot.phpの
$response = $eb->replyTimeline(2,"reply_pattern.php");
の部分を
$response = $eb->replyTimeline(10,"reply_pattern.php");
と書き変えた。

Warning: preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 0 in /usr/local/www/htdocs/【id名】/public_html/cgi-bin/twibot/reply_pattern.php on line 279
が数行と
10分以内のタイムラインに反応する単語がないようです。

と表示される様になる。

365364:2012/10/11(木) 05:44:54
初心者質問スレに目を通し、reply_pattern.phpを書き変えた事に原因が有ると踏んで
試しに、reply_pattern.phpをreply_pattern2.phpと名前を変え、別名(ba_reply_pattern.php)で保存していたデフォルトの物を
reply_pattern.phpに名前を換えて動作させてみると

10分以内のタイムラインに反応する単語がないようです。

とだけ表示される様になる。

文字コードの問題かと考え、ファイルの文字コードを変換するツールを
ダウンロードし、reply_pattern2.phpの文字コードをUTF-8に変換して再度アップロードして
reply_pattern→ba_reply_pattern.php
reply_pattern2.php→reply_pattern.php
とそれぞれファイル名を変更して、動作させてみる。

Warning: preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 0 in /usr/local/www/htdocs/【id名】/public_html/cgi-bin/twibot/reply_pattern.php on line 279
が表示されなくなった代わりに

Warning: preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 0 in /usr/local/www/htdocs/【id名】/public_html/cgi-bin/twibot/EasyBotter.php on line 279
が数行表示される様になる。←今ここ

ファイルのアップロードはFFFTPで行い
txtやphpファイルの編集はFFFTPでダウンロードした物を、「notepadで開く」で開いて編集してます。

多分、書き変えた方のreply_patternに原因があるんだと思うんですがどうすれば直るでしょうか?

366名無しさん:2012/10/11(木) 07:10:55
>>364
notepadということは、メモ帳で編集しているんですね?
メモ帳でUTF-8を保存すると必ずBOMありになってしまうそうです。
(そのためメモ帳はShift-JIS以外には非推奨、としているサイトもありました)

BOMありになることで100%PHPに不具合が出るというわけではないようですが、
wikiで推奨されているテキストエディタのどれかを使って
UTF-8N(=BOM無し)を指定して保存してみたらどうでしょう。

367名無しさん:2012/10/11(木) 08:46:17
botが起動しなくなっていませんか?
今まで普通に動いていたのに、今日の午前3時頃から動かなくなっています。
GAE-Cronで起動していまして、直接bot.phpを叩いてみても
受け取ったリプライはないと出ます。
※ためしに直接リプっています。
で、リプは返らない状況です。

お分かりになる方、いらっしゃいましたらお教えください。

368名無しさん:2012/10/11(木) 09:10:59
こちらもbotが起動しなくなっております。
2.04verを使用しておりましたので、2.05verにバージョンアップしてみましたが、
特に改善は見られませんでした。
通常ポスト、リプライは別々に叩いておりますので、
試しに両方叩いてみましたが無反応……。
それどころか、通常ポストの方には

Twitterへの投稿に失敗しました。
ユーザー名:@XXXXXXX

object(SimpleXMLElement)#5 (1) {
["error"]=>
string(31) "Sorry, that page does not exist"
}

と表示されます。何度叩いても一緒です。
サーバーに上げているphpを念の為に上げ直してみても変わりませんでした。
367さん同様に、こちらも午前3時ごろから止まっております。

369名無しさん:2012/10/11(木) 09:12:55
【バージョン】 Ver.2.05
【設置鯖名】 ロリポップ
【PHPのバージョン】5.2
【手動】 動かない
【実行】 cron
【不明点】
ファイルなどは一切いじっておらず、先日まで自動で問題なく動いていたのですが突然ポストもリプライもしなくなり、試しに手動で叩いてみると

object(SimpleXMLElement)#10 (1) {
["error"]=>
string(31) "Sorry, that page does not exist"
}
2分以内に受け取った@はないようです。

と表示され全く動きません。
エラー文を検索してみましたが原因らしきものが見当たりませんでした。
お知恵をお貸しいただければ幸いです。

370369:2012/10/11(木) 09:19:22
投稿中で上のお二方の投稿を見ておりませんでした。
皆様同じ状況なのですね。
スレ汚し誠に申し訳ございません。

371名無しさん:2012/10/11(木) 09:33:24
うちのbotには特に異常は見られませんが……
ちなみに有料サーバーで、cronもサーバーに付属のものです。
367さん、368さんは質問テンプレを使用しておられませんが、
詳細な環境はどうですか?369さんと同様の環境ですか?

372368:2012/10/11(木) 09:42:43
>>371

記入漏れ申し訳ございませんでした。
以下テンプレに従いまして詳細です。

【バージョン】 Ver.2.05
【設置鯖名】 @PAGES
【手動】 動かない
【実行】 ブラウザ自動更新 Sleipnir使用
【実行間隔】 通常ポスト1時間 リプライ2分

この様な感じです。

373368:2012/10/11(木) 10:01:23
すみません!解決いたしました。
botが止まっていらっしゃる方は、
以下のURLを参考にAPIを最新にして下さい。

http://www26.atwiki.jp/easybotter_wiki/m/pages/34.html

お騒がせいたしました。
どうぞ参考になさって下さい。

374名無しさん:2012/10/11(木) 17:10:24
>>373
こちらも同様のエラーで悩んでいたところでした
URL通りに変更したところ解決しました
ありがとうございます!

375名無しさん:2012/10/11(木) 18:13:39
バージョン】 Ver.2.05
【設置鯖名】 ロリポップ
【手動】 動かない
【実行】 cron
【不明点】
11日04:00頃から通常ポストが、11:00頃からリプライが動作しません。
APIは373を参考に最新にしました。

object(SimpleXMLElement)#11 (1) {
["error"]=>
string(31) "Sorry, that page does not exist"
}
のエラーが出ます。
通常ポストも動きません。

376375:2012/10/11(木) 18:33:53
申しわけありません。EasyBotter.phpが自動でうまく書き換えられていませんでした。
動作いたしました。
「多分完了しました。確認して下さい」と出ても安心せずに、内容を確かめるべきでした。

377名無しさん:2012/10/11(木) 18:40:58
375さんと同じくロリポップ鯖からですが
>>373さんのレスの情報からEasyBotter.phpを書き換えて
こちらも同様のエラーを直すことができました
どうもありがとうございました!

378名無しさん:2012/10/11(木) 19:19:32
こちらもロリポ鯖からでした
ググって調べたらこちらのスレにたどり着きました
>>373さんありがとうございました!よかったー

379名無しさん:2012/10/12(金) 00:05:25
xmlが廃止されるんですが、その対処法等どなたか知りませんか?
私も>>373さんの方法で応急処置をさせていただきましたが、xmlでしたのでこの先が不安で…。
知っている方がいらっしゃいましたらご教授願います。

380名無しさん:2012/10/12(金) 06:09:36
【バージョン】 2.04
【設置鯖名】 さくら
【PHPのバージョン】
【手動】
【実行】 webcron
【実行間隔】 5分ごと
【不明点】
通常投稿用とリプライ用を別々のサーバに置いていますが、リプライ用が急におかしくなりました。
これまで問題なく動いていたのですが(というか今も動いているのですが)、
reply_pattern.phpを読まなくなっている?っぽく、ランダム返信のみです。
発生は昨日からで、これが起こる前にやったことは
http://www26.atwiki.jp/easybotter_wiki/m/pages/34.html
のページの通りに書き換えたことだけです。
問題発生より前には、EasyBotter.phpの該当箇所以外、まったくいじっていません。
パーミッションの問題?と思ったのですが、元々は.phpのパーミッションが604になってたのを
サーバのQ&Aに従い755や705にしてみてもまったく状況が変わらず……
複数のbotがあるのですが、パーミッション弄ったbotも弄ってないbotも同じ症状です。
(パターン返信ができない以外は何も問題なく動作しているのですが)
これは何が原因なのか、わかる方いらっしゃいませんでしょうか

381380:2012/10/12(金) 06:13:21
すみません、EasyBotter.phpの中身を見ていたら数カ所文字化けがあり
ひょっとしたらこれが原因かも……
ファイルマネージャーから直接書き換えると文字化けが起こったりするんでしょうか

382380:2012/10/12(金) 06:18:47
追記、文字化けはどのbotでも
リプライを作る〜リプライパターンと照合の部分のみに発生していました

383364:2012/10/12(金) 07:32:18
>>366
terapadというので文字コードを変換してアップしてみたところ
作動する様になりました。

ただ、該当する単語があってリプライした際、下記のメッセージが表示される様になりました
Warning: file_put_contents(log.dat) [function.file-put-contents]: failed to open stream: Permission denied in /usr/local/www/htdocs/【id名】/public_html/cgi-bin/twibot/EasyBotter.php on line 69
log.datのパーミッションは644にしていますがどう変えれば良いのでしょうか?

384名無しさん:2012/10/13(土) 07:21:46
>>375
http://www26.atwiki.jp/easybotter_wiki/pages/34.html

385名無しさん:2012/10/13(土) 12:31:44
>>379さんでも出てますがAPIをJSON形式に変えるというのはどうすれば良いのでしょうか
開発者向けページを見て
http://api.twitter.com/1/statuses/mentions.xml を
https://api.twitter.com/1.1/statuses/mentions_timeline.json に、
http://api.twitter.com/1/statuses/friends_timeline.xml を
https://api.twitter.com/1.1/statuses/user_timeline.json に変えていくといった具合で
一つ一つ変えていけば良いのでしょうか
どれがどれに当てはまるのかもちょっと曖昧な感じなのですが…
他に書き換えるべきところもあるのでしょうか

386385:2012/10/14(日) 00:51:08
すみません、自己解決できました
https://gist.github.com/3883139
ここ参考にしてみました

387名無し:2012/10/14(日) 23:34:46
【バージョン】 Ver.2.4
【設置鯖名】@page
【PHPのバージョン】
【手動】 動く/動かない
【実行】GAEcron
【実行間隔】 2分間隔
【不明点】 TL反応しない。
今までランダムポスト、リプライの機能のみを使っていて、新しくTL反応を追加しようとbot.phpに
$response = $eb->replyTimeline(2,"reply_tl.php");
を追加したんですが、反応しません。
手動で実行してみるとエラーも起きてないんですが、「○分以内のタイムラインに反応する単語がないようです。」のメッセージも無く、TL反応できていません。wikiを読んでも分からなかったので、こちらに質問させて頂きました。
分かる方、いましたらお願いします。

388387:2012/10/15(月) 00:14:25
追記です。
TL反応しない、「○分以内のタイムラインに反応する単語が〜」のメッセージが出ない件ですが、別のbotと会話させようとしてeasybotter.phpに、
wikiの「ID別設定」、「特定のアカウントに対しては、別のリプライパターンを読み込ませたい」の設定を組み込んだあとにTL反応を追加したらそうなってしまいました。これが原因なんでしょうか…

389387:2012/10/15(月) 01:07:43
自力で解決できました…すみません、お目汚し失礼しました…!

390名無しさん:2012/10/15(月) 02:50:23
できれば「自力で解決できた」だけじゃなく、どうやって解決したかも書いていってほしい
そうすればあとに続く初心者の参考になるよ

ケアレスミスだった、というのだって構わない
みんな口にはしないけど必ずなにかしらやらかしてる
どこら辺が間違い易いか、経験者に教えていってもらいたいな

391名無しさん:2012/10/16(火) 01:25:28
【バージョン】 Ver.2.05
【設置鯖名】 ロリポ
【PHPのバージョン】5.2
【手動】 動く
【実行】 ロリポCron
【実行間隔】 3分
【不明点】 他所でソースお借りしてjsonに対応させてみたんですが、どうしてもリプライが重複します
今までそういうバグはありませんでした
どうも、リプライしたidが記録されてない、xmlの型になっているかららしいのですが、どこをどう直したらいいか分からないのです
分かる方教えてください

392名無しさん:2012/10/16(火) 08:47:39
>>391
http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1289474773/57
http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1289474773/59

393名無しさん:2012/10/16(火) 08:51:27
貼ってから気がついたがここ初心者スレだったな
EasyBotter改造については次から2.0スレへよろしく(←ここでいいんだよね?)

399名無しさん:2012/10/25(木) 13:30:44
【バージョン】 Ver.2.4
【設置鯖名】@page
【PHPのバージョン】5〜
【手動】 動く
【実行】Free Web Cron Service
【実行間隔】 1時間間隔 
【不明点】 TL反応しない。2分、15分、30分間隔など試したのですが丸1日まっても
反応せず。手動やFree Web Cron Service上のcheckを押した場合はポストされます
これはwikiに書いてある「無料cronは不安定で動作に信頼性はない〜」の現象でしょうか?

400名無しさん:2012/10/25(木) 18:08:10
まさかと思って今ログ見たら
うちのも20日ころから動いてないな
新しいタスク作ってもうごかねぇ
よくわからんな

404名無しさん:2012/10/27(土) 19:47:29
【バージョン】 Ver.2.0x
【設置鯖名】 @pages
【PHPのバージョン】5.X
【実行】 GAE-CRON
【実行間隔】 3分間隔
【不明点】
ツイッターの規約が変わったので、規約に沿った書き換えをEasyBotter.phpに施し、
非公式wikiにある「特定のリプライをもらった時にのみフォローorリムーブを返す」も書き換え、
対応したのですが、何故かbot.phpで指定してないはずの「自動リプライ返し」が作動し
「特定のリプライをもらった時にのみフォローorリプライを返す」は、
フォローは返しますが、フォローに対して返信リプは無反応。
リムーブは完全に動きません。

現在は、自動リプライ返しの所は、bot.php、EasyBotter.php共にコメントアウトして
作動しないようにしてますが、「特定のリプライをもらった時にのみフォローorリムーブを返す」部分が
動かない(エラーコードも吐き出さず真っ白)為途方にくれております。

■■EasyBotter.php変更部分■■
$reply_name = (string)$reply->user->screen_name;
$in_reply_to_status_id = (string)$reply->id;
//$re["status"] = "@".$reply_name." ".$status; 元の記述
//下から追加121027
switch(true){
//半自動フォロー
case stristr($status, "[[AUTOFOLLOW]]"):
$status = str_replace("[[AUTOFOLLOW]]","",$status);
$followreq = $this->consumer->sendRequest("http://api.twitter.com/1/friendships/create.json&quot;,array(&quot;screen_name&quot; => "$reply_name"),"POST");
$re["status"] = "@".$reply_name." ".$status;
break;

//半自動リムーブ
case stristr($status, "[[AUTOREMOVE]]"):
$status = str_replace("[[AUTOREMOVE]]","",$status);
$removereq = $this->consumer->sendRequest("http://api.twitter.com/1/friendships/destroy.json&quot;,array(&quot;screen_name&quot; => "$reply_name"),"POST");
$re["status"] = "@".$reply_name." ".$status;
break;

//その他
default:
$re["status"] = "@".$reply_name." ".$status;
}
//ここまで追加

※基本的なAPIを叩くは全アドレスを変更済み。
※その他、「自動フォロー返し」の部分を全てコメントアウト。

■■bot.phpのリクエスト指定部分■■
if(date("i") % 15 == 0){$response = $eb->postRandom("data.txt");}
$response = $eb->reply(3,"tw02.txt","reply_pattern.php");

※自動フォロー返しはコメントアウト。

以上です、宜しくご指導お願いいたします。

405404:2012/10/27(土) 20:57:18
追記です。
その後もう一度テストしたら、フォローもリムーブも、動作はするのですが、
リプライは返さなくなってました。
謎のままですが、お知恵をお貸しください。

406名無しさん:2012/10/27(土) 21:23:10
>>404

>>1内(新スレに修正)
■EasyBotter.phpを修正したが動かない …… 改造は初心者の範疇外です。該当スレへ。
 EasyBotter2.0その2
 http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1323932658/

407404-405:2012/10/28(日) 14:50:33
>>406
誘導ありがとうございます。
新スレに修正が来ているのかな?と思いましたが、
>>1を新スレアドレスに修正ということなんですね;;
しばらく探してしまいました;;すみません;;
質問場所を変更いたします。ありがとうございました。

408名無しさん:2012/10/29(月) 23:41:28
ロリポ鯖で新API書き換えてもTL・リプライ反応しない奴は
easybotter.phpの下部API群のgetreplyの部分見てみろ
http://www26.atwiki.jp/easybotter_wiki/m/pages/34.html
で更新しても書き換わって無い場合があるから
手動で確認されたし。俺はこれで無事に治ったから一応報告だけ

409名無しさん:2012/10/30(火) 01:31:39
>408
たとえば、
function setUpdate($value){
$url = "http://api.twitter.com/1.1/statuses/update.json&quot;;
となってます。
これは書き換えなくてもいいんですよね?

【バージョン】 Ver.2.1β
【設置鯖名】ロリポップ
【PHPのバージョン】5〜
【手動】 動くけども
【実行】ロリポップのCronだったり手動だったり
【実行間隔】 1時間間隔 
【不明点】 since_id parameter is invalid
Fatal error: Cannot use object of type stdClass as array in /home/users/1/lolipop.jp-xxxxxxx(伏せます)/web/xxx(伏せます)/EasyBotter.php on line 232

動くのですが、手動で動かすとこういうエラーを吐きます。
また、ロリポップ内のCRON、1時間とか30分だと動かない。
10分間隔だと動きます。これはアレなので除外で。
 
エラーの意味もググってみたのですが、とんちんかんな回答しか
なかったと思われます。
>408 さんの書き込みを見たので試そうとしたのですが、
どうも合致せず、書き込ませていただきました。

410名無しさん:2012/11/02(金) 18:23:11
【バージョン】 Ver.2.1べーた
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 動かない
【実行】 setcronjob
【実行間隔】 30分間隔
【不明点】
マルコフ連鎖botにしようと思い設定したのですが

EasyMarkov (Tweet) > 連鎖に使用できるツイートが TL にありませんでした

と出てpostできない状態です

IDやエンドポイントもオッケーなのになぜかエラー出ちゃってググってもわからない状態です
分かる方どうかお願いします

434名無しさん:2012/11/10(土) 20:15:01
【バージョン】 Ver.2.1β
【設置鯖名】 @PAGES
【PHPのバージョン】
【手動】 動く
【実行】 cron
【不明点】
リプライの一部を[[TLH]]で、リプライとしてではなく普通の呟きにするようにしてたのですが、
2.1にしてから[[TLH]]がそのまま発言するようになってしまいました
これってどうすれば元の通りに直るんですか?

435名無しさん:2012/11/12(月) 10:12:50
>>410
>>434

■EasyBotter.phpを修正したが動かない …… 改造は初心者の範疇外です。該当スレへ。
EasyBotter2.0その2
http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1323932658/

436名無しさん:2012/11/19(月) 01:45:44
【バージョン】 Ver.2.05
【設置鯖名】 @PAGES
【PHPのバージョン】
【手動】 動く
【実行】 cron
【不明点】
「おはよう!」や「おやすみ!」など、あいさつの後に相手のユーザー名を言うようにするにはどうすれば良いでしょうか?
教えてください。

437名無しさん:2012/11/19(月) 07:50:31
>>436

個人の使用者さんのブログだけど参考に
ttp://mitsuba.doujin.so/bot/category/bot_work/memo
ただ、今回のバージョンアップで使えなくなったものもあるかもしれない

447名無しさん:2012/11/20(火) 02:41:58
>>437
非常に参考になりました、ありがとうございます。

453名無しさん:2012/11/21(水) 14:40:18
【バージョン】 Ver.2.1.1
【設置鯖名】 @PAGES / TOK2 / SiteMix
【手動】 @へのリプ以外は問題なく作動
【実行】 手動

二日くらい前までcron使用しても問題なく作動してたんですが急に返信が出来なくなりました。
通常POST・TLへのリプ・自動フォローは作動します。
本アカから@飛ばしても「2分以内に受け取った@はないようです。」のままです。
更新しても画面が白くなる様な事もありません。いっそ白くなってくれれば対策も分かるんですけど。

文字改行はlog.datとPEARの中以外は「UTF-8・LF」確認済みです。
全消し→DL上げ直しもやってみました。
pageが不安定だと聞いたので他のサーバーに行っても状況変わらず。
パーミッションも指定があったものは666に変更し、他も弄りつつ何度か試しました。
twitterのIDも一度消して取り直しましたが変わらず。
data.txtも20行ほどひらがなで増やしてみましたが変わらず。
もうどうしたらいいのか分かりません。

現状はアップローダー→FFFTP
    サーバー→SiteMix  です。

EBはDLしなおしsetting.phpの設定と
$response = $eb->reply(2,"data.txt","reply_pattern.php");
の//を外し、data.txtの中身を増やした程度で後は弄っていません。

POSTとTL反応は設定すれば問題なくできているのでアカウントIDも合っているようです。


同じような質問は幾つかありましたが、大抵は文字と改行か時間が解決してくれる感じだったので
もし明確な対応策があれば、教えていただけたらと思います。

454名無しさん:2012/11/21(水) 18:25:50
453さんとほぼ同じ状況でTLの反応もしない状態です・・・

テキストコード確認済み
全消し→上げなおし
サーバー変更

いろいろやってみましたがランダムPOST以外反応しません・・・

455名無しさん:2012/11/21(水) 19:31:42
【バージョン】Ver.2.1.1
【設置鯖名】 PAGES
【実行】 手動
【手動】 動かない

ファイルを2.05から2.1.1の物にしたら、bot.phpが白紙になってしまいました…。
一体どうすれば良いのでしょうか?
どんなことでも構わないので、どうかお返事よろしくお願い致します。

456名無しさん:2012/11/21(水) 22:26:33
【バージョン】 Ver.2.1.1
【設置鯖名】 ロリポ
【手動】リプライができない
【実行】 手動
私も453さんと同じでリプライができなくなりました。
こちらはTLへのリプも出来ないようです。通常POSTと自動フォローはできます。
これはTwitter側もしくはサーバーの問題なんでしょうかね?
bot.phpを叩くとInvalid argument supplied for foreach()というエラーが出るようになりました


>>455
白くなるのはただの構文エラーではないですか?
リプライファイルの,や)がひとつでも抜けているとか

457名無しさん:2012/11/21(水) 23:41:45
【バージョン】 Ver.2.1.1
【設置鯖名】 @pages
【手動】 動かない
【実行】 CRON/手動
【実行間隔】 通常ポスト1時間 TLと@リプ3分

上の皆さんと全く同じです。
@、TLへのリプライ不可、通常POSTと自動フォローOK
手動で叩くと

Warning: Invalid argument supplied for foreach() in /(伏せ)/EasyBotter.php on line 380
3分以内に受け取った未返答のリプライはないようです。
Warning: Invalid argument supplied for foreach() in /(伏せ)/EasyBotter.php on line 380
3分以内のタイムラインに未反応のキーワードはないみたいです。

というエラーが出ます。
ただ、この状態なのは管理してるbotのうちのふたつで
他の5つは正常通り動いてます…
(通常POSTの間隔に多少違いがあるくらいでだいたい同じ条件で動かしてます)

458名無しさん:2012/11/22(木) 01:26:46
>>456
一通り確認してみましたが、ミスは無いようです。パーミションも、確認したところ指示通り…
PHPのバージョンのせいでしょうかね。@pagesの鯖を使われている方どうですか?
こちらは、27.atpages.jpですが、27の鯖で無事に.2.1.1へバージョンアップ出来た方おられますか?

本当に白紙になってしまったのは.2.1.1にしてからなんです、旧バージョンまでは正常に動いておりました

459436:2012/11/22(木) 03:30:26
【バージョン】 Ver.2.05
【設置鯖名】 @PAGES
【手動】 動く
【実行】 cron
【不明点】
>>436です。

>>437氏に回答していただいて解決したかに思えたのですが…
今度は調子に乗って色々追加していたら、リプライに反応してくれなくなってしまいました…
一度、data.txtやreply_pattern.phpを変更前の物に置き換えてみたのですがやはり駄目です
どうしたら、また反応してくれるようになるのでしょうか?どなたかお返事お願い致します。

ちなみに、今回は>>437氏のサイトとこちらのサイトも参考にしておりました。
ttp://www19.atpages.jp/godonlyknows/bot_generator_memo/

460名無しさん:2012/11/22(木) 06:19:14
>>459
436の内容はリプライじゃなくて定期ツイートで「おはようAさん」みたいにしたいってことだよね
今使ってるのが2.05で新APIの対応は大丈夫? もし2.05で新APIに対応させてたらごめん
今後2.1.1に上げたら{follower_id}とか使えなくなる機能があるから、
phaさんの公式をよく見たほうがいいです

根本的におかしくなったんならEasybotter.phpとかも全部デフォに戻してみたら?

461名無しさん:2012/11/22(木) 17:37:19
>>459
回答じゃなくて申し訳ないですが、
ご質問では少々状況がわかりにくいです
「いろいろ追加」とは、具体的にどのファイルに手を入れていたのですか?
原因も突き止めやすくなるでしょうし、他の方の参考にもなりますから、できればその辺もお願いします

462名無しさん:2012/11/22(木) 17:38:49
>> 458

@pages PHP Version 5.3.3 でした

463名無しさん:2012/11/22(木) 19:06:10
PHPのバージョンが原因だったみたいです
DLした初期のファイルを
動いてた時に使っていたエディッタ使用して
全部入れなおしたら動きました。

464459:2012/11/23(金) 02:56:18
御返事ありがとうございます

>>460
はい、そうです
APIの更新はしてあります。Easybotter.phpはデフォのままです
2.1.1にバージョンアップする際は、今までの様にだけをアップロードすればよいのでしょうか?

>>461
説明不足ですみませんでした
通常つぶやく内容はdata.txt、そしてリプライ用にはdata2.txtと言った具合いに二種類用意しているんですが
これらのデータファイルに、例:「(反応する言葉),これ買って!」みたいな物を書いていったんです

最初は順調に上手くいっていたのですが、これらの追加でリプライに反応しなくなってしまいました
念のためバックアップファイルを取っておいたので、変更前の物に戻してみてもやはり駄目
結局、タグ関係の物をすべて外してやってみて手動で動かしてみたのですがリプライに反応しなくなってしまいました…。

ちなみに手動で動かせたときは以下のように表示されています

Warning: Invalid argument supplied for foreach() in /usr/local/www/htdocs/○/public_html/○/EasyBotter.php on line 380
10分以内に受け取った未返答のリプライはないようです。
Warning: Invalid argument supplied for foreach() in /usr/local/www/htdocs/○/public_html/○/EasyBotter.php on line 380
10分以内のタイムラインに未反応のキーワードはないみたいです。

465名無しさん:2012/11/25(日) 15:09:38
>>459
◯分以内に受け取った未返答のリプライはないようです。と表示されるならeasybotter.phpの3行目v2.11かβ使ってない?
v2.05でAPI更新しただけなら ◯分以内に受け取った@はないようです と表示されると思うんだけど
もしv2.1系なら他の人と同じ現象じゃないかと

466名無しさん:2012/11/26(月) 20:18:09
【バージョン】Ver.2.1.1
【設置鯖名】@pages
【手動】動く
【実行】CRON/手動
【実行間隔】通常podt1時間ごと TLと@リプ3分ごと

初めまして。10時間前から突然定期postもリプも返さなくなってしまいました。(ここ最近は、特にアップロードなどで式の変更はしていません)
とりあえず今はEasyBotterのverを2.0.5betaから2.1.1に変更してみましたが効果は無いみたいで、cronもずっと問題なく3分置きに叩いている状態です。
手動では@のリプライに反応するのですが、自動では全く動かない場合、どのような原因が考えられるでしょうか?
教えて頂けると嬉しいです。

467名無しさん:2012/11/26(月) 22:26:18
>>466
こちらも理由がわからなくて申し訳ないのですが
現在このスレの他あちこちで、リプライができなくなったという報告が出ていますね

http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1289474773/
このスレでphaさんにも報告が届いていて、ご都合がつき次第見てみるとおっしゃってますので
すこし様子待ちした方がいいようです

468名無しさん:2012/11/27(火) 15:05:58
【バージョン】EasyBotter2.1.1
【設置鯖名】 ロリポ
【PHPのバージョン】5.3
【EasyBotterの改造】改造していない/改造している
【手動】 リプライができない&下記のエラー
【実行】 ロリポのCRON
【実行間隔】 59分間隔
【不明点】
その1
Warning: Invalid argument supplied for foreach() in /home/users/1/lolipop.jp-bloomin-g/web/hidebot/EasyBotter.php on line 380
5分以内のタイムラインに未反応のキーワードはないみたいです。

その2
Warning: array_diff() [function.array-diff]: Argument #1 is not an array in /home/users/1/lolipop.jp-bloomin-g/web/hidebot/EasyBotter.php on line 240

2年以上easybotterを使わせていただいていますが、APIの更新までは正常に動いており、2.05から2.1.1にバージョンアップした後に手動で叩くと上記のようなエラーが出るようになりました。
その1は概出レスにあるように一度デフォに戻したり、パーミッションを変えるなどしましたがが改善せず。
その2はぐぐってみましたが該当する記事が見つからなかったため、何のエラーか理解できずに今に至ります。(PHPの基礎知識は初歩の第一歩ぐらいしかありません…)

その2のエラーの意味と改善方法、分かる方いらっしゃいいましたらご教示お願いいたします。

469468:2012/11/27(火) 15:08:39
記入漏れがありました。
【EasyBotterの改造】改造していない/改造している
は、以前改造していましたが、一旦デフォに戻してあります。

不明点の所にエラーをそのままコピペしてしまったためどこの管理人かバレてしまいましたが、改善されるならそれでもいいです。。

470名無しさん:2012/11/28(水) 00:47:56
>>468
その2のエラーだけど、ファイルをリプライから何から全部初期状態にしても出る?
ロリポではないPHP5.3の鯖で2.1.1デフォルトでテストしたけど、
2は何度やっても出なかったんだよね

471名無しさん:2012/11/28(水) 02:04:18
>>468
その1のエラーに関しては380行目の引数が配列じゃないって言ってる警告文なので
foreach($tweets as $tweet){

foreach((array)$tweets as $tweet){
にしたらとりあえず出なくなった。
その後、他のforeachでも出ると思うので
同じようにforeach((array)$〜にするといいと思う。

その2に関しては自分は出ないのだけど、これも引数が配列じゃないと言っている警告文だと思うので
$followlist = array_diff($followers["ids"], $friends["ids"]);

$followlist = array_diff((array)$followers["ids"], (array)$friends["ids"]);
にすれば出ないかも?

472468:2012/11/28(水) 18:58:07
ご丁寧にご教示いただきありがとうございました!

>>470
全てデフォにしていなかったようです。。再度アップしたらその2は消えました。
申し訳ありません。

>>471
教えていただいた通り、foreach($〜を をforeach((array)$〜 に修正したら直りました!
その2は上記の通りです…すみませんでした。。

相変わらずリプはできない状態ですが、phaさんもお忙しいようなので、気長に待ちます。

473名無しさん:2012/11/29(木) 00:33:18
差し出がましいとは思いましたが、私なりにリプライ不全について調べてみました。
的外れだったらごめんなさい。

症状を厳密に言うと、POSTリクエストを送った後に、HTTP_OAuth_Consumerインスタンス内に何らかの値が残って、以後GET、POSTともにoAuth情報がフォーマット通りに作成されていないことがわかりました。(エラー400が返ってきていました)

1件しかリプライしないとか、TLかMentionsのどちらかにしか反応しないというのは、そういう理由です。

よって、リクエスト発行前に毎回HTTP_OAuth_Consumerインスタンスを作成し直すソースを書いてみました。
http://instxt.net/txt/c2f82e574b9954f2f3f89d017dce193f
継続的に運用テストをしたわけではありませんので確証はありませんが、line 380のワーニングの大本はこれでFIXできると思います。
できなかったらごめんなさい。

あと、試してはいませんが、PEARを2.0.5のものに差し替えるだけでも、直るかもしれません。
2.1.1と2.0.5のPEARをコンペアしたところ、POSTリクエスト周りに変更が入っていたので、多分その影響でしょう。
バグか仕様なのかはわかりません。

これで駄目なら、phaさん待ちで…

474468:2012/11/29(木) 13:55:32
>>473
いただいたソースで、私の環境でも試してみました。


以下のようなエラーが出ますが
Cannot use a scalar value as an array in /home/users/1/lolipop.jp-bloomin-g/web/yoshikibot/EasyBotter.php on line 86

リプライ再開しました!ありがとうございます。

とりあえずPEARは2.1.1のままです。

475名無しさん:2012/11/29(木) 15:09:40
>>474
line 86 は $this->_log[$name] = $data;
のところでしょうか。

おそらくlog.datが2.05のフォーマット(数字のみ記載されている)だったんだと思います。
(log.datに0と書いて実行すると再現できます)

実行後にlog.datが
{"latest_reply":"123456789","latest_reply_tl":"123456789"}
のようなJSONに書き変えられていたら問題無いと思います。

もしJSONになっていなければlog.datを初期値

{"latest_reply":"0","latest_reply_tl":"0"}

に書き換えてみてください。
上記は2.1.1のlog.datの初期状態です。

476名無しさん:2012/11/29(木) 21:29:03
>>473
私もそちらのソース頂いて試したところうまくいきました!
本当にありがとうございます
エラーも特に出ていません。
これで当面は上手くいくといいなあ…

477名無しさん:2012/11/29(木) 22:25:32
>>467
ありがとうごございます!
とりあえず様子見で放置してみたのですが、どうやら昼過ぎは正常に動いていて、明け方〜昼までが定期postもリプも全く無反応になるみたいです。
特に式も変えてないですし、何か規制とか起きている可能性もあるんでしょうか…?

478名無しさん:2012/11/30(金) 11:09:51
>>473
すみません。我が儘かと思いますが修正した箇所がどこかご教授いただけますか?

たくさん機能追加した状態でフォロワーさんに楽しんで頂いているのですが、
秋頃から体調を崩してしまい長時間の作業に身体がついてけず、通院してる状態で……
2.1.1の時はなんとか改造乗り切れましたが、今は全く改造してない状態から改造するのは厳しくて……
本当にもしよければで構いませんので、ご検討よろしくおねがいします。

479名無しさん:2012/11/30(金) 12:19:47
>>478
ファイルの中身を比較し違う箇所を探してくれるソフトがありますので、
そちらを使って探してみてはいかがでしょうか?

http://www.vector.co.jp/vpack/filearea/win/util/text/diff/

480名無しさん:2012/11/30(金) 15:56:56
>>478

473です。

修正箇所少ないので下記に示します。

--------------
修正後ソース496行 _setData関数内、501行_getData関数内、returnの前に

$this->OAuth_Consumer_build();//ここでHTTP_OAuth_Consumerを作り直し

を追加しました。
--------------

修正後ソース505〜515行 OAuth_Consumer_build関数を追加しました。

OAuth_Consumer_build関数の中身は
47〜54行目、HTTP_OAuth_Consumerインスタンスを作成している部分のコピペです。

--------------

ファイル比較ソフトは必須ですね。
私は >>479 さんのリンクの一番上にある DF 1.41 を使ってます。

481名無しさん:2012/11/30(金) 21:37:50
>>479
わぁ!ありがとうございます。
こんな便利なソフトあったんですね!!
2.1.1を改造したときに、借りたwikiで差分探そうとしてダメだったので
こんな素敵なソフト教えていただけて嬉しいです!

>>480
修正して頂いただいただけでも有り難いのに、修正箇所教えて下さってありがとうござます。
これからはソフト活用したいと思います。

482名無しさん:2012/12/02(日) 21:17:56
今日はじめたばかりのド素人です
【バージョン】 Ver.2.1.1
【設置鯖名】 @PAGES
【PHPのバージョン】5.4.9
【手動】 つぶやきのみ動く
【実行】 手動

bot.phpの上から2セット目の、オートフォローからリプライタイムラインにかけてのプログラムについてです。

本アカウントで「おはよう」とbotに話しかけても反応せず、つぶやきのみで終わってしまいます。
何か自分が間違って弄ってしまったのかと思い、
本データにすべて移し変え、ポストランダムとリプライのみコメント解除しましたが、
通常のつぶやきのみでダメでした。

リプライのみコメント解除させて「おはよう」と話しかけても、いろは歌を歌ってしまいます。
いったい何をすれば、つぶやいてそれに応じた返信もしてくれるのでしょうか?

また、PHPのバージョンというとはこのPCに入っているPHPのバージョンでいいのでしょうか。

483名無しさん:2012/12/02(日) 21:29:41
>>482
リプライとタイムライン用のリプライは別の行で記述されてますが
タイムライン用のリプライの行のコメントアウトもはずしました?

484名無しさん:2012/12/02(日) 21:31:03
>>482
>>473やこのスレの流れを見てもよく分からないなら、今始めるのは時期が悪いかな
年末か来年になってバグに対応したverがでないと全くの初心者さんにはバグと自分のミスを切り分けるのが難しい気がする

482の場合は使用してる@pagesの鯖のPHPのバージョンのこと

485名無しさん:2012/12/03(月) 04:56:52
483様、484様ありがとうございます。
なるほど、現在のバージョンはバグがあって取っ掛かり辛いのですか・・・


何も考えずにEasyBotter.phpに473様が作成したものに張り替えたら返信はしてくれるようになりました!
ただキーワードに反応はしてくれません、

bot.phpの2郡目の//を取るところでは現在、
オートフォロー、ポストランダム、リプライ、リプライタイムラインが有効です。

「おはよう」とbotに言い、自前でアクセスすると

Twitterへの投稿に成功しました。(つぶやき)
(reply_pattern.phpの中身の文章がずらっと出る)←
Twitterへの投稿に成功しました。(私のリプライ対しての通常の返信)」
15分以内のタイムラインに未反応のキーワードはないみたいです。

といったようになりますが←の部分はそういうものなのでしょうか?

タイムラインに未反応ということで、本アカウントで今日の運勢と普通につぶやいても、まったく反応を示しませんでした。

486名無しさん:2012/12/03(月) 15:45:15
>>485
なんとなく初心者以前の問題のような気がします
まずは「PHP 入門」をググって初歩から学んでみませんか
頑張ってください

487名無しさん:2012/12/03(月) 16:49:37
PEARフォルダの中身をEasyBotter2.05に同梱されていたものにすべて差し替え、
>>473のソースで試してみたところリプライ、TL反応共に動くようになりました。サーバはfileqです。
ありがとうございます、本当に助かりました!

488名無しさん:2012/12/03(月) 22:47:49
【バージョン】 Ver.2.1.1
【設置鯖名】 @pages
【手動】 動く
【実行】 GAEcron
【実行間隔】 3分


10/11に停止していたので、EasybotterのバージョンアップとAPI更新を行いました。
ところが手動では動くものの自動ではほとんど動いていません。
というのも、後日確認してみると1日に一度動いているかいないか・・・という程度で通常POSTとTL反応をしていました。
GAEの管理ページを見る限りcronは問題なく動いているようです。

上のみなさんとは少し症状が違うようでしたので書き込ませていただきました。
ご教授いただきたいです。

489名無しさん:2012/12/04(火) 20:32:52
【バージョン】 Ver.2.0
【設置鯖名】 @pages
【手動】 動く
【実行】 GAEcron
【実行間隔】 1分

data.txtで{timeline_id}を使う時に、botのidは除くしたいのですが可能ですか?フォローされている他のbotの名前を呼べば困るようで.. 他の機能はうまく作動します。よろしくお願いします。

490名無しさん:2012/12/05(水) 04:31:44
>>485アドバイスありがとうございます。
487様の方法を真似したところ、つぶやきも返信もキーワードに反応もすべて動くようになりました。

これからEasyBotterを使ってbotを作って行きたいので、PHPの勉強をしてみようと思います。ありがとうございました。

491459:2012/12/07(金) 04:16:23
>>473様のやり方でリプライ復活しました!本当にありがとうございます!
そして、お返事いただいた方々にも感謝します。ありがとうございました。

492名無しさん:2012/12/09(日) 15:33:10
【バージョン】 Ver.2.05
【設置鯖名】 @pages
【手動】 動く
【実行】 webcron
【実行間隔】 10
以下のスプリクトを追加したのですが自動リムーブが実行されません。何が原因でしょうか?

// 片思い自動リムーブ
function autoRemove() {
//フォロワーのidを全取得
$response = $this->getfollowerids();
$followList = array();
foreach($response as $id){$followList[] = $id;}

//フォローのidを全取得
$response = $this->getfriendsids();
$friendsList = array();
foreach($response as $id){$friendsList[] = $id;}

//片想いの人を$removeへ
$remove = array_diff($friendsList, $followList);
$remove_count = "0"; //おまじない

if ( !empty($remove) ) {
foreach($remove as $id){
$remove_count++;
//リムーブします。
$removereq = $this->consumer
->sendRequest("http://twitter.com/friendships/destroy/$id.json&quot;,array(),&quot;POST&quot;);
}
}
echo $remove_count."人をリムーブしました。";
}

function getfollowerids() {
$url = "http://api.twitter.com/1/followers/ids/[あなたのBOTのTwitterのID].xml";
return $this->_getData($url);
}

function getfriendsids() {
$url = "http://api.twitter.com/1/friends/ids/[あなたのBOTのTwitterのID].xml";
return $this->_getData($url);
}

493名無しさん:2012/12/09(日) 17:11:02
>>492
ここしばらくの流れだとわかりにくいですが
EasyBotter.phpを改造した場合、ここではスレ違いです
(話題は改造絡みでなく、エラー修正関連でEasyBotter.phpについて語るものでしたが)

以下のスレで再度質問してみて下さい

EasyBotter2.0その2
http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1323932658/

494名無しさん:2012/12/09(日) 17:44:21
親切にありがとうございます。
ではそちらの方で質問してみます。

495名無しさん:2012/12/09(日) 18:27:58
【バージョン】 Ver.2.1.1
【設置鯖名】 @pages
【手動】 動かない
【不明点】 試しにBotを動かしてみようとした時点で動きません・・・
(サイトのURL)
にアクセスしたら、下記のエラーメッセージがでてきました。↓


Web サイト側でページを表示できません


HTTP 500






可能性のある原因:
•Web サイトがメンテナンス中である。
•Web サイトに、プログラム上の問題がある。


スクリプトに間違いがないかどうかは一通り調べたのですが・・・
何が原因なのでしょうか?

496名無しさん:2012/12/09(日) 18:30:39
すみません、上の者ですが、間違えました。
(サイトのURL)と書いてあるところは、
http://(サイトのURL)/twitterbot/bot.php
です。

497名無しさん:2012/12/09(日) 19:06:15
>>495
まずは「HTTP 500」をググってみて

498名無しさん:2012/12/09(日) 19:24:39
>>497
ググってみました。
内部サーバーエラーということですが、これは@pagesが原因なのでしょうか?

499名無しさん:2012/12/09(日) 20:18:10
>>498
@pagesのよくある質問エラーメッセージについてを読みましたか?
おそらくあなたの記述ミスです
ネット上にアップする前にローカルでテストしましょう
そのまま@pagesに置いてテストをすると、負荷をかける→規約違反につながると思われます

500名無しさん:2012/12/09(日) 22:13:07
>>499
回答ありがとうございます・・・
ですが、私は初心者なのでどこが違うのかがわかりません。
以下のスクリプトに間違いがあるようなのですが、どこが違うのでしょうか?何度もすみません。

<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();

//=============================
//botの動作をこの下に記述していきます。
//PHPでは先頭に//がある行はコメント扱いなので実行しません。実行したい行の先頭の//を削除してください。
//=============================
//$response = $eb->autoFollow();
//$response = $eb->postRandom("data.txt");
//$response = $eb->postRotation("data.txt","おわり");
if(date("n") == 2 && date("j") == 14){
$response = $eb->reply(2,"Valentine_data.php","Valentine_pattern.php");
}else{
$response = $eb->reply(1,"data.php","reply_pattern.php");
//$response = $eb->replyTimeline(2,"reply_pattern.php");


/*
//===================================================
//EasyBotter 簡易マニュアル
//===================================================
////ここから下は作者による解説です。
////cronなどでこのbot.phpを実行するわけですが、動作の指定の仕方はこんな感じです。

//用意したデータをランダムにポストしたい
$response = $eb->postRandom("データを書き込んだファイル名");

//用意したデータを順番にポストしたい
$response = $eb->postRotation("データを書き込んだファイル名");

//@で話しかけられたときにリプライしたい
$response = $eb->reply(cronで実行する間隔(単位:分), "データを書き込んだファイル名", "パターン反応を書き込んだファイル名");

//タイムラインの単語に反応してリプライしたい
$response = $eb->replyTimeline(cronで実行する間隔(単位:分),"パターン反応を書き込んだファイル名");

//自動でフォロー返ししたい
$response = $eb->autoFollow();


//===================================================
//// cronを実行するたびに毎回実行するのではなく、
//// 実行する頻度を変えたい場合の例は以下のとおりです。
//// PHPのdata()の応用の仕方は以下のURLを参照ください。
//// http://php.net/manual/ja/function.date.php

//bot.phpを実行したときに毎回実行される
$response = $eb->postRandom("data.txt");

//bot.phpを実行したときに、5回に1回ランダムに実行される
if(rand(0,4) == 0){
$response = $eb->postRandom("data.txt");
}

//bot.phpを実行したときに、0分、15分、30分、45分だったら実行される
if(date("i") % 15 == 0){
$response = $eb->postRandom("data.txt");
}

//bot.phpを実行したときに、午前だったらgozen.txtのデータを、午後だったらgogo.txtのデータを使う
if(date("G") < 12){
$response = $eb->postRandom("gozen.txt");
}else{
$response = $eb->postRandom("gogo.txt");
}

//bot.phpを実行したときに、2月14日のみvalentine.txtのデータを、それ以外はdata.txtのデータを使う
if(date("n") == 2 && date("j") == 14){
$response = $eb->postRandom("valentine.txt");
}else{
$response = $eb->postRandom("data.txt");
}

//準備したテキストを順番にポストしていって、準備した中から「めでたしめでたし」が投稿されたらbotの投稿をそこで止める
$response = $eb->postRotation("data.txt","めでたしめでたし");
*/

?>

501名無しさん:2012/12/09(日) 22:20:34
499さんじゃないけど
>>500
それだと}が足りないミスがある
あと初心者っていうんならとにかく>>1
下手にいじらずにまずはランダムポストを成功させる、成功したらリプライを……ってふうにデフォルトの
//$response = $eb->postRandom("data.txt");
//$response = $eb->postRotation("data.txt","おわり");
//$response = $eb->reply(2,"data.txt","reply_pattern.php");
//$response = $eb->replyTimeline(2,"reply_pattern.php");
ここのを一つ一つコメントアウトしてやっていったほうがいい

502名無しさん:2012/12/09(日) 22:36:22
>>500
501さんに補足させてください
>>1-5まで、リンク先を含めて全て読みましょう
設置サーバー(@pages)のご利用ガイド(特によくある質問・PHPガイド)を全て読みましょう
先程のレスでも書きましたが、まずはローカル環境でテストを行いましょう
わからないことはまずその都度ググりましょう

503名無しさん:2012/12/09(日) 23:15:59
>>501
アドバイスありがとうございます。
>>502
わかりました。度々すみませんでした。

504名無しさん:2012/12/10(月) 15:57:31
【バージョン】 Ver.2.1
【設置鯖名】 @pages
【手動】 動かない
【実行】 手動
【実行間隔】 Cronを動かす以前に動きません。
【不明点】 何度見なおしてもできないので、Setting.phpとdata.txt以外は初期設定から変えずに新しいディレクトリを作成して試してみました。が、これでも動きません。HTTP500のエラーが出てしまいます。これはなぜなのですか?ちなみにURLは合っていると思います。

505名無しさん:2012/12/10(月) 16:09:51
>>504
>>495以降を読んで

506名無しさん:2012/12/10(月) 17:21:07
>>505
読みましたが、初期設定のままの場合はスクリプトに間違いはないのでは?

507名無しさん:2012/12/10(月) 17:26:02
>>506
Setting.phpかdata.txtで保存ミスしてるのでは?
実際にbotを動かすなら初期設定のままは有り得ないですよ

508名無しさん:2012/12/10(月) 17:28:11
>>507
追伸
とにかく、>>2のように一つ一つ確認されることを勧めます

509名無しさん:2012/12/10(月) 17:49:10
>>507
>>504にも書きましたが、Setting.phpとdata.txtは設定しました。
>>508
確認しましたが、間違いは見つけられませんでした。私が見落としている可能性もありますが・・・

510名無しさん:2012/12/10(月) 18:57:02
>>509です。
>>2-3を読み、指示通りに確認しましたが、やはりスクリプトに間違いは見つけられませんでした。これはどういうことなのでしょうか・・・

511名無しさん:2012/12/10(月) 20:49:21
HTTP500で動かないって言ってる人FTPには何使ってる?鯖のローダーだとHTTP500出ることあるんだが

512名無しさん:2012/12/10(月) 21:54:55
>>511
FFFTPです。

513名無しさん:2012/12/11(火) 01:41:11
>>512
ちょっと関係あるかわからないですが
FFFTPならホストの設定のところで
ファイル名の漢字コードがUTF-8Nになってないとか?

514名無しさん:2012/12/11(火) 06:49:28
>>513
なってませんでした!
ですが・・・やはりできません・・・

515名無しさん:2012/12/11(火) 10:23:30
>>514
500エラーを無くしたいだけならSetting.phpとdata.txtは設定は必要ないんじゃ

516名無しさん:2012/12/11(火) 10:34:02
>>514
PEARフォルダはアップしましたか?
PEARフォルダのアップする場所は間違っていませんか?

517名無しさん:2012/12/11(火) 13:10:59
>>515
設定しなくてもできるんですか?
>>516
はい、しました。
アップする場所は・・・同じディレクトリでいいんですよね?

518名無しさん:2012/12/11(火) 16:01:16
>>517

デフォルトのEBを使って@PAGESでわざと500を出す方法をいくつか試しました。

1.PHPの文法エラー
2.パーミッションの値が不正
3.require参照先のファイルがnot found(PEARが上がってないなど)
4.htaccessでphp_valueを使用

ぱっと再現できるのは上記でした。

4はないでしょう。
3はPEARも上げたとのことで除外。
2はEB公式と↓参照
http://www10.atwiki.jp/atpagesguide/pages/16.html#id_2e8e3298

1の文法エラーについてですが、目でソースを追って探している人が多いようなので
http://jp.piliapp.com/php-syntax-check/
を使うとよろしいかと。

外部のサイトにソースコピペが嫌な人は、ローカルにPHPをインストールして
コマンドラインから
php -l ファイル名
でチェックしてください。表示される結果は同じです。

519名無しさん:2012/12/11(火) 16:41:45
>>518
パーミッションはちゃんと設定しました。

文法チェックもしてみましたが・・・No Errorと出たので多分合っているのだと思います。

520名無しさん:2012/12/11(火) 22:33:46
質問してる初心者さん、やってますばかりで自分からは調べたり試したりした結果あげてないよね
言われたことばっかりで何もしないのはどうしてなの?
固有の問題でなければ貴方の見落としの可能性もあって、実際の状況は本人にしかわからないんだから
基本自力で解決する気ないなら諦める選択も必要だと思うけど

521名無しさん:2012/12/11(火) 22:40:08
>>519
デフォでやろうとしているのにdata.txtをいじってるの?
動かない、エラーが出るっていうミスはほぼ自分が正しくやったつもりで実はやれてないのが原因

あと何をどうやったか書いてないから無駄にレスが増える
「設定しました」「やりました」←何をどうしたのかわからない
指示通りにしたと書いてもそれが間違ってたりすることもあるから、
何をどうしたのか(たとえばパーミッションならlog.datを666にしたとか)書いたほうがいい

非公式wikiのとおりに一つ一つやれば@pagesなら動くはず
自分でも初心者って言ってるし、言いにくいけど519はまず>>1〜何度も何度も理解するまで読んで
勉強するか、もしくはeasybotterを使うよりほかのサービスを使ったほうがいいと思う
鯖に負荷をかけすぎて@pagesからbotお断りされるようなことになるかもしれないから

522名無しさん:2012/12/11(火) 22:41:19
ごめんなさい521です、書いてるうちに内容が520さんとダブってしまいましたね

523名無しさん:2012/12/11(火) 23:40:21
504以降、皆さんが懇切丁寧にいろんな可能性を上げてくれてるおかげで
黙って読んでいただけの自分がいろいろ勉強できちゃったよ
そろそろ初級の上くらいにはなれたかと思ってたけど、まだまだ自分も初心者だなあ

524名無しさん:2012/12/12(水) 18:28:08
【バージョン】 Ver.2.1.1
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 動く
【実行】cronjob
【実行間隔】 3分間隔
【不明点】

c30分間隔で定期post、リプライを3分で動かしたくて
cronを設定したんですがなぜか数秒おきに定期postをしてしまって
うるさくなってしまいます

調べてもよくわからなくて… わかる方教えていただけませんか?

525名無しさん:2012/12/12(水) 19:48:50
>>524
「調べてもよくわからない」とだけ言われてもこちらがよくわからない
bot.phpの設定がおかしいのか、cronの設定がおかしいのか、鯖の問題か、
それだけでは回答者の方が可能性を絞りづらい

もしかしたら524の記述だけで真相がわかるエスパー回答者がいるかもしれないが
一応、「なにを調べてどこをチェックしたか、もっと具体的に」とお節介を言っておく
初心者スレなんだから、「すごくばかなことをしてたら恥ずかしい」なんて
思わなくっていいんだし

526名無しさん:2012/12/12(水) 20:05:08
Ver.2.1もそれ以前も
自分のつぶやきを除外する
って記述は機能してないですよね?

527名無しさん:2012/12/12(水) 20:19:24
【バージョン】 Ver.1.42,Ver.2.1.1
【設置鯖名】 @pages
【PHPのバージョン】PHP-5.2系
【手動】 動く
【実行】 GAE-cron
【実行間隔】 2分間隔
【不明点】 cronはアクセスに成功しているのに自動投稿されない。
EasyBotter Ver.1.42をOAuth対応、API1.1対応にして使っていました。
11月に入ってすぐ突然リプライの頻度が激減したので、cronのLogを確認ましたが問題なく動いているようです。
また、手動でアクセスしてみたところエラーなく動きました。
>>473さんの提供されたソースを参考に、ver.2.1.1も試してみましたが、こちらもcronのアクセスは成功、
手動ではエラーなく動くのに自動では投稿されません。PEARをver.2.0.5にも置き換えてみましたが変わりませんでした。
関係があるかわかりませんが、cronの設定のデプロイにはeclipseを使用しているのですが、不調になる前に使用していたものと
変更がなくてもURL 302 foundのエラーが出てデプロイ出来なくなっています。時間をあけてやり直しても同じでした。
些細なことでも気づくところがある方いらっしゃいましたら、ご教示いただけませんでしょうか。

528名無しさん:2012/12/12(水) 20:42:15
>>527
>>1読もう
Twitterbotのcronスレへ

529名無しさん:2012/12/29(土) 07:16:53
バージョン2.11にしたところ、動かなくなりました。
手動でアクセスすると
下記のようなメッセージになります。

(つぶやき内容TXT)を投稿しようとしましたが失敗しました。
Could not authenticate you

アップロード手順は旧バージョンと同じです。

旧バージョン(2.05)の方は今も動いています。

3月には旧バージョンは使えなくなるようなことを書いてあったので、
2.11を試してるのですが
2.11をアップロードする際に何か書き換えとか必要なのでしょうか?

ちなみに、使うのは自動POSTとオートフォローのみです。

投稿しようとしたが失敗しました

となるのがわかりません。

認証に失敗みたいなことですけど、OAuth認証はできてるみたいだし。

この質問内容でわかるかたのみレスお願いします。

こんな質問の仕方じゃ答えようがないとか、わからんわ!ググれやとか言うような
レスはいりません、そう思った人はスルーしてください。

530名無しさん:2012/12/29(土) 21:28:48
【バージョン】 Ver.2.1.1
【設置鯖名】 @PAGES
【PHPのバージョン】
【手動】
【実行】
【実行間隔】
【不明点】
サーバーにファイルを全てアップロードし、bot.phpを開きました。
すると内部エラーが出てしまいました。エラー内容は以下の通りです。

Warning: require_once(): Unable to access HTTP/OAuth/Consumer.php in /usr/local/www/htdocs/***/public_html/EasyBotter.php on line 45
Warning: require_once(HTTP/OAuth/Consumer.php): failed to open stream: No such file or directory in /usr/local/www/htdocs/***/public_html/EasyBotter.php on line 45
Fatal error: require_once(): Failed opening required 'HTTP/OAuth/Consumer.php' (include_path='.:/usr/local/lib/php:/usr/local/www/htdocs/***/public_html/PEAR') in /usr/local/www/htdocs/***/public_html/EasyBotter.php on line 45

***はユーザー名です。
また、EasyBotter.phpの45行目は

require_once 'HTTP/OAuth/Consumer.php';

です。
OAuth認証は何度か確認しましたが、間違いはないようです。

また、ファイルのアップロードも同じディレクトリ内にアップ済です。

もし何かお分かりの方がいらっしゃいましたら、お教えいただけないでしょうか。
どうぞよろしくお願いいたします。

531名無しさん:2012/12/30(日) 21:11:18
【バージョン】Ver.2.1.1
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 一部動く
【実行】 なし
【実行間隔】 なし
【不明点】 リプライの動作だけ動作していない

非公式wikiを見ながら手順通りに進めたのですがリプライの動作ができなかったので質問させていただきます。

<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(2,"data.txt","reply_pattern.php");
$response = $eb->postRandom("data.txt");
$response = $eb->autoFollow();
?>

bot.phpをこのようにしてあるのですが、
bot,phpにアクセスした時、ランダムポストとオートフォローは動作するのですがリプライが動作しません。


Bot宛にリプライを送りbot.phpにアクセスすると

Twitterへの投稿に成功しました。
@○○○に投稿したメッセージ:いろはにほへと ちりぬるを

2分以内に受け取った未返答のリプライはないようです。

※○○○はBotのIDです

と出てランダムポストはツイートされるのですがリプライはツイートされません。


文字コードはUTF-8N。改行コードはLF。data.txt,reply_pattern.php,log.datのパーミッションも666に設定したのですが原因が分かりません。


どなたかお分かりの方がいらっしゃいましたら、教えていただけないでしょうか。

532名無しさん:2012/12/31(月) 00:39:36
>>531
非公式wikiを見ながらやったてことはリプライ単体ならちゃんと動作してるよね
ランダムポストとリプが同時にできないなら>>437から見て直してみたらどう?

同じ所でつまずく人もいると思うので書いとく
設定ミスがない前提で、
・リプライがうまくいかない
・リプライとTL反応、リプライとランダムポストなどを
同時にやろうとすると片方しか動かない
これらの場合は>>437さんの修正で直ることがある

533名無しさん:2012/12/31(月) 00:44:30
ごめんミスです>>473を参照でした

訂正…設定ミスがない前提で、
・リプライがうまくいかない
・リプライとTL反応、リプライとランダムポストなどを
同時にやろうとすると片方しか動かない
これらの場合は>>473さんの修正で直ることがある

534名無しさん:2012/12/31(月) 02:48:51
>>533さん
教えていただきありがとうございます!
無事解決することができました!

535名無しさん:2013/01/03(木) 20:08:33
【バージョン】 Ver 2.1.1
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 動かない
【実行】 手動
【不明点】
通常のツイート (data.txt) のツイートはツイートされるが、
リプライの送信が不可。

bot.php に アクセスすると真っ白の画面になる。

536名無しさん:2013/01/03(木) 21:31:47
【バージョン】 Ver.2.05(API更新済)
【設置鯖名】 Quicca
【PHPのバージョン】
【手動】 動く時と動かない時があります。
【実行】 Quiccaのcron
【実行間隔】 8分間隔
【不明点】

超初心者な質問失礼します。
エラー等は出ていないのですが、ver2.1が出る以前から少々リプライが不安定な時があります。
詳しく言いますと、bot宛にいただいたリプライの内、cronの8分以内のものにも返す時と返さない時があります。
また、拾いそびれたものに対して改めて手動で叩いても『8分以内に受け取った@はないようです』と出ます。
確かに8分過ぎているのですが、拾いそびれたものはもう拾えないのでしょうか?

多少不安定でも構わないのですが、せめていただいたリプライには遅れても良いので返事をしたいのですが…
こういう仕様でしょうか? どう検索をかけて良いか解らず、困っています。

お手すきの時で構わないので、ご回答いただければ幸いです。

537pha:2013/01/10(木) 10:52:12
age

538エラー:2013/01/14(月) 04:20:11
自動フォロー返しする
を設定すると、cronが使えない。
と言うのは、手動で確認したところ、
毎回最初から「〜をフォローしました」となって
前回フォロー済みでも最初から「〜をフォローしました」を繰り返して
cronが動かない、エラーになる。
自動フォロー返しをやめるとcronは動く。

どうしたらいいでしょうか?
自動フォロー返し使いたいんですが、わかりません。

539名無しさん:2013/01/14(月) 16:57:30
特にどの書き込みへのレスでもありませんが
1/9付けで作者phaさんが、バージョン2.1.2を公開されています
リプライ関係の不具合などが修正されているそうです
まだこの掲示板ではあまり話題になってないみたいなので、お節介ながら書き込んでおきます

このスレの473さんの書き込みが作者さんの参考になったようで
公式サイトに御礼文がありました

540名無しさん:2013/01/24(木) 01:21:44
書き込み失礼いたします。
【バージョン】 /Ver.2.1.2
【設置鯖名】 Just-size.neteorks
【PHPのバージョン】5
【手動】 動く
【実行】 CRON(Just-size.networks)
【実行間隔】 2分間隔
【不明点】
リプライ反応、TL反応のみ2分間隔に、通常ポストは60分間隔に
したくて以下のように記述したのですが、通常ポストもリプライ
・TL反応もしません。
if(date("i") % 60 === 0){
$response = $eb->postRandom("data.txt");
}
$response = $eb->reply(2,"","reply_pattern.php");
$response = $eb->replyTimeline(2,"reply_timeline.php");
試しに手動でbot.phpにアクセスしてみたところ、きちんと
動作しました(リプライに対してリプライを返しました)。

どこが悪いのかさっぱり分からず、散々ググったのですが
お手上げです。ご教授頂けますと助かります。

541名無しさん:2013/01/24(木) 16:02:59
>>540です。
解決しました。スレ汚し失礼いたしました。

542名無しさん:2013/01/26(土) 19:47:46
【バージョン】 Ver.2.05
【設置鯖名】@pages
【PHPのバージョン】
【手動】 動かない
【実行】 GAEcron
【実行間隔】 2分間隔
【不明点】 リプライを飛ばした時に返信がされない、bot.phpが真っ白になる。

リプライを飛ばした際、返信がされず、bot.phpが真っ白になります。
通常POST(30分間間隔)もしなくなります。
しばらく時間をおいてリプライを飛ばすと返信が来ます。
reply_pattern.phpを更新してすぐになる確率が高いかな?と思っています。
解決策がありましたらよろしくお願いします。

543名無しさん:2013/01/30(水) 00:02:57
>>542です。
真っ白になる問題はいじっていたら解消されました。
原因はよくわかりません;

544名無しさん:2013/01/30(水) 00:06:59
【バージョン】 Ver.2.05(API更新済み)
【設置鯖名】@pages
【PHPのバージョン】
【手動】 動かない
【実行】 GAEcron
【実行間隔】 2分間隔
【不明点】 リプライを飛ばした時に、botから記述している返信のセリフではなく、「Array」と返信される。

現在bot.phpで

$response = $eb->reply(2,"reply_pattern2.php","reply_pattern.php");

と記述しているのですが、reply_pattern2.phpの反応語句をbotにリプライしても「@**** Array」と返信されてしまいます。
記述ミスでもあるのかと思い、何度もファイルチェックを行ったのですが、見受けられず、困り果てています。
ご教授をいただけないでしょうか?

545名無しさん:2013/01/30(水) 11:52:57
>544
ファイルは勝手にいじらない、増やさない。
と、ちゃんと公式サイトに書いてあります。
なのでそもそもその記述が間違ってます。

546名無しさん:2013/01/30(水) 19:28:19
>>545
ご助言ありがとうございます。
$response = $eb->reply(2,"reply_pattern2.php","reply_pattern.php");

$response = $eb->reply(2,"data.txt","reply_pattern.php");
に戻しました。
その際にreply_pattern.phpの反応語句をbotにリプライして「@**** Array」と帰ってくる場合にはどう対処すればよろしいでしょうか?

547名無しさん:2013/02/04(月) 17:09:05
すごい初歩的な質問なのですが
バージョン2.04betaから最新バージョンへ移行する場合
一部ファイルだけを置き換えればいいのでしょうか。
その場合、置き換えるのはEasyBotter.phpとPEARフォルダで大丈夫ですか?

548名無しさん:2013/02/04(月) 22:08:47
>>547
そのファイルプラスlog.datも変更で。2.1以降でログの取り方が以前と変わっているので。
作者さんのサイトを見てもらうとわかるけど、「EasyBotterが勝手に動作させられる可能性とその対策」の
対策をしてなかったらindex.htmlも追加してアップしたほうがいい

>>546
デフォルトのファイルを使ってもそうなる? デフォで試してもarrayて返ってこないのでどこかいじってない?
いっぺん全部デフォでやり直してみたら?

549名無しさん:2013/02/08(金) 02:37:33
【バージョン】 Ver.2.1.2
【設置鯖名】 ロリポ
【PHPのバージョン】5.3
【手動】 動く
【実行】 ロリポCRON//手動
【実行間隔】 5分間隔
【不明点】

TL上に流れてきた単語に、リプではなくTL発言で反応させたいので
ぐぐって拾ってきた以下のものをeasybotter.php内に書き加えました。

//TL反応をTLに発言
switch(true){
case stristr($status, "[[TLTL]]"):
$status = str_replace("[[TLTL]]","",$status);
$rep["status"] = $status;
$tltlid = (string)$tweet["id_str"];
file_put_contents($this->_logDataFile,$tltlid);
break;
//その他
default:
$rep["status"] = "@".$tweet["user"]["screen_name"]." ".$status;
}

するとlog.datの中身がどうもおかしくなってしまったので
あれこれ調べた末、上記の記述が
・twitterのAPI変更に対応していない
・easybotter本家のlog.datの仕様変更に対応していない
のではないかと判断したため、

$tltlid = (string)$tweet["id_str"];
file_put_contents($this->_logDataFile,$tltlid);


$tltlid = (string)$tweet["in_reply_to_status_id_str"];
file_put_contents($this->_latestReplyTimeline,$tltlid);

のように書き換えました。上記の記述にしたところlog.datは更新されるものの
うまく拾ったツイートのIDが記憶できていないようです…。

あれこれ考えられる手は打ったのですがお手上げです。
どなたか分かる方がいましたらお願いします。

550549:2013/02/08(金) 07:27:41
すれ違いでしたね;失礼しました

551名無しさん:2013/02/16(土) 23:35:08
書き込み失礼します。
【バージョン】 Ver.2.1.2
【設置鯖名】 @pages
【PHPのバージョン】 5
【手動】 動かない
【実行】 GAEcron
【実行間隔】 2分間隔
【不明点】 リプライに反応しない、返さない

リプライ用にreply_bot.phpというファイルを作成し、以下のように記述しています。
<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(2,"replydata.txt","reply_pattern.php");
?>

作成当初はこれで問題なく動いていましたが、昨年末頃からリプライに反応を返さなくなりました。
botにリプライを送り、reply_bot.phpに直接アクセスしても
2分以内に受け取った未返答のリプライはないようです。
というメッセージが表示され、リプライを返しません。
GAEcronで試行したところ、ステータスコード:500で返されました。
試行時に送られたリプライがない場合は200で返ってきます。

@pagesが不安定というレスを見かけたので新しく登録し直してみましたが解決しませんでした。
また、デフォルトのbot.phpのリプライ部分のコメントアウトを消してみても
やはりステータスコード:500で返され動作しませんでした。

data.txt(ランダムポスト用)
replydata.txt(リプライ用)
reply_pattern.php
log.dat
これらのパーミッションは666に変更しています。

どなたかお分かりの方がいらっしゃいましたら、教えていただけないでしょうか。

552名無しさん:2013/02/17(日) 00:00:44
>>551
ステータスコード:500はスクリプトエラーみたいですね。
http://www.asahi-net.or.jp/~ax2s-kmtn/ref/status.html

reply_pattern.phpなど、どこかにコンマのつけ忘れとか書き間違いは無いですか?
また、わたしも@PAGESですが、パーミッションはヘルプにあった604にしています。

553名無しさん:2013/02/17(日) 00:07:02
552です。ごめんなさい、パーミッションは606の間違いでした。

554551:2013/02/17(日) 01:12:41
>>552さん
ご指摘ありがとうございます。
再度確認したところ、reply_pattern.phpに一か所記述ミスがありました…
ミスを修正しパーミッションを606に変更したところ、無事動作するようになりました!
本当にありがとうございました!

555名無しさん:2013/02/21(木) 22:07:41
〜引用〜
794 :名無しさん:2010/10/19(火) 22:58:30 質問失礼します。

@で来たものをRTさせたいのですが、可能でしょうか?
検索はしたものの要領を得ず…

795 :名無しさん:2010/10/19(火) 23:12:19 >>794
$re["status"] = "@".$reply_name." ".$status;
あたりを書き換えかな

796 :名無しさん:2010/10/19(火) 23:37:22 >>794
問題は>>795さんの答えで書き換えてもin_reply_to_status_idが付いてるため、公開範囲がTweenと同等になる問題。
それでもいいなら問題なし、問題ならin_reply_to_status_idを除去する。

798 :794:2010/10/20(水) 01:20:03 度々すみません。
自力でやってみようと思ったんですが、恥ずかしながらさっぱりでした…。

$re["status"] = "@".$reply_name." ".$status;

ここを、どのように変更すればいいのでしょうか?
ほんと、すみません…。

〜引用ここまで〜

この後話は続かなかったので解決方法が分かりません…。
RTする時はどうやって書き換えればいいのでしょうか。
また書き換えるのはEasybotter.phpだけですか?

556名無しさん:2013/02/21(木) 22:46:17
>>>555
よく1嫁。改造はスレチ

557名無しさん:2013/02/22(金) 23:48:38
>>556
ごめんなさい、該当スレで質問することにします。

558エラー:2013/02/23(土) 15:07:20

誰も返事くれないし解決しないんで再度質問。



自動フォロー返しする
を設定すると、cronが使えない。
と言うのは、手動で確認したところ、
毎回最初から「〜をフォローしました」となって
前回フォロー済みでも最初から「〜をフォローしました」を繰り返して
cronが動かない、エラーになる。
自動フォロー返しをやめるとcronは動く。

どうしたらいいでしょうか?
自動フォロー返し使いたいんですが、わかりません。


皆ちゃんと動いてる?

559名無しさん:2013/02/23(土) 15:11:05
>>1

560名無しさん:2013/02/23(土) 15:12:39
途中送信失礼
>>558
>>1読みました?質問ならテンプレ使ったらどうでしょう

561名無しさん:2013/02/26(火) 01:01:29
【バージョン】 Ver.2.0.2
【設置鯖名】 @pages
【PHPのバージョン】5.2
【手動】 動いていた
【実行】 GAE-cron
【実行間隔】 5分間隔
【不明点】 Ver.2.1.1を使用していたのですが、2.1.2が公開されたということでさっそく使ってみることにしました。Ver.2.1.1のときは自動も手動もしっかり動いていました。
そのときと同じようにサーバーにあげてbot.phpのURLをcronで叩けばいいんだな、と思って2.1.2をアップロードしてみたのですが、
ダミーのindex.htmlがあるせいなのか、アップロードした先のHPが真っ白です。…そうやって外部からのアクセスを騙すためのものだとは思うのですが、
2.1.2で手動の確認をするにはどうしたらいいのでしょうか?また、編集したbot.phpやsetting.phpなどのファイルはindex.thmlが存在するディレクトリのものを編集すればよいのでしょうか。
index.htmlや、今まで編集しなくてもbotを動かせたファイルについては理解していないものがほとんどなので質問がおかしいかもしれませんが、みなさんがどうやって2.1.2になってから
botを叩いているのか気になったので質問させていただきました。
今はまだ2.1.1で動かしています。
▼以下予断です!
最近@pagesは本当に不安定になってきたと思うんです。botを作った方で「cron」で正しく叩いているのにリプライをしない…などの悩みを抱えている人がいて、
「時間が経ったら出来た」や「ツイッターが重かったかも」などの解決策を見かけたのですが、@pagesが原因なのでは…と個人的に思っています。
@pagesに代わるよさそうな無料サーバーはないかといろいろ探してみましたが、あまりいいのはなく……そろそろ有料にしてみるべきなのでしょうかね。

562名無しさん:2013/02/26(火) 02:19:41
>>561
質問の意図が少々掴みにくいのですが……
「2.1.2にしたから不具合云々」というわけではなく、
「2.1.1まではなかったindex.htmlをアップロードしたものの、そのあとの作業方法がわからない」
ということでいいのでしょうか?

「HPが真っ白です」というのは、
これまではブラウザで見るとファイル名が全部丸見えだったんだけど、見えなくなっちゃった……という意味でいいですか?
それとも、もしかして、bot.phpのURLを手動で叩いてみてもブラウザは真っ白のまま……という意味ですか?
その辺をはっきりさせていただけないでしょうか。

検索避けとしてのindex.htmlが入った以外、2.1.1→2.1.2でもユーザー側の作業手順はほとんど変わらないはずです。
(Easybottter.phpの改造をしている方は別として)

563名無しさん:2013/02/26(火) 08:37:59
>>561
作業するときだけFTPソフトなどでindex.htmlを削除すればいいんじゃないでしょうか。
それでも真っ白ならブラウザのキャッシュを削除するとか。
あとMACOSかなんかの文字がついたファイルは確かMacが排出するゴミファイルなので消しちゃって平気です。

ちなみに自分もフォロワさん1000人単位のbotを持っていて、
@PAGES+GAE-cron使いをしてますが、とくに異常な重さを感じたことはないです。

564名無しさん:2013/02/26(火) 17:24:50
>>561です。解決しました!
>>562
2.1.2のファイルをすべてサーバーにアップロードするとindex.htmlが必然的にアップされる→HPが真っ白(これまではブラウザで見るとファイル名が全部丸見えだったんだけど、見えなくなっちゃった……という意味で良かったです)
考えてくださってありがとうございます。

>>563
index.htmlだけを削除してもHPが真っ白(上記の意味)だったのですが
MACOSも削除したところ、ファイル名が見えてまた作業することができました。
消してよかったファイルだったんですね。
ありがとうございました。

ではまだ@pagesの問題で悩んでいたのは私くらいだったのでしょうか…
スレ違いになってしまうのであまり言えませんが
cronで叩くのは成功しているのにリプライをちっとも返さないのです。
深夜はちらちら返しているようなのですが、取得漏れだらけですね。

565名無しさん:2013/02/26(火) 21:03:43
>>564
@pagesの鯖でindex.htmlを削除してファイルが見えている、
という事は検索ロボットや自分以外の人にもファイルの在り処が公開されている状態です
index.htmlは動作確認中や編集中であっても削除しないことをおすすめします
web上から直接参照する必要のあるファイルは手動で動作確認する際のbot.php位だと思いますので
bot.phpのアドレスをブラウザのお気に入りに登録しておけば動作確認も容易だと思います

botの暴走や乗っ取り被害に遭わないためにも、セキュリティを自ら甘くしてしまうのは危険かと思います
僭越ですがなんとなく心配になる書込みだったもので、失礼致しました

566名無しさん:2013/02/26(火) 21:22:23
>>564
562ですがお答えありがとうございます。
565さんがとてもわかりやすくお書きになりましたが、自分も同じことを心配していたので、ああお訊ねしました。
(561の時点では状況がはっきりしなかったので、要らぬ注意かもしれないと、あえてそこまでは書きませんでした)

こちらが565さんのレスに蛇足を付け加える必要もありませんが、
564で書かれたその「真っ白」は,本来あるべき、正常な見え方です。
ファイル名が全てブラウザ上で見えているということの方が異常、というか危険な状態です。

567名無しさん:2013/02/26(火) 22:50:37
>>565 >>566
561です
ご指摘ありがとうございます
いちいちindex.htmlを削除してbot.phpの動作確認をするのは面倒だなと思っていたので
565さんの言った通りお気に入りに登録しておくことにします
「真っ白なのが正常」ということも理解できました!

568名無しさん:2013/03/02(土) 00:51:09
【バージョン】 Ver.2.1.1
【設置鯖名】 @pages
【PHPのバージョン】PHP-5.2
【手動】 動く
【実行】 GAE
【実行間隔】 5分
【不明点】
デフォルトのbot.phpにあるautoFollowの事なのですが
(箇条書きで失礼します)

・cronがbot.phpを叩くたび動作するのでしょうか?
・上記の場合1日に一度など指定することも可能なのでしょうか?
・鍵アカのフォローも出来るのでしょうか(承認するまで送り続けてしまうのでしょうか)

autoFollowを使用している方がいらっしゃいましたらぜひ教えてください

569名無しさん:2013/03/02(土) 05:20:41
>>568
・cronがbot.phpを叩くたび動作します。
・曜日、日にち、時間指定可能です。非公式wikiの『時間分け』をご参考に。
・鍵アカのフォローもします。送り続けます。
送り続けたくない場合は、鍵アカをフォローしない方法と一度だけフォローする方法とがありましたが、後者はそのままだと確実に新バージョンで動作しません。前者は解りません。

http://www26.atwiki.jp/easybotter_wiki/pages/26.html#id_e94ada27
http://www7a.biglobe.ne.jp/~ws_story/twitter_bot/info/HM_BOT_func.html

570名無しさん:2013/03/02(土) 11:09:50
【バージョン】 Ver.1.4x/Ver.2.0x
【設置鯖名】 レン鯖名/自宅鯖
【バージョン】 Ver.2.1.2
【設置鯖名】 @pages
【手動】 動く
【実行】 GAE-Cron
【実行間隔】 2分間隔
【不明点】

bot.phpで、

<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();
$today = getdate();

//土曜か日曜の場合
if(date("i") == 0){
if(date("w") == 0 || date("w") == 6){
//8〜11時 朝
if(date("G") > 7 && date("G") < 12){
$response = $eb->postRandom("weekend_mor.txt");
//12〜17時 昼
} else if(date("G") > 11 && date("G") < 18){
$response = $eb->postRandom("weekend_noon.txt");
//18〜20時 夜
} else if(date("G") > 17 && date("G") < 21){
$response = $eb->postRandom("night.txt");
//21〜24時 深夜
} else if(date("G") > 20 || date("G") < 1){
$response = $eb->postRandom("midnight.txt");
} else {
$response = $eb->postRandom("");
}
}else{
//6〜9時 朝
if(date("G") > 5 && date("G") < 10){
$response = $eb->postRandom("morning.txt");
//11〜14時 昼
} else if(date("G") > 9 && date("G") < 15){
$response = $eb->postRandom("noon.txt");
//15〜18時 夕
} else if(date("G") > 14 && date("G") < 19){
$response = $eb->postRandom("evening.txt");
//19〜20時 夜
} else if(date("G") > 18 && date("G") < 21){
$response = $eb->postRandom("night.txt");
//21〜24時 深夜
} else if(date("G") > 20 || date("G") < 1){
$response = $eb->postRandom("midnight.txt");
} else {
$response = $eb->postRandom("");
}
}
}
$response = $eb->reply(2,"replydata.txt","reply_pattern.php");
$response = $eb->replyTimeline(2,"tl_pattern.php");
?>

のように時間分けしているのですが、土日も平日も夜と深夜に全くツイートしません。
TLやリプライには夜でも反応しているので、GAEが動いていないわけでもなさそうです。
改善方法を教えていただければ幸いです。

571570:2013/03/02(土) 11:11:51
>>570
最初2行は無視してください。すみません。

572名無しさん:2013/03/02(土) 11:29:42
【バージョン】 Ver.2.1.1
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 動く
【実行】 gae
【実行間隔】 5分間隔
【不明点】
setting.phpにあるリプライのループ制限がうまく働いてくれません。

$replyLoopLimit = 3;

としているのですが延々と会話を続けてしまいます。
ログファイルのパーミッションを666にしてみましたがだめでした。
wikiにあるID別設定では無く全ての人にループ制限を適用したいです。
私が見落としているだけで他に設定し直す場所があるのでしょうか?

質問内容が改造にあたるのかとも思いましたが、
デフォルトで導入されてる機能のうようなのでこちらで質問させて頂きました。

573568:2013/03/02(土) 21:04:34
>>569
教えてくださりありがとうございます
使い方が分からず困っていたので助かりました
wikiを参考に導入してみます!

574名無しさん:2013/03/03(日) 01:44:37
【バージョン】 Ver.2.1.2
【設置鯖名】 @pages
【PHPのバージョン】PHP-5.2
【手動】 動く
【実行】 GAE
【実行間隔】 3分
【不明点】
自動でフォローを返したときにフォロー返ししました!とツイートするのを
やめさせたいのですが、どうしたらいいでしょうか?

575chrap viagra:2013/03/03(日) 05:11:26
viagra to help you chea viagra cheap viagra soft tablet authentic a downloadable realistic operate, subsequently there within real a higher speed of especially cheap viagra direct cheap viagra <a href="http://viagraoffer.com/generic-viagra.htm "> pills for men to get hard on </a> cheapest prices for viagra cheap viagra from the usa several issue that they metal

576chip viagara:2013/03/03(日) 06:43:32
viagra for you to cheap viagra for sale cheep viagra authentic an important acquired real deliver the results, next and there during correct higher charge connected with in particular cialis viagra packs cheap fast cheapest prices for viagra <a href="http://svenskaviagraonline.org/suhagra.php "> cheep viagre </a> chesapest viagra cheap drug generic viagra certain factor people in terms of iron

577viagra cheapest:2013/03/03(日) 17:38:35
viagra to buy cheap discount viagra generic buy cheap viagra and viagra correct a saved legitimate get the job done, subsequently for you during correct a charge of particularly cheap viagra no presrciption 50mg vigira cheap <a href="http://acquistareviagraonline.name/super-hard-on/pillole "> what's the best medicine to order online for a man </a> heap viagra viagra for cheap various stage these steel

578名無しさん:2013/03/03(日) 18:53:09
【バージョン】 Ver.2.1.2
【設置鯖名】 @pages
【PHPのバージョン】PHP Version 5.3.3
【手動】 動かない
【実行】 手動
【不明点】
botにリプライを送り、bot.phpにアクセスし表示を確認したところ
「2分以内に受け取った未返答のリプライはないようです。
 2分以内のタイムラインに未反応のキーワードはないみたいです」
の表示と共にリプライパターンの文字コードが出てきます

このように表示されるのでリプライパターンのコードを何度か初期のものにして行ってみましたが
結果は同じでした。

公式やwiki、過去の質問を読んでみたのですが自分と同じような例が見当たらず
質問させていただきました。
よろしくお願いします。

579cheap viagra australia:2013/03/04(月) 05:14:37
viagra to help viagra sale cheap buy cheap viagra 32 real a good saved genuine operate, next its keep on accurate quantity pace associated with principally cheap viagra online us drugs store cheap viagra <a href="http://viagraoffer.com/generic-viagra.htm "> low cost viraga </a> cheap viagra viagra cost various stage these people steel

580名無しさん:2013/03/04(月) 18:56:27
【バージョン】 Ver.2.12
【設置鯖名】 land.to
【PHPのバージョン】 PHP 5.2.11
【手動】 動かない
【実行】 手動
【不明点】
無改造なんですが自動フォロー返し(autoFollow)をONにすると実行されません。
手動でbot.phpを叩いてもエラーメッセージも出ず真っ白な状態です。autoFollowをOFFにすると正常稼働します。
調べた感じgetFollowersとgetFriendsが原因な気がします。(getFollowersとgetFriendsのapiを1.1から1に戻すと実行はできる)
新しいapiで自動フォロー返しが動いている方いますか? 動いている方は変更点などありますでしょうか。

581viagra:2013/03/06(水) 16:29:40
viagra in order to were to buy very cheap extra strong viagra cheap viagar pills true a good down loaded actual deliver the results, then its keep on correct wonderful rate with mainly cheap viagra without prescription us pharmacy buy viagra pills victorville ca <a href="http://svenskaviagraonline.org/sublingualviagra.php "> chip viagara </a> cheapest prices for viagra cheap viagra pills many level these golf club

582名無しさん:2013/03/08(金) 02:26:37
>>580
@pagesでデフォ2.1.1で試したけど、自動フォローはされたよ
変更はもちろんしてなくて、オートフォローとリプだけコメントはずしてやった

583名無しさん:2013/03/08(金) 04:08:55
ロリ画像掲示板

http://d4u88bqk.seesaa.net/

584名無しさん:2013/03/08(金) 18:50:07
【バージョン】 Ver.2.1.2
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 動かない
【実行】 GAE
【実行間隔】 3分間隔
【不明点】
サーバー(http://www●●.atpages.jp/●●●●/twitterbot/bot.php/)が突然404エラーになりました。
手動、自動共に今まで正常に動いていたのですが、反応語句を追加してミスがないか確認のため手動実行しようとしたところ、@pagesのサーバーが404エラーになっていました。(3/6の時点ではサーバーに問題はありませんでした)
どうやら自動ではちゃんと動いているようです。調べても同じ症状(?)はヒットしませんし、初心者なもので原因の検討がつきません。@pagesさんに問い合わせるべきかとも思ったのですが、HPのアドレス自体(http://www●●.atpages.jp/●●●●/)に問題はないのでこちら側の原因なのかなと考えています。何か心当たりのある方、教えていただけますと幸いです。

585名無しさん:2013/03/08(金) 19:07:08
なんでbot.phpのあとに/(スラッシュ)つけるんですか?

586名無しさん:2013/03/08(金) 20:44:18
>>560
日本語読めるやろ?
日本語読める前提やから、それに返事したらええだけやん。

587名無しさん:2013/03/08(金) 21:09:47
>>586
テンプレは回答者にとっての大事な情報源だ
バージョン、設置鯖、その他によって状況は変わってくる
そこを明確にしないで質問しても、正確な回答は返ってこないと思った方がいい

それから、ここで回答してくれてる人はあくまで有志で、質問者に対してなんの義務もありはしない
自分の経験からわかることを伝えたり、互いに遣り取りしつつ勉強し合ったりしてるだけのことだ

答えが返ってこないのは、たまたまわかる人が来てないからか、質問者の情報が少なすぎて答えられないか、
あるいは文章に人としての礼儀が感じられないからだろう
586みたいな言い方をすればますます答えは返ってこなくなるだけだよ

588名無しさん:2013/03/09(土) 00:38:22
【バージョン】 2.1.2
【設置鯖名】 @Pages
【PHPのバージョン】5.2
【手動】 動かない
【実行】 まだ試していない
【実行間隔】 手動
【不明点】
初期設定のdata.txtでは動くのですが、data.phpに書き換え、



$data = array(
"いろはにほへと",
"ちりぬるを",
"わかよたれそ",
"つねならむ",
"うゐのおくやま",
"けふこえて",
"あさきゆめみし",
"ゑひもせす",
"ん",
);



とし、bot.phpを



//=============================
//botの動作をこの下に記述していきます。
//PHPでは先頭に//がある行はコメント扱いなので実行しません。実行したい行の先頭の//を削除してください。
//=============================
//$response = $eb->autoFollow();
$response = $eb->postRandom("data.php");
//$response = $eb->postRotation("data.php","おわり");
$response = $eb->reply(2,"data.php","reply_pattern.php");
$response = $eb->replyTimeline(2,"reply_pattern.php");



に設定しますと、
手動でbot.phpにアクセスしても、



$data = array(
"いろはにほへと",
"ちりぬるを",
"わかよたれそ",
"つねならむ",
"うゐのおくやま",
"けふこえて",
"あさきゆめみし",
"ゑひもせす",
"ん",
);投稿するメッセージがないようです。
2分以内に受け取った未返答のリプライはないようです。

2分以内のタイムラインに未反応のキーワードはないみたいです。



との表示が出てしまい投稿できません。
エディターはTeraPadを使用し、文字コードと改行コードはUTF-8とLFであることを確認して保存しました。
初心者の質問でもうしわけありませんが、どうかご指導お願いいたします。

589名無しさん:2013/03/09(土) 01:07:53
>>588
ファイルのトップに「<?php」は入っていますか?
(デフォルトのreply_pattern.phpもご参照ください)

590588:2013/03/09(土) 01:42:25
>>589
入っていませんでした、「<?php」を挿入したところ無事手動で投稿できるようになりました。
ありがとうございました!!

591名無しさん:2013/03/09(土) 21:15:02
【バージョン】 Ver.2.1.2
【設置鯖名】 @page
【PHPのバージョン】多分5.2
【手動】 動く
【実行】 Free Web Cron Service
【実行間隔】 5分間隔
【不明点】 (エラーメッセージがあればコピペ推奨)

Ver2.04betaで動かしていたbotが一年ほど前から止まってしまっていたので、Ver.2.1.2のEasyBotter.phpとPEARフォルダを上書きアップロードしたところ、
一部のランダムポストとタイムライン・リプライへの反応のみ復旧したのですが時間分けが機能しなくなりました。
記述は以下のとおりです。

592591:2013/03/09(土) 21:16:39
//時間分けランダムポスト
if(date("i") % 60 === 5){
if(date("G") > 9 && date("G") < 11){
$response = $eb->postRandom("01.php");
} else if(date("G") > 11 && date("G") < 13){
$response = $eb->postRandom("02.php");
} else if(date("G") > 14 && date("G") < 16){
$response = $eb->postRandom("03.php");
} else if(date("G") > 15 && date("G") < 17){
$response = $eb->postRandom("04.php");
} else if(date("G") > 18 && date("G") < 20){
$response = $eb->postRandom("05.php");
} else if(date("G") > 19 && date("G") < 22){
$response = $eb->postRandom("06.php");
}
}
if(rand(0,9) == 0){
if(date("G") > 5 && date("G") < 9){
$response = $eb->postRandom("07.php");
} else if(date("G") > 13 && date("G") < 15){
$response = $eb->postRandom("08.php");
} else if(date("G") > 22 || date("G") < 0){
$response = $eb->postRandom("09.php");
} else if(date("G") >= 0 && date("G") < 3){
$response = $eb->postRandom("10.php");
}
}



//bot.phpを実行したときに、10回に1回ランダムに実行される
if(rand(0,9) == 0){
if(date("G") > 5 && date("G") < 23){
$response = $eb->postRandom("data.php");
} else {
$response = $eb->postRandom("");
}
}

593591:2013/03/09(土) 21:17:10
//時間分けタイムラインへの反応
if(date("G") > 3 && date("G") < 6){
$response = $eb->replyTimeline(5,"11.php");
} else if(date("G") > 5 && date("G") < 10){
$response = $eb->replyTimeline(5,"12.php");
} else if(date("G") > 9 && date("G") < 11){
$response = $eb->replyTimeline(5,"13.php");
} else if(date("G") > 10 && date("G") < 12){
$response = $eb->replyTimeline(5,"14.php");
} else if(date("G") > 11 && date("G") < 13){
$response = $eb->replyTimeline(5,"15.php");
} else if(date("G") > 12 && date("G") < 15){
$response = $eb->replyTimeline(5,"16.php");
} else if(date("G") > 14 && date("G") < 16){
$response = $eb->replyTimeline(5,"17.php");
} else if(date("G") > 15 && date("G") < 19){
$response = $eb->replyTimeline(5,"18.php");
} else if(date("G") > 18 && date("G") < 22){
$response = $eb->replyTimeline(5,"19.php");
} else if(date("G") > 21 || date("G") < 3){
$response = $eb->replyTimeline(5,"20.php");
} else if(date("G") > 2 && date("G") < 4){
$response = $eb->replyTimeline(5,"21.php");
}



//時間分けリプライへの反応
if(date("G") > 3 && date("G") < 6){
$response = $eb->reply(5,"22.php");
} else if(date("G") > 5 && date("G") < 10){
$response = $eb->reply(5,"23.php");
} else if(date("G") > 9 && date("G") < 11){
$response = $eb->reply(5,"24.php");
} else if(date("G") > 10 && date("G") < 12){
$response = $eb->reply(5,"25.php");
} else if(date("G") > 11 && date("G") < 13){
$response = $eb->reply(5,"26.php");
} else if(date("G") > 12 && date("G") < 15){
$response = $eb->reply(5,"27.php");
} else if(date("G") > 14 && date("G") < 16){
$response = $eb->reply(5,"28.php");
} else if(date("G") > 15 && date("G") < 19){
$response = $eb->reply(5,"29.php");
} else if(date("G") > 18 && date("G") < 22){
$response = $eb->reply(5,"30.php");
} else if(date("G") > 21 || date("G") < 3){
$response = $eb->reply(5,"31.php");
} else if(date("G") > 2 && date("G") < 4){
$response = $eb->reply(5,"32.php");
}

---------------------------------------------------------
この記述のうち、data.phpのランダムポストと、
タイムライン、リプライともにここには記述していない(アップロードはしてある)reply_pattern.phpからの返信のみが行われます。

594名無しさん:2013/03/09(土) 23:07:42
>>591
592以下の内容をチェックしていないので的外れかもしれませんが……

復旧に当たって変えたのはEasyBotter.phpとPEARだけで
他は変わってない、ということですよね
上書きではなく、一旦EasyBotter.phpとPEARをサーバーから削除した上で
最新のをアップし直しても、状況は同じですか?

595591:2013/03/09(土) 23:22:18
>>594 さん
返信ありがとうございます。
はい、削除してからアップロードしなおしたのですが、
data.phpのランダムポストと、タイムライン・リプライに対して時間分け上で指定していない(アップロードはしてある)reply_pattern.phpからの返信のみが行われます。

596名無しさん:2013/03/10(日) 02:24:37
>>591
Ver.2.1.2への移行はEasyBotter.phpとlog.datとPEARフォルダを置き換えだと思ったけど
log.datは変えたけど書き漏らしなのか、変えてないのどっちなのかな
関係ないかもだけど一応確認で

あと、時間分けがない状態で指定ファイルが正常に動作してるのを確認してから
時間分けした方がいいかもしれない

597591:2013/03/10(日) 19:06:01
>>596 さん
返信ありがとうございます。
書き漏らしでした、log.datも削除→アップロードしなおししています。

アドバイスいただいたとおり時間分けをせずに、
5回に1回ランダムポストを実行する、という指定で時間分け用に作ったファイルの1つを指定したところ、正常に動作しました。
ご指導ありがとうございます。

現在不具合の原因とみられる時間分けしたbot.phpも、Ver2.04betaのときには正常に動作していたものなので、原因がとんとわからず困惑しています。

598名無しさん:2013/03/10(日) 21:50:43
あれ?リプライだけは↓の形式じゃないといけないんじゃなかった?
$response = $eb->reply(5,"","***.php");

599591:2013/03/11(月) 23:07:49
>>598 さん
返信ありがとうございます。
アップロードを繰り返して挙動をじっくりながめてみたところ、どうもタイムラインへの反応は動作しているようです。
bot.phpのうちリプライ反応の指定をご指摘のとおり書き換えてアップロードしなおしたのですが、なぜか全く反応しません。
お忙しいところご指導ありがとうございます。

600名無しさん:2013/03/13(水) 20:47:51
【バージョン】 2.1
【設置鯖名】 SAKURA
【PHPのバージョン】5.2
【手動】 動く
【実行】
【実行間隔】
【不明点】 キーワードを含んだリプライを送っても「2分以内のタイムラインに未反応のキーワードはないみたいです。」とだけ表示される。

基本的に動いてるんですがリプライにキーワードが入っていても無視することが多いです。
返信ファイルが結構長いせいか(php形式、77kb)うしろの方のキーワードが無視されてるように見えるんですが、返信ファイルの長さって制約があるんでしょうか?
そうでなければなにか解決法はないでしょうか。

601名無しさん:2013/03/13(水) 23:58:05
>>600です、自己解決しました、すみません。

602名無しさん:2013/03/17(日) 17:49:25
ツイッターがつぶやき結果得に改行が反映されるようになったけど、
easybotterで改行反映させる事できますか?

603名無しさん:2013/03/17(日) 22:15:24
ここに質問してる人は、殆どが丁寧な言葉を使ってますが、
回答する奴らは殆どがタメ口か上から口調だよね

わかってるからって、おかしいと思うので、
文章くらいは対等にしましょう。

604名無しさん:2013/03/17(日) 23:05:57
>>603
ときたま回答してる者のひとりです
自分はたまたまこの方が書きやすいのでですます調で書きますが、
この掲示板の過去ログを読んでいると
タメ口でも一生懸命考えて何度も答えてあげている回答者はいますし
丁寧語でもお客様意識が強い甘えん坊の質問者もいます
きちんとした文章は確かに大切ですが、それだけの問題じゃないのではないでしょうか

「質問してる人」「回答する奴ら」というあなたの言い方も対等な文章ではありませんよね?

605名無しさん:2013/03/19(火) 17:00:03
>>604
>タメ口でも一生懸命考えて何度も答えてあげている回答者はいますし
>丁寧語でもお客様意識が強い甘えん坊の質問者もいます
わずかごく一部でしょう。

殆どが、質問者が丁寧口調で回答者は上から口調

だから、過疎化してるんだと思います。

私は質問、回答もしないけど、見てて不愉快になります。

606名無しさん:2013/03/19(火) 18:34:03
bot.phpが真っ白に表示されてしまう人、サーバーのPHPのバージョンを最新にすると
改善されるかもしれないのは既出?
ウチのレン鯖(エックスサーバー)で表示できなくて何時間も悩んで、>>1-3も大丈夫なことを確認した結果
サーバー側の設定でPHPが古いバージョン(最新は5.3だが、設定が5.1だった)になってたのに気づいた。
俺の半日は何だったのか……こんな単純なことだったなんてー!

607名無しさん:2013/03/19(火) 18:36:22
質問です。
ランダムな時間に、ランダムなツイートをさせるような設定をするには、どうしたら良いですか?

608名無しさん:2013/03/19(火) 18:42:34
>605
質問も回答もしていない、皆の意見を聞いたわけでもなく
これが悪い、これで過疎化してると決められて説得力がないので
605さんのルールに他人を従えば過疎化もせず人が集まるということですから
まずご自身でルールを決めた掲示板を立ち上げ、管理してみたら如何でしょうか

609名無しさん:2013/03/19(火) 19:21:04
横レス失礼
>>605
私は調べても解らない時に質問してますが、ここで不愉快な回答されたことは一度もありません
私のためにヒントをくれようと時間を割いて下った親切な人の口調が砕けてても気になりません
ROMで詰まった所が解決できれば、ヒントを残してくれた回答者に感謝してるぐらいです

他の利用者のお役に立てればと回答側に回る事もありますが基本敬語です
回答側に廻れば解るのですが、回答する側は貴方が想像しているよりも大変ですよ

嘘を教えられないので、教える前に自分が漠然と解ってる知識を整理しなくてはなりません
私は知識が豊富でもないので、教える前に調べ直しますがそれには時間かかります
他人にも分かり易い文章を考えるのは骨が折れます
皆が簡単に答えをポンポン書けると思ったら大間違いです

そもそも、なぜ他の利用者のために何もして下さらなかった貴方が、
他の利用者のために回答してる利用者に求めてばかりいるのですか?お客様じゃないのに
回答者の態度が気に食わないのであれば、貴方が回答して差し上げれば良かったじゃないですか

回答側に廻ってみれば、いかに回答者が時間と手間を割いてるか分かりますよ
無償で回答する人に親切にされて当然とか、手取り足取り易しく教えられて当然と考えてる人がどんなに多いか、それも分かります

時間と労力割いてる回答者にああしろと指図するのがまかり通る掲示板こそ過疎りますよ
誰も答えたがらず質問とスパムで埋まってくでしょうね

回答者を見てて不愉快だけど、自分は何もしたくないのならYahoo!知恵袋のご利用をおすすめします
ポイント払えばググれと門前払いされることもないでしょうから

スレチですし、続くようなら雑談スレに移動しますか

>>607
有志の方が作ったwikiにだいたいのことは載ってますので、まず一通り読んでみてください

610名無しさん:2013/03/19(火) 20:59:10
608さん、609さんの書き込みに全面的に同感です
もしさらにこの話題を続けたいということでしたら、ぜひ雑談スレに移動しましょう
(あそこのスレこそ過疎ってますし……)

>>607
609さんのレスを参考になさったあと、というのを前提で付け加えます
「ランダムなツイート」が少しわかりかねますが、デフォルトのPostRandomでいいのではないでしょうか
「ランダムな時間」は、Cronとif構文とmt_rand() 関数の組み合わせでできると思います
がんばってみてください

611607:2013/03/19(火) 21:11:21
>>609-610
有難うございます。
ランダムにというのは、毎日違う時間に違う文章をツイートするようにしたいという意味でした。
609さんのレスとWikiを見て、今はCronとifを組み合わせる所までは出来ました。
(ただ、まだツイートする文章が2種類しかないので、上手くいかないかもしれませんが……。)
これを更に、時間を限定することは可能でしょうか?(18時〜24時のみ、など)
質問ばかりでスミマセン。レスを頂く間に、自分でも調べてみます。

612名無しさん:2013/03/19(火) 22:20:10
>>611
時間限定はできます
wikiやこの掲示板でわからないようでしたら「EasyBotter 時間分け」などのキーワードでぐぐってみてください
かつていろいろ工夫されたユーザーさんの書かれた記事がいくらでもひっかかります
ヒントはそこにたくさんあります(私自身そうやって勉強しましたし、今もしています)

ただ、Twitterの仕様変更によるバージョンアップ前の記事が多いので、
EasyBotter.phpの改造記事などはそのまま使えない場合がありますから注意してください

613名無しさん:2013/03/20(水) 02:30:06
検索してbot.phpの書き方を公開してるブログ等も参考にさせていただきましたが
掲示板の幾つかのスレの過去ログで、質問してる人の投稿と、回答を合わせて読んでみるとより理想に近付けました
間近なレスでは>>592さんの時間分けがいい感じゃないでしょうか

614607:2013/03/20(水) 14:39:08
>>613
けっこう直近のレスにあったのですね。
調べたたつもりが、気が付きませんでした。
とりあえず、592さんの時間分けを数値だけ改変して、しばらく様子を見たいと思います。
ありがとうございました。

615名無しさん:2013/03/23(土) 09:59:08
【バージョン】 Ver 2.1.2
【設置鯖名】 @pages
【PHPのバージョン】PHP5.2
【手動】 動く
【実行】 GAE
【実行間隔】 3分

鍵付きの方を自動フォローしない、を使いたいのですが
ウィキにある2.0の改造方法とはファイル内の表記が違うのでどう対処していいのかわかりません。
自分でも調べてみたのですがそれらしいものはヒットしませんでした。
何方かご存知でしたら教えていただけると助かります。

616名無しさん:2013/03/23(土) 22:03:29
>>615
改造はスレチ

テンプレにある逆引きより。
EasyBotter初心者質問スレ4
→初心者さんかつ改造未導入であること

EasyBotter2.0
→慣れきたので改造をしてみたい、改造を自己責任で行える方

botにこんな機能があったらいいなスレ
→考案及び提示

phaがときどき見るかもしれないスレ
→EB製作者様への感想・意見・バグ報告

617名無しさん:2013/03/24(日) 09:44:38
【バージョン】 Ver.2.1.2
【設置鯖名】 ろりぽっぷ
【PHPのバージョン】ver.5.4
【手動】 動く
【実行】 ろりぽっぷ
【実行間隔】 2分間隔(定期ポストは一時間おき)
【不明点】 1.リプライを送るとreply_pattern.phpを読み込まないで「Array」というリプが返ってくる/2.定期ポストが正常に作動していない…?

bot作成初心者です。作成サイト、wikiを参考にしながら作っただけで、改造などは一切していません。
一つ目に、作成初期からリプライを「Array」としか返してもらえず困っています。リプライの数が少ないのかと思い、8つの言葉に2〜5パターンで反応するように入れてありますが…それでも駄目です…
二つ目に、定期ポストも300行近く入れていますが、どうも最初の何行かをループしてしまっているらしく、下の方までポストしにいきません。大体10行弱でまた1行目の言葉をポストしにいってしまいます。

TL反応も組んでいるのですが、こちらは6〜7割の確率で正常に反応しています。手動でたたいてもエラーを吐いてくれず、それらしい対処法も見つかりません。どなたかアドバイス頂けたらと思います。
宜しくお願いします。

618名無しさん:2013/03/24(日) 10:27:07
>>617
一つ目、リプのphpファイルは読んでるけど、ファイルの中の"とか,とか()とかが
欠けてるか余計だから正常に投稿されない気がします
二つ目、順番に投稿するようにしてますか?ランダムに投稿するようにしてますか?

619617:2013/03/24(日) 23:29:32
>>618

ご助言ありがとうございます!
早速確認してみたのですが見つからず、試しにreply_pattern.phpを
zipからもう一度作り直したりしたのですが
リプを飛ばすとやはり「Array」のリプがきてしまいました。
それと手動で叩いた時に気付いたのですが、「Array」に成功しました〜の表示の上に
「data2.txt」(反応語句以外へのリプライ)に入れた言葉が表示されていました…
「data2.txt」が邪魔をしているのかと思い、以下bot.phpの
$response = $eb->reply(2,"reply_pattern.php","data2.txt");

$response = $eb->reply(2,"reply_pattern.php","");
にしてみたのですが、結果は同じでした。

以下bot.phpのいじる場所なのですが、おかしなところがあるでしょうか…?
<?php
require_once("EasyBotter.php");
$eb = new EasyBotter();

$response = $eb->autoFollow();
if(date("i") == 0){
$response = $eb->postRotation("data.txt");
}
$response = $eb->reply(2,"reply_pattern.php","data2.txt");
$response = $eb->replyTimeline(2,"reply_pattern2.php");


それと定期ポストの方は、順番投稿になります。
今は順番に動いていますが、いじっていない夜中やお昼時など、突然最初に戻っていたことがありました…

何か思い当たる解決策があれば、ご教授お願いいたします。

620名無しさん:2013/03/25(月) 23:55:04
>>619
もう解決してるかもだけど
リプライを指定する箇所の書き方が違ってるんでは>>598

621617:2013/03/28(木) 21:57:09
>>620
ご助言ありがとうございます。
まだ解決していなかったので、教えて頂けて本当にうれしかったです。
そしてリプライの箇所を修正したところ、無事に動きました!
本当にありがとうございます…!
過去ログにもあったのに読みが甘く、すみませんでした。
これで沢山リプライを詰め込めます!ありがとうございました!

622名無しさん:2013/04/06(土) 04:52:20
【バージョン】 Ver.2.1.2
【設置鯖名】 SAKURA
【PHPのバージョン】ver.5
【手動】 動く
【実行】 Free Web Cron Service
【実行間隔】 2分間隔
【不明点】 2分間隔でcronがbotを叩いてくれるので、だいたい一時間に1回、つまり30回に1回の設定でbot.phpを書いたのですが、なぜか十数時間に一度とか、数分の間に二回続けてのポストとかになってしまいます。
2.04を使っていた頃は普通にバラけてポストしていたので原因がわからず往生しております。

また、同じ環境下でバージョンアップ作業をしている別のbotなのですが、手動では動くのですがFree Web Cron Serviceで設定したcronからのアクセスがないようで、話しかけても手動でbot.phpを叩いてやらないと返信がない状態です。

これらまとめてFree Web Cron Serviceの仕様なのかそれとも自分自身各個ミスがあるのかずっと悩んでいます。
お忙しいところ申し訳ありませんがご指導いただけるとありがたいです。

623名無しさん:2013/04/07(日) 23:22:53
>>622
自分は最初2.05+@page+Free Web Cron Serviceで使っていてそんな状態でした。
その時色々調べて、Free Web Cron Serviceは上手く動かないとかサーバーとcronの相性があるとあったので、サーバーかcronを変えて試してみてはいかがでしょうか。
自分はGAEに変更してみましたが、その後問題はありません。

624名無しさん:2013/04/08(月) 07:19:48
http://pha22.net/twitterbot/oauth/link.php
OAuthの設定について - 認証キーの取得 を何度行なっても取得ができません。

625622:2013/04/09(火) 17:48:35
>>623さん ありがとうございます。
GAEを使えるなら使ってみたいのですが、ゆとり向けまとめさんとか風柳さんの記事とか見てソフトを導入してみたのですが、記事が書かれたのが結構前だからなのか上手く対応できずにいます。
Free Web Cron Serviceだと相性悪いとかあるんですね……。アドバイスいただいた通りPHPの置き場やcronを変えてみます。ありがとうございました。

626623:2013/04/10(水) 13:27:11
>>625
その後、自分もまたゆとり向けまとめさんでも詰まった事を思い出しました。(笑)
cronスレにある通り、キャッシュが原因であるみたいだったのでやり方を変え、以下を参考にしました。
http://s-clair.com/relier/bot_log/gae-cron/

原因がcronぽいので、また解らなければ今度はcronスレにての方がいいですね。

627名無しさん:2013/04/10(水) 23:20:39
【バージョン】 Ver.2.1.2
【設置鯖名】 さくらレンタルサーバー
【PHPのバージョン】5.2
【手動】 動く
【実行】 FREE WEB CRON SERVICE
【実行間隔】 5分間隔(CRON等で定期的に実行している場合)
【不明点】 ランダムポストにしばしば「?(半角はてな)」が羅列された文章が出てきてしまいます。観察していると半角ローマ字はちゃんと表示され、日本語は化けてしまうようです。
文字コードがおかしいのかと思ってTERA PADで確認したのですが文字コードUTF-8の改行LFでした。過去ログでUTF-8N/LFに設定してみたらどうかというアドバイスがあったのですが、そちらでも同じく化けてしまいました。
念のため該当ファイルを削除してから、勝手に文字コードが変換されないように設定してアップロードしなおしたのですが直りませんでした。何回か試し、その都度属性も666に設定しなおしています。
どうにも直し方がわからないので、アドバイスいただければ幸いです。

628名無しさん:2013/04/11(木) 02:53:54
【バージョン】 Ver.2.1.2
【設置鯖名】 just-size.networks
【PHPのバージョン】5.x
【手動】 動く
【実行】 just-size.networksのCRON
【実行間隔】 10分
【不明点】
setting.phpとbot.phpの基本の設定しか触っていません(無改造です)。

CRONの「今すぐ実行」ボタンを押すと、
「コマンド 〜.bot.phpからの出力..」との記載のあと、
投稿文が文字化けしたHTMLが表示されます。

botへの実際の投稿はされているのですが、気持ち悪いです。
log.dat/data.txt/reply_pattern.phpはパーミッションを666に指定しています。
あまりに気持ち悪いので、試行錯誤の結果、
data.txt/reply_pattern.phpを644にしたところ一時的に問題はなくなったのですが、
なんの変更も加えていないのにまた文字化けするようになってしまいました。

Google検索中、パーミッションの問題で文字化けすることもあると見かけましたが、
666/644以外に試してみるべき値はあるでしょうか。
604・600等に変えてみたり、サーバーからファイルを消して上げ直してみたりもしましたが直りませんでした。

どうぞご教示お願いします。

629622:2013/04/11(木) 22:19:34
>>626さん 参考URLまでありがとうございます!
そうですね、今度質問する時はcronスレに行ってみたいと思います。

630名無しさん:2013/04/11(木) 22:51:34
定期ポストの文字化けって、使ってるFTPアプリの設定の問題じゃないてすか?

631628:2013/04/11(木) 23:34:28
>>630

文字化けするのはCRONの実行結果ページだけで、
定期POST自体は化けずに表示されるのですが、
設定の問題だとしたら、どういった項目を見るべきでしょうか?

使っているのはFileZillaというFTPソフトです。

632名無しさん:2013/04/12(金) 00:45:55
>>628=631さんの場合は借りてるサーバーのcronの動作の問題であってイジボは正常に動いてるようなので
ここじゃなくて、cronのスレかサーバーのサポートBBS向けの質問じゃないでしょうか?

使ってるcronもソフトも違うので具体的な設定は自分には分かりません
ソフトの設定のせいなら、使ってるソフト名、転送モード、文字コード、文字化け、で検索で答が見つかるかもしれませんが
下記のスレなら同じような状況でcron使ってる人が答えてくれるかもしれませんよ

Twitterbotのcronスレ
http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1260351215/

633名無しさん:2013/04/12(金) 23:18:51
>>631
@pageでgaecronていう環境でFileZilla使ってるけど、文字化けはないなあ
サイトマネージャから詳細を見たけど、設定はおそらくデフォのままで変わってないと思う、全部既定や自動になってたので
自分でも設定は特に変えた記憶もない

あとパーミッションを666にしてるのはlog.datだけだった。定期ポストもローテーションタイプじゃないのでこれしか666はない

634628=631:2013/04/13(土) 20:31:26
>>632
誘導ありがとうございます。
検索は頑張ったんですが、まだ足りないのかも知れないですね。
向こうで訊いてみます。ありがとうございました。

>>633
私もサイトマネージャから詳細を見てみたのですが、
特別設定はいじっていないはずなので、ソフトの所為なのかが分かりません。

log.dat以外のreply_pattern.php/data.txtにも666を指定したのは、
文字化けする場合はそのほうがよいという記事を見かけたからなんですが、
実際のところはどうなんでしょうね…。
回答ありがとうございました。

635627:2013/04/13(土) 21:37:53
>>630
FFFTPの文字コードを無変換にしているのですが、何か他の設定にするべきでしょうか。

636名無しさん:2013/04/14(日) 21:25:36
こちらの板で何度も検索、サイト等でも調べてみたのですが
1週間近く詰まってしまいましたので物凄く基本的な質問で申し訳ありませんが
質問させて頂きます。
【バージョン】バージョン2.1.2
【設置鯖名】 @PAGES
【PHPのバージョン】PHP-5.2(恐らく)
【手動】 動かない
【実行】 未着手
【不明点】
EasyBotter公式様とWikiを参考に手順通り実行、bot.phpにアクセスして
「2分以内に受け取った未返答のリプライはないようです。」と表示されるところまでは良かったのですが
リプライ反応を試しても全く反応しません。
またランダムPOSTの関しても50個ありますが「投稿するメッセージがないようです。」
と表示されてしまいます。
OAuth認証はWikiとPHP+OAuthでTwitterさんを参考に認証して
OAuth経由のツイートテストと言うツイートは実行できたのですが・・・そこから詰まってしまいました。
あと@PAGESの簡単FTPにFFFTPでアップロードすると必ず編集で確認すると
文字化け+文字コードが勝手に変更される為編集画面で修正するハメになるのですが
これも原因の一端でしょうか?
使用しているテキストエディタはTeraPad、
文字コードはUTF-8N、改行コード LF。
パーミッションはPHPファイル、txt、datファイル全て666に変更しております。
cronの関係もありサーバーをさくらに変更しようかとも思っているのですが・・・

初歩的な質問で申し訳ありません、どうぞよろしくお願いいたします。

637名無しさん:2013/04/14(日) 22:52:35
確認なのですが簡単FTPにFFFTPでアップというと、どちらを使ってるのでしょうか
取り敢えず@PAGESの簡単FTPでアップすると動かないのでFFFTPを利用した方がいいのですが

638名無しさん:2013/04/14(日) 22:54:33
>636の者です。
サーバーをさくらインターネットに変更しましたが変わらず
リプライ反応しません・・・
現在bot.php内は↓のようになっています
<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();
$response = $eb->reply(2,"","reply_pattern.php");
?>
data.txt内から読み込ませないようにこのように設定してますが・・
よろしくお願いいたします

639名無しさん:2013/04/14(日) 23:01:17
>637様
ご返信ありがとうございます。
アップロードにはFFFTPを使用しております。
しかしその後@PAGESFTPのサーバーでデータを確認すると確実に文字化け+文字コードが変化しているので
編集画面から直していたのですが・・・・
サーバーをさくらに変更してみましたが変化なしです;

640名無しさん:2013/04/14(日) 23:37:15
<a href="http://jbbs.livedoor.jp/bbs/lite/read.cgi/internet/6629/1319035690/636&quot;&gt;636&lt;/a&gt;です。
【バージョン】バージョン2.1.2
【設置鯖名】さくらインターネット(スタンダード)
【PHPのバージョン】PHP 5.2.17
【手動】 動かない
【実行】 未着手
サーバーを変更してみましたが症状は変わらずリプ、ランダムポストとも反応しません。
date.txtにサーバー側でアクセスしてみると文字化けしているのですが
これは何か関係があるのでしょうか?
自分でも調べ続け+試行していますが改善できす・・
連投で申し訳ありません、お知恵をお借りさせて頂きたいです。よろしくお願いします。

641名無しさん:2013/04/14(日) 23:58:32
637さんとは別人ですが……

1.FFFTPの「ホストの設定」内の「文字コード」はどうなっていますか?
2.「オプション→環境設定→転送1」内の「転送モード」は?

これはあくまで自分の環境ですが
1は左右ともUTF-8に、2は「常にバイナリモード」にしています
(2については、自分が以前文字化けで悩んだときにどこかの書き込みに従ったら直ったもので、
ひょっとすると不適切かもしれません)
これが正解というわけではありませんが、ご参考までに

642名無しさん:2013/04/15(月) 00:15:02
>>641さま
ご指摘ありがとうございました。
1、2と確認しまして共にご指摘内容の通りに変更して
再度アップロードを試みましたが動作しない&data.txt内の文字化けも変化がありませんでした;
これはOAuth認証が上手く出来ていないかFFFTPのアップが正常に出来ていないということなのでしょうか・・

すいません、引き続きお知恵の拝借をお願いします!

643名無しさん:2013/04/15(月) 02:03:27
【バージョン】バージョン2.1.2
【設置鯖名】 @PAGES
【PHPのバージョン】PHP-5.2
【手動】 動く
【実行】 GAE-cron
【不明点】bot同士の会話が無限にループしてしまいます。
settingファイルから3回に指定しているのですが止まりません。
ログを探したところ、、settingファイルでの指定は無効という記述と、
回数制限はsettingで出来るとの両方の発言があり悩んでいます。
無限ループはサーバーにも負荷がかかってしまいますし、
どうにかとめたく、アドバイスをいただけれな幸いです。

644名無しさん:2013/04/16(火) 00:34:32
>>636
@pagesの簡単ftpってttp://ftp.atpages.jp/のことかな? それ使えない?
ffftpを使わずいつもその画面からアップしたりしてるけど、文字化けとかは起こったことはないし

あと$response = $eb->reply(2,"","reply_pattern.php");
これを>data.txt内から読み込ませないように って言ってるけど、「おはよう」とかならリプライパターンにあるから
data.txtからは返さないしそれで試した? 勝手に消すのはまずかったと思うので最初はデフォのままでやってみたら

>>643
643さんのやりたいこととsetting.phpで設定できるのって意味が違ってるんじゃなかったっけ
この掲示板内で前に見たような気がする

botとかを制限したいなら非公式wikiのhttp://www26.atwiki.jp/easybotter_wiki/pages/29.html#id_ec12d6da
の、「特定のアカウントとのリプライ回数を制限したい 」を参考にしたらいいと思う
ただし2.0用なので2.1用に直すところがあるかもしれない

645名無しさん:2013/04/16(火) 01:14:26
私も637さんと641さんとは別人で、あくまで自分の環境ですが…

FTPソフト…FFFTP
1の「接続」→「ホストの設定」→「文字コード」は
ホストの文字コード:無変換(SHIFT-JIS)
ファイル名の漢字コード:SHIFT-JIS

2の「オプション」→「環境設定」→「転送1」
転送モード:ファイル名で切り替え
アスキーモードのファイル名:*.txt *.html *.htm *.cgi *.pl

ぐぐれば、2をアスキーモードを推奨してるサイト様もありますね。
http://d.hatena.ne.jp/zabi/20120326#p8

>>644
そのアドバイス通りを言葉通りにすると、質問者さんは全部をアップロードするのに簡単FTP使うと思いますが
過去ログに@pagesの簡単FTPでアップロードすると文字化けするとの指摘が何度かありましたよね。
644さんは一部の拡張子(*.txtや*.php)だけでなく、Easy Botterの全部のファイルを
簡単FTPを使って上げても文字化けしなかったのでしょうか?

646名無しさん:2013/04/16(火) 01:19:31
うわ、日本語がおかしくなってすみません

647644:2013/04/16(火) 01:42:23
>>645
@pagesにアップしたのはEB2.0からで、必要なファイルは丸ごと
ttp://ftp.atpages.jp/からアップしたけど何も問題なかったようちの環境では
問題ないと言うかbot.phpにアクセスしてリプやポストを確かめるとちゃんと文字になってて、botの発言も
化けたのは見たことないので多分問題はないかなと。上げたファイルの中はあまり見てない

それから2.1も@pagesの別の鯖に同じようにアップしたけど文字化けは一度もないな
ここじゃない鯖だったら改行が効かなくなって一行に繋がったことはあるけど

648643:2013/04/16(火) 19:09:05
>>644
すみません、ログはよく読んだつもりだったのですが、ループ制限の意味の違いはわかりませんでした。
また、参考URLをありがとうございました。しかしPHPの出来ない初心者なので、改造には手を出せずにいます……。
botに限らずひととの会話でも全部3回制限でいいやと思っているんですが、それでも改造しないとループは止められないのでしょうか。


素人の質問で申し訳ないのですが、引き続き皆様のお知恵を拝借出来ればありがたいです。

649636:2013/04/16(火) 23:00:45
>>636の者です。
>>644さま
ご返答ありがとうございます。簡単FTPですが後記して下さった方のように
こちらの板で@pagesの簡単FTPでのアップは使用しない方が・・・とありましたので
ずっとFFFTPで行っておりました。
一度直接、簡単FTPに上げてみましたが結果は変わらずです・・;
また、bot.phpのリプライ設定ですが元々の設定でも無反応なのは確認済みで
一応deta内から読ませないようにする設定もEasyBotter 非公式wikiから引用させて頂きました。

>>645さま
ご返答ありがとうございました。
645さまの環境設定を参考にアップロードしなおしましたが
deta.txtの文字化け(ファイルマネージャーで確認すると化けていません)と
リプ、ポストの無反応も変化がありませんでした;

現在、@pagesだとFFFTPでのアップ後全てのデータが文字化けする現象の為
サーバーをさくらに切り替えまして以下のような状態です
【バージョン】バージョン2.1.2
【設置鯖名】さくらインターネット(スタンダード)
【PHPのバージョン】PHP 5.2.17
【手動】 動かない
【実行】 未着手
あと記述忘れだったのですがOAuth認証時、WikiとPHP+OAuthでTwitterとを参考にして行ったのですが
wikiの記述にある
「5.oauth_test.phpにアクセスすると
''Click on the link to go to twitter to authorize your accountという英文があり、
下に長いURLが貼られていると思います。~~そのURLをクリックして下さい。
~~An application would like to connect to your accountのページに辿り着きます。
~~「許可する」を選択するとその後転送されoauth_test.phpへ戻ってきます。
~~戻ってきたoauth_test.phpにはAccess TokenとAccess Token Secret''が追加されていますので、
またメモして下さい」
この部分、oauth_test.phpにアクセスした際に激しく文字化けしており
URLクリック〜oauth_test.phpに戻ってくる。と言う部分が実行出来ませんでした。
PHP+OAuthでTwitterではOAuth経由でPOSTした呟きが「(クライアント名)から」となっていれば成功。
とあった為(bot用アカウントでOAuth経由のツイートテストというポスト確認済み。)
大丈夫かなと思っていたのですが・・もしかしてこれが原因でしょうか?
$consumer_key、$consumer_secret、$access_tokenと$access_token_secretは全て取得出来ています。

申し訳ありませんが引き続きアドバイスを頂けましたら有り難いです・・
よろしくお願い致します!

650名無しさん:2013/04/17(水) 00:33:09
>>647 :644
回答ありがとうございます

>>649
私も@pagesとFFFTPの組み合わせですが化けてませんよ
ほんと636さんだけなんで化けるんでしょうね…私も煮詰まってきました(;´Д`)
根拠はありませんが、自分だったらファイルを上書きするのではなく消してから上げ直します

>・・もしかしてこれが原因でしょうか?
oauth_test.phpを使ってないのでよく分かりません
一部のbotのoauth_test.phpはセキュリティーの穴になってましたし、
簡単な設定をわざわざややこしくしてる印象です

Twitterへの認証は、下記のサイト様が紹介している方法が一番楽に思えます
http://blog.livedoor.jp/prjtriton/archives/21934460.html

651名無しさん:2013/04/17(水) 12:45:56
YOUTUBEにtwitterのOAuth認証の動画あったので貼っておきます
http://www.youtube.com/watch?v=ulzCP8s-eI8

652636:2013/04/18(木) 21:36:32
>>636です。
昨日は仕事で帰宅が深夜だった為せっかくご回答頂いておりました内容
実行できませんでした。書き込みして下さった方すいません。

>>650さま
ご意見ありがとうございます!
@pagesだと全てのデータが文字化けして今のさくらインターネットだとdeta.txtのみ文字化けでます・・
もう、本当何故なのか原因がわからず困ってます;
あ、ファイルは毎回試行する度に全て消してからアップロードしております。
サイト様のご紹介ありがとうございました!
確認しましたが、やはり認証はちゃんと取れているようです・・・

>>651さま
動画の貼り付けありがとうございました!
分かりやすい動画で助かりました。一通り見ましたがOAuth認証間違ったことはしていないようです・・

週末に一度全てセッティングからやり直して再試行してみます。
その際にまた書き込みさせて頂くと思いますが
もし何かリプ、ポストの無反応の原因になりそうな点お気付きの方いらっしゃいましたら
ご指摘、ご指南の程よろしくお願いいたします<m(_ _)m>

653名無しさん:2013/04/18(木) 21:55:29
【バージョン】 Ver.2.1.2
【設置鯖名】 sakura
【PHPのバージョン】5.x
【手動】 動く
【実行】 GAE-cron
【実行間隔】 2分間隔
【不明点】 リプライへの返信で、特定の単語を受け取ったときだけ反応を返さないようにしたいと思い、
=======================
//「いろはにほへと」を受け取ると反応を返さない
"いろはにほへと"=> array(
"",
),
=======================
で試してみたのですがdata.phpから返してしまいました。

特定の単語に無反応という動作は不可能なのでしょうか?
よろしければご教授願いたく、書き込みさせていただきます。

654653:2013/04/19(金) 01:49:09
すみません、別の方法で自己解決しました。
お騒がせしてすみませんでした。

655636:2013/04/22(月) 01:19:46
>>636です
皆様のご意見を参考に一度FFFTPソフトもDLし直し
初めから全てやり直しましたら無事bot動作するようになりました!
ありがとうございました!が、新たにまた躓いてしまった部分がありまして・・・

cron設定まで無事進み、定期ポストも行うようになったのですが
何故かリプライ反応のみ手動でも動かなくなってしまいました。

【バージョン】Ver.2.1.2
【設置鯖名】 さくらインターネット(スタンダード)
【PHPのバージョン】PHP 5.2.17
【手動】 リプライ反応のみ動かない
【実行】 CRON鯖名/さくらインターネット
【実行間隔】 5分間隔
【不明点】 反応語句やbot.phpの編集を行った後リプライ反応を手動でも全くしなくなってしまいました。
bot.phpはこうなっております
<?php
//=============================
//EasyBotterを呼び出します
//=============================
require_once("EasyBotter.php");
$eb = new EasyBotter();
//5分おきにリプライを返す
$response = $eb->reply(5,"","reply_pattern.php");
//bot.phpを実行したときに、60分おきにdata.txtを通常ポスト
if(date("i") % 60 == 0){
$response = $eb->postRandom("data.txt");
}
?>
reply_pattern内も簡単な反応しかしない為、初期の「おはよ」反応を
コピペして編集する形で行いました。確認しましたが全角スペース等は含んでいません。
アップロード後、さくらのPHPパーミッション設定の705にパーミッション変更しています。
reply_pattern.phpをブラウザで実行するとHTTP 500 Web サイト側でページを表示できませんと表示されるのですが
reply_pattern.php内のミスなのでしょうか?

度々の質問で申し訳ありません。お知恵を拝借できたら嬉しいです。
よろしくお願いいたします。

656655:2013/04/22(月) 20:32:09
>>655です。
reply_pattern.php内を最初からやり直してブラウザ実行でのHTTP 500 Web サイト側でページを表示できません
のエラーは出なくなったのですが相変わらずリプライに反応はしてくれません。
手動で叩くと反応することもあるのですが・・・・
パーミッションが705手動で叩いて反応しない時が多かった為今は755に変更しております。

bot.phpに問題があるのか、サーバーのcron設定に問題があるのか・・・
一時間ごとのランダムポストは正常に動いているのですが。

また、通常ポストやリプライで、1つのつぶやき内の単語をどれか一つからランダムにポストさせるには
どのようにしたらよいでしょうか?
例:これあげる つ【△,◎,■,】←これの【】内の三つをランダムにさせたい場合
表記方法や語句を調べて{random:△,◎,■}の表現でランダムになるとあったのですが
これあげる つ【{random:△,◎,■}】のようにそのままツイートされてしまいました。

こちらもご指南頂ければ・・・!

申し訳ありません、引き続きご教授お願いいたします!

657名無しさん:2013/04/22(月) 21:09:22
最初の投稿から拝見していましたがあなたにEasybotterは早いのではないでしょうか
正しい知識がないのに思い込みで好きに弄って動かなくなっているように見えます
このままではサーバーにも迷惑をかけてしまうのでは

658655:2013/04/23(火) 06:35:58
655です。
すいません!自己解決してしまいました。
簡単な設定ミスだったようです。
皆様ありがとうございました!

657さま
ご意見ありがとうございます。
ご迷惑をかけぬように基礎知識の見直しをしたいと思います。

659名無しさん:2013/04/23(火) 13:39:34
BOT初心者です
今現在ラグナロクオンラインをプレイしておりBOTに興味があります。
先輩方にいろいろとご指導願いたいと思っております。
どうぞよろしくお願いいたします。

660名無しさん:2013/04/24(水) 14:40:52
【バージョン】 Ver 2.1.2
【設置鯖名】 @pages
【PHPのバージョン】PHP5.x
【手動】 動く
【実行】 GAE
【実行間隔】 5分
【不明点】リプライが複数回行われてしまう
 特定の単語に反応させる機能を利用しておみくじ機能を作ったのですが、
作動はするものの一つのワードに複数回のリプライが入ってしまったり
一回のリプライで済んだりと動作が不安定な状態が続いています
 そして通常のリプライも同じように複数回入ったり一回で済んだりと
動作が安定してくれずに困っています。
 Easybotter.php自体はユーザー定義辞書と特定の単語に反応してフォロー&リムーブを行う機能を入れてあるだけで、
プログラムそのものを弄ってあるわけではありません。

 どなたか解決策をご存知の方がいらっしゃいましたらご教授頂けると幸いです。

661名無しさん:2013/04/24(水) 15:26:46
>>660
>>1>>5

662名無しさん:2013/04/26(金) 13:14:33
【バージョン】Ver.2.12
【設置鯖名】ロリポップ
【PHPのバージョン】5.4
【手動】動く
【実行】cron(ロリポップ)
【実行間隔】5分間隔
【不明点】リプライのみに反応してほしい単語をTL上でつぶやくとそれに反応してbotがリプライを返してきてしまいます。
過去のスレも見てみたのですが、検索の仕方が悪いのか見つけることができませんでした…すみません。
ぜひ充実したbotにしたいため助言をいただけると幸いです。

663名無しさん:2013/04/26(金) 16:55:07
>>662
>>1 の公式を見てまず基本的な仕組みをチェックしてみて

664名無しさん:2013/05/12(日) 18:26:23
【バージョン】バージョン2.1.1
【設置鯖名】 @PAGES
【PHPのバージョン】PHP-5.2
【手動】 動く
【実行】 GAE-cron
【不明点】10分間隔で動く設定にしているのですが、
最近になってから10分ではなく20分か30分でようやく動くという(時によっては1時間動かない)
という、なんとも不安定な状況になっています。
あと、data.txtに入力した文章ってあんまり長いと良くないのでしょうか?
新しく入力した言葉を全く言ってくれません

更に言うと、bot.phpに直接アクセスすると動くのですが、GAE-cronから試行させようとすると
「試行結果:HTTPステータスコード 200」と表示されますが、これって正常な状態なんでしょうか?

665名無しさん:2013/05/12(日) 19:21:19
>>664
これという決め手になる回答じゃないので、思いついたことを箇条書きで。
的を射ていなかったら他の方の回答を待ってみてください。

・バージョン2.1.2へのアップデートをお薦めします。
今回の質問に関係あるかはわかりませんが、細かいバグがいくつか修正されているそうです。

・長い文章でもTwitterの文字数制限以下で収まっていればツイートされるはずです。
収まるかどうか数えにくい文なら、文章をコピぺして投稿窓に貼り付けて残り文字数を確かめるといいかも。

・「HTTPステータスコード200」でぐぐってみてください。正常に処理されているということです。
それでも動かないなら、Cron以外の問題があるのではないでしょうか。

666名無しさん:2013/05/13(月) 05:30:15
>>665
御返事ありがとうございます

>・「HTTPステータスコード200」でぐぐってみてください。正常に処理されているということです。
検索したんですがわからなくて…どうやら自分が見落としていたみたいです
、安心しました

>・バージョン2.1.2へのアップデートをお薦めします。
やってみましたが、bot.phpのファイルだけは2.1.2の物にしてしまうとどういうわけかページが白紙になって起動しなくなるんですよね・・・
これは何故なんでしょうか?他のファイルは2.1.2の物にしても正常に動作するんです、どうしてなのかなぁ・・・

667名無しさん:2013/05/13(月) 06:35:50
>>666
アップデートは全ファイルを置き換える必要はないです
公式にありますが、EasyBotter.phpとlog.datとPEARフォルダを置き換えれば大丈夫です
(PEARフォルダは上書きでなく以前のを削除して新しいのをアップしてください)

「ページが白紙になって起動しなくなる」とは、bot.phpをブラウザ上で叩いたときのことでしょうか?
もしそうなら、その状態は正常です
(bot.php自体はエラーなく動いています。ツイートしないのは他の問題です)
このスレの561-567辺りもそのあたりについてのやりとりです
公式の「2013.1.9. バージョン2.1.2を公開しました」に以下のようにあります
 ・atpagesなど一部のサーバーで、スクリプトのファイルが検索にひっかかるのを防ぐためにindex.htmlを追加しました。
 内容はないダミーファイルですがそのままアップロードしてください。

668名無しさん:2013/05/14(火) 06:18:04
>>667
御返事ありがとうございます

>「ページが白紙になって起動しなくなる」とは、bot.phpをブラウザ上で叩いたときのことでしょうか?
もしそうなら、その状態は正常です
そうなんですか!それは知りませんでした
>>561-567辺りのことを参考にしてやってみました(__MACOSXを削除するなど)
が、やっぱ駄目でした…何故でしょうかね?bot.phpだけなんですよ
直接開くと白紙ですが、cronで叩いた時は「Deadline exceeded while waiting for HTTP response from URL: 〜」と表示されていました

わざわざ全てのファイルを置き換える必要が無いというならば、今のままでも大丈夫ってことなんでしょうかね?特に気にしなくても
でも何故、bot.phpだけ変えるとダメになるのか気になってしまいます・・・。

669名無しさん:2013/05/19(日) 10:12:23
【バージョン】 Ver.2.1.2
【設置鯖名】 @PAGES
【PHPのバージョン】5.2 (多分)
【手動】 動く
【実行】 GEA
【実行間隔】 3分間隔
【不明点】 TL反応の二重リプライ

Ver.2.0から利用しています。
リプライに関する.txtと.php以外をVer.2.1.2に更新してから、TLに対するリプライが不定期に重複するようになりました。
PEARとlog.datを一度削除してからアップロードし直したり、パーミッションの確認も行いましたが直りません。
bot.phpにはログ取りの改造ありですが、EasyBotter.phpはいじっていません。

@PAGESの簡単FTPはよくないという書き込みをみて、PEARとlog.datをFFFTPであげなおしました。
それ以外は簡単FTPであげています。(パーミッション、文字コード共に正しいことを確認済み)

log.datのパーミッションでは?という書き込みをみて再度確認しましたが666、18桁の数字も書き込まれていました。
二重リプライは毎回ではなく不定期で、手動でもcronでも…。

エラーメッセージは表示されません。
(同じ内容をツイートしようとしてStatus is a duplicateは出ますが)

エディタはTeraPadを使用しています。
他に原因になりそうな部分が思いつかず…、ヒントを頂けないでしょうか。お願いします。

670名無しさん:2013/05/20(月) 00:13:53
>>699です。
お騒がせして申し訳ありません、自己解決しました。
再度すべてあげなおし、今まで使用していたファイルとVer.2.1.2の初期ファイルを見比べた結果
.phpファイルの最後に ?> を勝手に追加していたことが原因なのでは?という結論に至りました。

3時間ほど動作チェックを行いましたが、今の所は二重リプライもなく正常に稼働しています。
ただ、cron稼働中に手動でbot.phpを叩くとリプライが重複する可能性があるようです。(重複率100%ではありませんでした)

671669,670:2013/05/20(月) 00:15:00
すみません、間違えました。
× >>699
>>669

672669,670:2013/05/20(月) 01:49:09
連続で申し訳ありません。
やはり、二重リプライは直りませんでした。
3分間隔でcronを稼働しているのですが、主に最後にリプライした相手へ3分後に再びリプライを送っています。
時間帯に規則性はなく、botへのリプライ有無も関係なさそうです。
頂いたリプライに対しては重複することなく、リプライしているのですが。

2.0に戻そうかと思うのですが、もう使えないんでしたっけ…。

673名無しさん:2013/05/21(火) 00:11:19
>>699
一部改造ありってことだけど、デフォの状態では試してみた?

@pageの鯖でまったくいじってないデフォの状態のファイルを簡単ftpで上げて、
tl反応分のファイルだけリプライパターンファイルの名前を変えてもう一つ作って、
tl反応だけをオンにして「おはよう」の単語を手動で叩いて試してみたけど、一回もダブらなかったよ
どっかいじったのがまずいんじゃないかな

2.0も使えるっちゃ使えるけどAPIとかログ取りまわりとか自分で修正してかないとこの先使えないね

674名無しさん:2013/05/21(火) 03:45:51
>>673
お返事ありがとうございます。

bot.phpに追加したのは、「簡単じゃない〜」inoueさんの動作記録を簡単に残す方法(ttp://twbot.blogspot.jp/2010/08/easybotter2.html)です。

bot.phpもデフォルト状態に戻しTL反応だけの状態で手動確認してみましが、不定期で二重リプをしていました。
(30分程は重複していなかったのですが、しばらくしたら手動でもcronでもたまに重複)

TL反応用のphpファイルに何か問題があるのではないかと思い、関係無いかもしれませんがTabキーを使っていた部分を半角スペースで置き変えました。
が、また二重リプライ…。

二重リプライになるときと、ならない時があるので
もしかしたら@PAGES鯖かGEAcronに何かあるのかもしれません。


やはり2.0は使えなくなるのですね。
自力で修正できる気がしないので、このまま2.1以降を使用させて頂きます。

675名無しさん:2013/05/21(火) 19:47:14
二重リプライの原因調査中な>>669です。


しばらくlog.datへ書きこまれるIDをチェックしていたところ、
1度に複数のリプライを送る(@A ××× @B ×××)と、最後にリプライをしたツイートのID(例の場合はBのID)が書きこまれず重複することが分かりました。

手動、自動ともに同じ状態です。
エラーは吐きません。

botのフォロワーは2000人程で、3分間隔でリプライをしていると多いときには4〜5人のTLに対する返信を行っています。

676669:2013/05/21(火) 20:03:44
連投申し訳ございません。>>669です。

一度に複数のリプライを送るときに書きこまれるIDは、最初のリプライ元でした。
リプ数が3つ以上になった場合でも、同じ現象が起こります。


TLに「おはよう」が3つ(3人)並んでいた場合

botの投稿
@1 おはよう。
@2 おはよう。
@3 おはよう。

log.datに書きこまれたID・・・「@1 おはよう」のリプ元

677名無しさん:2013/05/23(木) 19:02:03
bot宛に「○○===△△△」と発言するとreply_pattern.に書き込んで「おぼえた」と返す
以降、bot宛に○○を含むリプライがあったら「△△△」と返すプログラムを解説したサイトはありますでしょうか?
どうも以前解説があったと思われるHPがなくなっていたりして探しきれないです。

678名無しさん:2013/05/23(木) 20:15:21
>>677
学習機能は、EasyBotterの改造ではないでしょうか?
「bot 学習機能」でぐぐったら、れっぽいのを見つけたし、他のスレにあった気がします。

679名無しさん:2013/05/25(土) 17:40:09
すみません、reply_pattern.php、正規表現についての質問なのですが、

^(?=.*勉強)(?=.*頑張って)=> array(
"",
),

という文を改良して、例えば(?=.*勉強)を、勉強、べんきょ、レポート、などの文字を1行で記述したいのですが、
(?=.*勉強 | べんきょ)としても反応しません。また、(?=.*勉強 | ?=.*べんきょ)などなど試してみたのですが駄目でした。
この様な事は出来ないのでしょうか?もし何か違う記述の仕方があるのでしたら教えて頂けると幸いです。
宜しくお願いします。

680名無しさん:2013/05/30(木) 22:08:47
【設置鯖名】 @PAGE
【PHPのバージョン】5
【EasyBotterの改造】改造している
【手動】 動く
【実行】 GAE
【不明点】
bot自体は正常に稼働しているのですが、Twitterの仕様の変更だと思うのですが、
非公開アカウントへのリプライの発言元が消えており、同じ相手に何度もリプライを行ってしまっています。
止める方法はありますでしょうか?

681680:2013/05/31(金) 11:14:04
発言元が表示戻ったので、質問は取り下げます。

682名無しさん:2013/05/31(金) 12:47:47
もう遅いだろうけど一応

改造後・改造の質問はこのスレではありません
詳しくは>>1に続くスレの説明をご確認ください

683名無し:2013/06/14(金) 21:48:34
【バージョン】Ver.2.1.2
【設置鯖名】 @pages
【PHPのバージョン】PHP-5
【手動】 通常ポストは動くがリプライを返さない
【実行】 GAE-Cron
【実行間隔】 2分間隔
【不明点】
6月12日にBOTが停止し、それまで使っていたVer2.0.4から2.1.2へ移行したところリプライを返さなくなりました。
通常ツイートは動いているのですが、リプライに関しては

Could not authenticate you2分以内に受け取った未返答のリプライはないようです。
Could not authenticate you2分以内のタイムラインに未反応のキーワードはないみたいです

と表示され反応をしません。どうしたらリプライを反応するように直せるでしょうか?

684名無しさん:2013/06/16(日) 12:22:58
Ver2.11beta使用してます。(2.12変更途中)

BOT用のIDを都合により変更することにしたのですが、
いざ変更したら自分の発言に自分で返してるような暴走状態になってしまいました


とりあえず今はphpのcronを止めて沈静化しているのですが、コレはどうしたら直るのでしょうか?

685名無しさん:2013/06/16(日) 21:19:43
>>684
setting.phpの $screen_name部分は新しいIDに書き換え済でしょうか? 
IDを記録する場所は多分そこだけだと思うのですが、他にもありましたらすみません。

686名無しさん:2013/06/16(日) 23:32:50
【設置鯖名】 @PAGES
【PHPのバージョン】http://ruzyus.blog136.fc2.com/blog-entry-28.html
【EasyBotterの改造】改造していない
【手動】 動く
【実行】 手動
【CRON】 使っていない
【不明点】 リプライに反応しない

botにニックネーム機能を実装させたくて、こちらのソースを利用させていただきました。
(好感度機能と診断は不要ですが)
http://ruzyus.blog136.fc2.com/blog-entry-28.html

ひとまず何もいじらずにUPしたところ、

"The Twitter REST API v1 is no longer active. Please migrate to API v1.1. https://dev.twitter.com/docs/api/1.1/overview.&quot;

というエラーが出てしまったので、APIを叩く末尾のソースを元のEasyBotterからコピペして修正したところ、
通常POSTはできるようになりましたが、リプライを送っても反応がありません。
TLにも反応していないようです。

元のEasyBotter本体のままUPすると通常通りリプライに反応してくれます。

ソース置き場になっているブログは作成者の方は見ていないのか、
ずっと更新が無いようでしたのでこちらに書かせていただきました。

過去ログを調べて上記botに関する記述でリプライに関する記事は見つけられませんでした。
元のEasyBotter.phpにニックネームに関する記述だけコピペしたり、
上記botのソースに、EasyBotter本体からリプライに関する記述を見比べたりしてみましたが
どうしても上手くいきません。

末尾のAPIを叩く命令以外は変更していません。原因がわからず困っています。
同じソースを使っているかたいらっしゃいますか?

一応ほぼ手を付けていないのでこちらに書き込みましたが
スレチでしたらすみません。

687名無しさん:2013/06/17(月) 16:23:55
>686
他所の改造されたモノはここに書いちゃだめ。

688名無しさん:2013/06/17(月) 16:59:03
ちょっと上のレスの>>682にも書いてある通り、スレ違いですよ

とはいえ、ルージュさんの改造は正しいスレで聞いても
「訳解らずに動かして暴走させたら迷惑かけるのでプログラミングの勉強しましょう」
「本家がバージョンアップする度に、改造のバージョンアップを人に頼るぐらいならやらないほうが良い」
みたいなレスが付くのが定番化してるので誘導して良いのか分かりませんが…

ルージュ版はTwitterAPI1.0だった頃から、勉強しないと動かせない代物でしたので
初心者向けではないと思いますよ

689名無しさん:2013/06/18(火) 00:50:10
>>687
>>688

うーんやっぱりスレチでしたね。すみません。

過去にリンクが貼られていたブログが一番有力かと思ったんですが、
既に閉鎖されており完全に手詰まりになってしまいました。
一応ダメもとで改造スレできいてみます。

ご指摘ありがとうございました。

690名無しさん:2013/06/20(木) 16:34:12
>>685
返事遅くなりました、ありがとうございます
まさしくそれでした・・・ 新しいIDに変更した所おとなしくなってくれました
すっかりそこの設定部分のことを忘れてました(;・∀・)

691名無しさん:2013/06/21(金) 02:56:33
【バージョン】 Ver.2.1.2
【設置鯖名】 ロリポップ
【PHPのバージョン】5.3
【手動】 動く
【実行】 ロリポ/自動更新
【実行間隔】 5分間隔(CRON等で定期的に実行している場合)
【不明点】 学習機能について


botに学習機能を実装したくてhttp://tabmanual.blog.fc2.com/blog-entry-9.htmlこちらの構文を参考にさせて頂きました。

例)食べ物→バナナ

とリプライを送るとテキストファイルにバナナを書き込み、お腹すいたのリプに【バナナ】どうぞと言う所までは成功しました。
しかし、食べ物→バナナ、食べ物→リンゴ、食べ物→パン、など、単語を増やして行くと、【バナナリンゴパン】どうぞ、と、
全ての単語を続けて出してきます。
1個1個出させるにはどうしたらいいのでしょうか・・・。


if(strpos($text,"{food}") !== FALSE){
$txtfile = file_get_contents("food.txt");
$txtarray = explode("\n",$txtfile);
$wl = $txtarray[array_rand($txtarray)];
$text = str_replace("{food}",$wl,$text);
}


食べ物→に反応してfood.txtに単語を辞書に登録
if(strpos($reply["text"], "食べ物→") !== FALSE){
$myFile = "food.txt";
$fo = fopen($myFile, 'a') or die("can't open file");
$cl = preg_replace("@\.?\@[a-zA-Z0-9-_]+\s@u","",$reply["text"]);
$cl2 = str_replace("場所→","",$cl);
$stringData = $cl2;
$stringData .= "\n";
fwrite($fo, $stringData);
fclose($fo);
}


この様なソースを使用しております。

また、@●●bot お腹すいた→ @XXXX 【バナナ】どうぞ
と言うリプライでのやりとりではなく、定期ポストにて【バナナ】食べたいなぁ、と呟かせたいのですが、
data.txt内に{food}食べたいなぁ、と入れても【空白】食べたいなぁ、としかツイートしません。
data.txt内には{food}は使えないのでしょうか?

色々探してみましたが、探し方がよくないのか求めるものに辿り着けずこちらに駆け込みました。
どうかご指南の程宜しくお願いします。

692名無しさん:2013/06/21(金) 10:14:14
>>691
>>1
スレチの人多いな。よく見て改造はこのスレはだめだよ

693名無しさん:2013/06/21(金) 12:38:49
>>692

申し訳ありませんでした。
初歩的な質問かと勝手に思い込みこちらに書き込んでしまいました。
該当スレにて再質問させて頂きます。

694名無しさん:2013/06/21(金) 16:48:21
TL反応に関してはphpさんのスレでも正常動作していないような検証がでてるから修正待ちじゃないかなあ

695名無しさん:2013/06/22(土) 01:51:14
初心者すぎてすみません。ちょっと長くなります。
最初は2.0.4を使っていて、けど、6/12から動かなくなってしまいました。
最新の2.1.2をDLして、PEARフォルダとlog.datとEasyBotter.phpを入れ替えて
サーバーUPしてもやっぱり作動しなくて、
さっき、全部入れ替えてみました。
アップしたフォルダの中身が真っ白で、いろいろ試したり確認したり、
その件はここを一通り読んで、解決したのですが、
リプライを手動で試そうとしても
「○分以内に受け取った@はない」
定期ポストしようとしても
object(SimpleXMLElement)#11 (1) {
["error"]=>
string(119) "The Twitter REST API v1 is no longer active. Please migrate to API v1.1. https://dev.twitter.com/docs/api/1.1/overview.&quot;
}
(ヴァージョン1.1に移行してください的なエラー)
が出ます。

ちなみに【バージョン】 Ver.2.1.2(←今、これにしたばかり)
【設置鯖名】 さくら
【PHPのバージョン】5.2?スタンダードで今まで普通に機能してました
【手動】 動かない
【実行】 手動
【不明点】 上記エラー

構文に詳しくないので、プログラムは必要な個所以外触っていません。
今回も2.1.2のフォルダの中身の新しいbot.phpやsetting.phpなども使用していて
2.0.4の時から使いまわしたのはreply_pattern.phpとdata.txtだけです。
(この2つは、新しく編集するが面倒と言う理由です。)
新しく作ったフォルダをFFFTPでアップロードして、bot.phpを叩いても、
ツイートは上記英文エラー、リプライは@を受け取ってない、の状態です。

一応、この掲示板は見直したつもりですが(見落としがあればすみません)、
プログラムに詳しくないので、>473様の方法も良く分からず試せません。
settingのBotIDも間違ってないし、ツイートのデータ(テキスト)も
返信のreply_...phpも、先日まで使っていたもので不備は無いはずです。


何を直すか、何を試すか、
何かアドバイスを頂けたらと思いますので、
よろしくお願いします。

696名無しさん:2013/06/22(土) 14:38:21
>695さん
同じ症状で悩まされていたものです。
6/12以降動作が止まっていたのですが、最新版の2.1.2にアップすることで解決しました。
具体的な手順についてですが

1.現在のデータのバックアップをとる
2.現在アップされているデータを全てサーバ上から削除
3.2.1.2をダウンロードして解凍、全てアップ(__MACOSXはアップしない)

4.バックアップデータから以下のファイルのみアップ(内容は特に書き換えない)
 data.txt/reply_pattern.php

5.setting.phpもそのままアップしてもOKな様子でしたが、ビビりなので
 2.1.2に同梱されていたsetting.phpに、
 バックアップデータの同ファイルから情報をコピペして上書き保存し、アップ

6.2.1.2に同梱されているEasyBotter.phpを開き、473さんが書かれているソースに
 丸ごと書き換え、上書き保存してアップ

以上です。
もともと一定時間おきに呟く、リプを受けたら返す、程度の簡単な挙動でしか
動かしていなかったのですが、手動でもcronでも実行されるようになりました。
サーバの情報は以下の通りです。

【バージョン】 Ver.2.1.2
【設置鯖名】 ロリポップ
【PHPのバージョン】5.2

ご参考になれば幸いです。

697名無しさん:2013/06/22(土) 19:50:10
>696さま
695です。
動きました、ありがとうございました!
簡潔で具体的なご指示をいただけたおかげで、
プログラム云々に詳しくない私にもちゃんと出来ました。
こちらも、定期postと返答のみのシンプルなBotでしたが、全部で10体ほどあり、
最初の1つのバージョンアップでつまづいたまま途方に暮れていたところでしたので、
本当に助かりました。
しかも、多くの方が参考にして「良かった」と言ってらっしゃる
473さんのソースについても、自分には知識が無いので使えないと思っていましたが、
やり方を教えていただいた通りに実装できたのでそれも有難いです。
ありがとうございましたm(_ _)m

698名無しさん:2013/06/24(月) 02:42:47
【バージョン】 Ver.2.1.2
【設置鯖名】 SiteMix
【手動】 動かない
【不明点】 ファイルが開けない

とても初歩的な質問失礼いたします。
ファイルマネージャにファイルをアップロードし、bot.phpに手動でアクセスする段階です。
data.txtとlog.dat、replay_pattern.phpのパーミッションは666に変更し、
ファイルはすべてtwitterbotというファイルに格納したため
http://ユーザー名.sitemix.jp/twitterbot/bot.phpとURLを入力するのですが404エラーになります。
見落としがあったのかもしれませんがスレを見ても解決法が分からなかったので、どなたか教えてください。お願いします

699名無しさん:2013/06/27(木) 02:33:47
EasyBotter Ver2.04 beta から Ver2.1.2 に無事バージョンアップ出来たので報告だけ
何かの参考になれば

EasyBotter は改造を加えていないまま使ってます

手順は>696 さんとほぼ同じですが、
手順5,6を省いて、
setting.php はそのまま
EasyBotter.php は EasyBotter公式に、
「バージョン2.1.1で起きていた『リプライに一つだけしか反応しない』などのバグを修正しました。473さんありがとうございます……!」とあるので、変更せず
(Ver2.1.2では修正されてる?)
あとはパーミッションの設定

PEARフォルダのアップロードが面倒だったので
Ver2.04 beta のまま使ったら、手動では動くけどリプライを返さず
「Could not authenticate you2分以内に受け取った未返答のリプライはないようです。」
というエラーが出ました。

PEARフォルダも Ver2.1.2 のものに入れ替えたら
「2分以内に受け取った未返答のリプライはないようです。」
となり、リプライを送ると正常に返せるようになりました

【バージョン】Ver.2.1.2
【設置鯖名】 @pages
【PHPのバージョン】PHP-5

700名無しさん:2013/06/27(木) 14:30:19
改造板の方で質問しましたが総スルーだったのでスレチかと思いこちらにお邪魔します。
マルチになりますがすみません。

【バージョン】 Ver.2.1.2
【設置鯖名】 ロリポ
【手動】 動く
【実行】 ロリポCRON
【実行間隔】 10分間隔
【不明点】自動フォロー返し時にリプライを送りたい

バージョンアプデ後、今まで使えてたフォロー返し時リプ返しが使えなくなりました。
改造はしていません。
今まで非公式wikiの「自動フォロー返しした時にリプライで知らせたい」に
リプ台詞のバリエーションを増やした形で問題なく動作してましたが、
easybotter.php内の記述がだいぶ変わってしまったのと、
当然ですが旧版の自動フォロ返のくだりだけ持ってきて置き換えても無反応でした。
自動フォロー返し自体は未改造で問題なく動いているんですが、
同時にリプを返す部分が旧版の方法しか見つかりません。

【古いやつ冒頭】
//自動フォロー返し
function autoFollow(){
$response = $this->getFollowers();
$followList = array();

【新しいやつ冒頭】
//自動フォロー返しする
function autoFollow(){
$followers = $this->getFollowers();
$friends = $this->getFriends();

非公式wikiの米欄にあった
「自動フォロー返しした時にリプライで知らせたい、の通りにやるとバージョン2.1.2では動きません」
と同じ状況なんですが、どなたか解決できる方はいらっしゃいませんか?
根本的な見落としをしていたらすみません。
ご検討お願いいたします。

701名無しさん:2013/06/27(木) 17:53:39
いや、まだ改造してなくても、機能追加(改造)の質問ならば
初心者スレじゃありません。「EasyBotter2.0その2」で合ってます

EasyBotter2.0その2
http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1323932658/192-
botが止まった質問者が一気に増えて回答に回る人がちょっと不足気味っぽいのと
スレが質問ごちゃっとなったので見落とされちゃったと思います

http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1323932658/192-

702名無しさん:2013/06/27(木) 18:47:19
自動フォロー機能まわりは製作者へ要望出すのが手っ取り早いんじゃないかな
それか自力で改造するか

703名無しさん:2013/06/27(木) 19:43:00
製作者さんご多忙のようですし自力で改造した方が早いかと…
機能の更新までおんぶに抱っこだと、製作者さんに負担がかかりすぎて
EasyBotterのバージョンアップが危うくなると思いますけどね

704名無しさん:2013/06/27(木) 22:28:43
>>703
負担になるような機能をつける、というより少し見直しの余地はあるのではと思ったんですけど
まあそれは製作者ご自身が判断することですよね、更新あったら良いねくらいの期待度

705700:2013/06/28(金) 01:32:18
>>701
見落とされとスレチスルーを見分けられずすみません!
ありがとうございます。

>>702->>704
色々ご意見ありがとうございます。
探しても見当たらないのは、改造が追いついていないからのようですね。
自分は素人なので先駆者の方に頼るしかなく不甲斐ないのですが…
改造スレで返信を頂けたので少し様子を見てみます。

706名無しさん:2013/07/04(木) 03:39:08
申し訳ございません。とても初歩的な質問で恐縮ですが、どうしても
自分では解らず教えて頂けたらと 書き込ませて頂きます。

【バージョン】Ver.2.12
【設置鯖名】ロリポップ
【手動】動く
【実行】GAE-Cron Club
【実行間隔】1分間隔
【不明点】
全部で4体のbotを動かしているのですが、その内の一体のみ

Warning: preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 0 in /home/users/1/***/web/EasyBotter.php on line 321

と 出て 該当する部分が

//タイムラインへの反応を作る
function makeReplyTimelineTweets($timeline, $replyPatternFile){
if(empty($this->_replyPatternData[$replyPatternFile])){
$this->_replyPatternData[$replyPatternFile] = $this->readPatternFile($replyPatternFile);
}
$replyTweets = array();
foreach($timeline as $tweet){
$status = "";
//リプライパターンと照合
foreach($this->_replyPatternData[$replyPatternFile] as $pattern => $res){
if(preg_match("@".$pattern."@u",$tweet["text"], $matches) === 1 && !preg_match("/\@/i",$tweet["text"])){ (←この部分が321)
$status = $res[array_rand($res)];
for($i=1;$i <count($matches);$i++){
$p = "$".$i;
$status = str_replace($p,$matches[$i],$status);
}
break;
}
}
if(empty($status)){
continue;
}
//idなどを変換
$status = $this->convertText($status, $tweet);
//フッターを追加
$status .= $this->_footer;

改造は一切していませんし 他の3体はちゃんと動いています。
なので、この1体だけがエラーを出している意味が分からなくて質問させて頂きました。
よろしくお願いします。

707名無しさん:2013/07/04(木) 08:05:53
>>706
エラーメッセージをまんまググるといくつか判りやすいヒントがでてきますよ 
この部分→ Warning: preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 0

708名無しさん:2013/07/05(金) 22:44:42
>>707
ありがとうございます。
初心者過ぎて・・・
色々試しては見たのですが
頑張って解決したいと思います。

709707:2013/07/05(金) 23:07:36
>>706
TL返信用php内での正規表現の記述ミスが多いみたいですが、そのファイルの文字エンコードが違う可能性もあるようです
まずは自分で書いたTl返信に書き漏らしや抜けがないか確認してみて

710名無しさん:2013/07/07(日) 13:42:46
【バージョン】 2.1.2
【設置鯖名】 ロリポップ
【PHPのバージョン】5.2、5.3、5.4の全てで実験済み
【手動】 ランダムポストは動くが、リプライとタイムライン反応は動かない
【実行】 普段はロリポのcronですが、今は手動で動作確認中
【実行間隔】 cronを使うときは5分間隔
【不明点】
6/12辺りから突然リプライを返さなくなっていたので、直そうと色々試してみました。

結局、どうしても原因が分からないので、2.1.2をダウンロードしてきて何の改造もせずに
そのままアップロードしたもの(dataやリプライファイルも配布状態そのまま)を手動で動かしてみた
のですが、やはりランダムポストしか実行されません。リプライとタイムラインに関してはそれぞれ、

〜分以内に受け取った未返答のリプライはないようです。
〜分以内のタイムラインに未反応のキーワードはないみたいです。

と表示されます。もし何か分かる方がいらっしゃれば、ご教示ください。よろしくお願いします。

711名無しさん:2013/07/09(火) 01:49:58
>>709
お気に留めて頂いて、ありがとうございます。
書き漏らしや抜けがないかも確認してみたのですが… おかしな点も無く お手上げの状態です。
幸いの所、以前は全く TLに反応しなかったのですが
今はエラーが出つつもTLに対しても反応する様になったので…
もう今の所はコレでいいかなぁー?とか思って居ます。
今後、もう一度 勉強し直して理解しようと考えています。
ありがとうございました。
>>707さんもありがとうございました。

712名無しさん:2013/07/10(水) 19:24:10
かなり初心者です。すみません。

わぁいあかりだいすきBot様のように 人気ワードなどを引用するにはどのようなものをすればよいのでしょうか?
調べ方も分からないので……。
是非お願いします。

713名無しさん:2013/07/10(水) 20:06:23
>712
かなり初心者には無理です。
暴走させて迷惑をかけるのがオチ。

714名無しさん:2013/07/10(水) 22:09:57
>713
難しいですか…。
ちょっとずつそういうのを学んでいつかまたやってみたいですね……。
有難うございました!^^

715名無しさん:2013/07/13(土) 20:28:12
お世話になります。当方初心者です。
bot制作にあたってサイトの説明や非公式wikiなどを読んだのですが、リプライに関して質問があります。
例)フォロワー「@bot おみくじ」→bot「@フォロワー 今日は○○。ラッキーカラーは□□です」
(○○には、大吉、凶などの運勢、□□には、赤、黄色などの色)
というように、ふたつの言葉をランダムで設定できることは可能でしょうか。
検索しても出なかったので…よろしくお願いします。

716名無しさん:2013/07/14(日) 15:40:57
>>715
改造に該当するのでスレ違いとなります。

717名無しさん:2013/07/14(日) 16:07:23
>>716
そうでしたか、すみません。ありがとうございます。

718名無しさん:2013/07/19(金) 21:51:48
【バージョン】 Ver.2.1.2
【設置鯖名】 さくらインターネット スタンダード
【PHPのバージョン】PHP 5.2.17
【手動】 数日前までは動いていた
【実行】 さくらCRON
【実行間隔】 2分間隔
【不明点】
数日前まではwikiの手順通り、手動で定期呟きリプライも成功し、投稿に成功したというメッセージも出ていたので
cron設定を行ったんですが、一度はちゃんと呟いてくれましたがリプライが上手くいかず調整していました。
また一から手動実行をやり直したのですが、真っ白なページになります。
一通り読んで、テンプレの文字コード、改行コード(CR+LF)になっていたので全てLFに直しました)、パーミッションも指定したファイルは666にしbot.phpは755、それ以外は変更していません.
ですが、真っ白なページのままで変わらずbotも動かなくなってしまいました…。
何か分かる方がいましたら、ご教示よろしくお願いします。

719名無しさん:2013/07/20(土) 02:40:11
>>718

ファイルの中身のチェックはしたの?
リプライファイルとかに記述ミスはない?
カンマやらカッコやら一つでも余計だったり足りなかったりしたら動かないよ 真っ白ページになる

720名無しさん:2013/07/20(土) 13:50:11
初めて質問させて頂きます。

【バージョン】 Ver.2.05→Ver.2.1.2
【設置鯖名】 ベストスペース
【PHPのバージョン】5系
【手動】 現在は動いていない
【実行】 cron-job
【実行間隔】 2分間隔
【不明点】
2013年6月12日よりbotが急に動かなくなりましたので、
バージョンを2.1.2に切り替えました。
PEARフォルダ含む全てのファイルを削除して
新しいVer.2.1.2のものにアップロードし直し、
Ver.2.05で使っていたdata.txtやreply_pattern.php等も
以前動いていた状態そのままで構文も一切いじらず、
パーミッション設定・文字コード等全て確認し上書きアップロードしました。
しかしbot.phpを見に行くと真っ白なままでした。

easybotter.phpだけに原因があるのかと思い、試しに
Ver.2.05のeasybotter.phpに差し替え戻した所『2分以内に受け取った@はないようです。』の表記がなされましたが、
Ver.2.1.2のeasybotter.phpで上書きした途端、また真っ白な画面に戻ってしまいます。
easybotter.phpの構文はダウンロードした時のままいじっていません。
また、Ver.2.05のeasybotter.phpで再度上書きした際『2分以内に受け取った@はないようです。』という
表示はされますが、もちろん呟きやリプライは一切行なってはくれません。

是非ともこの問題の解決法を教えて頂ければと思っています…。
よろしくお願いします。

721718:2013/07/20(土) 18:48:52
>>719
ファイルを全てチェックし、アップロードし直しましたが真っ白なページのままでした。
最初から作り直すことにします。
ありがとうございました。

722名無しさん:2013/08/10(土) 22:44:50
【バージョン】 2.1.2
【設置鯖名】 ロケットネット
【PHPのバージョン】5.2.1
【手動】 動く
【実行】 CRON
【実行間隔】 5時間 間隔
【不明点】 (エラーメッセージがあればコピペ推奨)
現在、自動ツイートのみでRandomにて運用しています。
data.txtのままではどうやっても改行されなかったため(自分のやり方が悪いのか分かりませんが、設定した改行)
data.phpを作成し、
-------------------------------------
<?php
$data = array(
"1つめ1行目
2行目
3行目",

"2つめ1行目
2行目
3行目",
);
------------------------

と設定していますが、これをローテーションへと変更すると、1度目はツイートされるのですが、
<?php
が一番下の行へと移動してしまい、
そのままページを更新すると真っ白に。
アドレスをたたき直すと500エラーに。

どうすれば思った通りに動作してくれるでしょうか?


----------------------------------------------
data.txt で改行を有効化できれば解決なのですが・・・。

setting.phpには
$dataSeparator = "`"; と記述しております。
この場合、data.txtへ書き込む内容としては、3ツイート分で↓のような形で書いています。

うにょらー`もげらー`(。ε゜)ぷえーっ
sugeeeee`mogeeeeee`Yeath`(´・ω・)
ヤ○ー`にょーん`おでこにょーん`Yeath`ぬんぬん

という形になっています。この場合は正しいのでしょうか?

723名無しさん:2013/08/14(水) 14:04:49
>>722
改造はスレ違いですので、スレ立てるほどじゃないその他の質問スレに
やり方を載せておきました。

724通りすがり:2013/08/27(火) 04:32:03
先ほど新しいすれを間違えてたててしまった者です。
見づらくしてしまいすみませんでした。丁寧なご指摘ありがとうございます。


もう一度同じことを書きますが、
サイトに記述してある全ての操作を行い、圧縮してからサーバーにアップロードができないのですが、なにが悪いのかまったくわかりません。
@PAGEさんを借りているのですが、ファイルマネージャーでアップすると以下のようにエラー表示が出されてしまいます。

『Checking files:
ファイル EasyBotter3.zip は OK
Transferring files to the FTP server:
ファイル EasyBotter3.zip は FTPモード FTP_BINARY を使用して FTPサーバに転送されました』

何日もかけていろんなサイトもめぐって、認証やらも全て行い手順通りにしていると思っているのですが....。
FFFTPでアップロードすると、どうやらPEARやMACOSXのフォルダが送れないみたいです。
原因など思い当たることが少しでもありましたら教えて頂けるとありがたいです。


サーバーにあげるためにzipで圧縮すると表記してあったとはどこなのか明記を、ということでしたが、FFFTPでアップロードしても駄目だったようなので以下のサイト様を参考にさせて頂きました。

http://ameblo.jp/honigkuchen-summ-summ/entry-11229233566.html
ここの参照サイトの真ん中より少し下の(4)圧縮作業というところや、
http://alqrantz.blog137.fc2.com/blog-entry-37.html
ここの(3)サーバーにupする、というところに表記してあります。

725通りすがり:2013/08/27(火) 20:21:46
↑の件について、無事に解決致しました。
スレを間違えてたててしまったり、お騒がせしてすみませんでした。

726インクセーバー:2013/08/28(水) 21:40:01
(T_T)山形県平田牧場産で、味はさっぱりだがコクのある上品な味わいで、超<a href="http://9fhuuxp.d4vid.com" title="プリンター インク">プリンター インク</a>豚らしい残念ながら短時間でがっついてしまったため、記憶はおぼろげ DBE27C120BC21EDF803E176AC4C03F53 ながら、美味かったことに間違いは無しこの後も、出雲市内の企業を時間ギリギリで渡り歩きヘトヘト。 “お茶の間の王様”とも言えるテレビであれば、老若男女問わず、顧客にできるSONY<a href="http://nnppar4k4.d4vid.com" title="hp プリンター インク">hp プリンター インク</a> VAIOパーソナルコンピューター Pシリーズ VPCP119KJDPW グリップスタイルで、もっと自由な操作感。 インクセーバー http://o0yfrea9nx.d4vid.com

727名無しさん:2013/09/06(金) 20:16:25
【バージョン】 Ver.2.1.2
【設置鯖名】 @pages
【PHPのバージョン】5.2
【手動】 動く
【実行】 GAE
【実行間隔】 2分間隔
【不明点】 はじめまして、お世話になります。
昨日のお昼頃全ての設定を終え、

728名無しさん:2013/09/06(金) 20:22:08
727です、誤って途中で投稿してしまいました、すみません。

昨日はずっと正常に動いておりました。リプライ、TLどちらも共に反応しました。しかし、本日TLもリプライもどちらも反応しなくなっており、手動で試したところ、問題なく反応しました。cronの問題かと思い、確認をしましたが、on time succesと出ており、通常に動いているようでした。特にファイルもいじっておらず、急に反応がなくなってしまったので何が原因だかさっぱりわかりません。どなたかわかる方いらっしゃいましたら解答していただけると助かります。よろしくお願いします。

729名無しさん:2013/09/09(月) 02:44:39
>>728
Cron JobsでなくLogsで、ラジオボタンをLogs with minimum severityセレクトメニューをErrorにすると過去のエラーを確認出来ます。
参考・ http://onebot.wiki.fc2.com/wiki/GAE%E7%AE%A1%E7%90%86%E3%82%B3%E3%83%B3%E3%82%BD%E3%83%BC%E3%83%AB%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6
それとGAEは無料分を越えると自動ストップ、16:00でリセットされ自動再開されるので、ご存じなければPerformanceの変更をした方がいいです。
参考・ http://onebot.wiki.fc2.com/wiki/Performance%E5%A4%89%E6%9B%B4

730名無しさん:2013/09/11(水) 23:23:53
>>729
解答ありがとうございます。
先程、教えていただいた方法でエラーを確認したのですが、昨日までは特になにも無かったのですが、今日の朝からいきなりErorr 500と出ておりびっくりしました。cronが原因だったようなので、検索かけて直していこうと思います。ありがとうございました◎

731名無しさん:2013/09/16(月) 17:36:51
【バージョン】 Ver.2.1.2
【設置鯖名】@pages
【PHPのバージョン】5.3.3
【手動】 動かない
【実行】 gae
【実行間隔】 2分間隔
【不明点】リプライしない

数日前からリプライだけ全く反応しなくなりました。
定期ポスト・TL返信はcronで実行できているのですがリプライだけ手動でも動かず、「2分以内に受け取った未返答のリプライは〜」と表示されるだけで返信しません。
パーミッションを色々と変えてみたりもしましたが、改善せず……。
サーバーのファイルを全削除してダウンロードしたてのファイル(setting.phpのみ使い回し)と入れ替えても状況が変わらず、完全に行き詰ってしまいました。どなたかお知恵をお貸しください。

732731:2013/09/19(木) 17:08:17
自己解決しました。スレ消費申し訳ありません。

733シチズン エコドライブ:2013/09/23(月) 14:01:33
Bring to an end Whining And Commence your own special men Program Alternatively
シチズン エコドライブ http://www.dietasdeadelgazar.info

734womens boots:2013/09/23(月) 20:47:23
Hi there to every body, it’s my first visit of this web site; this web site consists of amazing and truly good material in support of visitors.
womens boots http://libreriaastarte.com/womens-boots.html

735louie vuitton:2013/09/26(木) 23:34:15
That’s in fact a fastidious YouTube movie pointed out inside this piece of writing concerning how to write a paragraph, so i got clear idea from here.
louie vuitton http://insightkenya.com/louie-vuitton.html

736ughs:2013/09/28(土) 16:40:21
That’s genuinely a nice video stated within this article regarding how to write a piece of writing, thus i got clear idea from here.
ughs http://ganyu-window.com/ughs.html

737inexpensive ugg boots:2013/09/28(土) 19:10:43
One more thing that I would like to share at this place is that, whatever you are using free blogging service but if you don’t update your weblog on on a regular basis basis then it’s no more worth.
inexpensive ugg boots http://libreriaastarte.com/inexpensive-ugg-boots.html

738ugg boot outlet:2013/09/28(土) 20:14:18
One more thing that I would like to share here is that, doesn't matter what you are using free blogging service but if you don’t update your webpage on regularly basis then it’s no more worth.
ugg boot outlet http://libreriaastarte.com/ugg-boot-outlet.html

739ugg sneakers:2013/10/08(火) 03:05:12
What's up to every , because I am really keen of reading this blog’s post to be updated daily. It consists of nice stuff.
ugg sneakers http://libreriaastarte.com/ugg-sneakers.html

740名無しさん:2013/10/09(水) 17:58:44
【バージョン】 Ver.2.1beta
【設置鯖名】 @pages
【PHPのバージョン】5.2
【手動】 動かない
【実行】 GAE2つ, Free Web Cron Service1つ
【実行間隔】 2分間隔
【不明点】 10月9日の朝8時ごろから急にポスト、返信など全ての機能が停止し、
手動で動かしてみたところ"Could not authenticate you"と表示されるようになりました。
GAEとFWCSで動かしているbotが同時に停止しており、Cronの問題ではないようです。
どのbotのスクリプトも一切変更していないので、原因に心当たりもありません。
お知恵をお貸しいただけないでしょうか。

741名無しさん:2013/10/10(木) 03:39:23
>>740
「phaがときどき見るかもしれないスレ」を見てみて
phaさんのサイトから認証をしてたら、何人か報告があるので同じ症状だと思う
対策してくれるみたいなのでそれ待ちですねー。または自分でviaを設定するか

742名無しさん:2013/10/10(木) 09:30:47
>>740
ふおお…本当だ…!
ありがとうございます!

743名無しさん:2013/10/10(木) 09:31:32
742です
すいません、>>741でした

744名無しさん:2013/10/13(日) 13:45:44
【バージョン】 Ver.2.1.2
【設置鯖名】 レン鯖/@pages
【PHPのバージョン】5.2.11
【手動】 動かない
【実行】 Free Web Cron Service
【実行間隔】 15分間隔
【不明点】
easybotterさんが動かなくなる10月8日くらいのエラー以降にbotのアカウントでAPIに登録しConsumer keyなど必要な情報を取得し、setting.phpに書き込んでアップデートした後のことです。

[[Twitterへの投稿に成功しました。
@に投稿したメッセージ: http://twitter.com//status/]]

上記のような文章が出てきました。投稿はされていません。上記はランダムポストのテストだったのでTL反応は出来ないかと思ってテスト垢でテストをしてみたところ。

[[3分以内に受け取った未返答のリプライはないようです。
Twitterへの投稿に成功しました。
@に投稿したメッセージ: http://twitter.com//status/]]

ちなみに一行目はリプライ反応なので問題ないです。2,3行目は5分以内にTLに指定語句があった場合反応するはずです。
反応はしていますが、書き込みはされません。
IDの取得が出来ていないのかと思いましたがsetting.phpではちゃんと正しいIDが書かれていました。

どなたか対処の仕方をご教授いただけると幸いです。
一応過去スレを見ましたが、漏れがあり質問が重複していたら申し訳ありません。

長文失礼しました。どうぞよろしくお願い致します。

745名無しさん:2013/10/15(火) 21:30:22
744です、こんばんは。
質問ですが自己完結しました。
実は自分でもよくわかっていないのですがAPIで新しいアプリケーションを作成し、念入りに設定をしたらうまくいきました。

ご迷惑おかけしました。そして見て少しでも考えてくださった方はありがとうございました。

757名無しさん:2013/10/22(火) 08:50:24
なんか、えらい書き込みが・・・↑

ええと、先日からBotが動きません。
公式でも言及されているように「Easy Botter」で設定されている分で、
別名でアクセスキーを取得しているBotは大丈夫です。
それで、公式からはpha様がBBSへアクセスキー取得の案内をされています。
その他に、非公式wikiでも、OAuthの認証に関連して、独自のアクセスキーの取得の仕方が紹介されています。
で、質問なんですけど、
初心者に近い人は、どっちを参考にした方が分かりやすいですか?
こんな質問ですみません;

773名無しさん:2013/10/26(土) 20:45:23
757です。
書き込みが埋もれたか、スル―されたか分かりませんが、
pha様が案内されていたサイト様が紹介されていた方法で
何とかなりました。
ありがとうございました。

838名無しさん:2013/11/08(金) 18:35:56
【バージョン】 Ver.2.1.2
【設置鯖名】 ぷらら
【PHPのバージョン】5.3.5
【手動】 動かない
【不明点】
http://www26.atwiki.jp/easybotter_wiki/pages/21.htmlにある
「Fatal error: Uncaught〜〜エラーが出ます」状態になるのですが
ここに記述されている事以外に原因や対策はあるのでしょうか?

ちなみに既に@pageに設置して問題なく動いているbotで
手動でもGAEでも動作しています。
今回ぷららに移動したいだけなのですが
手動で試した所、このようなエラーになってしまいます。
過去のスレを覗いてもサーバを変えたら動いたというレスがありましたが
何年も前のレスだったので、何か新しい対策でもあればと思い質問させていただきました。[
また、過去スレの
http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1265625817/726
に対策のようなものがあるのですが具体的にどこをどのように修正すればいいのかがわかりません。


ご存知の方がいらっしゃいましたらよろしくお願いします。

839名無しさん:2013/11/09(土) 11:15:41
【バージョン】 Ver.2.1.2
【設置鯖名】 未来サーバー
【PHPのバージョン】5.2(〜5.4選択可)
【手動】 動かない 
【実行】 Free Web Cron Service
ボットに発言させたメッセージの下に
Could not authenticate you
と表示されています。

@pagesが今月でbot不可になるらしいので同じファイルを
PHPやcronが使える未来サーバーに設置したところ
上記のエラーが出ました。
未来サーバー用の設定などが必要なのでしょうか?

840名無しさん:2013/11/09(土) 11:38:00
839追記、何度かBOTのURLを開いていたら以下のメッセージが出ました。(ID部分は***に置き換えてます。)
致命的なエラーとは何なんでしょうか?
Fatal error: Uncaught <table border="1" cellspacing="0">
<tr><td colspan="3" bgcolor="#aaaaaa" align="center"><b>Exception trace</b></td></tr>
<tr><td align="center" bgcolor="#cccccc" width="20"><b>#</b></td><td align="center" bgcolor="#cccccc"><b>Function</b></td><td align="center" bgcolor="#cccccc"><b>Location</b></td></tr>
<tr><td align="center">0</td><td>HTTP_OAuth_Consumer_Request->send()</td><td>/home/***/public_html/***/PEAR/HTTP/OAuth/Consumer.php:257</td></tr>
<tr><td align="center">1</td><td>HTTP_OAuth_Consumer->sendRequest('http://api.twitt&hellip;', Array, 'POST')</td><td>/home/***/public_html/***/EasyBotter.php:489</td></tr>
<tr><td align="center">2</td><td>EasyBotter->_setData('http://api.twitt&hellip;', Array)</td><td>/home/u207115875/public_html/nsg/EasyBotter.php:511</td></tr>
<tr><td align="center">3</td><td>EasyBotter->setUpdate(Array)</td><td>/home/u207115875/public_html/nsg/EasyBotter.php:114</td></tr>
<tr><td align="center">4</td><td>EasyBotter->postRandom('data.txt')</td><td>/home/u in /home/***/public_html/***/PEAR/HTTP/OAuth/Consumer/Request.php on line 224

841名無しさん:2013/11/09(土) 14:00:31
>>839
うちと同じ事象ですね。
>>838にある過去スレのプログラムで試したら
どうやらサーバ側がopensslがenableになっていないらしいということまではわかったのですが
そこから先をどうして修正していいのかわからず。
@page以外にPHP5対応の良い無料サーバがあればそこでもいいんですが
探しているけど個人情報入力必須の所ばかりで…

842名無しさん:2013/11/24(日) 22:26:24
【バージョン】Ver.2.1.2
【設置鯖名】XREA
【PHPのバージョン】5.2.5
【手動】 タイムライン反応のみエラー
【実行】 CRON
【実行間隔】 5分間隔
【不明点】
かなり前から(2.1.2にしてから?)、タイムライン反応をしなくなっています。
>>838>>840と似たような状況ですが、ランダムポストとリプライ反応は正常に動作しています。
bot.phpアクセス時に画面に出るエラーは、次の通りです。(ID部分等、置き換えてます)
-----------------
5分以内に受け取った未返答のリプライはないようです。

Fatal error: Uncaught <table border="1" cellspacing="0">
<tr><td colspan="3" bgcolor="#aaaaaa" align="center"><b>Exception trace</b></td></tr>
<tr><td align="center" bgcolor="#cccccc" width="20"><b>#</b></td><td align="center" bgcolor="#cccccc"><b>Function</b></td><td align="center" bgcolor="#cccccc"><b>Location</b></td></tr>
<tr><td align="center">0</td><td>HTTP_OAuth_Consumer_Request->send()</td><td>/virtual/***/public_html/***/***/PEAR/HTTP/OAuth/Consumer.php:257</td></tr>
<tr><td align="center">1</td><td>HTTP_OAuth_Consumer->sendRequest('https://api.twit&hellip;', Array, 'GET')</td><td>/virtual/***/public_html/***/***/EasyBotter.php:494</td></tr>
<tr><td align="center">2</td><td>EasyBotter->_getData('https://api.twit&hellip;')</td><td>/virtual/***/public_html/***/***/EasyBotter.php:533</td></tr>
<tr><td align="center">3</td><td>EasyBotter->getFriendsTimeline('0', 100)</td><td>/virtual/***/public_html/***/***/EasyBotter.php:194</ in /virtual/***/public_html/***/***/PEAR/HTTP/OAuth/Consumer/Request.php on line 232
-----------------

最初に設置したときはVer.2.05で、タイムライン反応も問題なく動作していました。
Ver.2.1.2にする際には、全てのファイルを一旦削除して、丸ごと新しいファイルをアップロードし直しています。

ttp://chack-lab.269g.net/article/17663817.html
↑こちらのブログの記事の内容と同じ状態のように思えますが、

http://jbbs.livedoor.jp/bbs/read.cgi/internet/6629/1265625817/726
↑こちらのプログラムを試したところ、以下の通りとなりました。ので、opensslに関して問題はない?のではと思うんですが…。
-----------------
Array ( [0] => tcp [1] => udp [2] => unix [3] => udg [4] => ssl [5] => sslv3 [6] => sslv2 [7] => tls )
-----------------

何かわかることがあれば、教えていただけますと幸いです。よろしくお願いいたします。

843名無しさん:2013/11/27(水) 18:34:14
【バージョン】Ver.2.1.2
【設置鯖名】@pages

今日気がついたのですが、定期的に時刻をつぶやかせていたbotが1時間近く遅れた時間をつぶやいてることに気が付きました
これはGAEが悪いのか、それとも時間取得するどっかの部分が悪いのかわかりません
とりあえずどのような方法で確認していけばいいのでしょうか?

844843:2013/11/27(水) 18:38:03
書き忘れ
txtには{hour}時{minute}分の形でつぶやくようにさせてるんですが、表記自体は問題ないでしょうか?

845名無しさん:2013/11/27(水) 22:33:29
>>843
同じく@pagesですが先日から1時間ほどずれています。cronも同じくGAEです。
過去スレにあった
<?php
echo date(c);
?>
を試したところ、タイムゾーンのズレはないのですが現在時刻がずれていますね……


ついでにお願いします
【バージョン】Ver.2.1.2
【設置鯖名】sitemix
【PHPのバージョン】5以上
【実行】 GAE
【実行間隔】 2分間隔
【不明点】リプライファイルを読み込まない

最初の1週間ほどは問題無く動いていたんですが、あるとき(更新したときではありません)から反応語句をリプライしても全てスルーしdata.txtからリプライするようになってしまいました。手動でもcronでも同様です。
他のサーバーでは問題無く返信するのでファイルの問題ではないと思います。属性も色々と試してみましたが変化はありません。こうなるまでは@pagesより安定していたのでsitemixに変更したいのですが……どなたかお知恵をお貸しください。

846名無しさん:2013/11/27(水) 22:38:52
>>843
>>1
非公式wikiはちゃんと確認した?
そこの時間わけのところに時間ズレのことが書いてあるからそれに従って確認を

GAEとプログラムの書き方のほかに鯖時間もずれてることあるよ

847843:2013/11/28(木) 09:26:50
GAEで7:00ピッタリにして、data.txtを{hour}時{minute}分{second}秒にして実験した所、
ちゃんと7:00にbotが作動しましたが、取得した時間は約1時間遅れていました
これはサーバーの方の問題と考えてよろしいでしょうか?
だとしたらこちらからどうにかする方法はないということですか?

848名無しさん:2013/11/29(金) 00:00:00
>>843、847
それだと鯖時間がずれてるのかもしれないね
こちらから鯖管理人へ問い合わせて修正してもらうしかないと思う

>>842
解決策はわからんのですが、そのエラーは毎回でるんだろうか?
うちのは普通に動いてるけど、一日1〜数回そのエラーが出たりすることがある
DLしたばっかりのEB本体で、TL反応だけオンにしても反応しないのかな

849842:2013/12/01(日) 18:36:49
>>848
ありがとうございます。普通に動作している場合でも、同様のエラーが出ることがあるんですね。
エラーは、おそらく毎回出ています。手動でbot.phpを何度叩いても同じエラーが出ます。

DLしたそのままの本体で、TL反応だけを有効にしてやってみましたが、やはり同じエラーが出ました。
同様に、リプライ反応のみを有効にした場合は、エラーになりませんでした。(「2分以内に受け取った未返答のリプライはないようです。」が表示される)

850名無しさん:2013/12/02(月) 19:43:03
ラズベリーパイ使いなよ。
cronが悪いとかサーバが悪いとかから解放されるよ。

851名無しさん:2013/12/05(木) 12:09:36
【バージョン】Ver.2.1.2
【設置鯖名】@pages
【PHPのバージョン】
【手動】 動く
【実行】 GoogleのCRON
【実行間隔】 3分間隔

バージョンを2.1.2にしてから、時々リプライやTL反応を二重投稿するようになりました。
log.datは改造もしていないし、パーミッションも666です。
Easybotter.phpは特定の人と会話しないように、の改造のみです。
If構文も問題ないようです。
なぜ二重投稿するのかわかりません。お手上げです。
なにか他に問題があるのでしょうか。
お分かりになる方がいらしたらご教示お願いします。

852名無しさん:2013/12/05(木) 17:22:09
【バージョン】 Ver.2.1.2
【設置鯖名】 ロリポ
【PHPのバージョン】
【手動】 動く
【実行】 ロリポのcron
【実行間隔】 5分間隔
【不明点】11月初旬からbotがツイートをしなくなりました
ただ手動では動くし8割はしっかり動作しているので理由が全く分かりません
ログを見たところツイートしてない時間帯はcronのログがありませんでした
もし理由が分かる方いらっしゃいましたらご教授お願いします

853名無しさん:2013/12/09(月) 22:08:44
【バージョン】 Ver.2.03
【設置鯖名】 CORESERVER
【PHPのバージョン】
【手動】 動く
【実行】 cron
【実行間隔】 6分間隔

【不明点】
>>26さんと同じなのですが、TL反応時に自分の発言した言葉を拾ってしまい、
自分に対してリプライを繰り返してしまいます。
(「おはよう」などの言葉に対して反応しているので、キーワード自体を外すのは難しいです)

他の動作に問題点は見られず、正常に作動しています。
>>27>>28にあるようにスクリーンネームを直し、応急処置も行ってみたのですが、
一向に自分に話しかけてしまいます…。
他にも対策方法ってありますでしょうか?お知恵を貸していただけますと幸いです。

854名無しさん:2013/12/10(火) 10:34:34
>>853
まずverが古過ぎてる。26さんも2.05頃の案件みたいだし
その後バグ取りが進んでるのでなるべく最新版にした方がいいと思う

855853:2013/12/11(水) 05:39:58
>>854
ありがとうございます。初歩的すぎる見落としですよね…すみません。
取り急ぎ最新版に差し替えて様子見をしてみます。
それでも症状が改善されなかった場合はまたこちらで相談させてください。

856名無しさん:2014/01/08(水) 22:53:21
この先「止まってしまった?」とここを見に来る人のためにあげときます

@TwitterDevJPのアカもチェックしておいた方がいいです
以下、そのツイートより↓

2014年1月15日をもって、tp://api.twitter〜へのアクセスがSSL(HTTPS)のみとなります。HTTPを使えなくなります。

一部書き込めないため変えてあります。このため自分でhttpsへ書き換えが必要です

857名無しさん:2014/01/13(月) 14:40:16
すみません、httpsへの書き換えはeasybotter.php内のものを全て書き換えればいいんでしょうか?
それからhttpsの書き換えを行なっていたにも関わらずツイートが止まったという情報を見かけたのですが、同じような方はいらっしゃいますか?

858名無しさん:2014/01/15(水) 08:02:14
>>857
今日実際に>>856さんの書き込みにあるようにHTTPSのみになったようでEasyBotterは何もしなければ止まっています。
テストがあった際に同じ、その『EasyBotter下部のhtppをhttpsに書き換え』を行って実行してみてもエラーが返ってきたという話を目にしましたが、2箇所書き換えて今日やってみたら普通に動かせていたので何故止まったかわからなくてここを見に来た他の方も試してみてください。

859名無しさん:2014/01/15(水) 14:16:21
PM12時でイジボが止まりました。httpsに書き換えてもダメだったようです。phaさん待ち・・・。

860名無しさん:2014/01/15(水) 15:03:05
15日早朝より停止していましたが
>>858さんのように書き換えてみたところ普段通り動作し始めました

861名無しさん:2014/01/15(水) 15:38:06
私も15日午前4時20分頃から止まっていましたが、

EasyBotter.phpの510行目と515行目のhttpをhttpsに変えたら

正常に作動しました。

862名無しさん:2014/01/15(水) 18:12:14
>>861さん、
具体的に書いていただいたおかげてこちらもすぐに直すことができました。
どうもありがとうございました!

863名無しさん:2014/01/15(水) 19:26:29
正常に動いたり止まったりしているから、不安定なのかな?

864名無しさん:2014/01/15(水) 20:15:20
私もeasybotter.phpの下の方の基本的なAPIを〜より下の
URLのhttpにsを加えたら動きました。(詳しく書こうとしたらNGワードっで書き込めなかった)
まだ様子見です

865名無しさん:2014/01/16(木) 01:22:52
わたしも同じように書き換えましたが、cronを叩いてくれません。手動でcron叩くとつぶやくのですが 同じ症状のかたいらっしゃいませんか。
不安定なだけなのでしょうか。

866名無しさん:2014/01/16(木) 04:27:51

エラーが発生しました
OAuth認証をしようとすると
このページに対するリクエスト・トークンがありません。アプリケーションがTwitterアカウントを使用するかどうかを確認するために必要な特殊キーです。 送信したサイトまたはアプリケーションに戻って再度お試しください。何らかの手違いがあったかもしれません。
と出てしまいます。
検索した方法では解決できませんでした…。どうかご教授願います。

867名無しさん:2014/01/16(木) 20:51:22
>>865
cronは関係ないのでは?

868名無しさん:2014/01/19(日) 23:34:28
【バージョン】 2.1.3
【設置鯖名】 @pages
【手動】 動かない
【実行】 現在手動のみ
【不明点】
FFFTPにてアップロード。FTPはwebサイト更新可能な程度に使えますがphpのアップロードは初めてです。
現在testとしてConsumer key、Consumer Secret、Access token、Access token Secret、スクリーンネーム以外一切無編集でアップロードしています。
data.txtとreply_pattern.phpとlog.datのパーミッションを666に設定し、http://www42.atpages.jp/(id略)/twitterbot/bot.phpにアクセスしていますが、ページは白紙のままです。404ではなく、また広告は出ているのでアップロードはされているはずなのです。
手順に見落としがあり何か重要なデータ編集をしていない、ということなのでしょうか。本家「作り方」とwikiとを数度確認していますが原因が自力で見つけ出せない状態にあります。御助言頂けると幸いです。

869名無しさん:2014/01/20(月) 19:45:44
>>868
そのへんで止まってるならbotレンタル系使ったほうが良いのでは

870868:2014/01/20(月) 20:51:55
>>869
元々twittbotは数個運営していましたが、マルコフ連鎖botがweb活動の上で必要になったのです
easybotterの改造でそれが比較的容易に出来るとの情報を得たので試用しようと考えていたのですが……門前である故にエラー原因が自分に全く解らないのが悔しいですね

871868:2014/01/20(月) 21:02:59
それを最終目的として試用していた、が正確ですね 言葉が足りず申し訳ありません
最初はそのまま情報通りのデータソースで稼働させようとしたのですが動かず……バニラソースで試してやはり動かなかったのでそれ以前の問題であるということに気付きましたがその原因はわからず……
ご返答頂けなければプランを外注に移させていただこうかと思います 失礼しました、どうかお流しください

872868:2014/01/20(月) 21:59:16
再三の連投失礼します ダミーを動かすことに成功しました。
bot.phpの内容を全てコメント状態にしたままでは動くはずがありません!
お目汚し失礼しました ここからは自分なりに調べ、試行錯誤してゆこうかと思います。

873名無しさん:2014/01/21(火) 23:59:21
>>872
回答する能力が無いので見ていただけだけど、お疲れさまでした
この先もがんばってね

近頃の初心者さんは、質問した直後「自己解決しました」だけで去ってしまうことが多いよね

初歩過ぎて書くのも恥ずかしい失敗だと思っても、やっぱり
「エラーの理由」をここに書き残していってくれるとありがたいよ
別の人が読んで、あっそこがあったか、と気がつくことがあるかもしれないし

874869:2014/01/26(日) 00:23:52
>>872
いらんこと言っちゃってすまんかった

875名無しさん:2014/01/26(日) 07:19:17
直うちで動作はするのですが、目的のアカウントへ行きません。

これを解決するにはどうしたらいいでしょうか?

876名無しさん:2014/01/26(日) 07:23:29
捕捉です。
【バージョン】 ver.2.1.3
【設置鯖名】 lolipop
【PHPのバージョン】
【手動】 動くが、目的のアカウントへ行かない
【実行】 CRON鯖名
【実行間隔】 60分間隔(CRON等で定期的に実行している場合)
【不明点】 【バージョン】 Ver.1.4x/Ver.2.0x
【設置鯖名】 レン鯖名/自宅鯖
【PHPのバージョン】
【手動】 動く/動かない
【実行】 CRON鯖名/ブラウザ自動更新/手動/他
【実行間隔】60分間隔
【不明点】

877名無しさん:2014/01/26(日) 08:54:57
>>876
テンプレがめちゃくちゃですよ。
回答が欲しいなら、コピペじゃなくもっとちゃんと整理して書いてください。

878名無しさん:2014/01/26(日) 09:20:13
>>875>>876
うん、そちらの状況が分かり難くてエスパーじゃないと上手く回答できないと思います

目的のアカウントに行かないとは、bot.phpは正常に動くのに投稿が反映されてないって意味ですか?
だとしたらsetting.phpの中やTwitter側のアプリ認証がちゃんとできてるか疑います
質問の意味履き違えてたらすみません

879名無しさん:2014/01/26(日) 10:00:22
>>875
Easybotterを再インストールして、認証を削除して取りなおし、パーミッションを調整したらうまくいきました。
ご迷惑をおかけしてすみません。

880名無しさん:2014/01/29(水) 09:13:18
【バージョン】 2.1.3
【設置鯖名】 ロリポップ
【PHPのバージョン】5.4
【手動】 動く
【実行】 手動
【不明点】

この間まで通常ポスト、TL反応、リプライ全て正常に動いていたのですが…

twitter側の仕様変更に伴い、うちのbotも止まってしまったので、
EasyBotter.php内「http」を「https」に変更しました。
すると通常ポストとTL反応はするものの、botに宛てたリプライに反応しなくなってしまいました。

非公式wikiにある「TL反応にTL発言で返す」のような改造を入れたりしていたので、
その周辺の記述で何かまずいところがあったのかと考えて、その機能を削除してみましたが改善なし。
さらに、公式から新しくDLしたeasybotter最新版をすべてサーバーにアップし、
セットアップを1から行って、ほぼ初期状態のままでbot.phpを実行しても、
同じように、通常ポストはしてもリプライを返さない、という状況です。

手動でbot.phpを叩くと「5分以内に受け取った未返答のリプライはないようです。」
とだけ表示されてエラーメッセージはありません。
また、botあてにリプライをしてもlog.datの中身は更新されないので、
リプライファイルを読みこめていないのではなく、そもそも自分宛のリプライを取得することができていないように思います。

お手上げ状態です。どなたかお知恵を貸していただけると幸いです。

881名無しさん:2014/01/29(水) 12:44:24
>>880
ひとまず確認まで。

「EasyBotter.php内「http」を「https」に変更しました。」
というのは、
公式の更新情報ででphaさんも書かれている2箇所のみで、他はなにもいじってないということですね?

882880:2014/01/29(水) 13:29:25
>>881
はい、他はいじってません。
それでダメだったので、公式で配布されているeasybotter.phpの内容を上書きする、PEALを最新のものに差し替えるなど試してみたのですが、それでもダメです…。
現在はcronで動かしていますが、相変わらず通常ポストのみで、リプライには反応してくれません。

リプライ反応パターンを記述したファイル(reply_pattern.php)を、タイムライン反応に流用してみたところ、
タイムラインに流れてきたワードには記述通りの反応をしてくれたので、
リプライ反応の記述が間違っているというわけではなさそうです。

883名無しさん:2014/01/29(水) 17:44:46
>>882
この記事はどうでしょう。
TL反応はできるとのことなので、ちょっと違うかもですが…。

http://blog.livedoor.jp/silvia_popn/archives/1657398.html

884880:2014/01/29(水) 19:07:56
>>883
ありがとうございます。試してみましたが変わらずです。通常ポスト、TL反応は行い、リプライには反応しませんでしたorz
やはり自分宛のリプライを取得するところで躓いてるような気はするのですが…いちから設置しなおしてもだめだし、もうどこを直せばいいか見当つきません( i _ i )

885名無しさん:2014/01/29(水) 20:18:57
【バージョン】 Ver.1.4x/Ver.2.0x
【設置鯖名】 未来サーバー
【PHPのバージョン】5.4
【手動】 動かない
【実行】 ブラウザ自動更新
【実行間隔】 60分間隔(CRON等で定期的に実行している場合)
【不明点】 public_html/EasyBotter2.1.3/PEAR/HTTP/Request2/Exception.php on line 61

このようにエラーがでます。どなたか解決策を…

886名無しさん:2014/01/29(水) 20:20:21
>>835
追記: ver:2.1.3

887名無しさん:2014/02/12(水) 11:21:07
【バージョン】 Ver.2.1.3
【設置鯖名】 @PAGES
【PHPのバージョン】PHP-5.2系 または5.3系(鯖によって違うようで公開されていません)
【手動】 動く
【実行】 @PAGESのCRON利用
【実行間隔】 5分間隔
【不明点】880さんと同様と思われますが質問させて下さい。
定期ポストとTL反応はするのですが、bot宛の@リプライに反応しません。

bot.php内で手を入れたのは
・postRandomにif(date("i") == "0")を追加
・replyとreplyTimelineをCRON実行時間に合わせ2から5に変更
のみです。
今月から作り始めたので、ver2.1.3以前のEasyBotterは使用していません。

手動でbot.phpを動かすと
Twitterへの投稿に成功しました。
@****に投稿したメッセージ:*******(定期ポストの内容)
5分以内に受け取った未返答のリプライはないようです。
5分以内のタイムラインに未反応のキーワードはないみたいです。
と、表示が出ます。エラーメッセージはありません。

定期ポストに対して@リプライを送った後5分以内に手動で動かすと
ページが真っ白になります。エラーメッセージはありません。

2度ほどbot.phpファイルを1から作り直しをしてみたのですがダメでした。
どなたか助言頂けると助かります。

888名無しさん:2014/02/12(水) 17:34:10
>>887
ページが真っ白というのは、つまりエラーということです。エラー箇所を教えてくれる鯖もありますが、@PAGESは違うようです。
bot.phpだけでなく、リプライパターンのファイルの方などもカンマ抜けなどの記述ミスはありませんか?

889名無しさん:2014/02/13(木) 14:50:18
>>888
ありがとうございます。
リプライパターンのファイルを公式のものそのままの状態で上書きしたところ
正常にテスト用のリプライが飛んできました。
(ただし、手動でしか反応しなかったのでまたどこかミスってるかもしれません)
記述漏れが無いか確認しながら、もう一度ファイル作成をしてみます。

890名無しさん:2014/02/19(水) 08:16:11
随分前から止まってしまっているbotを再起動させようと思いました。
EasyBotterからの投稿…の仕様になっていたので、
まず、オリジナルのアプリケーションを登録するところからだと思い、
以前、別のbotでもそうしたように、
phaさんが案内されている[軍艦肋骨]様のサイトを参考に
作業を進めたところ、
アプリケーションの名前などを登録、
規約の同意し、I agree.にチェックを入れたのですが、
文字を判別して入力云々の画像がありませんでした。
不思議に思いながらも、その下にある
[Create your Twitter application]をクリックしたところ、エラーに。
英文のエラーでしたが、簡単に言うと
twitterで、携帯電話の番号を登録してないからダメだ
みたいな内容でした。
驚いてtwitterの設定画面を見ると、確かに携帯云々の項目はありましたが
日本版には対応していないような注釈が。
何度か試してみたのですが、エラーになるばかり、
数回の試行の後にはとうとう、アクセスそのものが認められないという
ような内容のエラーに変ってしまいました。
去年の10月頃から、何か公式で大きな変更があったのでしょうか。
記憶で書いているので状況が分かりにくいかもしれませんが、
どなたか、何かわかることがあればお教え下さい。

891ななし:2014/02/19(水) 12:10:37
>>880
twitter(公式web)→設定→モバイル
 →ご利用の携帯電話から、verify@twtr.jpに空メールを送信以下略

これの認証終わらせてから再トライ

892名無しさん:2014/02/19(水) 12:27:35
>>891
890です。
早速のご回答ありがとうございます!
帰宅したら早速試してみます!

893名無しさん:2014/02/19(水) 22:14:57
【バージョン】 Ver.2.1.3
【設置鯖名】 @page
【手動】 動く
【実行】 手動
【不明点】 一部のTL反応が機能しない。
A_bot、B_botの2つを管理しています。
フォロワーからA_bot宛にリプライを飛ばした場合に、A_bot、B_bot共にフォロワーに対して次のようにリプライを送るように設定したいです。

フォロワー(@xxxx) @A_bot おいで
A_bot @xxxx 呼んだ?
B_bot @xxxx 呼ばれてないけど来たよ

この場合、B_botをTL反応するように設定し、TL反応を参照するファイルに
$data = array(
"^@A_bot.*(おいで).*"=> array(
"呼ばれてないけど来たよ",
),
と記述したのですが、bot.phpを叩いても「2分以内のタイムラインに未反応のキーワードはないみたいです。」と表示されます。
他の@を使用していないTL反応語句(「ただいま」等)には問題なく反応しています。
リプライに対しては、TLで反応させることはできないのでしょうか。
どなたかご助言頂けると幸いです。

894名無しさん:2014/02/20(木) 01:42:55
>>893
EasyBotterのpreg_matchでは、基本的にデミリタを「@」で記述しています。
TL反応のリプライパターン照合もデミリタが「@」ですので、パターン内に「@」を使う場合は
「@」をエスケープする必要があるかと思います。(デミリタを変えるという手もありますが)
具体的に言えば
"^@A_bot.*(おいで).*"

"^\@A_bot.*(おいで).*"
に。当方で動作確認はしていませんが、たぶんうまくいくかと思います。

895894:2014/02/20(木) 02:11:51
連投すみません、上の書き込みでデミリタと言ってますが「デリミタ」が正しかったです。完全にデミリタで記憶してました。
失礼しました。

896893:2014/02/20(木) 12:37:38
>>894>>895さん
ご返答ありがとうございます。
ご指摘いただいたように記述を変更してみましたが、症状は変わりませんでした。
他に反応を妨げる文字が含まれている可能性があるかもしれないので、preg_matchやデリミタについて勉強しようと思います。
ありがとうございました。

897名無しさん:2014/02/22(土) 15:05:55
890です。
モバイルの認証はできたので、ようやくオリジナルのアプリケーションを登録しようといろいろ試していますが、
アプリケーションを作成するサイト?の形式が変わってしまったようで、軍艦肋骨様の手順通りにはいかなくなっています。
何とかカスタマーキー、カスタマーシークレット、アクセストークン、アクセストークンシークレットは取得できたと思うのですが、
setting.phpに反映させ、bot.phpをたたいたところ、
「○○○…(ツイート)」を投稿しようとしましたが失敗しました。
Could not authenticate you(あなたを確証することができませんでした。)
というエラーに辿り着いています。
ちょっと、BBS内を探してみますが、
アプリケーションの作成もちゃんとできているのか自信が無いので、
どこにエラーの原因があるのか分かりません。
同じような症状の方がいらっしゃれば、何かアドバイスをお願いしたいと思います。
よろしくお願いいたします。

898名無しさん:2014/02/22(土) 15:28:00
897です、連投すみません。
>>529様が同じようなエラーメッセージを上げてらっしゃるのですが、
回答をいただかないまま終わってしまっているようです。
「投稿に失敗しました」なら何度も見てきたのですが、
ドコにエラーの原因があるかも分かりません。
一度、アプリケーションを削除して作り直した方がいいのでしょうか…
また、進展したら報告に来ます、すみません…

899名無しさん:2014/02/22(土) 15:44:11
さらに連投すみません。
今、EasyBotterからの投稿が出来なくて(アクセスキーが使えなくて)、
オリジナルのアプリケーションを作成する事で投稿を可能にしていますが、
今から新しくBOTを作ろうと思った時には、
皆様、独自のOAuthの認証をするために
アプリケーションの作成が必須、という事ですよね?
皆様、うまくやってらっしゃるんでしょうか…

900名無しさん:2014/02/22(土) 16:04:04
>>890 >>897です。
お恥ずかしい話ですみません、解決しました。
(書き込みを消したいぐらい恥ずかしいorz
 あと、Consumer keyですね、カスタマーって…orz)

Consumer keyとConsumer secretが、正しくsetting.phpに反映されていませんでした;

一応、今後のために蛇足ながら、新しくアプリケーションを作成する際の、変更点?らしきを書き込みをさせていただきます。

軍艦肋骨様の手順で進めていきますと、
今までのようにConsumer key、Consumer secretが
始めから画面上に見えていません。
API keysのタブの「API key」「API secret」というのがそれぞれの値になります。
ちなみに、その画面の右上に「TEST OAuth」というところがあり、
これをクリックすると
先程のAPI keyとAPI secretが、そのままConsumer keyとConsumer secretであると表示されます。
あとは手順通りで問題無いかと思います。

たくさんのスペースを拝借して申し訳ありませんでした。
…ホントに恥ずかしい…;;;

901名無しさん:2014/02/22(土) 17:49:51
>>900
phaさんがリンクされているブログの管理人です。
今回の書き込みで、アプリ登録サイトの使用変更に気付きました。ありがとうございます。
900さんの書き込みを参考にして、こちらでも新しい手順を一からテストし、動作確認までは無事に行いました。

899でご心配なさってる件、同感です。
今からEasyBotterにチャレンジする人が、その段階でかなりふるい落とされちゃってるんじゃないでしょうか。

もともと本来のブログの趣旨ではないおまけ記事でしたが、
たまたまphaさんの目に留まったおかげで、現在もbot関係の検索などでの来訪者が多いです。
せっかくですから、なるべく早く記事を修正したいと思います。

(Consumer keyと……のミスは、私も恥ずかしながらやったことがあります。
ここは初心者スレですし、「人に言えないほど恥ずかしい小さなミス」こそ、実はのちの人の参考になるのでは)

902名無しさん:2014/02/22(土) 18:57:19
>>901
ありがとうございます><
半泣きでオロオロしていた時間が報われました(つД`)。°


モバイルの認証についての経験も書き込ませていただきます。
(これも個人的にアタフタしたものなので、余計な世話かもしれませんが。)

891様がアドバイスをしてくださったように、
新しくアプリケーションを作成するにはモバイル(携帯電話)での認証を
先に済ませておく必要があります。
そしてこれをするために、先に携帯電話の方でもtwitterのモバイルの公式に、
認証を行いたいBotでログインしておく必要があります。
なぜなら、空メールを送る→返信されたメールのリンク先へアクセス→
その時ログインされているアカウントが認証
となるからです。
そして、携帯のアドレスでそのアカウントを認証すると、
同じ携帯のアドレスでは別のアカウントを認証できないからです。
間違って違うアカウントで携帯のメールアドレスを認証設定してしまった場合は
(私の場合は)PCのtwitter公式の、設定→モバイルの
「メールアドレスの削除」を実行しました。

以上、初歩的なことでつまづいてばかりの私が得た
ささやかな経験談です。(誰かの参考になれば幸いです)

903880:2014/02/24(月) 09:42:14
>>880です。
未だに症状が解決せず困っているので、再度失礼します。

access token等setting.phpに書きこむ値を取得し直し、
bot.php、easybotter.php、reply_pattern.phpをすべて初期のもの(ver2.1.3)に差し替えても
通常ポスト、TL反応は行うものの、やはりリプライ反応のみ行ってくれませんでした。

手動で叩いても「5分以内に受け取った未返答のリプライはないようです。」
エラーメッセージが表示されたり、真白なページが表示されるといった現象は起きません。

何か初歩的なところでつまづいているのか、それとも私の手の及ばないところ(サーバー、php記述…)
に問題があるのか、見当のつかない状態です。
ささいなことでも良いので、見直すべき個所等アドバイスありましたらお願いします。

904名無しさん:2014/02/24(月) 23:09:13
>>903
解決の手助けにはならないと思うけど一応思ったことを。
easybotterを使ってる人はたくさんいるだろうし、httpにsをつけたからといって動かなくなった事例はほとんどきかないから、
やっぱりどこかがおかしいんだと思う
無料で使えるサーバーとかで一回試したりできないかな?

あとリプライに反応しない件で、今回とは違うかもだけどかなり前に自botもそうなったことがあった
公式からbotアカにログインしてみたら、リプライをまったく取得できてなかった(@欄を見ても何も届いてない状態)
サーバーに上げたのを削除して新しくフォルダなどの名前も変えて作り直して、しばらくしたら直ったことがある

905880:2014/02/25(火) 13:58:56
>>904
@pageさんでやったこともあるのですがダメでした…
公式からログインしてリプライ欄見てもちゃんと届いていました

助言の通り、最新版をアップロード・セッティングしなおしたらちゃんとリプライしました…
今まで使っていたリプライファイルに差し替えても正常に動作しました。
結局、何が悪いのか分からず終いではありましたが、きちんと動くようになりました…(´・ω・`)
御助言&スペースお借りさせていただきありがとうございました。

何が原因か分からないときはヘタにいじるより、最初から作り直した方が手っ取り早いかもしれないですね…

906名無しさん:2014/04/15(火) 01:31:18
901です。
ものすごく日が空いてしまいましたが、ブログの当該記事を改訂しましたのでご報告しておきます。
広告になっちゃって大変恐縮ではありますが、なんか、気付いたら公式からリンクが貼られていたりもするので……

公式のアクセスキーがTwitter側に止められている件は、結局あのまま動き無しなんでしょうか?

907名無しさん:2014/05/03(土) 04:21:11
【バージョン】Ver.2.0x
【設置鯖名】 未来サーバー
【PHPのバージョン】5.3
【手動】 動かない
【実行】GAE
【実行間隔】 60分間隔(CRON等で定期的に実行している場合)
【不明点】
特に更新等した訳でもなく、今まではちゃんと動いていたのですが、つい先日からAPIを経由するとどうもスパム扱いされてしまうらしく、cronで実行しても手動で実行しても以下のエラーが出るようになってしまいました。
「(ツイート内容)」を投稿しようとしましたが失敗しました。
This request looks like it might be automated. To protect our users from spam and other malicious activity, we can't complete this action right now. Please try again later.

具体的にどう対策をとればいいのかがわからず、アドバイスいただけるとありがたいです。

908名無しさん:2014/05/03(土) 11:50:43
>>907
とりあえずサーバーを変えて試してみてはいかが

909名無しさん:2014/05/03(土) 15:15:52
>>908
実を言ってしまえば自分はもう1つbotを管理しておりまして、そちらはサーバーが@PAGE、それ意外は>>907と同じ環境なのですが、問題なく動いております。
確かにサーバーを移すのが手っ取り早いかとも思ったのですが、そもそもサーバー側の問題なのか、他の解決策がないものか、と投稿させていただきました。
何にしてもご意見ありがとうございます。

910名無しさん:2014/05/04(日) 18:48:35
うちも全く同じ状態だったけど未来サーバーだけじゃなく
hostingsiteforfreeだったかでもなったし
動かなくなったのがちょうど新デザインプロフィール解放の
タイミングだったしTwitter側の問題かと思ってたけど
サーバ側の問題だったのね
変えたらあっさり動いた

911名無しさん:2014/05/17(土) 01:29:25
【バージョン】 Ver.2.0x
【設置鯖名】 @pages
【PHPのバージョン】
【手動】 動かない
【実行】 Google Apps Script
【実行間隔】 1分間隔
【不明点】
7時に指定しているものと22時に指定しているものが
何故か0時30分に1つずつツイートされていました。
この時間帯は定期的なツイートを停止している時間帯でもあるので
ツイート内容を書く場所を間違えていたというわけではなさそうです。

bot.phpには以下のように書いてあります。

//コメント
if(date("G") == 7 && date("i") == 01 || date("i") == 00){
$response = $eb->postRandom("○○.php");
}
//コメント
if(date("G") == 22 && date("i") == 01 || date("i") == 00){
$response = $eb->postRandom("××.php");
}

原因が全く分からず困っております。
なにか分かることがあれば教えていただけると嬉しいです。

912名無しさん:2014/05/21(水) 18:01:49
>>911
【手動】は「動かない」ではなく「動く」でした。

追記すると
時間指定のうち、分指定以外の曜日指定や時指定だけが何故か無視されてしまう、ということです。
未だに解決していません。

913名無しさん:2014/05/23(金) 07:03:52
>>911
if(date("G") == 7 && date("i") <= 1)
if(date("G") == 22 && date("i") <= 1)
にしてもダメ?
0時半に動いたってのがわからんなー

914913:2014/05/23(金) 07:24:41
今回は簡易化できちゃったけれど今後役立つ人いるかもしれないし一応補足

&& は || より優先度が高いので
if(date("G") == 7 && date("i") == 01 || date("i") == 00)
だと、「7:01または毎時0分」になってしまう
7時台の0分または1分とするには
if(date("G") == 7 && (date("i") == 01 || date("i") == 00))

915名無しさん:2014/05/23(金) 19:59:54
横だけど噛み砕いてて分りやすいな
うちは時間指定しまくりなので>>913の方法の方が好き

916911:2014/05/23(金) 21:01:10
>>914
できました!
wikiは全部見たのですがすっかり見落としてました。
ありがとうございました。

917あるは:2014/05/25(日) 18:53:55
@aruyuu
フォローしてくれたら嬉しいです

918名無しさん:2014/07/06(日) 10:51:05
【バージョン】 Ver.2.1.3
【設置鯖名】 sitemix
【実行】 GAE
【実行間隔】 10分間隔(CRON等で定期的に実行している場合)
【不明点】 リプライファイルを読み込まない
・settingファイルに必要なことを書き、bot.phpは非公式wikiをコピーして使用
・リプライは返してくれるけれど、リプライファイルの内容は読み込まない
(「おはよう」や「こんにちは」と送ってもdata.txtからの返信になってしまう)
・botフォルダ内にあるファイルはUTF-8 LFで保存
・settingとboy.phpとdata.txt以外は内容を変えてない
・data.txtとreply_pattern.phpとlog.datのパーミッションは666に変更
(ReadとWriteを許可)

以上よりリプライファイルを読み込まない理由として考えられることはなんでしょうか?

919名無しさん:2014/07/06(日) 10:59:21
php.iniの設定とか

920名無しさん:2014/07/06(日) 11:03:18
>>918
鯖側の言語設定をデフォルトにしてたら同じようになったことがある

921山田太郎:2014/07/08(火) 19:09:19
フォロワーになってね
フォローよろしく!
中学生二年生です

922名無しさん:2014/07/25(金) 02:33:36
すみません。質問失礼いたします。
(だいぶ前の話になってしまい申し訳ないのですが)
バージョンVer2.04betaから、バージョン2.1.2にバージョンアップする際、
EasyBotter.phpとlog.datとPEARフォルダを新しいものに書き換えました。
それから、なぜかTLの単語へ反応する際のリプライと通常リプライを
稀に2重で返すようになりました。毎回ではないです。
バージョンアップするまでは問題なく動作しておりました。

スレ内検索したところ同じ症状の方がいらっしゃるようですが
結局答えが出ないまま?のようなので再度の質問となりごめんなさい。
ちなみにパーミッションの件は確認済み(666)ですし、
それ以外どこをチェックすればいいか分からないです・・・。

手動で叩いてもエラー文は出ません。
CRONは有料のところを使っており、3分間隔です。

具体例
・12:00にもらったリプライに対して12:03と12:06の2回に分けてリプを返してしまう
・12:00にもらったリプライに対して12:03に同時に2つリプを返してしまう

という現象です。
2.1.3へのバージョンアップをしようと思っていますが、
また同じ事が起きる前に原因となりそうな部分を知れたらと思い
質問させていただきました。何か助言いただけたら幸いです。

923名無しさん:2014/07/28(月) 01:35:41
【バージョン】 Ver.2.1.2
【設置鯖名】@PAGES
【実行】GAE
【実行間隔】5分間隔(CRON等で定期的に実行している場合)
【不明点】特定の日にちでリプライしてくれない

現在特定の日に特定のリプライをさせようと思い、bot.phpの例文を参考に

//bot.phpを実行したときに、7月28日のみreply_pattern_0728のデータを、それ以外はreply_patternのデータを使う
if(intval(date("n") == 7 && date("j") == 28)){
$response = $eb->reply(5,"reply_pattern_0728.php");
}else{
$response = $eb->reply(5,"reply_pattern.php");
}

if(intval(date("n") == 7 && date("j") == 28)){
$response = $eb->replyTimeline(5,"reply_pattern_0728_tl.php");
}else{
$response = $eb->replyTimeline(5,"reply_pattern_tl.php");
}

と組んでみたのですが、該当する日になっても
リプライを返してくれません。

どなたかご存知の方がいらっしゃいましたらご指導お願いいたします。

924名無しさん:2014/07/29(火) 02:13:34
intvalに条件式入れるのは意味わからんぞ

925名無しさん:2014/07/30(水) 23:01:14
>>924
 一度ファイル内のintval全部削除して来年まで待ってみます・・・・・・。orz

926名無しさん:2014/07/31(木) 16:08:58
if(date("n") == 7 && date("j") == 28){

}
で動くかどうかやってみそ

……特定の日だけ指定POSTってやりだすとドツボにはまるけどな!!

927名無しさん:2014/07/31(木) 16:10:09
※テスト運用は別のテスト日を用意してその日に(テスト用POST文を用意して)チェックするという案もあるのでお試しあれ

928名無しさん:2014/08/26(火) 21:27:00
EasyBotter でネタファイルである data.txt を data.php にしてみました。
始めはうまく動いていたのですが、ネタを増やしたら動かなくなりました。
php構文チェッカーにかけてみると、1122行目がエラーになります。
(その行に問題があるのかと削除すると、また次の1122行目がエラーに)

文字数や行数に制限があるのでしょうか?

929名無しさん:2014/08/27(水) 04:19:11
>>928
あなたの書いたdata.phpがあなたのプログラムした通りに動いています

930928:2014/08/27(水) 09:29:36
お騒がせしました。自己解決しました。
1121行目に「"」を余計に含んでいました。

931名無しさん:2014/08/28(木) 09:47:34
>>929
初心者スレなのに正確悪い奴だな

932名無しさん:2014/08/28(木) 11:05:15
>>931
制限があるのかときかれたから
「そんなものはないので問題があるとしたらあなたのプログラムですよどんなの書いたんですか」
くらいの意図だったんだがまぁ言い方悪かったなすまん
確かに「何で自分じゃなく仕様のほう疑うんだろ」って思いながら書きました性格悪いですわ

933928:2014/08/28(木) 11:17:05
はっきり言ってむかつきましたわ。
自己解決した今となっては
「構文チェッカーで指摘された前の行を疑え」
ぐらいのことを書いてくれたら、さすが上級者さん
ありがとうの気持ちになりましたわ。

934名無しさん:2014/08/28(木) 13:42:33
933さんもちょっと言い過ぎですよ

回答に親切丁寧さを求めると答えてくれる減っちゃうから
ハードル上げるのやめた方がいいですよ
初心者だって一緒に悩んでくれたり回答する側にまわることあるんですし…

935928:2014/08/28(木) 15:29:57
親切さも丁寧さも求めてませんよ。
「そんな制限はない」と一言ほんとのことを
書いてくれればそれでよかったんです。
上から目線でモノを言いたいだけの自称上級者が
いちばんムカツクんですよ。

936名無しさん:2014/08/28(木) 19:57:10
まぁまぁ、そろそろ落ち着いて

937名無しさん:2014/08/29(金) 22:14:27
ま、二人とも落ち着けばいいよ
そんでその手の初歩的なミスを自動でチェックしてくれるIDEを入れればいいんだよ
Eclipseマジおすすめ
初心者は初歩的なミスでドはまるからIDEは初心者にこそおすすめ

938名無しさん:2014/09/07(日) 21:07:39
【バージョン】 Ver.2.13
【設置鯖名】 Rental Orbit Space、@PAGES
【PHPのバージョン】
【手動】 動く
【実行】 GAE
【実行間隔】 2分間隔
【不明点】
半年以上前?からRental Orbit Spaceを利用、
2時間おきに投稿するファイルと特定の時間に投稿するファイルは問題なく動き続けているのですが、
リプライ&TL反応用のファイルだけが9月1日頃から動かなくなってしまいました。
(これを機にEasy Botterを2.1.2から2.1.3へバージョンアップをし、上記の二つは動いている状態です。)
これまで順調に動いていたのでデータファイル等は一切いじっていません。
試しに以前使っていた@PAGEで動かしてみてもやはりリプライ&TL反応用ファイルだけはGAEでは動きません。
(手動で叩くとどちらのサーバーでも問題なく反応します。)
Twitter側の仕様なのか、自分で直せるものなのかも見当がつきません。
改善すべき点等なにかお気づきの点がありましたらよろしくご教示いただけますようお願いいたします。

939名無しさん:2014/09/12(金) 00:06:48
>>938氏と同じような症状で、TL反応が昼前〜深夜の間全くしなくなりました

【バージョン】 Ver.2.12
【設置鯖名】 ロリポップ
【PHPのバージョン】5.2
【手動】 反応しない間はずっと読み込み中で実行出来ない
【実行】 ロリポップcron
【実行間隔】 5分
【不明点】 9月4日あたりからTL反応が深夜帯〜早朝のみの反応になり、
昼ごろから深夜まで一切反応しなくりました。
その間、手動で実行しようとすると、ずっと読み込み中で実行出来ない。
1時間ごとの定刻postとリプライは問題無いようです。

改善方法ありましたらよろしくお願い致します。

940名無しさん:2014/09/12(金) 00:18:32
>>939
追記 EasyBotterをVer.2.13に変更してみたましが、症状変わらずでした

941名無しさん:2014/09/19(金) 23:14:51
勉強不足でしたらすみません。
今日、自分のbotがリプライを変えしていない事に気付いて、久しぶりに調整しようと思ったのですが、
…こう、ファイルをサーバーにあげる時に、
乗っ取られるとか見られないように、で、
index.html をアップロードするから、
画面が真っ白に表示される、んですよね?
説明が下手ですみません。
でも、それだとbot.phpにアクセスしたくても見えないので、
FTPサーバーでアップした先からそのデータを削除しても、
画面が真っ白なのが変わらなくて、
元のフォルダからindex.htmlファイルを削除して
フォルダごとサーバーにアップロードし直しても
画面が真っ白で、
本当ならbot.phpとかdateとか、replypattern.phpとか、
そういうのが表示されると思うんですけど、
何がおかしいのか分からなくて、
…index.htmlが画面を真っ白に見せるファイル、という認識から
間違っています??
バージョンは多分2.1.2
http→httpsは修正済みで、その頃は普通に作動していたので、
それを確認した後、index.htmlをサーバーにアップロード、
それ以降は触っていません。

942名無しさん:2014/09/20(土) 04:37:51
>>941
indexが真っ白だろうとbot.phpやらのファイルはアクセスできるので直接叩け
たぶんディレクトリ内のファイル一覧出力のことを言ってるんだろうけど
公開されてる場所でわざわざ出力させる意味がわからないし
自分でも言ってる通りセキュリティ上宜しくない

一覧出ないのはサーバー側の設定な気がする
どうしても出したいならhtaccessに Options Indexesだけど
一時的だろうと拾われてキャッシュ残ったりすることもあるから推奨しない

全部ファイルを直接叩け面倒ならブクマでもしとけ

943名無しさん:2014/09/20(土) 08:20:51
>>942
ああ、ありがとうございます、…そっか、cronでたたいてるところが
「直接叩け」のとこなんですね
ちょっと試してみます。
サーバーはさくらなんですが、…設定変わったのかな…

こんな分かりにくい質問に答えてくださって
ありがとうございますm(_ _;)m

944名無しさん:2014/09/20(土) 13:38:18
今まで出てたんなら単純にキャッシュな気もする
何にせよ>>924の言う通り「誰も来ないしちょっとだけなら全裸になってもいいよね」
みたいな行動はやめておいた方がいい
実際問題が起こるかじゃなく、プログラムを管理する側の心構えとして

945名無しさん:2014/09/20(土) 13:38:52
安価ミスすまそ

946938:2014/09/21(日) 15:59:29
>>938です。
あれから何もいじらずに様子を見ていますが、
反応をする時としない時が出てくるようになりました。
時間帯で全く反応していない時がある?というような感じです。
Twitterのサーバー側の問題なのかと思いつつ(よくあることなのでしょうか?)、
もう少し様子を見てみようと思います。

947名無しさん:2014/09/21(日) 18:56:00
>>944
その例えで、なるほど、と思いました
ありがとうございます!
管理する側の心構え、とか、…そんなんですね
今後も、気を付けるようにします。

948名無しさん:2014/09/21(日) 19:11:29
そういう訳で 941です。

こちらで助言いただいたように、直接bot.phpにアクセスしたら
ちゃんとリプライをしていることが確認できました。

ただ、それは手動の時だけで、cronでは指定時間が来ても
リプライを返していないことも分かりました。
使っているのはGAE-cronで、5分間隔。
風柳さまのプログラムを使わせていただいており、
動いているbotもありますので、
とりあえず、もうちょっと様子を見てみます…

949名無しさん:2014/09/24(水) 01:32:31
どこで質問していいかわからないので、ここでさせてください
この板のNGワードってなんでしょうか?

950名無しさん:2014/09/24(水) 01:54:18
スレ違い申し訳ありません。自己解決しました

951@kiss_kiss_com:2014/12/12(金) 19:42:51
これからどんどんTweetするつもり
女ならフォロバ100%!!!!
フォローしてよ!!!!
まってるで!

952名無しさん:2014/12/19(金) 02:59:29
先輩方、ヒントで構わないので知恵を貸してください!
タイムラインポスト用のphpファイル内で季節ごとにわけた時、年間を通して使う分と、その時期のみ使う分とが出ます。
以下のように通年分を代入させてスッキリさせたいのですが、プログラム初心者なのでどこから調べたらいいのかわかりません。
正規表現やif,switchの簡単な使い方を覚えたくらいの知識レベルです。

$month = date("n");//月

▼元のプログラムを
if($month <= 4){ //1〜4月
$data = array(
"1〜4月専用のポスト1",
//通年用
"年間を通して使うポストA",
"年間を通して使うポストB",
);
} else if($month >= 5 && $month <= 8){ //5〜8月
$data = array(
"5〜8月専用のポスト1",
//通年用
"年間を通して使うポストA",
"年間を通して使うポストB",
);
} else{ //9〜12月
$data = array(
"9〜12月専用のポスト1",
//通年用
"年間を通して使うポストA",
"年間を通して使うポストB",
);
}


▼通年用を上手く代入させて下のようにスッキリとまとめたい!

//通年用
"年間を通して使うポストA",
"年間を通して使うポストB",

if($month <= 4){ //1〜4月
$data = array(
"1〜4月専用のポスト1",
$通年用
);
} else if($month >= 5 && $month <= 8){ //5〜8月
$data = array(
"5〜8月専用のポスト1",
$通年用
);
} else{ //9〜12月
$data = array(
"9〜12月専用のポスト1",
$通年用
);
}

953名無しさん:2014/12/19(金) 03:32:44
>>952
array_push()

954名無しさん:2015/01/06(火) 02:52:22
>>953
遅くなりました、>>952です
試しては挫折しの繰り返しでしたが、先日ようやくarray_push()を使って動かすことが出来ました!
すごく嬉しい、本当にありがとうございました!!!

955名無しさん:2015/01/06(火) 12:20:25
よろしければ別口でヒントをもう一つお願いします!
reply_pattern.phpファイル内で、年間を通して使う分と、イベントで使う分があり、
上記と同じように年間を通して使う分を入れ子として代入させてスッキリさせたいです。
方法としては、

①通年用.php
②イベント.php

を用意しイベント.phpの中で、

<?php

switch(date("m.d")){
case "01.01"://正月
$data =array(
"あけおめ"=> array(
"明けましておめでとう、{name}",
),
"ことよろ"=> array(
"今年もよろしく、{name}",
),
);
$通年用.php
break;
case "12.24"://クリスマス
$data =array(
"メリクリ"=> array(
"メリクリ、{name}",
),
);
$通年用.php
break;
default:
$通年用.php
}

という風にスッキリまとめたいのですが方法はありますか?
試しに$通年用.phpを
require_once("$通年用.php");
としたんですがその場合、caseの中に入れても、switchの外に置いても、イベント.phpのリプ内容が反応せず上手くいきませんでした。
php知識は相変わらずです。

956名無しさん:2015/01/14(水) 09:49:05
>>955
$通年用.phpって名前がよく解らないけれど、
分岐させた後に$dataと通年用を足し算すればもっとすっきりすると思うよ。
↓足し算の動作はこんな感じ。
http://www.tam-tam.co.jp/tipsnote/program/post4067.html

957名無しさん:2015/01/14(水) 23:13:59
【バージョン】 EasyBotter Ver2.1.2
【設置鯖名】 さくら
【PHPのバージョン】5
【手動】 動く
【実行】 CRON
【実行間隔】 1時間間隔(CRON等で定期的に実行している場合)
【不明点】 (エラーメッセージがあればコピペ推奨)

リプ爆対策で、名前(reply_pattern.php内で{name}に該当するもの)に@のついているユーザーのつぶやきは無視するようにしたいです。
以下の記述部分に



$atname = array("@");
if($this->_name == $replyName || in_array($replyName, $atname)){
continue;
}



を追記したのですが、今度はリプライ自体を返さなくなってしまいました。
ご教授よろしくお願いいたします。



【追加した記述部分】



//取得したつぶやきを条件で絞る
function selectTweets($tweets){
$tweets2 = array();
foreach($tweets as $tweet){
//自分自身のつぶやきを除外する
if($this->_screen_name == $tweet["user"]["screen_name"]){
continue;
}
//RT, QTを除外する
if(strpos($tweet["text"],"RT") != FALSE || strpos($tweet["text"],"QT") != FALSE){
continue;
}
$tweets2[] = $tweet;
}
return $tweets2;
}

958名無しさん:2015/01/15(木) 13:00:39
>>957
その中だったら$tweet["user"]["name"]の中に相手の{name}が入ってると思います。
in_arrayにしなくても、RT, QTを除外すると同じ様にstrposで除外するとかどうかな?
↓strposの動作はこんな感じ。
http://blog.dacelo.info/php/entry-1063.html

自分は//文章を変換するの{name}の方をいじって、名前に@、@英数字があったら
間に半角スペースをはさむ方法を取ってます。

959名無しさん:2015/01/15(木) 13:08:20
答えちゃったけど改造は質問スレじゃなかったね。

960おっちん:2015/02/20(金) 14:00:17
ふぉろみー!おんぷ

961ひまだなー:2015/04/26(日) 23:05:13
@motimoti5858 依頼くれや

962名無しさん:2015/06/02(火) 11:09:14
(アカウント)のOAuthトークンがTwitter APIにアクセスすることが凍結されました。

とのメールが来て、「Twitter APIポリシーサポート」に下記の必要事項を記入しろと言われました。

・アプリケーションの名前
・アプリケーションID
・コンシューマーキー
・アプリケーションのURL

コンシューマーキーはわかりますが、
それ以外の項目に何を入れればいいのでしょうか。

963名無しさん:2015/06/06(土) 19:47:54
>>962
自分もよく解らないけど、
その「Twitter APIポリシーサポート」でぐぐるといっぱい出てきたよ。

964名無しさん:2015/06/07(日) 13:02:19
>>963
情報ありがとう。
やってみます。

965名無しさん:2015/07/07(火) 18:56:12
【バージョン】 Ver.2.1.3
【設置鯖名】XREA
【PHPのバージョン】おそらく5.3
【手動】 動く
【実行】 GAE
【実行間隔】 -
【不明点】
すべてTeraPadでUTF-8Nで編集したのですが、何故かブラウザの表示が文字化けしてしまいますが、ツイートは問題ありません。
ツイートされるということは、パーミッションも問題ないと思うのですが、
ブラウザの実行結果の表示が文字化けしてしまうのは、何か原因があるのでしょうか。
↓のように文字化けしてしまいます。
*�*搨Okヤ@*ニ�~赫.{J&aラvキ&Aコサ「ミj�*�フ&縅ヨ�Y'�サmイ*dE*A*/・キいラB�0�ク_チ�$�*ED*電�>ソ淮枻j]\ヨ﨔羝隯��**�瀾w�a*a告ァ�6!*キヮ*ク硺ネヤ 舐*ァ**ILCBコ�0ツ*ム*!モ餤渫竑フ*ヒT粲Q� ・蘒�*ォ�7仰8オ�@1[ュV)ニ(、q゚ニC涯�ヘ侫0�;Vト「炉フニ<�%臣�%1ー*l*'A�*ョェT*鎖***W5壺絞殞ィT+�* フG帛タf@盤サネ*P�2ー*ン燾ウ@!sコ4晢&啓、ワケe・**F*ャb*驗冥�+Tハ=*祺oタL}Bテ1モ�$「Aャ{IDf慯c�*脣P& 鉀RPワ蔬、トハョ、*ュ漣sヌ*q貂モ@�*ルケネセ^ッ>�<サ*ル鉈ラ�~ャNDd゚寓D,rォヌ薊�,� gマ俿�$*>L卷Q0ェ!�シ/櫤施2�*5ァ蓜*�(|ユァ/Oナr)�*アシ*�櫢栃^改ュネセノJ曽*ヨホトb!イS賊D與D�*��*�*�qJカフf�竺ユ0L」アンリ6梧�*���)cゥVR&[�*�*ヒ}Fウg*

966名無しさん:2015/07/28(火) 13:26:39
【バージョン】 Ver.2.1.3
【設置鯖名】ロリポップ
【PHPのバージョン】5.3
【手動】 動く
【実行】 ロリポップcron
【実行間隔】 5分毎
【不明点】
書き込み制限にあいました…
support formから連絡をして解除されたのですが、
翌日再び規制をされてしまいました。
「何が悪いのか教えて」といったものの、機械的に「解除したよ」としかメールが来ず、
再度規制されるのでは、とびくびくしております。

rate_limitを表示させて、数値の推移を観察しているのですが、Limitは超えなさそうな現状です。

機能としては、
・TL内のキーワードに反応し、引用を行う
・一日一回、フォロー返しを行う
の二つです。

宜しくお願い致します。

967名無しさん:2015/07/29(水) 08:53:30
>>966
自動フォロー返しは規約違反になったよ

968名無しさん:2015/08/04(火) 17:15:14
>>966
昔は自動フォローにガイドラインなかった(たぶん)けど、
その後、自動フォロー・アンフォロー禁止(自動フォローバックだけ許可)の期間があり、
参考:twittbot - 掲示板->twittbot 掲示板->自動フォロー返しの行方は?
ttp://twittbot.net/modules/bluesbb/thread.php?thr=1540&sty=1&num=l50#p5146

からの↓

「自動フォローバックのみ許可」の文言削除
参考:教えて!goo Twitterで自動フォロー返しをする無料サービス
ttp://oshiete.goo.ne.jp/qa/8389079.html

っていうのが現状みたいだよ。例外許可の文言が削除されたってことは、禁止ととるべきだろうね。
この辺把握してないbot作者多いみたいで、未だにフォローバックは自動ですってbioに
書いてあったりすると、なんかハラハラしちゃう……
きっと、twittbotみたいな大手サービスが機能廃止して初めて、界隈にも周知されるんだろうな。

イジボ使いの我々はAPIある限りは自動フォロー可能だけど、規約は守って運用したいところやね。
新規にフォローされたとか、リムーブされたとか、そういうの通知出たり一覧で見られるクライアントもあるから、
そういうのでチェックして手動でフォローするのがいいと思うぞ。Androidスマホなら「はむーん」が個人的におすすめ。アイフォンはわからん。

969名無しさん:2015/08/04(火) 17:41:06
>>965
もうちょっと具体的に書いた方が答えやすいと思うぞい

bot.php を手動で叩いた時の「〜をツイートしました」みたいなのが文字化けするってことでおk?
日本語だけじゃなくて英字も化けてるなら、ブラウザのエンコードが間違ってるんじゃない?

ブラウザ何使ってるかわからないけど、文字化けのページ表示させてから、ブラウザメニューから
ページ>エンコード とかの項目さがして、Unicode>UTF-8 を指定したら改善しないかな

970名無しさん:2015/08/16(日) 14:54:20
>>966
すみません、その後どうなりました、、?
自分とこもアプリケーション書き込み制限になって、
自動フォローの部分を外してるにもかかわらず
連続で規制されました、、。
他にひっかかりそうなとこも無さそうなのに、、

971名無しさん:2015/08/30(日) 16:14:43
こんにちは。
GAEcronについて教えてください。
風柳様のソースを使用してcronを動作させています。
一週間ほど前ですが、Botがリプライを返していないことに気付き、
自分のPCのブックマークから「GAE cron 指定時刻にURLコール」の
ページへ行き、いつも通りログインしましたが、
設定してあった5つのプログラム(何分おきにどのURLにアクセスするか)が、
全てまっさらに消えておりました。(5か所とも空欄になっていました)
改めて1つ、URLを登録して様子を見ましたが、機能していないようです。
URLに手動でアクセスすると、Botはリプライを返すので、
EasyBotterのプログラムには問題はないと思っています。
簡単に書きましたが、
同じようにGAEcronが止まってしまった方はいらっしゃるのでしょうか?
また、GAEの設定や利用規約が変わり、もう使用できないのでしょうか?
有料になったという話も聞きましたが、
5つのプログラムは、2時間おきにコール、5分おきにコールなどで、
課金対象になるほどハードな使い方はしていなかったと思っています。
全くのゼロから、新規で登録し直そうとも思っていますが、
何か他に解決方法があるようでしたらお教えいただきたいです。
不必要かもしれませんが一応
【バージョン】 2.1.2
【設置鯖名】 さくら
【PHPのバージョン】5.2
【手動】 動く
【実行】 GAEcron
です。
(GAEcronのスレが一年以上書き込みがなかったので、こちらの方が
 目に留まると思い、こちらへ質問させていただきました、すみません)

972名無しさん:2015/09/01(火) 00:44:43
>>971
「ソースを使用して」ってことは自分でデプロイしたもの?
それならGAEの管理コンソールを見たほうが正確だと思う

Master/Slaveサーバーが廃止になってHRDになったんだけどそのせいかな。8月のいつかに完全に停止になってたはず
それ以外の理由はちょっとわかんないです

973名無しさん:2015/09/03(木) 08:29:44
>971です。
GAEの管理コンソール…?
初めて聞く言葉なので、いろいろググりながら調べてみます。
デプロイしたのが4〜5年前、それも、
いろいろなサイトでやり方を見て、その手順どおりにしか
やっていないので、応用が利かず…

まずは、ヒントをいただきまして、ありがとうございます。

974名無しさん:2015/09/06(日) 02:21:54
>971です。
管理コンソール、Master/SlaveサーバーからHRDへ、をキーワードに
いろいろ調べていますが、
どうやら、デプロイしたアプリは、無効、または削除を保留されているか、
みたいなところまでたどり着きました。

また、以前作ったアプリは、Python 2.5系を使用していましたが、
最近のはPython 2.7系を使用、とか、

とにかくいろいろ新しい物を一つずつ作り直して、
そこへ移行していく、みたいなのが解決法かな、と思えてきました。

どこか分かりやすく説明しているサイトを探しつつ、
ゆっくり進めてみます。
ありがとうございます。

975名無しさん:2015/09/06(日) 23:55:17
>>974
もう探したかもしれないけどgaecronclubでぐぐると出るサイトさんがとても簡単でわかりやすいよ

4.5年前ならMaster/Slaveで止まっちゃってたのかも
うちにも一つM/Sのアプリがあったんだけど使わなかったからほっといたら、削除も何にもできなくなってた
デプロイしたらまた普通に動くようになると思うので頑張ってくださいー

976名無しさん:2015/09/10(木) 08:37:05
>>975
971,974です
ありがとうございます。
今週末にでもまた作業してみたいと思いますm(_ _)m

977名無しさん:2015/11/15(日) 23:49:17
【バージョン】Ver.2.0x
【設置鯖名】 ロリポップ
【PHPのバージョン】
【手動】 動かない / 真っ白エラー
【実行】 CRON ロリポップ
【実行間隔】 10分間隔(CRON等で定期的に実行している場合)
【不明点】 検索しましたがうまく見つからず質問させていただきます
下記のコードのうち、上がポストされず、下だけがポストされます。

if(($gi >7 && $gi < 23)&&($gi % 2 === 0 && $min == 00)){
$response = $eb->postRandom("data.php");}

if($gi == 0 && $min == 10){
$response = $eb->postRandom("oyasumi.php");

・時間と分は先に変数を作っています
・一度ツイートを止めたくてcornのほうを止め、次に再開したら
上のプログラムがポストされなくなりました。
・ポスト用のファイルのパーミッションは設定しました。

php初心者なので、初歩的なことなのかもしれませんが、もし考えられる理由があれば教えていただけるとうれしいです。

978名無しさん:2015/11/16(月) 12:07:01
$gi % 2 == 0では

979名無しさん:2021/05/20(木) 22:54:26
【バージョン】Ver.2.1.3
【設置鯖名】 @PAGE(動いていた)→SiteMix(途中まで動いていた:ここまで過去)→StarFree・XFREE(エラーを吐くだけで動かない:現在)
【PHPのバージョン】7.1.8 (XFREEに合わせています)
【手動】 動かない
【実行】 手動
【不明点】

@PAGEの終了に伴いSiteMixへ移行、しばらくは問題なく動いていましたが、ある日突然動かなくなりました。
自分なりに調べてみた感じではサイト自体があまり評判がよろしくなかったようなので、復旧を待つことにしました。
しかし気づいたらもう1年近く経過していたので、最近になってネットオウルのStarFree(無料鯖)で再チャレンジ、
全く動かないので現在のXFREEへ移行してみました。
動かなくなる以前はreplace.phpを実行したのが最後の手入れだったように思います。

実行させたいBotは機能別(時間別)に3つあり、メインとサブのうちの1つのBotを実行すると
Fatal error: Uncaught <table border="1" cellspacing="0">〜
/home/****/****.php.xdomain.jp/public_html/PEAR/HTTP/OAuth/Consumer/Request.php on line 232

というエラーがでます。
また、3つ目のBotを実行すると

Warning: file_get_contents(): Filename cannot be empty in /home/****/****.php.xdomain.jp/public_html/EasyBotter.php on line 60
 〜/EasyBotter.php on line 352
 〜/EasyBotter.php on line 364
 〜/EasyBotter.php on line 365
 〜/EasyBotter.php on line 366

と出ます。
非公式wikiやphaさんのサイトを何度も見ているのですが全くどうなっているのかわかりません。
どうかご教示の程よろしくおねがいいたします。

980名無しさん:2022/06/15(水) 13:23:08
過疎ってるね


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板