added channel typing events.

This commit is contained in:
5elenay
2021-08-27 11:38:06 +03:00
parent 02e22d0196
commit 8e9cf13cc3
2 changed files with 53 additions and 9 deletions

View File

@@ -22,14 +22,16 @@ type Client struct {
Cache *Cache
// Event Functions
OnReadyFunctions []func()
OnMessageFunctions []func(message *Message)
OnMessageUpdateFunctions []func(channel_id, message_id string, payload map[string]interface{})
OnMessageDeleteFunctions []func(channel_id, message_id string)
OnChannelCreateFunctions []func(channel *Channel)
OnChannelUpdateFunctions []func(channel_id, clear string, payload map[string]interface{})
OnChannelDeleteFunctions []func(channel_id string)
OnUnknownEventFunctions []func(message string)
OnReadyFunctions []func()
OnMessageFunctions []func(message *Message)
OnMessageUpdateFunctions []func(channel_id, message_id string, payload map[string]interface{})
OnMessageDeleteFunctions []func(channel_id, message_id string)
OnChannelCreateFunctions []func(channel *Channel)
OnChannelUpdateFunctions []func(channel_id, clear string, payload map[string]interface{})
OnChannelDeleteFunctions []func(channel_id string)
OnUnknownEventFunctions []func(message string)
OnChannelStartTypingFunctions []func(channel_id, user_id string)
OnChannelStopTypingFunctions []func(channel_id, user_id string)
}
// Client cache struct.
@@ -89,6 +91,16 @@ func (c *Client) OnUnknownEvent(fn func(message string)) {
c.OnUnknownEventFunctions = append(c.OnUnknownEventFunctions, fn)
}
// On channel start typing will run when someone starts to type a message.
func (c *Client) OnChannelStartTyping(fn func(channel_id, user_id string)) {
c.OnChannelStartTypingFunctions = append(c.OnChannelStartTypingFunctions, fn)
}
// On channel stıp typing will run when someone stops the typing status.
func (c *Client) OnChannelStopTyping(fn func(channel_id, user_id string)) {
c.OnChannelStopTypingFunctions = append(c.OnChannelStopTypingFunctions, fn)
}
// Fetch a channel by Id.
func (c *Client) FetchChannel(id string) (*Channel, error) {
channel := &Channel{}