diff options
author | Gary Kim <gary@garykim.dev> | 2021-06-01 17:17:07 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-01 23:17:07 +0200 |
commit | 1d50da4b1c43273ab2dc8c47829e03f5f6981f92 (patch) | |
tree | c99fbf0d82b335fd298703f33ace3cb7f0f37742 /vendor/gomod.garykim.dev/nc-talk/ocs | |
parent | c7897cca5d61bbe3579403fbbef62c0d70779876 (diff) | |
download | matterbridge-msglm-1d50da4b1c43273ab2dc8c47829e03f5f6981f92.tar.gz matterbridge-msglm-1d50da4b1c43273ab2dc8c47829e03f5f6981f92.tar.bz2 matterbridge-msglm-1d50da4b1c43273ab2dc8c47829e03f5f6981f92.zip |
Add support for message deletion (nctalk) (#1492)
* nctalk: add message deletion support
Signed-off-by: Gary Kim <gary@garykim.dev>
* nctalk: seperate out deletion and sending logic
Signed-off-by: Gary Kim <gary@garykim.dev>
* nctalk: update library to v0.2.0
Signed-off-by: Gary Kim <gary@garykim.dev>
* Rename functions to be clearer
Signed-off-by: Gary Kim <gary@garykim.dev>
* Update to go-nc-talk v0.2.1
Signed-off-by: Gary Kim <gary@garykim.dev>
* Update to go-nc-talk v0.2.2
Signed-off-by: Gary Kim <gary@garykim.dev>
* Make deletions easier to debug
Signed-off-by: Gary Kim <gary@garykim.dev>
Diffstat (limited to 'vendor/gomod.garykim.dev/nc-talk/ocs')
-rw-r--r-- | vendor/gomod.garykim.dev/nc-talk/ocs/capabilities.go | 6 | ||||
-rw-r--r-- | vendor/gomod.garykim.dev/nc-talk/ocs/message.go | 11 |
2 files changed, 16 insertions, 1 deletions
diff --git a/vendor/gomod.garykim.dev/nc-talk/ocs/capabilities.go b/vendor/gomod.garykim.dev/nc-talk/ocs/capabilities.go index 4dbaa735..8b2919fc 100644 --- a/vendor/gomod.garykim.dev/nc-talk/ocs/capabilities.go +++ b/vendor/gomod.garykim.dev/nc-talk/ocs/capabilities.go @@ -33,10 +33,14 @@ type SpreedCapabilities struct { Folder string `json:"folder"` } `json:"attachments"` Chat struct { - MaxLength int `json:"max-length"` + MaxLength int `json:"max-length"` + ReadPrivacy int `json:"read-privacy"` } `json:"chat"` Conversations struct { CanCreate bool `json:"can-create"` } `json:"conversations"` + Previews struct { + MaxGifSize int `json:"max-gif-size"` + } `json:"previews"` } `json:"config"` } diff --git a/vendor/gomod.garykim.dev/nc-talk/ocs/message.go b/vendor/gomod.garykim.dev/nc-talk/ocs/message.go index d4766006..1a8f95dc 100644 --- a/vendor/gomod.garykim.dev/nc-talk/ocs/message.go +++ b/vendor/gomod.garykim.dev/nc-talk/ocs/message.go @@ -35,6 +35,15 @@ const ( // MessageCommand is a Nextcloud Talk message that is a command MessageCommand MessageType = "command" + // MessageDelete is a Nextcloud Talk message indicating a message that was deleted + // + // If a message has been deleted, a message of MessageType MessageSystem is + // sent through the channel for which the parent message's MessageType is MessageDelete. + // So, in order to check if a new message is a message deletion request, a check + // like this can be used: + // msg.MessageType == ocs.MessageSystem && msg.Parent != nil && msg.Parent.MessageType == ocs.MessageDelete + MessageDelete MessageType = "comment_deleted" + // ActorUser is a Nextcloud Talk message sent by a user ActorUser ActorType = "users" @@ -55,6 +64,8 @@ type TalkRoomMessageData struct { SystemMessage string `json:"systemMessage"` Timestamp int `json:"timestamp"` MessageType MessageType `json:"messageType"` + Deleted bool `json:"deleted"` + Parent *TalkRoomMessageData `json:"parent"` MessageParameters map[string]RichObjectString `json:"-"` } |