ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Как добавить функцию?
  #1  
Старый 28.07.2009, 15:24
Аватар для cren
cren
Участник форума
Регистрация: 05.05.2009
Сообщений: 262
Провел на форуме:
373836

Репутация: 53
Отправить сообщение для cren с помощью ICQ
По умолчанию Как добавить функцию?

Как в этого бота дабавить команду отправки рандомной строчки из какого либо файла?

Код:
<?

// Based on mlCQ library v0.4 by Sergey Danyushin aka I)estym

// (c)oded by S1B [SBT]
// 21.04.2007
// www.secbun.info
set_time_limit(0);
ignore_user_abort(true);

$help='Команды бота:

!help - вывод справки (её Вы сейчас читаете)
!md5 <строка> - вернёт MD5 хэш переданной строки
!b64e <строка> - кодирует переданные данные в Base64
!b64d <строка> - декодирует переданные данные из Base64
!len <строка> - вернёт длину переданной строки
!tic <url сайта> - вернёт тИЦ данного сайта
!admin - Контакты для связи с админом
';
$admin='Для связи с администратором можно использовать:
ICQ: 6-344-344-7
e-mail: waketwo@narod.ru
m-agent: serega_bomber
jabber: wake-two@jabber.ru';


function get_tic($url) {
	if(isset($url)) {
		$url=urlencode(str_replace("http://","",str_replace("www.","",strtolower(trim($url)))));
		$s=fsockopen('bar-navig.yandex.ru','80');
		fputs($s,"GET /u?ver=2&lang=1049&url=http://$url&target=_No__Name:5&show=1&thc=0 HTTP/1.0\r\nHost: bar-navig.yandex.ru\r\n\r\n");
		while(!feof($s)) {
			$get=fgets($s,128);
			if(preg_match('!" value="(.*?)"/>!',$get,$tic)) {
				return $tic[1];
			}
		}
	}
}

require_once 'lib.php';
require_once 'conf.php';

if(BOT_BIRTHDAY=='1') { $BD='BIRTHDAY'; }

set_time_limit(0);
ignore_user_abort(true);

$mlCQ=new mlCQ();
$mlCQ->create_identity("me",UIN_BOT,PASS_BOT);
$mlCQ->connect();
$mlCQ->login();

if(LOG_SET=='1') { $mlCQ->start_logging(LOG_FILE); }

$mlCQ->set_status(BOT_STATUS, $BD);

$mlCQ->request_offline_messages();
$mlCQ->delete_offline_messages();

$still_there=true; $code='';

while($still_there) {

    if(!is_resource($mlCQ->sock) || feof($mlCQ->sock)) $still_there=false;
    if(!$code) sleep(1);    // Спим
    $code=$mlCQ->dance_for('me');

    switch($code) {
        case 7:

        $msg=$mlCQ->id['in_messages']['last'];
        $from=$msg['uin'];
        list($cmd[1])=explode(' ',$msg['text']);
  			$cmd[2]=str_replace("$cmd[1] ",'',$msg['text']);

     		switch($cmd[1]) {

				// Функция вывода хелпа
				case '!help':
    			$mlCQ->send_message($from,$help);
				break;

				case '!ui':
					$mlCQ->send_message($from,$mICQ->request_full_userinfo(4124477));
				break;
								// Функция вывода хелпа
				case '!admin':
    			$mlCQ->send_message($from,$admin);
				break;
												// Функция вывода хелпа



				// Функция создания MD5 хэшей
				case '!md5':
					$mlCQ->send_message($from,md5($cmd[2]));
				break;

				// Функция кодирования в Base64
				case '!b64e':
					$mlCQ->send_message($from,base64_encode($cmd[2]));
				break;

				// Функция декодирования из Base64
				case '!b64d':
					$mlCQ->send_message($from,base64_decode($cmd[2]));
				break;

				// Функция подсчёта длины строки
				case '!len':
					$mlCQ->send_message($from,strlen($cmd[2]));
				break;

				// Функция получения Яндекс тИЦ заданного сайта
				case '!tic':
    			$tic=get_tic($cmd[2]);
					if($tic=='') { $tic='Определение тИЦ данного сайта невозможно, либо его значение меньше 10'; }
					$mlCQ->send_message($from,$tic);
				break;
				// Функция получения Яндекс тИЦ заданного сайта
				case '!wake':
    			$tic=frand($cmd[3]);
					if($tic=='') { $tic='Определение тИЦ данного сайта невозможно, либо его значение меньше 10'; }
					$mlCQ->send_message($from,$wake);
				break;

    		// Функция остановки работы бота
    		case '!stop':
      		if($from==UIN_ADMIN) {
        		$mlCQ->send_message($from,'Работы бота завершена');
        		$mlCQ->close();
       		}
        break;

				default:
					$mlCQ->send_message($from,"Гы =))) А такой каманды нет!.\nДля вывода справки по командам наберите \"!help\" (без кавычек)");
				break;
    		}
    }
}

