Logo Khaganat

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
fr:botlogmauve [2020/03/02 17:44] Deedfr:botlogmauve [2025/07/24 08:29] (Version actuelle) – [Cahier des charges de la démone] ajout d'un lanceur de dé zatalyz
Ligne 1: Ligne 1:
 ====== Botlogmauve ====== ====== Botlogmauve ======
-Linkmauve nous avait créé de quoi loguer les canaux, et devant nos soucis avec errbot, il a ajouté la fonction pour ramener les flux RSS. Grâce à cela, [[wiki:user:pendorid|Pendorid]] est présente sur XMPP.+Linkmauve nous avait créé de quoi loguer les canaux, et devant nos soucis avec errbot, il a ajouté la fonction pour ramener les flux RSS. Grâce à cela, [[user:pendorid|Pendorid]] est présente sur XMPP.
  
-Téléchargez le bot sur [[https://git.linkmauve.fr/linkmauve/BotLogMauve|son dépôt]].+Téléchargez le bot sur [[https://git.khaganat.net/Numenaute/BotLogMauve| notre dépôt]].
  
 +Créer un dossier et un user pour le bot:
 +
 +  sudo useradd -m -d /var/www/pendorid -s /bin/bash -p pendorid pendorid
  
 Il faut installer les modules slixmpp, aiohttp, feedparser. On en profite aussi pour faire un dossier où seront les logs et le fichier du bot : Il faut installer les modules slixmpp, aiohttp, feedparser. On en profite aussi pour faire un dossier où seront les logs et le fichier du bot :
  
-  pip install pipenv +  sudo -u pendorid pip3 install pipenv 
-  mkdir xmpplog+  sudo -u pendorid mkdir xmpplog
   cd xmpplog   cd xmpplog
-  python -m pipenv install slixmpp aiohttp feedparser +  sudo -u pendorid python3 -m pipenv install slixmpp aiohttp feedparser 
-  git clone https://git.linkmauve.fr/linkmauve/BotLogMauve.git+  sudo -u pendorid git clone https://git.khaganat.net/khaganat/BotLogMauve.git 
 +  cd BotLogMauve
  
 Les dossiers de log se créeront automatiquement ici par la suite (à prendre en compte si vous mettez à jour via git).  Les dossiers de log se créeront automatiquement ici par la suite (à prendre en compte si vous mettez à jour via git). 
Ligne 19: Ligne 23:
  
 Lancez le script avec pipenv et vérifier que tout va bien : Lancez le script avec pipenv et vérifier que tout va bien :
-  python -m pipenv run python ./log.py -d+  sudo -u pendorid python3 -m pipenv run python ./log.py -d
      
 +<WRAP center round important 60%>
 +Les options :\\
 + -d pour les logs de debug\\
 + -q pour les logs de error
 +</WRAP>
  
-Si ça marche, on créé un service systemd dans ''/etc/systemd/system/xmpplog.service''. Adaptez l'utilisateur, le groupe et les chemins.+ 
 +Si ça marche, on créé un service systemd dans ''/etc/systemd/system/pendorid.service''. Adaptez l'utilisateur, le groupe et les chemins.
  
 <code> <code>
Ligne 31: Ligne 41:
 [Service] [Service]
 Type=simple Type=simple
-User=khaganat +User=pendorid 
-Group=khaganat +Group=pendorid 
-WorkingDirectory=/home/khaganat/chatbot/xmpplogbot+WorkingDirectory=/var/www/pendorid/xmpplog/BotLogMauve 
-ExecStart=/usr/bin/python -m pipenv run python ./log.py+ExecStart=/usr/bin/python3 -m pipenv run python ./log.py
 Restart=always Restart=always
 +RuntimeMaxSec=1d
 KillSignal=SIGINT KillSignal=SIGINT
    
Ligne 43: Ligne 54:
  
 Pour activer le service : Pour activer le service :
-  sudo systemctl enable xmpplog.service +  sudo systemctl enable pendorid.service 
-  sudo service xmpplog start+  sudo service pendorid start 
 + 
 +===== Potentielles résolutions de problème ===== 
 +Le paquet ''python-is-python3'' a besoin d'être installé (sur bookworm). 
 + 
 +La mise à jour se fait (peut-être, ou pas) avec la commande suivante, dans le dossier du bot (soit ici par défaut : ''/var/www/pendorid/xmpplog/BotLogMauve'') : 
 +  sudo -u pendorid python3 -m pipenv update 
 + 
 +Si rien ne va, détruire le virtualenv (où le trouver ? je ne suis pas sûre mais les erreurs vous l'indiqueront sans doute) et le recréer avec pipenv.  
 + 
 +===== Cahier des charges de la démone ===== 
 +<WRAP center round important 60%> 
 +Les charges ? Allons direct au verdict : Coupable ! 
 +</WRAP> 
 + 
 +C'est un bot ET une démone. C'est donc assez normal qu'elle aie son caractère. Plus concrètement, qu'est-ce qu'on lui demande ?  
 + 
 +<task> 
 +TITLE: Présence sur certains salons 
 +PROGRESS: 100% 
 +DESCRIPTION: Suivant les salons, elle a plus ou moins de choses à "faire", cf les autres fonctionnalités. 
 +</task> 
 + 
 +<task> 
 +TITLE: Ramener certains flux rss 
 +PRIORITY: High 
 +PROGRESS: 90% 
 +ASSIGNED: Link Mauve 
 +DESCRIPTION:  
 +  * Ramener certains flux rss (parfois plusieurs à surveiller pour un seul salon) : (100%) 
 +  * <wrap todo>Actuellement elle est parfois très "lente" à aller interroger les flux. Peut-être que ça vient des flux ? Mais ça n'a pas l'air, on a le souci sur les wiki comme le forum </wrap> 
 +  * Personnalisation des messages pour ramener ces flux (parce que juste les liens, c'est triste) (100%) 
 +</task> 
 + 
 +<task> 
 +TITLE: Loguer les conversations.  
 +PROGRESS: 100% 
 +DESCRIPTION: Un fichier de log par jour et par salon. 
 +</task> 
 + 
 +<task> 
 +TITLE: Parler en étant "animée" 
 +PROGRESS: 10% 
 +DESCRIPTION: Ça demanderait à être détaillé. C'est un compte xmpp donc on peut se co avec un second client, mais ça avait tendance à faire buguer les logs etc (je ne sais si c'est encore le cas). L'idéal serait d'avoir un fonctionnement comme [[fr:limnoria#alias|Alias de Limnoria]]. On pourrait discuter de la syntaxe.  
 + 
 +Todo : 
 +  * Quelle syntaxe utiliser ? 
 +  * Comment définir qui a le droit d'utiliser ces commandes ? 
 +</task> 
 + 
 +<task> 
 +TITLE: Dire qu'elle est en vie  
 +PROGRESS: 100% 
 +DESCRIPTION: Quand on dit "Pendorid?", elle répond un truc (marrant, et personnalisé). L'objectif est juste de vérifier qu'elle est bien aussi présente qu'elle le prétends. 
 +</task> 
 + 
 +<task> 
 +TITLE: Donne un chiffre random dans une fourchette  
 +PROGRESS: 0% 
 +DESCRIPTION: Quand on dit "Pendorid: "Pendorid: lance un dX", X étant le nombre maximum, elle va répondre un chiffre random entre 1 et X. 
 +</task> 
  
 {{tag> Tutoriel Bot Serveur XMPP}} {{tag> Tutoriel Bot Serveur XMPP}}
CC Attribution-Share Alike 4.0 International Driven by DokuWiki
fr/botlogmauve.1583171065.txt.gz · Dernière modification : (modification externe)

Licences Mentions légales Accueil du site Contact Inclusion