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.12.tar.gz (290.3 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.12-py3-none-any.whl (28.1 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for roboherd-0.1.12.tar.gz
Algorithm Hash digest
SHA256 0c5df067696bb86b18d57e1903c991dcf328acaa03ec221725d39f6b60be507e
MD5 3b3d9e7c884715d723546c3901acb37b
BLAKE2b-256 9c0721f09fd3e3528b3ab3a8be1ad2e932b757291c2ea3ea3df16da11ca273a1

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for roboherd-0.1.12-py3-none-any.whl
Algorithm Hash digest
SHA256 0c0d3bd3e85db7e0e3fc32e87bd4297bd4de9e3aa0c9993437c846383360ff58
MD5 77fc3471f9486875d46e15b3a08af95f
BLAKE2b-256 5405d3c370e081992eeb134e1364d9c9e2130ff65db607c8fea1867d840c637c

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