Updated readme

This commit is contained in:
Darks 2021-05-06 14:09:57 +02:00
parent ee3fc0a75f
commit 08507b3df0
Signed by: Darks
GPG Key ID: C3E0B298F7D85EAD
1 changed files with 39 additions and 13 deletions

View File

@ -24,24 +24,19 @@ Le second est le serveur UDP qui écoutera les évènements en provenance de la
Le troisième est une liste de canaux à joindre automatiquement lors de la connexion au serveur IRC.
## Lancement
Pour lancer le bot, exécutez simplement `main.py`.
```
$ ./main.py
_handle: <:irc.planet-casio.com NOTICE * :*** Looking up your hostname...>
_handle: <:irc.planet-casio.com NOTICE * :*** Found your hostname (cached)>
_handle: <:irc.planet-casio.com NOTICE Darks :Serveur réservé aux membres de Planète Casio.>
[...]
from bot import Bot
glados = Bot(
('irc.planet-casio.com', 6697),
('127.0.0.1', 5555),
["#general", "#glados", "#tests"]
)
```
## Ajout de commandes
### Réaction à des évènements v5
TBD
### Réaction à des messages IRC
Le bot reçoit tous les messages des canaux dans lequel il est présent. Ajouter une commande consiste à définir deux fonctions : une première qui filtre les messages, et une seconde qui exécute une action dans le cas où le filtre a laissé passer le message.
@ -101,3 +96,34 @@ def privately_insulted(msg):
def reply_insult(msg):
glados.irc.send(msg.author, "Ce n'est pas gentil, {msg.author}")
```
### Réaction à des évènements v5
Le bot écoute en permanence sur un socket UDP. C'est sur ce socket que la v5 envoie des messages. Actuellement les messages transitent au format `#channel1 #channel2: message`.
Coté bot, le système d'ajout de commandes est le même que pour IRC, à savoir deux fonctions à définir, une de test et une d'action. Ces fonctions prennent comme arguments une liste de strings correspondant aux canaux spécifiés lors de l'envoi, et une string correspondant au message envoyé.
Un exemple qui ne fait que retransmettre les messages :
```
@glados.v5.on(lambda c, m: True)
def announce(channels, message):
for c in channels:
glados.irc.send(c, message)
```
## Lancement
Pour lancer le bot, exécutez simplement `main.py`.
```
$ ./main.py
_handle: <:irc.planet-casio.com NOTICE * :*** Looking up your hostname...>
_handle: <:irc.planet-casio.com NOTICE * :*** Found your hostname (cached)>
_handle: <:irc.planet-casio.com NOTICE Darks :Serveur réservé aux membres de Planète Casio.>
[...]
```
## Axes d'amélioration
Le bot n'a aucune notion d'historique : un message ne peut être traité qu'individuellement, et non analysé dans son contexte. Ajouter un historique restreint (quelques dizaines de messages) permettrait de diversifier le comportement du bot.