猫の魔法

主にruby系の技術メモを記載

SlackTsuribariというgemを作った

SlackTsuribariというSlackのIncoming Webhookを使う為のラッパーgemを作りました。

目的

  • 自分の勉強用(Github Actionとか使いたかった)
  • SlackのIncoming Webhook ラッパーのgemの代表格であるslack-notifierが長らく更新されずにいたので、メンテ状態にあるgemがほしかった

使い方

とりあえずslackのIncoming Webhookを使う為の最低限の機能だけを持ったgemにしました。 使うにはまずHookを用意して、そのHookを使ってメッセージを投げるような感じになります。

とりあえずテキストのメッセージを投げるだけなら、SlackのIncoming Webhookを設定したあとに以下だけでメッセージをslackにpost出来ます。

hook = SlackTsuribari::Hook.config('Incoming WebhookのURL')
SlackTsuribari::Angler.easy_throw!(hook, 'test message')

投稿されたイメージ

f:id:nekomaho:20200329225953p:plain:w300
slackへの投稿

色のバーを横に付けたい等、もう少しカスタマイズしたメッセージをpostする場合は、 SlackのIncoming Webhookのメッセージ添付ファイルのフォーマットに沿って、attachments属性を設定する形にします。 attachmentに何を指定できるかはSlackのリファレンス が参考になると思います。

hook = SlackTsuribari::Hook.config('Incoming WebhookのURL')
payload = {
  attachments: [
    fallback: 'test message',
    text: 'test message',
    color: '#00FF00',
  ]
}
SlackTsuribari::Angler.throw!(hook, payload)

投稿されたイメージ

f:id:nekomaho:20200329231438p:plain:w300
slackへの投稿