Mislim da je ovo podforum u koji ovo spada... Po nekoj mojoj ideji tema bi se bavila XChat skriptovima uopšte... Ali za početak mi treba pomoć u vezi prepravke xlack skripte:
U funkciji xAway (iscepkao sam i iskomentarisao zbog bolje preglednosti):
#postavlja away poruku na parametar koji se prosledjuje funkciji xAway
my ( $msg ) = $_[1][1];
#Proverava da li je away poruka prazna
if ( $msg ) {
#Ako jeste
if ($State == 0) {
#preuzmi trenutni nick korisnika
$Nick = Xchat::get_info ( 'nick' );
#postavi novi nick na Nick-aWay
Xchat::command "nick $Nick$SuWay";
Dalje u xAway funkciji (odnosi se na ponovno kucanje komande away):
#Ako je korisnik away
if ($State == 1) {
#Vrati nick na stari nick
Xchat::command "nick $Nick";
Šta se dešava u praksi? Korisnik se vrati iz away stanja, ali mu ostane nick $Nick$SuWay, ne vraća se na stari nick.
XChat-ovci, ima li neko rešenje?
BTW, možda se jednom uhvatim pisanja sopstvenog XChat skripta kad budem imao vremena, ali do tada je jednostavnije ispraviti dve-tri linije koda.
Dopuna: 09 Maj 2006 17:11
Inače link ka skriptovima za Xchat:
http://scripts.xchat.org/cgi-bin/disp
U odeljku "Tehnička dokumentacija" se nalaze linkovi za skriptere:
http://www.xchat.org/docs/
Happy scripting.
Dopuna: 09 Maj 2006 18:21
Provalio sam o čemu se radi. Ova funkcija verovatno funkcioniše za neregistrovane korisnike na chat serveru. Za registrovane, server traži ponovnu identifikaciju za korisnika.
Znači, po meni postoje dva moguća rešenja:
1. U potpunosti izbaciti komandu kojom se menja nick korisnika (ili je iskomentarisati kao u donjem primeru):
# Xchat::command "nick $Nick$SuWay";
2. Ili nesigurnije ali praktičnije rešenje... Nakon ove komande
Xchat::command "nick $Nick";
Dodati:
Xchat::command "msg NickServ IDENTIFY $lozinka"
Gde bi $lozinka bila definisana negde u skriptu ili konfiguracionom fajlu. Problem s ovim je što bi potencijalni provalnik u sistem mogao da dođe do fajla u kome se nalazi lozinka i jednostavno je samo pročita (običan ASCII kod). Teorijski bi se ovo moglo bar otežati ako se lozinka kriptuje. Ali i tada bi u samom programu bila i funkcija za kriptovanje koju bi provalnik mogao iskoristiti za dobijanje lozinke...
Dakle, moj predlog: komentarisanje linije sa promenom nicka.
Dopuna: 09 Maj 2006 18:24
Dalje: pretpostavimo situaciju u kojoj zlonamerni korisnik registruje nick djole-aWay. U tom slučaju korisnik djole bi dobijao grešku pri svakom pokušaju odlaska away.
Dopuna: 09 Maj 2006 18:41
Inače u samom skriptu se nalazi još jedan bug: vezan za XMMS autoplay. U slučaju da još neko naiđe na njega, neka mi se slobodno javi na PP. Postovaću rešenje ovde.
Inače petljajući oko xlacka, dodao sam nekoliko novih funkcija (koje neću prijaviti autoru - jer su u pitanju neke stvari koje bi mogao shvatiti nepotrebnim ili smešnim. Osim dodatka za NoAtun i gore navedenih ispravki ili predloga.):
xfort - komanda koja prikazuje izlaz naredbe fortune
xlinks - komanda koja izbacuje dump web strane koja je navedena u argumentu (u stvari: lynx -nolist -dump prvi-argument-funkcije)
na, naplay, napause, nastop, naprev, nanext - skup komandi za upravljanje KDE medija plejerom NoAtun (još nije sve odrađeno - nisam dodao detekciju da li je NoAtun pokrenut ili ne)
BTW: iako je XChat multiplatformski, xlack je Linux only.
|