fix: fix the error

pull/1480/head
luhaoling 2 years ago
parent 6f0362c4cb
commit eca38ad45e

@ -312,122 +312,127 @@ 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://43.154.157.177:18889/sdkName" url:
beforeSendSingleMsg: beforeSendSingleMsg:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
afterSendSingleMsg: afterSendSingleMsg:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: ${CALLBACK_FAILED_CONTINUE}
beforeSendGroupMsg: beforeSendGroupMsg:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
afterSendGroupMsg: afterSendGroupMsg:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: ${CALLBACK_FAILED_CONTINUE}
msgModify: msgModify:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
userOnline: userOnline:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: ${CALLBACK_FAILED_CONTINUE}
userOffline: userOffline:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: ${CALLBACK_FAILED_CONTINUE}
userKickOff: userKickOff:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: ${CALLBACK_FAILED_CONTINUE}
offlinePush: offlinePush:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
onlinePush: onlinePush:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
superGroupOnlinePush: superGroupOnlinePush:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
beforeAddFriend: beforeAddFriend:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
beforeUpdateUserInfo: beforeUpdateUserInfo:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
beforeCreateGroup: beforeCreateGroup:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: false failedContinue: ${CALLBACK_FAILED_CONTINUE}
afterCreateGroup: afterCreateGroup:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: false failedContinue: ${CALLBACK_FAILED_CONTINUE}
beforeMemberJoinGroup: beforeMemberJoinGroup:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: false failedContinue: ${CALLBACK_FAILED_CONTINUE}
beforeSetGroupMemberInfo: beforeSetGroupMemberInfo:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
setMessageReactionExtensions: setMessageReactionExtensions:
enable: false enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
quitGroup: quitGroup:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
killGroupMember: killGroupMember:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
dismissGroup: dismissGroup:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
joinGroup: joinGroup:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
groupMsgRead: groupMsgRead:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
singleMsgRead: singleMsgRead:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
updateUserInfo: updateUserInfo:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
beforeUserRegister: beforeUserRegister:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
afterUserRegister: afterUserRegister:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
transferGroupOwner: transferGroupOwner:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
beforeSetFriendRemark: beforeSetFriendRemark:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
afterSetFriendRemark: afterSetFriendRemark:
enable: true enable: ${CALLBACK_ENABLE}
timeout: 5 timeout: ${CALLBACK_TIMEOUT}
failedContinue: true failedContinue: ${CALLBACK_FAILED_CONTINUE}
###################### Prometheus ###################### ###################### Prometheus ######################
# Prometheus configuration for various services # Prometheus configuration for various services

@ -466,7 +466,7 @@ This section involves configuring the log settings, including storage location,
This section involves setting up additional configuration variables for Websocket, Push Notifications, and Chat. This section involves setting up additional configuration variables for Websocket, Push Notifications, and Chat.
| Parameter | Example Value | Description | | Parameter | Example Value | Description |
| ----------------------- | ----------------- | ---------------------------------- | |-------------------------|-------------------|------------------------------------|
| WEBSOCKET_MAX_CONN_NUM | "100000" | Maximum Websocket connections | | WEBSOCKET_MAX_CONN_NUM | "100000" | Maximum Websocket connections |
| WEBSOCKET_MAX_MSG_LEN | "4096" | Maximum Websocket message length | | WEBSOCKET_MAX_MSG_LEN | "4096" | Maximum Websocket message length |
| WEBSOCKET_TIMEOUT | "10" | Websocket timeout | | WEBSOCKET_TIMEOUT | "10" | Websocket timeout |
@ -500,9 +500,9 @@ This section involves setting up additional configuration variables for Websocke
| TOKEN_EXPIRE | "90" | Token Expiry Time | | TOKEN_EXPIRE | "90" | Token Expiry Time |
| FRIEND_VERIFY | "false" | Friend Verification Enable | | FRIEND_VERIFY | "false" | Friend Verification Enable |
| IOS_PUSH_SOUND | "xxx" | iOS | | IOS_PUSH_SOUND | "xxx" | iOS |
| CALLBACK_ENABLE | "true" | Enable callback | | | |
| CALLBACK_TIMEOUT | "5" | Maximum timeout for callback call |
| CALLBACK_FAILED_CONTINUE| "true" | fails to continue to the next step |
### 2.20. <a name='PrometheusConfiguration-1'></a>Prometheus Configuration ### 2.20. <a name='PrometheusConfiguration-1'></a>Prometheus Configuration
This section involves configuring Prometheus, including enabling/disabling it and setting up ports for various services. This section involves configuring Prometheus, including enabling/disabling it and setting up ports for various services.

