IFTTT を使って新しいトピック、投稿、または個人メッセージを作成したいですか?始めましょう!
IFTTT サービスの Maker Webhooks を使用することで、Discourse API の呼び出しが可能です。そのためには、まず API キーを生成する必要があります。API キーは、管理パネルの /admin/api/keys から作成できます。
また、ユーザー管理ページを通じてユーザー固有の API キーを生成することも可能です。
次に、IFTTT で 新しいアプリレットを作成 し、お好みのトリガーサービスを選択します。ここでは例として Google カレンダー サービスを使用します。
次に、新しいイベントが追加されたとき というトリガーを選択します。
トリガーを Discourse と接続するには、アクションサービスとして Maker Webhooks を、アクションとして Web リクエストを送信 を選択します。
次に、以下の通りアクションフィールドを入力します。
-
URL(必須):
https://discourse.example.com/posts.json -
メソッド(必須):
POST -
コンテンツタイプ:
application/json -
追加ヘッダー:
Api-Key: [YOUR_API_KEY]
Api-Username: [API_USERNAME]
重要: API 認証情報は URL クエリパラメータではなく、HTTP ヘッダー(
Api-KeyとApi-Username)として送信する必要があります。Discourse は POST リクエストにおいてクエリパラメータによる API キー認証を受け付けていません。IFTTT の Maker Webhooks サービスではカスタムヘッダーをサポートしています。追加ヘッダー フィールドを使用してヘッダーを追加してください。
- 本文:
{
"title": "{{Title}}",
"raw": "{{Description}}\n\n場所: {{Where}}\n時刻: {{Starts}} - {{Ends}}",
"category": 4,
"created_at": "{{CreatedAt}}"
}
本文には {{ }} で囲まれた多くのフィールドが表示されます。これらのフィールド(コンテンツソース)は、トリガーサービスによって異なります。下部の Ingredient ボタンから選択してください。
JSON 本文内の title や raw フィールドは、必要に応じて周囲のテキストと共に編集できます。カテゴリ ID は、サイトの /site.json URL から確認し、カテゴリフィールドに設定します。最後に アクションを作成 ボタンをクリックしてアプリレットを作成します。アプリレット作成後、反映されるまで少し時間がかかる場合があります。
完了です
。これで、Google カレンダーに新しいイベントが追加されるたびに、新しいトピックが作成されます
。
既存のトピックへの返信を投稿として作成する場合は、本文を以下のように変更します(category の代わりに topic_id を使用)
{
"title": "{{Title}}",
"raw": "{{Description}}\n\n場所: {{Where}}\n時刻: {{Starts}} - {{Ends}}",
"topic_id": 4,
"created_at": "{{CreatedAt}}"
}
新しい個人メッセージを作成する場合
{
"title": "{{Title}}",
"raw": "{{Description}}\n\n場所: {{Where}}\n時刻: {{Starts}} - {{Ends}}",
"target_usernames": "discourse1,discourse2",
"archetype": "private_message",
"created_at": "{{CreatedAt}}"
}
この方法と同様に、他の IFTTT アクションサービス を使用して Discourse API リクエストを送信することも可能です。




