Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Dodawanie funkcji do bota


0987a

Rekomendowane odpowiedzi

Opublikowano

Witam chciałbym się dowiedzieć jak wgrać dodatkową funkcję do bota (korzystam z bota AVNbot)
Dokładnie chodzi mi o kopiowanie funkcji np. z innego bota . Kiedy już skopiuje zawartość pliku powiedzmy autopoke.php wkleję go do funkcji oraz dodam linijki do config.php i cały bot przestaje działać . Chciałbym aby ktoś doświadczony doradził mi jak prawidłowo wgrać nowe funkcję do botów . 


[Do admina nie wiedziałem gdzie umieścić ten temat , więc jakby coś nie tak to napisz na pw] 

Specjalista
Opublikowano

To dodajesz do configa

 

 

#######
# 
# AutoPoke
#
#######

$config['autopoke'] = array(
											'enable' => true,
											'admins_groups' => array(6, 11, 12, 115),     //waszystkie grupy adminow TeamSpeak3
											'messages' => array(
																	22 => array(     
																				'groups' => array(6, 11, 12, 115),
																				'user_msg' => 'user_msg.txt',
																				'admin_poke' => 'admin_poke.txt'),
																				
																	23 => array(     
																				'groups' => array(6, 11, 12, 115),
																				'user_msg' => 'user_msg.txt',
																				'admin_poke' => 'admin_poke.txt'),
																				
																	24 => array(     
																				'groups' => array(6, 11, 12, 115),
																				'user_msg' => 'user_msg.txt',
																				'admin_poke' => 'admin_poke.txt'),

																	25 => array(     
																				'groups' => array(6, 11, 12, 115),
																				'user_msg' => 'user_msg.txt',
																				'admin_poke' => 'admin_poke.txt')),
											'datazero' => '1970-01-01 00:00:00', #Data zerowa. Przy uruchomieniu bota akcja wykona się raz bez czekania
											'interval' => array( #Interwał sprawdzania rekordu. Co ile ma wykonywać akcję
															'days' => 0,
															'hours' => 0,
															'minutes' => 0,
															'seconds' => 15
											)
); 

 

 

 

 

To dodajesz do functions

 

 

 

function autopoke()
{
		global $tsAdmin;
		global $config;
		global $clients;
		
	    $cache = array();
        $welcome = array();
		
		//auto poke
        $users = $tsAdmin->getElement('data',$tsAdmin->clientList('-groups -voice -away -times'));
        
        $pokes = array();
        $admins = array();
        
        foreach ($users as $client) {
            if ($client['client_nickname'] != $config['bot']['nickname']) {
                
                
                $user_groups = explode(',',$client['client_servergroups']);
                
                if (isInGroup($user_groups,$config['autopoke']['admins_groups']) && !in_array($client['clid'],$cache)) {
                    $admins[$client['clid']] = $user_groups;
                }
                
                if (array_key_exists($client['cid'],$config['autopoke']['messages']) && !isInGroup($user_groups, $config['autopoke']['admins_groups']) && !$client['client_is_talker']) {
                    
                    $pokes[] = $client['cid'];
                    
                    //priv dla usera 
                    if (!in_array($client['clid'],$cache)) {
                        $tsAdmin->sendMessage(1, $client['clid'], "\nAdministracja została powiadomiona o twoim pobycie. Za chwilę ktoś udzieli ci pomocy. \n TS-KAKTUS.pl");
                        $cache[time()-1] = $client['clid'];
                    }
                }   
            }
        }
        
        $counter = 0;
        //poke
        foreach ($pokes as $poke) {
            foreach ($admins as $clid => $admin) {
                if (isInGroup($admin, $config['autopoke']['messages'][$poke]['groups'])) {
                    if (!in_array($clid,$cache)) {
                        $cache[time()+$counter] = $clid;
                        $tsAdmin->clientPoke($clid, "[b][UWAGA][/b]Użytkownik oczekuje na kanale pomocy!");
                        $counter++;
                    }
                }
            }
        }
        
        
        //czyszczenie cache
        foreach ($cache as $time => $user) {
            if (time() - $time > $config['autopoke']['interval']) {
                unset($cache[$time]);
            }
        }
        
        //czyszczenie powitan
        if (date('H') == '23') {
            foreach ($welcome as $time => $user) {
                if (time() - $time > 60*60*24) { //1 dzien
                    unset($welcome[$time]);
                }
            }
        }
} 

 

 

 

To dodajesz do bot

 

 

 

				#Poke
				if($config['autopoke']['enable'] == true) {
						if(juzmozna($datapetli, $config['autopoke']['datazero'], intervaltosec($config['autopoke']['interval'])) == true) {
							autopoke();
							$config['autopoke']['datazero'] = $datapetli;
						}
				} 

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...