solver-sdk 2.5.0 → 2.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/api/projects-api.js +18 -5
- package/dist/cjs/api/projects-api.js.map +1 -1
- package/dist/cjs/api/reasoning-api.js +0 -8
- package/dist/cjs/api/reasoning-api.js.map +1 -1
- package/dist/cjs/code-solver-sdk.js +15 -18
- package/dist/cjs/code-solver-sdk.js.map +1 -1
- package/dist/cjs/utils/message-helpers.js +15 -37
- package/dist/cjs/utils/message-helpers.js.map +1 -1
- package/dist/esm/api/projects-api.js +18 -5
- package/dist/esm/api/projects-api.js.map +1 -1
- package/dist/esm/api/reasoning-api.js +0 -8
- package/dist/esm/api/reasoning-api.js.map +1 -1
- package/dist/esm/code-solver-sdk.js +15 -18
- package/dist/esm/code-solver-sdk.js.map +1 -1
- package/dist/esm/utils/message-helpers.js +16 -38
- package/dist/esm/utils/message-helpers.js.map +1 -1
- package/dist/types/api/projects-api.d.ts +2 -2
- package/dist/types/api/projects-api.d.ts.map +1 -1
- package/dist/types/api/reasoning-api.d.ts +0 -7
- package/dist/types/api/reasoning-api.d.ts.map +1 -1
- package/dist/types/code-solver-sdk.d.ts +1 -1
- package/dist/types/code-solver-sdk.d.ts.map +1 -1
- package/dist/types/utils/message-helpers.d.ts +4 -3
- package/dist/types/utils/message-helpers.d.ts.map +1 -1
- package/docs/API_REFERENCE.md +495 -96
- package/docs/AUTHENTICATION.md +291 -36
- package/docs/ERROR_HANDLING.md +544 -104
- package/docs/README.md +260 -75
- package/docs/README_V2.5.md +266 -0
- package/docs/WEBSOCKET.md +374 -111
- package/docs/indexing/INDEXING.md +372 -167
- package/package.json +1 -1
- package/docs/PING_PONG.md +0 -113
- package/docs/RESPONSE_TO_DEVELOPERS.md +0 -1
package/docs/PING_PONG.md
DELETED
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
# Механизм Ping/Pong для WebSocket
|
|
2
|
-
|
|
3
|
-
Для поддержания активных WebSocket соединений и проверки их состояния SDK использует механизм ping/pong.
|
|
4
|
-
|
|
5
|
-
## Что такое ping/pong?
|
|
6
|
-
|
|
7
|
-
Ping/pong - это механизм отправки специальных сообщений между клиентом и сервером для проверки активности соединения.
|
|
8
|
-
Клиент периодически отправляет сообщение "ping", на которое сервер должен ответить сообщением "pong".
|
|
9
|
-
Если ответа нет в течение определенного времени, соединение считается разорванным.
|
|
10
|
-
|
|
11
|
-
## Как это работает в SDK?
|
|
12
|
-
|
|
13
|
-
SDK автоматически настраивает и управляет ping/pong механизмом, когда вы используете следующие высокоуровневые методы:
|
|
14
|
-
|
|
15
|
-
```javascript
|
|
16
|
-
// Подключение к WebSocket пространствам имен
|
|
17
|
-
await sdk.connect(); // Подключается ко всем пространствам имен
|
|
18
|
-
|
|
19
|
-
// Или более специфичные подключения
|
|
20
|
-
await sdk.reasoning.connectWebSocket(reasoningId);
|
|
21
|
-
await sdk.dependencies.connectWebSocket(projectId);
|
|
22
|
-
await sdk.projects.connectWebSocket();
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
### Настройка ping/pong
|
|
26
|
-
|
|
27
|
-
По умолчанию SDK использует следующие настройки:
|
|
28
|
-
- Интервал ping: 25 секунд
|
|
29
|
-
- Таймаут ожидания pong: 60 секунд
|
|
30
|
-
|
|
31
|
-
Эти настройки можно изменить при инициализации SDK:
|
|
32
|
-
|
|
33
|
-
```javascript
|
|
34
|
-
const sdk = new CodeSolverSDK({
|
|
35
|
-
baseURL: 'https://api.example.com',
|
|
36
|
-
apiKey: 'your-api-key',
|
|
37
|
-
websocket: {
|
|
38
|
-
pingInterval: 30000, // 30 секунд
|
|
39
|
-
pingTimeout: 90000 // 90 секунд
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
### Преимущества автоматического ping/pong
|
|
45
|
-
|
|
46
|
-
1. **Обнаружение разрывов соединения**: Если сервер не отвечает на ping, SDK обнаружит разрыв соединения.
|
|
47
|
-
2. **Предотвращение тайм-аутов**: Регулярные ping/pong сообщения поддерживают соединение активным и предотвращают тайм-ауты на промежуточных серверах и брандмауэрах.
|
|
48
|
-
3. **Автоматическое переподключение**: SDK может автоматически переподключаться при обнаружении разрыва соединения.
|
|
49
|
-
|
|
50
|
-
### События ping/pong
|
|
51
|
-
|
|
52
|
-
SDK предоставляет события для отслеживания состояния ping/pong:
|
|
53
|
-
|
|
54
|
-
```javascript
|
|
55
|
-
// Настройка обработчиков для всех WebSocket соединений
|
|
56
|
-
sdk.on('connection_timeout', async (data) => {
|
|
57
|
-
console.warn(`Соединение с ${data.namespace} истекло по тайм-ауту`);
|
|
58
|
-
// Автоматически SDK попытается переподключиться
|
|
59
|
-
});
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
## Рекомендуемые практики
|
|
63
|
-
|
|
64
|
-
1. **Используйте высокоуровневые методы подключения**: Самый простой способ обеспечить надежное соединение - использовать встроенные высокоуровневые методы SDK.
|
|
65
|
-
|
|
66
|
-
2. **Включите автоматическое переподключение**: При инициализации SDK установите параметры:
|
|
67
|
-
```javascript
|
|
68
|
-
const sdk = new CodeSolverSDK({
|
|
69
|
-
baseURL: 'https://api.example.com',
|
|
70
|
-
apiKey: 'your-api-key',
|
|
71
|
-
websocket: {
|
|
72
|
-
reconnect: true,
|
|
73
|
-
reconnectAttempts: 5,
|
|
74
|
-
reconnectDelay: 2000
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
3. **Обрабатывайте события тайм-аута**: Регистрируйте обработчики событий, чтобы знать, когда соединение было потеряно.
|
|
80
|
-
|
|
81
|
-
4. **Правильно завершайте соединения**: Перед закрытием приложения вызывайте метод для отключения:
|
|
82
|
-
```javascript
|
|
83
|
-
// Отключение перед закрытием приложения
|
|
84
|
-
await sdk.disconnect();
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
## Пример обработки тайм-аутов
|
|
88
|
-
|
|
89
|
-
```javascript
|
|
90
|
-
// Инициализация SDK
|
|
91
|
-
const sdk = new CodeSolverSDK({
|
|
92
|
-
baseURL: 'https://api.example.com',
|
|
93
|
-
apiKey: 'your-api-key'
|
|
94
|
-
});
|
|
95
|
-
|
|
96
|
-
// Подключение к WebSocket
|
|
97
|
-
await sdk.connect();
|
|
98
|
-
|
|
99
|
-
// Обработка события тайм-аута
|
|
100
|
-
sdk.on('connection_timeout', handleConnectionTimeout);
|
|
101
|
-
|
|
102
|
-
// Функция обработки тайм-аута
|
|
103
|
-
async function handleConnectionTimeout(data) {
|
|
104
|
-
console.warn(`Соединение с ${data.namespace} прервано по тайм-ауту`);
|
|
105
|
-
|
|
106
|
-
// Вы можете добавить свою логику обработки
|
|
107
|
-
// Например, уведомить пользователя или попытаться переподключиться
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
// Перед закрытием приложения
|
|
111
|
-
// Корректно отключаемся
|
|
112
|
-
await sdk.disconnect();
|
|
113
|
-
```
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
|