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

[BOT] warnSystem - System ostrzeżeń na serwer TeamSpeak3


artur8889

Rekomendowane odpowiedzi

Opublikowano

Witam!

 

Zauważyłem, że ostatnio w dziale nie pojawiają się żadne nowe boty ani skrypty dlatego postanowiłem napisać coś nowego.

 

 

Długo nie mogłem wpaść na jakiś pomysł, ale w końcu wymyśliłem system ostrzeżeń, mniej więcej coś w stylu systemu z tego forum.

 

 

Szczerze mówiąc to nie wiem czy komuś się to przyda, ale zobaczymy :)

 

 

 

 

 

Więc może najpierw powiem co ten bot w ogóle robi i jakie ma funkcje.

 

 

Bot posiada dwie instancję, jedna odpowiada za obsługę komend, a druga obsługuję funkcje.

 

 

 

 

 

 

 

 

Bot posiada następujące komendy:

 

 

!warn - nadaje daną liczbę punktów ostrzeżeń danemu użytkownikowi na podany w komendzie czas z podanym w komendzie powodem

 

 

!deleteWarn - usuwa danemu użytkownikowi podaną w komendzie ilość punktów ostrzeżeń z podanym w komendzie powodem

 

 

!warns - wyświetla aktualną ilość punktów ostrzeżeń użytkownika oraz historię zmiany jego punktów ostrzeżeń.

 

 

 

 

 

Bot posiada następujące funkcje:

 

 

deleteOldWarns - usuwa punkty ostrzeżeń, którym minęła wygaśnięcia

 

 

banUsers - banuje na określony czas użytkowników, którzy osiągnęli określoną liczbę punktów ostrzeżeń

 

 

 

 

 

 

 

 

Teraz powiem jak używać bota.

 

 

 

 

 

Aby nadać użytkownikowi punkty ostrzeżeń należy do instancji <warnSystem> Komendy napisać następującą komendę:

 

 


!warn <database id użytkownika> <ilość punktów ostrzeżeń jaką chcemy nadać> <powód nadania punktów ostrzeżeń> <czas wygaśnięcia punktów ostrzeżeń(w dniach)>

 

Przykładowa komenda wygląda następująco:

 

 


!warn 5 10 powod/nadania/punktow/ostrzezen 30

 

Aby zabrać użytkownikowi punkty ostrzeżeń należy do instancji <warnSystem> Komendy napisać następującą komendę:

 

 


!deleteWarn <database id użytkownika> <ilość punktów ostrzeżeń jaką chcemy zabrać> <powód zabrania puntków>

 

Przykładowa komenda wygląda następująco:

 

 


!deleteWarn 5 10 /powod/zabrania/punktow/ostrzezen

 

Aby sprawdzić ile punktów aktualnie posiada użytkownik oraz zobaczyć historię zmiany jego punktów należy do instancji <warnSystem> Komendy napisać następującą komendę:

 

 


!warns <database id użytkownika>

 

Przykładowa komenda wygląda następująco:

 

 


!warns 5

 

UWAGA!

 

 

Jeżeli w powodzie chcemy umieścić spację musimy zastąpić je ukośnikiem. Czyli przykładowy powód może wyglądać tak:

 

 


przykładowy/powód/mpc/forum

 

Aby zainstalować bota należy:

 

 

1. Wrzucić bota na serwer

 

 

2. Stworzyć nową bazę danych

 

 

3. Zaimportować do niej plik warnSystem.sql

 

 

4. Skonfigurować bota w pliku config/config.php

 

 

 

 

 

 

 

 

Aby odpalić bota należy użyć komendy:

 

 


./run start

 

Aby zatrzymać bota należy użyć komendy:

 

 


./run stop

 

Download i skan

 

 

 

 

 

 

 

 

v1.0.0

 

 

 

 

 

Download: klik

 

 

Skan: klik

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Mam nadzieję, że bot się spodoba.

 

 

Zostaw proszę plusika, to bardzo motywuje do pracy :)

 

 

 

 

 

 

 


Pozdrawiam, ArrMeeR

Specjalista
Opublikowano

Czyli tak naprawdę rozbudowny systeam skarg na ts o bota oraz dodatkowe funkcje. Warto było by dodać żeby gracze mogli zgłaszać kogoś wtedy to by było coś. Ale tak naprwdę nie wiem czy to się przyjmie.

 

Ale nieźle Artur podoba mi się  :D

Opublikowano

Nie pojawiają się bo osoby, które najczęściej coś dodawały - dostały bany. ;p 

Fajny pomysł, czytelny poradnik. Super, że udostępniłeś coś publicznie. :-) 

Opublikowano

ulalala No no no gratki dla ciebie artur kolejny swietny bot wykonany masz like :D czekamy na rozbudowe albo cos nowego :D

