Вход

Просмотр полной версии : YourICQ BOT


Страницы : [1] 2

NOmeR1
01.06.2008, 23:38
[ YourICQ BOT ]

Описание:
YourICQ BOT - это ICQ бот, написанный на PHP, с админкой для управления функциями, изменения настроек и просмотра логов.

Возможности админки:
Добавление, изменение и удаление функций (команд бота)
Изменение настроек бота: номер, пароль, метод сохранения логов, шаблон для доступа к командам и т.п.
Просмотр и очистка логов (удачные команды обозначены синим цветом, неудачные - красным)

Функции для админа, которые вызываются по ICQ:
Чтобы отключить бота, надо ему послать команду "stop", по-умолчанию - это сообщение "!stop", но если вы меняли шаблон команды, то сообщение будет другое :)
Команда "restart" нужна для перезапуска бота
Команда "admin_add" добавляет функцию к боту. Можно добавить как статичную (например "help"), то есть ту, которая не имеет параметров, так и динамичную функцию (например "translate")
Команда "admin_delete" с параметром, в котором указывается название команды, удаляет функцию.
Команда "admin_status" имеет 1 параметр - статус бота, который вы хотите поставить.
Комада "admin_xstatus" так же имеет 1 параметр - устанавливает статус-картинку.

INFO:
Все функции имеют PHP синтаксис
Есть возможность управления статусами, функциями по ICQ
Так же есть стандартные функции для примера: определение тИЦ и PR сайта, перевод текста рус->eng->рус, закодировать текст по заданному алгоритму, раскодировать текст
После любого изменения в админке, бота необходимо перезагрузить
Функции admin_add, admin_delete, admin_status и admin_xstatus а так же сохранение логов могут не работать, либо работать небольшое время после запуска бота, потому что может стоять ограничение времени коннекта с базой
Бот работает на классе WebIcqPro, но всё перечисленное выше сделал я :)

Чтобы бот заработал, нужно всего-лишь поставить на файл bot_config.php права на запись (0777), пройти установку по файлу install.php и удалить его

Тестировал бота на 2-х бесплатных хостингах:
000webhost.com, ueuo.com
Работает везде, но там стоят ограничения времени соединения с базой. (Но это не так страшно :))


Уф.. ну, думаю, описал как можно более подробно

Скачать:
[ WEBFILE ] (http://webfile.ru/2020227)
[ DUMP ] (http://dump.ru/file_catalog/625015)
[ SLIL ] (http://slil.ru/25894719)
[ IFOLDER ] (http://ifolder.ru/6968917)

Dimi4
01.06.2008, 23:41
NOmeR1, молодец мен, обошол изоса ;)

Isis
01.06.2008, 23:59
Конкуренция давит на время блин, придется делать обновления :(
Молодец))

NOmeR1
02.06.2008, 00:03
Хы)) Я вне конкуренции!! :D
А вообще, сделал бы ты туда добавку функций (динамичных, статичных), я бы не стал писать его =)

Isis
02.06.2008, 00:11
А вообще, сделал бы ты туда добавку функций (динамичных, статичных), я бы не стал писать его =)
Эм....такое есть =)

NOmeR1
02.06.2008, 00:50
Ну у тебя приходится лезть в сорс и там менять, добавлять. У меня всё через админку делается =)

Stingers
02.06.2008, 10:41
есть нужная мне функция перевода текста )) ГЫ. пасиб. =) ноо одна трабла нажимаю запустить открывается новая белая страница index.php =) хз почему.. и бот не выходит в онлайн :((

NOmeR1
02.06.2008, 10:50
Добавь вначале файла index.php текст:
error_reporting(E_ALL);
Выводятся ошибки? Если да, то какие?

=faraon=
02.06.2008, 11:35
Молодецццц. +1

Stingers
02.06.2008, 16:05
Выводятся ошибки? Если да, то какие?
Ошибок нет =\ чистая страничка твой код вставил

mad_xakep
02.06.2008, 17:02
все работает на отлично круглые сутки висит в сети без всякого крона

NOmeR1
03.06.2008, 02:02
Обновил бота и соответственно первый пост. Исправил глюк, из-за которого он не работал на некоторых серваках. Удалил ненужные стандартные функции, добавил новых.. Настоятельно рекомендую обновить.

Isis
03.06.2008, 02:57
Настоятельно рекомендую тебе спрятать свой Icq номер т.к. огого сколько тебе будут стучать =)

НTL
03.06.2008, 03:57
На каких хостах еще работает?

Isis
03.06.2008, 04:07
Там где есть сокеты, set_time_limit & ignore_user_abort

mad_xakep
03.06.2008, 13:13
Обновил бота и соответственно первый пост. Исправил глюк, из-за которого он не работал на некоторых серваках. Удалил ненужные стандартные функции, добавил новых.. Настоятельно рекомендую обновить.
не работает команда пр си он пишет что по нулям!

NOmeR1
03.06.2008, 13:24
не работает команда пр си он пишет что по нулям!
Не знаю, что у тебя глючит

NOmeR1 (13:21:01 3/06/2008)
!cy_pr "www.antichat.ru"

NOmeR1 Bot (13:21:05 3/06/2008)
тИЦ: 550
PR: 4

mad_xakep
03.06.2008, 13:58
Не знаю, что у тебя глючит

NOmeR1 (13:21:01 3/06/2008)
!cy_pr "www.antichat.ru"

NOmeR1 Bot (13:21:05 3/06/2008)
тИЦ: 550
PR: 4
Я(14:56:25 3/06/2008)
!cy_pr "www.antichat.ru"

bot (14:56:30 3/06/2008)
тИЦ: 0nPR: 0

Abramovich
03.06.2008, 16:49
у меня для любого сайта пишет
тИЦ: 550
Pr: 4

.::BARS::.
03.06.2008, 17:15
А есть бот как у калеостры? что бы анекдоты выдавал... рангом!? если есть, то стукните в личку...

Buffalon
03.06.2008, 17:40
И кстати можно сказать что если пришол 'submit' то всё рульно...

Stern
03.06.2008, 18:05
Хм...вопрос...как добавить ПРАВИЛЬНО команду.... имеем

//!инвиз
if(preg_match('~^!инвиз~', $msg_text))
{
preg_match('~\s+([0-9-]+)~', $msg_text, $icq);
foreach($icq as $i => $xek)
{
$xek = str_replace('-', NULL, $xek);
if($i)
{
$fp = fsockopen("kanicq.ru", 80, $errno, $errstr, 30);
$query = 'human=1&uin='.$xek.'&uin4login=&password4login=';
$out = "POST /invisible/?method=2 HTTP/1.1\r\n";
$out .= "Host: kanicq.ru\r\n";
$out .= "Referer: http://kanicq.ru/invisible/?method=2\r\n";
$out .= "Content-Type: application/x-www-form-urlencoded\r\n";
$out .= "Content-length: ".strlen($query)."\r\n\r\n";
$out .= $query;
fwrite($fp, $out);
$result = '';
while (!feof($fp))
{
$result .= fgets($fp, 128);
}
if ( preg_match ("/Free for chat/i" , "$result")) { $status = "ГОТОВ К ОБЩЕНИЮ"; }
elseif ( preg_match ("/Online/i" ,"$result")) { $status = "ОНЛАЙН"; }
elseif ( preg_match ("/Away/i" , "$result")) { $status = "ОТОШЕЛ"; }
elseif ( preg_match ("/N\/A/i" , "$result")) { $status = "НЕДОСТУПЕН"; }
elseif ( preg_match ("/Occupied/i" , "$result")) { $status = "ЗАНЯТ"; }
elseif ( preg_match ("/DND/i" , "$result")) { $status = "ПРОСИТ НЕ БЕСПОКОИТЬ"; }
elseif ( preg_match ("/offline/i" , "$result")) { $status = "ОФФЛАЙН"; }
elseif ( preg_match ("/status\/invisible/i" , "$result")) { $status = "НЕВИДИМЫЙ"; }
else { $status = "НЕИЗВЕСТНО"; }

$send .= 'Номер '.$xek.' сейчас '.$status.'!'."\n";

}
else
{
continue;
}
}
}
Это из бота ISIS....надо переделать под этого :)
Пробывал так..не пашет..(


//!инвиз

preg_match('~\s+([0-9-]+)~', $msg_text, $icq);
foreach($icq as $i => $xek)
{
$xek = str_replace('-', NULL, $xek);
if($i)
{
$fp = fsockopen("kanicq.ru", 80, $errno, $errstr, 30);
$query = 'human=1&uin='.$xek.'&uin4login=&password4login=';
$out = "POST /invisible/?method=2 HTTP/1.1\r\n";
$out .= "Host: kanicq.ru\r\n";
$out .= "Referer: http://kanicq.ru/invisible/?method=2\r\n";
$out .= "Content-Type: application/x-www-form-urlencoded\r\n";
$out .= "Content-length: ".strlen($query)."\r\n\r\n";
$out .= $query;
fwrite($fp, $out);
$result = '';
while (!feof($fp))
{
$result .= fgets($fp, 128);
}
if ( preg_match ("/Free for chat/i" , "$result")) { $status = "ГОТОВ К ОБЩЕНИЮ"; }
elseif ( preg_match ("/Online/i" ,"$result")) { $status = "ОНЛАЙН"; }
elseif ( preg_match ("/Away/i" , "$result")) { $status = "ОТОШЕЛ"; }
elseif ( preg_match ("/N\/A/i" , "$result")) { $status = "НЕДОСТУПЕН"; }
elseif ( preg_match ("/Occupied/i" , "$result")) { $status = "ЗАНЯТ"; }
elseif ( preg_match ("/DND/i" , "$result")) { $status = "ПРОСИТ НЕ БЕСПОКОИТЬ"; }
elseif ( preg_match ("/offline/i" , "$result")) { $status = "ОФФЛАЙН"; }
elseif ( preg_match ("/status\/invisible/i" , "$result")) { $status = "НЕВИДИМЫЙ"; }
else { $status = "НЕИЗВЕСТНО"; }

return 'Номер '.$xek.' сейчас '.$status.'!'."\n";

}
else
{
continue;
}
}

mad_xakep
03.06.2008, 18:23
у меня для любого сайта пишет
тИЦ: 550
Pr: 4
он тебе античата выдает показатели они там и стоят

NOmeR1 выложи плиз норм работающую функцию пр и си

Stern
03.06.2008, 18:25
И еще вопрос, как "ВЫКЛЮЧИТЬ" обработку оффлайн сообщений....??

Buffalon
03.06.2008, 18:41
НА www.ueuo.com всё работает... ..Автору ПЛЮСЕГ))

