Skip to main content

Class: MessageRetryManager

Defined in: src/Utils/message-retry-manager.ts:42

Constructors

new MessageRetryManager()

new MessageRetryManager(logger, maxMsgRetryCount): MessageRetryManager

Defined in: src/Utils/message-retry-manager.ts:66

Parameters

logger

ILogger

maxMsgRetryCount

number

Returns

MessageRetryManager

Methods

addRecentMessage()

addRecentMessage(to, id, message): void

Defined in: src/Utils/message-retry-manager.ts:76

Add a recent message to the cache for retry handling

Parameters

to

string

id

string

message

IMessage

Returns

void


cancelPendingPhoneRequest()

cancelPendingPhoneRequest(messageId): void

Defined in: src/Utils/message-retry-manager.ts:193

Cancel pending phone request

Parameters

messageId

string

Returns

void


getRecentMessage()

getRecentMessage(to, id): undefined | RecentMessage

Defined in: src/Utils/message-retry-manager.ts:92

Get a recent message from the cache

Parameters

to

string

id

string

Returns

undefined | RecentMessage


getRetryCount()

getRetryCount(messageId): number

Defined in: src/Utils/message-retry-manager.ts:145

Get retry count for a message

Parameters

messageId

string

Returns

number


hasExceededMaxRetries()

hasExceededMaxRetries(messageId): boolean

Defined in: src/Utils/message-retry-manager.ts:152

Check if message has exceeded maximum retry attempts

Parameters

messageId

string

Returns

boolean


incrementRetryCount()

incrementRetryCount(messageId): number

Defined in: src/Utils/message-retry-manager.ts:136

Increment retry counter for a message

Parameters

messageId

string

Returns

number


markRetryFailed()

markRetryFailed(messageId): void

Defined in: src/Utils/message-retry-manager.ts:169

Mark retry as failed

Parameters

messageId

string

Returns

void


markRetrySuccess()

markRetrySuccess(messageId): void

Defined in: src/Utils/message-retry-manager.ts:159

Mark retry as successful

Parameters

messageId

string

Returns

void


schedulePhoneRequest()

schedulePhoneRequest(messageId, callback, delay): void

Defined in: src/Utils/message-retry-manager.ts:177

Schedule a phone request with delay

Parameters

messageId

string

callback

() => void

delay

number = PHONE_REQUEST_DELAY

Returns

void


shouldRecreateSession()

shouldRecreateSession(jid, retryCount, hasSession): object

Defined in: src/Utils/message-retry-manager.ts:101

Check if a session should be recreated based on retry count and history

Parameters

jid

string

retryCount

number

hasSession

boolean

Returns

object

reason

reason: string

recreate

recreate: boolean