Chcesz żeby szybko ci odpowiedział ?

-Napisz @zxkalen

Pomogłem ci ?

-Zostaw Like

 

76561198043616385.png

Opublikowano

Cycuś glacus dodaj parę funkcji i znajdzie się świetne rozszerzenie do abota.


Do gry nie wszedłem na moment, i nie, nie wszedłem dla monet


Wiem to, gdy tęsknie za domem, i kiedy pędzę na koniec Do gry nie wszedłem na moment, i nie, nie wszedłem dla monet


Wiem to, gdy tęsknie za domem, i kiedy pędzę na koniec 

Opublikowano

Bot jak bot. Jest moim zdaniem bezużyteczny. Jeżeli ktoś dostaje kare to banicje, a nie punkty ostrzeżeń, bo i tak użytkownicy to mają gdzieś.

Opublikowano

W sumie mam takie coś na swoim serwerze tylko że administracja przez stronę może wybrać powód ostrzeżenia lub ręcznie go wpisać jest też kontrola floodu(czy administrator nie spamuje) i ładnie zrobione msg. A tak to bocik spoko :D
Pozdrawiam, G..

Opublikowano

Bot jak bot, można go trochę urozmaicić, ja osobiście bym dodał rangi do tego. Po wpisaniu "!warn <database id użytkownika> <ilość punktów ostrzeżeń jaką chcemy nadać> <powód nadania punktów ostrzeżeń> <czas wygaśnięcia punktów ostrzeżeń(w dniach)>" byłaby nadawana odpowiednia ranga.

  • 2 tygodnie później...
  • 4 tygodnie później...
Opublikowano

Skoro już zrobiłeś takiego bota to mógłbyś pomyśleć sensownie.

Mam tutaj na myśli automatyczne dodawanie punktów ostrzeżeń w momencie kiedy użytkownik np. skacze po kanałach bądź w innych przypadkach.

 

Przejdźmy dalej.

Oglądając Twój kod aż głowa mnie boli tak komplikujesz sobie życie.

W takowej aplikacji można było wykorzystać jedną instancję i trochę zacząć myśleć.

Do tego korzystasz z mysql, a moim zdaniem pliki cache lepiej by to obsłużyły.

Daleka droga przed Tobą.

 

Mam nadzieję, że ujrzę poprawioną wersję, pozdrawiam.

 

ps.. Skoro używasz klasy ts3admin to chociaż wgraj najnowszą i zamiast sendCommand("servernotifyregister event=textprivate"); użyj readChatMessage.

Opublikowano

Skoro już zrobiłeś takiego bota to mógłbyś pomyśleć sensownie.

Mam tutaj na myśli automatyczne dodawanie punktów ostrzeżeń w momencie kiedy użytkownik np. skacze po kanałach bądź w innych przypadkach.

 

Przejdźmy dalej.

Oglądając Twój kod aż głowa mnie boli tak komplikujesz sobie życie.

W takowej aplikacji można było wykorzystać jedną instancję i trochę zacząć myśleć.

Do tego korzystasz z mysql, a moim zdaniem pliki cache lepiej by to obsłużyły.

Daleka droga przed Tobą.

 

Mam nadzieję, że ujrzę poprawioną wersję, pozdrawiam.

 

ps.. Skoro używasz klasy ts3admin to chociaż wgraj najnowszą i zamiast sendCommand("servernotifyregister event=textprivate"); użyj readChatMessage.

@K-Scripts Po 1, jak ma używac funkcji readChatMessage jak bot był napisany miesiąc temu a nowy update wyszedł niecałe 3tyg temu?

Opublikowano

Skoro już zrobiłeś takiego bota to mógłbyś pomyśleć sensownie.

Mam tutaj na myśli automatyczne dodawanie punktów ostrzeżeń w momencie kiedy użytkownik np. skacze po kanałach bądź w innych przypadkach.

 

Przejdźmy dalej.

Oglądając Twój kod aż głowa mnie boli tak komplikujesz sobie życie.

W takowej aplikacji można było wykorzystać jedną instancję i trochę zacząć myśleć.

Do tego korzystasz z mysql, a moim zdaniem pliki cache lepiej by to obsłużyły.

Daleka droga przed Tobą.

 

Mam nadzieję, że ujrzę poprawioną wersję, pozdrawiam.

 

ps.. Skoro używasz klasy ts3admin to chociaż wgraj najnowszą i zamiast sendCommand("servernotifyregister event=textprivate"); użyj readChatMessage.

 

A propos, @K-Scripts - ta funkcja działa na dokładnie tej samej zasadzie, jeżeli spojrzał byś dokładniej w kod - znajduje się tam linijka:

 

$this->executeCommand("servernotifyregister event=$type" . ($cid != -1 ? " id=$cid" : "") , null);
 