Buffalon
03.06.2008, 19:07
И еще вопрос, как "ВЫКЛЮЧИТЬ" обработку оффлайн сообщений....??
Хм/Эт как тя понять ,оффлайн?

А®ТеS
03.06.2008, 19:39
Так и понять. Сообщения, которые были присланы в тот момент, когда бот был не в сети (offline).

Stern
03.06.2008, 20:54
Тьфу...не оффлайн ток что обнаружил.....включил я хстатусы...и теперь при запросе его(статуса) мне бот шлет типа не найдено команды..(

rushter
03.06.2008, 21:54
Выложите для теста плз готовые команды

NOmeR1
03.06.2008, 22:02
Обновлено. Сделал 2 разные функции - pr и cy.

2rushter, там уже есть готовые команды. Набери боту "!help".

Stern, у меня всё проще)
Название команды делаешь любое (состоящее из латинских букв или цифр)
В переменных указываешь - $icq
Функция:
$fp = fsockopen("kanicq.ru", 80, $errno, $errstr, 30);
$query = 'human=1&uin='.$icq.'&uin4login=&password4login=';
$out = "POST /invisible/?method=2 HTTP/1.1\r\n";
$out .= "Host: kanicq.ru\r\n";
$out .= "Referer: http://kanicq.ru/invisible/?method=2\r\n";
$out .= "Content-Type: application/x-www-form-urlencoded\r\n";
$out .= "Content-length: ".strlen($query)."\r\n\r\n";
$out .= $query;
fwrite($fp, $out);
$result = '';
while (!feof($fp))
{
$result .= fgets($fp, 128);
}
fclose($fp);
if ( preg_match ("/Free for chat/i" , "$result")) { $status = "ГОТОВ К ОБЩЕНИЮ"; }
elseif ( preg_match ("/Online/i" ,"$result")) { $status = "ОНЛАЙН"; }
elseif ( preg_match ("/Away/i" , "$result")) { $status = "ОТОШЕЛ"; }
elseif ( preg_match ("/N\/A/i" , "$result")) { $status = "НЕДОСТУПЕН"; }
elseif ( preg_match ("/Occupied/i" , "$result")) { $status = "ЗАНЯТ"; }
elseif ( preg_match ("/DND/i" , "$result")) { $status = "ПРОСИТ НЕ БЕСПОКОИТЬ"; }
elseif ( preg_match ("/offline/i" , "$result")) { $status = "ОФФЛАЙН"; }
elseif ( preg_match ("/status\/invisible/i" , "$result")) { $status = "НЕВИДИМЫЙ"; }
else { $status = "НЕИЗВЕСТНО"; }

return 'Номер '.$icq.' сейчас '.$status;
Чтобы отключить обработку оффлайн сообщений, надо из index.php удалить строку :
$icq->activateOfflineMessages($array['icq_number']);

Stern
03.06.2008, 22:08
Вопрос...в админке поле "переменная", пишу $xexe => в поле "Фукнция" пишу скрипт и могу использовать переменную $xexe которая будет равна тому что написано !команда ТУТ
?????????????????????????

NOmeR1
03.06.2008, 22:10
Да, только у меня там в шаблоне ещё кавычки стоят, то есть:
!команда "ТУТ"
Теперь $xexe = ТУТ

