Ich versuche derzeit, einen einfachen IRC-GUI-Client zu erstellen. Als Basis verwende ich SmartIrc4net, da es mir zu sein scheint, dass es am unterstützendsten ist, hier gefunden: http://www.codeproject.com/Articles/8323/SmartIrc4net-the-C-IRC-library
Jetzt habe ich ein Problem mit den Aktionsbefehlen. Zum Beispiel, um sich selbst ein Operator zu machen, müsste man eingeben
/oper admin passwort oder um den Host zu ändern, würde es /sethost mynewhost sein
Mein Problem ist, dass, wenn ich diesen Wert in ein TextBox übergebe, anstatt mich zum Administrator zu machen oder meinen Host zu ändern, wird mein Eingang nur als Text im Chat angezeigt.
Hier ist mein Code:
string[] serverliste;
serverliste = new string[] { "meinedomain.com" };
int port = 6667;
string kanal = "#MeinKanal#";
try
{
irc.Connect(serverliste, port);
irc.Login("SmartIRC", "SmartIrc4net Test Bot");
irc.RfcJoin(kanal);
irc.SendMessage(SendType.Message, kanal, "/oper admin meinpasswort");
irc.SendMessage(SendType.Action, kanal, "/sethost mynewhost");
irc.Listen();
Aber wenn ich diese Werte übergebe, wird nur das angezeigt, was ich im Chat eingegeben habe, ohne mich tatsächlich zum Operator zu machen oder meinen Host zu ändern.
Gibt es eine Möglichkeit, wie ich es tatsächlich schaffe, Befehle an den IRC-Server zu übermitteln, anstatt nur den Rohtext im Chat anzuzeigen?
Jede Hilfe wäre dankbar, Danke
0 Stimmen
Studiere das IRC-Protokoll. Der IRC-Client sendet /oper nicht als PRIVMSG an den Server, sondern als OPER-Befehl. Du kannst damit beginnen, Wireshark auszuführen, den IRC-Client mit einem Server zu verbinden, den Befehl einzugeben und in Wireshark zu schauen, was genau über das Kabel gesendet wird.
0 Stimmen
Ja, ich habe gerade Wireshark überprüft und festgestellt, dass eine normale Nachricht mit PRIVMSG gesendet wird und Befehle wie OPER und SETHOST nicht mit PRIVMSG beginnen. Wie schaffe ich es also, dass mein Befehl nicht mit PRIVMSG beginnt? Danke für Ihre Antwort