gossip v0.6.0 Gossip View Source
Gossip client
https://github.com/oestrich/gossip
Link to this section Summary
Functions
Send a message to the Gossip network
Send a player sign in event
Send a player sign out event
Get more information about a single game
Get more detail about connected games
Check Gossip for players that are online
Check Gossip for players of a single game
Send a tell to a remote game and player
Called when an application is started
Get the local list of remote players
Link to this section Types
Link to this section Functions
broadcast(channel_name(), Message.send()) :: :ok
Send a message to the Gossip network
Send a player sign in event
player_sign_out(player_name()) :: :ok
Send a player sign out event
request_game(Gossip.game_name()) :: {:ok, game()} | {:error, :offline}
Get more information about a single game
Get more detail about connected games.
This sends a games/status event to Gossip, sending back an event per connected
game to gossip. You will receive the updates via the callback
Gossip.Client.games_status/1.
Note that you will periodically recieve this callback as the Gossip client will refresh it’s own state.
Check Gossip for players that are online.
This sends a players/status event to Gossip, sending back the current game
presence on the server. You will receive the updates via the callback
Gossip.Client.players_status/2.
Note that you will periodically recieve this callback as the Gossip client will refresh it’s own state.
Check Gossip for players of a single game
Unlike the full list version, this will block until Gossip returns.
send_tell(player_name(), game_name(), player_name(), message()) :: :ok | {:error, :offline} | {:error, String.t()}
Send a tell to a remote game and player.
Called when an application is started.
This function is called when an application is started using
Application.start/2 (and functions on top of that, such as
Application.ensure_started/2). This function should start the top-level
process of the application (which should be the top supervisor of the
application’s supervision tree if the application follows the OTP design
principles around supervision).
start_type defines how the application is started:
:normal- used if the startup is a normal startup or if the application is distributed and is started on the current node because of a failover from another node and the application specification key:start_phasesis:undefined.{:takeover, node}- used if the application is distributed and is started on the current node because of a failover on the nodenode.{:failover, node}- used if the application is distributed and is started on the current node because of a failover on nodenode, and the application specification key:start_phasesis not:undefined.
start_args are the arguments passed to the application in the :mod
specification key (e.g., mod: {MyApp, [:my_args]}).
This function should either return {:ok, pid} or {:ok, pid, state} if
startup is successful. pid should be the PID of the top supervisor. state
can be an arbitrary term, and if omitted will default to []; if the
application is later stopped, state is passed to the stop/1 callback (see
the documentation for the c:stop/1 callback for more information).
use Application provides no default implementation for the start/2
callback.
Callback implementation for Application.start/2.
Get the local list of remote players.
This is tracked as players sign in and out. It is also periodically updated by retrieving the full list.