# Tube FIFO

Vous pouvez contrôler WeeChat à distance, en envoyant des commandes ou du texte dans un tube FIFO (si l'option "plugins.var.fifo.fifo" est activée, elle l'est par défaut).

Le tube FIFO est dans le répertoire "`~/.weechat/`" et s'appelle "weechat_fifo_xxxxx" (où xxxxx est l'ID du processus (PID) du WeeChat qui tourne).

La syntaxe pour envoyer des commandes ou du texte dans le tube FIFO est une des suivantes :

          catégorie,nom *texte ou commande ici
          nom *texte ou commande ici
          *texte ou commande ici

Quelques exemples :

- changement du pseudo sur freenode en "pseudo|absent" :

      $ echo 'freenode,freenode */nick pseudo|absent' >~/.weechat/weechat_fifo_12345

- affichage de texte sur le canal #weechat :

      $ echo 'freenode,#weechat *bonjour tout le monde !' >~/.weechat/weechat_fifo_12345

- affichage de texte sur le canal courant (le tampon affiché par WeeChat) :

      $ echo '*bonjour !' >~/.weechat/weechat_fifo_12345

  Attention : ceci est dangereux et vous ne devriez pas le faire sauf si vous savez ce que vous faites !

- envoyer deux commandes pour décharger/recharger les scripts Perl (vous devez les séparer par "\n") :

      $ echo -e "weechat,weechat */perl unload\nweechat,weechat */perl autoload" >~/.weechat/weechat_fifo_12345

Vous pouvez écrire un script qui envoie les commandes à tous les WeeChat qui tournent en même temps, par exemple :

    #!/bin/sh
    if [ $# -eq 1 ]; then
        for fifo in ~/.weechat/weechat_fifo_*
        do
            echo -e "$1" >$fifo
        done
    fi

Si le script s'appelle "auto_weechat_command", vous pouvez le lancer ainsi :

    $ ./auto_weechat_command "freenode,#weechat *bonjour"