|
@@ -164,8 +164,8 @@ func (s *Session) Listen() (err error) {
|
|
// Not sure how needed this is and where it would be best to call it.
|
|
// Not sure how needed this is and where it would be best to call it.
|
|
// somewhere.
|
|
// somewhere.
|
|
|
|
|
|
-func unmarshalEvent(event *Event, i interface{}) (err error) {
|
|
|
|
- if err = s.Unmarshal(event.RawData, i); err != nil {
|
|
|
|
|
|
+func (s *Session) unmarshalEvent(event *Event, i interface{}) (err error) {
|
|
|
|
+ if err = s.unmarshal(event.RawData, i); err != nil {
|
|
fmt.Println(event.Type, err)
|
|
fmt.Println(event.Type, err)
|
|
printJSON(event.RawData) // TODO: Better error loggingEvent.
|
|
printJSON(event.RawData) // TODO: Better error loggingEvent.
|
|
}
|
|
}
|
|
@@ -186,7 +186,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
}
|
|
}
|
|
|
|
|
|
var e *Event
|
|
var e *Event
|
|
- if err = s.Unmarshal(message, &e); err != nil {
|
|
|
|
|
|
+ if err = s.unmarshal(message, &e); err != nil {
|
|
fmt.Println(err)
|
|
fmt.Println(err)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
@@ -195,7 +195,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
|
|
|
|
case "READY":
|
|
case "READY":
|
|
var st *Ready
|
|
var st *Ready
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
if s.StateEnabled {
|
|
if s.StateEnabled {
|
|
s.State.OnReady(st)
|
|
s.State.OnReady(st)
|
|
}
|
|
}
|
|
@@ -210,21 +210,21 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "VOICE_SERVER_UPDATE":
|
|
case "VOICE_SERVER_UPDATE":
|
|
// TEMP CODE FOR TESTING VOICE
|
|
// TEMP CODE FOR TESTING VOICE
|
|
var st *VoiceServerUpdate
|
|
var st *VoiceServerUpdate
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.onVoiceServerUpdate(st)
|
|
s.onVoiceServerUpdate(st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
case "VOICE_STATE_UPDATE":
|
|
case "VOICE_STATE_UPDATE":
|
|
// TEMP CODE FOR TESTING VOICE
|
|
// TEMP CODE FOR TESTING VOICE
|
|
var st *VoiceState
|
|
var st *VoiceState
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.onVoiceStateUpdate(st)
|
|
s.onVoiceStateUpdate(st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
case "USER_UPDATE":
|
|
case "USER_UPDATE":
|
|
if s.OnUserUpdate != nil {
|
|
if s.OnUserUpdate != nil {
|
|
var st *User
|
|
var st *User
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnUserUpdate(s, st)
|
|
s.OnUserUpdate(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -232,7 +232,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "PRESENCE_UPDATE":
|
|
case "PRESENCE_UPDATE":
|
|
if s.OnPresenceUpdate != nil {
|
|
if s.OnPresenceUpdate != nil {
|
|
var st *PresenceUpdate
|
|
var st *PresenceUpdate
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnPresenceUpdate(s, st)
|
|
s.OnPresenceUpdate(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -240,7 +240,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "TYPING_START":
|
|
case "TYPING_START":
|
|
if s.OnTypingStart != nil {
|
|
if s.OnTypingStart != nil {
|
|
var st *TypingStart
|
|
var st *TypingStart
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnTypingStart(s, st)
|
|
s.OnTypingStart(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -253,7 +253,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "MESSAGE_CREATE":
|
|
case "MESSAGE_CREATE":
|
|
if s.OnMessageCreate != nil {
|
|
if s.OnMessageCreate != nil {
|
|
var st *Message
|
|
var st *Message
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnMessageCreate(s, st)
|
|
s.OnMessageCreate(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -261,7 +261,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "MESSAGE_UPDATE":
|
|
case "MESSAGE_UPDATE":
|
|
if s.OnMessageUpdate != nil {
|
|
if s.OnMessageUpdate != nil {
|
|
var st *Message
|
|
var st *Message
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnMessageUpdate(s, st)
|
|
s.OnMessageUpdate(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -269,7 +269,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "MESSAGE_DELETE":
|
|
case "MESSAGE_DELETE":
|
|
if s.OnMessageDelete != nil {
|
|
if s.OnMessageDelete != nil {
|
|
var st *MessageDelete
|
|
var st *MessageDelete
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnMessageDelete(s, st)
|
|
s.OnMessageDelete(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -277,7 +277,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "MESSAGE_ACK":
|
|
case "MESSAGE_ACK":
|
|
if s.OnMessageAck != nil {
|
|
if s.OnMessageAck != nil {
|
|
var st *MessageAck
|
|
var st *MessageAck
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnMessageAck(s, st)
|
|
s.OnMessageAck(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -287,7 +287,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
break
|
|
break
|
|
}
|
|
}
|
|
var st *Channel
|
|
var st *Channel
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
if s.StateEnabled {
|
|
if s.StateEnabled {
|
|
s.State.ChannelAdd(st)
|
|
s.State.ChannelAdd(st)
|
|
}
|
|
}
|
|
@@ -303,7 +303,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
break
|
|
break
|
|
}
|
|
}
|
|
var st *Channel
|
|
var st *Channel
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
if s.StateEnabled {
|
|
if s.StateEnabled {
|
|
s.State.ChannelAdd(st)
|
|
s.State.ChannelAdd(st)
|
|
}
|
|
}
|
|
@@ -319,7 +319,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
break
|
|
break
|
|
}
|
|
}
|
|
var st *Channel
|
|
var st *Channel
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
if s.StateEnabled {
|
|
if s.StateEnabled {
|
|
s.State.ChannelRemove(st)
|
|
s.State.ChannelRemove(st)
|
|
}
|
|
}
|
|
@@ -335,7 +335,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
break
|
|
break
|
|
}
|
|
}
|
|
var st *Guild
|
|
var st *Guild
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
if s.StateEnabled {
|
|
if s.StateEnabled {
|
|
s.State.GuildAdd(st)
|
|
s.State.GuildAdd(st)
|
|
}
|
|
}
|
|
@@ -351,7 +351,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
break
|
|
break
|
|
}
|
|
}
|
|
var st *Guild
|
|
var st *Guild
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
if s.StateEnabled {
|
|
if s.StateEnabled {
|
|
s.State.GuildAdd(st)
|
|
s.State.GuildAdd(st)
|
|
}
|
|
}
|
|
@@ -367,7 +367,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
break
|
|
break
|
|
}
|
|
}
|
|
var st *Guild
|
|
var st *Guild
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
if s.StateEnabled {
|
|
if s.StateEnabled {
|
|
s.State.GuildRemove(st)
|
|
s.State.GuildRemove(st)
|
|
}
|
|
}
|
|
@@ -383,7 +383,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
break
|
|
break
|
|
}
|
|
}
|
|
var st *Member
|
|
var st *Member
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
if s.StateEnabled {
|
|
if s.StateEnabled {
|
|
s.State.MemberAdd(st)
|
|
s.State.MemberAdd(st)
|
|
}
|
|
}
|
|
@@ -399,7 +399,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
break
|
|
break
|
|
}
|
|
}
|
|
var st *Member
|
|
var st *Member
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
if s.StateEnabled {
|
|
if s.StateEnabled {
|
|
s.State.MemberRemove(st)
|
|
s.State.MemberRemove(st)
|
|
}
|
|
}
|
|
@@ -415,7 +415,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
break
|
|
break
|
|
}
|
|
}
|
|
var st *Member
|
|
var st *Member
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
if s.StateEnabled {
|
|
if s.StateEnabled {
|
|
s.State.MemberAdd(st)
|
|
s.State.MemberAdd(st)
|
|
}
|
|
}
|
|
@@ -429,7 +429,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "GUILD_ROLE_CREATE":
|
|
case "GUILD_ROLE_CREATE":
|
|
if s.OnGuildRoleCreate != nil {
|
|
if s.OnGuildRoleCreate != nil {
|
|
var st *GuildRole
|
|
var st *GuildRole
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnGuildRoleCreate(s, st)
|
|
s.OnGuildRoleCreate(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -437,7 +437,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "GUILD_ROLE_UPDATE":
|
|
case "GUILD_ROLE_UPDATE":
|
|
if s.OnGuildRoleUpdate != nil {
|
|
if s.OnGuildRoleUpdate != nil {
|
|
var st *GuildRole
|
|
var st *GuildRole
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnGuildRoleUpdate(s, st)
|
|
s.OnGuildRoleUpdate(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -445,7 +445,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "GUILD_ROLE_DELETE":
|
|
case "GUILD_ROLE_DELETE":
|
|
if s.OnGuildRoleDelete != nil {
|
|
if s.OnGuildRoleDelete != nil {
|
|
var st *GuildRoleDelete
|
|
var st *GuildRoleDelete
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnGuildRoleDelete(s, st)
|
|
s.OnGuildRoleDelete(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -453,7 +453,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "GUILD_INTEGRATIONS_UPDATE":
|
|
case "GUILD_INTEGRATIONS_UPDATE":
|
|
if s.OnGuildIntegrationsUpdate != nil {
|
|
if s.OnGuildIntegrationsUpdate != nil {
|
|
var st *GuildIntegrationsUpdate
|
|
var st *GuildIntegrationsUpdate
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnGuildIntegrationsUpdate(s, st)
|
|
s.OnGuildIntegrationsUpdate(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -461,7 +461,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "GUILD_BAN_ADD":
|
|
case "GUILD_BAN_ADD":
|
|
if s.OnGuildBanAdd != nil {
|
|
if s.OnGuildBanAdd != nil {
|
|
var st *GuildBan
|
|
var st *GuildBan
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnGuildBanAdd(s, st)
|
|
s.OnGuildBanAdd(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -469,7 +469,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "GUILD_BAN_REMOVE":
|
|
case "GUILD_BAN_REMOVE":
|
|
if s.OnGuildBanRemove != nil {
|
|
if s.OnGuildBanRemove != nil {
|
|
var st *GuildBan
|
|
var st *GuildBan
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnGuildBanRemove(s, st)
|
|
s.OnGuildBanRemove(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -479,7 +479,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
break
|
|
break
|
|
}
|
|
}
|
|
var st *GuildEmojisUpdate
|
|
var st *GuildEmojisUpdate
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
if s.StateEnabled {
|
|
if s.StateEnabled {
|
|
s.State.EmojisAdd(st.GuildID, st.Emojis)
|
|
s.State.EmojisAdd(st.GuildID, st.Emojis)
|
|
}
|
|
}
|
|
@@ -493,7 +493,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
|
|
case "USER_SETTINGS_UPDATE":
|
|
case "USER_SETTINGS_UPDATE":
|
|
if s.OnUserSettingsUpdate != nil {
|
|
if s.OnUserSettingsUpdate != nil {
|
|
var st map[string]interface{}
|
|
var st map[string]interface{}
|
|
- if err = unmarshalEvent(e, &st); err == nil {
|
|
|
|
|
|
+ if err = s.unmarshalEvent(e, &st); err == nil {
|
|
s.OnUserSettingsUpdate(s, st)
|
|
s.OnUserSettingsUpdate(s, st)
|
|
}
|
|
}
|
|
return
|
|
return
|