There is a built-in Seam component for conversation which u can take control of conversion but i think it has nothing to do with timeout
@In Conversation conversation;
PS : your session timeout must be greater than your conversation timeout
My session timeout is 5 minutes and my conversation timeout is 2 minutes.
If I raise the two long running conversations in parallel and leave them idle for 2 minutes, I then continue one of them. The one I continue with call's a timeout event for itself but continues to work! The other conversation simply stops responding (doesn't even call @Remove) destruction.
This is very weird behavior...