طريقة RPC لـ signatureSubscribe

اشترك لتلقي إشعار عندما تصل المعاملة ذات التوقيع المحدد إلى مستوى الالتزام المحدد.

هذا اشتراك في إشعار واحد. يتم إلغاؤه تلقائيًا بواسطة الخادم بمجرد إرسال الإشعار، signatureNotification، بواسطة RPC.

{
"jsonrpc": "2.0",
"id": 1,
"method": "signatureSubscribe",
"params": [
"2EBVM6cB8vAAD93Ktr6Vd8p67XPbQzCJX47MpReuiCXJAtcjaxpvWpcg9Ege1Nr5Tk3a2GFrByT7WPBjdsTycY9b",
{
"commitment": "finalized",
"enableReceivedNotification": false
}
]
}

params

stringrequired

توقيع المعاملة، كسلسلة مشفرة بنظام base-58

يجب أن يكون توقيع المعاملة هو التوقيع الأول من المعاملة (انظر معرّف المعاملة لمزيد من التفاصيل).

objectoptional

كائن التكوين الذي يحتوي على الحقول التالية:

result

Response
{
"jsonrpc": "2.0",
"result": 0,
"id": 1
}
integer

معرّف الاشتراك (مطلوب لإلغاء الاشتراك)

تنسيق الإشعار:

سيكون الإشعار عبارة عن كائن RpcResponse بتنسيق JSON يحتوي على قيمة تتضمن كائنًا يحتوي على:

  • slot: <u64> - الـ slot المقابل.
  • value: <object|string> - قيمة إشعار من نوع RpcSignatureResult، مما يؤدي إلى أحد الخيارين التاليين:
    • عندما تكون enableReceivedNotification هي true ويتم استلام التوقيع: النص الحرفي "receivedSignature"، أو
    • عندما تتم معالجة التوقيع: err: <object|null>:
      • null إذا نجحت المعاملة في المعالجة على مستوى الالتزام المحدد، أو
      • TransactionError، إذا فشلت المعاملة

أمثلة على الاستجابات:

فيما يلي مثال على استجابة إشعار من معاملة تمت معالجتها بنجاح:

{
"jsonrpc": "2.0",
"method": "signatureNotification",
"params": {
"result": {
"context": {
"slot": 5207624
},
"value": {
"err": null
}
},
"subscription": 24006
}
}

فيما يلي مثال على استجابة إشعار من توقيع معاملة تم استلامه بنجاح:

{
"jsonrpc": "2.0",
"method": "signatureNotification",
"params": {
"result": {
"context": {
"slot": 5207624
},
"value": "receivedSignature"
},
"subscription": 24006
}
}

Is this page helpful?