This PR modifies the functionality of the ow_zone behaviour in the following ways:
part/1 and join/1 removed. Overworld can handle protobuf messages with empty fields.
part/2 and join/2 are now required callbacks.
new functionality to track and remove entities that have disconnected.
the ow_zone server will call <callback_module>:part/2 with empty map as the message. consequently, modules that implement the ow_zone behavior will be required to the implement handle_part(#{}, Session, State) callback.
new optional callback handle_disconnect/2 for immediate notification of client disconnections.
new enet_disconnect(), ws_disconnect() and wss_disconncet() functions added to libow4.gd. when closed, an server_disconnected signal will be emitted by the library
new token exchange server (ow_token_server.erl) to facilitate reconnecting clients.
a client will be issued a reconnect token on first connection, and must present the reconnect token if they wish to be reconnected to a previous session before it times out
This PR modifies the functionality of the
ow_zone
behaviour in the following ways:part/1
andjoin/1
removed. Overworld can handle protobuf messages with empty fields.part/2
andjoin/2
are now required callbacks.<callback_module>:part/2
with empty map as the message. consequently, modules that implement the ow_zone behavior will be required to the implementhandle_part(#{}, Session, State)
callback.handle_disconnect/2
for immediate notification of client disconnections.enet_disconnect()
,ws_disconnect()
andwss_disconncet()
functions added tolibow4.gd
. when closed, anserver_disconnected
signal will be emitted by the libraryow_token_server.erl
) to facilitate reconnecting clients.