added unknown event handler.
This commit is contained in:
		| @@ -29,6 +29,7 @@ type Client struct { | |||||||
| 	OnChannelCreateFunctions []func(channel *Channel) | 	OnChannelCreateFunctions []func(channel *Channel) | ||||||
| 	OnChannelUpdateFunctions []func(channel_id, clear string, payload map[string]interface{}) | 	OnChannelUpdateFunctions []func(channel_id, clear string, payload map[string]interface{}) | ||||||
| 	OnChannelDeleteFunctions []func(channel_id string) | 	OnChannelDeleteFunctions []func(channel_id string) | ||||||
|  | 	OnUnknownEventFunctions  []func(message string) | ||||||
| } | } | ||||||
|  |  | ||||||
| // Client cache struct. | // Client cache struct. | ||||||
| @@ -83,6 +84,11 @@ func (c *Client) OnChannelDelete(fn func(channel_id string)) { | |||||||
| 	c.OnChannelDeleteFunctions = append(c.OnChannelDeleteFunctions, fn) | 	c.OnChannelDeleteFunctions = append(c.OnChannelDeleteFunctions, fn) | ||||||
| } | } | ||||||
|  |  | ||||||
|  | // On unknown event will run when client gets a unknown event. | ||||||
|  | func (c *Client) OnUnknownEvent(fn func(message string)) { | ||||||
|  | 	c.OnUnknownEventFunctions = append(c.OnUnknownEventFunctions, fn) | ||||||
|  | } | ||||||
|  |  | ||||||
| // Fetch a channel by Id. | // Fetch a channel by Id. | ||||||
| func (c *Client) FetchChannel(id string) (*Channel, error) { | func (c *Client) FetchChannel(id string) (*Channel, error) { | ||||||
| 	channel := &Channel{} | 	channel := &Channel{} | ||||||
|   | |||||||
| @@ -179,6 +179,13 @@ func (c *Client) handleEvents(rawData *struct { | |||||||
| 		for _, i := range c.OnChannelDeleteFunctions { | 		for _, i := range c.OnChannelDeleteFunctions { | ||||||
| 			i(data.ChannelId) | 			i(data.ChannelId) | ||||||
| 		} | 		} | ||||||
|  | 	} else { | ||||||
|  | 		// Unknown Event | ||||||
|  | 		if c.OnUnknownEventFunctions != nil { | ||||||
|  | 			for _, i := range c.OnUnknownEventFunctions { | ||||||
|  | 				i(message) | ||||||
|  | 			} | ||||||
|  | 		} | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user