Solved it as follows, turning off the timer as soon as the typing begins (i.e. the Case EditText part is called), and turning it back on after each key stroke, to do nothing for 7 seconds; re-interruptable by the subsequent typing.
Case EditText
If ControlNum == 3
DialogProcOptions(Schmandle, MSG_TIMER, 0)
document2.getElementByID("Alert").innerHTML = ""
msg = DialogControlGet(Schmandle, 3, 3)
totalLen = strLen(msg) + lenPref + lenSig
chars = strCat("Message length: ", totalLen) ; calculates the character count
DialogControlSet(Schmandle, 11, 4, chars) ; updates the character count
if totalLen > (maxchars) then DialogControlSet(Schmandle, 3, 13, hotColor) ; alerts if text entered exceeds 140 characters
if totalLen >= (maxchars-20) & totalLen <= (maxchars-0) then DialogControlSet(Schmandle, 3, 13, warnColor)
if totalLen < (maxchars-20) then DialogControlSet(Schmandle, 3, 13, regColor) ; alerts if text entered exceeds 140 characters
DialogProcOptions(Schmandle, MSG_TIMER, refresh)
Return -2 ; Don't termnate the dialog
endif