@pushler/js 1.0.3 → 1.2.0
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/README.md +30 -8
- package/dist/pushler-ru.cjs +433 -35
- package/dist/pushler-ru.cjs.map +1 -1
- package/dist/pushler-ru.esm.js +431 -36
- package/dist/pushler-ru.esm.js.map +1 -1
- package/dist/pushler-ru.js +433 -35
- package/dist/pushler-ru.js.map +1 -1
- package/dist/pushler-ru.min.js +1 -1
- package/dist/pushler-ru.min.js.map +1 -1
- package/package.json +1 -1
- package/src/Channel.js +12 -1
- package/src/PushlerClient.js +400 -31
- package/src/PushlerServer.js +5 -5
- package/src/constants.js +12 -0
- package/src/index.js +16 -2
package/README.md
CHANGED
|
@@ -23,8 +23,7 @@ import Pushler from '@pushler/js';
|
|
|
23
23
|
|
|
24
24
|
// Создание клиента
|
|
25
25
|
const pushler = Pushler.Create({
|
|
26
|
-
appKey: 'your-app-key'
|
|
27
|
-
apiUrl: 'https://api.pushler.ru' // URL вашего бэкенда для авторизации каналов
|
|
26
|
+
appKey: 'your-app-key'
|
|
28
27
|
});
|
|
29
28
|
|
|
30
29
|
// Обработка событий подключения
|
|
@@ -57,8 +56,7 @@ import Pushler from '@pushler/js';
|
|
|
57
56
|
// Создание серверного клиента
|
|
58
57
|
const server = Pushler.Server({
|
|
59
58
|
appKey: 'your-app-key',
|
|
60
|
-
appSecret: 'your-app-secret'
|
|
61
|
-
apiUrl: 'https://api.pushler.ru'
|
|
59
|
+
appSecret: 'your-app-secret'
|
|
62
60
|
});
|
|
63
61
|
|
|
64
62
|
// Отправка сообщения в канал
|
|
@@ -84,19 +82,44 @@ await server.trigger(
|
|
|
84
82
|
```javascript
|
|
85
83
|
const pushler = Pushler.Create({
|
|
86
84
|
appKey: 'your-app-key', // Обязательно
|
|
87
|
-
apiUrl: 'https://api.pushler.ru', // URL вашего бэкенда для авторизации каналов
|
|
88
85
|
authEndpoint: '/pushler/auth', // Путь для авторизации приватных каналов
|
|
89
86
|
autoConnect: true, // Автоподключение (по умолчанию: true)
|
|
90
87
|
reconnectDelay: 1000, // Задержка переподключения (мс)
|
|
91
|
-
maxReconnectAttempts: 5
|
|
88
|
+
maxReconnectAttempts: 5, // Максимум попыток переподключения
|
|
89
|
+
|
|
90
|
+
// Кастомные заголовки авторизации (опционально)
|
|
91
|
+
authHeaders: {
|
|
92
|
+
'Authorization': 'Bearer your-token'
|
|
93
|
+
},
|
|
94
|
+
|
|
95
|
+
// Или динамические заголовки
|
|
96
|
+
getAuthHeaders: () => ({
|
|
97
|
+
'Authorization': `Bearer ${getToken()}`
|
|
98
|
+
})
|
|
92
99
|
});
|
|
93
100
|
```
|
|
94
101
|
|
|
102
|
+
#### Promise-based подключение
|
|
103
|
+
|
|
104
|
+
```javascript
|
|
105
|
+
// connect() возвращает Promise
|
|
106
|
+
const { socketId } = await pushler.connect();
|
|
107
|
+
console.log('Подключено! Socket ID:', socketId);
|
|
108
|
+
|
|
109
|
+
// Или с таймаутом
|
|
110
|
+
try {
|
|
111
|
+
await pushler.waitForConnection(10000); // 10 секунд
|
|
112
|
+
} catch (error) {
|
|
113
|
+
console.error('Не удалось подключиться:', error.message);
|
|
114
|
+
}
|
|
115
|
+
```
|
|
116
|
+
|
|
95
117
|
#### Методы
|
|
96
118
|
|
|
97
119
|
| Метод | Описание |
|
|
98
120
|
|-------|----------|
|
|
99
|
-
| `connect()` | Подключиться к серверу |
|
|
121
|
+
| `connect()` | Подключиться к серверу (возвращает Promise) |
|
|
122
|
+
| `waitForConnection(timeout?)` | Ожидание подключения с таймаутом |
|
|
100
123
|
| `disconnect()` | Отключиться от сервера |
|
|
101
124
|
| `subscribe(channelName, options?)` | Подписаться на канал |
|
|
102
125
|
| `unsubscribe(channelName)` | Отписаться от канала |
|
|
@@ -134,7 +157,6 @@ const pushler = Pushler.Create({
|
|
|
134
157
|
const server = Pushler.Server({
|
|
135
158
|
appKey: 'your-app-key', // Обязательно
|
|
136
159
|
appSecret: 'your-app-secret', // Обязательно
|
|
137
|
-
apiUrl: 'https://api.pushler.ru', // URL API
|
|
138
160
|
timeout: 10000 // Таймаут запросов (мс)
|
|
139
161
|
});
|
|
140
162
|
```
|