separate message construction and broadcast
remove dead store
set timeout on response to 20 minutes

Node has a default timeout of 2 minutes so this allows a connected client to remain connected much longer without reconnecting.