Stern
03.06.2008, 22:25
ТЬфу....оказывается все правильно у мну было с инвизом..(не тот вариант что я выложил)....тока я без "111" слал.(

зы. можно вырубить '".." как нить? а то убрал в настройках там где шаблон " и вообще перестали команды с $xexe работать :D

NOmeR1
03.06.2008, 22:32
Зачем кавычки убирать? Тогда у тебя делитель параметров будет - пробел, и ты не сможешь его исползовать в самих параметрах.

Stern
03.06.2008, 22:40
млин.....вот тут вот "плохая" реализация разделения переменных...ибо не удобно ставить спец символы когда с телефона сидишь...=((

NOmeR1
03.06.2008, 22:47
млин.....вот тут вот "плохая" реализация разделения переменных...ибо не удобно ставить спец символы когда с телефона сидишь...=((
Хех.. Как ты себе представляешь автоматическим способом? Просто там автоматически выдираются заданные параметры) Можешь поставить и через пробел, но ведь согласись, ты напишешь:
!encode url md5 base64 md5 это строка для перевода
Как определить где начало первого параметра, а где начало другого параметра? Мозгами конечно можно, но вот скриптом - затруднительно.

rushter
03.06.2008, 22:52
Блин у меня на любую команду пишет "Не существует такой команды"

Stern
03.06.2008, 22:54
хм...а зачем делать сразу несколько ТАКИХ параметров, их можно разбить на несколько команд....например у бота Isisа там разделение пробелом идет...и норм:)

зы. удалил кавычки из шаблона, перестали вообще все команды работать... =\

mad_xakep
03.06.2008, 22:57
NOmeR1 у меня пр все ровно ноль показывает амнсто пр ... все работает и тиц поазывает и т д но пр непоказывает долго думает около 30 сек

Slavka2
04.06.2008, 11:59
Установил всё как написано бот заработал но никакие команды не работают бот молчит :(

Abramovich
04.06.2008, 12:01
Единственное у меня это бот выключаеться из сети через определенное время приходитсья занаво включать. Это можно исправить?

Slavka2
04.06.2008, 12:24
Установил всё как написано бот заработал но никакие команды не работают бот молчит :(
Заработал правда на некоторые команды пишет несуществует такой команды и ещё не могу её выключить командой stop

mad_xakep
04.06.2008, 14:09
а у меня вопрос такой как сделать функцию чтоб при например переменной !adminu "текст" отправлялся текст на аську админа!?

а вообщем бот работает на ура

!admin_status "FREE4CHAT это вот команда непахат ток да впринципе она и ненужна мне кажеться....

2Slavka2 !stop у меня пашет с аськи админа шлешь он пишет "ICQ бот завершил работу"

NOmeR1
04.06.2008, 19:07
mad_xakep,
Переменная - $message
Функция

global $icq, $array;
$icq->sendMessage($array['admin_icq'], $message);
return 'Сообщение отправлено';

Можно с указанием - от кого сообщение.

global $icq, $array, $msg;
$icq->sendMessage($array['admin_icq'], 'Сообщение от '.$msg['from']."\n".$message);
return 'Сообщение отправлено';

NOmeR1
04.06.2008, 23:09
Кому интересно - скрипт отправки на мыло.

Переменные
$from, $to, $subj, $msg, $type

Функция
$email = '~^[a-z0-9\._-]+@[a-z0-9\._-]+\.[a-z]+$~i';
if(preg_match($email, $to) && preg_match(str_replace('^', NULL, str_replace('$', NULL, $email)), $from) && $msg && $type) {
$headers = array(
'MIME-Version: 1.0',
'Content-type: text/'.($type == 'text' ? 'plain' : 'html').'; charset=windows-1251',
'From: '.$from
);
$mailed = mail($to, $subj, $msg, implode("\r\n", $headers));
if($mailed) {
return 'Сообщение успешно отправлено';
} else {
return 'Сообщение не отправлено';
}
} else {
return 'Сообщение не может быть отправлено';
}
Работает через mail() поэтому на многих хостингах не пашет.

Stern
04.06.2008, 23:25
Такой косяк...с компа все отлично команды воспринимает, но вот с телефоном косяк...с Jimm XaTTaB последней версии не понимает команды вообще....в логи пишет что то типа

****** (23:21:36 04/06/08)
!помощь

а и еще про последнюю команду...пришло письмо БЕЗ отправителя, но в самом теле писмь строчки откого и чё за тип письма...
Content-type: text/plain; charset=windows-1251

From: ****@ya.ru


Гыыыы тут типа меседж будет

NOmeR1
05.06.2008, 01:07
Тип письма - либо text, либо html. С телефоном вряд ли смогу помочь - возможно глюк в Jimm'е. На счёт майла - скорее всего ошибка у почтовика. Пробывал отправлять на gmail.com - отправляет отлично.

Stern
05.06.2008, 01:53
Лан...с джимом попробую с разработчиком разобраться...) а что можешь посоветовать касательно "запроса хСтатуса"....а то при запросе он мне шлет типка команда не найдена....а если включить автозапрос...то получается просто флуд..(

bxN5
05.06.2008, 01:56
стандартные на ура,а мои функции не хочет кушать=(

Gara
05.06.2008, 13:07
Может кто под скажет
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/g/***********/WWW/ICQ/WebIcqPro.class.php on line 28
под звездачками название сайта

.::BARS::.
05.06.2008, 16:52
WebIcqPro.class.php ошибка в 28 строке... а точнее '}'

NOmeR1
05.06.2008, 19:15
WebIcqPro.class.php ошибка в 28 строке... а точнее '}'
Нет там этого символа :) Попробуй версию PHP поставить пятую, если можешь.

Gara
05.06.2008, 19:50
к большому сожеленью не могу,
вот не давно выбело то что не может подключиться к login.icq.com, а можно добаветь еще или заменить на IP адресса их просто много например, по такой методики работает jimm, если он не может подключиться к одному то он подключается к другому IP
вот список который IP которые есть у меня в jimm
64.12.161.153
64.12.161.185 = login.icq.com
64.12.200.89
205.188.153.97
205.188.153.98
205.188.179.233
P.S. если подключаться через IP то связь просто надежней и быстрее запускается

Stern
06.06.2008, 00:35
Вообщем с Jimmом непонятка....пробывал с другой версии все норм...с моей "основной"...глюк....

зы. и все таки как сделать так чтобы при запросе х статуса бот "молчал"...???

NOmeR1
06.06.2008, 02:09
Обновлено. Добавлены статус-картинки (XСтатусы) и ещё что-то. Вот скрин настроек =)
http://i036.radikal.ru/0806/9e/2d3381783b29t.jpg (http://radikal.ru/F/i036.radikal.ru/0806/9e/2d3381783b29.png.html)

Stern, я твоего вопроса вообще не понял.

Karapuziko
06.06.2008, 11:55
Не плохой бот, но вот небольшие минусы:
[-] Нет возможности переподключения
[-] Не принимает сообщение от многих клиентов Jimm
[-] Так же не плохо бы было реализовать буфер+таймер, чтобы бот не вылетел...
А так на готовом классе, думаю для многих не составит труда реализовать бота, веских причин выбрать именно твой бот я не вижу...но все равно молодец:)
Извени за критику....

Gara
06.06.2008, 13:03
Karapuziko для переподключения используй крон

.::BARS::.
09.06.2008, 16:40
смотрю я один заинтересовался.... сейчас тогда вопросик с примером кину... может кто поможет...

.::BARS::.
09.06.2008, 17:37
Вот пример
Команда - anekdot
Переменные оставь пустыми
Функция


$anekdots = array(

'Приходит блондинка к травмотологу с перевязанной рукой и ногой. Доктор
спрашивает ее, что случилось. Блондинка отвечает:
- А я пылесос включала и он мне руку током ударил!
- А с ногой что?
- Ну и я его ударила, что мне было еще делать!?!',

'жгучий брюнет встретится с очаровательной трехкомнатной блондинкой с
окнами на арбат',

'Между Медведевым и Путиным если одно, но стопроцентное отличие: в их
фамилиях не совпадает ни одной буквы!',

'Из новостей:
Yahoo! намерено купить российского игрока, вероятнее всего - "Яндекс"
А вот название для нового ресурса долго придумывать не надо - ЯхуЯндекс',

'Новый фильм ужасов для офисных работников: "Понедельник начинается в
субботу".',

'У меня горе - мой персидский кот на моем персидском ковре сделал
Персидский залив.',

'Лицо не московской национальности...'

);

return $anekdots[rand(0,strlen($anekdots)-1)];


Отправляешь боту сообщение "!anekdot", он возвращает случайный анекдот из массива $anekdots

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

пример на этой асе 613794

.::BARS::.
09.06.2008, 17:38
не работает........

.::BARS::.
09.06.2008, 17:49
все... работает

.::BARS::.
09.06.2008, 18:06
Mismatch nick or password, re-enter - вот проблемка... + Н хочет редактировать файлы большой длины

Nelzone
09.06.2008, 18:45
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/x/****.ru/WWW/bot/WebIcqPro.class.php on line 28

Isis
09.06.2008, 19:25
Nelzone, что на строках 0 - 50 ?

spamoney
10.06.2008, 15:56
Тоже делал бота на этом классе )

Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/x/****.ru/WWW/bot/WebIcqPro.class.php on line 28

Проблема скорее всего в версии php, попробуй поставить бота на хост с поддержкой php 5

Mismatch nick or password, re-enter


http://www.intrigue.ru/forum/index.php/topic,139.0.html

Не плохой бот, но вот небольшие минусы:
[-] Нет возможности переподключения

case '!restart':
if($msg['from'] == ADMINUIN)
{
$icq->sendMessage(ADMINUIN, "Сервис ICQBot перезапускается...");
$icq->disconnect();
sleep(5); // Засыпаем на 5 секунд, чтобы тут же после дисконекта, не конектиться.
echo 'Запущено';

$server = 'www.example.com'; // Путь до основного файла с ботом на сервере. Он же локальный.
$getop = 'bot.php';

$fp = fsockopen($server,80,$errno,$errstr,5);
$out = "GET /".$getop." HTTP/1.1\r\n";
$out .= "Host: $server\r\n";
$out .= "User-Agent: ICQBOT 1.0\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
exit();
}else{
$icq->sendMessage($msg['from'], "Доступ запрещен");
}

На многие вопросы по классу уже даны ответы на форуме

http://www.intrigue.ru/forum/index.php

NOmeR1
10.06.2008, 16:57
Добавил функцию перезапуска бота, за это спасибо spamoney. У кого уже бот установлен, можете просто обновить файл index.php.

Stern
11.06.2008, 00:09
Хм...воспрос(косяк)...есть команда !анек...которая рандомно выводит из таблицы строчку...

global $regs;
$query = mysql_query("SELECT * FROM `anek` order by rand() limit 1");
$row = mysql_fetch_array($query);
return $row['text'];

Так вот после 16 часов простоя, бот больше не отвечает на эту команду...

NOmeR1
11.06.2008, 11:21
Всё тот же лимит коннекта с базой, о котором я говорил в первом посте.

P.S. global $regs там не нужно.

Gifts
11.06.2008, 18:52
Работает великолепно.

В будущих версиях хотелось бы видеть:
1) Более прозрачное изменение имен таблиц
2) Упрощение переноса с одного хостинга на другой
3) Выполнение действий по времени (например отправка определенного сообщения на номер/группу номеров) без использования крона

rushter
11.06.2008, 19:54
в след версии добавь побольше команд,или упрости их добавление. =)

NOmeR1
11.06.2008, 21:24
упрости их добавление. =)
Да куда уж проще? Я восновном над упрощением добавления функций и работал.
1) Более прозрачное изменение имен таблиц
То есть?
3) Выполнение действий по времени (например отправка определенного сообщения на номер/группу номеров) без использования крона
Могу сделать чтобы в определённое время выполнялась функция, только вот многим ли людям это будет нужно?

Gifts
11.06.2008, 22:13
1) Более прозрачное изменение имен таблиц
Например если хостинг не свой, то приходится менять имена таблиц, ибо 'bot_config' - слишком заметно
$config_table='bot_config';
$log_table='bot_log'; и т.д. Мелочь, а приятно.

3) Выполнение действий по времени (например отправка определенного сообщения на номер/группу номеров) без использования крона
Сервис напоминаний. Проверка файлов на сервере на шелы. Своеобразный крон с функцией оповещения по аське.

rushter
12.06.2008, 00:39
Я 0 в php, объясни как добавить команду что при вводе просто выдавался текст.

NOmeR1
12.06.2008, 00:42
Команда любая
Переменные оставь пустыми
Функция

return 'Text';
У меня там есть несколько стандартных команд - мог бы понять, как добавить функцию. Возьми хоть обычную команду "help".

А вообще - выучи PHP и не парься)

rushter
12.06.2008, 00:45
а можно чтобы пользователь мог записывать свои данные ?

rushter
12.06.2008, 01:02
Мне нужно чтобы человек смог оставить заявку типа !komand text data,а другой смог бы это ещё и прочитать.

.::BARS::.
12.06.2008, 05:21
Мне нужно чтобы человек смог оставить заявку типа !komand text data,а другой смог бы это ещё и прочитать.

опасно.... Да и зачем? типа добавить анекдот... что бы люди сами смогли добавлять... а если кто нибудь твоего бота завалит рекламой?! проверку делать надо..... не очень задумка, хотя реализовать можно...

rushter
12.06.2008, 12:20
Нет,не анекдот.Рекламой валить не будут,бот для подсети будет

Stingers
14.06.2008, 00:13
гы как убрать?
Команды:
!cy "http://www.antichat.ru/" <- узнать тИЦ сайта
!pr "http://www.antichat.ru/" <- узнать PageRank сайта
ссылку на античат

NOmeR1
14.06.2008, 01:10
В управление функциями заходил?

VILLMD
14.06.2008, 01:39
Вот мож кому пригодится, вытаскивает top15 из базы psychostats'а (веб стата для cs сервера)

<?

$db = "psychostats";
$user = "";
$pass = "";
$server = "localhost";


$link = mysql_connect($server, $user, $pass) or die("неудалось установить соединение с сервером: " . mysql_error());

mysql_select_db($db, $link) or die ('Неудалдось соединиться с $db : ' . mysql_error());

$topkill = "SELECT `plrid`, `skill` FROM `ps_plr` ORDER BY `skill` DESC LIMIT 15"; // Вытаскиваем plrid
$res_inf = mysql_query($topkill) or die("Invalid query1: " . mysql_error());

while ($row = mysql_fetch_array($res_inf, MYSQL_NUM)) {
$n++;
$id = "$row[0]"; //plrid
$username = "SELECT `plrid` , `name`, `totaluses` FROM `ps_plr_ids` WHERE `plrid` = $id ORDER BY `totaluses` DESC LIMIT 15"; //Вытаскиваем ник по полученному plrid
$res_name = mysql_query($username) or die("Invalid query2: " . mysql_error());
$rown = mysql_fetch_array($res_name, MYSQL_NUM) ;
$bb[$n] = "$n. $rown[1] \n";
}

$top = " $bb[1] $bb[2] $bb[3] $bb[4] $bb[5] $bb[6] $bb[7] $bb[8] $bb[9] $bb[10] $bb[11] $bb[12] $bb[13] $bb[14] $bb[15]";
return $top;

?>

asser
14.06.2008, 03:22
Отлично, спасибо тебе. Былобы здорово добавить возможность подключать несколько ботов одновременно. Кста, а когда новая версия ожидается?

asser
14.06.2008, 12:04
После закрытия http://bot.***.ru/index.php - бот уходит в оффлайн. Можно ли как-нить от этого избавиться???

Neorin
14.06.2008, 13:04
можете подсказать как поменять кодировку, а то у меня в логах и в командах если на русском ??, и в функции!!! вместо русских букв пишет ?????????????
в чем проблема я так понимаю в кодировке, как изменить ее!?

NOmeR1
14.06.2008, 16:04
Обновил бота. Исправлены глюки с кодировкой.

После закрытия http://bot.***.ru/index.php - бот уходит в оффлайн. Можно ли как-нить от этого избавиться???
Значит ignore_user_abort не работает. Попроси хостера врубить функцию (либо отрубить ограничение).
можете подсказать как поменять кодировку, а то у меня в логах и в командах если на русском ??, и в функции!!! вместо русских букв пишет ?????????????
в чем проблема я так понимаю в кодировке, как изменить ее!?
Скачай обновление.

Neorin
14.06.2008, 17:36
что за обновление?

NOmeR1
14.06.2008, 18:24
что за обновление?
Просто заново скачай и установи, я ссылки обновил.

Stingers
14.06.2008, 21:22
бага с клиентами которые пишут в бот...
с Jimm не со всех отвечает бот.. и Infirum иили как там проект новый у квипа называется бот молчит в стельку

rushter
15.06.2008, 01:10
Как пароль пароль в админку сменить ?

NOmeR1
15.06.2008, 18:06
Слушайте, может хватит задавать вопросы, ответы на которые можно найти в админке?
rushter, Настройки -> Изменить логин/пароль админа

rushter
15.06.2008, 22:14
чёт я даже не заметил :)

Ventrue
16.06.2008, 21:06
незнаю может я что-то неправильно делаю..но выходит следущие:

Warning: require_once(WebIcqPro.class.php) [function.require-once]: failed to open stream: No such file or directory in /home/a7961353/public_html/icq/index.php on line 6


Fatal error: require_once() [function.require]: Failed opening required 'WebIcqPro.class.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/a7961353/public_html/icq/index.php on line 6

NOmeR1
16.06.2008, 21:34
Ventrue, копировать надо все файлы!

Ventrue
16.06.2008, 22:07
в смысле копировать?

rushter
16.06.2008, 22:53
У тебя файлов не хватает на сервере.

asser
17.06.2008, 11:54
Значит ignore_user_abort не работает. Попроси хостера врубить функцию (либо отрубить ограничение).


Слушай, а как отрубить ограничения? Поставил бота на 000webhost, т.к. в первом посте ты написал, что на нем тестил, но увы, у меня там так же проблемма...

rushter
17.06.2008, 12:21
У меня хостинг был на ueuo.com,аккаунт удалили а бот уже 4день работает )

asser
17.06.2008, 14:09
2rushter аккаунт удалили из за бота?!
2NOmeR1 Спасибо, я разобрался с ignore_user_abort. А есть шанс, что в сл версии можно будет добавлять несколько UINов?
2ALL А есть ли у кого функция цитатника башорг?? Буду весьма признателен

NOmeR1
17.06.2008, 14:15
2rushter аккаунт удалили из за бота?!
2NOmeR1 Спасибо, я разобрался с ignore_user_abort. А есть шанс, что в сл версии можно будет добавлять несколько UINов?
Пока не планировал.

.::BARS::.
17.06.2008, 18:17
2ALL А есть ли у кого функция цитатника башорг?? Буду весьма признателен
Попробуй через rss реализовать

asser
17.06.2008, 23:04
Попробуй через rss реализовать
Если бы я мог - давно бы уже реализовал...

rushter
17.06.2008, 23:12
asser да уже 2 раз )
Может кто-нибудь подскажет хостинг на котором не забанят ?

NOmeR1
18.06.2008, 00:15
Если бы я мог - давно бы уже реализовал...
Хз.. Функция у меня на боте не пошла, но по идее должна работать. Вот:
Функция без переменных
$count = 10;
$delimetr = "\r\n- - - - - - - - -\r\n";
$contents = file_get_contents('http://bash.org.ru/');
preg_match_all('~<div>(?!<)(.+)</div>~isU', $contents, $regular);
$text = '';
for($i=0;$i<$count;$i++) {
$text .= htmlspecialchars_decode(preg_replace('~<br\s?/?>~', "\n", $regular[1][$i]));
if($i != $count-1) {
$text .= $delimetr;
}
}
return $text;
Должна выдавать 10 последних цитат с баша.. Не пашет наверное из-за долгой обработки..

2rushter, меня на ueuo не банят уже долго.

Gara
18.06.2008, 00:53
NOmeR1
СПАСИБО за скрипт ВСЕ ПАШЕТ просто супер

asser
18.06.2008, 01:32
2NOmeR1 Попробовал - тоже тчетно((
2all Народ, кто шарит в пхп, может попробуете сей косяк исправить. Еще было бы здорово выкладывать свои функции, обнародовать, так сказать=))

Isis
18.06.2008, 02:17
Не пашет наверное из-за долгой обработки..
А кто мешает посылать сокетом и брать не все байты?

asser
18.06.2008, 22:14
2IsisА кто тебе мешает? ТЫ же хорошо в пхп? Или это принципиально, ибо не твой бот?! ;)

Gen1rus
20.06.2008, 20:25
Не возможно создать таблицу `bot_config` : Table 'bot_config' already exists
Не возможно создать таблицу `bot_functions` : Table 'bot_functions' already exists
Не возможно создать таблицу `bot_logs` : Table 'bot_logs' already exists

Chaak
20.06.2008, 20:41
Не возможно создать таблицу `bot_config` : Table 'bot_config' already exists
Не возможно создать таблицу `bot_functions` : Table 'bot_functions' already exists
Не возможно создать таблицу `bot_logs` : Table 'bot_logs' already exists
Это значит что такие таблицы уже существуют.
Решение:
Удали в БД старые таблицы с этими именами.

abatsk
21.06.2008, 22:13
Добавляю функции, неробят собаки

rushter
21.06.2008, 22:22
abatsk переменные вписываешь ?

abatsk
21.06.2008, 22:28
да. Конечно. Все норм. разобрался. В одном месте косячек делал.
А кстате можно хороший бот замутить из бота от isis и этого, если их объединить. Думаю заняца этим, если авторы не против будут. Мож глядишь что и получица.

asser
22.06.2008, 00:05
2abatsk Было бы отлично! Сделать добавку UINов, добавить пару дефолтных функций, типа башорг, какие-нить рандомные анекдоты, погода, ну в общем че-нить в этом духе. Тогда боту бы в принципе аналогов небыло. Ну а на счет авторов, я думаю - они не будут против=))

NOmeR1
22.06.2008, 00:49
да. Конечно. Все норм. разобрался. В одном месте косячек делал.
А кстате можно хороший бот замутить из бота от isis и этого, если их объединить. Думаю заняца этим, если авторы не против будут. Мож глядишь что и получица.
Не, не надо.

abatsk
22.06.2008, 09:04
Не, не надо.
Оки понял.
А вообще анеки добавить, что бы random() из базы брал пару сек всего то. По крайней мере на боте от isis. Но думаю и тут легко.

abatsk
22.06.2008, 09:54
Что-то непойму.
Команда: joke
Переменная: Пусто
Функция:
if (preg_match("#^.joke#", $msg_text)) {
if ($result = mysql_query("SELECT * FROM `mybot_jokes` ORDER BY RAND() LIMIT 1")) {
$row = mysql_fetch_array($result);
mysql_free_result($result);
$send = $row['joke'];
}
}

!joke
Он молчит
Где ошибка?

NOmeR1
22.06.2008, 10:31
Что-то непойму.
Команда: joke
Переменная: Пусто
Функция:
if (preg_match("#^.joke#", $msg_text)) {
if ($result = mysql_query("SELECT * FROM `mybot_jokes` ORDER BY RAND() LIMIT 1")) {
$row = mysql_fetch_array($result);
mysql_free_result($result);
$send = $row['joke'];
}
}

!joke
Он молчит
Где ошибка?
Нде... Зачем в моём боте ты делаешь лишнюю проверку?
Достаточно просто сделать так:
if ($result = mysql_query("SELECT * FROM `mybot_jokes` ORDER BY RAND() LIMIT 1")) {
$row = mysql_fetch_array($result);
mysql_free_result($result);
return $row['joke'];
}

abatsk
22.06.2008, 12:07
Все. Понял. Догнал. Анекдоты сделал.
Сейчас сделаю тогда еще сонник и курс валют.

abatsk
22.06.2008, 16:07
Курс валют сделал. Что-то немогу сонник замутить к сожалению.

if (preg_match("#^.sonnic#", $msg_text))
{
preg_match("#\s+(.+)#", $msg_text, $msg);
if(!empty($msg[0]))
{
$query = mysql_query("SELECT * FROM `slaed_sonnic` WHERE `name`='".$msg[1]."'");
$row = mysql_fetch_array($query);
$send = "Слово: ".$row['name']."\r\nОписание: ".$row['valid'];
}
else
{
$send = "Пожалуйста введите то что вам приснилось! гг Одним словом";
}
}


Вот образец. Сделай функцию рабочей пожалуйста. Погляжу где ошибался.

abatsk
22.06.2008, 16:25
Такс. Понял.
$query = mysql_query("SELECT * FROM `slaed_sonnic` WHERE `name`='".$message."'");
$row = mysql_fetch_array($query);
return $row['valid'];

Bishounen
24.06.2008, 19:00
а кто сможет сделать функцию болтуна как на MaxBot'е, т.е. когда вводишь неверную команду он не писал "не существует такой команды" а писал различные бессмысленные фразы

abatsk
24.06.2008, 19:09
а кто сможет сделать функцию болтуна как на MaxBot'е, т.е. когда вводишь неверную команду он не писал "не существует такой команды" а писал различные бессмысленные фразы
Дык тоже самое, только не команда, а что бы брал random() из базы данных, если я не ошибаюсь...
Это если бессмысленное нужно.
Тут главное фразы забить, гг.

abatsk
25.06.2008, 06:12
Как я понял вот тут:
} else {


$icq->sendMessage($msg['from'], 'Не существует такой команды. Для вывода справки отправьте: !help');
$bad = true;


Нужно сделать обращение к базе данных и рандомно выводило что бы. вечером погляжу.

jenyavlg
25.06.2008, 14:37
а как сделать штоб сообщение приходило админу ну на другой uin

abatsk
25.06.2008, 15:16
Тему посмотри получше. В теме написано было.

jenyavlg
26.06.2008, 00:19
куда надо вставлять эту функцию она у меня не работает global $icq, $array, $msg;
$icq->sendMessage($array['admin_icq'], 'Сообщение от '.$msg['from']."\n".$message);
return 'Сообщение отправлено';

jenyavlg
26.06.2008, 01:14
ну как зоставить эту функцию отсылки админу работать куда её надо вставлять global $icq, $array, $msg;
$icq->sendMessage($array['admin_icq'], 'Сообщение от '.$msg['from']."\n".$message);
return 'Сообщение отправлено';

jenyavlg
26.06.2008, 01:40
вы чё все спите

gisTy
26.06.2008, 02:04
jenyavlg хватит флудить, почитай всю тему и учи пхп чтобы пониматьчто куда и зачем ставить

NOmeR1
26.06.2008, 07:46
ну как зоставить эту функцию отсылки админу работать куда её надо вставлять
О да... Какой идиот придумал админку? :eek:

mad_xakep
29.06.2008, 10:33
NOmeR1 а как сделать чтоб Пр он внутряк страниц еще определял?

if(preg_match('~^https?://[A-Za-z0-9.-]+/?$~i', $url))

NOmeR1
29.06.2008, 10:55
if(preg_match('~^https?://[A-Za-z0-9.-]+/?.*$~i', $url))

jenyavlg
30.06.2008, 16:07
а этот бот будет усовершенствоватся типа v1.0 v1.1

jenyavlg
30.06.2008, 16:20
значит нет

NOmeR1
01.07.2008, 12:12
jenyavlg, чего тебе надо? Ты думал я за 13 минут к тебе прибегу и отвечу?
Нет у моего бота никаких версий, я его периодически обновляю, добавляя новые функции, возможности и т.п.

jenyavlg
01.07.2008, 19:28
а где можно будет скачать обновление

NOmeR1
01.07.2008, 19:30
С каждым обновлением ссылка обновляется в первом посте

jenyavlg
01.07.2008, 23:59
когда послений раз обновлял

Solker
02.07.2008, 00:03
jenyavlg Попробуй посмотреть последнее редактирвоание, первого поста.

}{OT@b
02.07.2008, 11:43
Здравствуйте, подскажите у меня бот ничего не пишет он офлайн хост тот что на первом посте указан кто может поглядеть в настройки может чета не так заранее спасибо.

jenyavlg
03.07.2008, 21:05
как сделать штоб все сообщения которые приходят боту можно было потом прочитать

jenyavlg
04.07.2008, 01:51
ну чё не кто не скажет

insurgent
05.07.2008, 22:30
При запуске бота через админку пишет:
Warning: fsockopen() has been disabled for security reasons in ./WebIcqPro.class.php on line 1055
Error: Cant establish connection to: login.icq.com:80

Jer1cho
05.07.2008, 22:33
У хостера выключена fsockopen();

Disassociative
28.07.2008, 06:03
Не подскажите как получить статус и х-статус с подписью другого контакта ?

как сделать штоб все сообщения которые приходят боту можно было потом прочитать
В логах можно посмотреть, через админку :)

d0z3r
31.07.2008, 22:57
Блин, у меня проблема, толи я туплю, толи сервак. Залил все на ueuo.com но фишка в том, что файлик install.php не заливается, при попытке залива через FIleZilla (ровно как и через обменник в админке) файл либо вообще не заливается, либо на сервере создается пустой файл с таким же именем. подскажите в чем проблема?

5triker
31.07.2008, 23:07
переименуй попробуй
или мб место кончилось )

d0z3r
31.07.2008, 23:16
на первом хосте попросту неудается установить коннект "Error: Cant establish connection to: login.icq.com:80"

d0z3r
31.07.2008, 23:17
пробовал любые варианты, вся фигня в том, что он именно этот файл обнуляет и нехочет заливать, остальные заливаются без проблем. Хостинг недавно зереганый, места там еще 195мб

да, еще вопросец, почему он пытается коннектиться через 80й порт?

аа, все, с портом разобралси, но бот всеравно отказывается коннектиться.

З.Ы. думаю попробовать залить бота на x10hosting.com , по-крайней мере бот от Isis'a там работал =)

OnArs
02.08.2008, 12:34
Большое СпасибО! Молодецц!

HawkDoom
04.08.2008, 22:28
ueuo.com не хочет install принимать ну ни как даже веб файл-менеджером, свой шелл залил и он ни как, и разархивировать на сервере из зипа тож в ноль =) . Похоже у них админы готовятся к вражеской INSTALLяции =))

У мну бот прёт, функции( в том числе свои) прекрасно работают, ток не долго, - вылетает минут через 5-7
База и хост платные -всё поддерживают
Значит соединение с icq сервером рвётся - так? Сервер поменял с icq.com на более устойчивый(которым пользуюс сам) - рвётся всё равно
Если так то как бы пингер какой сделать? Или двух ботов друг на друга натравить шоб соединение держали?
Жду ответов, и ещё есть ли у кого стабильная (более суток связь с icq серваками) ?

NOmeR1
04.08.2008, 23:14
ueuo.com не хочет install принимать ну ни как даже веб файл-менеджером, свой шелл залил и он ни как, и разархивировать на сервере из зипа тож в ноль =) . Похоже у них админы готовятся к вражеской INSTALLяции =))

У мну бот прёт, функции( в том числе свои) прекрасно работают, ток не долго, - вылетает минут через 5-7
База и хост платные -всё поддерживают
Значит соединение с icq сервером рвётся - так? Сервер поменял с icq.com на более устойчивый(которым пользуюс сам) - рвётся всё равно
Если так то как бы пингер какой сделать? Или двух ботов друг на друга натравить шоб соединение держали?
Жду ответов, и ещё есть ли у кого стабильная (более суток связь с icq серваками) ?
Когда ты устанавливал скрипт, у тебя было написано это?

Скрипт может работать бесконечно
Скрипт будет работать после закрытия браузера
Бот будет работать исправно

HawkDoom
05.08.2008, 00:39
да было.
Ща кста крон поставил, есть бага (не только с кроном) у меня он при обращении к index.php подключается-вылетает-подключается
Вот и получается даже когда его крон пинает он постоянно прыгает

777DEMYAN777
05.08.2008, 12:36
Warning: fsockopen() has been disabled for security reasons in /*********/WebIcqPro.class.php on line 1055
Error: Cant establish connection to: login.icq.com:80

Что это значит не могу врубить подскажите? Я пытался его запустить а тут такое!

Isis
05.08.2008, 12:43
На твоем хостинге отключены сокеты, ищи другой

HawkDoom
05.08.2008, 14:25
Ну так что, как долго бот держится в сети у кого?
есть хотя бы сутки где?
и почему при запросе индекс.пхп он подключается два раза?

x-demon
05.08.2008, 14:26
У меня неделями висел, пока не надоел =)

HawkDoom
05.08.2008, 14:29
на каком хосте?

x-demon
05.08.2008, 14:46
На серваке своем. time limit в ноль и ignore user abort в true, правда сработает только если рут есть =)

inlanger
06.08.2008, 00:57
Мда... написал:
Скрипт может работать бесконечно
Скрипт будет работать после закрытия браузера
Бот будет работать исправно
а вырубается каждые 5 мин... обидно

HawkDoom
06.08.2008, 17:15
можно создать файл .htaccess и в нем записать
php_flag ignore_user_abort true
set_time_limit можно задать как php_value set_time_limit 0, но неограниченно по времени скрипт выполняться в любом случае не будет
Тестю, но помоему всё равно вылетает

inlanger
06.08.2008, 18:37
Было бы удобно изменять стандартное сообщение "Не существует такой команды" из админки на свою...

HawkDoom
07.08.2008, 21:01
Конст - на платном хосте не прёт больше 5 минут.

inlanger
08.08.2008, 12:48
Vds тут рулит, конечно...

HawkDoom
09.08.2008, 13:14
на каком Vds работает и почём аренда?

Tumb13r
09.08.2008, 14:29
Есть у кавонить функция проверки на inviz через http://inviz.su/! Киньте если не жалко)

inlanger
09.08.2008, 15:48
Кстати, такой вопрос - как отправлять какой-то текст не по команде, а просто так? Допустим - каждые 10 минут...

maximum
10.08.2008, 10:47
В настройках бота стоит Сохранять все логи , а логи почемуто пусты :confused:

В чём тут может быть проблема?

NOmeR1
10.08.2008, 12:51
В настройках бота стоит Сохранять все логи , а логи почемуто пусты :confused:

В чём тут может быть проблема?
Я в первом посте писал, возможно соединение с базой данной быстро обрывается. Вот думаю на файлах сделать.

mailbrush
10.08.2008, 13:52
Где изменить сервер ICQ?
У мну такое:
Warning: fsockopen() has been disabled for security reasons in /www/******/icq/WebIcqPro.class.php on line 1055
Error: Cant establish connection to: login.icq.com:80
Я так понял, надо порт изменить, но ГДЕ?

5triker
10.08.2008, 13:54
fsockopen() has been disabled
причем тут порт когда отключены сокеты ?

mailbrush
10.08.2008, 16:57
Мона ли их включить?

5triker
10.08.2008, 17:13
если имееш доступ к конфигам апача то да =)

