You can see Time dependent collect pattern to set time out and using control step to throw exception after the time reaches the timeout limit.Please refer basis repository objects where you see this pattern.
BTW, when you use webservice as receiver, your response should be in synchronous isn't it? Why do you want to wait for longer time? You can see failed message status in SXMB_MONI (after timeout ) if you use without bpm too... You can use asyn sync pattern without bpm using requestresponse bean and one way respone bean module.