I checked TIMs code and changed the function that processes the mail queue. Here is my solution:
Lua Code:
function tim.sendQueuedMail()
if tim.mailQueueindex>0 then
-- EINEN MailQueue-Eintrag senden (pro Aufruf dieser Funktion)
local mailboxwasopen=tim.MailBoxOpen
if tim.MailBoxOpen==false then
RequestOpenMailbox()
end
tim.wait4mail=true
tim.MailInQueue=tim.mailQueue.mTO[tim.mailQueueindex]
tim.MailInQueueSUB=tim.mailQueue.mSUB[tim.mailQueueindex]
SendMail(tim.mailQueue.mTO[tim.mailQueueindex], tim.mailQueue.mSUB[tim.mailQueueindex], tim.mailQueue.mTEXT[tim.mailQueueindex])
if mailboxwasopen==false then
CloseMailbox()
end
tim.mailQueueindex=tim.mailQueueindex-1
end
end
to
Lua Code:
function tim.sendQueuedMail()
if tim.mailQueueindex>0 then
EVENT_MANAGER:RegisterForUpdate("tim_EVENT_EMAIL", tim.throttleTimerMail, function()
-- EINEN MailQueue-Eintrag senden (pro Aufruf dieser Funktion)
local mailboxwasopen=tim.MailBoxOpen
if tim.MailBoxOpen==false then
RequestOpenMailbox()
end
tim.wait4mail=true
tim.MailInQueue=tim.mailQueue.mTO[tim.mailQueueindex]
tim.MailInQueueSUB=tim.mailQueue.mSUB[tim.mailQueueindex]
SendMail(tim.mailQueue.mTO[tim.mailQueueindex], tim.mailQueue.mSUB[tim.mailQueueindex], tim.mailQueue.mTEXT[tim.mailQueueindex])
if mailboxwasopen==false then
CloseMailbox()
end
tim.mailQueueindex=tim.mailQueueindex-1
if tim.mailQueueindex==0 then
EVENT_MANAGER:UnregisterForUpdate("tim_EVENT_EMAIL")
end
end)
end
end
Is that approach with RegisterForUpdate viable or is there a better way to add a simple delay?