Working double puppeting
This commit is contained in:
53
user.go
53
user.go
@@ -102,12 +102,6 @@ func (cl ChatList) Swap(i, j int) {
|
||||
cl[i], cl[j] = cl[j], cl[i]
|
||||
}
|
||||
|
||||
type FakeMessage struct {
|
||||
Text string
|
||||
ID string
|
||||
Alert bool
|
||||
}
|
||||
|
||||
// Public Properties
|
||||
|
||||
func (user *User) GetPermissionLevel() bridgeconfig.PermissionLevel {
|
||||
@@ -471,7 +465,13 @@ func (user *User) HandleChatList() {
|
||||
user.log.Errorln("chat sync error", err) //TODO: handle
|
||||
return
|
||||
}
|
||||
user.log.Debugln("Group")
|
||||
for _, chat := range chats {
|
||||
user.log.Debugln(" " + chat.Name)
|
||||
for _, mem := range chat.Members {
|
||||
user.log.Debugln(" " + mem.Nickname)
|
||||
}
|
||||
|
||||
chatMap[chat.ID] = chat
|
||||
}
|
||||
user.GroupList = chatMap
|
||||
@@ -487,24 +487,22 @@ func (user *User) HandleChatList() {
|
||||
}
|
||||
user.ChatList = dmMap
|
||||
|
||||
//userMap := map[groupme.ID]groupme.User{}
|
||||
//users, err := user.Client.IndexAllRelations()
|
||||
//if err != nil {
|
||||
// user.log.Errorln("Error syncing user list, continuing sync", err)
|
||||
//}
|
||||
//fmt.Println("Relations:")
|
||||
//for _, u := range users {
|
||||
// fmt.Println(" " + u.ID.String() + " " + u.Name)
|
||||
// puppet := user.bridge.GetPuppetByGMID(u.ID)
|
||||
// // "" for overall user not related to one group
|
||||
// puppet.Sync(user, &groupme.Member{
|
||||
// UserID: u.ID,
|
||||
// Nickname: u.Name,
|
||||
// ImageURL: u.AvatarURL,
|
||||
// }, false, false)
|
||||
// userMap[u.ID] = *u
|
||||
//}
|
||||
//user.RelationList = userMap
|
||||
userMap := map[groupme.ID]*groupme.User{}
|
||||
users, err := user.Client.IndexAllRelations()
|
||||
if err != nil {
|
||||
user.log.Errorln("Error syncing user list, continuing sync", err)
|
||||
}
|
||||
for _, u := range users {
|
||||
puppet := user.bridge.GetPuppetByGMID(u.ID)
|
||||
// "" for overall user not related to one group
|
||||
puppet.Sync(user, &groupme.Member{
|
||||
UserID: u.ID,
|
||||
Nickname: u.Name,
|
||||
ImageURL: u.AvatarURL,
|
||||
}, false, false)
|
||||
userMap[u.ID] = u
|
||||
}
|
||||
user.RelationList = userMap
|
||||
|
||||
user.log.Infoln("Chat list received")
|
||||
user.chatListReceived <- struct{}{}
|
||||
@@ -527,10 +525,6 @@ func (user *User) handleMessageLoop() {
|
||||
ImageURL: msg.data.AvatarURL,
|
||||
}, false, false)
|
||||
}
|
||||
//err := puppet.IntentFor(portal).EnsureJoined(portal.MXID)
|
||||
//if err != nil {
|
||||
// user.log.Warnln("Unable to ensure user puppet joined")
|
||||
//}
|
||||
portal.messages <- msg
|
||||
case <-user.syncStart:
|
||||
user.log.Debugln("Processing of incoming messages is locked")
|
||||
@@ -790,7 +784,8 @@ func (user *User) getDirectChats() map[id.UserID][]id.RoomID {
|
||||
return res
|
||||
}
|
||||
|
||||
func (user *User) updateAvatar(gmdi groupme.ID, avatarID *string, avatarURL *id.ContentURI, avatarSet *bool, log log.Logger, intent *appservice.IntentAPI) bool {
|
||||
func (user *User) updateAvatar(gmdi groupme.ID, avatarID *string, avatarURL *id.ContentURI, avatarSet *bool,
|
||||
log log.Logger, intent *appservice.IntentAPI) bool {
|
||||
return false
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user