salt.modules.slack_notify

Module for sending messages to Slack

New in version 2015.5.0.

configuration

This module can be used by either passing an api key and version directly or by specifying both in a configuration profile in the salt master/minion config.

For example:

slack:
  api_key: peWcBiMOS9HrZG15peWcBiMOS9HrZG15
salt.modules.slack_notify.call_hook(message, attachment=None, color='good', short=False, identifier=None, channel=None, username=None, icon_emoji=None)

Send message to Slack incoming webhook.

Parameters
  • message -- The topic of message.

  • attachment -- The message to send to the Slacke WebHook.

  • color -- The color of border of left side

  • short -- An optional flag indicating whether the value is short enough to be displayed side-by-side with other values.

  • identifier -- The identifier of WebHook.

  • channel -- The channel to use instead of the WebHook default.

  • username -- Username to use instead of WebHook default.

  • icon_emoji -- Icon to use instead of WebHook default.

Returns

Boolean if message was sent successfully.

CLI Example:

salt '*' slack.call_hook message='Hello, from SaltStack'
salt.modules.slack_notify.find_room(name, api_key=None)

Find a room by name and return it.

Parameters
  • name -- The room name.

  • api_key -- The Slack admin api key.

Returns

The room object.

CLI Example:

salt '*' slack.find_room name="random"

salt '*' slack.find_room name="random" api_key=peWcBiMOS9HrZG15peWcBiMOS9HrZG15
salt.modules.slack_notify.find_user(name, api_key=None)

Find a user by name and return it.

Parameters
  • name -- The user name.

  • api_key -- The Slack admin api key.

Returns

The user object.

CLI Example:

salt '*' slack.find_user name="ThomasHatch"

salt '*' slack.find_user name="ThomasHatch" api_key=peWcBiMOS9HrZG15peWcBiMOS9HrZG15
salt.modules.slack_notify.list_rooms(api_key=None)

List all Slack rooms.

Parameters

api_key -- The Slack admin api key.

Returns

The room list.

CLI Example:

salt '*' slack.list_rooms

salt '*' slack.list_rooms api_key=peWcBiMOS9HrZG15peWcBiMOS9HrZG15
salt.modules.slack_notify.list_users(api_key=None)

List all Slack users.

Parameters

api_key -- The Slack admin api key.

Returns

The user list.

CLI Example:

salt '*' slack.list_users

salt '*' slack.list_users api_key=peWcBiMOS9HrZG15peWcBiMOS9HrZG15
salt.modules.slack_notify.post_message(channel, message, from_name, api_key=None, icon=None)

Send a message to a Slack channel.

Parameters
  • channel -- The channel name, either will work.

  • message -- The message to send to the Slack channel.

  • from_name -- Specify who the message is from.

  • api_key -- The Slack api key, if not specified in the configuration.

  • icon -- URL to an image to use as the icon for this message

Returns

Boolean if message was sent successfully.

CLI Example:

salt '*' slack.post_message channel="Development Room" message="Build is done" from_name="Build Server"