Метод RPC programSubscribe
Подпишитесь на программу, чтобы получать уведомления, когда lamports или данные аккаунта, принадлежащего данной программе, изменяются.
{"jsonrpc": "2.0","id": 1,"method": "programSubscribe","params": ["11111111111111111111111111111111",{"encoding": "base64","filters": [{ "dataSize": 80 }]}]}
params
stringrequired
Pubkey program_id
в виде строки, закодированной в base-58
objectoptional
Объект конфигурации, содержащий следующие поля:
result
Response
{"jsonrpc": "2.0","result": 24040,"id": 1}
integer
ID подписки (необходим для отмены подписки)
Формат уведомления
Формат уведомления представляет собой один объект аккаунта программы, как показано в методе 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?