added expiration_time to Update Groups endpoint

see #616
This commit is contained in:
Bernhard B 2024-11-15 22:43:02 +01:00
parent cddf3c166a
commit 2c4ef753ab
5 changed files with 23 additions and 7 deletions

View File

@ -53,9 +53,10 @@ type CreateGroupRequest struct {
} }
type UpdateGroupRequest struct { type UpdateGroupRequest struct {
Base64Avatar *string `json:"base64_avatar"` Base64Avatar *string `json:"base64_avatar"`
Description *string `json:"description"` Description *string `json:"description"`
Name *string `json:"name"` Name *string `json:"name"`
ExpirationTime *int `json:"expiration_time"`
} }
type ChangeGroupMembersRequest struct { type ChangeGroupMembersRequest struct {
@ -1477,7 +1478,7 @@ func (a *Api) UpdateGroup(c *gin.Context) {
return return
} }
err = a.signalClient.UpdateGroup(number, internalGroupId, req.Base64Avatar, req.Description, req.Name) err = a.signalClient.UpdateGroup(number, internalGroupId, req.Base64Avatar, req.Description, req.Name, req.ExpirationTime)
if err != nil { if err != nil {
c.JSON(400, Error{Msg: err.Error()}) c.JSON(400, Error{Msg: err.Error()})
return return

View File

@ -1594,7 +1594,7 @@ func (s *SignalClient) QuitGroup(number string, groupId string) error {
return err return err
} }
func (s *SignalClient) UpdateGroup(number string, groupId string, base64Avatar *string, groupDescription *string, groupName *string) error { func (s *SignalClient) UpdateGroup(number string, groupId string, base64Avatar *string, groupDescription *string, groupName *string, expirationTime *int) error {
var err error var err error
var avatarTmpPath string = "" var avatarTmpPath string = ""
if base64Avatar != nil { if base64Avatar != nil {
@ -1638,6 +1638,7 @@ func (s *SignalClient) UpdateGroup(number string, groupId string, base64Avatar *
Avatar string `json:"avatar,omitempty"` Avatar string `json:"avatar,omitempty"`
Description *string `json:"description,omitempty"` Description *string `json:"description,omitempty"`
Name *string `json:"name,omitempty"` Name *string `json:"name,omitempty"`
Expiration int `json:"expiration,omitempty"`
} }
request := Request{GroupId: groupId} request := Request{GroupId: groupId}
@ -1648,6 +1649,10 @@ func (s *SignalClient) UpdateGroup(number string, groupId string, base64Avatar *
request.Description = groupDescription request.Description = groupDescription
request.Name = groupName request.Name = groupName
if expirationTime != nil {
request.Expiration = *expirationTime
}
jsonRpc2Client, err := s.getJsonRpc2Client() jsonRpc2Client, err := s.getJsonRpc2Client()
if err != nil { if err != nil {
return err return err
@ -1667,6 +1672,10 @@ func (s *SignalClient) UpdateGroup(number string, groupId string, base64Avatar *
cmd = append(cmd, []string{"-n", *groupName}...) cmd = append(cmd, []string{"-n", *groupName}...)
} }
if expirationTime != nil {
cmd = append(cmd, []string{"--expiration", strconv.Itoa(*expirationTime)}...)
}
_, err = s.cliClient.Execute(true, cmd, "") _, err = s.cliClient.Execute(true, cmd, "")
} }

View File

@ -2455,6 +2455,9 @@ const docTemplate = `{
"description": { "description": {
"type": "string" "type": "string"
}, },
"expiration_time": {
"type": "integer"
},
"name": { "name": {
"type": "string" "type": "string"
} }
@ -2712,8 +2715,6 @@ var SwaggerInfo = &swag.Spec{
Description: "This is the Signal Cli REST API documentation.", Description: "This is the Signal Cli REST API documentation.",
InfoInstanceName: "swagger", InfoInstanceName: "swagger",
SwaggerTemplate: docTemplate, SwaggerTemplate: docTemplate,
LeftDelim: "{{",
RightDelim: "}}",
} }
func init() { func init() {

View File

@ -2452,6 +2452,9 @@
"description": { "description": {
"type": "string" "type": "string"
}, },
"expiration_time": {
"type": "integer"
},
"name": { "name": {
"type": "string" "type": "string"
} }

View File

@ -266,6 +266,8 @@ definitions:
type: string type: string
description: description:
type: string type: string
expiration_time:
type: integer
name: name:
type: string type: string
type: object type: object