Maintenant que nous avons installé l'instance Matrix, nous allons voir comment configurer un bridge Facebook Messenger. Sans transition, passons à l'installation ! 😬
La documentation est disponible ici.
Installation des dépendances
apt-get update
apt-get upgrade
L'utilisation des bridges requiert la présence de Python à la version 3.8+, pip
et virtualenv
.
apt-get install python3-pip cmake
pip3 install --upgrade virtualenv
Installer la dépendance olm
nécessaire pour certains bridges :
apt-get install libolm-dev
Installation du bridge
Créer l'environnement virtuel :
mkdir -p /opt/mautrix-bridges/facebook
cd /opt/mautrix-bridges/facebook
virtualenv -p /usr/bin/python3 .
source ./bin/activate
(facebook) root@debian11:/opt/mautrix-bridges/facebook#
Installer le paquet mautrix-facebook
:
(facebook) root@debian11:/opt/mautrix-bridges/facebook# pip3 install --upgrade mautrix-facebook[all]
Copier le fichier de configuration généré :
cp example-config.yaml config.yaml
Adapter son contenu :
-
homeserver
:address: https://matrix.example.com
domain: matrix.example.com
-
bridge
:-
permissions
: -
"matrix.example.com": "user" "@admin:example.com": "admin"
-
-
appservice
:database: postgres://synapse:Azerty123@127.0.0.1/synapse
Générer la configuration :
(facebook) root@debian11:~/mautrix-bridges/facebook# python3 -m mautrix_facebook -g
Registration generated and saved to registration.yaml
Ajouter le chemin du fichier registration.yaml
fraîchement généré dans le fichier /etc/matrix-synapse/homeserver.yaml
:
app_service_config_files:
- /opt/mautrix-bridges/facebook/registration.yaml
Puis redémarrer Matrix :
systemctl restart matrix-synapse
Et démarrer le bridge :
(facebook) root@debian11:~/mautrix-bridges/facebook# python3 -m mautrix_facebook -g
Tout est opérationnel !
Configuration du bridge dans Element
Démarrer une nouvelle conversation, à travers le + de la catégorie Personnes :
Puis écrire à : @facebookbot:matrix.example.com
Se connecter avec la commande login
.
Le bot vous répond. Tapez votre mot de passe. Il sera automatiquement supprimé.
Ainsi, votre compte Facebook est lié, vous avez maintenant la possibilité de discuter avec vos contacts utilisant un service externe à Element / Matrix !
Problèmes connus
J'ai eu le cas lors de l'envoi d'un message, l'opération échouait avec le message suivant :
'NoneType' object has no attribute 'generate_offline_threading_id'
Pour le résoudre, j'ai ajouté cette ligne dans le fichier config.yaml
du bridge Facebook :
bridge:
invite_own_puppet_to_pm: true