diff --git a/src/services/service.ts b/src/services/service.ts index 9d6c177..dc9c1e5 100755 --- a/src/services/service.ts +++ b/src/services/service.ts @@ -1276,4 +1276,12 @@ export default class Services { public getAddressesForMemberId(memberId: string): string[] | null { return this.membersList[memberId]; } + + public async handleCommitError(response: string) { + const content = JSON.parse(response); + // Wait and retry + setTimeout(async () => { + await this.sendCommitMessage(JSON.stringify(content)); + }, 1000) + } } diff --git a/src/websockets.ts b/src/websockets.ts index f9b598b..530dea0 100755 --- a/src/websockets.ts +++ b/src/websockets.ts @@ -38,6 +38,10 @@ export async function initWebsocket(url: string) { case 'Cipher': await services.parseCipher(parsedMessage.content); break; + case 'Commit': + // Basically if we see this it means we have an error + await services.handleCommitError(parsedMessage.content); + break; } } catch (error) { console.error('Received an invalid message:', error);