added on message handler.
This commit is contained in:
parent
f91c9f9554
commit
c3ced58c5a
12
client.go
12
client.go
@ -14,11 +14,17 @@ type Client struct {
|
||||
Token string
|
||||
Socket gowebsocket.Socket
|
||||
|
||||
// Functions
|
||||
OnReadyFunction func()
|
||||
// Event Functions
|
||||
OnReadyFunction func()
|
||||
OnMessageFunction func(message *Message)
|
||||
}
|
||||
|
||||
// On Ready event will run when websocket connection is started and bot is ready to work.
|
||||
// On ready event will run when websocket connection is started and bot is ready to work.
|
||||
func (c *Client) OnReady(fn func()) {
|
||||
c.OnReadyFunction = fn
|
||||
}
|
||||
|
||||
// On message event will run when someone sends a message.
|
||||
func (c *Client) OnMessage(fn func(message *Message)) {
|
||||
c.OnMessageFunction = fn
|
||||
}
|
||||
|
12
websocket.go
12
websocket.go
@ -37,8 +37,18 @@ func (c *Client) Start() {
|
||||
}
|
||||
|
||||
// Check events
|
||||
if rawData.Type == "Ready" {
|
||||
if rawData.Type == "Ready" && c.OnReadyFunction != nil {
|
||||
c.OnReadyFunction()
|
||||
} else if rawData.Type == "Message" && c.OnMessageFunction != nil {
|
||||
msgData := &Message{}
|
||||
err := json.Unmarshal([]byte(message), msgData)
|
||||
|
||||
if err != nil {
|
||||
fmt.Printf("Unexcepted Error: %s", err)
|
||||
}
|
||||
|
||||
msgData.Client = c
|
||||
c.OnMessageFunction(msgData)
|
||||
}
|
||||
|
||||
fmt.Println(message)
|
||||
|
Loading…
x
Reference in New Issue
Block a user