> ## Documentation Index
> Fetch the complete documentation index at: https://docs.solanatracker.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Transmitir slots y bloques Solana con gRPC

> Elige actualizaciones de slots, metadatos o bloques filtrados. Sigue la confirmación y detecta huecos en el stream.

Usa slots para progreso y estado, metadatos para hashes y contadores, y bloques completos cuando necesites transacciones o escrituras de cuentas.

Guarda el [helper del inicio rápido](/es/yellowstone-grpc/quickstart) como `stream.mts` en el mismo directorio. Los ejemplos usan las mismas variables y dependencias.

## Suscríbete a slots y metadatos

```typescript slots.mts theme={null}
import { subscribe } from "./stream.mts";

for await (const update of subscribe({
  slots: { slots: { filterByCommitment: true } },
  blocksMeta: { blocks: {} },
})) {
  if (update.slot) {
    console.log("slot", update.slot.slot, update.slot.parent, update.slot.status);
  }
  if (update.blockMeta) {
    console.log("block", update.blockMeta.slot, update.blockMeta.blockhash,
      update.blockMeta.executedTransactionCount);
  }
}
```

```bash theme={null}
npx tsx slots.mts
```

`filterByCommitment: true` alinea las notificaciones con la confirmación solicitada. Un slot puede tener varios cambios de estado; guarda el estado junto al número.

## Solicita bloques filtrados

```typescript filtered-blocks.mts theme={null}
import { subscribe } from "./stream.mts";

const address = process.env.WATCH_ADDRESS;
if (!address) throw new Error("Set WATCH_ADDRESS");

for await (const update of subscribe({
  blocks: {
    selected: {
      accountInclude: [address],
      includeTransactions: true,
      includeAccounts: false,
      includeEntries: false,
    },
  },
})) {
  if (!update.block) continue;
  console.log(update.block.slot, update.block.transactions.length);
}
```

Los tres flags include controlan transacciones, cuentas y entries por separado. El array filtrado puede ser menor que el total de transacciones del bloque.

## Gestiona slots ausentes

Cada slot es una oportunidad de producir un bloque; algunos no tienen bloque. Un hueco también puede deberse a desconexión, filtros o retraso. Compara confirmación y disponibilidad RPC antes de concluir que faltan datos.

## Guías relacionadas

<CardGroup cols={2}>
  <Card title="Metadatos de entries" href="/es/yellowstone-grpc/entry-monitoring" />

  <Card title="Fiabilidad y rendimiento" href="/es/yellowstone-grpc/best-practices" />
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.