Browse Source

Add Pin and Unpin methods to Chat

main
Sam 5 years ago
parent
commit
9dbf3b1664
  1. 31
      chat.go
  2. 2
      types.go

31
chat.go

@ -332,3 +332,34 @@ func (c Chat) LoadFlip(messageID int, conversationID string, flipConversationID
} }
return r, nil return r, nil
} }
// Pin pins a message to a channel
func (c Chat) Pin(messageID int) (ChatAPI, error) {
m := ChatAPI{
Params: &params{},
}
m.Method = "pin"
m.Params.Options.Channel = c.Channel
m.Params.Options.MessageID = messageID
r, err := chatAPIOut(c.keybase, m)
if err != nil {
return ChatAPI{}, err
}
return r, nil
}
// Unpin clears any pinned messages from a channel
func (c Chat) Unpin() (ChatAPI, error) {
m := ChatAPI{
Params: &params{},
}
m.Method = "unpin"
m.Params.Options.Channel = c.Channel
r, err := chatAPIOut(c.keybase, m)
if err != nil {
return ChatAPI{}, err
}
return r, nil
}

2
types.go

@ -468,6 +468,8 @@ type chat interface {
Upload(title string, filepath string) (ChatAPI, error) Upload(title string, filepath string) (ChatAPI, error)
Download(messageID int, filepath string) (ChatAPI, error) Download(messageID int, filepath string) (ChatAPI, error)
LoadFlip(messageID int, conversationID string, flipConversationID string, gameID string) (ChatAPI, error) LoadFlip(messageID int, conversationID string, flipConversationID string, gameID string) (ChatAPI, error)
Pin(messageID int) (ChatAPI, error)
Unpin() (ChatAPI, error)
} }
type chatAPI interface { type chatAPI interface {

Loading…
Cancel
Save