This should call for adam() with distribution="plogis" and use a built-in mechanism of update of states. The main issue is with occurrence="general", which relies on a completely different stuff...