Habitica Wiki JP
Habitica Wiki JP

説明

メインサイトにないすべてのWebhookオプションとWebhook APIのバグの回避策を含むHabitica Webhooksの代替エディターです。

使用方法

Habitica Webhook Editorには、このページにリンクされているWebサイトにアクセスしてアクセスできます。Habitica APIの認証情報を使用してログインすると、既存のすべてのWebhookのリストと2つのボタンが表示されます。1つは新しいWebhookを作成し、もう1つはWebhookのリストをリロードします。

Webhookの作成

Webhookリストページで、「Webhookの作成」ボタンをクリックし、Webhookの詳細をフォームに入力して、「送信」ボタンをクリックします。Webhookが作成され、Webhookリストページに戻ります。

Webhookの編集

Webhookリストページで、既存のWebhookの「編集」リンクをクリックします。新しいWebhookを作成するときと同じWebhook編集フォームが表示されますが、編集中のWebhookの詳細が入力されます。必要に応じてwebhookの詳細を変更し、「送信」ボタンをクリックします。Webhookが新しい詳細とともに保存され、Webhookリストページに戻ります。

Webhookオプション

すべてのWebhookには、エディターに表示される次のオプションがあります。

  • Enabled - オンまたはオフにして、Webhookを有効または無効にすることができます
  • Label - Webhookにわかりやすい名前を付けるために使用できます
  • URL - Webhookの起動時にHabiticaがイベントデータを送信するURLを設定します

さらに、4つの異なるタイプのWebhookがあり、それぞれに独自のオプションセットがあります。編集フォームの「Webhook Type」の下にあるタブをクリックして、Webhookタイプを選択できます。タイプは次のとおりです。 taskActivitygroupChatReceiveduserActivity、および questActivity

taskActivity
  • created - boolean - タスクが作成されたとき、このWebhookを起動します
  • updated - boolean - タスクが更新されたとき、このWebhookを起動します
  • deleted - boolean - タスクが削除されたとき、このWebhookを起動します
  • scored - boolean - タスクがスコア付けされたとき、このWebhookを起動します。これには、To Doまたは日課のチェックオフ、および習慣の「+」または「-」のクリックが含まれます。
  • checklistScored - boolean - タスクのチェックリストの項目がスコア付けされたとき、このWebhookを起動します。
groupChatReceived

このWebhookタイプには、参加しているグループ(パーティー、ギルドなど)のUUIDであるGroup IDのフィールドしかありません。このWebhookは、メッセージがそのグループのチャットに送信されたときに発生します。

パーティーIDを見つけるのは難しい場合があるため(ほとんどのグループIDのようにURLにはありません)、Habitica Webhook Editorは、グループIDテキストフィールドの下にリンクを提供します。そのリンクをクリックするとパーティーIDが判明しますので、入力してください。

userActivity
  • mountRaised - boolean - 乗騎が育ったとき、このWebhookを起動します
  • petHatched - boolean - たまごが孵化したとき、このWebhookを起動します
  • leveledUp - boolean - レベルアップしたとき、このWebhookを起動します
questActivity
  • questStarted - boolean - クエストが開始したとき、このWebhookを起動します
  • questFinished - boolean - クエストが終了したとき、このWebhookを起動します
  • questInvited - boolean - ユーザーがクエストに招待されたとき、、このWebhookを起動します

APIの回避策

The Habitica Webhook Editorは、いくつかのWebhook APIバグに対する組み込みの回避策を提供します。それらは次のとおりです。

  • Clearing labels。APIは、ラベルフィールドの空の文字列を、ラベルをまったく渡さなかったかのように処理するため、空の文字列からラベルをクリアできません。 Webhookエディターは、ラベルフィールドの空の文字列を単一のスペースに置き換えることでこの問題を回避します。これをAPIが値として認識し、ユーザーがラベルフィールドを「クリア」できるようにします。
  • Updating options。APIのWebhook更新ルートは実際にWebhookオプションを変更できません。WebhookエディターはAPIの仕組みを利用して、最初にWebhookのタイプを変更した場合(たとえばtaskActivityからuserActivityへ)にオプションを「変更」し、次に設定したい新しいオプションで変更します。これを行うことで、Webhookエディターは、エンドポイントが壊れていてもWebhookオプションを更新できます。