fbapy

Unofficial Facebook Chat API for Python


Keywords
facebook, messenger, chat, api, python, unofficial, chatbot
License
MIT
Install
pip install fbapy==1.0.2

Documentation

fbapy

Unofficial Facebook Chat API for Python

Table of Contents

Introduction

fbapy is a Python version of the Node.js package @xaviabot/fca-unofficial. It is based on the forked deprecated version fca-unoffical, which itself is a fork of the deprecated version facebook-chat-api.

fbapy acknowledges the contributions of the original authors of facebook-chat-api, recognizes the efforts put into fca-unoffical, and explains that the Python version is based on the for @xaviabot/fca-unofficial.

Installation

fbapy is available on PyPI:

pip install fbapy

libmagic issue

If you encounter an error like this:

ImportError: failed to find libmagic. Check your installation

You need to install libmagic.

For Termux:

pkg install sox

For replit.com, open replit.nix and add magic to the list of dependencies, for example:

{ pkgs }: {
  deps = [
    pkgs.python311Packages.magic
  ];
}

For Other Platforms, try installing python-magic-bin:

pip install python-magic-bin==0.4.14

Example Usage

Login

Using base64 encoded appstate from c3c-fbstate

from fbapy import *

client = Client()

api = client.login(
    appstate="YOUR_BASE64_ENCODED_APP_STATE",
    options={
        "user_agent": "YOUR_USER_AGENT",
    },
)

Send Message (HTTP Method)

api.http.send_message(
    msg="Hello World!",
    thread_id="0000000000000000",
)

Testing

You can run test.py to test the package. Install packages from requirements.txt + python-dotenv first.

pip install -r requirements.txt
pip install python-dotenv

Then create a .env file in the root directory of the project and add the following:

APPSTATE="YOUR_BASE64_ENCODED_APP_STATE"

Then run test.py:

python test.py

Open a chat with the appstate account, try sending ?ping1/?ping2, and you should get a reply pong

Alt text

Documentation

See DOCS.md for more information.

License

This project is licensed under the MIT License - see the LICENSE file for details.