DeHubافتح DeHub

DeHub › الوثائق

خطافات الويب وواجهة الإشعارات في DeHub

يتحدث خادمك وDeHub في الاتجاهين. يرسل DeHub أحداثًا موقّعة إلى خطاف الويب لديك، ويرسل خادمك إشعارات لمن أضافوا تطبيقك.

استقبال الأحداث

اضبط webhookUrl في ملف البيان. يرسل DeHub طلب POST بهذا المحتوى:

{ "event": "app_added", "token": "eyJhbGciOiJFUzI1NiIs…" }
الحدثمتى
app_addedأضاف أحدهم تطبيقك. يمكنه الآن تلقي إشعاراتك.
app_removedأزال أحدهم تطبيقك. توقّف عن إرسال الإشعارات إليه.
paymentدفع شخص ما لتطبيقك باستخدام dehub.actions.pay(). يضيف الرمز amount, chainId, txHash و memo.
tipعند الطلب. تلقت المحفظة المالكة إكرامية. يضيف actor, amount, currency و postId عندما تكون الإكرامية على منشور.
followعند الطلب. تابع شخص ما المحفظة المالكة. يضيف actor.
mentionعند الطلب. أشار شخص ما إلى المحفظة المالكة. يضيف actor و postId.
pingاختبار يُرسل من زر Webhook في dehub.io/apps/dev.

tip, follow و mention تخص المحفظة التي تملك تطبيقك، لذا فإن sub هو تلك المحفظة. أدرج ما تريده في ملف البيان ثم أرسله مرة أخرى:

"webhookUrl": "https://tipjar.example.com/api/dehub-webhook",
"webhookEvents": ["tip", "follow", "mention"]

token هو JWT موقّع يحتوي على typ: "event"، و event اسم الحدث، sub (محفظة المستخدم) و aud (نطاقك). تحقق منه بالمفاتيح العامة نفسها المستخدمة لـ رموز تسجيل الدخول، وتجاهل أي محتوى لا يمكن التحقق من رمزه. أجب خلال 5 ثوانٍ بـ 2xx. يُعاد خطأ الشبكة أو 5xx مرة واحدة بعد 3 ثوانٍ. تظهر كل محاولة تحت Webhook في dehub.io/apps/dev. ومع ذلك اعتبر dehub.context's client.added كمصدر للحقيقة عندما يفتح أحدهم تطبيقك.

إرسال الإشعارات

أنشئ مفتاح إشعارات في dehub.io/apps/dev. لا يظهر إلا مرة واحدة؛ يحتفظ DeHub ببصمته فقط، لذا يُستبدل المفتاح المفقود ولا يُسترجع.

curl -X POST https://aigxuutjaqsywioxjefr.supabase.co/functions/v1/miniapp-notify \
  -H 'Authorization: Bearer dhmk_YOUR_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "notificationId": "turn-42",
    "title": "Your turn",
    "body": "Sam played a move. Tap to answer.",
    "targetUrl": "https://chess.example.com/game/42",
    "wallets": ["0xabc…"]
  }'
الحقلالقواعد
notificationIdمطلوب. حتى 128 حرفًا. يصل المعرّف نفسه إلى الشخص مرة واحدة على الأكثر كل 24 ساعة.
titleمطلوب. حتى 32 حرفًا.
bodyحتى 128 حرفًا.
targetUrlرابط https على نطاق تطبيقك، يُفتح عند النقر على الإشعار.
walletsمن يُرسل إليه الإشعار. اتركه فارغًا لإرسال الإشعار لكل من أضاف تطبيقك (حتى 1,000 في الاستدعاء).

تخبرك الإجابة لمن أُرسل ولماذا تم تخطي أي شخص: { sent, sentTo, skipped: { duplicate, rateLimited, notAdded } }. يتلقى كل شخص إشعارًا واحدًا على الأكثر كل 30 ثانية وعشرة يوميًا من تطبيقك، وذلك فقط إذا أضافه وترك إشعاراته مفعّلة.

إيصالات الدفع

dehub.actions.pay() لا يكتمل إلا بعد أن تتحقق DeHub من التحويل على السلسلة، ويعطي تطبيقك إيصالًا موقّعًا للتحقق منه على خادمك. إن payment webhook نسخة ثانية لخادمك تُرسل في الخلفية. راجع المدفوعات.

مدونة DeHub · الصفحة الرئيسية لـ dehub.io