O que é preconfSubscribe?
preconfSubscribe é um método WebSocket Helius que transmite Pré-confirmations — transações entregues na fase de transação programada, antes de serem fragmentadas. É o sinal de transação de menor latência que a Helius oferece. O acesso requer um plano Professional ou superior — veja Preços.
O fluxo não é contínuo. A cobertura escala com a participação de stake
encaminhada para a Helius, portanto, espere slots sem mensagens — lide com essas lacunas
graciosamente. Veja Cobertura.
preconfSubscribe é servido a partir de wss://beta.helius-rpc.com — o endpoint Gatekeeper da Helius — em vez de mainnet.helius-rpc.com. Autentique-se com sua chave API como um parâmetro de consulta.
O hostname
beta refere-se à implementação do Gatekeeper,
não à maturidade das Pré-confirmations. Pré-confirmations são lançadas no
endpoint Gatekeeper primeiro; ele se tornará o endpoint padrão à medida que a Helius
migrar o tráfego para o Gatekeeper.Inscrever-se
Envie uma solicitação JSON-RPC com o métodopreconfSubscribe. O servidor responde com um ID de inscrição, em seguida transmite uma notificação para cada transação programada. Passe um filtro opcional como o primeiro elemento params para receber apenas transações correspondentes; omita params para receber o fluxo completo.
Resposta da Inscrição
result — é o ID da inscrição que você usa para cancelar a inscrição. Após essa confirmação, as notificações são transmitidas como quadros binários (veja abaixo).
Filtragem
Por padrão,preconfSubscribe transmite cada transação programada. Para restringir o fluxo, passe um objeto de filtro como o primeiro elemento de params. A filtragem acontece do lado do servidor, então você só paga e recebe pelas transações que lhe interessam.
params) corresponde a todas as transações.
Regras de filtro:
- Todos os predicados são combinados com AND, avaliados na ordem
regionInclude→accountExclude→accountRequired→accountInclude. - As contas são chaves públicas codificadas em base58. Um valor inválido retorna o erro JSON-RPC
-32602(parâmetros inválidos). - Cada lista de contas é limitada a 500 entradas.
Resolução da tabela de consulta de endereços (ALT)
Filtros de conta correspondem a mais do que apenas as chaves de conta estáticas da transação — Helius resolve v0 tabelas de consulta de endereços no lado do servidor, entãoaccountInclude, accountExclude e accountRequired também correspondem às contas que uma transação carrega por meio de uma ALT.
Isso significa que você pode filtrar qualquer conta que uma transação toca, mesmo quando ela aparece apenas por meio de uma tabela de consulta — não há necessidade de manter mapeamentos ALT ou resolver tabelas você mesmo. Basta passar a chave pública da conta e a Helius fará a resolução antes que o filtro seja aplicado.
Filtragem de localização
UseregionInclude para receber apenas transações que se originam de regiões específicas da Helius. Passe um ou mais códigos de região; uma transação passa quando sua região de origem corresponde a qualquer um deles.
Quando
regionInclude é definido, transações que não carregam informações de região são descartadas. Um código de região não reconhecido retorna o erro JSON-RPC -32602 (parâmetros inválidos).Payload de notificação
As notificações são entregues como quadros binários WebSocket (não JSON). Cada quadro é um layout de bytes compactado carregando uma única transação programada:
Leia os campos na ordem, depois
bincode-desserialize os bytes restantes em um VersionedTransaction para ler instruções, contas e a assinatura.
Uma pré-confirmation é um sinal antecipado, não uma garantia. A transação ainda
não foi registrada on-chain e ainda pode falhar ou ser descartada. Confirme o registro através
de verificações padrão de compromisso antes de tratá-la como final.
Exemplo
Cancelar inscrição
Para parar de receber notificações, chamepreconfUnsubscribe com o ID de inscrição retornado de preconfSubscribe.
Preços
Pré-confirmations requerem um plano Professional ou superior e custam 10 créditos por mensagem — uma mensagem por transação transmitida — cobrados do seu plano. Veja Créditos para detalhes.Pré-confirmations é um novo produto e o preço está sujeito a alterações.
Relacionados
Visão Geral das Pré-confirmações
O que são Pré-confirmações e onde elas se situam no pipeline do validador.
transactionSubscribe
Transmita transações com confirmação confirmada usando filtragem rica.
referência da API preconfSubscribe
Parâmetros de solicitação, campos de filtro e o layout de notificação binária.