?>
 
Ответить с цитированием

  #2  
Старый 28.07.2009, 15:25
Аватар для cren
cren
Участник форума
Регистрация: 05.05.2009
Сообщений: 262
Провел на форуме:
373836

Репутация: 53
Отправить сообщение для cren с помощью ICQ
По умолчанию

если можно то сразу вставьте в код сразу, и выложите
 
Ответить с цитированием

  #3  
Старый 28.07.2009, 15:37
Аватар для FireFenix
FireFenix
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме:
3178262

Репутация: 389
По умолчанию

PHP код:
$file 'file.txt'//Где лежат рандомные строки
$line file($file);

// Рандомная строка
$mlCQ->send_message($from$line[rand(0count($line) - 1)]); 
PHP код:
<?php

// Based on mlCQ library v0.4 by Sergey Danyushin aka I)estym

// (c)oded by S1B [SBT]
// 21.04.2007
// www.secbun.info
set_time_limit(0);
ignore_user_abort(true);

$file 'file.txt'//Где лежат рандомные строки
$line file($file);

$help='Команды бота:

!help - вывод справки (её Вы сейчас читаете)
!md5 <строка> - вернёт MD5 хэш переданной строки
!b64e <строка> - кодирует переданные данные в Base64
!b64d <строка> - декодирует переданные данные из Base64
!len <строка> - вернёт длину переданной строки
!tic <url сайта> - вернёт тИЦ данного сайта
!admin - Контакты для связи с админом
'
;
$admin='Для связи с администратором можно использовать:
ICQ: 6-344-344-7
e-mail: waketwo@narod.ru
m-agent: serega_bomber
jabber: wake-two@jabber.ru'
;


function 
get_tic($url) {
    if(isset(
$url)) {
        
$url=urlencode(str_replace("http://","",str_replace("www.","",strtolower(trim($url)))));
        
$s=fsockopen('bar-navig.yandex.ru','80');
        
fputs($s,"GET /u?ver=2&lang=1049&url=http://$url&target=_No__Name:5&show=1&thc=0 HTTP/1.0\r\nHost: bar-navig.yandex.ru\r\n\r\n");
        while(!
feof($s)) {
            
$get=fgets($s,128);
            if(
preg_match('!" value="(.*?)"/>!',$get,$tic)) {
                return 
$tic[1];
            }
        }
    }
}

require_once 
'lib.php';
require_once 
'conf.php';

if(
BOT_BIRTHDAY=='1') { $BD='BIRTHDAY'; }

set_time_limit(0);
ignore_user_abort(true);

$mlCQ=new mlCQ();
$mlCQ->create_identity("me",UIN_BOT,PASS_BOT);
$mlCQ->connect();
$mlCQ->login();

if(
LOG_SET=='1') { $mlCQ->start_logging(LOG_FILE); }

$mlCQ->set_status(BOT_STATUS$BD);

$mlCQ->request_offline_messages();
$mlCQ->delete_offline_messages();

$still_there=true$code='';

while(
$still_there) {

    if(!
is_resource($mlCQ->sock) || feof($mlCQ->sock)) $still_there=false;
    if(!
$codesleep(1);    // Спим
    
$code=$mlCQ->dance_for('me');

    switch(
$code) {
        case 
7:

        
$msg=$mlCQ->id['in_messages']['last'];
        
$from=$msg['uin'];
        list(
$cmd[1])=explode(' ',$msg['text']);
              
$cmd[2]=str_replace("$cmd[1] ",'',$msg['text']);

             switch(
$cmd[1]) {

                
// Функция вывода хелпа
                
case '!help':
                
$mlCQ->send_message($from,$help);
                break;

                case 
'!ui':
                    
$mlCQ->send_message($from,$mICQ->request_full_userinfo(4124477));
                break;
                                
// Функция вывода хелпа
                
case '!admin':
                
$mlCQ->send_message($from,$admin);
                break;
                                                
// Функция вывода хелпа



                // Функция создания MD5 хэшей
                
case '!md5':
                    
$mlCQ->send_message($from,md5($cmd[2]));
                break;

                
// Функция кодирования в Base64
                
case '!b64e':
                    
$mlCQ->send_message($from,base64_encode($cmd[2]));
                break;

                
// Функция декодирования из Base64
                
case '!b64d':
                    
$mlCQ->send_message($from,base64_decode($cmd[2]));
                break;

                
// Функция подсчёта длины строки
                
case '!len':
                    
$mlCQ->send_message($from,strlen($cmd[2]));
                break;

                
// Функция получения Яндекс тИЦ заданного сайта
                
case '!tic':
                
$tic=get_tic($cmd[2]);
                    if(
$tic=='') { $tic='Определение тИЦ данного сайта невозможно, либо его значение меньше 10'; }
                    
$mlCQ->send_message($from,$tic);
                break;
                
// Функция получения Яндекс тИЦ заданного сайта
                
case '!wake':
                
$tic=frand($cmd[3]);
                    if(
$tic=='') { $tic='Определение тИЦ данного сайта невозможно, либо его значение меньше 10'; }
                    
$mlCQ->send_message($from,$wake);
                break;

            
// Функция остановки работы бота
            
case '!stop':
              if(
$from==UIN_ADMIN) {
                
$mlCQ->send_message($from,'Работы бота завершена');
                
$mlCQ->close();
               }
        break;
        
        
// Рандомная строка
        
case '!random':
          
$mlCQ->send_message($from$line[rand(0count($line) - 1)]);
        break;

                default:
                    
$mlCQ->send_message($from,"Гы =))) А такой каманды нет!.\nДля вывода справки по командам наберите \"!help\" (без кавычек)");
                break;
            }
    }
}

?>

Последний раз редактировалось FireFenix; 28.07.2009 в 15:47..
 
Ответить с цитированием

  #4  
Старый 28.07.2009, 21:56
Аватар для cren
cren
Участник форума
Регистрация: 05.05.2009
Сообщений: 262
Провел на форуме:
373836

Репутация: 53
Отправить сообщение для cren с помощью ICQ
По умолчанию

спс) а ещё нужно вставить команду чтобы отправляла сообщене на указанный номер

