class
Webhook::Client
- Webhook::Client
- Reference
- Object
Overview
webhook URL へ JSON を POST する。
Slack と Discord のアダプタは投稿の組み立て方こそ違うが、「webhook URL に JSON を POST し、一時的な失敗は再送する」点は同じで、再送の判断と待機が 二重に書かれていた(issue #123)。片方だけ直すと挙動がずれるため、送信そのものは ここにまとめ、アダプタは投稿の組み立てに専念する。
Defined in:
webhook/client.crConstant Summary
-
MAX_RETRY_WAIT =
5.seconds -
MAX_SEND_ATTEMPTS =
3
Constructors
-
.new(service : String, url : String)
service はエラーメッセージに出す送信先の名前。
Instance Method Summary
-
#post(body : String)
送信できたら戻り、恒久的に失敗したら例外にする。
Constructor Detail
Instance Method Detail
def post(body : String)
#
送信できたら戻り、恒久的に失敗したら例外にする。
呼び出し側は投稿の成功を前提に通知を既読化する。応答を見ずに成功扱いにすると、 投稿されていない通知まで既読化され、どこにも表示されないまま消える(issue #120)。 よって失敗は握りつぶさず例外にし、既読化を止めて次回実行に委ねる。