DG
То есть если я оправляют сообщение А, то при таймауте хочу вернуть Х, а если сообщение Б, то при таймауте вернуть У. Так как я получаю TimeoutException, я не знаю какое сообщение отправлял и поэтому не могу сделать pattern-matchign
val storageActorProxy = Flow[ByteString]....
.map(TCPMessage.decode)
.ask[OperationResponse](storageActor)
// что-то в этом духе
.recover { case x: TCPSpecificMessage => SpecificFallback }