EFB Facebook Messenger Slave (EFMS)
EFMS is a channel that connects to Facebook Messenger for EH Forwarder Bot, based on simulation of Facebook Messenger Web, and fbchat.
- Python >= 3.6
- EH Forwarder Bot >= 2.0.0
Install required binary dependencies
pip3 install efb-fb-messenger-slave
Enable and configure EFMS using the EFB configuration wizard, or enable it manually in the profile’s
The path to the current profile may vary depends on your configuration.
(In EFB 2, the default profile path is
Sign in (only if setting up manually)
And follow the instructions.
- Messages from threads in
MARKETPLACEtype (i.e. messages from interested buyers on Facebook Marketplace) cannot be processed.
- Live location cannot be updated properly.
- Poll messages, reminders and events are not yet supported.
- Voice calls are not planned to be supported.
Optional configuration file
EFMS allows user to enable or disable experimental features with the
configuration file. It is located at
<Path to current profile>/blueset.fbmessenger/config.yaml.
# Experimental flags # This section can be used to enable experimental functionality. # However, those features may be changed or removed at any time. # Options in this section is explained afterward. flags: option_one: 10 option_two: false option_three: "foobar"
Tips and tricks
- To send large emoji, send the emoji as text following by
Las small, medium and large emoji accordingly. For example, to send a large smile emoji, send
The following flags are experimental features, may change, break, or disappear at any time. Use at your own risk.
Deliver links (including links in share entities and thumbnails) using Facebook’s proxy. Disable this option to show the source directly.
When processing link message from the Master Channel, attach the title and description besides the link when the option is enabled.
Regardless of this option, link messages are sent as text, and Facebook Messenger may or may not attach its own link preview per its system configuration.*
When showing the threads list, include threads pending approval.
When showing the threads list, include archived threads.
EFMS’s chats provides the following vendor specific options:
'chat_type'(str): Type of the thread:
'profile_picture_url'(str): URL to the thread’s profile picture.
EFMS is licensed under GNU Affero General Public License 3.0 or later versions:
EFB Facebook Messenger Slave Channel: A slave channel for EH Forwarder Bot. Copyright (C) 2016 - 2020 Eana Hufwe, and the EFB Facebook Messenger Slave Channel contributors All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
EFMS supports translated user interface prompts,
by setting the locale environmental variable (
LANG) to one of our
supported languages. Meanwhile, you can help to translate
this project into your languages on our Crowdin page.
If your are installing from source code, you will not get translations
of the user interface without manual compile of message catalogs (
prior to installation.