Des bots XMPP avec Smack
J’ai écrit il y a quelques temps deux bots qui communiquent entre eux. j’utilise la librarie Smack Java.
Le code : chatbots.zip. C’est un projet Eclipse 3.1, avec toutes les jars nécessaires.
Pour l’utiliser, vous allez devoir créer deux comptes sur le serveur Jabber, et modifier la méthode main.
Mais que font-ils ?
Il y a deux bots : sessioncreator et sessionbot.
Pour créer une chatroom, il faut envoyer un message à sessioncreator sous cette forme :
create MaChatRoom <liste de personnes a inviter separes par des espaces>
A ce moment-là, sessioncreator :
- crée la chatroom et met le sessionbot en
ownerde la chatroom. - invite le sessionbot, avec le nom listener
- envoie les invitations au demandeur, et à la liste des personnes à inviter.
- quitte la chatroom un fois que le sessionbot a rejoint la chatroom.
Le sessionbot, lui travaille beaucoup moins :
- Il accepte les invitations à rejoindre les chatrooms
- Il
kicktoutes les personnes qui disent FORBIDDEN.
NB : le sessioncreator a deux hooks canCreate et canJoin qui permettent de vérifier si un utilisateur peut créer ou joindre la chatroom (avec une vérification en BDD, par exemple).
NB2 : Vous pouvez utiliser/modifier mon code source sans restriction. Pour les jars de Smack, vous devez respecter leur licence (mais bon c’est du Open Source Apache, ce qui est assez tranquille).
1 comment so far
Comments are closed.
Merci!