Isis
10.08.2008, 17:30
Хостинг нормальный купи.....

mailbrush
10.08.2008, 22:02
У мну фришный хостинг.

HawkDoom
10.08.2008, 22:46
Написал функцию сонника. переменная $string? команду сами придумаете, код:

$string = convert_cyr_string($string,"w","k");// Убираем проблему с кодировкой
$fp = fsockopen('www.marry.ru',80); // Коннект
// формируем запрос
$query = 'rule=exact&what='.urlencode($string);
$headers = array(
'POST /secret/sonnik.php HTTP/1.0',
'Host: www.marry.ru',
'Referer: http://www.marry.ru/secret/sonnik.php',
'Content-Type: application/x-www-form-urlencoded',
'Content-Length: '.strlen($query),
"\r\n"
);

fputs($fp, implode("\r\n", $headers).$query);// Post запрос
$text = ""; // объявляем переменную
while(!feof($fp))
{
$text.= fgets($fp);
}
$text = convert_cyr_string($text,"k","w");// Убираем проблему с кодировкой
// Ищем ID к слову
$regex = '/wid=(.*)"/';// правило сортировки
preg_match_all($regex, $text, $out); //сортируем
$id_link = $out[1][0]; // присваиваем ID переменной
fclose($fp);
################################################## ######################
$fp = fsockopen('www.marry.ru', 80); // Коннект
$headers = array(
"GET /secret/sonnik.php?wid=".$id_link." HTTP/1.0",
'Host: www.marry.ru',
"\r\n"
);
fputs($fp,implode("\r\n", $headers));// GET запрос
$text = "";
while(!feof($fp))
{
$text.= fgets($fp);
}
$text = convert_cyr_string($text,"k","w");// Убираем проблему с кодировкой
$regex = '/<\/a><\/b><p>(.*)<p><hr size=1>/';// правило сортировки
preg_match_all($regex, $text, $out); //сортируем
fclose($fp);
$son = $out[1][0];
$son = strip_tags($son);
if($son=="")
{
$son = "Нет описания к слову ".$_POST['n'];
}
return $son;

