class PubsubNotifier::SlackClient
Attributes
channel[R]
icon_emoji[R]
username[R]
Public Class Methods
new(options = {})
click to toggle source
# File lib/pubsub_notifier/slack_client.rb, line 9 def initialize(options = {}) @channel = options.delete(:channel) || default_channel @username = options.delete(:username) || default_username @icon_emoji = options.delete(:icon_emoji) || default_icon_emoji end
Public Instance Methods
notify_failure(message)
click to toggle source
# File lib/pubsub_notifier/slack_client.rb, line 25 def notify_failure(message) post_slack( attachments: [{ text: message, color: "danger", mrkdwn_in: ["text"], }], ) end
notify_success(message)
click to toggle source
# File lib/pubsub_notifier/slack_client.rb, line 15 def notify_success(message) post_slack( attachments: [{ text: message, color: "good", mrkdwn_in: ["text"], }], ) end
Private Instance Methods
default_channel()
click to toggle source
# File lib/pubsub_notifier/slack_client.rb, line 57 def default_channel config.default_channel end
default_icon_emoji()
click to toggle source
# File lib/pubsub_notifier/slack_client.rb, line 65 def default_icon_emoji config.default_icon_emoji end
default_payload()
click to toggle source
# File lib/pubsub_notifier/slack_client.rb, line 48 def default_payload { channel: channel, link_names: 1, username: username, icon_emoji: icon_emoji, } end
default_username()
click to toggle source
# File lib/pubsub_notifier/slack_client.rb, line 61 def default_username config.default_username end
end_point_uri()
click to toggle source
# File lib/pubsub_notifier/slack_client.rb, line 44 def end_point_uri @end_point_uri ||= URI.parse(webhook_url) end
post_slack(payload)
click to toggle source
# File lib/pubsub_notifier/slack_client.rb, line 37 def post_slack(payload) Net::HTTP.post_form( end_point_uri, payload: default_payload.merge(payload).to_json, ) end
webhook_url()
click to toggle source
# File lib/pubsub_notifier/slack_client.rb, line 69 def webhook_url config.webhook_url end