From ee64666099c0401afdc1e51fe378359f943d3f69 Mon Sep 17 00:00:00 2001
From: Carl Worth <cworth@cworth.org>
Date: Thu, 4 Jun 2020 18:17:48 -0700
Subject: [PATCH] game: Send a game-info event when a client connects

This is in the generic Game class so all games will get this
functionality. This will allow clients to be able to display the
game's ID and URL so players can invite friends.
---
 game.js | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/game.js b/game.js
index ca12fb3..56ee56c 100644
--- a/game.js
+++ b/game.js
@@ -73,6 +73,13 @@ class Game {
       this.remove_client(id);
     });
 
+    /* Give the client the game-info event. */
+    const game_info_json = JSON.stringify({
+      id: this.id,
+      url: `${request.protocol}://${request.hostname}/${this.id}`
+    });
+    response.write(`event: game-info\ndata: ${game_info_json}\n\n`);
+
     /* Finally, if this game class has a "state" property, stream that
      * current state to the client. */
     if (this.state) {
-- 
2.45.2