jskorvin
14.08.2008, 00:24
Хм.. а бот ещё работает? незапускается на денвере и вдске, ошибок вообще никаких непишет, как искать где ошибка..

// решено, всё отлично работает, глюк был в пшп, пересобрал и заработало, ну а денвер он на то и денвер..

#Wolf#
16.08.2008, 17:39
можете написать грабу с http://kanicq.ru/invisible/?method=2

NOmeR1
16.08.2008, 17:49
можете написать грабу с http://kanicq.ru/invisible/?method=2
Уже писалось =)
https://forum.antichat.ru/showpost.php?p=716854&postcount=30

vl25
17.08.2008, 13:28
Почему-то он выключается сам иногда, а иногда сутки может работать!
И сделайте чтобы он писал когда слишком большое сообщение, а то тупо молчком игнорирует! И я так и не понял как его хоть раз в сутки перезапускать с помошью Крона!

rushter
17.08.2008, 19:41
сутками работает если ему пишут постоянно,в кроне нужно указать через какой интервал перезапускать скрипт(указать путь до него).

4NT1P0V
18.08.2008, 20:32
Пересмотрел всю тему, кроме хостинга ueuo.com какой еще подойдет??

.::BARS::.
19.08.2008, 08:24
Как можно выводить инфу из файла?

