It would be nice if seam could raise an event to expire the conversation instead of expires it directly as it will allow for some custom action to be taken. The expire conversation event handler's default behavior would be to expire the conversation, but doing so will allow for the framework to be more open ended for any custom implementation.
You can use a customer Manager implementation, over-riding the conversation timeout functaionlity.