Documentation
¶
Index ¶
- Constants
- func NotifyTarget(ch chan<- OriginEnvelope, message Message, origin Origin)
- func ReplyToOrigin(ch chan<- OriginEnvelope, envelope OriginEnvelope, replyMessage Message, ...)
- type Envelope
- type EnveloperBuilder
- func (b EnveloperBuilder) Ack(ackUUIDs []string) Envelope
- func (b EnveloperBuilder) AckUUIDs(ackUUIDs []string) EnveloperBuilder
- func (b EnveloperBuilder) Build() Envelope
- func (b EnveloperBuilder) Data(data interface{}) EnveloperBuilder
- func (b EnveloperBuilder) GenerateUUID() EnveloperBuilder
- func (b EnveloperBuilder) UUID(uuid string) EnveloperBuilder
- type ErrorBody
- type ErrorCode
- type InvitedUser
- type Message
- type MessageBuilder
- type MessageType
- type Origin
- type OriginEnvelope
- type OriginType
- type User
Constants ¶
View Source
const ( Empty OriginType = "Empty" FromSession = "FromSession" FromLobby = "FromLobby" FromUsers = "FromUsers" )
Variables ¶
This section is empty.
Functions ¶
func NotifyTarget ¶
func NotifyTarget(ch chan<- OriginEnvelope, message Message, origin Origin)
func ReplyToOrigin ¶
func ReplyToOrigin(ch chan<- OriginEnvelope, envelope OriginEnvelope, replyMessage Message, origin Origin)
Types ¶
type Envelope ¶
type Envelope struct {
Data interface{} `json:"data"`
UUID string `json:"uuid"`
AckUUIDs []string `json:"ack_uuids"`
}
func (Envelope) WithOrigin ¶
func (e Envelope) WithOrigin(origin Origin) OriginEnvelope
type EnveloperBuilder ¶
type EnveloperBuilder struct {
// contains filtered or unexported fields
}
func (EnveloperBuilder) Ack ¶
func (b EnveloperBuilder) Ack(ackUUIDs []string) Envelope
func (EnveloperBuilder) AckUUIDs ¶
func (b EnveloperBuilder) AckUUIDs(ackUUIDs []string) EnveloperBuilder
func (EnveloperBuilder) Build ¶
func (b EnveloperBuilder) Build() Envelope
func (EnveloperBuilder) Data ¶
func (b EnveloperBuilder) Data(data interface{}) EnveloperBuilder
func (EnveloperBuilder) GenerateUUID ¶
func (b EnveloperBuilder) GenerateUUID() EnveloperBuilder
func (EnveloperBuilder) UUID ¶
func (b EnveloperBuilder) UUID(uuid string) EnveloperBuilder
type ErrorBody ¶
type ErrorBody struct {
Code ErrorCode `json:"code" mapstructure:"code"`
Info interface{} `json:"info" mapstructure:"info"`
}
type InvitedUser ¶
type Message ¶
type Message struct {
MessageType MessageType `json:"type" mapstructure:"type"`
Body interface{} `json:"body" mapstructure:"body"`
}
func DecodeMessage ¶
type MessageBuilder ¶
type MessageBuilder struct {
// contains filtered or unexported fields
}
func (MessageBuilder) Body ¶
func (b MessageBuilder) Body(body interface{}) MessageBuilder
func (MessageBuilder) Build ¶
func (b MessageBuilder) Build() Message
func (MessageBuilder) Error ¶
func (b MessageBuilder) Error(code ErrorCode, info interface{}) Message
func (MessageBuilder) MessageType ¶
func (b MessageBuilder) MessageType(messageType MessageType) MessageBuilder
type MessageType ¶
type MessageType string
const ( // Request InvitedUsers MessageType = "InvitedUsers" InviteUser MessageType = "InviteUser" UninviteUser MessageType = "UninviteUser" DeclineInvitation MessageType = "DeclineInvitation" // Reply InvitedUsersReply MessageType = "InvitedUsersReply" InviteUserReply MessageType = "InviteUserReply" UninviteUserReply MessageType = "UninviteUserReply" DeclineInvitationReply MessageType = "DeclineInvitationReply" // Notifications GotInvite MessageType = "GotInvite" GotUninvite MessageType = "GotUninvite" Connected MessageType = "Connected" Disconnected MessageType = "Disconnected" DeclinedInvitation MessageType = "DeclinedInvitation" StartGame MessageType = "StartGame" )
const ( // Request OnlineUsers MessageType = "OnlineUsers" // Reply OnlineUsersReply MessageType = "OnlineUsersReply" // Notifications GotOnline MessageType = "UserGotOnline" GotOffline MessageType = "UserGotOffline" )
const ErrorMessageType MessageType = "Error"
const Welcome MessageType = "Welcome"
type Origin ¶
type Origin struct {
ID string
OriginType OriginType
}
func EmptyOrigin ¶
func EmptyOrigin() Origin
func NewOrigin ¶
func NewOrigin(id string, originType OriginType) Origin
type OriginEnvelope ¶
type OriginType ¶
type OriginType string
Click to show internal directories.
Click to hide internal directories.