inlanger
19.08.2008, 11:46
$text=file_get_contents('http://путь к файлу');
if (!empty($text)){
return $text;}
else {return 'Нет связи';}

.::BARS::.
19.08.2008, 11:56
Вопрос не правильно поставил:
есть файл, в нем текст вида...

текст1
----
текст2
----
текст3

Нужно делать вывод рандомно... то есть --- это разделитили между текстами....

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

Если было бы так:

текст1
текст2
текст3

То можно было просто рендомно строчки вытаскивать....

а тут разделитель, как быть? + текст не в одну строчку... т.е.

текст1
---
текст2
текст2.1
текст2.2
---
текст3

вот в таком виде...

NOmeR1
19.08.2008, 12:01
<?php
$f = 'filename.txt';
$a = preg_split('~[\r\n]{1,2}---[\r\n]{1,2}~', file_get_contents($f));
echo $a[rand(0,sizeof($a)-1)];
?>

Byrger
19.08.2008, 16:03
А не подскажите как организовать анекдоты с сайта или гороскоп по знаку зодиака (тоесть человек пишет !гороскоп "стрелец")

OnArs
19.08.2008, 18:18
А не подскажите как организовать анекдоты с сайта или гороскоп по знаку зодиака (тоесть человек пишет !гороскоп "стрелец")
Пиши скрипт и пользуйся функцией Сокет()

Byrger
19.08.2008, 18:21
помогите переписать под этот YourICQ бота

<?php


class bashorg {

static $regexp = '~<div class="q">[\s|\S]*?<\/div>\s{0,}<div>([\s|\S]*?)<\/div>~',
$buffer = array();

static function SendQuote() {
$quote = array_pop(self::$buffer);
SteelBot::Msg($quote);
if ( count(self::$buffer) < 1 ) {
self::RefreshDB();
}
}

static function RefreshDB() {
$result = '';
if ($sock = fsockopen("bash.org.ru", 80) ) {
$d = fputs ($sock, "GET http://bash.org.ru/random HTTP/1.0\n");

fputs ($sock, "Connection: Keep-Alive\n".
"User-Agent: SteelBot/1.0 (http://steelbot.net)\n".
"Host: bash.org.ru\n".
"Pragma: no-cache\n".
"Cache-Control: no-cache\n".
"Connection: close\n\n" );

while ( !feof($sock) ) {
$result .= fgets($sock, 1024);
}
preg_match_all(self::$regexp, $result, $matches);

foreach($matches[1] as $quot) {
$quot = html_entity_decode($quot);
$quot= str_replace( array("<br>", "<br />"), "\n", $quot);
self::$buffer [] = iconv('WINDOWS-1251', 'UTF-8', $quot);;
}
fclose($sock);
echo "[bashorg] quotes buffer has been refreshed (".count(self::$buffer)." quotes added).\n";
} else {
echo "[bashorg] ERROR: can't establish connection to bash.org.ru\n";
}
}

}


SteelBot::RegisterCmd('bash', array('bashorg', 'SendQuote'), 1, 'bash - чтение цитат с bash.org.ru');
bashorg::RefreshDB();

OnArs
19.08.2008, 19:04
NOmeR1:
Если боту писать то будет висеть бесконечно
Окей, а если в коде подправить и бот сам себе будет каждые, скажем, 5 мин. писать?

P.s. С Нагрузкой всё понятно, но.. куда деваться?

Byrger
19.08.2008, 19:05
Вот достал скрипт погоды...
Но не знаю что указывать переменной..
подскажите плиз.
<?
$towns=array(
'Абакан'=>29862,'Агинское'=>29676,'Адлер'=>37171,'Алапаевск'=>28248,'Алдан'=>31004,
'АлександровСад'=>34391,'Александровск-Сах.'=>32061,'Александровское'=>23955,
'Амдерма'=>23022,'Анадырь'=>25563,'Анапа'=>37001,'Ангарск'=>30715,'Арзамас'=>27653,
'Армавир'=>37031,'Архангельск'=>22550,'Астрахань'=>34880,'Ачинск'=>29467,
'Байкальск'=>30818,'Балашов'=>34152,'Балтийск'=>26701,'Барабинск'=>29612,
'Баргузин'=>30636,'Баренцбург'=>20107,'Белгород'=>34214,'Белозерск'=>22939,
'Беломорск'=>22551,'Белорецк'=>28831,'Березники'=>28028,'Березово'=>23631,
'Бийск'=>29939,'Биробиджан'=>31713,'Бирск'=>28621,'Благовещенск'=>31510,
'Богучар'=>34336,'Бологое'=>26298,'Большеречье'=>28593,'Борзя'=>30965,'Брянск'=>26898,
'Бугульма'=>28711,'Бугуруслан'=>28806,'Буденовск'=>37061,'Бузулук'=>28909,
'Буйнакск'=>37471,'БухтаПровидения'=>25594,'Верещагино'=>28216,
'ВерхнийБаскунчак'=>34579,'Верхотурье'=>28144,'Верхоянск'=>24266,'Вилюйск'=>24641,
'Витим'=>30054,'Владивосток'=>31960,'Владикавказ'=>37228,'Владимир'=>27532,
'Волгоград'=>34560,'Вологда'=>27037,'Воркута'=>23226,'Воронеж'=>34123,'Вуктыл'=>23612,
'Выборг'=>22892,'Вытегра'=>22837,'ВышнийВолочок'=>26393,'Вязьма'=>26695,'Гагарин'=>27507,
'Гдов'=>26157,'Геленжик'=>37004,'Глазов'=>28214,'Горин'=>31489,'Горно-Алтайск'=>36052,
'ГорячийКлюч'=>37014,'Губаха'=>28134,'Гусь-Хрустальный'=>27539,'Дальнереченск'=>31873,
'ДвинскойБерезник'=>22762,'Дербент'=>37470,'Дивное'=>34858,'Дмитров'=>27419,'Дно'=>26268,
'Долинск'=>32133,'Дудинка'=>23074,'Екатеринбург'=>28440,'Елабуга'=>28506,
'Елатьма'=>27648,'Елец'=>27928,'Ельня'=>26783,'Енисейск'=>29263,'Ербогачен'=>24817,
'ЕрофейПавлович'=>30683,'Ершов'=>34186,'Ефремов'=>27921,'Забайкальск'=>30968,
'Звериноголовское'=>28756,'Зея'=>31300,'Зима'=>30603,'Златоуст'=>28630,
'Змеиногорск'=>36038,'Зырянка'=>25400,'Иваново'=>27347,'Ивдель'=>23921,'Игарка'=>23274,
'Игнашино'=>30686,'Ижевск'=>28411,'Иркутск'=>30791,'Истра'=>27511,'Ича'=>32411,
'Ишим'=>27485,'Йошкар-Ола'=>28573,'Казань'=>27595,'Калач'=>34247,'Калевала'=>22408,
'Калининград'=>26702,'Калуга'=>27703,'Каменск-Уральский'=>28449,'Камень-наОби'=>29822,
'Камышин'=>34363,'Кандалакша'=>22217,'Канск'=>29581,'Каргополь'=>22845,'Карталы'=>28941,
'Кашин'=>27316,'Кемерово'=>29645,'Киренск'=>30230,'Киров'=>27199,'Кирсанов'=>27957,
'Кисловодск'=>37123,'Клин'=>27417,'Когалым'=>23748,'Коломна'=>27625,'Колпашево'=>29231,
'Комсомольск-на-Амуре'=>31561,'Кондопога'=>22727,'Корсаков'=>32158,'Кострома'=>27333,
'Котлас'=>22887,'Кош-Агач'=>36259,'Краснодар'=>34929,'Красноозерск'=>29813,
'Красноселькуп'=>23465,'Красноуфимск'=>28434,'Красноярск'=>29570,'Кропоткин'=>34936,
'Кудымкар'=>28116,'Кунгур'=>36024,'Курган'=>28661,'Курильск'=>32174,'Курск'=>34009,
'Куртамыш'=>28659,'Кызыл'=>36096,'Ленск'=>24923,'Липецк'=>27930,'Ловозеро'=>22127,
'ЛодейноеПоле'=>22913,'Лысьва'=>28234,'Магадан'=>25913,'Магнитогорск'=>28838,
'Майкоп'=>37021,'Макаров'=>32116,'Макушино'=>28666,'Малоярославец'=>27606,'Мама'=>30157,
'Мариинск'=>29551,'Махачкала'=>37472,'Медвежьегорск'=>22721,'Мезень'=>22471,
'Миллерово'=>34438,'МинеральныеВоды'=>37054,'Мирный'=>24726,'Мичуринск'=>27935,
'Могоча'=>30673,'Можайск'=>27509,'Можга'=>28409,'Моздок'=>37145,'Мончегорск'=>22212,
'Морозовск'=>34545,'Моршанск'=>27848,'Мурманск'=>22113,'Мценск'=>27817,
'МысТерпения'=>32099,'МысШмидта'=>25173,'Н.Новгород'=>27459,'Надым'=>23445,
'Нальчик'=>37212,'Наро-Фоминск'=>27611,'Нарьян-Мар'=>23205,'Находка'=>31970,
'Невельск'=>32145,'Невинномысск'=>37036,'Нерчинск'=>30768,'Нефтеюганск'=>23848,
'Нижнеангарск'=>30433,'Нижневартовск'=>23471,'Нижнеудинск'=>29698,'НижнийТагил'=>28240,
'Николаевск-на-Амуре'=>31369,'Новгород'=>26179,'Новокузнецк'=>29846,'Новосибирск'=>29634,
'НовыйОскол'=>34213,'НовыйУренгой'=>23358,'Ноглики'=>32053,'Норильск'=>23078,
'Облучье'=>31702,'Обоянь'=>34109,'Оймякон'=>24688,'Октябрьское'=>23734,
'Олекминск'=>24944,'Оленек'=>24125,'Омск'=>28698,'Онега'=>22641,'Орел'=>27906,
'Оренбург'=>35121,'Оса'=>28324,'Осташков'=>26389,'ОстровБеринга'=>32618,
'ОстровВизе'=>20069,'ОстровВрангеля'=>21982,'ОстровДиксон'=>20674,
'ОстровКотельный'=>21432,'Охотск'=>31088,'П.-Камчатский'=>32594,'ПавловскийПосад'=>27523,
'Партизанск'=>31987,'Певек'=>25051,'Пенза'=>27962,'Пермь'=>28224,'Петрозаводск'=>22820,
'Печора'=>23418,'Пинега'=>22563,'Поронайск'=>32098,'Поярково'=>31587,
'Преображение'=>31989,'Приаргунск'=>30975,'Приморско-Ахтарск'=>34824,'Прохладный'=>37144,
'Псков'=>26258,'Пушкинскиегоры'=>26359,'Радужный'=>23758,'Ребриха'=>29923,
'Рославль'=>26882,'Ростов-на-Дону'=>34730,'Ростов'=>27329,'Рубцовск'=>36034,
'Рыльск'=>33166,'Ряжск'=>27835,'Рязань'=>27730,'Салехард'=>23330,'Самара'=>28807,
'Санкт-Петербург'=>26063,'Саранск'=>27760,'Саратов'=>34172,'Сасово'=>27745,
'Северо-Енисейск'=>23986,'Северо-Курильск'=>32215,'Северобайкальск'=>30435,
'Северодвинск'=>22546,'Сеймчан'=>25703,'Семячики'=>32509,'Серафимович'=>34357,
'Серов'=>28044,'Серпухов'=>27618,'Сковородино'=>30692,'Славгород'=>29915,
'Сладково'=>28587,'Смоленск'=>26781,'Соболево'=>32477,'СоветскаяГавань'=>31770,
'Соловки'=>22429,'Сортавала'=>22802,'Сосьва'=>23625,'Средне-Колымск'=>25206,
'СреднийВасюган'=>29111,'Сретенск'=>30777,'Ставрополь'=>34949,'СтаницаКаневская'=>34825,
'СтараяРусса'=>26275,'СтарыйОскол'=>34116,'Стерлитамак'=>28825,'Сузун'=>29823,
'Сургут'=>23849,'Сусуман'=>24790,'Сухиничи'=>27707,'Сызрань'=>27983,'Сыктывкар'=>23804,
'Таганрог'=>34720,'Тайга'=>29541,'Тайшет'=>29594,'Тамбов'=>27947,'ТаркоСале'=>23552,
'Татарск'=>29605,'Таштагол'=>29954,'Тверь'=>27402,'Териберка'=>22028,'Терней'=>31909,
'Тикси'=>21824,'Тихвин'=>26094,'Тихорецк'=>34838,'Тобольск'=>28275,'Токма'=>30127,
'Тольятти'=>27890,'Томпа'=>30439,'Томск'=>29430,'Тотьма'=>27051,'Троицк'=>28748,
'ТроицкоПечорск'=>23711,'Туапсе'=>37018,'Тула'=>27719,'Тулун'=>30504,'Тура'=>24507,
'Туринск'=>28255,'Туруханск'=>23472,'Тутончаны'=>23589,'Тымовское'=>32017,'Тында'=>30499,
'Тюмень'=>28367,'Углегорск'=>32088,'Улан-Удэ'=>30823,'Ульяновск'=>27786,'Уральск'=>35108,
'Урюпинск'=>34240,'Усть-Баргузин'=>30635,'Усть-Ишим'=>28382,'Усть-Калманка'=>36044,
'Усть-Камчатск'=>32408,'Усть-Кулом'=>23803,'Усть-Ордынский'=>30713,'Уфа'=>28722,
'Ухта'=>23606,'Уэлен'=>25399,'Хабаровск'=>31735,'Ханты-Мансийск'=>23933,
'Хасавьюрт'=>37248,'Хатанга'=>20891,'Холмогоры'=>22559,'Холмск'=>32128,
'Чайковский'=>28413,'Чара'=>30372,'Чебоксары'=>27581,'Челюскин'=>20292,
'Челябинск'=>28645,'Черемхово'=>30617,'Череповец'=>27113,'Черкесск'=>37047,
'Чермоз'=>28128,'ЧерныйЯр'=>34578,'Чернышевск'=>30766,'Черняховск'=>26711,
'Черский'=>25123,'Черусти'=>27538,'Чита'=>30758,'Чокурдах'=>21946,'Чулым'=>29625,
'Шадринск'=>28552,'Шарья'=>27271,'Шахты'=>34635,'Шелагонцы'=>24329
);

