update callback setrgoup info

pull/1499/head
AndrewZuo01 2 years ago
parent 41a3101346
commit 53d5a77424

@ -312,7 +312,7 @@ iosPush:
# Timeout in seconds # Timeout in seconds
# Whether to continue execution if callback fails # Whether to continue execution if callback fails
callback: callback:
url: "http://125.124.195.201:18889/sdkName/callbackBeforeInviteJoinGroupCommand" url: "http://125.124.195.201:18889/sdkName/callbackAfterSetGroupInfoCommand"
beforeSendSingleMsg: beforeSendSingleMsg:
enable: false enable: false
timeout: 5 timeout: 5
@ -394,11 +394,11 @@ callback:
failedContinue: true failedContinue: true
##TODO CALLBACK ##TODO CALLBACK
joinGroupAfter: joinGroupAfter:
enable: true enable: false
timeout: 5 timeout: 5
failedContinue: true failedContinue: true
setGroupInfoAfter: setGroupInfoAfter:
enable: false enable: true
timeout: 5 timeout: 5
failedContinue: true failedContinue: true
setGroupInfoBefore: setGroupInfoBefore:

@ -230,4 +230,41 @@ func CallbackAfterJoinGroup(ctx context.Context, req *group.JoinGroupReq) error
return nil return nil
} }
func CallbackBeforeSetGroupInfo(ctx context.Context, req *group.SetGroupInfoReq) error {
if !config.Config.Callback.CallbackBeforeSetGroupInfo.Enable {
return nil
}
callbackReq := &callbackstruct.CallbackBeforeSetGroupInfoReq{
CallbackCommand: callbackstruct.CallbackBeforeSetGroupInfoCommand,
OperationID: mcontext.GetOperationID(ctx),
GroupInfoForSet: req.GroupInfoForSet,
}
resp := &callbackstruct.CallbackBeforeSetGroupInfoResp{}
if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, callbackReq, resp, config.Config.Callback.CallbackBeforeSetGroupInfo); err != nil {
if err == errs.ErrCallbackContinue {
return nil
}
return err
}
return nil
}
func CallbackAfterSetGroupInfo(ctx context.Context, req *group.SetGroupInfoReq) error {
if !config.Config.Callback.CallbackAfterSetGroupInfo.Enable {
return nil
}
callbackReq := &callbackstruct.CallbackAfterSetGroupInfoReq{
CallbackCommand: callbackstruct.CallbackAfterSetGroupInfoCommand,
OperationID: mcontext.GetOperationID(ctx),
GroupInfoForSet: req.GroupInfoForSet,
}
resp := &callbackstruct.CallbackAfterSetGroupInfoResp{}
if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, callbackReq, resp, config.Config.Callback.CallbackAfterSetGroupInfo); err != nil {
if err == errs.ErrCallbackContinue {
return nil
}
return err
}
return nil
}
// TODO CALLBACK // TODO CALLBACK

@ -937,6 +937,9 @@ func (s *groupServer) SetGroupInfo(ctx context.Context, req *pbgroup.SetGroupInf
return nil, errs.ErrNoPermission.Wrap("no group owner or admin") return nil, errs.ErrNoPermission.Wrap("no group owner or admin")
} }
} }
if err := CallbackBeforeSetGroupInfo(ctx, req); err != nil {
return nil, err
}
group, err := s.GroupDatabase.TakeGroup(ctx, req.GroupInfoForSet.GroupID) group, err := s.GroupDatabase.TakeGroup(ctx, req.GroupInfoForSet.GroupID)
if err != nil { if err != nil {
return nil, err return nil, err
@ -1005,6 +1008,9 @@ func (s *groupServer) SetGroupInfo(ctx context.Context, req *pbgroup.SetGroupInf
default: default:
s.Notification.GroupInfoSetNotification(ctx, tips) s.Notification.GroupInfoSetNotification(ctx, tips)
} }
if err := CallbackAfterSetGroupInfo(ctx, req); err != nil {
return nil, err
}
return resp, nil return resp, nil
} }

@ -100,17 +100,38 @@ type CallbackBeforeInviteUserToGroupResp struct {
RefusedMembersAccount []string `json:"refusedMembersAccount,omitempty"` // Optional field to list members whose invitation is refused. RefusedMembersAccount []string `json:"refusedMembersAccount,omitempty"` // Optional field to list members whose invitation is refused.
} }
// TODO CALLBACK 2
type CallbackAfterJoinGroupReq struct { type CallbackAfterJoinGroupReq struct {
CallbackCommand `json:"callbackCommand"` CallbackCommand `json:"callbackCommand"`
OperationID string `json:"operationID"` OperationID string `json:"operationID"`
GroupID string `json:"groupID"` GroupID string `json:"groupID"`
ReqMessage string `json:"reqMessage"` ReqMessage string `json:"reqMessage"`
JoinSource int32 `json:"joinSource"` JoinSource int32 `json:"joinSource"`
InviterUserID string `json:"string"` InviterUserID string `json:"inviterUserID"`
EventTime int64 `json:"eventTime"` EventTime int64 `json:"eventTime"`
} }
type CallbackAfterJoinGroupResp struct { type CallbackAfterJoinGroupResp struct {
CommonCallbackResp CommonCallbackResp
} }
type CallbackBeforeSetGroupInfoReq struct {
CallbackCommand `json:"callbackCommand"`
OperationID string `json:"operationID"`
GroupInfoForSet *common.GroupInfoForSet `json:"groupInfoForSet"`
}
type CallbackBeforeSetGroupInfoResp struct {
CommonCallbackResp
GroupInfoForSet *common.GroupInfoForSet `json:"groupInfoForSet"`
}
type CallbackAfterSetGroupInfoReq struct {
CallbackCommand `json:"callbackCommand"`
OperationID string `json:"operationID"`
GroupInfoForSet *common.GroupInfoForSet `json:"groupInfoForSet"`
}
type CallbackAfterSetGroupInfoResp struct {
CommonCallbackResp
}
// TODO CALLBACK 2

Loading…
Cancel
Save