With hamsandwich you can hook Ham_Touch with class "func_door", you will get any touch, even when the door is moving and that no Touch function is set on that entity, therefore you will have to check togglestate.
If you use Rage module, you can only hook specific DoorTouch function that is only triggered when door is completely closed and something touches it, it also happens if door is completely opened and that door doesn't auto comeback.