icq nachrichten schicken

socKe|bla

Erfahrenes Mitglied
huhu
ich möchte eine icq message an mehrere leute schicken. dazu benutz ich das messagepanel (http://www.icq.com/panels/messagepanel/) von icq, nur muss ich die nachricht an rund 60 leute schicken. leider dauert das zu lang, wenn ich jedesmal ein socket öffnen muss, deshalb wollte ich fragen, ob man den code hier verändern kann, dass die nachricht gleich an mehrere nummern geschickt wird. ich habs nicht hinbekommen, aber vielleicht hat ja jemand eine idee.
übrigens will ich das nicht mit dem mail machen (UIN@pager.icq.com), weil der zu unzuverlässig ist.

PHP:
$data = "subject=Betreff&from=socKe&fromemail=socke@sockn.de&body=Huhu, hier ist die Nachricht&to=113557448";

$fp = fsockopen("wwp.icq.com",80);

fputs($fp, "POST /scripts/WWPMsg.dll HTTP/1.1\n");
fputs($fp, "Host: wwp.icq.com\n");
fputs($fp, "Content-type: application/x-www-form-urlencoded\n");
fputs($fp, "Content-length: " . strlen($data) . "\n");
fputs($fp, "Connection: close\n\n");
fputs($fp, $data);
 
Und wenn du die Nummer in eine Datenbank oder in eine Datei schreibst.. Diese ausliest und mit einer Schleife das script durchlaufen lässt mit jeder Nummer, bis alle ausgelesen sind?
 
@djnelly: Das ist doch das was er meinte...der Aufbau eines Socket-Verbindung für jeden Nachricht dauert zu lange.
 
uih...sorry habe ich nicht gewusst...

Habe keine erfahrung mit socket...
Bekomme es nicht mal hin, eine socketverbindung zu einen mail account aufzubauen und eine mail zu verschicken.
 
Ne Mailverbindung baut man in der Regel auch nicht zu seinem Account (Ich vermute mal du meinst POP3), sondern eher zu einem SMTP-Server auf ;-)
 
Das meinte ich ja.. smtp...

Hast du irgendwo nen Beispiel rumliegen, wo ich mal nachvollziehen kann, wie ich das machen muss?
Nen Aufbau zu einen smtp mit Zugangsdaten per socket und dann die versendung einer mail ?

Wäre sehr dankbar
 
Ist zwar etwas Offtopic, aber hier:

PHP:
$hdr  = "From: ab@send.er\r\n";
$hdr .= "To: em@pfaeng.er\r\n";
$hdr .= "Reply-To: devnull@send.er\r\n";
$hdr .= "Subject: Testmail\r\n";
$hdr .= "\r\n";

# Socket oeffnen.
$fp = fsockopen("mail.server.de", 25);
$banner = fgets($fp, 1024);

# HELO
fputs($fp, "HELO mein.eigener.servername.de\r\n");
$result = fgets($fp, 1024);
if ($result+0 != 220 || $result+0 != 250)
	die("HELO Statuscode falsch: $result");

# MAIL FROM
fputs($fp, "MAIL FROM: ab@send.er\r\n");
$result = fgets($fp, 1024);
if ($result+0 != 250)
	die("MAIL FROM Statuscode falsch: $result");

# RCPT TO
fputs($fp, "RCPT TO: em@pfaeng.er\r\n");
$result = fgets($fp, 1024); 
if ($result+0 != 250)
	die("RCPT TO: Statuscode falsch: $result");

# DATA
fputs($fp, "DATA\r\n");
$result = fgets($fp, 1024);
if ($result+0 != 354)
	die("DATA: Statuscode falsch: $result");

# Header senden
fputs($fp, $hdr);

# Text senden
fputs($fp, "Das ist nur eine Testnachricht.\r\n");

# .
fputs($fp, ".\r\n");
$result = fgets($fp, 1024);
if ($result+0 != 250)
	die("DATA(end): Statuscode falsch: $result");

# QUIT
fputs($fp, "QUIT\r\n");
$result = fgets($fp, 1024);
 
erstmal danke für den code...

nur noch ein frage:

wo müssen die zugangsdaten zum account hin? wenn ich mich bei dem server mit mail.server.de verbinde, dann will er doch nen benutzername und nen passwort?
 
Hm. Um mal auf das Ursprüngliche Thema zurück zu kommen:

Im Prinzip würde ich sagen, dass Du die Schleife nach dem öffnen des sockets einbaust, allerdings wird das dein Problem wahrscheinlich nicht lösen, da die Icq-Seite immer extrem langsam ist. :(
Allerdings würde ich mal behaupten, dass dies auch gar nicht anders Möglich ist, wegen spamming...
 
Zuletzt bearbeitet:
Lars Michelsen hat gesagt.:
Ne Mailverbindung baut man in der Regel auch nicht zu seinem Account (Ich vermute mal du meinst POP3), sondern eher zu einem SMTP-Server auf ;-)
Doch? Also ich baue jedesmal, wenn ich E-Mails verschicken will, eine Verbindung zu meinem (SMTP)Account auf? Was ist daran so ungewoehnlich?

Achja, ein
PHP:
$result = (int) fgets($fp, 1024);
sollte den haesslichen $result+0-Weg umgehen.
 
Zurück