$xxx = file_get_contents('http://meteo.ru/weather/index.php?id='.$towns['Таганрог'].'&townlist=1');

$a = '<[^>]+>';
$b = '[^<]*';
$c = '\s*';
$d = '[^<]+';
$a1= "$c$a$c";
$a2= "$c$a$b$a$c";
$a3= "$c$a$b$a$b$a$c";
$a4= "$c$a$b$a$b$a$b$a$c";
$a5= "$c$a$b$a$b$a$b$a$b$a$c";
$a7= "$c$a$b$a$b$a$b$a$b$a$b$a$b$a$c";

if(preg_match("/>($d )$a4($d)$a4($d)$a2($d)$a2$b$a1($d)(?:$a5|$a7)($d)$ a1($d)$a3($d)$a1($d)</i", $xxx, $m))
{
echo $m[1].$m[2].$m[3].$m[4].$m[5].'<br>'.$m[6].$m[7].$m[8].$m[9];
}
else
{
echo 'Sorry, cant get information.';
}
?>

Byrger
19.08.2008, 19:58
И можно ли как-то убрать "!" перед вводом команды... а то люди жалуются :(

rushter
19.08.2008, 20:28
Byrger, мешает ? можно, но зачем ?
указывай $towns

Byrger
19.08.2008, 20:48
Byrger, мешает ? можно, но зачем ?
указывай $towns
Ну есть несколько людей которые тестят...они говорят что нафиг не надо "!"


Поставил переменную $towns и бот молчит на запрос :(
Отправляю запрост типа: !погода "Пермь"
И полный 0

Byrger
20.08.2008, 07:28
Я в PHP не очень силён, но попробовал написать свой скрипт под бота...
Скажите плиз что не так?
Скрипт привязывается к гороскопам horo.mail.ru


$znak=array(
'Овен'=>1,'Телец'=>2,'Близнецы'=>3,'Рак'=>4,'Лев'=>5,'Дева'=>6,
'Весы'=>7,'Скорпион'=>8,'Стрелец'=>9,'Козерог'=>10,'Водолей'=>11,'Рыбы'=>12
);



$fp = fsockopen("horo.mail.ru", 80, $errno, $errstr, 30);
$query = 'prediction.html?sign='.$znak.'&time=1';
$out = "POST /prediction.html?sign=1&time=1 HTTP/1.1\r\n";
$out .= "Host: horo.mail.ru\r\n";
$out .= "Referer: http://horo.mail.ru/prediction.html?sign=1&time=1\r\n";
$out .= "Content-Type: application/x-www-form-urlencoded\r\n";
$out .= "Content-length: ".strlen($query)."\r\n\r\n";
$out .= $query;







$text = ""; // объявляем переменную
while(!feof($fp))
{
$text.= fgets($fp);
}
$text = convert_cyr_string($text,"k","w");// Убираем проблему с кодировкой
// Ищем ID к слову
$regex = '/wid=(.*)"/';// правило сортировки
preg_match_all($regex, $text, $out); //сортируем
fclose($fp);
################################################## ######################
$fp = fsockopen('www.horo.mail.ru', 80); // Коннект
$headers = array(
"GET /prediction.html?sign=".$znak."&time=1 HTTP/1.0",
'Host: www.horo.mail.ru',
"\r\n"
);
fputs($fp,implode("\r\n", $headers));// GET запрос
$text = "";
while(!feof($fp))
{
$text.= fgets($fp);
}
$text = convert_cyr_string($text,"k","w");// Убираем проблему с кодировкой
$regex = '/<div id="tm_today"><p>(.*)</p><script type="text/javascript">/';// правило сортировки
preg_match_all($regex, $text, $out); //сортируем
fclose($fp);
$gor = $out[1][0];
$gor = strip_tags($son);
if($gor=="")
{
$gor = "Нет описания к слову ".$_POST['n'];
}
return $gor;

NOmeR1
20.08.2008, 08:51
Ну есть несколько людей которые тестят...они говорят что нафиг не надо "!"


Поставил переменную $towns и бот молчит на запрос :(
Отправляю запрост типа: !погода "Пермь"
И полный 0
Попробуй в коде заменить $towns['Таганрог'] на это: $towns[$sity] затем echo на return а в переменных указать $sity
Только вот может и не работать, регулярка там жестокая :)

Byrger
20.08.2008, 09:19
кстати с многих месседжеров приходят сообщения в неправильной кодировке!
Допустим !�h�e�l�p вместь !help :(

Byrger
20.08.2008, 09:24
Попробуй в коде заменить $towns['Таганрог'] на это: $towns[$sity] затем echo на return а в переменных указать $sity
Только вот может и не работать, регулярка там жестокая :)
НЕт не помогло....так-же скрипт молчит... :mad:

Byrger
20.08.2008, 10:35
М... кстати...
Хотелось бы увидеть статус сообщение в боте...
Это для того чтоб пользователи читали разную инфу...

rushter
20.08.2008, 13:28
у меня скрипт не молчит , но пишет всегда "Sorry, cant get information."

Devoldini
20.08.2008, 13:41
если ты зашел юзером, то вытягивай пинчем.

DarkMark
21.08.2008, 23:12
а почему у меня когда я например отправляю боту комунду !admin_status "DND"
он выдаёт Статус не установлен : MySQL server has gone away??
и как сделать чтобы бот сам передоключался при разрыве а то он работет 10 минут еесли ему не пишут

rushter
21.08.2008, 23:35
чтобы "переподключался" нужно перезапускать скрипт,его можно перезапускать через крон _http://cronjob.ru/

DarkMark
21.08.2008, 23:49
rushter спс терь буду знать!
а вот как с разобраться со сменой статуса через ICQ?

rushter
21.08.2008, 23:51
это из-за хостинга такая ошибка скорей всего

DarkMark
21.08.2008, 23:55
rushter я использую хостинг http://ueuo.com/ так как сказано чтоо он хорошо подходит для бота!

rushter
22.08.2008, 00:00
на нём не работает эта функция

DarkMark
22.08.2008, 00:05
rushter ну ладно

DarkMark
22.08.2008, 23:30
как то этот крон плохо работает вроде я поставил 15 мин всё активировал бот пишет что он включается, а потом через 3 сек он выключается! в чем проблема???

Art-Ge-Force
23.08.2008, 10:51
как сделать чтобы он вместо \'нет такой комманды\' писал случайную фразу из sql ? O_O

NOmeR1
23.08.2008, 12:25
как сделать чтобы он вместо \'нет такой комманды\' писал случайную фразу из sql ? O_O
Не надо из sql, лучше в файле index.php после <?php напиши :
$answers = array('Нет такой команды', 'Не существует такой команды', 'Эээ... От куда ты такую команду взял?');
Потом измени:
'Не существует такой команды'
На это:
$answers[rand(0,sizeof($answers)-1)]

Соответственно можешь изменять значения у $answers

Art-Ge-Force
23.08.2008, 12:46
пасип

Tumb13r
23.08.2008, 14:59
на jimm не отвечает!:(

DarkMark
23.08.2008, 23:11
помогите сделать так чтобы можно было отпровлять анонимные сообщения от бота ну функцию такую

Byrger
25.08.2008, 19:58
Скажите плиз как переделать скрипт отправки письма админу на просто отправки сообщения...тоесть вводим кому (ICQ) и сообщение

global $icq, $array;
$icq->sendMessage($array['admin_icq'], $message);
return 'Сообщение отправлено';

Byrger
25.08.2008, 20:35
NOmeR1, переводчик перестал работать... точнее когда бот пытается перевести то он падает...

inlanger
26.08.2008, 00:54
Сайт переводчика изменил диз. Граббер надо переписывать.

NOmeR1
26.08.2008, 10:26
Byrger
Скажите плиз как переделать скрипт отправки письма админу на просто отправки сообщения...тоесть вводим кому (ICQ) и сообщение
$icq->sendMessage($from, $msg);
return 'Сообщение отправлено';
В переменных - "$from, $msg"
NOmeR1, переводчик перестал работать... точнее когда бот пытается перевести то он падает...
Позже переделаю, сейчас над другим скриптом работаю

Byrger
26.08.2008, 11:24
Странно бот падает когда пытается отправить сообщение...
если скрипт написать так

global $icq
$icq->sendMessage($from, $msg);
return 'Сообщение отправлено';

то он ничего не отвечает...

NOmeR1
26.08.2008, 11:32
Прости, забыл "global $icq;" подставить, а ты забыл точку с запятой
global $icq;
$icq->sendMessage($from, $msg);
return 'Сообщение отправлено';
теперь должно работать

Byrger
26.08.2008, 16:17
Кароче тестил на могих клиентах... Jimm и QIP Infernum не воспренимает...каракули одни... а от ICQ6 только английские буквы...

.::BARS::.
29.08.2008, 11:18
У меня норм все... а джим каракули выдает т.к. в утф отсылает... можно кодировку бота сменить и все

.::BARS::.
29.08.2008, 11:19
$zzz=str_replace('С‘','ё',$zzz); $zzz=str_replace('Р№','й',$zzz); $zzz=str_replace('С†','ц',$zzz); $zzz=str_replace('Сѓ','у',$zzz); $zzz=str_replace('Рє','к',$zzz); $zzz=str_replace('Рµ','е',$zzz); $zzz=str_replace('РЅ','н',$zzz); $zzz=str_replace('Рі','г',$zzz); $zzz=str_replace('С?','ш',$zzz); $zzz=str_replace('С‰','щ',$zzz); $zzz=str_replace('Р·','з',$zzz); $zzz=str_replace('С…','х',$zzz); $zzz=str_replace('СЉ','ъ',$zzz); $zzz=str_replace('С„','ф',$zzz); $zzz=str_replace('С‹','ы',$zzz); $zzz=str_replace('РІ','в',$zzz); $zzz=str_replace('Р°','а',$zzz); $zzz=str_replace('Рї','п',$zzz); $zzz=str_replace('СЂ','р',$zzz); $zzz=str_replace('Рѕ','о',$zzz); $zzz=str_replace('Р»','л',$zzz); $zzz=str_replace('Рґ','д',$zzz); $zzz=str_replace('Р¶','ж',$zzz); $zzz=str_replace('СЌ','э',$zzz); $zzz=str_replace('СЏ','я',$zzz); $zzz=str_replace('С‡','ч',$zzz); $zzz=str_replace('СЃ','с',$zzz); $zzz=str_replace('Рј','м',$zzz); $zzz=str_replace('Рё','и',$zzz); $zzz=str_replace('С‚','т',$zzz); $zzz=str_replace('СЊ','ь',$zzz); $zzz=str_replace('Р±','б',$zzz); $zzz=str_replace('СЋ','ю',$zzz); $zzz=str_replace('РЃ','Ё',$zzz); $zzz=str_replace('Р™','Й',$zzz); $zzz=str_replace('Р¦','Ц',$zzz); $zzz=str_replace('РЈ','У',$zzz); $zzz=str_replace('Рљ','К',$zzz); $zzz=str_replace('Р•','Е',$zzz); $zzz=str_replace('Рќ','Н',$zzz); $zzz=str_replace('Р“','Г',$zzz); $zzz=str_replace('РЁ','Ш',$zzz); $zzz=str_replace('Р©','Щ',$zzz);
$zzz=str_replace('Р—','З',$zzz); $zzz=str_replace('РҐ','Х',$zzz); $zzz=str_replace('РЄ','Ъ',$zzz); $zzz=str_replace('Р¤','Ф',$zzz); $zzz=str_replace('Р«','Ы',$zzz); $zzz=str_replace('Р’','В',$zzz); $zzz=str_replace('Рђ','А',$zzz); $zzz=str_replace('Рџ','П',$zzz); $zzz=str_replace('Р*','Р',$zzz); $zzz=str_replace('Рћ','О',$zzz); $zzz=str_replace('Р›','Л',$zzz); $zzz=str_replace('Р”','Д',$zzz);
$zzz=str_replace('Р–','Ж',$zzz);
$zzz=str_replace('Р*','Э',$zzz); $zzz=str_replace('РЇ','Я',$zzz); $zzz=str_replace('Р§','Ч',$zzz); $zzz=str_replace('РЎ','С',$zzz); $zzz=str_replace('Рњ','М',$zzz); $zzz=str_replace('Р˜','И',$zzz); $zzz=str_replace('Рў','Т',$zzz); $zzz=str_replace('Р¬','Ь',$zzz); $zzz=str_replace('Р‘','Б',$zzz); $zzz=str_replace('Р®','Ю',$zzz);
можно это добавить при приеме и отправке....
$zzz не обязательно так...
return $zzz;

.::BARS::.
30.08.2008, 17:52
http://wap.kysaka.org/priznanielove/ как это для бота замутить?
http://wap.kysaka.org/goro3/
http://wap.kysaka.org/weather/
и это?

rushter
30.08.2008, 18:10
http://wap.kysaka.org/priznanielove/ как это для бота замутить?
http://wap.kysaka.org/goro3/
http://wap.kysaka.org/weather/
и это?
руками как )

.::BARS::.
30.08.2008, 19:56
никак.... пробовал.. догнать не могу что с переменными, какие там меняются и как быть с полом в признании... пример если можно на одном из них..

temp_late
04.09.2008, 13:59
Я тут немного пропустил, а бот работает, на qip был сменен как это протокол, а бот вроде по квипу собирался или нет.

.::BARS::.
05.09.2008, 09:06
Я тут немного пропустил, а бот работает, на qip был сменен как это протокол, а бот вроде по квипу собирался или нет.
бот на классе... работает!

Twoster
05.09.2008, 10:21
.::BARS::.,
При такой перекодировке могут быть проблемы с некоторыми символами! Лучше использовать функцию Iconv()!

rushter
18.09.2008, 21:12
на каком бесплатном ещё работает ?

Winst0n
21.09.2008, 21:41
пытаюсь зайти в админке в настройки admin.php?mod=bot_config, говорит введите логин и пароль... я ввожу он перемешает меня обратно на admin.php... т.е. в настройки незайти... как исправить ?! и еще, немоглибы вы зделать так чтобы сообшение которое посылают боту, периадрисовывалось админу!

rushter
21.09.2008, 21:47
пытаюсь зайти в админке в настройки admin.php?mod=bot_config, говорит введите логин и пароль... я ввожу он перемешает меня обратно на admin.php... т.е. в настройки незайти... как исправить ?! и еще, немоглибы вы зделать так чтобы сообшение которое посылают боту, периадрисовывалось админу!
чтобы посылалось админу,это ты сам можешь написать в функциях.

Winst0n
22.09.2008, 09:27
rushter, умелбы написал )) а как нашет первого вопроса ?! и кста у меня бот сам выключился...

