Метод RPC programSubscribe
Підписка на програму для отримання сповіщень, коли змінюються lamport або дані облікового запису, що належить вказаній програмі
{"jsonrpc": "2.0","id": 1,"method": "programSubscribe","params": ["11111111111111111111111111111111",{"encoding": "base64","filters": [{ "dataSize": 80 }]}]}
params
stringrequired
Pubkey програми, у форматі рядка, закодованого в base-58
objectoptional
Об'єкт конфігурації, що містить такі поля:
result
Response
{"jsonrpc": "2.0","result": 24040,"id": 1}
integer
Ідентифікатор підписки (потрібен для скасування підписки)
Формат сповіщення
Формат сповіщення — це один об'єкт program account, як показано в RPC HTTP-методі getProgramAccounts.
Кодування Base58:
{"jsonrpc": "2.0","method": "programNotification","params": {"result": {"context": {"slot": 5208469},"value": {"pubkey": "H4vnBqifaSACnKa7acsxstsY1iV1bvJNxsCY7enrd1hq","account": {"data": ["11116bv5nS2h3y12kD1yUKeMZvGcKLSjQgX6BeV7u1FrjeJcKfsHPXHRDEHrBesJhZyqnnq9qJeUuF7WHxiuLuL5twc38w2TXNLxnDbjmuR","base58"],"executable": false,"lamports": 33594,"owner": "11111111111111111111111111111111","rentEpoch": 636,"space": 80}}},"subscription": 24040}}
Кодування Parsed-JSON:
{"jsonrpc": "2.0","method": "programNotification","params": {"result": {"context": {"slot": 5208469},"value": {"pubkey": "H4vnBqifaSACnKa7acsxstsY1iV1bvJNxsCY7enrd1hq","account": {"data": {"program": "nonce","parsed": {"type": "initialized","info": {"authority": "Bbqg1M4YVVfbhEzwA9SpC9FhsaG83YMTYoR4a8oTDLX","blockhash": "LUaQTmM7WbMRiATdMMHaRGakPtCkc2GHtH57STKXs6k","feeCalculator": {"lamportsPerSignature": 5000}}}},"executable": false,"lamports": 33594,"owner": "11111111111111111111111111111111","rentEpoch": 636,"space": 80}}},"subscription": 24040}}
Is this page helpful?