Skip to content

A rude Signal chatbot with some musical capabilites

Notifications You must be signed in to change notification settings

cycneuramus/sigurd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sigurd

Sigurd is an example chatbot for Signal built on the signalbot framework. Features:

  • Responds quite rudely, especially to negative feedback.
  • Caches responses so as never to repeat himself.
  • Keeps quiet unless his name is mentioned, or unless he receives a ! prefixed command.
  • Quotes random song lyrics on demand (e.g. !lyrics Symphony X).
  • Notifies you of new releases from artists that you wish to track
  • Performs tasks according to a cron schedule.

Installation

  1. Register a Signal account for Sigurd (you will need a dedicated phone number for this).

  2. Install and configure signal-cli.

  3. Clone this repo:

git clone https://github.com/cycneuramus/sigurd
  1. Populate the .env file:

    • BOT_PHONE: Phone number for Sigurd's Signal account.

    • SELF_PHONE: Phone number for your own Signal account, or any other phone number that Sigurd should respond to.

    • GROUP_ID: Signal group for Sigurd to participate in, if any.

    • GENIUS_ACCESS_TOKEN: Required for the !lyrics command. See the Genius API docs.

    • NTFY_URL: ntfy server to use. Required for the release_radar task to send notifications.

    • SPOTIFY_CLIENT_*: Required for the release_radar task. See the Spotify API docs.

    • SIGNAL_SERVICE: Hostname for the signal-cli REST API service in docker-compose.yml.

  2. Spin up the Docker containers:

docker compose up -d