### Mattermost notifier Post notification in a mattermost channel via [incoming webhook](http://docs.mattermost.com/developer/webhooks-incoming.html) Just add the [HTTParty](https://github.com/jnunemaker/httparty) gem to your `Gemfile`: ```ruby gem 'httparty' ``` To configure it, you **need** to set the `webhook_url` option. You can also specify an other channel with `channel` option. ```ruby Rails.application.config.middleware.use ExceptionNotification::Rack, email: { email_prefix: '[PREFIX] ', sender_address: %{"notifier" }, exception_recipients: %w{exceptions@example.com} }, mattermost: { webhook_url: 'http://your-mattermost.com/hooks/blablabla', channel: 'my-channel' } ``` If you are using Github or Gitlab for issues tracking, you can specify `git_url` as follow to add a *Create issue* link in you notification. By default this will use your Rails application name to match the git repository. If yours differ you can specify `app_name`. ```ruby Rails.application.config.middleware.use ExceptionNotification::Rack, email: { email_prefix: '[PREFIX] ', sender_address: %{"notifier" }, exception_recipients: %w{exceptions@example.com} }, mattermost: { webhook_url: 'http://your-mattermost.com/hooks/blablabla', git_url: 'github.com/aschen' } ``` You can also specify the bot name and avatar with `username` and `avatar` options. ```ruby Rails.application.config.middleware.use ExceptionNotification::Rack, email: { email_prefix: 'PREFIX] ', sender_address: %{"notifier" }, exception_recipients: %w{exceptions@example.com} }, mattermost: { webhook_url: 'http://your-mattermost.com/hooks/blablabla', avatar: 'http://example.com/your-image.png', username: 'Fail bot' } ``` Finally since the notifier use HTTParty, you can include all HTTParty options, like basic_auth for example. ```ruby Rails.application.config.middleware.use ExceptionNotification::Rack, email: { email_prefix: '[PREFIX] ', sender_address: %{"notifier" }, exception_recipients: %w{exceptions@example.com} }, mattermost: { webhook_url: 'http://your-mattermost.com/hooks/blablabla', basic_auth: { username: 'clara', password: 'password' } } ``` #### Options ##### webhook_url *String, required* The Incoming WebHook URL on mattermost. ##### channel *String, optional* Message will appear in this channel. Defaults to the channel you set as such on mattermost. ##### username *String, optional* Username of the bot. Defaults to "Incoming Webhook" ##### avatar *String, optional* Avatar of the bot. Defaults to incoming webhook icon. ##### git_url *String, optional* Url of your gitlab or github with your organisation name for issue creation link (Eg: `github.com/aschen`). Defaults to nil and don't add link to the notification. ##### app_name *String, optional* Your application name used for issue creation link. Defaults to `Rails.application.class.module_parent_name.underscore` for Rails versions >= 6; `Rails.application.class.parent_name.underscore` otherwise.