'new_connection_' always points to an invalid socket because after a
connection is established you always replace it with a new one.

yes. i was suspecting this but didn't fully understand. thanks for confirming. 

my solution was to change my architecture to that of the ChatServer sample where a reference to my Connection object (parallel to their participant/session) is handed to a new Client object  (parallel to their room) so that it will live for the duration of the client app's connection and my server can write several responses.

thanks for the responses.