Admin-Benachrichtigungen an Discord

Hallo zusammen!

Ich richte gerade eine Discourse-Instanz ein und versuche, direkte Webhooks an einen Discord-Server zu konfigurieren. Aber ich bekomme nichts in Discord gepusht. Ich habe etwas Erfahrung mit Webhooks in anderer Software, und es war ziemlich einfach – aber mit Discourse scheint es nicht so zu sein.

Die Ping-Tests geben immer 400 Bad Requests zurück – siehe Infos:

Header:

ate: Wed, 01 Nov 2023 11:57:42 GMT
content-type: application/json
content-length: 58
connection: close
set-cookie: __dcfduid=dcf0233a78ad11eebb88d697d01a97e7; Expires=Mon, 30-Oct-2028 11:57:42 GMT; Max-Age=157680000; Secure; HttpOnly; Path=/, __sdcfduid=dcf0233a78ad11eebb88d697d01a97e78400f2bac802b92ae5cd11d0fb83f18916f0fdca5d48d309bd75aaaaba4d1431; Expires=Mon, 30-Oct-2028 11:57:42 GMT; Max-Age=157680000; Secure; HttpOnly; Path=/, __cf_bm=ACfLMGcKwXZiIw0euAAqKlZ1iroL0N.lG_2clanSP5M-1698839862-0-AUp8RGopNouFfnPVX/qbsLKr+5d1F9HQJ7zS9cGBeg6YH0urIlNg62SSP2cSSZFeZB9mC4TFRf323pdEHk5bTyY=; path=/; expires=Wed, 01-Nov-23 12:27:42 GMT; domain=.discordapp.com; HttpOnly; Secure; SameSite=None, __cfruid=7777c6c50b4e0b129fbc66ba8f4f6ab654a756c5-1698839862; path=/; domain=.discordapp.com; HttpOnly; Secure; SameSite=None, _cfuvid=mgEBXzSq5xWc_05ETnRJURj3e3yjIaRGrJQ0DeJyYA0-1698839862706-0-604800000; path=/; domain=.discordapp.com; HttpOnly; Secure; SameSite=None
strict-transport-security: max-age=31536000; includeSubDomains
x-ratelimit-bucket: 3d2712a9e4fe17cc9d3fed4a8e672e5f
x-ratelimit-limit: 5
x-ratelimit-remaining: 3
x-ratelimit-reset: 1698839864
x-ratelimit-reset-after: 1
via: 1.1 google
alt-svc: h3=":443"; ma=86400
cf-cache-status: DYNAMIC
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=WbIOWcprUjt2ga6UbHxwUh34HscqFqtWix5A9U%2FBKHOhRSCnydePJMngumK%2BgyupooTEjMuLVC%2FLhieBLLbD%2BQhTDdfNb4v%2BH2kO7ah8BdYbNNAU27fFaeErzlQYifFG"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
server: cloudflare
cf-ray: 81f3f634dcf470fa-HEL

Und Rückgabecode:

{"message": "Cannot send an empty message", "code": 50006}

Weiß jemand, was ich überprüfen muss? Benötigen wir das Chat-Plugin, damit es funktioniert (was wir erfolglos versucht haben)? Es scheint, als würden wir etwas Offensichtliches übersehen. Außerdem habe ich versucht, alles im Webhook zu aktivieren, und selbst mit einer nicht leeren Payload erhalte ich immer noch denselben Rückgabecode.

{
  "category": {
    "id": 2,
    "name": "Feedback",
    "color": "0E76BD",
    "text_color": "FFFFFF",
    "slug": "feedback",
    "topic_count": 1,
    "post_count": 0,
    "position": 1,
    "description": "Feedback über unser Forum <strong>forum.dtvwp.nl</strong>, unsere Website <strong>dtvwp.nl</strong> oder über <strong>unsere Facebook-Gruppen</strong> kann hier gepostet werden. Wir mögen konstruktives Feedback, daher sind Feedback und Vorschläge immer willkommen und sehr geschätzt!",
    "description_text": "Feedback über unser Forum forum.dtvwp.nl, unsere Website dtvwp.nl oder über unsere Facebook-Gruppen kann hier gepostet werden. Wir mögen konstruktives Feedback, daher sind Feedback und Vorschläge immer willkommen und sehr geschätzt!",
    "description_excerpt": "Feedback über unser Forum forum.dtvwp.nl, unsere Website dtvwp.nl oder über unsere Facebook-Gruppen kann hier gepostet werden. Wir mögen konstruktives Feedback, daher sind Feedback und Vorschläge immer willkommen und sehr geschätzt!",
    "topic_url": "/t/ueber-das-forum-feedback/1",
    "read_restricted": false,
    "permission": null,
    "topic_template": null,
    "has_children": null,
    "sort_order": null,
    "sort_ascending": null,
    "show_subcategory_list": false,
    "num_featured_topics": 3,
    "default_view": null,
    "subcategory_list_style": "rows_with_featured_topics",
    "default_top_period": "all",
    "default_list_filter": "all",
    "minimum_required_tags": 0,
    "navigate_to_first_post_after_read": false,
    "custom_fields": {},
    "allowed_tags": [],
    "allowed_tag_groups": [],
    "allow_global_tags": false,
    "read_only_banner": null,
    "form_template_ids": [],
    "auto_close_hours": null,
    "auto_close_based_on_last_post": false,
    "group_permissions": [
      {
        "permission_type": 1,
        "group_name": "iedereen"
      }
    ],
    "email_in": null,
    "email_in_allow_strangers": false,
    "mailinglist_mirror": false,
    "all_topics_wiki": false,
    "allow_unlimited_owner_edits_on_first_post": false,
    "cannot_delete_reason": "Diese Kategorie kann nicht gelöscht werden, da die Anzahl der Themen 1 beträgt.",
    "is_special": true,
    "allow_badges": true,
    "topic_featured_link_allowed": true,
    "search_priority": 0,
    "default_slow_mode_seconds": null,
    "uploaded_logo": null,
    "uploaded_logo_dark": null,
    "uploaded_background": null,
    "required_tag_groups": [],
    "category_setting": {
      "auto_bump_cooldown_days": 1,
      "num_auto_bump_daily": 0,
      "require_reply_approval": false,
      "require_topic_approval": false
    }
  }
}

Fürs Erste wäre der einzige Hook / die einzige Benachrichtigung, die wir sehen möchten, wenn ein neuer Benutzer seine E-Mail bestätigt und zur Bestätigung durch Mods/Admins ansteht – wir erhalten einen Ping in unserem Discord-Kanal.

1 „Gefällt mir“

Das ist schon mal aufgetaucht. Ich denke, das Problem ist, dass die Daten, die in einem Discourse-Webhook gepostet werden, nicht in der Form vorliegen, die Discord erwartet. Details zu dem Problem finden Sie in den ersten beiden Antworten zu diesem Thema: Has any one tried webhooks with Discord?.

Sie könnten den Webhook auf Zapier umleiten und dann Zapier verwenden, um den Webhook in die von Discord erwartete Form zu bringen. Das würde jedoch mindestens 20 $/Monat kosten.

Ich glaube nicht, dass es in Ihrem aktuellen Fall helfen wird, aber eine gute Möglichkeit, von Discourse nach Discord zu posten, ist hier beschrieben: Set up Discord notifications with the discourse-chat-integration plugin.

1 „Gefällt mir“