Skip to main content

A Fediverse bot framework

Project description

Roboherd

Roboherd is a framework for building Fediverse bots using the Cattle Drive Protocol.

For more information, see the documentation or the repository.

Developping with cattle_grid

In your catle_grid config directory add a roboherd user, e.g. a file testing.toml with content

[testing]
enable = true

[[testing.accounts]]
name = "herd"
password = "pass"
permissions = ["admin"]

Configure roboherd via roboherd.toml, e.g.

base_url = "http://abel"
connection_string = "ws://herd:pass@localhost:3000/ws/"

[cow.rooster]
bot = "roboherd.examples.rooster:bot"

This will trigger a periodic message to cattle_grid.

nginx for cattle_grid

The nginx in the cattle_grid configuration should forward the path /ws/ to rabbitmq (supporting mqtt over websockets)

server {
    listen 80;
    
    location /ws/ {
        proxy_pass http://rabbitmq:15675;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $connection_upgrade;
        proxy_read_timeout 86400; # neccessary to avoid websocket timeout disconnect
        proxy_send_timeout 86400; # neccessary to avoid websocket timeout disconnect
        proxy_redirect off;
        proxy_buffering off;
    }
}

similarly nginx should forward port 80 to 3000 (in the docker compose file).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

roboherd-0.1.11.tar.gz (260.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

roboherd-0.1.11-py3-none-any.whl (27.6 kB view details)

Uploaded Python 3

File details

Details for the file roboherd-0.1.11.tar.gz.

File metadata

  • Download URL: roboherd-0.1.11.tar.gz
  • Upload date:
  • Size: 260.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.14

File hashes

Hashes for roboherd-0.1.11.tar.gz
Algorithm Hash digest
SHA256 00a9334d170d5b4795f9a502fdc566aa447e39eac6b2c90d9a5240a64bb0a860
MD5 6169979a2dbe05f74280fe8dc1645b17
BLAKE2b-256 a460b64db8ba1bc1c7806dd38eaefc0e8d6605a43a63070643fc5dcb9cf8fc2b

See more details on using hashes here.

File details

Details for the file roboherd-0.1.11-py3-none-any.whl.

File metadata

  • Download URL: roboherd-0.1.11-py3-none-any.whl
  • Upload date:
  • Size: 27.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.14

File hashes

Hashes for roboherd-0.1.11-py3-none-any.whl
Algorithm Hash digest
SHA256 a197b9478aed5963bbc1eb2718ae4e6bbb8bc0c5e5a5b3151a68da417118e5bc
MD5 043f36580bdebf79606fc76cd826d534
BLAKE2b-256 b1cfecc5fa45675741b5b4a85027f927b2d4f22bf370fef6df0400357deb64bb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page