Configuration

Two JSON configuration files are required.

Client Configuration

Contains DB credentials, RabbitMQ parameters, and TTS credentials.

The service_class field specifies the full module path to your TTS service implementation, which will be dynamically loaded at runtime.

Example (client-config.example.json):

{
  "service_class": "my_tts_service.MyTTSService",
  "db": {
    "username": "dashboard_user",
    "password": "your_db_password",
    "hostname": "localhost:3306",
    "db_name": "dashboard_db"
  },
  "rabbitmq": {
    "params": {
      "host": "localhost",
      "port": 5672,
      "username": "guest",
      "password": "guest",
      "virtual_host": "/"
    },
    "queue_params": {
      "queue": "tts_notifications",
      "exchange": "notifications",
      "routing_key": "tts.alarm"
    },
    "quorum_queue": false
  },
  "tts": {
    "api_url": "https://tts.example.com/api",
    "username": "tts_user",
    "password": "tts_password",
    "timeout": 30
  }
}

Required DB Fields

  • username - Database username

  • password - Database password

  • hostname - Database hostname (with optional :port)

  • db_name - Database name

Required RabbitMQ Fields

  • params.host - RabbitMQ hostname

  • params.port - RabbitMQ port (default: 5672)

  • params.username - RabbitMQ username

  • params.password - RabbitMQ password

  • params.virtual_host - Virtual host (default: “/”)

  • queue_params.queue - Queue name

  • queue_params.exchange - Exchange name

  • queue_params.routing_key - Routing key

  • quorum_queue - Use quorum queue (true/false)

CLI Usage

After installing the dashboard package, use the tts_api_notifier command:

tts_api_notifier --client-config /path/to/client-config.json

With optional parameters:

tts_api_notifier --client-config /path/to/client-config.json --no-include-sids