Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
veryfree dummy mioche

Inscrit le: 03 Sep 2002 Messages: 7
|
Posté le: Mar Sep 03, 2002 8:06 pm Sujet du message: creation d'un client irc |
|
|
actuellement je realise un client irc en java , j arrive a m authentifier et a dialogué, parler en privé a des utilisateurs...
seul probleme: je n arrive pas a envoyer des commande tel que /nick /quit j ai une erreur "unknown command"
alors je doit mal m y prendre
voila comment je fait, qd un utilisateur envoi un message qui commence par un "/" alors j envoi cette ligne brute au serveur
je m y prend mal?
merci de votre aide!
jerry |
|
Revenir en haut |
|
 |
cedri-x dummy mioche

Inscrit le: 27 Juin 2002 Messages: 1 Localisation: right here - right now
|
Posté le: Mer Sep 04, 2002 12:41 pm Sujet du message: |
|
|
<<voila comment je fait, qd un utilisateur envoi un message qui commence par un "/" alors j envoi cette ligne brute au serveur >>
c ce qu'il faut faire
ca serait bcp plus simple si tu envoyais un bout de code sur l'envoi de messages sur un channel et de la maniere que tu envoi des commandes au serveur IRC
g aussi developpé un client IRC en java, g pas rencontré de soucis particulier à cette etape, avec un peu de code on y verra plus clair
cordialement
CedriX _________________ Cedri-X
Cedri-X@caramail.com |
|
Revenir en haut |
|
 |
veryfree dummy mioche

Inscrit le: 03 Sep 2002 Messages: 7
|
Posté le: Mer Sep 04, 2002 12:46 pm Sujet du message: |
|
|
merci de ton aide tout d abord!!
voila deux methode qui t aiderons a mieux comprendre mon probleme:
Code: | public void actionPerformed(ActionEvent actionEvent)
{
String line = textField.getText();
if(line.equals(""))
return;
// la je suis ds le faux je crois il suffis pas d'ecrire la comande irc sur le flux
if(line.startsWith("/"))
{
parent.writeLine(line);
}
else
{
parent.writeLine("PRIVMSG " + parent.getChannel() + " :"+line);
setText(parent.getUser()+">" + line,true);
}
textField.setText("");
} |
et la methode writeLine:
Code: | public void writeLine(String line)
{
try
{
line=line + "\r\n" ;
out.write(line);
out.flush();
}
catch(IOException ioexception)
{
debug("error:"+ioexception);
}
} |
donc pour resumer lorsque ds un salon j ecrit /qq_chose j ai une erreur 421 unknown command ... |
|
Revenir en haut |
|
 |
olympien dummy mioche

Inscrit le: 04 Sep 2002 Messages: 1
|
Posté le: Mer Sep 04, 2002 5:55 pm Sujet du message: Sans le / |
|
|
Sans le / t'as essayé ?
Ca devrait marcher sans !
sinon
out.write(line);
out.newLine();
out.flush();
@+ |
|
Revenir en haut |
|
 |
veryfree dummy mioche

Inscrit le: 03 Sep 2002 Messages: 7
|
Posté le: Mer Sep 04, 2002 9:03 pm Sujet du message: |
|
|
merci c etait exactement ca
je sais pas pourquoi je n y avait pas penser
mon client est enfin digne de ce nom!
 |
|
Revenir en haut |
|
 |
veryfree dummy mioche

Inscrit le: 03 Sep 2002 Messages: 7
|
Posté le: Ven Sep 13, 2002 7:32 pm Sujet du message: |
|
|
dsl jvouait pas creer un nouveau topic
mais j ai encore un petit prob avec mon client (http://jchatirc.free.fr/download)
maintenant les commandes IRC marchent mais je comprend pas pourquoi certaines ne marche pas
par ex si je fait /nick pseudo la tout est ok
/join #chan la aussi ca marche mais lorsque je fait /ME ou /MSG il veux pas il me dit que c pas une commande reconnue alors jme demande si c pas au client de gerer ces commandes ??
merci de m eclairer  |
|
Revenir en haut |
|
 |
ciel dev

Inscrit le: 07 Avr 2002 Messages: 27 Localisation: LYON ( FRANCE )
|
Posté le: Ven Sep 13, 2002 8:03 pm Sujet du message: |
|
|
Salut,
Heureux de savoir que ton premier problème a été résolu ! Comme quoi, on se prend souvent la tête sur une petite faute de rien du tout.. D'où un des intérêts de ces forums qui te permet d'avoir l'avis de personnes qui eux, sont extérieures au projet, et généralement voient des évidences qui ne t'apparaissaient pas !
En fait MSG n'est pas une commande IRC, PRIVMSG par contre oui !
pour ME ( parfois DESCRIBE ) je ne sais pas.
Quand tu as un doute sur une commande, n'hésite pas depuis ton client habituel, à envoyer en raw ( brut ) la commande question comme ceci : /quote <la_commande_a_tester> parfois c'est /raw <la_commande_a_tester> ce qui envoie en brut la commande au serveur. Ainsi tu es tout de suite fixé si c'est une commande IRC ou non.
Sinon, tu as toujours la rfc 1459 qui constitue la référence.
bon courage !
Ciel _________________ mail : cyclic[AT]salemioche[DOT]com |
|
Revenir en haut |
|
 |
veryfree dummy mioche

Inscrit le: 03 Sep 2002 Messages: 7
|
Posté le: Lun Sep 23, 2002 12:15 am Sujet du message: |
|
|
Bon je sait qu il est un peu tard mais j avait 50 choses a faire alors si ca peux en aider certains ds le futur voila comment marche les /msg
c 'est tout simplement un raccourcis vers /privmsg
la methode que j avait mise a la creation de mon topic ressemble donc a ca aujourd hui:
Code: | if(line.startsWith("/MSG")||line.startsWith("/msg"))
{
parent.writeLine("PRIVMSG " + line.substring(4));
}
else if(line.startsWith("/"))
{
parent.writeLine(line.substring(1));
}
else
{
parent.writeLine("PRIVMSG " + name + " :"+line);
setText(parent.getUser()+">" + line,true);
} |
voila en esperant que ca poura aider
jerry |
|
Revenir en haut |
|
 |
|