From d824cb520df8c2008f4802b70875ec0c5a3863b2 Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Tue, 7 Jul 2020 06:21:56 -0700 Subject: [PATCH] nogit-sync commit --- TODO | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/TODO b/TODO index 48fb75a..a96ab17 100644 --- a/TODO +++ b/TODO @@ -106,6 +106,45 @@ Bring client up to latest Empires API approach -H 'Content-Type: application/json' \ -d '{"character": "Cookie Monster"}' https://lmno.games/empires/QRST/register + Returns: 2 (Or some other player ID value) + + [ ] Listen to the /events stream for the game + + This will require an asynchronous mechanism that is continually + listening for events to come in. Events will be of the form + "event: " followed by the data of the event "data: + " followed by a blank line. There will also + be periodic keep-alive non-events sent which are just a line + with only a ":". + + This mechanism is called "Server-sent events" so you may find + code that supports the parsing of this. Or you may not. It + doesn't seem like this mechanism ever became all that popular + (before websockets came along and became popular). + + Example: + + curl https://lmno.games/empires/QRST/events + Returns: + + event: game-info + data: {"id":"QRST","url":"http://lmno.games/QRST"} + + event: player-info + data: {"id":5,"active":true,"name":"Cookie","team":""} + + event: player-enter + data: {"id":2,"active":true,"name":"Web","team":""} + + event: game-state + data: {"team_to_play":{"name":""}} + + event: players + data: [{"id":1,"name":"Carl"},{"id":2,"name":"Cookie"}] + + event: game-phase + data: {"old_phase":"none","new_phase":"join"} + Scribe ====== -- 2.43.0