Dodatkowo, ta wersja klasy została udostępniona (wraz z funkcją o której mówisz), konkretnie:

 

 Version: 1.0.1.4 - Wed, 02 Nov 2016

 

Więc nie oczekuj że autor który napisał to  w dniu 21 paź 2016 19:33 użyje funkcji która nie istnieje :D

Desktop - Procesor: Intel i7-7700k 4.20Ghz  | Karta Graficzna: EVGA Geforce GTX 1070 | RAM: 16GB 

Laptop - Procesor: Intel i5-8250U 2.5Ghz | Karta Graficzna: Radeon 530 | RAM: 8GB

 

 

 

 

 

 

Opublikowano

 

Skoro już zrobiłeś takiego bota to mógłbyś pomyśleć sensownie.

Mam tutaj na myśli automatyczne dodawanie punktów ostrzeżeń w momencie kiedy użytkownik np. skacze po kanałach bądź w innych przypadkach.

 

Przejdźmy dalej.

Oglądając Twój kod aż głowa mnie boli tak komplikujesz sobie życie.

W takowej aplikacji można było wykorzystać jedną instancję i trochę zacząć myśleć.

Do tego korzystasz z mysql, a moim zdaniem pliki cache lepiej by to obsłużyły.

Daleka droga przed Tobą.

 

Mam nadzieję, że ujrzę poprawioną wersję, pozdrawiam.

 

ps.. Skoro używasz klasy ts3admin to chociaż wgraj najnowszą i zamiast sendCommand("servernotifyregister event=textprivate"); użyj readChatMessage.

@K-Scripts Po 1, jak ma używac funkcji readChatMessage jak bot był napisany miesiąc temu a nowy update wyszedł niecałe 3tyg temu?

 

 

 

Skoro już zrobiłeś takiego bota to mógłbyś pomyśleć sensownie.

Mam tutaj na myśli automatyczne dodawanie punktów ostrzeżeń w momencie kiedy użytkownik np. skacze po kanałach bądź w innych przypadkach.

 

Przejdźmy dalej.

Oglądając Twój kod aż głowa mnie boli tak komplikujesz sobie życie.

W takowej aplikacji można było wykorzystać jedną instancję i trochę zacząć myśleć.

Do tego korzystasz z mysql, a moim zdaniem pliki cache lepiej by to obsłużyły.

Daleka droga przed Tobą.

 

Mam nadzieję, że ujrzę poprawioną wersję, pozdrawiam.

 

ps.. Skoro używasz klasy ts3admin to chociaż wgraj najnowszą i zamiast sendCommand("servernotifyregister event=textprivate"); użyj readChatMessage.

 

A propos, @K-Scripts - ta funkcja działa na dokładnie tej samej zasadzie, jeżeli spojrzał byś dokładniej w kod - znajduje się tam linijka:

 

$this->executeCommand("servernotifyregister event=$type" . ($cid != -1 ? " id=$cid" : "") , null);
 

Dodatkowo, ta wersja klasy została udostępniona (wraz z funkcją o której mówisz), konkretnie:

 

 Version: 1.0.1.4 - Wed, 02 Nov 2016

 

Więc nie oczekuj że autor który napisał to  w dniu 21 paź 2016 19:33 użyje funkcji która nie istnieje :D

 

 

Myślę, że osoba, która coś robi, bacznie przygląda się wszystkim zmianom, które są dookoła i powinna aktualizować swoją aplikację tak aby działała jak najlepiej.

Opublikowano

 

 

Skoro już zrobiłeś takiego bota to mógłbyś pomyśleć sensownie.

Mam tutaj na myśli automatyczne dodawanie punktów ostrzeżeń w momencie kiedy użytkownik np. skacze po kanałach bądź w innych przypadkach.

 

Przejdźmy dalej.

Oglądając Twój kod aż głowa mnie boli tak komplikujesz sobie życie.

W takowej aplikacji można było wykorzystać jedną instancję i trochę zacząć myśleć.

Do tego korzystasz z mysql, a moim zdaniem pliki cache lepiej by to obsłużyły.

Daleka droga przed Tobą.

 

Mam nadzieję, że ujrzę poprawioną wersję, pozdrawiam.

 

ps.. Skoro używasz klasy ts3admin to chociaż wgraj najnowszą i zamiast sendCommand("servernotifyregister event=textprivate"); użyj readChatMessage.

@K-Scripts Po 1, jak ma używac funkcji readChatMessage jak bot był napisany miesiąc temu a nowy update wyszedł niecałe 3tyg temu?

 

 

 

Skoro już zrobiłeś takiego bota to mógłbyś pomyśleć sensownie.

