diff --git a/src/network/get-info.ts b/src/network/get-info.ts index b29913c9..5714af6c 100644 --- a/src/network/get-info.ts +++ b/src/network/get-info.ts @@ -15,6 +15,9 @@ import { isAdmin, isFullClient, isStandalone } from '../multimode'; const parsePollingInterval = (settings: AccountSettings): number => { const pollingPref = (settings.prefs?.zimbraPrefMailPollingInterval ?? '') as string; + if (pollingPref === '500') { + return 500; + } const pollingValue = parseInt(pollingPref, 10); if (Number.isNaN(pollingValue)) { return 30000; diff --git a/src/network/noOp.ts b/src/network/noOp.ts index 6ec3c9b4..6be9d405 100644 --- a/src/network/noOp.ts +++ b/src/network/noOp.ts @@ -9,5 +9,10 @@ import { AccountState } from '../../types'; import { SHELL_APP_ID } from '../constants'; export const noOp = (get: GetState): void => { - get().soapFetch(SHELL_APP_ID)('NoOp', { _jsns: 'urn:zimbraMail' }); + get().soapFetch(SHELL_APP_ID)( + 'NoOp', + get().pollingInterval === 500 + ? { _jsns: 'urn:zimbraMail', limitToOneBlocked: 1, wait: 1 } + : { _jsns: 'urn:zimbraMail' } + ); };