diff --git a/web/cashtab/src/components/Common/Ticker.js b/web/cashtab/src/components/Common/Ticker.js --- a/web/cashtab/src/components/Common/Ticker.js +++ b/web/cashtab/src/components/Common/Ticker.js @@ -26,7 +26,8 @@ tokenDbUrl: 'https://tokendb.kingbch.com', txHistoryCount: 10, xecApiBatchSize: 20, - walletRefreshInterval: 30000, // 1000 = 1s + websocketDisconnectedRefreshInterval: 1000, // 1000 = 1s + websocketConnectedRefreshInterval: 30000, defaultSettings: { fiatCurrency: 'usd', sendModal: false }, notificationDurationShort: 3, notificationDurationLong: 5, diff --git a/web/cashtab/src/hooks/useWallet.js b/web/cashtab/src/hooks/useWallet.js --- a/web/cashtab/src/hooks/useWallet.js +++ b/web/cashtab/src/hooks/useWallet.js @@ -34,7 +34,7 @@ const useWallet = () => { const [walletRefreshInterval, setWalletRefreshInterval] = useState( - currency.walletRefreshInterval, + currency.websocketDisconnectedRefreshInterval, ); const [wallet, setWallet] = useState(false); const [chronikWebsocket, setChronikWebsocket] = useState(null); @@ -217,7 +217,9 @@ // Check if walletRefreshInterval is set to 10, i.e. this was called by websocket tx detection // If walletRefreshInterval is 10, set it back to the usual refresh rate if (walletRefreshInterval === 10) { - setWalletRefreshInterval(currency.walletRefreshInterval); + setWalletRefreshInterval( + currency.websocketConnectedRefreshInterval, + ); } try { if (!wallet) { @@ -1040,6 +1042,14 @@ }, onConnect: e => { console.log(`Chronik websocket connected`, e); + console.log( + `Websocket connected, adjusting wallet refresh interval to ${ + currency.websocketConnectedRefreshInterval / 1000 + }s`, + ); + setWalletRefreshInterval( + currency.websocketConnectedRefreshInterval, + ); }, });