The reason was (probably) we tried (by mistake) to send too many e-mails in one timer and execution timeout or some exception occured which caused stopping the timer.
It's hard now to find the logs as it was some time ago and we don't know specifically what we should look for.
We have several timers on the server side, each of them takes care of monitoring other timers - so we know which timer stopped working.
Now my plan is:
1) Service A with a timer stopped working
2) Service B noticed that Service A stopped working (we know that by our timestamps in database), so it uses Dynamic Invocation with Service A modelId
3) Service A starts, so a timer in it also starts.
4) Resurrection complete
Should it work?