It seems that the VM is sometimes taking too long when starting up, but it is incorrectly reporting to pycloud that it is ready for connections. This leads to apps like Speech Client to start sending data to Speech Server, even though Speech Server is still not likely listening for requests.
If this is the issue, the problem is that the current way to detect when the server inside the VM is ready for incoming connections does not work on certain qemu network configurations, and that is probably the case with the current configuration that uses port forwarding. There may not be an easy way to fix this. A workaround would be to add a fixed delay to give the VM some time to be actually ready.
It seems that the VM is sometimes taking too long when starting up, but it is incorrectly reporting to pycloud that it is ready for connections. This leads to apps like Speech Client to start sending data to Speech Server, even though Speech Server is still not likely listening for requests.
If this is the issue, the problem is that the current way to detect when the server inside the VM is ready for incoming connections does not work on certain qemu network configurations, and that is probably the case with the current configuration that uses port forwarding. There may not be an easy way to fix this. A workaround would be to add a fixed delay to give the VM some time to be actually ready.
Originally posted by @sebastian-echeverria in https://github.com/SEI-TTG/pycloud/issues/9#issuecomment-385090614