@ -16,7 +16,6 @@ package msggateway
import ( import (
"context" "context"
"github.com/OpenIMSDK/tools/errs"
"time" "time"
"github.com/OpenIMSDK/protocol/constant" "github.com/OpenIMSDK/protocol/constant"
@ -50,11 +49,7 @@ func CallbackUserOnline(ctx context.Context, userID string, platformID int, isAp
ConnID: connID, ConnID: connID,
} }
resp := cbapi.CommonCallbackResp{} resp := cbapi.CommonCallbackResp{}
err := http.CallBackPostReturn(ctx, callBackURL(), &req, &resp, config.Config.Callback.CallbackUserOnline) if err := http.CallBackPostReturn(ctx, callBackURL(), &req, &resp, config.Config.Callback.CallbackUserOnline); err != nil {
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -78,11 +73,7 @@ func CallbackUserOffline(ctx context.Context, userID string, platformID int, con
ConnID: connID, ConnID: connID,
} }
resp := &cbapi.CallbackUserOfflineResp{} resp := &cbapi.CallbackUserOfflineResp{}
err := http.CallBackPostReturn(ctx, callBackURL(), req, resp, config.Config.Callback.CallbackUserOffline) if err := http.CallBackPostReturn(ctx, callBackURL(), req, resp, config.Config.Callback.CallbackUserOffline); err != nil {
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -105,11 +96,7 @@ func CallbackUserKickOff(ctx context.Context, userID string, platformID int) err
Seq: time.Now().UnixMilli(), Seq: time.Now().UnixMilli(),
} }
resp := &cbapi.CommonCallbackResp{} resp := &cbapi.CommonCallbackResp{}
err := http.CallBackPostReturn(ctx, callBackURL(), req, resp, config.Config.Callback.CallbackUserOffline) if err := http.CallBackPostReturn(ctx, callBackURL(), req, resp, config.Config.Callback.CallbackUserOffline); err != nil {
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil

@ -19,7 +19,6 @@ import (
"github.com/OpenIMSDK/protocol/constant" "github.com/OpenIMSDK/protocol/constant"
"github.com/OpenIMSDK/protocol/sdkws" "github.com/OpenIMSDK/protocol/sdkws"
"github.com/OpenIMSDK/tools/errs"
"github.com/OpenIMSDK/tools/mcontext" "github.com/OpenIMSDK/tools/mcontext"
"github.com/OpenIMSDK/tools/utils" "github.com/OpenIMSDK/tools/utils"
@ -62,9 +61,6 @@ func callbackOfflinePush(
} }
resp := &callbackstruct.CallbackBeforePushResp{} resp := &callbackstruct.CallbackBeforePushResp{}
if err := http.CallBackPostReturn(ctx, url(), req, resp, config.Config.Callback.CallbackOfflinePush); err != nil { if err := http.CallBackPostReturn(ctx, url(), req, resp, config.Config.Callback.CallbackOfflinePush); err != nil {
if err == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
if len(resp.UserIDs) != 0 { if len(resp.UserIDs) != 0 {
@ -99,11 +95,7 @@ func callbackOnlinePush(ctx context.Context, userIDs []string, msg *sdkws.MsgDat
Content: GetContent(msg), Content: GetContent(msg),
} }
resp := &callbackstruct.CallbackBeforePushResp{} resp := &callbackstruct.CallbackBeforePushResp{}
err := http.CallBackPostReturn(ctx, url(), req, resp, config.Config.Callback.CallbackOnlinePush) if err := http.CallBackPostReturn(ctx, url(), req, resp, config.Config.Callback.CallbackOnlinePush); err != nil {
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -136,9 +128,6 @@ func callbackBeforeSuperGroupOnlinePush(
} }
resp := &callbackstruct.CallbackBeforeSuperGroupOnlinePushResp{} resp := &callbackstruct.CallbackBeforeSuperGroupOnlinePushResp{}
if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, req, resp, config.Config.Callback.CallbackBeforeSuperGroupOnlinePush); err != nil { if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, req, resp, config.Config.Callback.CallbackBeforeSuperGroupOnlinePush); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil

@ -19,7 +19,6 @@ import (
"github.com/OpenIMSDK/tools/utils" "github.com/OpenIMSDK/tools/utils"
pbfriend "github.com/OpenIMSDK/protocol/friend" pbfriend "github.com/OpenIMSDK/protocol/friend"
"github.com/OpenIMSDK/tools/errs"
cbapi "github.com/openimsdk/open-im-server/v3/pkg/callbackstruct" cbapi "github.com/openimsdk/open-im-server/v3/pkg/callbackstruct"
"github.com/openimsdk/open-im-server/v3/pkg/common/config" "github.com/openimsdk/open-im-server/v3/pkg/common/config"
"github.com/openimsdk/open-im-server/v3/pkg/common/http" "github.com/openimsdk/open-im-server/v3/pkg/common/http"
@ -37,9 +36,6 @@ func CallbackBeforeAddFriend(ctx context.Context, req *pbfriend.ApplyToAddFriend
} }
resp := &cbapi.CallbackBeforeAddFriendResp{} resp := &cbapi.CallbackBeforeAddFriendResp{}
if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeAddFriend); err != nil { if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeAddFriend); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -57,9 +53,6 @@ func CallbackBeforeSetFriendRemark(ctx context.Context, req *pbfriend.SetFriendR
} }
resp := &cbapi.CallbackBeforeSetFriendRemarkResp{} resp := &cbapi.CallbackBeforeSetFriendRemarkResp{}
if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeAddFriend); err != nil { if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeAddFriend); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
utils.NotNilReplace(&req.Remark, &resp.Remark) utils.NotNilReplace(&req.Remark, &resp.Remark)
@ -78,9 +71,6 @@ func CallbackAfterSetFriendRemark(ctx context.Context, req *pbfriend.SetFriendRe
} }
resp := &cbapi.CallbackAfterSetFriendRemarkResp{} resp := &cbapi.CallbackAfterSetFriendRemarkResp{}
if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeAddFriend); err != nil { if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeAddFriend); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil

