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

# Быстрый старт потоковой передачи данных Solana

> Запустите первый поток данных Solana в реальном времени менее чем за 5 минут. Руководство по настройке LaserStream gRPC, LaserStream WebSocket и вебхуков.

## Быстрая настройка

Начните получать потоковые данные Solana за несколько минут с помощью готовых примеров кода. Выберите подходящий вариант с учетом ваших задач (от самого быстрого к самому медленному):

| Метод | Лучше всего подходит для | Требуемый план |
| - | - | - |
| **\[Preconfirmations]** | propAMMs, снайперы, копитрейдеры, боты для ликвидаций — самый ранний сигнал о транзакции | Professional+ |
| **Shred Delivery** | propAMMs, снайперы, копитрейдеры, боты для ликвидаций, арбитраж — данные до выполнения | Все планы ([платное дополнение](/docs/ru/billing/plans#shred-delivery)) |
| **LaserStream gRPC** | Критически важные серверные службы | Все планы (Devnet), Business+ (Mainnet) |
| **LaserStream WSS** | Большинство приложений, интерфейсы реального времени, широкая совместимость | Free+ (расширения Helius: Developer+) |
| **Вебхуки** | Серверные уведомления, приложения, управляемые событиями | Free+ |

<Tip>
  Нужны необработанные шреды? [Оформите подписку на вкладке Shreds](https://dashboard.helius.dev/shred-delivery-seats) в панели управления Helius.
  Инструкции по настройке см. в разделе [Как подписаться на необработанные шреды](/docs/ru/shred-delivery/raw-shreds).
</Tip>

## Вариант 1: LaserStream gRPC

Самый надежный вариант с [воспроизведением истории за 48 часов](/docs/ru/laserstream/historical-replay) и автоматическим переключением между несколькими узлами. Лучше всего подходит для критически важных серверных систем и индексаторов.

```bash theme={"system"}
npm install helius-laserstream
```

```typescript theme={"system"}
import {
  subscribe,
  CommitmentLevel,
  LaserstreamConfig,
  SubscribeRequest,
} from "helius-laserstream";

async function main() {
  const subscriptionRequest: SubscribeRequest = {
    transactions: {
      "token-filter": {
        // user-defined label for this filter
        accountInclude: ["TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"],
        accountExclude: [],
        accountRequired: [],
        vote: false,
        failed: false,
      },
    },
    commitment: CommitmentLevel.CONFIRMED,
    accounts: {},
    slots: {},
    transactionsStatus: {},
    blocks: {},
    blocksMeta: {},
    entry: {},
    accountsDataSlice: [],
  };

  const config: LaserstreamConfig = {
    apiKey: "YOUR_API_KEY",
    endpoint: "https://laserstream-mainnet-ewr.helius-rpc.com",
  };

  await subscribe(
    config,
    subscriptionRequest,
    async (data) => {
      console.log(data);
    },
    async (error) => {
      console.error(error);
    },
  );
}

main().catch(console.error);
```

<CardGroup cols={2}>
  <Card title="LaserStream Guide" icon="book" href="/docs/ru/laserstream">
    Полная документация LaserStream с воспроизведением истории
  </Card>

  <Card title="Get started" icon="arrow-right" href="https://dashboard.helius.dev/laserstream">
    Получите токен и конечную точку LaserStream gRPC в панели управления Helius
  </Card>
</CardGroup>

## Вариант 2: LaserStream WebSocket

[LaserStream WebSocket](/docs/ru/rpc/websocket) предоставляет [стандартные методы подписки Solana](/docs/ru/api-reference/rpc/websocket-methods) и расширения Helius, такие как `transactionSubscribe`, через единую конечную точку. Отлично подходит для браузерных клиентов и пользовательских интерфейсов, а также обеспечивает широкую совместимость с экосистемой.

```javascript theme={"system"}
const WebSocket = require("ws");

const ws = new WebSocket("wss://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY");

ws.on("open", () => {
  console.log("WebSocket connected");

  // Helius extension: transactionSubscribe with rich filtering
  ws.send(
    JSON.stringify({
      jsonrpc: "2.0",
      id: 1,
      method: "transactionSubscribe",
      params: [
        {
          accountInclude: ["TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"],
          vote: false,
          failed: false,
        },
        {
          commitment: "confirmed",
          encoding: "jsonParsed",
          transactionDetails: "full",
        },
      ],
    }),
  );

  // Keep connection alive
  setInterval(() => ws.ping(), 30000);
});

ws.on("message", (data) => {
  const message = JSON.parse(data);
  console.log("Transaction:", message);
});
```

**Замените `YOUR_API_KEY`** своим ключом с сайта [dashboard.helius.dev](https://dashboard.helius.dev).

<Card title="LaserStream WebSocket Overview" icon="arrow-right" href="/docs/ru/rpc/websocket">
  Все методы подписки (стандартные методы Solana и расширения Helius) со справочником
  параметров и примерами
</Card>

## Вариант 3: вебхуки

Для серверных приложений, которым нужны уведомления о событиях без постоянного подключения.

```bash theme={"system"}
# Create a webhook
curl -X POST "https://mainnet.helius-rpc.com/v0/webhooks" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "webhookURL": "https://your-server.com/webhook",
    "transactionTypes": ["Any"],
    "accountAddresses": ["YOUR_ACCOUNT_ADDRESS"],
    "webhookType": "enhanced"
  }'
```

```javascript theme={"system"}
// Handle webhook events (Express.js example)
app.post("/webhook", (req, res) => {
  req.body.forEach((event) => {
    console.log("Blockchain event:", event);
  });
  res.status(200).send("OK");
});
```

<Card title="Webhooks Guide" icon="arrow-right" href="/docs/ru/webhooks">
  Полное руководство по настройке вебхуков и обработке событий
</Card>

## Распространенные сценарии использования

**Мониторинг переводов токенов**

```javascript theme={"system"}
// Subscribe to Token Program activity
method: "programSubscribe",
params: ["TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA", {...}]
```

**Отслеживание сделок Pump.fun**

```javascript theme={"system"}
// Subscribe to Pump.fun program transactions
method: "transactionSubscribe",
params: [
  {
    accountInclude: ["6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P"],
    vote: false,
    failed: false
  },
  { commitment: "confirmed" }
]
```

**Мониторинг активности кошелька**

```javascript theme={"system"}
// Monitor specific wallet
method: "accountSubscribe",
params: ["WALLET_ADDRESS", {...}]
```

## Следующие шаги

<CardGroup cols={2}>
  <Card title="Streaming Overview" icon="play" href="/docs/ru/data-streaming">
    Узнайте обо всех вариантах потоковой передачи данных и о том, когда использовать каждый из них
  </Card>

  <Card title="API Reference" icon="book" href="/docs/ru/api-reference">
    Полная документация по методам и параметрам
  </Card>
</CardGroup>

**Нужна помощь?** Присоединитесь к нашему сообществу в [Discord](https://discord.com/invite/6GXdee3gBj) или ознакомьтесь с [документацией службы поддержки](/docs/ru/support).


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