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.10.tar.gz (260.4 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.10-py3-none-any.whl (27.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for roboherd-0.1.10.tar.gz
Algorithm Hash digest
SHA256 aee6c718e9b5635a06d720b478618673f5d6200fcfe90a047bc6ae85d6d6b578
MD5 d07eb201d87ab17d4e29007e32fc5f5b
BLAKE2b-256 ac6c94eb437bf964e8cb34c27b17a154b64544f532ad512211a55b1255200d9c

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for roboherd-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 ae49329774059fa67561a623a5b1aea3926b55d88529b44e101c7a81ce454062
MD5 3f44ef1772aeee9542b567135df64f31
BLAKE2b-256 1bdf4884caae45ad94c9e7357ac28dc3f79cc2d0ababdd4c39d50abe3b1d4948

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