@ -218,7 +218,7 @@ func (s *friendServer) SetFriendRemark(
) (resp *pbfriend.SetFriendRemarkResp, err error) { ) (resp *pbfriend.SetFriendRemarkResp, err error) {
defer log.ZInfo(ctx, utils.GetFuncName()+" Return") defer log.ZInfo(ctx, utils.GetFuncName()+" Return")
if err := CallbackBeforeSetFriendRemark(ctx, req); err != nil && err != errs.ErrCallbackContinue { if err = CallbackBeforeSetFriendRemark(ctx, req); err != nil && err != errs.ErrCallbackContinue {
return nil, err return nil, err
} }
resp = &pbfriend.SetFriendRemarkResp{} resp = &pbfriend.SetFriendRemarkResp{}

@ -21,7 +21,6 @@ import (
"github.com/OpenIMSDK/protocol/constant" "github.com/OpenIMSDK/protocol/constant"
"github.com/OpenIMSDK/protocol/group" "github.com/OpenIMSDK/protocol/group"
"github.com/OpenIMSDK/protocol/wrapperspb" "github.com/OpenIMSDK/protocol/wrapperspb"
"github.com/OpenIMSDK/tools/errs"
"github.com/OpenIMSDK/tools/mcontext" "github.com/OpenIMSDK/tools/mcontext"
"github.com/OpenIMSDK/tools/utils" "github.com/OpenIMSDK/tools/utils"
@ -60,17 +59,7 @@ func CallbackBeforeCreateGroup(ctx context.Context, req *group.CreateGroupReq) (
}) })
} }
resp := &callbackstruct.CallbackBeforeCreateGroupResp{} resp := &callbackstruct.CallbackBeforeCreateGroupResp{}
err = http.CallBackPostReturn( if err = http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeCreateGroup); err != nil {
ctx,
config.Config.Callback.CallbackUrl,
cbReq,
resp,
config.Config.Callback.CallbackBeforeCreateGroup,
)
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
utils.NotNilReplace(&req.GroupInfo.GroupID, resp.GroupID) utils.NotNilReplace(&req.GroupInfo.GroupID, resp.GroupID)
@ -113,17 +102,7 @@ func CallbackAfterCreateGroup(ctx context.Context, req *group.CreateGroupReq) (e
}) })
} }
resp := &callbackstruct.CallbackAfterCreateGroupResp{} resp := &callbackstruct.CallbackAfterCreateGroupResp{}
err = http.CallBackPostReturn( if err = http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackAfterCreateGroup); err != nil {
ctx,
config.Config.Callback.CallbackUrl,
cbReq,
resp,
config.Config.Callback.CallbackAfterCreateGroup,
)
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -145,17 +124,7 @@ func CallbackBeforeMemberJoinGroup(
GroupEx: groupEx, GroupEx: groupEx,
} }
resp := &callbackstruct.CallbackBeforeMemberJoinGroupResp{} resp := &callbackstruct.CallbackBeforeMemberJoinGroupResp{}
err = http.CallBackPostReturn( if err = http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, callbackReq, resp, config.Config.Callback.CallbackBeforeMemberJoinGroup); err != nil {
ctx,
config.Config.Callback.CallbackUrl,
callbackReq,
resp,
config.Config.Callback.CallbackBeforeMemberJoinGroup,
)
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
if resp.MuteEndTime != nil { if resp.MuteEndTime != nil {
@ -190,17 +159,7 @@ func CallbackBeforeSetGroupMemberInfo(ctx context.Context, req *group.SetGroupMe
callbackReq.Ex = &req.Ex.Value callbackReq.Ex = &req.Ex.Value
} }
resp := &callbackstruct.CallbackBeforeSetGroupMemberInfoResp{} resp := &callbackstruct.CallbackBeforeSetGroupMemberInfoResp{}
err = http.CallBackPostReturn( if err = http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, callbackReq, resp, config.Config.Callback.CallbackBeforeSetGroupMemberInfo); err != nil {
ctx,
config.Config.Callback.CallbackUrl,
callbackReq,
resp,
config.Config.Callback.CallbackBeforeSetGroupMemberInfo,
)
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
if resp.FaceURL != nil { if resp.FaceURL != nil {
@ -240,17 +199,7 @@ func CallbackAfterSetGroupMemberInfo(ctx context.Context, req *group.SetGroupMem
callbackReq.Ex = &req.Ex.Value callbackReq.Ex = &req.Ex.Value
} }
resp := &callbackstruct.CallbackAfterSetGroupMemberInfoResp{} resp := &callbackstruct.CallbackAfterSetGroupMemberInfoResp{}
err = http.CallBackPostReturn( if err = http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, callbackReq, resp, config.Config.Callback.CallbackBeforeSetGroupMemberInfo); err != nil {
ctx,
config.Config.Callback.CallbackUrl,
callbackReq,
resp,
config.Config.Callback.CallbackBeforeSetGroupMemberInfo,
)
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -266,17 +215,7 @@ func CallbackQuitGroup(ctx context.Context, req *group.QuitGroupReq) (err error)
UserID: req.UserID, UserID: req.UserID,
} }
resp := &callbackstruct.CallbackQuitGroupResp{} resp := &callbackstruct.CallbackQuitGroupResp{}
err = http.CallBackPostReturn( if err = http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackQuitGroup); err != nil {
ctx,
config.Config.Callback.CallbackUrl,
cbReq,
resp,
config.Config.Callback.CallbackQuitGroup,
)
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -292,17 +231,7 @@ func CallbackKillGroupMember(ctx context.Context, req *pbgroup.KickGroupMemberRe
KickedUserIDs: req.KickedUserIDs, KickedUserIDs: req.KickedUserIDs,
} }
resp := &callbackstruct.CallbackKillGroupMemberResp{} resp := &callbackstruct.CallbackKillGroupMemberResp{}
err = http.CallBackPostReturn( if err = http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackQuitGroup); err != nil {
ctx,
config.Config.Callback.CallbackUrl,
cbReq,
resp,
config.Config.Callback.CallbackQuitGroup,
)
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -314,17 +243,7 @@ func CallbackDismissGroup(ctx context.Context, req *callbackstruct.CallbackDisMi
} }
req.CallbackCommand = callbackstruct.CallbackDisMissGroupCommand req.CallbackCommand = callbackstruct.CallbackDisMissGroupCommand
resp := &callbackstruct.CallbackDisMissGroupResp{} resp := &callbackstruct.CallbackDisMissGroupResp{}
err = http.CallBackPostReturn( if err = http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, req, resp, config.Config.Callback.CallbackQuitGroup); err != nil {
ctx,
config.Config.Callback.CallbackUrl,
req,
resp,
config.Config.Callback.CallbackQuitGroup,
)
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -338,17 +257,7 @@ func CallbackApplyJoinGroupBefore(ctx context.Context, req *callbackstruct.Callb
req.CallbackCommand = callbackstruct.CallbackBeforeJoinGroupCommand req.CallbackCommand = callbackstruct.CallbackBeforeJoinGroupCommand
resp := &callbackstruct.CallbackJoinGroupResp{} resp := &callbackstruct.CallbackJoinGroupResp{}
err = http.CallBackPostReturn( if err = http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, req, resp, config.Config.Callback.CallbackBeforeJoinGroup); err != nil {
ctx,
config.Config.Callback.CallbackUrl,
req,
resp,
config.Config.Callback.CallbackBeforeJoinGroup,
)
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
@ -368,17 +277,7 @@ func CallbackTransferGroupOwnerAfter(ctx context.Context, req *pbgroup.TransferG
} }
resp := &callbackstruct.CallbackTransferGroupOwnerResp{} resp := &callbackstruct.CallbackTransferGroupOwnerResp{}
err = http.CallBackPostReturn( if err = http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeJoinGroup); err != nil {
ctx,
config.Config.Callback.CallbackUrl,
cbReq,
resp,
config.Config.Callback.CallbackBeforeJoinGroup,
)
if err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil

