From ef368d8020a693b93c49bd1019cc1eb003bd3736 Mon Sep 17 00:00:00 2001 From: rosetta Date: Mon, 9 Feb 2026 02:46:59 +0200 Subject: [PATCH] =?UTF-8?q?=D0=A4=D0=B8=D0=BA=D1=81=20=D0=B4=D0=B2=D0=BE?= =?UTF-8?q?=D0=B9=D0=BD=D0=BE=D0=B3=D0=BE=20=D1=80=D1=83=D0=BA=D0=BE=D0=BF?= =?UTF-8?q?=D0=BE=D0=B6=D0=B0=D1=82=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 15 +++++++++++++++ .../ProtocolProvider/ProtocolProvider.tsx | 12 ++++++------ 2 files changed, 21 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 7d72130..b1ff14d 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,20 @@ # Сборка и установка +### Создать app/servers.ts + +```ts +export const SERVERS = [ + //'wss://cdn.rosetta-im.com', //main + //'ws://10.211.55.2:3000', + 'ws://10.211.55.2:8881' +]; + +export function selectServer(): string { + const idx = Math.floor(Math.random() * SERVERS.length); + return SERVERS[idx]; +} +``` + ```bash npm install # Установить зависимости diff --git a/app/providers/ProtocolProvider/ProtocolProvider.tsx b/app/providers/ProtocolProvider/ProtocolProvider.tsx index fe89538..fa9476f 100644 --- a/app/providers/ProtocolProvider/ProtocolProvider.tsx +++ b/app/providers/ProtocolProvider/ProtocolProvider.tsx @@ -45,8 +45,8 @@ export function ProtocolProvider(props : ProtocolProviderProps) { deviceOs: systemInfo.os } protocol.connect(); - protocol.startHandshakeExchange(publicKey, privateKey, device); - protocol.on('connect', () => { + //protocol.startHandshakeExchange(publicKey, privateKey, device); + protocol.once('connect', () => { protocol.startHandshakeExchange(publicKey, privateKey, device); /** * Сбрасываем подписки на онлайн статусы пользователей @@ -54,19 +54,19 @@ export function ProtocolProvider(props : ProtocolProviderProps) { */ setOnlineSubscribes([]); }); - protocol.on('reconnect', () => { + protocol.once('reconnect', () => { log("Connection lost, reconnecting and starting handshake exchange"); setConnect(ProtocolState.RECONNECTING); }); - protocol.on('handshake_start', () => { + protocol.once('handshake_start', () => { log("Handshake exchange started"); setConnect(ProtocolState.HANDSHAKE_EXCHANGE); }); - protocol.on('handshake_complete', () => { + protocol.once('handshake_complete', () => { log("Handshake exchange complete"); setConnect(ProtocolState.CONNECTED); }); - protocol.on('handshake_need_device_verification', () => { + protocol.once('handshake_need_device_verification', () => { log("Handshake exchange needs device verification"); setConnect(ProtocolState.DEVICE_VERIFICATION_REQUIRED); navigate('/deviceconfirm');