Winst0n
23.09.2008, 08:01
в боте нету функции само выключения ?!)) а то у меня он сам выключаеться...

rushter
23.09.2008, 10:09
нету,ставь крона на бота.

Winst0n
23.09.2008, 11:31
у меня ispmanager, неподскажете как там поставить ?
захожу в Инструменты - Планировщик (cron) - Новое задание
каманда: что сюда ?
Период: при перезагрузке ? просто там нетакова "при выключении"!

rushter
23.09.2008, 18:02
http://cronjob.ru/
указываешь ссылку и ставишь запускать раз в час

kyle19
27.10.2008, 20:37
бот супер. но есть у меня проблемка. жму запустить бота он запускается но через1-2 минуты вылетает.что делать?

Gara
28.10.2008, 09:02
Проблемма в хостинге найди нормальный и будет все пахать

kyle19
28.10.2008, 18:21
Проблемма в хостинге найди нормальный и будет все пахать
можешь подсказать какой нибудь.. желательно халявный

zip1990
29.10.2008, 00:37
халяВных нет. но если у тебя норм проект могу бесплатно поделиться моим хостингом. если надо пиши 1506737

jenyavlg
06.11.2008, 11:38
почему на этом хостинге 000webhost . com бот не много поработает и тухнет (работает где то минуту)

Gara
06.11.2008, 20:53
на платных хостах все афигительно пашет
000webhost.com скорей всего какаята зашита стоит у этого хостера

rushter
06.11.2008, 22:26
почему на этом хостинге 000webhost . com бот не много поработает и тухнет (работает где то минуту)
там set_time_limit не работает и скрипт просто останавливается

Frize
09.11.2008, 05:30
установил бота все нормально, как только шлю ему какуе нить команду через icq, виснет апач, почему?

jenyavlg
09.11.2008, 10:35
вот на этом хостинге _http://freetzi . com раньше работал нормально а щас я его туда залить не могу INDEX.PHP почему то всегда пустой может кто подскажет чё надо сделать штоб залить индекс

rushter
09.11.2008, 10:49
через обфускатор пропусти,там теперь защита на многие скипты

jenyavlg
09.11.2008, 16:05
через обфускатор пропусти,там теперь защита на многие скипты


а чё такое обфускатор (подскажи пожалуйста)

rushter
09.11.2008, 16:54
http://forum.antichat.ru/thread70377-php+obfuscator.html

jenyavlg
09.11.2008, 19:18
спасибо буду пробывать