Stavo creando un bot per connettersi a un irc per kick e ridge e lo stavo facendo rispondere a cose diverse, ma mi piacerebbe che rispondesse con il comando CTCP ACTION, questo è comunemente noto a un utente come/me utilizzato per giochi di ruolo o visualizzazione di azioni.Comando di comando CTCP raw ACTION con C#
secondo questa splendida pagina web su ctcp http://www.irchelp.org/irchelp/rfc/ctcpspec.html?
il formato è \ 001ACTION barfs sul pavimento. \ 001
Così ho creato il mio bot per rispondere con
writer.WriteLine("PRIVMSG " + CHANNEL + " \001ACTION " + message + "\001");
stampo questo risultato nella mia console pure, tutto ciò che risponde con "Nessun testo da inviare"
che non sapendo veramente cosa dovrebbe dirmi, presumo che il carattere di escape stia rompendo la linea in anticipo con il \ 0 ignorando totalmente l'altro 01 dopo di esso, quindi io avere il bo t stampare nella console ciò che legge e io digito/io balla e leggo nella console
CANALE PRIVMSG: (simbolo dispari) Messaggio di AZIONE (simbolo dispari) non so quali sono i simboli dispari ma a me sembrano faccine sorridenti ..... dopo aver parlato con alcune persone, ho capito che il formato è corretto ma il \ 001 può essere diverso per le diverse lingue
così cerco cosa può significare \ 001 per C# e i fin \ x01 e \ 0011 e il \ 0011 non fa nulla e anche il \ x01 mi restituisce la stessa risposta .... "Nessun testo da inviare"
I stampa "PRIVMSG" + CANALE + "\ x01ACTION "+ message +" \ x01 " alla mia console, e io il \ x01 viene sostituito con lo stesso carattere di faccina che mostra quando digito/io balla e faccio stampare al mio bot ciò che legge sulla console ...
mio codice per esso è semplicemente
if (type == MessageType.ActionMessage)
{
writer.WriteLine("PRIVMSG " + CHANNEL + " \x01ACTION " + message + "\x01");
Console.WriteLine("PRIVMSG " + CHANNEL + " \x01ACTION " + message + "\x01");
writer.Flush();
}
l'oggetto scrittore non è nullo, e la scrittura al mio console è così posso vedere cosa succede
la domanda finale è, questo è corretto e se non è il modo corretto per mostrare un'azione tramite il client C# al protocollo client CTCP
ho postato i risultati per la risposta, grazie per aver risposto –