PDA

View Full Version : Perl-socket Coding. need help


Rooty
14-08-2004, 13:40
Hi

How can send a message to a user:
....
my $nick = "Gast";

{
print $socket qq(sel 8767\n);
print $socket qq(slogin superadmin 12345\n);

print $socket qq(fp $nick\n);

I need help how make the name to the p_id

print $socket qq(msgu $p_id @ Welcome $nick on this Server\n);

Sorry for my Bad English

Rooty
15-08-2004, 12:24
German: Kann mir jemand helfen bei umwandeln von "fp Gast" in seine p_id, für den befehl "msgu (seine p_id) @ Hallo !!!!;"

Wie ich das in das script da oben mache das dies automatisch gemacht wird.

Real-TTX
18-08-2004, 18:23
Versuchs mal mit einer Funktion die "recv" heist ....
Dann bekommst du die Zeile , die dir der Server sendet.
Dann musst du die Zeile spliten mit der Funktion "split" dann haste deine Player ID ...
mfg
Real-TTX

Rooty
19-08-2004, 01:19
ich habs jetzt mal soweit das ich das [ok] angezeigt bekomme nur die daten davor ip,nickname usw.. da kommt nichts.

@ Real

ein script-code der funktion wäre super ;-)

iDevelopment
06-09-2004, 12:06
hiern stück script das funktioniert... ;)

<---- snipp---->

#/usr/bin/perl

use strict;


# Wir tun mal so als ob wir ne Datei eingelesen hätten oder nen Stream etc...

my @ZEILEN_EINGANG = ("erste reihe erstes_feld zweites_feld drittes_feld", "zweite reihe erstes_feld zweites_feld drittes_feld", "dritte reihe erstes_feld zweites_feld drittes_feld");


# Eine Schleife um die Datei oder den Stream oder sonstwas einzulesen

foreach my $line(@ZEILEN_EINGANG)
{
my @SPLIT_LINE = split(/\s/, $line); # \s ist ein whitespace ( leertaste );

foreach my $spalte(@SPLIT_LINE)
{
print $spalte."\n";
}
}

<----schnapp---->

Die erklärt momentan nicht wie du aus deinem Problem selber heraus kommst sondern nur wie du mit split umgehen musst... Leider weiss ich nicht wie die Daten aus deinem Stream herauskommen - wenn du mehrere Zeilen posten kannst, dann schreibe ich dir eine Routine um an die Elemente zu kommen - No Prob...

Hitman69
13-09-2004, 17:38
Heres a script I wrote in perl, it might help you out.
http://forum.goteamspeak.com/showthread.php?t=15335