Например по команде !icq 63443447 Привет!

Шло сообщение привет на номер 63443447
 
Ответить с цитированием

  #5  
Старый 28.07.2009, 21:59
Аватар для cren
cren
Участник форума
Регистрация: 05.05.2009
Сообщений: 262
Провел на форуме:
373836

Репутация: 53
Отправить сообщение для cren с помощью ICQ
По умолчанию

FireFenix пишет ошибка на строчке 12
 
Ответить с цитированием

  #6  
Старый 28.07.2009, 22:11
Аватар для Fata1ex
Fata1ex
Постоянный
Регистрация: 12.12.2006
Сообщений: 906
Провел на форуме:
4205500

Репутация: 930


По умолчанию

Файл создай
 
Ответить с цитированием

  #7  
Старый 28.07.2009, 22:40
Аватар для cren
cren
Участник форума
Регистрация: 05.05.2009
Сообщений: 262
Провел на форуме:
373836

Репутация: 53
Отправить сообщение для cren с помощью ICQ
По умолчанию

C ошибкой название файла написал...работает спс

Цитата:
спс) а ещё нужно вставить команду чтобы отправляла сообщене на указанный номер

Например по команде !icq 63443447 Привет!

Шло сообщение привет на номер 63443447
Помогите с этим плиз.
 
Ответить с цитированием

  #8  
Старый 28.07.2009, 22:44
Аватар для cren
cren
Участник форума
Регистрация: 05.05.2009
Сообщений: 262
Провел на форуме:
373836

Репутация: 53
Отправить сообщение для cren с помощью ICQ
По умолчанию

Цитата:
$file = 'file.txt'; //Где лежат рандомные строки
$line = file($file);

// Рандомная строка
$mlCQ->send_message($from, $line[rand(0, count($line) - 1)]);
А как добавить второй файл?
 
Ответить с цитированием

  #9  
Старый 28.07.2009, 23:13
Аватар для FireFenix
FireFenix
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме:
3178262

Репутация: 389
По умолчанию

Цитата:
А как добавить второй файл?
PHP код:
$line = Array();

$files[] = 'file_0.txt';
$files[] = 'file_1.txt';
$files[] = 'file_n.txt';

foreach (
$files as $file)
{
  
$line array_merge($linefile($file));

Цитата:
Например по команде !icq 63443447 Привет!
Шло сообщение привет на номер 63443447
Помогите с этим плиз.
PHP код:
case '!icq':
  
$params explode(' '$msg['text']);
  
$mlCQ->send_message($params[1], $params[2]);
break; 
где-то так

Последний раз редактировалось FireFenix; 28.07.2009 в 23:22..
 
Ответить с цитированием

  #10  
Старый 28.07.2009, 23:39
Аватар для cren
cren
Участник форума
Регистрация: 05.05.2009
Сообщений: 262
Провел на форуме:
373836

Репутация: 53
Отправить сообщение для cren с помощью ICQ
По умолчанию

Цитата:
$line = Array();

$files[] = 'file_0.txt';
$files[] = 'file_1.txt';
$files[] = 'file_n.txt';

foreach ($files as $file)
{
$line = array_merge($line, file($file));
}
А как вставлять? пример?

FireFenix - Можешь дать номер аси?

Последний раз редактировалось cren; 28.07.2009 в 23:43..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как определить, что Ваш ребенок растет хакером? PHOEN_i_X Болталка 148 13.06.2010 18:02
Халявный Интернет (для маленьких) stopxaker Статьи 91 20.04.2010 19:52
Как стать админом ICQ (c) yarrak InfernoNet Болталка 77 06.08.2009 15:15
Доим Слоты или как заработать на казино SKIN-BRAIN Болталка 8 09.04.2009 11:17



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