@ -842,7 +842,7 @@ func (s *groupServer) JoinGroup(ctx context.Context, req *pbgroup.JoinGroupReq)
ReqMessage: req.ReqMessage, ReqMessage: req.ReqMessage,
} }
if err := CallbackApplyJoinGroupBefore(ctx, reqCall); err != nil { if err = CallbackApplyJoinGroupBefore(ctx, reqCall); err != nil {
return nil, err return nil, err
} }
_, err = s.GroupDatabase.TakeGroupMember(ctx, req.GroupID, req.InviterUserID) _, err = s.GroupDatabase.TakeGroupMember(ctx, req.GroupID, req.InviterUserID)

@ -172,7 +172,7 @@ func (m *msgServer) updateReadStatus(ctx context.Context, req *msg.MarkConversat
ContentType: int64(conversation.ConversationType), ContentType: int64(conversation.ConversationType),
} }
if err := CallbackGroupMsgRead(ctx, reqCall); err != nil { if err := CallbackGroupMsgRead(ctx, reqCall); err != nil {
return nil, err return err
} }
if req.HasReadSeq > hasReadSeq { if req.HasReadSeq > hasReadSeq {

@ -21,7 +21,6 @@ import (
"github.com/OpenIMSDK/protocol/constant" "github.com/OpenIMSDK/protocol/constant"
pbchat "github.com/OpenIMSDK/protocol/msg" pbchat "github.com/OpenIMSDK/protocol/msg"
"github.com/OpenIMSDK/tools/errs"
"github.com/OpenIMSDK/tools/log" "github.com/OpenIMSDK/tools/log"
"github.com/OpenIMSDK/tools/mcontext" "github.com/OpenIMSDK/tools/mcontext"
"github.com/OpenIMSDK/tools/utils" "github.com/OpenIMSDK/tools/utils"
@ -78,9 +77,6 @@ func callbackBeforeSendSingleMsg(ctx context.Context, msg *pbchat.SendMsgReq) er
} }
resp := &cbapi.CallbackBeforeSendSingleMsgResp{} resp := &cbapi.CallbackBeforeSendSingleMsgResp{}
if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackBeforeSendSingleMsg); err != nil { if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackBeforeSendSingleMsg); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -96,9 +92,6 @@ func callbackAfterSendSingleMsg(ctx context.Context, msg *pbchat.SendMsgReq) err
} }
resp := &cbapi.CallbackAfterSendSingleMsgResp{} resp := &cbapi.CallbackAfterSendSingleMsgResp{}
if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackAfterSendSingleMsg); err != nil { if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackAfterSendSingleMsg); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -114,9 +107,6 @@ func callbackBeforeSendGroupMsg(ctx context.Context, msg *pbchat.SendMsgReq) err
} }
resp := &cbapi.CallbackBeforeSendGroupMsgResp{} resp := &cbapi.CallbackBeforeSendGroupMsgResp{}
if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackBeforeSendGroupMsg); err != nil { if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackBeforeSendGroupMsg); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -132,9 +122,6 @@ func callbackAfterSendGroupMsg(ctx context.Context, msg *pbchat.SendMsgReq) erro
} }
resp := &cbapi.CallbackAfterSendGroupMsgResp{} resp := &cbapi.CallbackAfterSendGroupMsgResp{}
if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackAfterSendGroupMsg); err != nil { if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackAfterSendGroupMsg); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -149,9 +136,6 @@ func callbackMsgModify(ctx context.Context, msg *pbchat.SendMsgReq) error {
} }
resp := &cbapi.CallbackMsgModifyCommandResp{} resp := &cbapi.CallbackMsgModifyCommandResp{}
if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackMsgModify); err != nil { if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackMsgModify); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
if resp.Content != nil { if resp.Content != nil {
@ -185,9 +169,6 @@ func CallbackGroupMsgRead(ctx context.Context, req *cbapi.CallbackGroupMsgReadRe
resp := &cbapi.CallbackGroupMsgReadResp{} resp := &cbapi.CallbackGroupMsgReadResp{}
if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackMsgModify); err != nil { if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackMsgModify); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -202,9 +183,6 @@ func CallbackSingleMsgRead(ctx context.Context, req *cbapi.CallbackSingleMsgRead
resp := &cbapi.CallbackGroupMsgReadResp{} resp := &cbapi.CallbackGroupMsgReadResp{}
if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackMsgModify); err != nil { if err := http.CallBackPostReturn(ctx, cbURL(), req, resp, config.Config.Callback.CallbackMsgModify); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil

@ -17,7 +17,6 @@ package user
import ( import (
"context" "context"
pbuser "github.com/OpenIMSDK/protocol/user" pbuser "github.com/OpenIMSDK/protocol/user"
"github.com/OpenIMSDK/tools/errs"
"github.com/OpenIMSDK/tools/utils" "github.com/OpenIMSDK/tools/utils"
cbapi "github.com/openimsdk/open-im-server/v3/pkg/callbackstruct" cbapi "github.com/openimsdk/open-im-server/v3/pkg/callbackstruct"
@ -37,9 +36,6 @@ func CallbackBeforeUpdateUserInfo(ctx context.Context, req *pbuser.UpdateUserInf
} }
resp := &cbapi.CallbackBeforeUpdateUserInfoResp{} resp := &cbapi.CallbackBeforeUpdateUserInfoResp{}
if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeUpdateUserInfo); err != nil { if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeUpdateUserInfo); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
utils.NotNilReplace(&req.UserInfo.FaceURL, resp.FaceURL) utils.NotNilReplace(&req.UserInfo.FaceURL, resp.FaceURL)
@ -60,9 +56,6 @@ func CallbackAfterUpdateUserInfo(ctx context.Context, req *pbuser.UpdateUserInfo
} }
resp := &cbapi.CallbackAfterUpdateUserInfoResp{} resp := &cbapi.CallbackAfterUpdateUserInfoResp{}
if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeUpdateUserInfo); err != nil { if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeUpdateUserInfo); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil
@ -80,9 +73,6 @@ func CallbackBeforeUserRegister(ctx context.Context, req *pbuser.UserRegisterReq
resp := &cbapi.CallbackBeforeUserRegisterResp{} resp := &cbapi.CallbackBeforeUserRegisterResp{}
if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeUpdateUserInfo); err != nil { if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeUpdateUserInfo); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
utils.NotNilReplace(&req.Users, &resp.Users) utils.NotNilReplace(&req.Users, &resp.Users)
@ -101,9 +91,6 @@ func CallbackAfterUserRegister(ctx context.Context, req *pbuser.UserRegisterReq)
resp := &cbapi.CallbackBeforeUserRegisterResp{} resp := &cbapi.CallbackBeforeUserRegisterResp{}
if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeUpdateUserInfo); err != nil { if err := http.CallBackPostReturn(ctx, config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeUpdateUserInfo); err != nil {
if errs.Unwrap(err) == errs.ErrCallbackContinue {
return nil
}
return err return err
} }
return nil return nil

