public function waitMessage(Stream $stdout, MessageInterface $message)
{
$buffer = [];
$this->waitingMessageId = $message->id;
$this->isWaitingMessage = true;
// Read the stdin until we get the message replied
while ($this->isWaitingMessage) {
$this->tick();
usleep(1);
}
$stdout->resume();
$result = $this->waitingMessageResult;
$this->waitingMessageResult = null;
foreach ($this->parseMessagesBuffer as $key => $message) {
$this->parseNormal($message);
}
$this->parseMessagesBuffer = [];
return $result;
}