Mam tutaj na myśli automatyczne dodawanie punktów ostrzeżeń w momencie kiedy użytkownik np. skacze po kanałach bądź w innych przypadkach.

 

Przejdźmy dalej.

Oglądając Twój kod aż głowa mnie boli tak komplikujesz sobie życie.

W takowej aplikacji można było wykorzystać jedną instancję i trochę zacząć myśleć.

Do tego korzystasz z mysql, a moim zdaniem pliki cache lepiej by to obsłużyły.

Daleka droga przed Tobą.

 

Mam nadzieję, że ujrzę poprawioną wersję, pozdrawiam.

 

ps.. Skoro używasz klasy ts3admin to chociaż wgraj najnowszą i zamiast sendCommand("servernotifyregister event=textprivate"); użyj readChatMessage.

 

A propos, @K-Scripts - ta funkcja działa na dokładnie tej samej zasadzie, jeżeli spojrzał byś dokładniej w kod - znajduje się tam linijka:

 

$this->executeCommand("servernotifyregister event=$type" . ($cid != -1 ? " id=$cid" : "") , null);
 

Dodatkowo, ta wersja klasy została udostępniona (wraz z funkcją o której mówisz), konkretnie:

 

 Version: 1.0.1.4 - Wed, 02 Nov 2016

 

Więc nie oczekuj że autor który napisał to  w dniu 21 paź 2016 19:33 użyje funkcji która nie istnieje :D

 

 

Myślę, że osoba, która coś robi, bacznie przygląda się wszystkim zmianom, które są dookoła i powinna aktualizować swoją aplikację tak aby działała jak najlepiej.

 

 

Możliwe że masz racje, lecz ja zwracam tylko uwagę na to, że to działa dokładnie w ten sam sposób, bo i w tym i w tym jest użyta ta sama linijka kodu :D

Desktop - Procesor: Intel i7-7700k 4.20Ghz  | Karta Graficzna: EVGA Geforce GTX 1070 | RAM: 16GB 

Laptop - Procesor: Intel i5-8250U 2.5Ghz | Karta Graficzna: Radeon 530 | RAM: 8GB

 

 

 

 

 

 

Opublikowano

Skoro już zrobiłeś takiego bota to mógłbyś pomyśleć sensownie.

Mam tutaj na myśli automatyczne dodawanie punktów ostrzeżeń w momencie kiedy użytkownik np. skacze po kanałach bądź w innych przypadkach.

 

Przejdźmy dalej.

Oglądając Twój kod aż głowa mnie boli tak komplikujesz sobie życie.

W takowej aplikacji można było wykorzystać jedną instancję i trochę zacząć myśleć.

Do tego korzystasz z mysql, a moim zdaniem pliki cache lepiej by to obsłużyły.

Daleka droga przed Tobą.

 

Mam nadzieję, że ujrzę poprawioną wersję, pozdrawiam.

 

ps.. Skoro używasz klasy ts3admin to chociaż wgraj najnowszą i zamiast sendCommand("servernotifyregister event=textprivate"); użyj readChatMessage.

@K-Scripts

W sumie planowałem dodać automatyczne dodawanie punktów, ale nie miałem czasu.

Zastanawiam się jak by można było zrobić to tylko w jednej instancji, jeżeli bot mialby cały czas sprawdzać punkty ostrzeżeń użytkowników.

Porównywałem mysql i cache i wyszło na to samo, więc zostawiłem mysql.

 

Może kiedyś pojawi się poprawiona wersja z nową wersją ts3admin


Pozdrawiam, ArrMeeR

  • 5 miesięcy temu...
Opublikowano

Ciekawy pomysł, ale złe wykonanie. Jest coś co mi brakuje w tej aplikacji. Mianowicie to, że na przykład bot mógłby automatycznie nadawał ostrzeżenia, jeśli dany użytkownik by skakał po kanałach. Dużo jest nieprzemyślanych kwestii na ten temat. Jeśli mówiąc o kodzie to widywałem lepsze, chodź i tak cenię twój pomysł. Po za tym antywirus wykrył shella, więc gdzieś jest luka.

Opublikowano

@Lukass

Prawdopodobnie wynika to z błędnej konfiguracji bota z Twojej strony. Bot jest w 100% sprawny.

 

@fejk2k3

Antywirus wykrał shella ze względu na polecenie:

system("clear");

Które pozwala na wykonywanie poleceń ssh z użytkownika, z którego odpalony jest bot.


Pozdrawiam, ArrMeeR

Opublikowano

@Lukass

Prawdopodobnie wynika to z błędnej konfiguracji bota z Twojej strony. Bot jest w 100% sprawny.

Kod skryptu nie był w żaden sposób edytowany.

Był tylko i wyłącznie edytowany do połączenia się z serwerem.

Proszę o sprawdzenie dokładnie.

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...