You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A strong message schema wasn't the first priority when building this playground project. Contexts currently communicate using JSON messages. They don't validate the incoming messages against a schema, nor do they use code generation tools or manually typed types for strong typing and the autocomplete feature of IDEs. There're multitude of options like Protobuf and JSON Schema that work cross platform. Manually typed types are working only if there's only one language, because of the overhead of transporting them to another. Although everything is currently written in PHP, platform independence is a requirement, as future features may be written in a different language.
ConnectFour context -> domain events should be renamed beforehand (e.g. PlayerResigned instead of GameResigned, PlayerLost and PlayerWon instead of GameWon, PlayerAborted instead of GameAborted, PlayersDrew or PlayersDrawn instead of GameDrawn) otherwise it would need to be touched again.
The text was updated successfully, but these errors were encountered:
All messages from the chat context now use protobuf #117.
Additional changes:
* Stop publishing the event ChatInitiated as there're
currently no consumers.
* Route messages to browser based on streamId.
* The SSE protocol changes to eventName:eventPayload
instead of embedding the event name in the payload to
avoid unnecessary decoding and encoding of JSON.
A strong message schema wasn't the first priority when building this playground project. Contexts currently communicate using JSON messages. They don't validate the incoming messages against a schema, nor do they use code generation tools or manually typed types for strong typing and the autocomplete feature of IDEs. There're multitude of options like Protobuf and JSON Schema that work cross platform. Manually typed types are working only if there's only one language, because of the overhead of transporting them to another. Although everything is currently written in PHP, platform independence is a requirement, as future features may be written in a different language.
Use strong message schema in chat #207
Use strong message schema in identity #208
The text was updated successfully, but these errors were encountered: