Skip to main content

Framework to create your own Signal bots

Project description

Signal Bot Framework

PyPI Downloads Version License CI codecov

Python package to build your own Signal bots.

[!IMPORTANT] Signalbot v2 is being developed at https://github.com/signalbot-org/signalbot/pull/240. Feedback on the direction is welcomed, either as a comment there or in https://github.com/signalbot-org/signalbot/issues/234

Installation

See the getting started section in the documentation.

Minimal bot

This is what a minimal bot using signalbot looks like:

import os
import logging
from signalbot import SignalBot, Config, Command, Context, triggered, enable_console_logging


class PingCommand(Command):
    @triggered("Ping")
    async def handle(self, context: Context) -> None:
        await context.send("Pong")


if __name__ == "__main__":
    enable_console_logging(logging.INFO)

    bot = SignalBot(
        Config(
            signal_service=os.environ["SIGNAL_SERVICE"],
            phone_number=os.environ["PHONE_NUMBER"],
        )
    )
    bot.register(PingCommand()) # Run the command for all contacts and groups
    bot.start()

Help

See the documentation for more details.

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

signalbot-1.1.0.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

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

signalbot-1.1.0-py3-none-any.whl (24.3 kB view details)

Uploaded Python 3

File details

Details for the file signalbot-1.1.0.tar.gz.

File metadata

  • Download URL: signalbot-1.1.0.tar.gz
  • Upload date:
  • Size: 19.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for signalbot-1.1.0.tar.gz
Algorithm Hash digest
SHA256 923204d1ccf2f2271e42a683988f106ba13f21a0f818d33464bd819f024e7698
MD5 bcacb71f585a621f2352d02793fb01bf
BLAKE2b-256 523ac4002e7f2c00a18219630a15480511f48da257a5eb809f066d0b3121b54c

See more details on using hashes here.

File details

Details for the file signalbot-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: signalbot-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 24.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for signalbot-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b05daa59aa592c7a67cdeb45f31c5940be4557896d8659fe9e517014b8d1641f
MD5 0b3738e1c6b66cac29edbe5925a836e2
BLAKE2b-256 b3225148350b70d817732f61b125a758b0df6321e3d110333c0f9db9b9b14aea

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