@ -106,7 +106,7 @@ func PostReturn(ctx context.Context, url string, header map[string]string, input
} }
func callBackPostReturn(ctx context.Context, url, command string, input interface{}, output callbackstruct.CallbackResp, callbackConfig config.CallBackConfig) error { func callBackPostReturn(ctx context.Context, url, command string, input interface{}, output callbackstruct.CallbackResp, callbackConfig config.CallBackConfig) error {
defer log.ZDebug(ctx, "callback", "url", url, "command", command, "input", input, "callbackConfig", callbackConfig) defer log.ZDebug(ctx, "callback", "url", url, "command", command, "input", input, "output", output, "callbackConfig", callbackConfig)
// //
//v := urllib.Values{} //v := urllib.Values{}
//v.Set(constant.CallbackCommand, command) //v.Set(constant.CallbackCommand, command)
@ -117,7 +117,7 @@ func callBackPostReturn(ctx context.Context, url, command string, input interfac
if err != nil { if err != nil {
if callbackConfig.CallbackFailedContinue != nil && *callbackConfig.CallbackFailedContinue { if callbackConfig.CallbackFailedContinue != nil && *callbackConfig.CallbackFailedContinue {
log.ZWarn(ctx, "callback failed but continue", err, "url", url) log.ZWarn(ctx, "callback failed but continue", err, "url", url)
return errs.ErrCallbackContinue return nil
} }
return errs.ErrNetwork.Wrap(err.Error()) return errs.ErrNetwork.Wrap(err.Error())
} }
@ -125,7 +125,7 @@ func callBackPostReturn(ctx context.Context, url, command string, input interfac
if err = json.Unmarshal(b, output); err != nil { if err = json.Unmarshal(b, output); err != nil {
if callbackConfig.CallbackFailedContinue != nil && *callbackConfig.CallbackFailedContinue { if callbackConfig.CallbackFailedContinue != nil && *callbackConfig.CallbackFailedContinue {
log.ZWarn(ctx, "callback failed but continue", err, "url", url) log.ZWarn(ctx, "callback failed but continue", err, "url", url)
return errs.ErrCallbackContinue return nil
} }
return errs.ErrData.Wrap(err.Error()) return errs.ErrData.Wrap(err.Error())
} }

@ -376,6 +376,10 @@ def "FRIEND_VERIFY" "false" # 朋友验证
def "IOS_PUSH_SOUND" "xxx" # IOS推送声音 def "IOS_PUSH_SOUND" "xxx" # IOS推送声音
def "IOS_BADGE_COUNT" "true" # IOS徽章计数 def "IOS_BADGE_COUNT" "true" # IOS徽章计数
def "IOS_PRODUCTION" "false" # IOS生产 def "IOS_PRODUCTION" "false" # IOS生产
# callback 配置
def "CALLBACK_ENABLE" "true" # 是否开启 Callback
def "CALLBACK_TIMEOUT" "5" # 最长超时时间
def "CALLBACK_FAILED_CONTINUE" "true" # 失败后是否继续
###################### Prometheus 配置信息 ###################### ###################### Prometheus 配置信息 ######################
# 是否启用 Prometheus # 是否启用 Prometheus

Loading…
Cancel
Save