Skip to content

Integration of third party Chat services into Notifier is made with transports and transport factories. The Chat channel then utilizes configured transports.

Supported services

Notifier Chatter Channel includes support for many services, thanks to implementations provided by Symfony.

Glue is provided for wiring services to Drupal, while service code must be brought in as another dependency. For example to enable the Slack channel, run composer require symfony/slack-notifierthen clear caches. A transport will be wired up for you without needing to install extra modules or configure plugins.

Examples of how to configure services for a selection of popular services have been created for Discord, Slack, and Mercure.

WARNING

Not all services have been tested. Please assist others by debugging and posting bugfix resolutions in the issue queue. The maintainers of Notifier Chatter Channel are not able to debug services on your behalf.

HTTP Requests

Some transports require the Symfony HTTP client component. If you see errors or messages, typically during container compilation (drush cr), try to depend-on and install the Symfony HTTP Client for Drupal module. Only module installation is required, no other configuration is necessary.

sh
composer require drupal/symfony_http_client
drush module:enable symfony_http_client

Transport configuration

Chat transports are configured with service parameters.

INFO

See Notifier configuration for more detail on using service parameters.

Multiple transports may be configured, start with specifying a unique key representing each transport.

The value is a service specific DSN. A protocol:// is the prefix, with the name of the transport implementation, the value after this varies. See Symfony documentation for how to structure DSNs for each service. Each implementation outlines all possible values in its README.

yaml
chatter.transports:
  mytransport: 'slack://TOKEN@default?channel=CHANNEL'

Multiple transports per service

Transport configuration permits multiple transports, and even multiple transports for the same service.

Channels implementing Chatter services

DSNs for each can be found in Symfony documentation, or in the README after require -ing the dependency.

  • Amazon SNS
    composer require symfony/amazon-sns-notifier
  • Bluesky
    composer require symfony/bluesky-notifier
  • Chatwork
    composer require symfony/chatwork-notifier
  • Discordshow full example
    composer require symfony/discord-notifier
  • Fakeshow full example
    composer require symfony/fake-chat-notifier
  • Firebase
    composer require symfony/firebase-notifier
  • Google Chat
    composer require symfony/google-chat-notifier
  • LINE Bot
    composer require symfony/line-bot-notifier
  • LINE Notify
    composer require symfony/line-notify-notifier
  • LinkedIn
    composer require symfony/linked-in-notifier
  • Mastodon
    composer require symfony/mastodon-notifier
  • Mattermost
    composer require symfony/mattermost-notifier
  • Mercureshow full example
    composer require symfony/mercure-notifier
  • Microsoft Teams
    composer require symfony/microsoft-teams-notifier
  • Rocket Chat
    composer require symfony/rocket-chat-notifier
  • Slackshow full example
    composer require symfony/slack-notifier
  • Telegram
    composer require symfony/telegram-notifier
  • Twitter
    composer require symfony/twitter-notifier
  • Zendesk
    composer require symfony/zendesk-notifier
  • Zulip
    composer require symfony/zulip-notifier

This documentation is not provided or endorsed by any of the organisations listed above.