From f586ab1ac2233b6fbca19fc9172f928d87d85fd1 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 23 Feb 2023 19:15:30 +0800 Subject: [PATCH 01/19] push --- cmd/api/main.go | 190 +------ cmd/cmdutils/main.go | 12 +- cmd/crontask/main.go | 2 +- cmd/msggateway/main.go | 8 +- cmd/msgtransfer/main.go | 8 +- cmd/push/main.go | 8 +- cmd/rpc/auth/main.go | 6 +- cmd/rpc/conversation/main.go | 6 +- cmd/rpc/friend/main.go | 6 +- cmd/rpc/group/main.go | 6 +- cmd/rpc/msg/main.go | 6 +- cmd/rpc/user/main.go | 6 +- cmdutils/mongo/cmd/main.go | 4 +- cmdutils/mongo/mongo_utils.go | 4 +- config/config.yaml | 28 +- config/usualConfig.yaml | 43 -- go.mod | 2 +- internal/api/auth/auth.go | 16 +- internal/api/conversation/conversation.go | 12 +- internal/api/friend/friend.go | 18 +- internal/api/friend/friend1.go | 8 +- internal/api/group/group.go | 22 +- internal/api/group/group_test.go | 4 +- internal/api/group/super_group.go | 16 +- internal/api/manage/management_chat.go | 16 +- internal/api/manage/management_user.go | 16 +- internal/api/msg/del_msg.go | 16 +- internal/api/msg/extend_msg.go | 14 +- internal/api/msg/get_max_min_seq.go | 10 +- internal/api/msg/pull_msg.go | 12 +- internal/api/msg/send_msg.go | 8 +- internal/api/route.go | 169 ++++++ internal/api/third/ali_oss_credential.go | 12 +- internal/api/third/aws_storage_credential.go | 14 +- internal/api/third/fcm_update_token.go | 10 +- internal/api/third/minio_init.go | 8 +- .../api/third/minio_storage_credential.go | 16 +- internal/api/third/rtc.go | 10 +- internal/api/third/set_app_badge.go | 10 +- .../third/tencent_cloud_storage_credential.go | 12 +- internal/api/user/user.go | 20 +- internal/api2rpc/api.go | 8 +- internal/common/check/access.go | 2 +- internal/common/check/black.go | 2 +- internal/common/check/conversation.go | 8 +- internal/common/check/friend.go | 10 +- internal/common/check/group.go | 12 +- internal/common/check/msg.go | 8 +- internal/common/check/user.go | 12 +- internal/common/convert/convert.go | 10 +- internal/common/notification/c.go | 17 +- internal/common/notification/conversation.go | 6 +- internal/common/notification/extend_msg.go | 12 +- internal/common/notification/friend.go | 8 +- internal/common/notification/group.go | 16 +- internal/common/notification/msg.go | 4 +- internal/common/notification/super_group.go | 2 +- internal/common/notification/user.go | 4 +- internal/common/rpcserver/register.go | 8 +- internal/msggateway/batch_push.go | 10 +- internal/msggateway/callback.go | 10 +- internal/msggateway/init.go | 8 +- internal/msggateway/logic.go | 18 +- internal/msggateway/new/client.go | 4 +- internal/msggateway/new/compressor.go | 2 +- internal/msggateway/new/context.go | 2 +- internal/msggateway/new/encoder.go | 2 +- internal/msggateway/new/http_error.go | 2 +- internal/msggateway/new/message_handler.go | 8 +- internal/msggateway/new/n_ws_server.go | 6 +- internal/msggateway/relay_rpc_server.go | 16 +- internal/msggateway/validate.go | 10 +- internal/msggateway/ws_server.go | 14 +- internal/msgtransfer/init.go | 4 +- internal/msgtransfer/modify_msg_handler.go | 24 +- .../msgtransfer/online_history_msg_handler.go | 22 +- .../online_msg_to_mongo_handler.go | 20 +- .../msgtransfer/persistent_msg_handler.go | 14 +- internal/push/callback.go | 14 +- internal/push/fcm/push.go | 8 +- internal/push/fcm/push_test.go | 4 +- internal/push/getui/body.go | 2 +- internal/push/getui/push.go | 16 +- internal/push/init.go | 16 +- internal/push/jpush/body/notification.go | 2 +- internal/push/jpush/body/platform.go | 2 +- internal/push/jpush/push.go | 8 +- internal/push/push_handler.go | 18 +- internal/push/push_rpc_server.go | 16 +- internal/push/push_to_client.go | 24 +- internal/rpc/auth/auth.go | 28 +- internal/rpc/conversation/conversaion.go | 20 +- internal/rpc/friend/black.go | 10 +- internal/rpc/friend/callback.go | 12 +- internal/rpc/friend/friend.go | 26 +- internal/rpc/group/callback.go | 18 +- internal/rpc/group/copy.go | 6 +- internal/rpc/group/db_map.go | 4 +- internal/rpc/group/group.go | 30 +- internal/rpc/group/super_group.go | 12 +- internal/rpc/msg/callback.go | 14 +- internal/rpc/msg/delete.go | 12 +- internal/rpc/msg/extend_msg.go | 12 +- internal/rpc/msg/extend_msg_callback.go | 12 +- internal/rpc/msg/msg_status.go | 6 +- internal/rpc/msg/send_msg.go | 12 +- internal/rpc/msg/send_pull.go | 12 +- internal/rpc/msg/server.go | 18 +- internal/rpc/msg/utils.go | 8 +- internal/rpc/user/user.go | 28 +- internal/startrpc/start.go | 12 +- internal/task/clear_msg.go | 20 +- internal/task/clear_msg_test.go | 4 +- internal/task/cron_task.go | 14 +- internal/tx/mongo.go | 2 +- pkg/apistruct/group.go | 2 +- pkg/apistruct/manage.go | 4 +- pkg/apistruct/msg.go | 4 +- pkg/apistruct/user.go | 2 +- pkg/callbackstruct/common.go | 2 +- pkg/callbackstruct/group.go | 4 +- pkg/callbackstruct/message.go | 4 +- pkg/callbackstruct/push.go | 2 +- pkg/common/config/config.go | 535 +++++++----------- pkg/common/db/cache/black.go | 6 +- pkg/common/db/cache/conversation.go | 8 +- pkg/common/db/cache/extend_msg_set.go | 6 +- pkg/common/db/cache/friend.go | 8 +- pkg/common/db/cache/group.go | 8 +- pkg/common/db/cache/redis.go | 12 +- pkg/common/db/cache/redis_test.go | 6 +- pkg/common/db/cache/rockscache.go | 2 +- pkg/common/db/cache/token.go | 6 +- pkg/common/db/cache/user.go | 8 +- pkg/common/db/controller/auth.go | 2 +- pkg/common/db/controller/black.go | 4 +- pkg/common/db/controller/chatlog.go | 6 +- pkg/common/db/controller/conversation.go | 12 +- pkg/common/db/controller/extend_msg.go | 4 +- pkg/common/db/controller/friend.go | 8 +- pkg/common/db/controller/group.go | 12 +- pkg/common/db/controller/msg.go | 21 +- pkg/common/db/controller/push.go | 2 +- pkg/common/db/controller/user.go | 6 +- pkg/common/db/localcache/conversation.go | 6 +- pkg/common/db/localcache/group.go | 8 +- pkg/common/db/relation/black_model.go | 6 +- pkg/common/db/relation/chat_log_model.go | 10 +- pkg/common/db/relation/conversation_model.go | 8 +- pkg/common/db/relation/friend_model.go | 6 +- .../db/relation/friend_request_model.go | 6 +- pkg/common/db/relation/group_member_model.go | 8 +- pkg/common/db/relation/group_model.go | 6 +- pkg/common/db/relation/group_request_model.go | 6 +- pkg/common/db/relation/mysql_init.go | 2 +- pkg/common/db/relation/user_model.go | 6 +- pkg/common/db/relation/utils.go | 2 +- pkg/common/db/table/relation/chatlog.go | 2 +- .../db/table/unrelation/extend_msg_set.go | 2 +- pkg/common/db/table/unrelation/msg.go | 4 +- pkg/common/db/unrelation/extend_msg.go | 6 +- pkg/common/db/unrelation/mongo.go | 6 +- pkg/common/db/unrelation/msg.go | 6 +- pkg/common/db/unrelation/super_group.go | 6 +- pkg/common/http/http_client.go | 6 +- pkg/common/kafka/consumer.go | 2 +- pkg/common/kafka/producer.go | 8 +- pkg/common/log/es_hk.go | 2 +- pkg/common/log/file_line_hk.go | 2 +- pkg/common/log/logrus.go | 4 +- pkg/common/middleware/rpc.go | 8 +- pkg/common/prome/grpc.go | 2 +- pkg/common/prome/prometheus.go | 2 +- pkg/common/tokenverify/jwt_token.go | 8 +- pkg/common/tracelog/ctx.go | 2 +- pkg/errs/coderr.go | 2 +- pkg/proto/auth/auth.pb.go | 4 +- pkg/proto/auth/auth.proto | 2 +- pkg/proto/auto_proto.sh | 8 +- pkg/proto/conversation/conversation.pb.go | 2 +- pkg/proto/conversation/conversation.proto | 2 +- pkg/proto/file/file.proto | 2 +- pkg/proto/friend/friend.pb.go | 4 +- pkg/proto/friend/friend.proto | 2 +- pkg/proto/group/group.pb.go | 4 +- pkg/proto/group/group.proto | 2 +- pkg/proto/msg/msg.pb.go | 4 +- pkg/proto/msg/msg.proto | 2 +- pkg/proto/msggateway/relay.pb.go | 4 +- pkg/proto/msggateway/relay.proto | 2 +- pkg/proto/push/push.pb.go | 4 +- pkg/proto/push/push.proto | 2 +- pkg/proto/rtc/rtc.pb.go | 2 +- pkg/proto/rtc/rtc.proto | 2 +- pkg/proto/sdk_ws/group.proto | 2 +- pkg/proto/sdkws/ws.pb.go | 2 +- pkg/proto/sdkws/ws.proto | 2 +- pkg/proto/user/user.pb.go | 6 +- pkg/proto/user/user.proto | 2 +- pkg/statistics/statistics.go | 2 +- pkg/utils/callback.go | 4 +- pkg/utils/file.go | 2 +- pkg/utils/jwt_token_test.go | 6 +- pkg/utils/platform_number_id_to_name_test.go | 2 +- pkg/utils/strings.go | 2 +- 205 files changed, 1216 insertions(+), 1377 deletions(-) delete mode 100644 config/usualConfig.yaml create mode 100644 internal/api/route.go diff --git a/cmd/api/main.go b/cmd/api/main.go index 1e590de68..fdc11912f 100644 --- a/cmd/api/main.go +++ b/cmd/api/main.go @@ -1,201 +1,31 @@ package main import ( - apiAuth "Open_IM/internal/api/auth" - "Open_IM/internal/api/conversation" - "Open_IM/internal/api/friend" - "Open_IM/internal/api/group" - "Open_IM/internal/api/manage" - apiChat "Open_IM/internal/api/msg" - apiThird "Open_IM/internal/api/third" - "Open_IM/internal/api/user" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/middleware" - "Open_IM/pkg/common/tokenverify" + "OpenIM/internal/api" + "OpenIM/internal/api/third" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/log" "flag" "fmt" - "io" - "os" "strconv" - swaggerFiles "github.com/swaggo/files" - ginSwagger "github.com/swaggo/gin-swagger" - - "github.com/gin-gonic/gin" - //"syscall" - "Open_IM/pkg/common/constant" - prome "Open_IM/pkg/common/prome" + "OpenIM/pkg/common/constant" ) -// @title open-IM-Server API -// @version 1.0 -// @description open-IM-Server 的API服务器文档, 文档中所有请求都有一个operationID字段用于链路追踪 - -// @license.name Apache 2.0 -// @license.url http://www.apache.org/licenses/LICENSE-2.0.html -// @BasePath / func main() { log.NewPrivateLog(constant.LogFileName) - gin.SetMode(gin.ReleaseMode) - f, _ := os.Create("../logs/api.log") - gin.DefaultWriter = io.MultiWriter(f) - // gin.SetMode(gin.DebugMode) - r := gin.New() - r.Use(gin.Recovery()) - r.Use(middleware.GinParseOperationID) - log.Info("load config: ", config.Config) - r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler)) - if config.Config.Prometheus.Enable { - prome.NewApiRequestCounter() - prome.NewApiRequestFailedCounter() - prome.NewApiRequestSuccessCounter() - r.Use(prome.PromeTheusMiddleware) - r.GET("/metrics", prome.PrometheusHandler()) - } - // user routing group, which handles user registration and login services - userRouterGroup := r.Group("/user") - { - userRouterGroup.POST("/update_user_info", user.UpdateUserInfo) //1 - userRouterGroup.POST("/set_global_msg_recv_opt", user.SetGlobalRecvMessageOpt) - userRouterGroup.POST("/get_users_info", user.GetUsersPublicInfo) //1 - userRouterGroup.POST("/get_self_user_info", user.GetSelfUserInfo) //1 - userRouterGroup.POST("/get_users_online_status", user.GetUsersOnlineStatus) //1 - userRouterGroup.POST("/get_users_info_from_cache", user.GetUsersInfoFromCache) - userRouterGroup.POST("/get_user_friend_from_cache", user.GetFriendIDListFromCache) - userRouterGroup.POST("/get_black_list_from_cache", user.GetBlackIDListFromCache) - userRouterGroup.POST("/get_all_users_uid", manage.GetAllUsersUid) //1 - userRouterGroup.POST("/account_check", manage.AccountCheck) //1 - // userRouterGroup.POST("/get_users_online_status", manage.GetUsersOnlineStatus) //1 - userRouterGroup.POST("/get_users", user.GetUsers) - } - ////friend routing group - friendRouterGroup := r.Group("/friend") - { - // friendRouterGroup.POST("/get_friends_info", friend.GetFriendsInfo) - friendRouterGroup.POST("/add_friend", friend.AddFriend) //1 - friendRouterGroup.POST("/delete_friend", friend.DeleteFriend) //1 - friendRouterGroup.POST("/get_friend_apply_list", friend.GetFriendApplyList) //1 - friendRouterGroup.POST("/get_self_friend_apply_list", friend.GetSelfApplyList) //1 - friendRouterGroup.POST("/get_friend_list", friend.GetFriendList) //1 - friendRouterGroup.POST("/add_friend_response", friend.AddFriendResponse) //1 - friendRouterGroup.POST("/set_friend_remark", friend.SetFriendRemark) //1 - - friendRouterGroup.POST("/add_black", friend.AddBlack) //1 - friendRouterGroup.POST("/get_black_list", friend.GetBlacklist) //1 - friendRouterGroup.POST("/remove_black", friend.RemoveBlacklist) //1 - - friendRouterGroup.POST("/import_friend", friend.ImportFriend) //1 - friendRouterGroup.POST("/is_friend", friend.IsFriend) //1 - } - //group related routing group - groupRouterGroup := r.Group("/group") - groupRouterGroup.Use(func(c *gin.Context) { - userID, err := tokenverify.ParseUserIDFromToken(c.GetHeader("token"), c.GetString("operationID")) - if err != nil { - c.String(400, err.Error()) - c.Abort() - return - } - c.Set("opUserID", userID) - c.Next() - }) - { - groupRouterGroup.POST("/create_group", group.NewCreateGroup) //1 - groupRouterGroup.POST("/set_group_info", group.NewSetGroupInfo) //1 - groupRouterGroup.POST("/join_group", group.JoinGroup) //1 - groupRouterGroup.POST("/quit_group", group.QuitGroup) //1 - groupRouterGroup.POST("/group_application_response", group.ApplicationGroupResponse) //1 - groupRouterGroup.POST("/transfer_group", group.TransferGroupOwner) //1 - groupRouterGroup.POST("/get_recv_group_applicationList", group.GetRecvGroupApplicationList) //1 - groupRouterGroup.POST("/get_user_req_group_applicationList", group.GetUserReqGroupApplicationList) - groupRouterGroup.POST("/get_groups_info", group.GetGroupsInfo) //1 - groupRouterGroup.POST("/kick_group", group.KickGroupMember) //1 - // groupRouterGroup.POST("/get_group_member_list", group.FindGroupMemberAll) //no use - groupRouterGroup.POST("/get_group_all_member_list", group.GetGroupAllMemberList) //1 - groupRouterGroup.POST("/get_group_members_info", group.GetGroupMembersInfo) //1 - groupRouterGroup.POST("/invite_user_to_group", group.InviteUserToGroup) //1 - groupRouterGroup.POST("/get_joined_group_list", group.GetJoinedGroupList) - groupRouterGroup.POST("/dismiss_group", group.DismissGroup) // - groupRouterGroup.POST("/mute_group_member", group.MuteGroupMember) - groupRouterGroup.POST("/cancel_mute_group_member", group.CancelMuteGroupMember) //MuteGroup - groupRouterGroup.POST("/mute_group", group.MuteGroup) - groupRouterGroup.POST("/cancel_mute_group", group.CancelMuteGroup) - groupRouterGroup.POST("/set_group_member_nickname", group.SetGroupMemberNickname) - groupRouterGroup.POST("/set_group_member_info", group.SetGroupMemberInfo) - groupRouterGroup.POST("/get_group_abstract_info", group.GetGroupAbstractInfo) - //groupRouterGroup.POST("/get_group_all_member_list_by_split", group.GetGroupAllMemberListBySplit) - } - superGroupRouterGroup := r.Group("/super_group") - { - superGroupRouterGroup.POST("/get_joined_group_list", group.GetJoinedSuperGroupList) - superGroupRouterGroup.POST("/get_groups_info", group.GetSuperGroupsInfo) - } - ////certificate - authRouterGroup := r.Group("/auth") - { - authRouterGroup.POST("/user_register", apiAuth.UserRegister) //1 - authRouterGroup.POST("/user_token", apiAuth.UserToken) //1 - authRouterGroup.POST("/parse_token", apiAuth.ParseToken) //1 - authRouterGroup.POST("/force_logout", apiAuth.ForceLogout) //1 - } - ////Third service - thirdGroup := r.Group("/third") - { - thirdGroup.POST("/tencent_cloud_storage_credential", apiThird.TencentCloudStorageCredential) - thirdGroup.POST("/ali_oss_credential", apiThird.AliOSSCredential) - thirdGroup.POST("/minio_storage_credential", apiThird.MinioStorageCredential) - thirdGroup.POST("/minio_upload", apiThird.MinioUploadFile) - thirdGroup.POST("/upload_update_app", apiThird.UploadUpdateApp) - thirdGroup.POST("/get_download_url", apiThird.GetDownloadURL) - thirdGroup.POST("/get_rtc_invitation_info", apiThird.GetRTCInvitationInfo) - thirdGroup.POST("/get_rtc_invitation_start_app", apiThird.GetRTCInvitationInfoStartApp) - thirdGroup.POST("/fcm_update_token", apiThird.FcmUpdateToken) - thirdGroup.POST("/aws_storage_credential", apiThird.AwsStorageCredential) - thirdGroup.POST("/set_app_badge", apiThird.SetAppBadge) - } - ////Message - chatGroup := r.Group("/msg") - { - chatGroup.POST("/newest_seq", apiChat.GetSeq) - chatGroup.POST("/send_msg", apiChat.SendMsg) - chatGroup.POST("/pull_msg_by_seq", apiChat.PullMsgBySeqList) - chatGroup.POST("/del_msg", apiChat.DelMsg) - chatGroup.POST("/del_super_group_msg", apiChat.DelSuperGroupMsg) - chatGroup.POST("/clear_msg", apiChat.ClearMsg) - chatGroup.POST("/manage_send_msg", manage.ManagementSendMsg) - chatGroup.POST("/batch_send_msg", manage.ManagementBatchSendMsg) - chatGroup.POST("/check_msg_is_send_success", manage.CheckMsgIsSendSuccess) - chatGroup.POST("/set_msg_min_seq", apiChat.SetMsgMinSeq) - - chatGroup.POST("/set_message_reaction_extensions", apiChat.SetMessageReactionExtensions) - chatGroup.POST("/get_message_list_reaction_extensions", apiChat.GetMessageListReactionExtensions) - chatGroup.POST("/add_message_reaction_extensions", apiChat.AddMessageReactionExtensions) - chatGroup.POST("/delete_message_reaction_extensions", apiChat.DeleteMessageReactionExtensions) - } - ////Conversation - conversationGroup := r.Group("/conversation") - { //1 - conversationGroup.POST("/get_all_conversations", conversation.GetAllConversations) - conversationGroup.POST("/get_conversation", conversation.GetConversation) - conversationGroup.POST("/get_conversations", conversation.GetConversations) - conversationGroup.POST("/set_conversation", conversation.SetConversation) - conversationGroup.POST("/batch_set_conversation", conversation.BatchSetConversations) - conversationGroup.POST("/set_recv_msg_opt", conversation.SetRecvMsgOpt) - conversationGroup.POST("/modify_conversation_field", conversation.ModifyConversationField) - } - - go apiThird.MinioInit() - defaultPorts := config.Config.Api.GinPort - ginPort := flag.Int("port", defaultPorts[0], "get ginServerPort from cmd,default 10002 as port") + router := api.NewGinRouter() + go third.MinioInit() + ginPort := flag.Int("port", config.Config.Api.GinPort[0], "get ginServerPort from cmd,default 10002 as port") flag.Parse() + config.InitConfig() address := "0.0.0.0:" + strconv.Itoa(*ginPort) if config.Config.Api.ListenIP != "" { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) } fmt.Println("start api server, address: ", address, ", OpenIM version: ", constant.CurrentVersion) - err := r.Run(address) + err := router.Run(address) if err != nil { log.Error("", "api run failed ", address, err.Error()) panic("api start failed " + err.Error()) diff --git a/cmd/cmdutils/main.go b/cmd/cmdutils/main.go index ded252795..c05b85b5e 100644 --- a/cmd/cmdutils/main.go +++ b/cmd/cmdutils/main.go @@ -1,17 +1,17 @@ package main import ( - "Open_IM/internal/task" + "OpenIM/internal/task" "flag" "fmt" "time" ) func main() { - var userID = flag.String("userID", "", "userID to clear msg and reset seq") - var workingGroupID = flag.String("workingGroupID", "", "workingGroupID to clear msg and reset seq") - var fixAllSeq = flag.Bool("fixAllSeq", false, "fix seq") + var userID = flag.String("user_id", "", "userID to clear msg and reset seq") + var superGroupID = flag.String("super_group_id", "", "superGroupID to clear msg and reset seq") + var fixAllSeq = flag.Bool("fix_all_seq", false, "fix seq") flag.Parse() - fmt.Println(time.Now(), "start cronTask", *userID, *workingGroupID) - task.FixSeq(*userID, *workingGroupID, *fixAllSeq) + fmt.Println(time.Now(), "start cronTask", *userID, *superGroupID) + task.FixSeq(*userID, *superGroupID, *fixAllSeq) } diff --git a/cmd/crontask/main.go b/cmd/crontask/main.go index c4ca2aab9..0b25831cd 100644 --- a/cmd/crontask/main.go +++ b/cmd/crontask/main.go @@ -1,7 +1,7 @@ package main import ( - "Open_IM/internal/task" + "OpenIM/internal/task" "fmt" "time" ) diff --git a/cmd/msggateway/main.go b/cmd/msggateway/main.go index 86de2dcc9..677cb056b 100644 --- a/cmd/msggateway/main.go +++ b/cmd/msggateway/main.go @@ -1,10 +1,10 @@ package main import ( - "Open_IM/internal/msggateway" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" + "OpenIM/internal/msggateway" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" "flag" "fmt" "sync" diff --git a/cmd/msgtransfer/main.go b/cmd/msgtransfer/main.go index 9d5923aea..2cc17d388 100644 --- a/cmd/msgtransfer/main.go +++ b/cmd/msgtransfer/main.go @@ -1,10 +1,10 @@ package main import ( - "Open_IM/internal/msgtransfer" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" + "OpenIM/internal/msgtransfer" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" "flag" "fmt" "sync" diff --git a/cmd/push/main.go b/cmd/push/main.go index 40e774608..261fc5a92 100644 --- a/cmd/push/main.go +++ b/cmd/push/main.go @@ -1,10 +1,10 @@ package main import ( - "Open_IM/internal/push" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" + "OpenIM/internal/push" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" "flag" "fmt" "sync" diff --git a/cmd/rpc/auth/main.go b/cmd/rpc/auth/main.go index a89ff6845..9e94ba99c 100644 --- a/cmd/rpc/auth/main.go +++ b/cmd/rpc/auth/main.go @@ -1,9 +1,9 @@ package main import ( - "Open_IM/internal/rpc/auth" - "Open_IM/internal/startrpc" - "Open_IM/pkg/common/config" + "OpenIM/internal/rpc/auth" + "OpenIM/internal/startrpc" + "OpenIM/pkg/common/config" ) func main() { diff --git a/cmd/rpc/conversation/main.go b/cmd/rpc/conversation/main.go index 9f030c801..2c13332fe 100644 --- a/cmd/rpc/conversation/main.go +++ b/cmd/rpc/conversation/main.go @@ -1,9 +1,9 @@ package main import ( - "Open_IM/internal/rpc/conversation" - "Open_IM/internal/startrpc" - "Open_IM/pkg/common/config" + "OpenIM/internal/rpc/conversation" + "OpenIM/internal/startrpc" + "OpenIM/pkg/common/config" ) func main() { diff --git a/cmd/rpc/friend/main.go b/cmd/rpc/friend/main.go index 907ee7dbd..eb1042735 100644 --- a/cmd/rpc/friend/main.go +++ b/cmd/rpc/friend/main.go @@ -1,9 +1,9 @@ package main import ( - "Open_IM/internal/rpc/friend" - "Open_IM/internal/startrpc" - "Open_IM/pkg/common/config" + "OpenIM/internal/rpc/friend" + "OpenIM/internal/startrpc" + "OpenIM/pkg/common/config" ) func main() { diff --git a/cmd/rpc/group/main.go b/cmd/rpc/group/main.go index 89451b6ef..ba7325419 100644 --- a/cmd/rpc/group/main.go +++ b/cmd/rpc/group/main.go @@ -1,9 +1,9 @@ package main import ( - "Open_IM/internal/rpc/group" - "Open_IM/internal/startrpc" - "Open_IM/pkg/common/config" + "OpenIM/internal/rpc/group" + "OpenIM/internal/startrpc" + "OpenIM/pkg/common/config" ) func main() { diff --git a/cmd/rpc/msg/main.go b/cmd/rpc/msg/main.go index 7900b1d4e..6fafd0c33 100644 --- a/cmd/rpc/msg/main.go +++ b/cmd/rpc/msg/main.go @@ -1,9 +1,9 @@ package main import ( - "Open_IM/internal/rpc/msg" - "Open_IM/internal/startrpc" - "Open_IM/pkg/common/config" + "OpenIM/internal/rpc/msg" + "OpenIM/internal/startrpc" + "OpenIM/pkg/common/config" ) func main() { diff --git a/cmd/rpc/user/main.go b/cmd/rpc/user/main.go index 331daa8f4..b7436746a 100644 --- a/cmd/rpc/user/main.go +++ b/cmd/rpc/user/main.go @@ -1,9 +1,9 @@ package main import ( - "Open_IM/internal/rpc/user" - "Open_IM/internal/startrpc" - "Open_IM/pkg/common/config" + "OpenIM/internal/rpc/user" + "OpenIM/internal/startrpc" + "OpenIM/pkg/common/config" ) func main() { diff --git a/cmdutils/mongo/cmd/main.go b/cmdutils/mongo/cmd/main.go index 9644851d8..ffa5986f5 100644 --- a/cmdutils/mongo/cmd/main.go +++ b/cmdutils/mongo/cmd/main.go @@ -1,8 +1,8 @@ package main import ( - mongoUtils "Open_IM/cmdutils/mongo" - "Open_IM/pkg/common/config" + mongoUtils "OpenIM/cmdutils/mongo" + "OpenIM/pkg/common/config" "context" "flag" "fmt" diff --git a/cmdutils/mongo/mongo_utils.go b/cmdutils/mongo/mongo_utils.go index 21d9ea929..dd9497a1a 100644 --- a/cmdutils/mongo/mongo_utils.go +++ b/cmdutils/mongo/mongo_utils.go @@ -1,8 +1,8 @@ package mongo import ( - "Open_IM/pkg/common/config" - sdkws "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/config" + sdkws "OpenIM/pkg/proto/sdkws" "context" "fmt" "github.com/golang/protobuf/proto" diff --git a/config/config.yaml b/config/config.yaml index 7f3f48e27..d4da27081 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -11,8 +11,8 @@ zookeeper: mysql: dbMysqlAddress: [ 127.0.0.1:13306 ] #mysql地址 目前仅支持单机,默认即可 - dbMysqlUserName: #mysql用户名,建议修改 - dbMysqlPassword: # mysql密码,建议修改 + dbMysqlUserName: root #mysql用户名,建议修改 + dbMysqlPassword: openIM123 # mysql密码,建议修改 dbMysqlDatabaseName: openIM_v2 #默认即可 dbTableName: eMsg #默认即可 dbMsgTableNum: 1 @@ -30,8 +30,8 @@ mongo: dbTimeout: 60 dbDatabase: openIM #mongo db 默认即可 dbSource: admin - dbUserName: #mongo用户名,建议先不设置 - dbPassword: #mongo密码,建议先不设置 + dbUserName: root #mongo用户名,建议先不设置 + dbPassword: openIM123 #mongo密码,建议先不设置 dbMaxPoolSize: 100 dbRetainChatRecords: 3650 #mongo保存离线消息时间(天),根据需求修改 chatRecordsClearTime: "* * * * *" # 每天凌晨3点清除消息,该配置和linux定时任务一样, 清理操作建议设置在用户活跃少的时候 # 0 3 * * * @@ -42,7 +42,7 @@ redis: dbMaxActive: 0 dbIdleTimeout: 120 dbUserName: #only redis version 6.0+ need username - dbPassWord: #redis密码 建议修改 + dbPassWord: openIM123 #redis密码 建议修改 enableCluster: false #如果外部redis以集群方式启动,需要打开此开关 kafka: @@ -113,11 +113,11 @@ credential: #腾讯cos,发送图片、视频、文件时需要,请自行申 bucket: openim # 存储内容桶 appBucket: app # 存储app的桶 location: us-east-1 - endpoint: #minio外网ip 这个ip是给客户端访问的 + endpoint: http://127.0.0.1:10005 #minio外网ip 这个ip是给客户端访问的 endpointInner: http://127.0.0.1:10005 #minio内网地址 如果im server 可以通过内网访问到 minio就可以 endpointInnerEnable: true #是否启用minio内网地址 启用可以让桶初始化,IM server连接minio走内网地址访问 - accessKeyID: - secretAccessKey: + accessKeyID: root + secretAccessKey: openIM123 storageTime: 50 #文件在minio中保存的时间 isDistributedMod: false # 是否分布式多硬盘部署 默认docker-compose中为false ali: # ali oss @@ -203,11 +203,11 @@ push: pushIntent: enable: false # true or false (bool) getui: #个推推送 - pushUrl: + pushUrl: "https://restapi.getui.com/v2/$appId" masterSecret: "" appKey: "" intent: "" - enable: # true or false (bool) + enable: false # true or false (bool) channelID: "" channelName: "" fcm: #firebase cloud message 消息推送 @@ -220,7 +220,7 @@ manager: secrets: [ "openIM1","openIM2", "openIM333", "openIMAdmin"] appSysNotificationName: "系统通知" -secret: +secret: tuoyun # 多端互踢策略 # 1:多平台登录:Android、iOS、Windows、Mac 每种平台只能一个在线,web端可以多个同时在线 multiloginpolicy: 1 @@ -236,11 +236,11 @@ singleMessageHasReadReceiptEnable: true #token config tokenpolicy: - accessSecret: #token生成相关,默认即可 + accessSecret: "OpenIM_server" #token生成相关,默认即可 # Token effective time day as a unit - accessExpire: #token过期时间(天) 默认即可 + accessExpire: 90 #token过期时间(天) 默认即可 messageverify: - friendVerify: + friendVerify: false #ios系统推送声音以及标记计数 iospush: diff --git a/config/usualConfig.yaml b/config/usualConfig.yaml deleted file mode 100644 index 8558f4bf0..000000000 --- a/config/usualConfig.yaml +++ /dev/null @@ -1,43 +0,0 @@ -etcd: - userName: - password: - secret: openIM123 # etcd 配置密钥 - -mysql: - dbMysqlUserName: root #mysql用户名 - dbMysqlPassword: openIM123 # mysql密码 - -mongo: - dbUserName: root #mongo用户名 - dbPassword: openIM123 #mongo密码 - -redis: - dbUserName: - dbPassWord: openIM123 #redis密码 - -kafka: - SASLUserName: - SASLPassword: - -credential: - minio: - endpoint: http://127.0.0.1:10005 #发图片视频文件需要填写 - accessKeyID: root - secretAccessKey: openIM123 - -secret: tuoyun #建议修改 - -tokenpolicy: - accessSecret: "open_im_server" #token生成相关 建议修改 - accessExpire: 90 #token过期时间(天) 默认即可 - -messageverify: - friendVerify: false #发送消息是否验证好友关系 false表示不验证好友关系 - -push: - getui: - pushUrl: "https://restapi.getui.com/v2/$appId" - masterSecret: "" #需添加 - appKey: "" #需添加 - enable: false #true启动个推推送 - diff --git a/go.mod b/go.mod index 10bc1f60a..23a71e12f 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module Open_IM +module OpenIM go 1.16 diff --git a/internal/api/auth/auth.go b/internal/api/auth/auth.go index 94c805b48..cbc67fcde 100644 --- a/internal/api/auth/auth.go +++ b/internal/api/auth/auth.go @@ -1,14 +1,14 @@ package apiAuth import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - rpc "Open_IM/pkg/proto/auth" - sdkws "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + rpc "OpenIM/pkg/proto/auth" + sdkws "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "net/http" "strings" diff --git a/internal/api/conversation/conversation.go b/internal/api/conversation/conversation.go index 251de1994..a0bf954cd 100644 --- a/internal/api/conversation/conversation.go +++ b/internal/api/conversation/conversation.go @@ -1,12 +1,12 @@ package conversation import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/log" - pbConversation "Open_IM/pkg/proto/conversation" - pbUser "Open_IM/pkg/proto/user" - "Open_IM/pkg/utils" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/log" + pbConversation "OpenIM/pkg/proto/conversation" + pbUser "OpenIM/pkg/proto/user" + "OpenIM/pkg/utils" "context" "github.com/gin-gonic/gin" "net/http" diff --git a/internal/api/friend/friend.go b/internal/api/friend/friend.go index 953ab9574..977c8eeb5 100644 --- a/internal/api/friend/friend.go +++ b/internal/api/friend/friend.go @@ -1,15 +1,15 @@ package friend //import ( -// jsonData "Open_IM/internal/utils" -// api "Open_IM/pkg/apistruct" -// "Open_IM/pkg/common/config" -// "Open_IM/pkg/common/log" -// "Open_IM/pkg/common/tokenverify" -// "Open_IM/pkg/getcdv3" -// rpc "Open_IM/pkg/proto/friend" -// sdkws "Open_IM/pkg/proto/sdkws" -// "Open_IM/pkg/utils" +// jsonData "OpenIM/internal/utils" +// api "OpenIM/pkg/apistruct" +// "OpenIM/pkg/common/config" +// "OpenIM/pkg/common/log" +// "OpenIM/pkg/common/tokenverify" +// "OpenIM/pkg/getcdv3" +// rpc "OpenIM/pkg/proto/friend" +// sdkws "OpenIM/pkg/proto/sdkws" +// "OpenIM/pkg/utils" // "context" // "github.com/gin-gonic/gin" // "net/http" diff --git a/internal/api/friend/friend1.go b/internal/api/friend/friend1.go index dc94aa210..abdabb44d 100644 --- a/internal/api/friend/friend1.go +++ b/internal/api/friend/friend1.go @@ -1,10 +1,10 @@ package friend import ( - common "Open_IM/internal/api2rpc" - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/config" - rpc "Open_IM/pkg/proto/friend" + common "OpenIM/internal/api2rpc" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/config" + rpc "OpenIM/pkg/proto/friend" "github.com/gin-gonic/gin" ) diff --git a/internal/api/group/group.go b/internal/api/group/group.go index 5cc57e2c1..32c52975f 100644 --- a/internal/api/group/group.go +++ b/internal/api/group/group.go @@ -1,16 +1,16 @@ package group //import ( -// common "Open_IM/internal/api_to_rpc" -// api "Open_IM/pkg/apistruct" -// "Open_IM/pkg/common/config" -// "Open_IM/pkg/common/constant" -// "Open_IM/pkg/common/log" -// "Open_IM/pkg/common/token_verify" -// "Open_IM/pkg/common/tracelog" -// "Open_IM/pkg/getcdv3" -// rpc "Open_IM/pkg/proto/group" -// "Open_IM/pkg/utils" +// common "OpenIM/internal/api_to_rpc" +// api "OpenIM/pkg/apistruct" +// "OpenIM/pkg/common/config" +// "OpenIM/pkg/common/constant" +// "OpenIM/pkg/common/log" +// "OpenIM/pkg/common/token_verify" +// "OpenIM/pkg/common/tracelog" +// "OpenIM/pkg/getcdv3" +// rpc "OpenIM/pkg/proto/group" +// "OpenIM/pkg/utils" // "context" // "github.com/golang/protobuf/ptypes/wrappers" // "google.golang.org/grpc" @@ -20,7 +20,7 @@ package group // "net/http" // "strings" // -// jsonData "Open_IM/internal/utils" +// jsonData "OpenIM/internal/utils" //) // @Summary 把用户踢出群组 diff --git a/internal/api/group/group_test.go b/internal/api/group/group_test.go index 24da7cb2d..9c9d7ec7e 100644 --- a/internal/api/group/group_test.go +++ b/internal/api/group/group_test.go @@ -1,8 +1,8 @@ package group import ( - "Open_IM/pkg/apistruct" - "Open_IM/pkg/proto/group" + "OpenIM/pkg/apistruct" + "OpenIM/pkg/proto/group" "context" "errors" "github.com/gin-gonic/gin" diff --git a/internal/api/group/super_group.go b/internal/api/group/super_group.go index 0dd19abd0..89744452c 100644 --- a/internal/api/group/super_group.go +++ b/internal/api/group/super_group.go @@ -1,14 +1,14 @@ package group //import ( -// jsonData "Open_IM/internal/utils" -// api "Open_IM/pkg/apistruct" -// "Open_IM/pkg/common/config" -// "Open_IM/pkg/common/log" -// "Open_IM/pkg/common/token_verify" -// "Open_IM/pkg/getcdv3" -// rpc "Open_IM/pkg/proto/group" -// "Open_IM/pkg/utils" +// jsonData "OpenIM/internal/utils" +// api "OpenIM/pkg/apistruct" +// "OpenIM/pkg/common/config" +// "OpenIM/pkg/common/log" +// "OpenIM/pkg/common/token_verify" +// "OpenIM/pkg/getcdv3" +// rpc "OpenIM/pkg/proto/group" +// "OpenIM/pkg/utils" // "context" // "github.com/gin-gonic/gin" // "net/http" diff --git a/internal/api/manage/management_chat.go b/internal/api/manage/management_chat.go index d1160fd0f..1a5c78f0f 100644 --- a/internal/api/manage/management_chat.go +++ b/internal/api/manage/management_chat.go @@ -7,14 +7,14 @@ package manage import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - pbChat "Open_IM/pkg/proto/msg" - sdkws "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + pbChat "OpenIM/pkg/proto/msg" + sdkws "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "net/http" "strings" diff --git a/internal/api/manage/management_user.go b/internal/api/manage/management_user.go index 7e1829e48..d519056ad 100644 --- a/internal/api/manage/management_user.go +++ b/internal/api/manage/management_user.go @@ -7,14 +7,14 @@ package manage import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - pbRelay "Open_IM/pkg/proto/relay" - rpc "Open_IM/pkg/proto/user" - "Open_IM/pkg/utils" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + pbRelay "OpenIM/pkg/proto/relay" + rpc "OpenIM/pkg/proto/user" + "OpenIM/pkg/utils" "context" "net/http" "strings" diff --git a/internal/api/msg/del_msg.go b/internal/api/msg/del_msg.go index e3031faf9..d2b0b44aa 100644 --- a/internal/api/msg/del_msg.go +++ b/internal/api/msg/del_msg.go @@ -1,14 +1,14 @@ package msg import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - rpc "Open_IM/pkg/proto/msg" - pbCommon "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + rpc "OpenIM/pkg/proto/msg" + pbCommon "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "github.com/gin-gonic/gin" "github.com/golang/protobuf/proto" diff --git a/internal/api/msg/extend_msg.go b/internal/api/msg/extend_msg.go index a1e4130d3..a6b1318f3 100644 --- a/internal/api/msg/extend_msg.go +++ b/internal/api/msg/extend_msg.go @@ -1,13 +1,13 @@ package msg import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - rpc "Open_IM/pkg/proto/msg" - "Open_IM/pkg/utils" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + rpc "OpenIM/pkg/proto/msg" + "OpenIM/pkg/utils" "context" "github.com/gin-gonic/gin" "net/http" diff --git a/internal/api/msg/get_max_min_seq.go b/internal/api/msg/get_max_min_seq.go index 444f82d04..8b7780129 100644 --- a/internal/api/msg/get_max_min_seq.go +++ b/internal/api/msg/get_max_min_seq.go @@ -1,11 +1,11 @@ package msg import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - pbChat "Open_IM/pkg/proto/msg" - sdkws "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + pbChat "OpenIM/pkg/proto/msg" + sdkws "OpenIM/pkg/proto/sdkws" "context" "github.com/gin-gonic/gin" "net/http" diff --git a/internal/api/msg/pull_msg.go b/internal/api/msg/pull_msg.go index 254e9b781..5893855da 100644 --- a/internal/api/msg/pull_msg.go +++ b/internal/api/msg/pull_msg.go @@ -1,12 +1,12 @@ package msg import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/proto/msg" - sdkws "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/proto/msg" + sdkws "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "github.com/gin-gonic/gin" "net/http" diff --git a/internal/api/msg/send_msg.go b/internal/api/msg/send_msg.go index a9b826c5f..a7a558097 100644 --- a/internal/api/msg/send_msg.go +++ b/internal/api/msg/send_msg.go @@ -1,10 +1,10 @@ package msg import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/log" - pbChat "Open_IM/pkg/proto/msg" - sdkws "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/log" + pbChat "OpenIM/pkg/proto/msg" + sdkws "OpenIM/pkg/proto/sdkws" "context" "github.com/gin-gonic/gin" diff --git a/internal/api/route.go b/internal/api/route.go new file mode 100644 index 000000000..3305a2d0d --- /dev/null +++ b/internal/api/route.go @@ -0,0 +1,169 @@ +package api + +import ( + "OpenIM/internal/api/auth" + "OpenIM/internal/api/conversation" + "OpenIM/internal/api/friend" + "OpenIM/internal/api/group" + "OpenIM/internal/api/manage" + "OpenIM/internal/api/msg" + "OpenIM/internal/api/third" + "OpenIM/internal/api/user" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/middleware" + "OpenIM/pkg/common/prome" + "OpenIM/pkg/common/tokenverify" + "github.com/gin-gonic/gin" + "io" + "os" +) + +func NewGinRouter() *gin.Engine { + gin.SetMode(gin.ReleaseMode) + f, _ := os.Create("../logs/api.log") + gin.DefaultWriter = io.MultiWriter(f) + // gin.SetMode(gin.DebugMode) + r := gin.New() + r.Use(gin.Recovery()) + r.Use(middleware.GinParseOperationID) + log.Info("load config: ", config.Config) + if config.Config.Prometheus.Enable { + prome.NewApiRequestCounter() + prome.NewApiRequestFailedCounter() + prome.NewApiRequestSuccessCounter() + r.Use(prome.PromeTheusMiddleware) + r.GET("/metrics", prome.PrometheusHandler()) + } + userRouterGroup := r.Group("/user") + { + userRouterGroup.POST("/update_user_info", user.UpdateUserInfo) //1 + userRouterGroup.POST("/set_global_msg_recv_opt", user.SetGlobalRecvMessageOpt) + userRouterGroup.POST("/get_users_info", user.GetUsersPublicInfo) //1 + userRouterGroup.POST("/get_self_user_info", user.GetSelfUserInfo) //1 + userRouterGroup.POST("/get_users_online_status", user.GetUsersOnlineStatus) //1 + userRouterGroup.POST("/get_users_info_from_cache", user.GetUsersInfoFromCache) + userRouterGroup.POST("/get_user_friend_from_cache", user.GetFriendIDListFromCache) + userRouterGroup.POST("/get_black_list_from_cache", user.GetBlackIDListFromCache) + userRouterGroup.POST("/get_all_users_uid", manage.GetAllUsersUid) //1 + userRouterGroup.POST("/account_check", manage.AccountCheck) //1 + // userRouterGroup.POST("/get_users_online_status", manage.GetUsersOnlineStatus) //1 + userRouterGroup.POST("/get_users", user.GetUsers) + } + ////friend routing group + friendRouterGroup := r.Group("/friend") + { + // friendRouterGroup.POST("/get_friends_info", friend.GetFriendsInfo) + friendRouterGroup.POST("/add_friend", friend.AddFriend) //1 + friendRouterGroup.POST("/delete_friend", friend.DeleteFriend) //1 + friendRouterGroup.POST("/get_friend_apply_list", friend.GetFriendApplyList) //1 + friendRouterGroup.POST("/get_self_friend_apply_list", friend.GetSelfApplyList) //1 + friendRouterGroup.POST("/get_friend_list", friend.GetFriendList) //1 + friendRouterGroup.POST("/add_friend_response", friend.AddFriendResponse) //1 + friendRouterGroup.POST("/set_friend_remark", friend.SetFriendRemark) //1 + + friendRouterGroup.POST("/add_black", friend.AddBlack) //1 + friendRouterGroup.POST("/get_black_list", friend.GetBlacklist) //1 + friendRouterGroup.POST("/remove_black", friend.RemoveBlacklist) //1 + + friendRouterGroup.POST("/import_friend", friend.ImportFriend) //1 + friendRouterGroup.POST("/is_friend", friend.IsFriend) //1 + } + //group related routing group + groupRouterGroup := r.Group("/group") + groupRouterGroup.Use(func(c *gin.Context) { + userID, err := tokenverify.ParseUserIDFromToken(c.GetHeader("token"), c.GetString("operationID")) + if err != nil { + c.String(400, err.Error()) + c.Abort() + return + } + c.Set("opUserID", userID) + c.Next() + }) + { + groupRouterGroup.POST("/create_group", group.NewCreateGroup) //1 + groupRouterGroup.POST("/set_group_info", group.NewSetGroupInfo) //1 + groupRouterGroup.POST("/join_group", group.JoinGroup) //1 + groupRouterGroup.POST("/quit_group", group.QuitGroup) //1 + groupRouterGroup.POST("/group_application_response", group.ApplicationGroupResponse) //1 + groupRouterGroup.POST("/transfer_group", group.TransferGroupOwner) //1 + groupRouterGroup.POST("/get_recv_group_applicationList", group.GetRecvGroupApplicationList) //1 + groupRouterGroup.POST("/get_user_req_group_applicationList", group.GetUserReqGroupApplicationList) + groupRouterGroup.POST("/get_groups_info", group.GetGroupsInfo) //1 + groupRouterGroup.POST("/kick_group", group.KickGroupMember) //1 + // groupRouterGroup.POST("/get_group_member_list", group.FindGroupMemberAll) //no use + groupRouterGroup.POST("/get_group_all_member_list", group.GetGroupAllMemberList) //1 + groupRouterGroup.POST("/get_group_members_info", group.GetGroupMembersInfo) //1 + groupRouterGroup.POST("/invite_user_to_group", group.InviteUserToGroup) //1 + groupRouterGroup.POST("/get_joined_group_list", group.GetJoinedGroupList) + groupRouterGroup.POST("/dismiss_group", group.DismissGroup) // + groupRouterGroup.POST("/mute_group_member", group.MuteGroupMember) + groupRouterGroup.POST("/cancel_mute_group_member", group.CancelMuteGroupMember) //MuteGroup + groupRouterGroup.POST("/mute_group", group.MuteGroup) + groupRouterGroup.POST("/cancel_mute_group", group.CancelMuteGroup) + groupRouterGroup.POST("/set_group_member_nickname", group.SetGroupMemberNickname) + groupRouterGroup.POST("/set_group_member_info", group.SetGroupMemberInfo) + groupRouterGroup.POST("/get_group_abstract_info", group.GetGroupAbstractInfo) + //groupRouterGroup.POST("/get_group_all_member_list_by_split", group.GetGroupAllMemberListBySplit) + } + superGroupRouterGroup := r.Group("/super_group") + { + superGroupRouterGroup.POST("/get_joined_group_list", group.GetJoinedSuperGroupList) + superGroupRouterGroup.POST("/get_groups_info", group.GetSuperGroupsInfo) + } + ////certificate + authRouterGroup := r.Group("/auth") + { + authRouterGroup.POST("/user_register", apiAuth.UserRegister) //1 + authRouterGroup.POST("/user_token", apiAuth.UserToken) //1 + authRouterGroup.POST("/parse_token", apiAuth.ParseToken) //1 + authRouterGroup.POST("/force_logout", apiAuth.ForceLogout) //1 + } + ////Third service + thirdGroup := r.Group("/third") + { + thirdGroup.POST("/tencent_cloud_storage_credential", third.TencentCloudStorageCredential) + thirdGroup.POST("/ali_oss_credential", third.AliOSSCredential) + thirdGroup.POST("/minio_storage_credential", third.MinioStorageCredential) + thirdGroup.POST("/minio_upload", third.MinioUploadFile) + thirdGroup.POST("/upload_update_app", third.UploadUpdateApp) + thirdGroup.POST("/get_download_url", third.GetDownloadURL) + thirdGroup.POST("/get_rtc_invitation_info", third.GetRTCInvitationInfo) + thirdGroup.POST("/get_rtc_invitation_start_app", third.GetRTCInvitationInfoStartApp) + thirdGroup.POST("/fcm_update_token", third.FcmUpdateToken) + thirdGroup.POST("/aws_storage_credential", third.AwsStorageCredential) + thirdGroup.POST("/set_app_badge", third.SetAppBadge) + } + ////Message + chatGroup := r.Group("/msg") + { + chatGroup.POST("/newest_seq", msg.GetSeq) + chatGroup.POST("/send_msg", msg.SendMsg) + chatGroup.POST("/pull_msg_by_seq", msg.PullMsgBySeqList) + chatGroup.POST("/del_msg", msg.DelMsg) + chatGroup.POST("/del_super_group_msg", msg.DelSuperGroupMsg) + chatGroup.POST("/clear_msg", msg.ClearMsg) + chatGroup.POST("/manage_send_msg", manage.ManagementSendMsg) + chatGroup.POST("/batch_send_msg", manage.ManagementBatchSendMsg) + chatGroup.POST("/check_msg_is_send_success", manage.CheckMsgIsSendSuccess) + chatGroup.POST("/set_msg_min_seq", msg.SetMsgMinSeq) + + chatGroup.POST("/set_message_reaction_extensions", msg.SetMessageReactionExtensions) + chatGroup.POST("/get_message_list_reaction_extensions", msg.GetMessageListReactionExtensions) + chatGroup.POST("/add_message_reaction_extensions", msg.AddMessageReactionExtensions) + chatGroup.POST("/delete_message_reaction_extensions", msg.DeleteMessageReactionExtensions) + } + ////Conversation + conversationGroup := r.Group("/conversation") + { //1 + conversationGroup.POST("/get_all_conversations", conversation.GetAllConversations) + conversationGroup.POST("/get_conversation", conversation.GetConversation) + conversationGroup.POST("/get_conversations", conversation.GetConversations) + conversationGroup.POST("/set_conversation", conversation.SetConversation) + conversationGroup.POST("/batch_set_conversation", conversation.BatchSetConversations) + conversationGroup.POST("/set_recv_msg_opt", conversation.SetRecvMsgOpt) + conversationGroup.POST("/modify_conversation_field", conversation.ModifyConversationField) + } + return r +} diff --git a/internal/api/third/ali_oss_credential.go b/internal/api/third/ali_oss_credential.go index 0dce20690..af1af9460 100644 --- a/internal/api/third/ali_oss_credential.go +++ b/internal/api/third/ali_oss_credential.go @@ -1,11 +1,11 @@ -package apiThird +package third import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" "fmt" openapi "github.com/alibabacloud-go/darabonba-openapi/client" sts20150401 "github.com/alibabacloud-go/sts-20150401/client" diff --git a/internal/api/third/aws_storage_credential.go b/internal/api/third/aws_storage_credential.go index 5e4127155..5524dd37e 100644 --- a/internal/api/third/aws_storage_credential.go +++ b/internal/api/third/aws_storage_credential.go @@ -1,12 +1,12 @@ -package apiThird +package third import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/utils" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/utils" "context" "net/http" diff --git a/internal/api/third/fcm_update_token.go b/internal/api/third/fcm_update_token.go index b6a31b96a..c777d15ec 100644 --- a/internal/api/third/fcm_update_token.go +++ b/internal/api/third/fcm_update_token.go @@ -1,10 +1,10 @@ -package apiThird +package third import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/utils" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/utils" "net/http" "github.com/gin-gonic/gin" diff --git a/internal/api/third/minio_init.go b/internal/api/third/minio_init.go index b1088df50..95bdacd60 100644 --- a/internal/api/third/minio_init.go +++ b/internal/api/third/minio_init.go @@ -1,9 +1,9 @@ -package apiThird +package third import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/log" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/log" + "OpenIM/pkg/utils" "context" "fmt" "github.com/minio/minio-go/v7" diff --git a/internal/api/third/minio_storage_credential.go b/internal/api/third/minio_storage_credential.go index b8f610b5c..9a5cf1020 100644 --- a/internal/api/third/minio_storage_credential.go +++ b/internal/api/third/minio_storage_credential.go @@ -1,13 +1,13 @@ -package apiThird +package third import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - _ "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/utils" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + _ "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/utils" "context" "github.com/gin-gonic/gin" "github.com/minio/minio-go/v7" diff --git a/internal/api/third/rtc.go b/internal/api/third/rtc.go index 1a4656197..977841eb1 100644 --- a/internal/api/third/rtc.go +++ b/internal/api/third/rtc.go @@ -1,10 +1,10 @@ -package apiThird +package third import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/utils" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/utils" "github.com/gin-gonic/gin" "net/http" ) diff --git a/internal/api/third/set_app_badge.go b/internal/api/third/set_app_badge.go index a6349173c..97df98a27 100644 --- a/internal/api/third/set_app_badge.go +++ b/internal/api/third/set_app_badge.go @@ -1,10 +1,10 @@ -package apiThird +package third import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/utils" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/utils" "github.com/gin-gonic/gin" "net/http" ) diff --git a/internal/api/third/tencent_cloud_storage_credential.go b/internal/api/third/tencent_cloud_storage_credential.go index c008f8590..bc17a6122 100644 --- a/internal/api/third/tencent_cloud_storage_credential.go +++ b/internal/api/third/tencent_cloud_storage_credential.go @@ -1,11 +1,11 @@ -package apiThird +package third import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" "github.com/fatih/structs" //"github.com/fatih/structs" diff --git a/internal/api/user/user.go b/internal/api/user/user.go index e8d3a157c..22c464612 100644 --- a/internal/api/user/user.go +++ b/internal/api/user/user.go @@ -1,16 +1,16 @@ package user import ( - api "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - pbRelay "Open_IM/pkg/proto/relay" - sdkws "Open_IM/pkg/proto/sdkws" - rpc "Open_IM/pkg/proto/user" - "Open_IM/pkg/utils" - jsonData "Open_IM/pkg/utils" + api "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + pbRelay "OpenIM/pkg/proto/relay" + sdkws "OpenIM/pkg/proto/sdkws" + rpc "OpenIM/pkg/proto/user" + "OpenIM/pkg/utils" + jsonData "OpenIM/pkg/utils" "context" "net/http" "strings" diff --git a/internal/api2rpc/api.go b/internal/api2rpc/api.go index cfa1842a6..827cd051e 100644 --- a/internal/api2rpc/api.go +++ b/internal/api2rpc/api.go @@ -1,10 +1,10 @@ package common import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tracelog" - utils2 "Open_IM/pkg/utils" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tracelog" + utils2 "OpenIM/pkg/utils" "context" "fmt" "github.com/gin-gonic/gin" diff --git a/internal/common/check/access.go b/internal/common/check/access.go index bdd42c8aa..1d9500a27 100644 --- a/internal/common/check/access.go +++ b/internal/common/check/access.go @@ -1,7 +1,7 @@ package check import ( - "Open_IM/pkg/common/tokenverify" + "OpenIM/pkg/common/tokenverify" "context" ) diff --git a/internal/common/check/black.go b/internal/common/check/black.go index 429aa80f6..7e68a2915 100644 --- a/internal/common/check/black.go +++ b/internal/common/check/black.go @@ -1,7 +1,7 @@ package check import ( - discoveryRegistry "Open_IM/pkg/discoveryregistry" + discoveryRegistry "OpenIM/pkg/discoveryregistry" "context" ) diff --git a/internal/common/check/conversation.go b/internal/common/check/conversation.go index a5413d1e2..a74829193 100644 --- a/internal/common/check/conversation.go +++ b/internal/common/check/conversation.go @@ -1,10 +1,10 @@ package check import ( - "Open_IM/pkg/common/config" - discoveryRegistry "Open_IM/pkg/discoveryregistry" - "Open_IM/pkg/proto/conversation" - pbConversation "Open_IM/pkg/proto/conversation" + "OpenIM/pkg/common/config" + discoveryRegistry "OpenIM/pkg/discoveryregistry" + "OpenIM/pkg/proto/conversation" + pbConversation "OpenIM/pkg/proto/conversation" "context" "google.golang.org/grpc" ) diff --git a/internal/common/check/friend.go b/internal/common/check/friend.go index 622b4fd9d..044e07437 100644 --- a/internal/common/check/friend.go +++ b/internal/common/check/friend.go @@ -1,11 +1,11 @@ package check import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - discoveryRegistry "Open_IM/pkg/discoveryregistry" - "Open_IM/pkg/proto/friend" - sdkws "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + discoveryRegistry "OpenIM/pkg/discoveryregistry" + "OpenIM/pkg/proto/friend" + sdkws "OpenIM/pkg/proto/sdkws" "context" "google.golang.org/grpc" ) diff --git a/internal/common/check/group.go b/internal/common/check/group.go index 89a094e0f..c36ad2c3a 100644 --- a/internal/common/check/group.go +++ b/internal/common/check/group.go @@ -1,12 +1,12 @@ package check import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - discoveryRegistry "Open_IM/pkg/discoveryregistry" - "Open_IM/pkg/proto/group" - sdkws "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + discoveryRegistry "OpenIM/pkg/discoveryregistry" + "OpenIM/pkg/proto/group" + sdkws "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "google.golang.org/grpc" "strings" diff --git a/internal/common/check/msg.go b/internal/common/check/msg.go index 06dd82c3e..e9c5a17ec 100644 --- a/internal/common/check/msg.go +++ b/internal/common/check/msg.go @@ -1,10 +1,10 @@ package check import ( - "Open_IM/pkg/common/config" - discoveryRegistry "Open_IM/pkg/discoveryregistry" - "Open_IM/pkg/proto/msg" - "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/config" + discoveryRegistry "OpenIM/pkg/discoveryregistry" + "OpenIM/pkg/proto/msg" + "OpenIM/pkg/proto/sdkws" "context" "google.golang.org/grpc" ) diff --git a/internal/common/check/user.go b/internal/common/check/user.go index 66b2a8ce9..6a487ad6a 100644 --- a/internal/common/check/user.go +++ b/internal/common/check/user.go @@ -1,12 +1,12 @@ package check import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - discoveryRegistry "Open_IM/pkg/discoveryregistry" - sdkws "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/proto/user" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + discoveryRegistry "OpenIM/pkg/discoveryregistry" + sdkws "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/proto/user" + "OpenIM/pkg/utils" "context" "google.golang.org/grpc" "strings" diff --git a/internal/common/convert/convert.go b/internal/common/convert/convert.go index 861027167..a965e519d 100644 --- a/internal/common/convert/convert.go +++ b/internal/common/convert/convert.go @@ -1,11 +1,11 @@ package convert import ( - "Open_IM/internal/common/check" - "Open_IM/pkg/common/db/table/relation" - discoveryRegistry "Open_IM/pkg/discoveryregistry" - sdk "Open_IM/pkg/proto/sdkws" - utils2 "Open_IM/pkg/utils" + "OpenIM/internal/common/check" + "OpenIM/pkg/common/db/table/relation" + discoveryRegistry "OpenIM/pkg/discoveryregistry" + sdk "OpenIM/pkg/proto/sdkws" + utils2 "OpenIM/pkg/utils" "context" utils "github.com/OpenIMSDK/open_utils" "time" diff --git a/internal/common/notification/c.go b/internal/common/notification/c.go index fe765c41f..57d233dd0 100644 --- a/internal/common/notification/c.go +++ b/internal/common/notification/c.go @@ -1,14 +1,14 @@ package notification import ( - "Open_IM/internal/common/check" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/tracelog" - discoveryRegistry "Open_IM/pkg/discoveryregistry" - "Open_IM/pkg/proto/msg" - "Open_IM/pkg/proto/sdkws" - utils2 "Open_IM/pkg/utils" + "OpenIM/internal/common/check" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/tracelog" + discoveryRegistry "OpenIM/pkg/discoveryregistry" + "OpenIM/pkg/proto/msg" + "OpenIM/pkg/proto/sdkws" + utils2 "OpenIM/pkg/utils" "context" utils "github.com/OpenIMSDK/open_utils" ) @@ -300,6 +300,5 @@ func (c *Check) Notification(ctx context.Context, notificationMsg *NotificationM offlineInfo.Ex = ex msg.OfflinePushInfo = &offlineInfo req.MsgData = &msg - _, err = c.Msg.SendMsg(ctx, &req) } diff --git a/internal/common/notification/conversation.go b/internal/common/notification/conversation.go index a7506779a..bcc8bb830 100644 --- a/internal/common/notification/conversation.go +++ b/internal/common/notification/conversation.go @@ -1,9 +1,9 @@ package notification import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - sdkws "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + sdkws "OpenIM/pkg/proto/sdkws" "context" "github.com/golang/protobuf/jsonpb" "github.com/golang/protobuf/proto" diff --git a/internal/common/notification/extend_msg.go b/internal/common/notification/extend_msg.go index 40416f30d..e1478c0d4 100644 --- a/internal/common/notification/extend_msg.go +++ b/internal/common/notification/extend_msg.go @@ -1,12 +1,12 @@ package notification import ( - "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/proto/msg" - sdkws "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/proto/msg" + sdkws "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" ) diff --git a/internal/common/notification/friend.go b/internal/common/notification/friend.go index e4d2568cf..1cbb8d5df 100644 --- a/internal/common/notification/friend.go +++ b/internal/common/notification/friend.go @@ -1,10 +1,10 @@ package notification import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - pbFriend "Open_IM/pkg/proto/friend" - "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + pbFriend "OpenIM/pkg/proto/friend" + "OpenIM/pkg/proto/sdkws" "context" "github.com/golang/protobuf/jsonpb" "github.com/golang/protobuf/proto" diff --git a/internal/common/notification/group.go b/internal/common/notification/group.go index e340ed3b7..4c82c01d7 100644 --- a/internal/common/notification/group.go +++ b/internal/common/notification/group.go @@ -1,14 +1,14 @@ package notification import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/common/tracelog" - pbGroup "Open_IM/pkg/proto/group" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/common/tracelog" + pbGroup "OpenIM/pkg/proto/group" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "github.com/golang/protobuf/jsonpb" "github.com/golang/protobuf/proto" diff --git a/internal/common/notification/msg.go b/internal/common/notification/msg.go index 8eb6c0213..9e616c593 100644 --- a/internal/common/notification/msg.go +++ b/internal/common/notification/msg.go @@ -1,8 +1,8 @@ package notification import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/proto/sdkws" "context" "github.com/golang/protobuf/jsonpb" "github.com/golang/protobuf/proto" diff --git a/internal/common/notification/super_group.go b/internal/common/notification/super_group.go index 1e9f18a90..7899e1ac1 100644 --- a/internal/common/notification/super_group.go +++ b/internal/common/notification/super_group.go @@ -1,7 +1,7 @@ package notification import ( - "Open_IM/pkg/common/constant" + "OpenIM/pkg/common/constant" "context" //"github.com/golang/protobuf/jsonpb" //"github.com/golang/protobuf/proto" diff --git a/internal/common/notification/user.go b/internal/common/notification/user.go index 01d5fcee8..8b7f0ab78 100644 --- a/internal/common/notification/user.go +++ b/internal/common/notification/user.go @@ -1,8 +1,8 @@ package notification import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/proto/sdkws" "context" ) diff --git a/internal/common/rpcserver/register.go b/internal/common/rpcserver/register.go index bc9e25fd7..367e26962 100644 --- a/internal/common/rpcserver/register.go +++ b/internal/common/rpcserver/register.go @@ -1,10 +1,10 @@ package rpcserver import ( - "Open_IM/internal/common/network" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - discoveryRegistry "Open_IM/pkg/discoveryregistry" + "OpenIM/internal/common/network" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + discoveryRegistry "OpenIM/pkg/discoveryregistry" "github.com/OpenIMSDK/openKeeper" "net" "strconv" diff --git a/internal/msggateway/batch_push.go b/internal/msggateway/batch_push.go index fb8fc89fe..d4f0c3f4d 100644 --- a/internal/msggateway/batch_push.go +++ b/internal/msggateway/batch_push.go @@ -1,11 +1,11 @@ package msggateway import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/log" - pbChat "Open_IM/pkg/proto/msg" - sdkws "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/log" + pbChat "OpenIM/pkg/proto/msg" + sdkws "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "strings" ) diff --git a/internal/msggateway/callback.go b/internal/msggateway/callback.go index f284835a8..0231968b0 100644 --- a/internal/msggateway/callback.go +++ b/internal/msggateway/callback.go @@ -1,11 +1,11 @@ package msggateway import ( - cbapi "Open_IM/pkg/callbackstruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/http" - "Open_IM/pkg/common/tracelog" + cbapi "OpenIM/pkg/callbackstruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/http" + "OpenIM/pkg/common/tracelog" "context" "time" ) diff --git a/internal/msggateway/init.go b/internal/msggateway/init.go index 61bdee08b..7798a55eb 100644 --- a/internal/msggateway/init.go +++ b/internal/msggateway/init.go @@ -1,14 +1,14 @@ package msggateway import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" - "Open_IM/pkg/statistics" + "OpenIM/pkg/statistics" "fmt" "sync" - prome "Open_IM/pkg/common/prome" + prome "OpenIM/pkg/common/prome" "github.com/go-playground/validator/v10" ) diff --git a/internal/msggateway/logic.go b/internal/msggateway/logic.go index 0ca3ab439..3533951de 100644 --- a/internal/msggateway/logic.go +++ b/internal/msggateway/logic.go @@ -1,15 +1,15 @@ package msggateway import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/prome" - pbChat "Open_IM/pkg/proto/msg" - push "Open_IM/pkg/proto/push" - pbRtc "Open_IM/pkg/proto/rtc" - sdkws "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/prome" + pbChat "OpenIM/pkg/proto/msg" + push "OpenIM/pkg/proto/push" + pbRtc "OpenIM/pkg/proto/rtc" + sdkws "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "bytes" "context" "encoding/gob" diff --git a/internal/msggateway/new/client.go b/internal/msggateway/new/client.go index 85dd68a00..5af2d4f1c 100644 --- a/internal/msggateway/new/client.go +++ b/internal/msggateway/new/client.go @@ -1,8 +1,8 @@ package new import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/utils" "context" "errors" "fmt" diff --git a/internal/msggateway/new/compressor.go b/internal/msggateway/new/compressor.go index c36e381d3..79b5a5e39 100644 --- a/internal/msggateway/new/compressor.go +++ b/internal/msggateway/new/compressor.go @@ -1,7 +1,7 @@ package new import ( - "Open_IM/pkg/utils" + "OpenIM/pkg/utils" "bytes" "compress/gzip" "io/ioutil" diff --git a/internal/msggateway/new/context.go b/internal/msggateway/new/context.go index 39b44e0e8..678f3e6a2 100644 --- a/internal/msggateway/new/context.go +++ b/internal/msggateway/new/context.go @@ -1,7 +1,7 @@ package new import ( - "Open_IM/pkg/utils" + "OpenIM/pkg/utils" "net/http" "strconv" ) diff --git a/internal/msggateway/new/encoder.go b/internal/msggateway/new/encoder.go index bbc3d5c86..30530b541 100644 --- a/internal/msggateway/new/encoder.go +++ b/internal/msggateway/new/encoder.go @@ -1,7 +1,7 @@ package new import ( - "Open_IM/pkg/utils" + "OpenIM/pkg/utils" "bytes" "encoding/gob" ) diff --git a/internal/msggateway/new/http_error.go b/internal/msggateway/new/http_error.go index 8686d78d7..fb391cd23 100644 --- a/internal/msggateway/new/http_error.go +++ b/internal/msggateway/new/http_error.go @@ -1,7 +1,7 @@ package new import ( - "Open_IM/pkg/common/constant" + "OpenIM/pkg/common/constant" "errors" "net/http" ) diff --git a/internal/msggateway/new/message_handler.go b/internal/msggateway/new/message_handler.go index f75e16c05..08bf11e57 100644 --- a/internal/msggateway/new/message_handler.go +++ b/internal/msggateway/new/message_handler.go @@ -1,10 +1,10 @@ package new import ( - "Open_IM/internal/common/notification" - "Open_IM/pkg/proto/msg" - pbRtc "Open_IM/pkg/proto/rtc" - "Open_IM/pkg/proto/sdkws" + "OpenIM/internal/common/notification" + "OpenIM/pkg/proto/msg" + pbRtc "OpenIM/pkg/proto/rtc" + "OpenIM/pkg/proto/sdkws" "context" "github.com/go-playground/validator/v10" "github.com/golang/protobuf/proto" diff --git a/internal/msggateway/new/n_ws_server.go b/internal/msggateway/new/n_ws_server.go index 83d7a31e5..676b9ee75 100644 --- a/internal/msggateway/new/n_ws_server.go +++ b/internal/msggateway/new/n_ws_server.go @@ -1,9 +1,9 @@ package new import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/utils" "errors" "fmt" "github.com/go-playground/validator/v10" diff --git a/internal/msggateway/relay_rpc_server.go b/internal/msggateway/relay_rpc_server.go index 6dbaf90a6..2cea2ebcc 100644 --- a/internal/msggateway/relay_rpc_server.go +++ b/internal/msggateway/relay_rpc_server.go @@ -1,14 +1,14 @@ package msggateway import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - prome "Open_IM/pkg/common/prome" - "Open_IM/pkg/common/tokenverify" - pbRelay "Open_IM/pkg/proto/relay" - sdkws "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + prome "OpenIM/pkg/common/prome" + "OpenIM/pkg/common/tokenverify" + pbRelay "OpenIM/pkg/proto/relay" + sdkws "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "bytes" "context" "encoding/gob" diff --git a/internal/msggateway/validate.go b/internal/msggateway/validate.go index 72fec3d53..70ca395c5 100644 --- a/internal/msggateway/validate.go +++ b/internal/msggateway/validate.go @@ -1,16 +1,16 @@ /* ** description(""). -** copyright('Open_IM,www.Open_IM.io'). +** copyright('OpenIM,www.OpenIM.io'). ** author("fg,Gordon@tuoyun.net"). ** time(2021/5/21 15:29). */ package msggateway import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - pbRtc "Open_IM/pkg/proto/rtc" - sdkws "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + pbRtc "OpenIM/pkg/proto/rtc" + sdkws "OpenIM/pkg/proto/sdkws" "github.com/golang/protobuf/proto" ) diff --git a/internal/msggateway/ws_server.go b/internal/msggateway/ws_server.go index 003a3b0e1..6adad24fe 100644 --- a/internal/msggateway/ws_server.go +++ b/internal/msggateway/ws_server.go @@ -1,13 +1,13 @@ package msggateway import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - prome "Open_IM/pkg/common/prome" - "Open_IM/pkg/common/tokenverify" - pbRelay "Open_IM/pkg/proto/relay" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + prome "OpenIM/pkg/common/prome" + "OpenIM/pkg/common/tokenverify" + pbRelay "OpenIM/pkg/proto/relay" + "OpenIM/pkg/utils" "bytes" "compress/gzip" "context" diff --git a/internal/msgtransfer/init.go b/internal/msgtransfer/init.go index a94494f9b..46fc1b585 100644 --- a/internal/msgtransfer/init.go +++ b/internal/msgtransfer/init.go @@ -1,8 +1,8 @@ package msgtransfer import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/prome" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/prome" "fmt" ) diff --git a/internal/msgtransfer/modify_msg_handler.go b/internal/msgtransfer/modify_msg_handler.go index 31b013115..4da679499 100644 --- a/internal/msgtransfer/modify_msg_handler.go +++ b/internal/msgtransfer/modify_msg_handler.go @@ -1,18 +1,18 @@ package msgtransfer import ( - "Open_IM/pkg/apistruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" - "Open_IM/pkg/common/db/controller" - unRelationTb "Open_IM/pkg/common/db/table/unrelation" - kfk "Open_IM/pkg/common/kafka" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tracelog" - pbMsg "Open_IM/pkg/proto/msg" - sdkws "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/apistruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" + "OpenIM/pkg/common/db/controller" + unRelationTb "OpenIM/pkg/common/db/table/unrelation" + kfk "OpenIM/pkg/common/kafka" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tracelog" + pbMsg "OpenIM/pkg/proto/msg" + sdkws "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "encoding/json" "github.com/Shopify/sarama" diff --git a/internal/msgtransfer/online_history_msg_handler.go b/internal/msgtransfer/online_history_msg_handler.go index 03d0173ff..5146feb13 100644 --- a/internal/msgtransfer/online_history_msg_handler.go +++ b/internal/msgtransfer/online_history_msg_handler.go @@ -1,17 +1,17 @@ package msgtransfer import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" - "Open_IM/pkg/common/db/controller" - "Open_IM/pkg/common/kafka" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tracelog" - pbMsg "Open_IM/pkg/proto/msg" - pbPush "Open_IM/pkg/proto/push" - "Open_IM/pkg/statistics" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" + "OpenIM/pkg/common/db/controller" + "OpenIM/pkg/common/kafka" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tracelog" + pbMsg "OpenIM/pkg/proto/msg" + pbPush "OpenIM/pkg/proto/push" + "OpenIM/pkg/statistics" + "OpenIM/pkg/utils" "context" "fmt" "github.com/Shopify/sarama" diff --git a/internal/msgtransfer/online_msg_to_mongo_handler.go b/internal/msgtransfer/online_msg_to_mongo_handler.go index 974dd0310..ea45c0342 100644 --- a/internal/msgtransfer/online_msg_to_mongo_handler.go +++ b/internal/msgtransfer/online_msg_to_mongo_handler.go @@ -1,16 +1,16 @@ package msgtransfer import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" - "Open_IM/pkg/common/db/controller" - kfk "Open_IM/pkg/common/kafka" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tracelog" - pbMsg "Open_IM/pkg/proto/msg" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" + "OpenIM/pkg/common/db/controller" + kfk "OpenIM/pkg/common/kafka" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tracelog" + pbMsg "OpenIM/pkg/proto/msg" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "github.com/Shopify/sarama" "github.com/golang/protobuf/proto" diff --git a/internal/msgtransfer/persistent_msg_handler.go b/internal/msgtransfer/persistent_msg_handler.go index 3066f6079..65634ba7e 100644 --- a/internal/msgtransfer/persistent_msg_handler.go +++ b/internal/msgtransfer/persistent_msg_handler.go @@ -7,13 +7,13 @@ package msgtransfer import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/controller" - kfk "Open_IM/pkg/common/kafka" - "Open_IM/pkg/common/log" - pbMsg "Open_IM/pkg/proto/msg" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/controller" + kfk "OpenIM/pkg/common/kafka" + "OpenIM/pkg/common/log" + pbMsg "OpenIM/pkg/proto/msg" + "OpenIM/pkg/utils" "github.com/Shopify/sarama" "github.com/golang/protobuf/proto" diff --git a/internal/push/callback.go b/internal/push/callback.go index d293b95df..1626a1fa1 100644 --- a/internal/push/callback.go +++ b/internal/push/callback.go @@ -1,13 +1,13 @@ package push import ( - "Open_IM/pkg/callbackstruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/http" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/callbackstruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/http" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" ) diff --git a/internal/push/fcm/push.go b/internal/push/fcm/push.go index fcab72f29..1a8617c3b 100644 --- a/internal/push/fcm/push.go +++ b/internal/push/fcm/push.go @@ -1,10 +1,10 @@ package fcm import ( - "Open_IM/internal/push" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" + "OpenIM/internal/push" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" "context" firebase "firebase.google.com/go" "firebase.google.com/go/messaging" diff --git a/internal/push/fcm/push_test.go b/internal/push/fcm/push_test.go index 4be39b685..0df2b45da 100644 --- a/internal/push/fcm/push_test.go +++ b/internal/push/fcm/push_test.go @@ -1,8 +1,8 @@ package fcm import ( - "Open_IM/internal/push" - "Open_IM/pkg/common/db/cache" + "OpenIM/internal/push" + "OpenIM/pkg/common/db/cache" "context" "github.com/stretchr/testify/assert" "testing" diff --git a/internal/push/getui/body.go b/internal/push/getui/body.go index 713b01cd0..c1c1be8a3 100644 --- a/internal/push/getui/body.go +++ b/internal/push/getui/body.go @@ -1,7 +1,7 @@ package getui import ( - "Open_IM/pkg/common/config" + "OpenIM/pkg/common/config" "fmt" ) diff --git a/internal/push/getui/push.go b/internal/push/getui/push.go index 5827a2447..5010cb97e 100644 --- a/internal/push/getui/push.go +++ b/internal/push/getui/push.go @@ -1,17 +1,17 @@ package getui import ( - "Open_IM/internal/push" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/db/cache" - http2 "Open_IM/pkg/common/http" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils/splitter" + "OpenIM/internal/push" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/db/cache" + http2 "OpenIM/pkg/common/http" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils/splitter" "github.com/go-redis/redis/v8" "sync" - "Open_IM/pkg/utils" + "OpenIM/pkg/utils" "context" "crypto/sha256" "encoding/hex" diff --git a/internal/push/init.go b/internal/push/init.go index 60b9dd612..090b24b5d 100644 --- a/internal/push/init.go +++ b/internal/push/init.go @@ -7,14 +7,14 @@ package push import ( - fcm "Open_IM/internal/push/fcm" - "Open_IM/internal/push/getui" - jpush "Open_IM/internal/push/jpush" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" - "Open_IM/pkg/common/prome" - "Open_IM/pkg/statistics" + fcm "OpenIM/internal/push/fcm" + "OpenIM/internal/push/getui" + jpush "OpenIM/internal/push/jpush" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" + "OpenIM/pkg/common/prome" + "OpenIM/pkg/statistics" "fmt" ) diff --git a/internal/push/jpush/body/notification.go b/internal/push/jpush/body/notification.go index 72794793d..ddf2176e3 100644 --- a/internal/push/jpush/body/notification.go +++ b/internal/push/jpush/body/notification.go @@ -1,7 +1,7 @@ package body import ( - "Open_IM/pkg/common/config" + "OpenIM/pkg/common/config" ) type Notification struct { diff --git a/internal/push/jpush/body/platform.go b/internal/push/jpush/body/platform.go index 7b8ac255f..a9402ecfb 100644 --- a/internal/push/jpush/body/platform.go +++ b/internal/push/jpush/body/platform.go @@ -1,7 +1,7 @@ package body import ( - "Open_IM/pkg/common/constant" + "OpenIM/pkg/common/constant" "errors" ) diff --git a/internal/push/jpush/push.go b/internal/push/jpush/push.go index 2d4ecb9f2..a06217ecc 100644 --- a/internal/push/jpush/push.go +++ b/internal/push/jpush/push.go @@ -1,10 +1,10 @@ package push import ( - "Open_IM/internal/push" - "Open_IM/internal/push/jpush/body" - "Open_IM/pkg/common/config" - http2 "Open_IM/pkg/common/http" + "OpenIM/internal/push" + "OpenIM/internal/push/jpush/body" + "OpenIM/pkg/common/config" + http2 "OpenIM/pkg/common/http" "context" "encoding/base64" "fmt" diff --git a/internal/push/push_handler.go b/internal/push/push_handler.go index b49466b01..c424a94dd 100644 --- a/internal/push/push_handler.go +++ b/internal/push/push_handler.go @@ -1,20 +1,20 @@ /* ** description(""). -** copyright('Open_IM,www.Open_IM.io'). +** copyright('OpenIM,www.OpenIM.io'). ** author("fg,Gordon@tuoyun.net"). ** time(2021/5/13 10:33). */ package push import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - kfk "Open_IM/pkg/common/kafka" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tracelog" - pbChat "Open_IM/pkg/proto/msg" - pbPush "Open_IM/pkg/proto/push" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + kfk "OpenIM/pkg/common/kafka" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tracelog" + pbChat "OpenIM/pkg/proto/msg" + pbPush "OpenIM/pkg/proto/push" + "OpenIM/pkg/utils" "context" "github.com/Shopify/sarama" "github.com/golang/protobuf/proto" diff --git a/internal/push/push_rpc_server.go b/internal/push/push_rpc_server.go index a17df5291..080377305 100644 --- a/internal/push/push_rpc_server.go +++ b/internal/push/push_rpc_server.go @@ -1,14 +1,14 @@ package push import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" - "Open_IM/pkg/common/db/controller" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/prome" - pbPush "Open_IM/pkg/proto/push" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" + "OpenIM/pkg/common/db/controller" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/prome" + pbPush "OpenIM/pkg/proto/push" + "OpenIM/pkg/utils" "context" "net" "strconv" diff --git a/internal/push/push_to_client.go b/internal/push/push_to_client.go index 5e72f490b..53b05b572 100644 --- a/internal/push/push_to_client.go +++ b/internal/push/push_to_client.go @@ -7,18 +7,18 @@ package push import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" - "Open_IM/pkg/common/db/localcache" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/prome" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/discoveryregistry" - msggateway "Open_IM/pkg/proto/msggateway" - pbRtc "Open_IM/pkg/proto/rtc" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" + "OpenIM/pkg/common/db/localcache" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/prome" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/discoveryregistry" + msggateway "OpenIM/pkg/proto/msggateway" + pbRtc "OpenIM/pkg/proto/rtc" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "errors" "github.com/golang/protobuf/proto" diff --git a/internal/rpc/auth/auth.go b/internal/rpc/auth/auth.go index e3a3bea04..bf26f3ca1 100644 --- a/internal/rpc/auth/auth.go +++ b/internal/rpc/auth/auth.go @@ -1,20 +1,20 @@ package auth import ( - "Open_IM/internal/common/check" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" - "Open_IM/pkg/common/db/controller" - "Open_IM/pkg/common/db/relation" - relationTb "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/common/tracelog" - discoveryRegistry "Open_IM/pkg/discoveryregistry" - pbAuth "Open_IM/pkg/proto/auth" - pbRelay "Open_IM/pkg/proto/relay" - "Open_IM/pkg/utils" + "OpenIM/internal/common/check" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" + "OpenIM/pkg/common/db/controller" + "OpenIM/pkg/common/db/relation" + relationTb "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/common/tracelog" + discoveryRegistry "OpenIM/pkg/discoveryregistry" + pbAuth "OpenIM/pkg/proto/auth" + pbRelay "OpenIM/pkg/proto/relay" + "OpenIM/pkg/utils" "context" "github.com/OpenIMSDK/openKeeper" "google.golang.org/grpc" diff --git a/internal/rpc/conversation/conversaion.go b/internal/rpc/conversation/conversaion.go index 5ad7a432f..6c04fe637 100644 --- a/internal/rpc/conversation/conversaion.go +++ b/internal/rpc/conversation/conversaion.go @@ -1,16 +1,16 @@ package conversation import ( - "Open_IM/internal/common/check" - "Open_IM/internal/common/notification" - "Open_IM/internal/tx" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" - "Open_IM/pkg/common/db/controller" - "Open_IM/pkg/common/db/relation" - tableRelation "Open_IM/pkg/common/db/table/relation" - pbConversation "Open_IM/pkg/proto/conversation" - "Open_IM/pkg/utils" + "OpenIM/internal/common/check" + "OpenIM/internal/common/notification" + "OpenIM/internal/tx" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" + "OpenIM/pkg/common/db/controller" + "OpenIM/pkg/common/db/relation" + tableRelation "OpenIM/pkg/common/db/table/relation" + pbConversation "OpenIM/pkg/proto/conversation" + "OpenIM/pkg/utils" "context" "github.com/OpenIMSDK/openKeeper" "github.com/dtm-labs/rockscache" diff --git a/internal/rpc/friend/black.go b/internal/rpc/friend/black.go index 0c832ad5e..5785f6531 100644 --- a/internal/rpc/friend/black.go +++ b/internal/rpc/friend/black.go @@ -1,11 +1,11 @@ package friend import ( - "Open_IM/internal/common/convert" - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/common/tracelog" - pbFriend "Open_IM/pkg/proto/friend" + "OpenIM/internal/common/convert" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/common/tracelog" + pbFriend "OpenIM/pkg/proto/friend" "context" ) diff --git a/internal/rpc/friend/callback.go b/internal/rpc/friend/callback.go index 14df737a1..c2654271f 100644 --- a/internal/rpc/friend/callback.go +++ b/internal/rpc/friend/callback.go @@ -1,12 +1,12 @@ package friend import ( - cbapi "Open_IM/pkg/callbackstruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/http" - "Open_IM/pkg/common/tracelog" - pbfriend "Open_IM/pkg/proto/friend" + cbapi "OpenIM/pkg/callbackstruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/http" + "OpenIM/pkg/common/tracelog" + pbfriend "OpenIM/pkg/proto/friend" "context" ) diff --git a/internal/rpc/friend/friend.go b/internal/rpc/friend/friend.go index e7be6221f..f345034c2 100644 --- a/internal/rpc/friend/friend.go +++ b/internal/rpc/friend/friend.go @@ -1,19 +1,19 @@ package friend import ( - "Open_IM/internal/common/check" - "Open_IM/internal/common/convert" - "Open_IM/internal/common/notification" - "Open_IM/internal/tx" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/controller" - "Open_IM/pkg/common/db/relation" - tablerelation "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/common/tracelog" - registry "Open_IM/pkg/discoveryregistry" - pbfriend "Open_IM/pkg/proto/friend" - "Open_IM/pkg/utils" + "OpenIM/internal/common/check" + "OpenIM/internal/common/convert" + "OpenIM/internal/common/notification" + "OpenIM/internal/tx" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/controller" + "OpenIM/pkg/common/db/relation" + tablerelation "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/common/tracelog" + registry "OpenIM/pkg/discoveryregistry" + pbfriend "OpenIM/pkg/proto/friend" + "OpenIM/pkg/utils" "context" "github.com/OpenIMSDK/openKeeper" "google.golang.org/grpc" diff --git a/internal/rpc/group/callback.go b/internal/rpc/group/callback.go index 1ffe44193..54aba79dc 100644 --- a/internal/rpc/group/callback.go +++ b/internal/rpc/group/callback.go @@ -1,15 +1,15 @@ package group import ( - "Open_IM/pkg/apistruct" - "Open_IM/pkg/callbackstruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/http" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/proto/group" - "Open_IM/pkg/utils" + "OpenIM/pkg/apistruct" + "OpenIM/pkg/callbackstruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/http" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/proto/group" + "OpenIM/pkg/utils" "context" "google.golang.org/protobuf/types/known/wrapperspb" "time" diff --git a/internal/rpc/group/copy.go b/internal/rpc/group/copy.go index 1d1c7879d..a1e9e9ba9 100644 --- a/internal/rpc/group/copy.go +++ b/internal/rpc/group/copy.go @@ -1,9 +1,9 @@ package group import ( - "Open_IM/pkg/common/db/table/relation" - pbGroup "Open_IM/pkg/proto/group" - sdkws "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/db/table/relation" + pbGroup "OpenIM/pkg/proto/group" + sdkws "OpenIM/pkg/proto/sdkws" "time" ) diff --git a/internal/rpc/group/db_map.go b/internal/rpc/group/db_map.go index 29bfd0de4..02dd9089e 100644 --- a/internal/rpc/group/db_map.go +++ b/internal/rpc/group/db_map.go @@ -1,8 +1,8 @@ package group import ( - pbGroup "Open_IM/pkg/proto/group" - sdkws "Open_IM/pkg/proto/sdkws" + pbGroup "OpenIM/pkg/proto/group" + sdkws "OpenIM/pkg/proto/sdkws" "time" ) diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index b0d8db256..048cc4cd1 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -1,21 +1,21 @@ package group import ( - "Open_IM/internal/common/check" - "Open_IM/internal/common/notification" - "Open_IM/internal/tx" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" - "Open_IM/pkg/common/db/controller" - "Open_IM/pkg/common/db/relation" - relationTb "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/db/unrelation" - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/common/tracelog" - pbConversation "Open_IM/pkg/proto/conversation" - pbGroup "Open_IM/pkg/proto/group" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/internal/common/check" + "OpenIM/internal/common/notification" + "OpenIM/internal/tx" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" + "OpenIM/pkg/common/db/controller" + "OpenIM/pkg/common/db/relation" + relationTb "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/db/unrelation" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/common/tracelog" + pbConversation "OpenIM/pkg/proto/conversation" + pbGroup "OpenIM/pkg/proto/group" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "fmt" "github.com/OpenIMSDK/openKeeper" diff --git a/internal/rpc/group/super_group.go b/internal/rpc/group/super_group.go index d1d098ae7..c78b6c7e0 100644 --- a/internal/rpc/group/super_group.go +++ b/internal/rpc/group/super_group.go @@ -1,12 +1,12 @@ package group import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/db/table/unrelation" - pbGroup "Open_IM/pkg/proto/group" - sdkws "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/db/table/unrelation" + pbGroup "OpenIM/pkg/proto/group" + sdkws "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "fmt" "strings" diff --git a/internal/rpc/msg/callback.go b/internal/rpc/msg/callback.go index 9815d0567..cc921e706 100644 --- a/internal/rpc/msg/callback.go +++ b/internal/rpc/msg/callback.go @@ -1,13 +1,13 @@ package msg import ( - cbapi "Open_IM/pkg/callbackstruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/http" - "Open_IM/pkg/common/tracelog" - pbChat "Open_IM/pkg/proto/msg" - "Open_IM/pkg/utils" + cbapi "OpenIM/pkg/callbackstruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/http" + "OpenIM/pkg/common/tracelog" + pbChat "OpenIM/pkg/proto/msg" + "OpenIM/pkg/utils" "context" ) diff --git a/internal/rpc/msg/delete.go b/internal/rpc/msg/delete.go index 5695912a0..79843fa3a 100644 --- a/internal/rpc/msg/delete.go +++ b/internal/rpc/msg/delete.go @@ -1,14 +1,14 @@ package msg import ( - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/proto/msg" - common "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/proto/msg" + "OpenIM/pkg/proto/sdkws" "context" ) -func (m *msgServer) DelMsgList(ctx context.Context, req *common.DelMsgListReq) (*common.DelMsgListResp, error) { - resp := &common.DelMsgListResp{} +func (m *msgServer) DelMsgList(ctx context.Context, req *sdkws.DelMsgListReq) (*sdkws.DelMsgListResp, error) { + resp := &sdkws.DelMsgListResp{} if _, err := m.MsgInterface.DelMsgBySeqs(ctx, req.UserID, req.SeqList); err != nil { return nil, err } @@ -28,7 +28,7 @@ func (m *msgServer) DelSuperGroupMsg(ctx context.Context, req *msg.DelSuperGroup //if err := m.MsgInterface.SetGroupUserMinSeq(ctx, req.GroupID, maxSeq); err != nil { // return nil, err //} - if err := m.MsgInterface.DeleteUserSuperGroupMsgsAndSetMinSeq(ctx, req.GroupID, req.UserID, 0); err != nil { + if err := m.MsgInterface.DeleteUserSuperGroupMsgsAndSetMinSeq(ctx, req.GroupID, []string{req.UserID}, 0); err != nil { return nil, err } return resp, nil diff --git a/internal/rpc/msg/extend_msg.go b/internal/rpc/msg/extend_msg.go index 07e974540..95cd057c5 100644 --- a/internal/rpc/msg/extend_msg.go +++ b/internal/rpc/msg/extend_msg.go @@ -1,12 +1,12 @@ package msg import ( - "Open_IM/internal/common/notification" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/proto/msg" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/internal/common/notification" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/proto/msg" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" go_redis "github.com/go-redis/redis/v8" diff --git a/internal/rpc/msg/extend_msg_callback.go b/internal/rpc/msg/extend_msg_callback.go index 790ee017a..44af1a618 100644 --- a/internal/rpc/msg/extend_msg_callback.go +++ b/internal/rpc/msg/extend_msg_callback.go @@ -1,12 +1,12 @@ package msg import ( - cbapi "Open_IM/pkg/callbackstruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/http" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/proto/msg" + cbapi "OpenIM/pkg/callbackstruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/http" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/proto/msg" "context" ) diff --git a/internal/rpc/msg/msg_status.go b/internal/rpc/msg/msg_status.go index b3a469f37..27c5cc136 100644 --- a/internal/rpc/msg/msg_status.go +++ b/internal/rpc/msg/msg_status.go @@ -1,9 +1,9 @@ package msg import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/tracelog" - pbMsg "Open_IM/pkg/proto/msg" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/tracelog" + pbMsg "OpenIM/pkg/proto/msg" "context" ) diff --git a/internal/rpc/msg/send_msg.go b/internal/rpc/msg/send_msg.go index 8cc24550d..8f8bc9220 100644 --- a/internal/rpc/msg/send_msg.go +++ b/internal/rpc/msg/send_msg.go @@ -1,12 +1,12 @@ package msg import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/proto/msg" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/proto/msg" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "math/rand" "strconv" diff --git a/internal/rpc/msg/send_pull.go b/internal/rpc/msg/send_pull.go index 3f1be0d04..086e91e70 100644 --- a/internal/rpc/msg/send_pull.go +++ b/internal/rpc/msg/send_pull.go @@ -1,12 +1,12 @@ package msg import ( - "Open_IM/pkg/common/constant" - promePkg "Open_IM/pkg/common/prome" - pbConversation "Open_IM/pkg/proto/conversation" - "Open_IM/pkg/proto/msg" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/constant" + promePkg "OpenIM/pkg/common/prome" + pbConversation "OpenIM/pkg/proto/conversation" + "OpenIM/pkg/proto/msg" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "github.com/golang/protobuf/proto" "sync" diff --git a/internal/rpc/msg/server.go b/internal/rpc/msg/server.go index 7423a393f..78a4388b0 100644 --- a/internal/rpc/msg/server.go +++ b/internal/rpc/msg/server.go @@ -1,22 +1,22 @@ package msg import ( - "Open_IM/internal/common/check" - "Open_IM/pkg/common/db/controller" - "Open_IM/pkg/common/db/localcache" - "Open_IM/pkg/common/db/relation" - tablerelation "Open_IM/pkg/common/db/table/relation" - discoveryRegistry "Open_IM/pkg/discoveryregistry" + "OpenIM/internal/common/check" + "OpenIM/pkg/common/db/controller" + "OpenIM/pkg/common/db/localcache" + "OpenIM/pkg/common/db/relation" + tablerelation "OpenIM/pkg/common/db/table/relation" + discoveryRegistry "OpenIM/pkg/discoveryregistry" "github.com/OpenIMSDK/openKeeper" - promePkg "Open_IM/pkg/common/prome" - "Open_IM/pkg/proto/msg" + promePkg "OpenIM/pkg/common/prome" + "OpenIM/pkg/proto/msg" "google.golang.org/grpc" ) type msgServer struct { RegisterCenter discoveryRegistry.SvcDiscoveryRegistry - MsgInterface controller.MsgDatabaseInterface + MsgInterface controller.MsgDatabase Group *check.GroupChecker User *check.UserCheck Conversation *check.ConversationChecker diff --git a/internal/rpc/msg/utils.go b/internal/rpc/msg/utils.go index 3582bd8f5..2783def72 100644 --- a/internal/rpc/msg/utils.go +++ b/internal/rpc/msg/utils.go @@ -1,10 +1,10 @@ package msg import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "github.com/go-redis/redis/v8" "gorm.io/gorm" ) diff --git a/internal/rpc/user/user.go b/internal/rpc/user/user.go index d72c4ed6f..79108c51f 100644 --- a/internal/rpc/user/user.go +++ b/internal/rpc/user/user.go @@ -1,20 +1,20 @@ package user import ( - "Open_IM/internal/common/check" - "Open_IM/internal/common/convert" - "Open_IM/internal/common/notification" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/controller" - "Open_IM/pkg/common/db/relation" - tablerelation "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/common/tracelog" - registry "Open_IM/pkg/discoveryregistry" - "Open_IM/pkg/proto/sdkws" - pbuser "Open_IM/pkg/proto/user" - "Open_IM/pkg/utils" + "OpenIM/internal/common/check" + "OpenIM/internal/common/convert" + "OpenIM/internal/common/notification" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/controller" + "OpenIM/pkg/common/db/relation" + tablerelation "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/common/tracelog" + registry "OpenIM/pkg/discoveryregistry" + "OpenIM/pkg/proto/sdkws" + pbuser "OpenIM/pkg/proto/user" + "OpenIM/pkg/utils" "context" "github.com/OpenIMSDK/openKeeper" "google.golang.org/grpc" diff --git a/internal/startrpc/start.go b/internal/startrpc/start.go index 89ce089e3..43ae2e975 100644 --- a/internal/startrpc/start.go +++ b/internal/startrpc/start.go @@ -1,12 +1,12 @@ package startrpc import ( - "Open_IM/internal/common/network" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/middleware" - promePkg "Open_IM/pkg/common/prome" + "OpenIM/internal/common/network" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/middleware" + promePkg "OpenIM/pkg/common/prome" "flag" "fmt" "github.com/OpenIMSDK/openKeeper" diff --git a/internal/task/clear_msg.go b/internal/task/clear_msg.go index 7dfdb0a7b..9730c93cc 100644 --- a/internal/task/clear_msg.go +++ b/internal/task/clear_msg.go @@ -1,12 +1,12 @@ package task import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/controller" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/controller" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "fmt" "github.com/go-redis/redis/v8" @@ -36,9 +36,9 @@ func (c *msgTool) ClearAll() { log.NewError(operationID, utils.GetSelfFuncName(), err.Error()) } // working group msg clear - workingGroupIDList, err := c.groupInterface.GetGroupIDsByGroupType(ctx, constant.WorkingGroup) + superGroupIDList, err := c.groupInterface.GetGroupIDsByGroupType(ctx, constant.WorkingGroup) if err == nil { - c.ClearSuperGroupMsg(ctx, workingGroupIDList) + c.ClearSuperGroupMsg(ctx, superGroupIDList) } else { log.NewError(operationID, utils.GetSelfFuncName(), err.Error()) } @@ -60,8 +60,8 @@ func (c *msgTool) ClearUsersMsg(ctx context.Context, userIDList []string) { } } -func (c *msgTool) ClearSuperGroupMsg(ctx context.Context, workingGroupIDList []string) { - for _, groupID := range workingGroupIDList { +func (c *msgTool) ClearSuperGroupMsg(ctx context.Context, superGroupIDList []string) { + for _, groupID := range superGroupIDList { userIDs, err := c.groupInterface.FindGroupMemberUserID(ctx, groupID) if err != nil { log.NewError(tracelog.GetOperationID(ctx), utils.GetSelfFuncName(), "FindGroupMemberUserID", err.Error(), groupID) diff --git a/internal/task/clear_msg_test.go b/internal/task/clear_msg_test.go index fc91c2e82..6dd50ac37 100644 --- a/internal/task/clear_msg_test.go +++ b/internal/task/clear_msg_test.go @@ -1,8 +1,8 @@ package task import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/proto/sdkws" "context" "fmt" "strconv" diff --git a/internal/task/cron_task.go b/internal/task/cron_task.go index 0e2f4f6d8..168c21515 100644 --- a/internal/task/cron_task.go +++ b/internal/task/cron_task.go @@ -1,10 +1,10 @@ package task import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "fmt" "time" @@ -36,7 +36,7 @@ func StartCronTask() error { } } -func FixSeq(userID, workingGroupID string, fixAllSeq bool) { +func FixSeq(userID, superGroupID string, fixAllSeq bool) { log.NewPrivateLog(moduleName) log.NewInfo(utils.OperationIDGenerator(), "start cron task", "cron config", config.Config.Mongo.ChatRecordsClearTime) clearCronTask := msgTool{} @@ -46,8 +46,8 @@ func FixSeq(userID, workingGroupID string, fixAllSeq bool) { if userID != "" { clearCronTask.ClearUsersMsg(ctx, []string{userID}) } - if workingGroupID != "" { - clearCronTask.ClearSuperGroupMsg(ctx, []string{workingGroupID}) + if superGroupID != "" { + clearCronTask.ClearSuperGroupMsg(ctx, []string{superGroupID}) } if fixAllSeq { clearCronTask.FixAllSeq(ctx) diff --git a/internal/tx/mongo.go b/internal/tx/mongo.go index dff6b4dd1..40c41aa7e 100644 --- a/internal/tx/mongo.go +++ b/internal/tx/mongo.go @@ -1,7 +1,7 @@ package tx import ( - "Open_IM/pkg/utils" + "OpenIM/pkg/utils" "context" "go.mongodb.org/mongo-driver/mongo" ) diff --git a/pkg/apistruct/group.go b/pkg/apistruct/group.go index 4fd422900..27f9cd647 100644 --- a/pkg/apistruct/group.go +++ b/pkg/apistruct/group.go @@ -1,7 +1,7 @@ package apistruct import ( - sdkws "Open_IM/pkg/proto/sdkws" + sdkws "OpenIM/pkg/proto/sdkws" ) type CommResp struct { diff --git a/pkg/apistruct/manage.go b/pkg/apistruct/manage.go index 70afe4ad6..85fa57c0e 100644 --- a/pkg/apistruct/manage.go +++ b/pkg/apistruct/manage.go @@ -1,8 +1,8 @@ package apistruct import ( - pbRelay "Open_IM/pkg/proto/relay" - sdkws "Open_IM/pkg/proto/sdkws" + pbRelay "OpenIM/pkg/proto/relay" + sdkws "OpenIM/pkg/proto/sdkws" ) type DeleteUsersReq struct { diff --git a/pkg/apistruct/msg.go b/pkg/apistruct/msg.go index f6f110e23..74b2a37cb 100644 --- a/pkg/apistruct/msg.go +++ b/pkg/apistruct/msg.go @@ -1,8 +1,8 @@ package apistruct import ( - "Open_IM/pkg/proto/msg" - sdkws "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/proto/msg" + sdkws "OpenIM/pkg/proto/sdkws" ) type DelMsgReq struct { diff --git a/pkg/apistruct/user.go b/pkg/apistruct/user.go index 47fd58e2e..4b7260e9f 100644 --- a/pkg/apistruct/user.go +++ b/pkg/apistruct/user.go @@ -1,7 +1,7 @@ package apistruct import ( - sdkws "Open_IM/pkg/proto/sdkws" + sdkws "OpenIM/pkg/proto/sdkws" ) type GetUsersInfoReq struct { diff --git a/pkg/callbackstruct/common.go b/pkg/callbackstruct/common.go index d7d590bd1..2290cb9aa 100644 --- a/pkg/callbackstruct/common.go +++ b/pkg/callbackstruct/common.go @@ -1,7 +1,7 @@ package callbackstruct import ( - "Open_IM/pkg/common/constant" + "OpenIM/pkg/common/constant" "fmt" ) diff --git a/pkg/callbackstruct/group.go b/pkg/callbackstruct/group.go index 136386297..664facc16 100644 --- a/pkg/callbackstruct/group.go +++ b/pkg/callbackstruct/group.go @@ -1,8 +1,8 @@ package callbackstruct import ( - "Open_IM/pkg/apistruct" - common "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/apistruct" + common "OpenIM/pkg/proto/sdkws" ) type CallbackCommand string diff --git a/pkg/callbackstruct/message.go b/pkg/callbackstruct/message.go index f26c9ba84..2f1ad9434 100644 --- a/pkg/callbackstruct/message.go +++ b/pkg/callbackstruct/message.go @@ -1,8 +1,8 @@ package callbackstruct import ( - "Open_IM/pkg/proto/msg" - sdkws "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/proto/msg" + sdkws "OpenIM/pkg/proto/sdkws" ) type CallbackBeforeSendSingleMsgReq struct { diff --git a/pkg/callbackstruct/push.go b/pkg/callbackstruct/push.go index e68694626..900341b0b 100644 --- a/pkg/callbackstruct/push.go +++ b/pkg/callbackstruct/push.go @@ -1,6 +1,6 @@ package callbackstruct -import common "Open_IM/pkg/proto/sdkws" +import common "OpenIM/pkg/proto/sdkws" type CallbackBeforePushReq struct { UserStatusBatchCallbackReq diff --git a/pkg/common/config/config.go b/pkg/common/config/config.go index 68a0140f6..6adc26471 100644 --- a/pkg/common/config/config.go +++ b/pkg/common/config/config.go @@ -1,6 +1,7 @@ package config import ( + "flag" "fmt" "io/ioutil" "os" @@ -16,9 +17,8 @@ var ( Root = filepath.Join(filepath.Dir(b), "../../..") ) -const ConfName = "openIMConf" - var Config config +var NotificationConfig notificationConfig type CallBackConfig struct { Enable bool `yaml:"enable"` @@ -26,6 +26,21 @@ type CallBackConfig struct { CallbackFailedContinue *bool `yaml:"callbackFailedContinue"` } +type PConversation struct { + ReliabilityLevel int `yaml:"reliabilityLevel"` + UnreadCount bool `yaml:"unreadCount"` +} + +type POfflinePush struct { + PushSwitch bool `yaml:"switch"` + Title string `yaml:"title"` + Desc string `yaml:"desc"` + Ext string `yaml:"ext"` +} +type PDefaultTips struct { + Tips string `yaml:"tips"` +} + type config struct { ServerIP string `yaml:"serverip"` @@ -263,7 +278,6 @@ type config struct { BadgeCount bool `yaml:"badgeCount"` Production bool `yaml:"production"` } - Callback struct { CallbackUrl string `yaml:"callbackUrl"` CallbackBeforeSendSingleMsg CallBackConfig `yaml:"callbackBeforeSendSingleMsg"` @@ -282,191 +296,8 @@ type config struct { CallbackBeforeMemberJoinGroup CallBackConfig `yaml:"callbackBeforeMemberJoinGroup"` CallbackBeforeSetGroupMemberInfo CallBackConfig `yaml:"callbackBeforeSetGroupMemberInfo"` } `yaml:"callback"` - Notification struct { - ///////////////////////group///////////////////////////// - GroupCreated struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"groupCreated"` - - GroupInfoSet struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"groupInfoSet"` - - JoinGroupApplication struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"joinGroupApplication"` - - MemberQuit struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"memberQuit"` - - GroupApplicationAccepted struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"groupApplicationAccepted"` - - GroupApplicationRejected struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"groupApplicationRejected"` - - GroupOwnerTransferred struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"groupOwnerTransferred"` - - MemberKicked struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"memberKicked"` - - MemberInvited struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"memberInvited"` - - MemberEnter struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"memberEnter"` - - GroupDismissed struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"groupDismissed"` - - GroupMuted struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"groupMuted"` - - GroupCancelMuted struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"groupCancelMuted"` - - GroupMemberMuted struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"groupMemberMuted"` - - GroupMemberCancelMuted struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"groupMemberCancelMuted"` - GroupMemberInfoSet struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"groupMemberInfoSet"` - GroupMemberSetToAdmin struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"groupMemberSetToAdmin"` - GroupMemberSetToOrdinary struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"groupMemberSetToOrdinaryUser"` - - ////////////////////////user/////////////////////// - UserInfoUpdated struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"userInfoUpdated"` - - //////////////////////friend/////////////////////// - FriendApplication struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"friendApplicationAdded"` - FriendApplicationApproved struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"friendApplicationApproved"` - - FriendApplicationRejected struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"friendApplicationRejected"` - - FriendAdded struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"friendAdded"` - - FriendDeleted struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"friendDeleted"` - FriendRemarkSet struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"friendRemarkSet"` - BlackAdded struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"blackAdded"` - BlackDeleted struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"blackDeleted"` - FriendInfoUpdated struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"friendInfoUpdated"` - - ConversationOptUpdate struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` - } `yaml:"conversationOptUpdate"` - ConversationSetPrivate struct { - Conversation PConversation `yaml:"conversation"` - OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips struct { - OpenTips string `yaml:"openTips"` - CloseTips string `yaml:"closeTips"` - } `yaml:"defaultTips"` - } `yaml:"conversationSetPrivate"` - Signal struct { - OfflinePush struct { - Title string `yaml:"title"` - } `yaml:"offlinePush"` - } `yaml:"signal"` - } - - Rtc struct { + Notification Notification `yaml:"notification"` + Rtc struct { SignalTimeout string `yaml:"signalTimeout"` } `yaml:"rtc"` @@ -484,74 +315,193 @@ type config struct { MessageTransferPrometheusPort []int `yaml:"messageTransferPrometheusPort"` } `yaml:"prometheus"` } -type PConversation struct { - ReliabilityLevel int `yaml:"reliabilityLevel"` - UnreadCount bool `yaml:"unreadCount"` + +type notificationConfig struct { + Notification Notification `yaml:"notification"` } -type POfflinePush struct { - PushSwitch bool `yaml:"switch"` - Title string `yaml:"title"` - Desc string `yaml:"desc"` - Ext string `yaml:"ext"` +type Notification struct { + GroupCreated struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupCreated"` + + GroupInfoSet struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupInfoSet"` + + JoinGroupApplication struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"joinGroupApplication"` + + MemberQuit struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"memberQuit"` + + GroupApplicationAccepted struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupApplicationAccepted"` + + GroupApplicationRejected struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupApplicationRejected"` + + GroupOwnerTransferred struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupOwnerTransferred"` + + MemberKicked struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"memberKicked"` + + MemberInvited struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"memberInvited"` + + MemberEnter struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"memberEnter"` + + GroupDismissed struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupDismissed"` + + GroupMuted struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupMuted"` + + GroupCancelMuted struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupCancelMuted"` + + GroupMemberMuted struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupMemberMuted"` + + GroupMemberCancelMuted struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupMemberCancelMuted"` + GroupMemberInfoSet struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupMemberInfoSet"` + GroupMemberSetToAdmin struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupMemberSetToAdmin"` + GroupMemberSetToOrdinary struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupMemberSetToOrdinaryUser"` + + ////////////////////////user/////////////////////// + UserInfoUpdated struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"userInfoUpdated"` + + //////////////////////friend/////////////////////// + FriendApplication struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"friendApplicationAdded"` + FriendApplicationApproved struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"friendApplicationApproved"` + + FriendApplicationRejected struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"friendApplicationRejected"` + + FriendAdded struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"friendAdded"` + + FriendDeleted struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"friendDeleted"` + FriendRemarkSet struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"friendRemarkSet"` + BlackAdded struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"blackAdded"` + BlackDeleted struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"blackDeleted"` + FriendInfoUpdated struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"friendInfoUpdated"` + + ConversationOptUpdate struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"conversationOptUpdate"` + ConversationSetPrivate struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips struct { + OpenTips string `yaml:"openTips"` + CloseTips string `yaml:"closeTips"` + } `yaml:"defaultTips"` + } `yaml:"conversationSetPrivate"` + Signal struct { + OfflinePush struct { + Title string `yaml:"title"` + } `yaml:"offlinePush"` + } `yaml:"signal"` } -type PDefaultTips struct { - Tips string `yaml:"tips"` -} - -type usualConfig struct { - Etcd struct { - UserName string `yaml:"userName"` - Password string `yaml:"password"` - Secret string `yaml:"secret"` - } `yaml:"etcd"` - Mysql struct { - DBUserName string `yaml:"dbMysqlUserName"` - DBPassword string `yaml:"dbMysqlPassword"` - } `yaml:"mysql"` - Mongo struct { - DBUserName string `yaml:"dbUserName"` - DBPassword string `yaml:"dbPassword"` - } `yaml:"mongo"` - Redis struct { - DBUserName string `yaml:"dbUserName"` - DBPassword string `yaml:"dbPassWord"` - } `yaml:"redis"` - Kafka struct { - SASLUserName string `yaml:"SASLUserName"` - SASLPassword string `yaml:"SASLPassword"` - } `yaml:"kafka"` - - Credential struct { - Minio struct { - AccessKeyID string `yaml:"accessKeyID"` - SecretAccessKey string `yaml:"secretAccessKey"` - Endpoint string `yaml:"endpoint"` - } `yaml:"minio"` - } `yaml:"credential"` - - Secret string `yaml:"secret"` - - Tokenpolicy struct { - AccessSecret string `yaml:"accessSecret"` - AccessExpire int64 `yaml:"accessExpire"` - } `yaml:"tokenpolicy"` - - Messageverify struct { - FriendVerify bool `yaml:"friendVerify"` - } `yaml:"messageverify"` - - Push struct { - Getui struct { - PushUrl string `yaml:"pushUrl"` - MasterSecret string `yaml:"masterSecret"` - AppKey string `yaml:"appKey"` - Enable bool `yaml:"enable"` - } `yaml:"getui"` - } `yaml:"push"` -} - -var UsualConfig usualConfig func unmarshalConfig(config interface{}, configPath string) { bytes, err := ioutil.ReadFile(configPath) @@ -565,7 +515,7 @@ func unmarshalConfig(config interface{}, configPath string) { func initConfig(config interface{}, configName, configPath string) { if configPath == "" { - var env string + var env = "CONFIG_NAME" if configName == "config.yaml" { env = "CONFIG_NAME" } else if configName == "usualConfig.yaml" { @@ -587,75 +537,10 @@ func initConfig(config interface{}, configName, configPath string) { unmarshalConfig(config, configPath) } -func InitConfig(configPath string) { - initConfig(&Config, "config.yaml", configPath) - initConfig(&UsualConfig, "usualConfig.yaml", configPath) - - if Config.Mysql.DBUserName == "" { - Config.Mysql.DBUserName = UsualConfig.Mysql.DBUserName - } - if Config.Mysql.DBPassword == "" { - Config.Mysql.DBPassword = UsualConfig.Mysql.DBPassword - } - - if Config.Redis.DBUserName == "" { - Config.Redis.DBUserName = UsualConfig.Redis.DBUserName - } - if Config.Redis.DBPassWord == "" { - Config.Redis.DBPassWord = UsualConfig.Redis.DBPassword - } - - if Config.Mongo.DBUserName == "" { - Config.Mongo.DBUserName = UsualConfig.Mongo.DBUserName - } - if Config.Mongo.DBPassword == "" { - Config.Mongo.DBPassword = UsualConfig.Mongo.DBPassword - } - - if Config.Kafka.SASLUserName == "" { - Config.Kafka.SASLUserName = UsualConfig.Kafka.SASLUserName - } - if Config.Kafka.SASLPassword == "" { - Config.Kafka.SASLPassword = UsualConfig.Kafka.SASLPassword - } - - if Config.Credential.Minio.AccessKeyID == "" { - Config.Credential.Minio.AccessKeyID = UsualConfig.Credential.Minio.AccessKeyID - } - if Config.Credential.Minio.SecretAccessKey == "" { - Config.Credential.Minio.SecretAccessKey = UsualConfig.Credential.Minio.SecretAccessKey - } - if Config.Credential.Minio.Endpoint == "" { - Config.Credential.Minio.Endpoint = UsualConfig.Credential.Minio.Endpoint - } - - if Config.MessageVerify.FriendVerify == nil { - Config.MessageVerify.FriendVerify = &UsualConfig.Messageverify.FriendVerify - } - - if Config.Push.Getui.MasterSecret == "" { - Config.Push.Getui.MasterSecret = UsualConfig.Push.Getui.MasterSecret - } - if Config.Push.Getui.AppKey == "" { - Config.Push.Getui.AppKey = UsualConfig.Push.Getui.AppKey - } - if Config.Push.Getui.PushUrl == "" { - Config.Push.Getui.PushUrl = UsualConfig.Push.Getui.PushUrl - } - if Config.Push.Getui.Enable == nil { - Config.Push.Getui.Enable = &UsualConfig.Push.Getui.Enable - } - if Config.Secret == "" { - Config.Secret = UsualConfig.Secret - } - if Config.TokenPolicy.AccessExpire == 0 { - Config.TokenPolicy.AccessExpire = UsualConfig.Tokenpolicy.AccessExpire - } - if Config.TokenPolicy.AccessSecret == "" { - Config.TokenPolicy.AccessSecret = UsualConfig.Tokenpolicy.AccessSecret - } -} - -func init() { - InitConfig("") +func InitConfig() { + configPath := flag.String("config_path", "../config/", "config folder") + flag.Parse() + initConfig(&Config, "config.yaml", *configPath) + initConfig(&NotificationConfig, "notification.yaml", *configPath) + Config.Notification = NotificationConfig.Notification } diff --git a/pkg/common/db/cache/black.go b/pkg/common/db/cache/black.go index bcd72b529..7cf5f4578 100644 --- a/pkg/common/db/cache/black.go +++ b/pkg/common/db/cache/black.go @@ -1,9 +1,9 @@ package cache import ( - "Open_IM/pkg/common/db/relation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/db/relation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "github.com/dtm-labs/rockscache" "github.com/go-redis/redis/v8" diff --git a/pkg/common/db/cache/conversation.go b/pkg/common/db/cache/conversation.go index 742fac240..ca7e4263e 100644 --- a/pkg/common/db/cache/conversation.go +++ b/pkg/common/db/cache/conversation.go @@ -1,10 +1,10 @@ package cache import ( - "Open_IM/pkg/common/db/relation" - relationTb "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/db/relation" + relationTb "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "github.com/dtm-labs/rockscache" "github.com/go-redis/redis/v8" diff --git a/pkg/common/db/cache/extend_msg_set.go b/pkg/common/db/cache/extend_msg_set.go index 8d254f54f..d4a935c4d 100644 --- a/pkg/common/db/cache/extend_msg_set.go +++ b/pkg/common/db/cache/extend_msg_set.go @@ -1,9 +1,9 @@ package cache import ( - "Open_IM/pkg/common/db/table/unrelation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/db/table/unrelation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "github.com/dtm-labs/rockscache" "time" diff --git a/pkg/common/db/cache/friend.go b/pkg/common/db/cache/friend.go index dfe33f653..543948b0c 100644 --- a/pkg/common/db/cache/friend.go +++ b/pkg/common/db/cache/friend.go @@ -1,10 +1,10 @@ package cache import ( - "Open_IM/pkg/common/db/relation" - relationTb "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/db/relation" + relationTb "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "encoding/json" "github.com/dtm-labs/rockscache" diff --git a/pkg/common/db/cache/group.go b/pkg/common/db/cache/group.go index 69b991ed7..1b85c7bd8 100644 --- a/pkg/common/db/cache/group.go +++ b/pkg/common/db/cache/group.go @@ -1,10 +1,10 @@ package cache import ( - relationTb "Open_IM/pkg/common/db/table/relation" - unrelation2 "Open_IM/pkg/common/db/table/unrelation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + relationTb "OpenIM/pkg/common/db/table/relation" + unrelation2 "OpenIM/pkg/common/db/table/unrelation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "github.com/dtm-labs/rockscache" "github.com/go-redis/redis/v8" diff --git a/pkg/common/db/cache/redis.go b/pkg/common/db/cache/redis.go index d6d3bc110..8869eaf59 100644 --- a/pkg/common/db/cache/redis.go +++ b/pkg/common/db/cache/redis.go @@ -1,12 +1,12 @@ package cache import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - pbChat "Open_IM/pkg/proto/msg" - pbRtc "Open_IM/pkg/proto/rtc" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + pbChat "OpenIM/pkg/proto/msg" + pbRtc "OpenIM/pkg/proto/rtc" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "errors" "fmt" diff --git a/pkg/common/db/cache/redis_test.go b/pkg/common/db/cache/redis_test.go index 1357dfadf..9b977db08 100644 --- a/pkg/common/db/cache/redis_test.go +++ b/pkg/common/db/cache/redis_test.go @@ -1,9 +1,9 @@ package cache import ( - "Open_IM/pkg/common/constant" - pbChat "Open_IM/pkg/proto/msg" - common "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/constant" + pbChat "OpenIM/pkg/proto/msg" + common "OpenIM/pkg/proto/sdkws" "context" "flag" "fmt" diff --git a/pkg/common/db/cache/rockscache.go b/pkg/common/db/cache/rockscache.go index 1984113fe..35c025b65 100644 --- a/pkg/common/db/cache/rockscache.go +++ b/pkg/common/db/cache/rockscache.go @@ -1,7 +1,7 @@ package cache import ( - "Open_IM/pkg/utils" + "OpenIM/pkg/utils" "context" "encoding/json" "github.com/dtm-labs/rockscache" diff --git a/pkg/common/db/cache/token.go b/pkg/common/db/cache/token.go index c343c759b..dcc2b6760 100644 --- a/pkg/common/db/cache/token.go +++ b/pkg/common/db/cache/token.go @@ -1,9 +1,9 @@ package cache import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/tokenverify" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/tokenverify" + "OpenIM/pkg/utils" "context" "github.com/golang-jwt/jwt/v4" ) diff --git a/pkg/common/db/cache/user.go b/pkg/common/db/cache/user.go index 3be508189..ef69d5800 100644 --- a/pkg/common/db/cache/user.go +++ b/pkg/common/db/cache/user.go @@ -1,10 +1,10 @@ package cache import ( - "Open_IM/pkg/common/db/relation" - relationTb "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/db/relation" + relationTb "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "encoding/json" "github.com/dtm-labs/rockscache" diff --git a/pkg/common/db/controller/auth.go b/pkg/common/db/controller/auth.go index 0c31c8691..64252213a 100644 --- a/pkg/common/db/controller/auth.go +++ b/pkg/common/db/controller/auth.go @@ -1,7 +1,7 @@ package controller import ( - "Open_IM/pkg/common/db/cache" + "OpenIM/pkg/common/db/cache" "context" "github.com/go-redis/redis/v8" ) diff --git a/pkg/common/db/controller/black.go b/pkg/common/db/controller/black.go index 3647cbc12..969557e0d 100644 --- a/pkg/common/db/controller/black.go +++ b/pkg/common/db/controller/black.go @@ -1,8 +1,8 @@ package controller import ( - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/utils" "context" "errors" "gorm.io/gorm" diff --git a/pkg/common/db/controller/chatlog.go b/pkg/common/db/controller/chatlog.go index 024da2641..50ae13771 100644 --- a/pkg/common/db/controller/chatlog.go +++ b/pkg/common/db/controller/chatlog.go @@ -1,9 +1,9 @@ package controller import ( - "Open_IM/pkg/common/db/relation" - relationTb "Open_IM/pkg/common/db/table/relation" - pbMsg "Open_IM/pkg/proto/msg" + "OpenIM/pkg/common/db/relation" + relationTb "OpenIM/pkg/common/db/table/relation" + pbMsg "OpenIM/pkg/proto/msg" "gorm.io/gorm" ) diff --git a/pkg/common/db/controller/conversation.go b/pkg/common/db/controller/conversation.go index c586d5fde..9db064a50 100644 --- a/pkg/common/db/controller/conversation.go +++ b/pkg/common/db/controller/conversation.go @@ -1,12 +1,12 @@ package controller import ( - "Open_IM/internal/tx" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" - "Open_IM/pkg/common/db/relation" - relationTb "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/utils" + "OpenIM/internal/tx" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" + "OpenIM/pkg/common/db/relation" + relationTb "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/utils" "context" "encoding/json" ) diff --git a/pkg/common/db/controller/extend_msg.go b/pkg/common/db/controller/extend_msg.go index 4f62f8925..83e4d830a 100644 --- a/pkg/common/db/controller/extend_msg.go +++ b/pkg/common/db/controller/extend_msg.go @@ -1,8 +1,8 @@ package controller import ( - unRelationTb "Open_IM/pkg/common/db/table/unrelation" - "Open_IM/pkg/proto/sdkws" + unRelationTb "OpenIM/pkg/common/db/table/unrelation" + "OpenIM/pkg/proto/sdkws" "context" "github.com/go-redis/redis/v8" "go.mongodb.org/mongo-driver/mongo" diff --git a/pkg/common/db/controller/friend.go b/pkg/common/db/controller/friend.go index 4afde6f43..58a838dc3 100644 --- a/pkg/common/db/controller/friend.go +++ b/pkg/common/db/controller/friend.go @@ -1,10 +1,10 @@ package controller import ( - "Open_IM/internal/tx" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/utils" + "OpenIM/internal/tx" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/utils" "context" "errors" "gorm.io/gorm" diff --git a/pkg/common/db/controller/group.go b/pkg/common/db/controller/group.go index 232b3bdc4..89f3fd9f6 100644 --- a/pkg/common/db/controller/group.go +++ b/pkg/common/db/controller/group.go @@ -1,12 +1,12 @@ package controller import ( - "Open_IM/internal/tx" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" - relationTb "Open_IM/pkg/common/db/table/relation" - unRelationTb "Open_IM/pkg/common/db/table/unrelation" - "Open_IM/pkg/utils" + "OpenIM/internal/tx" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" + relationTb "OpenIM/pkg/common/db/table/relation" + unRelationTb "OpenIM/pkg/common/db/table/unrelation" + "OpenIM/pkg/utils" "context" "fmt" "github.com/dtm-labs/rockscache" diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index 997aca61c..08043e5cd 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -1,20 +1,20 @@ package controller import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" - unRelationTb "Open_IM/pkg/common/db/table/unrelation" - "Open_IM/pkg/common/db/unrelation" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/prome" - "Open_IM/pkg/common/tracelog" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" + unRelationTb "OpenIM/pkg/common/db/table/unrelation" + "OpenIM/pkg/common/db/unrelation" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/prome" + "OpenIM/pkg/common/tracelog" "github.com/gogo/protobuf/sortkeys" "sync" "time" - pbMsg "Open_IM/pkg/proto/msg" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + pbMsg "OpenIM/pkg/proto/msg" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "errors" "github.com/go-redis/redis/v8" @@ -146,7 +146,6 @@ type MsgDatabase interface { SetUserMinSeq(ctx context.Context, userID string, minSeq int64) (err error) JudgeMessageReactionEXISTS(ctx context.Context, clientMsgID string, sessionType int32) (bool, error) - SetMessageTypeKeyValue(ctx context.Context, clientMsgID string, sessionType int32, typeKey, value string) error SetMessageReactionExpire(ctx context.Context, clientMsgID string, sessionType int32, expiration time.Duration) (bool, error) diff --git a/pkg/common/db/controller/push.go b/pkg/common/db/controller/push.go index cca942487..16b931c1f 100644 --- a/pkg/common/db/controller/push.go +++ b/pkg/common/db/controller/push.go @@ -1,7 +1,7 @@ package controller import ( - "Open_IM/pkg/common/db/cache" + "OpenIM/pkg/common/db/cache" "context" ) diff --git a/pkg/common/db/controller/user.go b/pkg/common/db/controller/user.go index 3ec4fb9f0..21d8bd713 100644 --- a/pkg/common/db/controller/user.go +++ b/pkg/common/db/controller/user.go @@ -1,9 +1,9 @@ package controller import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/utils" "context" ) diff --git a/pkg/common/db/localcache/conversation.go b/pkg/common/db/localcache/conversation.go index 592f1e3f2..53a962c92 100644 --- a/pkg/common/db/localcache/conversation.go +++ b/pkg/common/db/localcache/conversation.go @@ -1,9 +1,9 @@ package localcache import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/discoveryregistry" - "Open_IM/pkg/proto/conversation" + "OpenIM/pkg/common/config" + "OpenIM/pkg/discoveryregistry" + "OpenIM/pkg/proto/conversation" "context" "sync" ) diff --git a/pkg/common/db/localcache/group.go b/pkg/common/db/localcache/group.go index e5bc03d45..37de9b4ca 100644 --- a/pkg/common/db/localcache/group.go +++ b/pkg/common/db/localcache/group.go @@ -1,10 +1,10 @@ package localcache import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/discoveryregistry" - "Open_IM/pkg/proto/group" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/discoveryregistry" + "OpenIM/pkg/proto/group" "context" "sync" ) diff --git a/pkg/common/db/relation/black_model.go b/pkg/common/db/relation/black_model.go index dbef9e116..1ce821cb5 100644 --- a/pkg/common/db/relation/black_model.go +++ b/pkg/common/db/relation/black_model.go @@ -1,9 +1,9 @@ package relation import ( - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "gorm.io/gorm" ) diff --git a/pkg/common/db/relation/chat_log_model.go b/pkg/common/db/relation/chat_log_model.go index 09aaf4ab1..17c85bbdf 100644 --- a/pkg/common/db/relation/chat_log_model.go +++ b/pkg/common/db/relation/chat_log_model.go @@ -1,11 +1,11 @@ package relation import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/table/relation" - pbMsg "Open_IM/pkg/proto/msg" - sdkws "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/table/relation" + pbMsg "OpenIM/pkg/proto/msg" + sdkws "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "fmt" "github.com/golang/protobuf/jsonpb" "github.com/golang/protobuf/proto" diff --git a/pkg/common/db/relation/conversation_model.go b/pkg/common/db/relation/conversation_model.go index c360fa393..bd4c64570 100644 --- a/pkg/common/db/relation/conversation_model.go +++ b/pkg/common/db/relation/conversation_model.go @@ -1,10 +1,10 @@ package relation import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "gorm.io/gorm" ) diff --git a/pkg/common/db/relation/friend_model.go b/pkg/common/db/relation/friend_model.go index 15d541855..f59fe3d35 100644 --- a/pkg/common/db/relation/friend_model.go +++ b/pkg/common/db/relation/friend_model.go @@ -1,9 +1,9 @@ package relation import ( - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "gorm.io/gorm" ) diff --git a/pkg/common/db/relation/friend_request_model.go b/pkg/common/db/relation/friend_request_model.go index 1326048ec..5df1405e4 100644 --- a/pkg/common/db/relation/friend_request_model.go +++ b/pkg/common/db/relation/friend_request_model.go @@ -1,9 +1,9 @@ package relation import ( - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "gorm.io/gorm" ) diff --git a/pkg/common/db/relation/group_member_model.go b/pkg/common/db/relation/group_member_model.go index 1c178eab3..75d37ce60 100644 --- a/pkg/common/db/relation/group_member_model.go +++ b/pkg/common/db/relation/group_member_model.go @@ -1,10 +1,10 @@ package relation import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "gorm.io/gorm" ) diff --git a/pkg/common/db/relation/group_model.go b/pkg/common/db/relation/group_model.go index e6a4ff962..5ae5150db 100644 --- a/pkg/common/db/relation/group_model.go +++ b/pkg/common/db/relation/group_model.go @@ -1,9 +1,9 @@ package relation import ( - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "gorm.io/gorm" ) diff --git a/pkg/common/db/relation/group_request_model.go b/pkg/common/db/relation/group_request_model.go index 3525878c6..bf2b4e4b2 100644 --- a/pkg/common/db/relation/group_request_model.go +++ b/pkg/common/db/relation/group_request_model.go @@ -1,9 +1,9 @@ package relation import ( - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "gorm.io/gorm" ) diff --git a/pkg/common/db/relation/mysql_init.go b/pkg/common/db/relation/mysql_init.go index 1047f51cc..5223fc0e1 100644 --- a/pkg/common/db/relation/mysql_init.go +++ b/pkg/common/db/relation/mysql_init.go @@ -1,7 +1,7 @@ package relation import ( - "Open_IM/pkg/common/config" + "OpenIM/pkg/common/config" "fmt" "gorm.io/driver/mysql" "time" diff --git a/pkg/common/db/relation/user_model.go b/pkg/common/db/relation/user_model.go index c76aca95e..9ad182d17 100644 --- a/pkg/common/db/relation/user_model.go +++ b/pkg/common/db/relation/user_model.go @@ -1,9 +1,9 @@ package relation import ( - "Open_IM/pkg/common/db/table/relation" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "gorm.io/gorm" ) diff --git a/pkg/common/db/relation/utils.go b/pkg/common/db/relation/utils.go index 8e3c62bfc..0f492356a 100644 --- a/pkg/common/db/relation/utils.go +++ b/pkg/common/db/relation/utils.go @@ -1,7 +1,7 @@ package relation import ( - "Open_IM/pkg/utils" + "OpenIM/pkg/utils" "gorm.io/gorm" ) diff --git a/pkg/common/db/table/relation/chatlog.go b/pkg/common/db/table/relation/chatlog.go index 62b41a5d0..e85e52891 100644 --- a/pkg/common/db/table/relation/chatlog.go +++ b/pkg/common/db/table/relation/chatlog.go @@ -4,7 +4,7 @@ import ( "gorm.io/gorm" "time" - pbMsg "Open_IM/pkg/proto/msg" + pbMsg "OpenIM/pkg/proto/msg" ) const ( diff --git a/pkg/common/db/table/unrelation/extend_msg_set.go b/pkg/common/db/table/unrelation/extend_msg_set.go index e691776d3..17bf78a61 100644 --- a/pkg/common/db/table/unrelation/extend_msg_set.go +++ b/pkg/common/db/table/unrelation/extend_msg_set.go @@ -1,7 +1,7 @@ package unrelation import ( - "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/proto/sdkws" "context" "strconv" "strings" diff --git a/pkg/common/db/table/unrelation/msg.go b/pkg/common/db/table/unrelation/msg.go index 75a784c6d..6d07d4efb 100644 --- a/pkg/common/db/table/unrelation/msg.go +++ b/pkg/common/db/table/unrelation/msg.go @@ -1,8 +1,8 @@ package unrelation import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/proto/sdkws" "context" "strconv" "strings" diff --git a/pkg/common/db/unrelation/extend_msg.go b/pkg/common/db/unrelation/extend_msg.go index 44184c56d..a7f46f1cf 100644 --- a/pkg/common/db/unrelation/extend_msg.go +++ b/pkg/common/db/unrelation/extend_msg.go @@ -1,9 +1,9 @@ package unrelation import ( - unRelationTb "Open_IM/pkg/common/db/table/unrelation" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + unRelationTb "OpenIM/pkg/common/db/table/unrelation" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "errors" "fmt" diff --git a/pkg/common/db/unrelation/mongo.go b/pkg/common/db/unrelation/mongo.go index 1c0058f94..ebaa55e38 100644 --- a/pkg/common/db/unrelation/mongo.go +++ b/pkg/common/db/unrelation/mongo.go @@ -1,9 +1,9 @@ package unrelation import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/db/table/unrelation" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/db/table/unrelation" + "OpenIM/pkg/utils" "context" "fmt" "go.mongodb.org/mongo-driver/mongo" diff --git a/pkg/common/db/unrelation/msg.go b/pkg/common/db/unrelation/msg.go index 3f5a9867b..11d2df14b 100644 --- a/pkg/common/db/unrelation/msg.go +++ b/pkg/common/db/unrelation/msg.go @@ -1,9 +1,9 @@ package unrelation import ( - table "Open_IM/pkg/common/db/table/unrelation" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + table "OpenIM/pkg/common/db/table/unrelation" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "errors" "fmt" diff --git a/pkg/common/db/unrelation/super_group.go b/pkg/common/db/unrelation/super_group.go index 82c75e54b..cd873c190 100644 --- a/pkg/common/db/unrelation/super_group.go +++ b/pkg/common/db/unrelation/super_group.go @@ -1,9 +1,9 @@ package unrelation import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/db/table/unrelation" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/db/table/unrelation" + "OpenIM/pkg/utils" "context" "go.mongodb.org/mongo-driver/bson" "go.mongodb.org/mongo-driver/mongo" diff --git a/pkg/common/http/http_client.go b/pkg/common/http/http_client.go index 4c83e2747..d249f0067 100644 --- a/pkg/common/http/http_client.go +++ b/pkg/common/http/http_client.go @@ -7,9 +7,9 @@ package http import ( - "Open_IM/pkg/callbackstruct" - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" + "OpenIM/pkg/callbackstruct" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" "bytes" "encoding/json" "io/ioutil" diff --git a/pkg/common/kafka/consumer.go b/pkg/common/kafka/consumer.go index f794a244c..dc1512027 100644 --- a/pkg/common/kafka/consumer.go +++ b/pkg/common/kafka/consumer.go @@ -1,7 +1,7 @@ package kafka import ( - "Open_IM/pkg/common/config" + "OpenIM/pkg/common/config" "sync" "github.com/Shopify/sarama" diff --git a/pkg/common/kafka/producer.go b/pkg/common/kafka/producer.go index 61a137458..69a5e9c53 100644 --- a/pkg/common/kafka/producer.go +++ b/pkg/common/kafka/producer.go @@ -1,15 +1,15 @@ package kafka import ( - "Open_IM/pkg/common/config" - log "Open_IM/pkg/common/log" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + log "OpenIM/pkg/common/log" + "OpenIM/pkg/utils" "errors" "github.com/Shopify/sarama" "github.com/golang/protobuf/proto" - prome "Open_IM/pkg/common/prome" + prome "OpenIM/pkg/common/prome" ) type Producer struct { diff --git a/pkg/common/log/es_hk.go b/pkg/common/log/es_hk.go index 19eafaed5..e873a115a 100644 --- a/pkg/common/log/es_hk.go +++ b/pkg/common/log/es_hk.go @@ -7,7 +7,7 @@ package log import ( - "Open_IM/pkg/common/config" + "OpenIM/pkg/common/config" "context" "fmt" elasticV7 "github.com/olivere/elastic/v7" diff --git a/pkg/common/log/file_line_hk.go b/pkg/common/log/file_line_hk.go index 793d10c06..be194e43a 100644 --- a/pkg/common/log/file_line_hk.go +++ b/pkg/common/log/file_line_hk.go @@ -7,7 +7,7 @@ package log import ( - "Open_IM/pkg/utils" + "OpenIM/pkg/utils" "github.com/sirupsen/logrus" "runtime" "strings" diff --git a/pkg/common/log/logrus.go b/pkg/common/log/logrus.go index 133f42d12..3c24cf8a4 100644 --- a/pkg/common/log/logrus.go +++ b/pkg/common/log/logrus.go @@ -1,8 +1,8 @@ package log import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/tracelog" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/tracelog" "bufio" "context" //"bufio" diff --git a/pkg/common/middleware/rpc.go b/pkg/common/middleware/rpc.go index 755348153..c80d75e67 100644 --- a/pkg/common/middleware/rpc.go +++ b/pkg/common/middleware/rpc.go @@ -1,10 +1,10 @@ package middleware import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "fmt" "google.golang.org/grpc" diff --git a/pkg/common/prome/grpc.go b/pkg/common/prome/grpc.go index 8542e7e9f..ad869ab8a 100644 --- a/pkg/common/prome/grpc.go +++ b/pkg/common/prome/grpc.go @@ -5,7 +5,7 @@ import ( "encoding/json" "time" - "Open_IM/pkg/common/log" + "OpenIM/pkg/common/log" "google.golang.org/grpc" "google.golang.org/grpc/peer" diff --git a/pkg/common/prome/prometheus.go b/pkg/common/prome/prometheus.go index 20e982e92..065fcf461 100644 --- a/pkg/common/prome/prometheus.go +++ b/pkg/common/prome/prometheus.go @@ -1,7 +1,7 @@ package prome import ( - "Open_IM/pkg/common/config" + "OpenIM/pkg/common/config" "bytes" "net/http" "strconv" diff --git a/pkg/common/tokenverify/jwt_token.go b/pkg/common/tokenverify/jwt_token.go index 9722830a7..7e8a24aec 100644 --- a/pkg/common/tokenverify/jwt_token.go +++ b/pkg/common/tokenverify/jwt_token.go @@ -1,10 +1,10 @@ package tokenverify import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/tracelog" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/tracelog" + "OpenIM/pkg/utils" "context" "github.com/golang-jwt/jwt/v4" "time" diff --git a/pkg/common/tracelog/ctx.go b/pkg/common/tracelog/ctx.go index 77a15da15..c027736e9 100644 --- a/pkg/common/tracelog/ctx.go +++ b/pkg/common/tracelog/ctx.go @@ -1,7 +1,7 @@ package tracelog import ( - "Open_IM/pkg/utils" + "OpenIM/pkg/utils" "context" "github.com/sirupsen/logrus" "runtime" diff --git a/pkg/errs/coderr.go b/pkg/errs/coderr.go index 98ee9a5ca..d933cdf43 100644 --- a/pkg/errs/coderr.go +++ b/pkg/errs/coderr.go @@ -1,7 +1,7 @@ package errs import ( - "Open_IM/pkg/utils" + "OpenIM/pkg/utils" "fmt" "github.com/pkg/errors" "strings" diff --git a/pkg/proto/auth/auth.pb.go b/pkg/proto/auth/auth.pb.go index a10a79920..78c2b8c0d 100644 --- a/pkg/proto/auth/auth.pb.go +++ b/pkg/proto/auth/auth.pb.go @@ -1,12 +1,12 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // source: auth/auth.proto -package pbAuth // import "Open_IM/pkg/proto/auth" +package pbAuth // import "OpenIM/pkg/proto/auth" import proto "github.com/golang/protobuf/proto" import fmt "fmt" import math "math" -import _ "Open_IM/pkg/proto/sdkws" +import _ "OpenIM/pkg/proto/sdkws" import ( context "golang.org/x/net/context" diff --git a/pkg/proto/auth/auth.proto b/pkg/proto/auth/auth.proto index e46b5de25..87871e3a1 100644 --- a/pkg/proto/auth/auth.proto +++ b/pkg/proto/auth/auth.proto @@ -1,7 +1,7 @@ syntax = "proto3"; import "Open-IM-Server/pkg/proto/sdkws/ws.proto"; package pbAuth; -option go_package = "Open_IM/pkg/proto/auth;pbAuth"; +option go_package = "OpenIM/pkg/proto/auth;pbAuth"; message userTokenReq { diff --git a/pkg/proto/auto_proto.sh b/pkg/proto/auto_proto.sh index 7fee2beb1..b85b8f91e 100755 --- a/pkg/proto/auto_proto.sh +++ b/pkg/proto/auto_proto.sh @@ -11,7 +11,7 @@ echo "proto file generate success" j=0 -for file in $(find ./Open_IM -name "*.go"); do # Not recommended, will break on whitespace +for file in $(find ./OpenIM -name "*.go"); do # Not recommended, will break on whitespace filelist[j]=$file j=`expr $j + 1` done @@ -19,10 +19,10 @@ done for ((i = 0; i < ${#filelist[*]}; i++)); do proto=${filelist[$i]} - cp $proto ${proto#*./Open_IM/pkg/proto/} + cp $proto ${proto#*./OpenIM/pkg/proto/} done -rm Open_IM -rf -#find ./ -type f -path "*.pb.go"|xargs sed -i 's/\".\/sdkws\"/\"Open_IM\/pkg\/proto\/sdkws\"/g' +rm OpenIM -rf +#find ./ -type f -path "*.pb.go"|xargs sed -i 's/\".\/sdkws\"/\"OpenIM\/pkg\/proto\/sdkws\"/g' diff --git a/pkg/proto/conversation/conversation.pb.go b/pkg/proto/conversation/conversation.pb.go index 98b174e6a..ed19a9841 100644 --- a/pkg/proto/conversation/conversation.pb.go +++ b/pkg/proto/conversation/conversation.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // source: conversation/conversation.proto -package conversation // import "Open_IM/pkg/proto/conversation" +package conversation // import "OpenIM/pkg/proto/conversation" import proto "github.com/golang/protobuf/proto" import fmt "fmt" diff --git a/pkg/proto/conversation/conversation.proto b/pkg/proto/conversation/conversation.proto index 7233664f0..dfa04f542 100644 --- a/pkg/proto/conversation/conversation.proto +++ b/pkg/proto/conversation/conversation.proto @@ -1,5 +1,5 @@ syntax = "proto3"; -option go_package = "Open_IM/pkg/proto/conversation;conversation"; +option go_package = "OpenIM/pkg/proto/conversation;conversation"; package conversation; message Conversation{ diff --git a/pkg/proto/file/file.proto b/pkg/proto/file/file.proto index 5c1ab246b..8952c8501 100644 --- a/pkg/proto/file/file.proto +++ b/pkg/proto/file/file.proto @@ -1,5 +1,5 @@ syntax = "proto3"; -option go_package = "Open_IM/pkg/proto/file;file"; +option go_package = "OpenIM/pkg/proto/file;file"; package file; diff --git a/pkg/proto/friend/friend.pb.go b/pkg/proto/friend/friend.pb.go index 1f6449800..9389880ed 100644 --- a/pkg/proto/friend/friend.pb.go +++ b/pkg/proto/friend/friend.pb.go @@ -1,12 +1,12 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // source: friend/friend.proto -package friend // import "Open_IM/pkg/proto/friend" +package friend // import "OpenIM/pkg/proto/friend" import proto "github.com/golang/protobuf/proto" import fmt "fmt" import math "math" -import sdkws "Open_IM/pkg/proto/sdkws" +import sdkws "OpenIM/pkg/proto/sdkws" import ( context "golang.org/x/net/context" diff --git a/pkg/proto/friend/friend.proto b/pkg/proto/friend/friend.proto index de47b441e..c8f363fc2 100644 --- a/pkg/proto/friend/friend.proto +++ b/pkg/proto/friend/friend.proto @@ -1,6 +1,6 @@ syntax = "proto3"; import "Open-IM-Server/pkg/proto/sdkws/ws.proto"; -option go_package = "Open_IM/pkg/proto/friend;friend"; +option go_package = "OpenIM/pkg/proto/friend;friend"; package friend; message getPaginationFriendsReq{ diff --git a/pkg/proto/group/group.pb.go b/pkg/proto/group/group.pb.go index 1fb0d7d14..e2af83719 100644 --- a/pkg/proto/group/group.pb.go +++ b/pkg/proto/group/group.pb.go @@ -1,12 +1,12 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // source: group/group.proto -package group // import "Open_IM/pkg/proto/group" +package group // import "OpenIM/pkg/proto/group" import proto "github.com/golang/protobuf/proto" import fmt "fmt" import math "math" -import sdkws "Open_IM/pkg/proto/sdkws" +import sdkws "OpenIM/pkg/proto/sdkws" import wrapperspb "google.golang.org/protobuf/types/known/wrapperspb" import ( diff --git a/pkg/proto/group/group.proto b/pkg/proto/group/group.proto index d5cb23324..aa5a81c4a 100644 --- a/pkg/proto/group/group.proto +++ b/pkg/proto/group/group.proto @@ -1,7 +1,7 @@ syntax = "proto3"; import "Open-IM-Server/pkg/proto/sdkws/ws.proto"; import "Open-IM-Server/pkg/proto/sdkws/wrappers.proto"; -option go_package = "Open_IM/pkg/proto/group;group"; +option go_package = "OpenIM/pkg/proto/group;group"; package group; diff --git a/pkg/proto/msg/msg.pb.go b/pkg/proto/msg/msg.pb.go index ad33c83e6..b7d3df009 100644 --- a/pkg/proto/msg/msg.pb.go +++ b/pkg/proto/msg/msg.pb.go @@ -1,12 +1,12 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // source: msg/msg.proto -package msg // import "Open_IM/pkg/proto/msg" +package msg // import "OpenIM/pkg/proto/msg" import proto "github.com/golang/protobuf/proto" import fmt "fmt" import math "math" -import sdkws "Open_IM/pkg/proto/sdkws" +import sdkws "OpenIM/pkg/proto/sdkws" import wrapperspb "google.golang.org/protobuf/types/known/wrapperspb" import ( diff --git a/pkg/proto/msg/msg.proto b/pkg/proto/msg/msg.proto index 63902a98b..3f716c2a5 100644 --- a/pkg/proto/msg/msg.proto +++ b/pkg/proto/msg/msg.proto @@ -1,7 +1,7 @@ syntax = "proto3"; import "Open-IM-Server/pkg/proto/sdkws/ws.proto"; import "Open-IM-Server/pkg/proto/sdkws/wrappers.proto"; -option go_package = "Open_IM/pkg/proto/msg;msg"; +option go_package = "OpenIM/pkg/proto/msg;msg"; package msg; message MsgDataToMQ{ diff --git a/pkg/proto/msggateway/relay.pb.go b/pkg/proto/msggateway/relay.pb.go index e56b9c9c0..2dc38605b 100644 --- a/pkg/proto/msggateway/relay.pb.go +++ b/pkg/proto/msggateway/relay.pb.go @@ -1,12 +1,12 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // source: relay/relay.proto -package pbRelay // import "Open_IM/pkg/proto/relay" +package pbRelay // import "OpenIM/pkg/proto/relay" import proto "github.com/golang/protobuf/proto" import fmt "fmt" import math "math" -import sdkws "Open_IM/pkg/proto/sdkws" +import sdkws "OpenIM/pkg/proto/sdkws" import ( context "golang.org/x/net/context" diff --git a/pkg/proto/msggateway/relay.proto b/pkg/proto/msggateway/relay.proto index 5177fac7f..47f981137 100644 --- a/pkg/proto/msggateway/relay.proto +++ b/pkg/proto/msggateway/relay.proto @@ -1,6 +1,6 @@ syntax = "proto3"; import "Open-IM-Server/pkg/proto/sdkws/ws.proto"; -option go_package = "Open_IM/pkg/proto/relay;pbRelay"; +option go_package = "OpenIM/pkg/proto/relay;pbRelay"; package relay; message OnlinePushMsgReq { diff --git a/pkg/proto/push/push.pb.go b/pkg/proto/push/push.pb.go index 5208657b9..7cb0d1f04 100644 --- a/pkg/proto/push/push.pb.go +++ b/pkg/proto/push/push.pb.go @@ -1,12 +1,12 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // source: push/push.proto -package pbPush // import "Open_IM/pkg/proto/push" +package pbPush // import "OpenIM/pkg/proto/push" import proto "github.com/golang/protobuf/proto" import fmt "fmt" import math "math" -import sdkws "Open_IM/pkg/proto/sdkws" +import sdkws "OpenIM/pkg/proto/sdkws" import ( context "golang.org/x/net/context" diff --git a/pkg/proto/push/push.proto b/pkg/proto/push/push.proto index 596a0ede3..d97096896 100644 --- a/pkg/proto/push/push.proto +++ b/pkg/proto/push/push.proto @@ -1,6 +1,6 @@ syntax = "proto3"; import "Open-IM-Server/pkg/proto/sdkws/ws.proto"; -option go_package = "Open_IM/pkg/proto/push;pbPush"; +option go_package = "OpenIM/pkg/proto/push;pbPush"; package push; message PushMsgReq { diff --git a/pkg/proto/rtc/rtc.pb.go b/pkg/proto/rtc/rtc.pb.go index f826725e2..381a0cecd 100644 --- a/pkg/proto/rtc/rtc.pb.go +++ b/pkg/proto/rtc/rtc.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // source: rtc/rtc.proto -package rtc // import "Open_IM/pkg/proto/rtc" +package rtc // import "OpenIM/pkg/proto/rtc" import proto "github.com/golang/protobuf/proto" import fmt "fmt" diff --git a/pkg/proto/rtc/rtc.proto b/pkg/proto/rtc/rtc.proto index e70739574..ee20e2142 100644 --- a/pkg/proto/rtc/rtc.proto +++ b/pkg/proto/rtc/rtc.proto @@ -1,5 +1,5 @@ syntax = "proto3"; -option go_package = "Open_IM/pkg/proto/rtc;rtc"; +option go_package = "OpenIM/pkg/proto/rtc;rtc"; package proto; message CommonResp{ diff --git a/pkg/proto/sdk_ws/group.proto b/pkg/proto/sdk_ws/group.proto index 4ab168601..d0539897a 100644 --- a/pkg/proto/sdk_ws/group.proto +++ b/pkg/proto/sdk_ws/group.proto @@ -1,7 +1,7 @@ syntax = "proto3"; import "Open-IM-Server/pkg/proto/sdkws/ws.proto"; import "Open-IM-Server/pkg/proto/sdkws/wrappers.proto"; -option go_package = "Open_IM/pkg/proto/group;group"; +option go_package = "OpenIM/pkg/proto/group;group"; package group; diff --git a/pkg/proto/sdkws/ws.pb.go b/pkg/proto/sdkws/ws.pb.go index dc6569378..fe4781d61 100644 --- a/pkg/proto/sdkws/ws.pb.go +++ b/pkg/proto/sdkws/ws.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // source: sdkws/ws.proto -package sdkws // import "Open_IM/pkg/proto/sdkws" +package sdkws // import "OpenIM/pkg/proto/sdkws" import proto "github.com/golang/protobuf/proto" import fmt "fmt" diff --git a/pkg/proto/sdkws/ws.proto b/pkg/proto/sdkws/ws.proto index 1daa1747e..684107e65 100644 --- a/pkg/proto/sdkws/ws.proto +++ b/pkg/proto/sdkws/ws.proto @@ -1,6 +1,6 @@ syntax = "proto3"; import "Open-IM-Server/pkg/proto/sdkws/wrappers.proto"; -option go_package = "Open_IM/pkg/proto/sdkws;sdkws"; +option go_package = "OpenIM/pkg/proto/sdkws;sdkws"; package sdkws; diff --git a/pkg/proto/user/user.pb.go b/pkg/proto/user/user.pb.go index 8e05e8d7e..92f1e484e 100644 --- a/pkg/proto/user/user.pb.go +++ b/pkg/proto/user/user.pb.go @@ -1,13 +1,13 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // source: user/user.proto -package user // import "Open_IM/pkg/proto/user" +package user // import "OpenIM/pkg/proto/user" import proto "github.com/golang/protobuf/proto" import fmt "fmt" import math "math" -import conversation "Open_IM/pkg/proto/conversation" -import sdkws "Open_IM/pkg/proto/sdkws" +import conversation "OpenIM/pkg/proto/conversation" +import sdkws "OpenIM/pkg/proto/sdkws" import ( context "golang.org/x/net/context" diff --git a/pkg/proto/user/user.proto b/pkg/proto/user/user.proto index 085cdafb7..e56856f3d 100644 --- a/pkg/proto/user/user.proto +++ b/pkg/proto/user/user.proto @@ -1,7 +1,7 @@ syntax = "proto3"; import "Open-IM-Server/pkg/proto/sdkws/ws.proto"; import "Open-IM-Server/pkg/proto/conversation/conversation.proto"; -option go_package = "Open_IM/pkg/proto/user;user"; +option go_package = "OpenIM/pkg/proto/user;user"; package user; diff --git a/pkg/statistics/statistics.go b/pkg/statistics/statistics.go index 63653c42f..d61c6098b 100644 --- a/pkg/statistics/statistics.go +++ b/pkg/statistics/statistics.go @@ -1,7 +1,7 @@ package statistics import ( - "Open_IM/pkg/common/log" + "OpenIM/pkg/common/log" "time" ) diff --git a/pkg/utils/callback.go b/pkg/utils/callback.go index 83793bf32..fdc1ccaa6 100644 --- a/pkg/utils/callback.go +++ b/pkg/utils/callback.go @@ -1,8 +1,8 @@ package utils import ( - "Open_IM/pkg/common/constant" - sdkws "Open_IM/pkg/proto/sdkws" + "OpenIM/pkg/common/constant" + sdkws "OpenIM/pkg/proto/sdkws" "github.com/golang/protobuf/proto" ) diff --git a/pkg/utils/file.go b/pkg/utils/file.go index b385c55d7..08c3e7940 100644 --- a/pkg/utils/file.go +++ b/pkg/utils/file.go @@ -1,7 +1,7 @@ package utils import ( - "Open_IM/pkg/common/constant" + "OpenIM/pkg/common/constant" "fmt" "math/rand" "os" diff --git a/pkg/utils/jwt_token_test.go b/pkg/utils/jwt_token_test.go index 3c4f8e4ce..66fe0de85 100644 --- a/pkg/utils/jwt_token_test.go +++ b/pkg/utils/jwt_token_test.go @@ -1,9 +1,9 @@ package utils import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/tokenverify" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/tokenverify" "testing" "time" diff --git a/pkg/utils/platform_number_id_to_name_test.go b/pkg/utils/platform_number_id_to_name_test.go index 8a956bfac..77ee6bf50 100644 --- a/pkg/utils/platform_number_id_to_name_test.go +++ b/pkg/utils/platform_number_id_to_name_test.go @@ -1,7 +1,7 @@ package utils import ( - "Open_IM/pkg/common/constant" + "OpenIM/pkg/common/constant" "testing" "github.com/stretchr/testify/assert" diff --git a/pkg/utils/strings.go b/pkg/utils/strings.go index d2896cf78..207584448 100644 --- a/pkg/utils/strings.go +++ b/pkg/utils/strings.go @@ -7,7 +7,7 @@ package utils import ( - "Open_IM/pkg/common/constant" + "OpenIM/pkg/common/constant" "encoding/json" "math/rand" "strconv" From 76565cded1cee3bde80b9b3da5b3ebbe8d0690ab Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 23 Feb 2023 19:19:01 +0800 Subject: [PATCH 02/19] push --- cmd/cmdutils/Makefile | 25 +++++++++++++++++++++++++ pkg/common/db/cache/msg.go | 14 +++++++------- pkg/common/db/controller/msg.go | 26 ++++++++++---------------- 3 files changed, 42 insertions(+), 23 deletions(-) create mode 100644 cmd/cmdutils/Makefile diff --git a/cmd/cmdutils/Makefile b/cmd/cmdutils/Makefile new file mode 100644 index 000000000..7f0bcbbe5 --- /dev/null +++ b/cmd/cmdutils/Makefile @@ -0,0 +1,25 @@ +.PHONY: all build run gotool install clean help + +BINARY_NAME=open_im_cmd_utils +BIN_DIR=../../bin/ + + +all: gotool build + +build: + CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" + +run: + @go run ./ + +gotool: + go fmt ./ + go vet ./ + +install: + make build + mv ${BINARY_NAME} ${BIN_DIR} + +clean: + @if [ -f ${BINARY_NAME} ] ; then rm ${BINARY_NAME} ; fi + diff --git a/pkg/common/db/cache/msg.go b/pkg/common/db/cache/msg.go index 0f7320c26..6e409f868 100644 --- a/pkg/common/db/cache/msg.go +++ b/pkg/common/db/cache/msg.go @@ -1,13 +1,13 @@ package cache import ( - "Open_IM/pkg/common/config" - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/tracelog" - pbChat "Open_IM/pkg/proto/msg" - pbRtc "Open_IM/pkg/proto/rtc" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + "OpenIM/pkg/common/config" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/tracelog" + pbChat "OpenIM/pkg/proto/msg" + pbRtc "OpenIM/pkg/proto/rtc" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "errors" "fmt" diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index d9d39f283..8e5213c67 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -1,21 +1,21 @@ package controller import ( - "Open_IM/pkg/common/constant" - "Open_IM/pkg/common/db/cache" - unRelationTb "Open_IM/pkg/common/db/table/unrelation" - "Open_IM/pkg/common/db/unrelation" - "Open_IM/pkg/common/log" - "Open_IM/pkg/common/prome" - "Open_IM/pkg/common/tracelog" + "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/db/cache" + unRelationTb "OpenIM/pkg/common/db/table/unrelation" + "OpenIM/pkg/common/db/unrelation" + "OpenIM/pkg/common/log" + "OpenIM/pkg/common/prome" + "OpenIM/pkg/common/tracelog" "fmt" "github.com/gogo/protobuf/sortkeys" "sync" "time" - pbMsg "Open_IM/pkg/proto/msg" - "Open_IM/pkg/proto/sdkws" - "Open_IM/pkg/utils" + pbMsg "OpenIM/pkg/proto/msg" + "OpenIM/pkg/proto/sdkws" + "OpenIM/pkg/utils" "context" "errors" "github.com/go-redis/redis/v8" @@ -71,7 +71,6 @@ type MsgDatabaseInterface interface { GetUserMinSeq(ctx context.Context, userID string) (int64, error) GetGroupMaxSeq(ctx context.Context, groupID string) (int64, error) GetGroupMinSeq(ctx context.Context, groupID string) (int64, error) - GetMessageListBySeq(ctx context.Context, userID string, seqs []int64) ([]*sdkws.MsgData, error) } func NewMsgDatabase(mgo *mongo.Client, rdb redis.UniversalClient) MsgDatabaseInterface { @@ -187,11 +186,6 @@ func (db *MsgDatabase) GetGroupMinSeq(ctx context.Context, groupID string) (int6 return db.cache.GetGroupMinSeq(ctx, groupID) } -func (db *MsgDatabase) GetMessageListBySeq(ctx context.Context, userID string, seqs []int64) ([]*sdkws.MsgData, error) { - seqMsg, _, err := db.cache.GetMessageListBySeq(ctx, userID, seqs) - return seqMsg, err -} - func (db *MsgDatabase) BatchInsertChat2DB(ctx context.Context, sourceID string, msgList []*pbMsg.MsgDataToMQ, currentMaxSeq int64) error { //newTime := utils.GetCurrentTimestampByMill() if int64(len(msgList)) > db.msg.GetSingleGocMsgNum() { From 8bdf86172f2b1bb321b736b1306ae0e871145dbb Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 23 Feb 2023 19:20:58 +0800 Subject: [PATCH 03/19] push --- internal/rpc/msg/send_pull.go | 4 ++-- pkg/common/db/cache/msg.go | 4 ++-- pkg/common/db/cache/redis.go | 2 +- pkg/common/db/cache/redis_test.go | 4 ++-- pkg/common/db/controller/msg.go | 4 ++-- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/internal/rpc/msg/send_pull.go b/internal/rpc/msg/send_pull.go index 086e91e70..bfa0a063f 100644 --- a/internal/rpc/msg/send_pull.go +++ b/internal/rpc/msg/send_pull.go @@ -287,13 +287,13 @@ func (m *msgServer) GetMaxAndMinSeq(ctx context.Context, req *sdkws.GetMaxAndMin func (m *msgServer) PullMessageBySeqList(ctx context.Context, req *sdkws.PullMessageBySeqListReq) (*sdkws.PullMessageBySeqListResp, error) { resp := &sdkws.PullMessageBySeqListResp{GroupMsgDataList: make(map[string]*sdkws.MsgDataList)} - msgs, err := m.MsgInterface.GetMessageListBySeq(ctx, req.UserID, req.Seqs) + msgs, err := m.MsgInterface.GetMessagesBySeq(ctx, req.UserID, req.Seqs) if err != nil { return nil, err } resp.List = msgs for userID, list := range req.GroupSeqList { - msgs, err := m.MsgInterface.GetMessageListBySeq(ctx, userID, req.Seqs) + msgs, err := m.MsgInterface.GetMessagesBySeq(ctx, userID, req.Seqs) if err != nil { return nil, err } diff --git a/pkg/common/db/cache/msg.go b/pkg/common/db/cache/msg.go index 6e409f868..e54ff524b 100644 --- a/pkg/common/db/cache/msg.go +++ b/pkg/common/db/cache/msg.go @@ -65,7 +65,7 @@ type MsgCache interface { SetTokenMapByUidPid(ctx context.Context, userID string, platformID int, m map[string]int) error DeleteTokenByUidPid(ctx context.Context, userID string, platformID int, fields []string) error - GetMessageListBySeq(ctx context.Context, userID string, seqList []int64) (seqMsg []*sdkws.MsgData, failedSeqList []int64, err error) + GetMessagesBySeq(ctx context.Context, userID string, seqList []int64) (seqMsg []*sdkws.MsgData, failedSeqList []int64, err error) SetMessageToCache(ctx context.Context, userID string, msgList []*pbChat.MsgDataToMQ) (int, error) DeleteMessageFromCache(ctx context.Context, userID string, msgList []*pbChat.MsgDataToMQ) error CleanUpOneUserAllMsg(ctx context.Context, userID string) error @@ -191,7 +191,7 @@ func (m *msgCache) DeleteTokenByUidPid(ctx context.Context, userID string, platf return utils.Wrap1(m.rdb.HDel(ctx, key, fields...).Err()) } -func (m *msgCache) GetMessageListBySeq(ctx context.Context, userID string, seqList []int64) (seqMsg []*sdkws.MsgData, failedSeqList []int64, err error) { +func (m *msgCache) GetMessagesBySeq(ctx context.Context, userID string, seqList []int64) (seqMsg []*sdkws.MsgData, failedSeqList []int64, err error) { var errResult error for _, v := range seqList { //MESSAGE_CACHE:169.254.225.224_reliability1653387820_0_1 diff --git a/pkg/common/db/cache/redis.go b/pkg/common/db/cache/redis.go index 46ab5db96..8869eaf59 100644 --- a/pkg/common/db/cache/redis.go +++ b/pkg/common/db/cache/redis.go @@ -59,7 +59,7 @@ type Cache interface { SetTokenMapByUidPid(ctx context.Context, userID string, platformID int, m map[string]int) error DeleteTokenByUidPid(ctx context.Context, userID string, platformID int, fields []string) error - GetMessageListBySeq(ctx context.Context, userID string, seqList []int64) (seqMsg []*sdkws.MsgData, failedSeqList []int64, err error) + GetMessagesBySeq(ctx context.Context, userID string, seqList []int64) (seqMsg []*sdkws.MsgData, failedSeqList []int64, err error) SetMessageToCache(ctx context.Context, userID string, msgList []*pbChat.MsgDataToMQ) (int, error) DeleteMessageFromCache(ctx context.Context, userID string, msgList []*pbChat.MsgDataToMQ) error CleanUpOneUserAllMsg(ctx context.Context, userID string) error diff --git a/pkg/common/db/cache/redis_test.go b/pkg/common/db/cache/redis_test.go index 9b977db08..549354759 100644 --- a/pkg/common/db/cache/redis_test.go +++ b/pkg/common/db/cache/redis_test.go @@ -77,7 +77,7 @@ func Test_NewSetMessageToCache(t *testing.T) { assert.Nil(t, err) } -func Test_NewGetMessageListBySeq(t *testing.T) { +func Test_NewGetMessagesBySeq(t *testing.T) { var msg pbChat.MsgDataToMQ var data common.MsgData uid := "test_uid" @@ -85,7 +85,7 @@ func Test_NewGetMessageListBySeq(t *testing.T) { data.ClientMsgID = "23jwhjsdf" msg.MsgData = &data - seqMsg, failedSeqList, err := DB.GetMessageListBySeq(uid, []uint32{1212}, "cacheTest") + seqMsg, failedSeqList, err := DB.GetMessagesBySeq(uid, []uint32{1212}, "cacheTest") assert.Nil(t, err) fmt.Println(seqMsg, failedSeqList) diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index 8e5213c67..c7083fbc8 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -458,7 +458,7 @@ func (db *MsgDatabase) getMsgBySeqs(ctx context.Context, sourceID string, seqs [ } func (db *MsgDatabase) GetMsgBySeqs(ctx context.Context, userID string, seqs []int64) (seqMsg []*sdkws.MsgData, err error) { - successMsgs, failedSeqs, err := db.cache.GetMessageListBySeq(ctx, userID, seqs) + successMsgs, failedSeqs, err := db.cache.GetMessagesBySeq(ctx, userID, seqs) if err != nil { if err != redis.Nil { prome.PromeAdd(prome.MsgPullFromRedisFailedCounter, len(failedSeqs)) @@ -479,7 +479,7 @@ func (db *MsgDatabase) GetMsgBySeqs(ctx context.Context, userID string, seqs []i } func (db *MsgDatabase) GetSuperGroupMsgBySeqs(ctx context.Context, groupID string, seqs []int64) (seqMsg []*sdkws.MsgData, err error) { - successMsgs, failedSeqs, err := db.cache.GetMessageListBySeq(ctx, groupID, seqs) + successMsgs, failedSeqs, err := db.cache.GetMessagesBySeq(ctx, groupID, seqs) if err != nil { if err != redis.Nil { prome.PromeAdd(prome.MsgPullFromRedisFailedCounter, len(failedSeqs)) From a26ca657fed44ca21b7cacde80bca48febeade7a Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 23 Feb 2023 19:41:44 +0800 Subject: [PATCH 04/19] config path --- cmd/api/main.go | 7 ++++++- cmd/cmdutils/main.go | 3 +++ cmd/crontask/main.go | 5 +++++ cmd/msggateway/main.go | 2 ++ cmd/msgtransfer/main.go | 2 ++ cmd/push/main.go | 2 ++ internal/startrpc/start.go | 2 ++ pkg/common/config/config.go | 9 +++------ script/path_info.cfg | 30 ++++++++++++++++++------------ 9 files changed, 43 insertions(+), 19 deletions(-) diff --git a/cmd/api/main.go b/cmd/api/main.go index fdc11912f..8deb577ce 100644 --- a/cmd/api/main.go +++ b/cmd/api/main.go @@ -18,8 +18,9 @@ func main() { router := api.NewGinRouter() go third.MinioInit() ginPort := flag.Int("port", config.Config.Api.GinPort[0], "get ginServerPort from cmd,default 10002 as port") + configPath := flag.String("config_path", "../config/", "config folder") flag.Parse() - config.InitConfig() + config.InitConfig(*configPath) address := "0.0.0.0:" + strconv.Itoa(*ginPort) if config.Config.Api.ListenIP != "" { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) @@ -31,3 +32,7 @@ func main() { panic("api start failed " + err.Error()) } } + +func T() { + +} diff --git a/cmd/cmdutils/main.go b/cmd/cmdutils/main.go index c05b85b5e..ae6b8ef73 100644 --- a/cmd/cmdutils/main.go +++ b/cmd/cmdutils/main.go @@ -2,6 +2,7 @@ package main import ( "OpenIM/internal/task" + "OpenIM/pkg/common/config" "flag" "fmt" "time" @@ -11,7 +12,9 @@ func main() { var userID = flag.String("user_id", "", "userID to clear msg and reset seq") var superGroupID = flag.String("super_group_id", "", "superGroupID to clear msg and reset seq") var fixAllSeq = flag.Bool("fix_all_seq", false, "fix seq") + var configPath = flag.String("config_path", "../config/", "config folder") flag.Parse() + config.InitConfig(*configPath) fmt.Println(time.Now(), "start cronTask", *userID, *superGroupID) task.FixSeq(*userID, *superGroupID, *fixAllSeq) } diff --git a/cmd/crontask/main.go b/cmd/crontask/main.go index 0b25831cd..3c8939e89 100644 --- a/cmd/crontask/main.go +++ b/cmd/crontask/main.go @@ -2,12 +2,17 @@ package main import ( "OpenIM/internal/task" + "OpenIM/pkg/common/config" + "flag" "fmt" "time" ) func main() { fmt.Println(time.Now(), "start cronTask") + var configPath = flag.String("config_path", "../config/", "config folder") + flag.Parse() + config.InitConfig(*configPath) if err := task.StartCronTask(); err != nil { panic(err.Error()) } diff --git a/cmd/msggateway/main.go b/cmd/msggateway/main.go index 677cb056b..21ac9f2cf 100644 --- a/cmd/msggateway/main.go +++ b/cmd/msggateway/main.go @@ -18,7 +18,9 @@ func main() { rpcPort := flag.Int("rpc_port", defaultRpcPorts[0], "rpc listening port") wsPort := flag.Int("ws_port", defaultWsPorts[0], "ws listening port") prometheusPort := flag.Int("prometheus_port", defaultPromePorts[0], "PushrometheusPort default listen port") + configPath := flag.String("config_path", "../config/", "config folder") flag.Parse() + config.InitConfig(*configPath) var wg sync.WaitGroup wg.Add(1) fmt.Println("start rpc/msg_gateway server, port: ", *rpcPort, *wsPort, *prometheusPort, ", OpenIM version: ", constant.CurrentVersion, "\n") diff --git a/cmd/msgtransfer/main.go b/cmd/msgtransfer/main.go index 2cc17d388..3828a56f6 100644 --- a/cmd/msgtransfer/main.go +++ b/cmd/msgtransfer/main.go @@ -14,7 +14,9 @@ func main() { var wg sync.WaitGroup wg.Add(1) prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.MessageTransferPrometheusPort[0], "MessageTransferPrometheusPort default listen port") + configPath := flag.String("config_path", "../config/", "config folder") flag.Parse() + config.InitConfig(*configPath) log.NewPrivateLog(constant.LogFileName) msgTransfer := msgtransfer.NewMsgTransfer() fmt.Println("start msg_transfer server ", ", OpenIM version: ", constant.CurrentVersion, "\n") diff --git a/cmd/push/main.go b/cmd/push/main.go index 261fc5a92..45b0b7d1c 100644 --- a/cmd/push/main.go +++ b/cmd/push/main.go @@ -14,7 +14,9 @@ func main() { defaultPorts := config.Config.RpcPort.OpenImPushPort rpcPort := flag.Int("port", defaultPorts[0], "rpc listening port") prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.MessageTransferPrometheusPort[0], "PushrometheusPort default listen port") + configPath := flag.String("config_path", "../config/", "config folder") flag.Parse() + config.InitConfig(*configPath) var wg sync.WaitGroup wg.Add(1) log.NewPrivateLog(constant.LogFileName) diff --git a/internal/startrpc/start.go b/internal/startrpc/start.go index 43ae2e975..fc8121ca9 100644 --- a/internal/startrpc/start.go +++ b/internal/startrpc/start.go @@ -18,7 +18,9 @@ import ( func start(rpcPorts []int, rpcRegisterName string, prometheusPorts []int, rpcFn func(client *openKeeper.ZkClient, server *grpc.Server) error, options []grpc.ServerOption) error { flagRpcPort := flag.Int("port", rpcPorts[0], "get RpcGroupPort from cmd,default 16000 as port") flagPrometheusPort := flag.Int("prometheus_port", prometheusPorts[0], "groupPrometheusPort default listen port") + configPath := flag.String("config_path", "../config/", "config folder") flag.Parse() + config.InitConfig(*configPath) fmt.Println("start group rpc server, port: ", *flagRpcPort, ", OpenIM version: ", constant.CurrentVersion) log.NewPrivateLog(constant.LogFileName) listener, err := net.Listen("tcp", fmt.Sprintf("%s:%d", config.Config.ListenIP, *flagRpcPort)) diff --git a/pkg/common/config/config.go b/pkg/common/config/config.go index 6adc26471..7032aa419 100644 --- a/pkg/common/config/config.go +++ b/pkg/common/config/config.go @@ -1,7 +1,6 @@ package config import ( - "flag" "fmt" "io/ioutil" "os" @@ -537,10 +536,8 @@ func initConfig(config interface{}, configName, configPath string) { unmarshalConfig(config, configPath) } -func InitConfig() { - configPath := flag.String("config_path", "../config/", "config folder") - flag.Parse() - initConfig(&Config, "config.yaml", *configPath) - initConfig(&NotificationConfig, "notification.yaml", *configPath) +func InitConfig(configPath string) { + initConfig(&Config, "config.yaml", configPath) + initConfig(&NotificationConfig, "notification.yaml", configPath) Config.Notification = NotificationConfig.Notification } diff --git a/script/path_info.cfg b/script/path_info.cfg index f747dc1da..3c7164a63 100644 --- a/script/path_info.cfg +++ b/script/path_info.cfg @@ -1,21 +1,21 @@ #Don't put the space between "=" msg_gateway_name="open_im_msg_gateway" msg_gateway_binary_root="../bin/" -msg_gateway_source_root="../cmd/open_im_msg_gateway/" +msg_gateway_source_root="../cmd/msggateway/" msg_name="open_im_msg" msg_binary_root="../bin/" -msg_source_root="../cmd/rpc/open_im_msg/" +msg_source_root="../cmd/rpc/msg/" push_name="open_im_push" push_binary_root="../bin/" -push_source_root="../cmd/open_im_push/" +push_source_root="../cmd/push/" msg_transfer_name="open_im_msg_transfer" msg_transfer_binary_root="../bin/" -msg_transfer_source_root="../cmd/open_im_msg_transfer/" +msg_transfer_source_root="../cmd/msgtransfer/" msg_transfer_service_num=4 @@ -26,23 +26,28 @@ sdk_server_source_root="../cmd/Open-IM-SDK-Core/" cron_task_name="open_im_cron_task" cron_task_binary_root="../bin/" -cron_task_source_root="../cmd/open_im_cron_task/" +cron_task_source_root="../cmd/crontask/" +cmd_utils_name="open_im_cmd_utils" +cmd_utils_binary_root="../bin/" +cmd_utils_source_root="../cmd/cmduitls/" + #Global configuration file default dir config_path="../config/config.yaml" #servicefile dir path service_source_root=( #api service file - ../cmd/open_im_api/ + ../cmd/api/ #rpc service file - ../cmd/rpc/open_im_user/ - ../cmd/rpc/open_im_friend/ - ../cmd/rpc/open_im_group/ - ../cmd/rpc/open_im_auth/ - ../cmd/rpc/open_im_conversation/ - ../cmd/open_im_cron_task + ../cmd/rpc/user/ + ../cmd/rpc/friend/ + ../cmd/rpc/group/ + ../cmd/rpc/auth/ + ../cmd/rpc/conversation/ + ../cmd/crontask + ../cmd/cmdutils ${msg_gateway_source_root} ${msg_transfer_source_root} ${msg_source_root} @@ -60,6 +65,7 @@ service_names=( open_im_auth open_im_conversation open_im_cron_task + open_im_cmd_utils ${msg_gateway_name} ${msg_transfer_name} ${msg_name} From b41a0a66eff754573fb9cc2a064edf0d3d7c1926 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 23 Feb 2023 19:42:13 +0800 Subject: [PATCH 05/19] config path --- cmd/api/main.go | 4 ---- 1 file changed, 4 deletions(-) diff --git a/cmd/api/main.go b/cmd/api/main.go index 8deb577ce..4358044c4 100644 --- a/cmd/api/main.go +++ b/cmd/api/main.go @@ -32,7 +32,3 @@ func main() { panic("api start failed " + err.Error()) } } - -func T() { - -} From 9f8833baa18ea53e679c74e2a8f859956d582a9f Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 23 Feb 2023 19:44:22 +0800 Subject: [PATCH 06/19] config path --- internal/startrpc/start.go | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/internal/startrpc/start.go b/internal/startrpc/start.go index fc8121ca9..51de09fe0 100644 --- a/internal/startrpc/start.go +++ b/internal/startrpc/start.go @@ -6,7 +6,7 @@ import ( "OpenIM/pkg/common/constant" "OpenIM/pkg/common/log" "OpenIM/pkg/common/middleware" - promePkg "OpenIM/pkg/common/prome" + "OpenIM/pkg/common/prome" "flag" "fmt" "github.com/OpenIMSDK/openKeeper" @@ -39,11 +39,11 @@ func start(rpcPorts []int, rpcRegisterName string, prometheusPorts []int, rpcFn } options = append(options, grpc.UnaryInterceptor(middleware.RpcServerInterceptor)) // ctx 中间件 if config.Config.Prometheus.Enable { - promePkg.NewGrpcRequestCounter() - promePkg.NewGrpcRequestFailedCounter() - promePkg.NewGrpcRequestSuccessCounter() + prome.NewGrpcRequestCounter() + prome.NewGrpcRequestFailedCounter() + prome.NewGrpcRequestSuccessCounter() options = append(options, []grpc.ServerOption{ - // grpc.UnaryInterceptor(promePkg.UnaryServerInterceptorProme), + grpc.UnaryInterceptor(prome.UnaryServerInterceptorPrometheus), grpc.StreamInterceptor(grpcPrometheus.StreamServerInterceptor), grpc.UnaryInterceptor(grpcPrometheus.UnaryServerInterceptor), }...) @@ -55,7 +55,7 @@ func start(rpcPorts []int, rpcRegisterName string, prometheusPorts []int, rpcFn return err } if config.Config.Prometheus.Enable { - err := promePkg.StartPromeSrv(*flagPrometheusPort) + err := prome.StartPromeSrv(*flagPrometheusPort) if err != nil { return err } From c74841fd96582c670f37a5825a9ea09a67ad2998 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 23 Feb 2023 19:44:43 +0800 Subject: [PATCH 07/19] config path --- internal/startrpc/start.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/startrpc/start.go b/internal/startrpc/start.go index 51de09fe0..e92f256f5 100644 --- a/internal/startrpc/start.go +++ b/internal/startrpc/start.go @@ -43,7 +43,7 @@ func start(rpcPorts []int, rpcRegisterName string, prometheusPorts []int, rpcFn prome.NewGrpcRequestFailedCounter() prome.NewGrpcRequestSuccessCounter() options = append(options, []grpc.ServerOption{ - grpc.UnaryInterceptor(prome.UnaryServerInterceptorPrometheus), + //grpc.UnaryInterceptor(prome.UnaryServerInterceptorPrometheus), grpc.StreamInterceptor(grpcPrometheus.StreamServerInterceptor), grpc.UnaryInterceptor(grpcPrometheus.UnaryServerInterceptor), }...) From 50664c2486370695ca10d8a94f0a6da844928c6f Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 23 Feb 2023 19:45:44 +0800 Subject: [PATCH 08/19] config path --- deployk8s/path_info.cfg | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/deployk8s/path_info.cfg b/deployk8s/path_info.cfg index cc7bf195e..52d8a26d0 100644 --- a/deployk8s/path_info.cfg +++ b/deployk8s/path_info.cfg @@ -8,8 +8,8 @@ service=( group auth conversation - msggateway - msgtransfer + msg_gateway + msg_transfer msg push ) \ No newline at end of file From 7930c230e4818f602af14a944b38b5d2d386fef2 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 23 Feb 2023 19:51:58 +0800 Subject: [PATCH 09/19] config path --- cmd/api/main.go | 4 +- cmd/cmdutils/main.go | 4 +- cmd/crontask/main.go | 4 +- cmd/msggateway/main.go | 4 +- cmd/msgtransfer/main.go | 4 +- cmd/push/main.go | 4 +- internal/startrpc/start.go | 4 +- pkg/common/config/config.go | 23 +++++---- pkg/common/db/table/relation/statistics.go | 30 ------------ pkg/common/db/unrelation/super_group.go | 54 +++++++++------------- 10 files changed, 57 insertions(+), 78 deletions(-) delete mode 100644 pkg/common/db/table/relation/statistics.go diff --git a/cmd/api/main.go b/cmd/api/main.go index 4358044c4..c1b0bb6de 100644 --- a/cmd/api/main.go +++ b/cmd/api/main.go @@ -20,7 +20,9 @@ func main() { ginPort := flag.Int("port", config.Config.Api.GinPort[0], "get ginServerPort from cmd,default 10002 as port") configPath := flag.String("config_path", "../config/", "config folder") flag.Parse() - config.InitConfig(*configPath) + if err := config.InitConfig(*configPath); err != nil { + panic(err.Error()) + } address := "0.0.0.0:" + strconv.Itoa(*ginPort) if config.Config.Api.ListenIP != "" { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) diff --git a/cmd/cmdutils/main.go b/cmd/cmdutils/main.go index ae6b8ef73..9957698a3 100644 --- a/cmd/cmdutils/main.go +++ b/cmd/cmdutils/main.go @@ -14,7 +14,9 @@ func main() { var fixAllSeq = flag.Bool("fix_all_seq", false, "fix seq") var configPath = flag.String("config_path", "../config/", "config folder") flag.Parse() - config.InitConfig(*configPath) + if err := config.InitConfig(*configPath); err != nil { + panic(err.Error()) + } fmt.Println(time.Now(), "start cronTask", *userID, *superGroupID) task.FixSeq(*userID, *superGroupID, *fixAllSeq) } diff --git a/cmd/crontask/main.go b/cmd/crontask/main.go index 3c8939e89..1908e6d4c 100644 --- a/cmd/crontask/main.go +++ b/cmd/crontask/main.go @@ -12,7 +12,9 @@ func main() { fmt.Println(time.Now(), "start cronTask") var configPath = flag.String("config_path", "../config/", "config folder") flag.Parse() - config.InitConfig(*configPath) + if err := config.InitConfig(*configPath); err != nil { + panic(err.Error()) + } if err := task.StartCronTask(); err != nil { panic(err.Error()) } diff --git a/cmd/msggateway/main.go b/cmd/msggateway/main.go index 21ac9f2cf..4c3ce7d94 100644 --- a/cmd/msggateway/main.go +++ b/cmd/msggateway/main.go @@ -20,7 +20,9 @@ func main() { prometheusPort := flag.Int("prometheus_port", defaultPromePorts[0], "PushrometheusPort default listen port") configPath := flag.String("config_path", "../config/", "config folder") flag.Parse() - config.InitConfig(*configPath) + if err := config.InitConfig(*configPath); err != nil { + panic(err.Error()) + } var wg sync.WaitGroup wg.Add(1) fmt.Println("start rpc/msg_gateway server, port: ", *rpcPort, *wsPort, *prometheusPort, ", OpenIM version: ", constant.CurrentVersion, "\n") diff --git a/cmd/msgtransfer/main.go b/cmd/msgtransfer/main.go index 3828a56f6..1f57b2792 100644 --- a/cmd/msgtransfer/main.go +++ b/cmd/msgtransfer/main.go @@ -16,7 +16,9 @@ func main() { prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.MessageTransferPrometheusPort[0], "MessageTransferPrometheusPort default listen port") configPath := flag.String("config_path", "../config/", "config folder") flag.Parse() - config.InitConfig(*configPath) + if err := config.InitConfig(*configPath); err != nil { + panic(err.Error()) + } log.NewPrivateLog(constant.LogFileName) msgTransfer := msgtransfer.NewMsgTransfer() fmt.Println("start msg_transfer server ", ", OpenIM version: ", constant.CurrentVersion, "\n") diff --git a/cmd/push/main.go b/cmd/push/main.go index 45b0b7d1c..85be2d6a3 100644 --- a/cmd/push/main.go +++ b/cmd/push/main.go @@ -16,7 +16,9 @@ func main() { prometheusPort := flag.Int("prometheus_port", config.Config.Prometheus.MessageTransferPrometheusPort[0], "PushrometheusPort default listen port") configPath := flag.String("config_path", "../config/", "config folder") flag.Parse() - config.InitConfig(*configPath) + if err := config.InitConfig(*configPath); err != nil { + panic(err.Error()) + } var wg sync.WaitGroup wg.Add(1) log.NewPrivateLog(constant.LogFileName) diff --git a/internal/startrpc/start.go b/internal/startrpc/start.go index e92f256f5..c6beb4880 100644 --- a/internal/startrpc/start.go +++ b/internal/startrpc/start.go @@ -20,7 +20,9 @@ func start(rpcPorts []int, rpcRegisterName string, prometheusPorts []int, rpcFn flagPrometheusPort := flag.Int("prometheus_port", prometheusPorts[0], "groupPrometheusPort default listen port") configPath := flag.String("config_path", "../config/", "config folder") flag.Parse() - config.InitConfig(*configPath) + if err := config.InitConfig(*configPath); err != nil { + return err + } fmt.Println("start group rpc server, port: ", *flagRpcPort, ", OpenIM version: ", constant.CurrentVersion) log.NewPrivateLog(constant.LogFileName) listener, err := net.Listen("tcp", fmt.Sprintf("%s:%d", config.Config.ListenIP, *flagRpcPort)) diff --git a/pkg/common/config/config.go b/pkg/common/config/config.go index 7032aa419..8590f1d0d 100644 --- a/pkg/common/config/config.go +++ b/pkg/common/config/config.go @@ -502,17 +502,17 @@ type Notification struct { } `yaml:"signal"` } -func unmarshalConfig(config interface{}, configPath string) { +func unmarshalConfig(config interface{}, configPath string) error { bytes, err := ioutil.ReadFile(configPath) if err != nil { - panic(err.Error() + configPath) + return err } if err = yaml.Unmarshal(bytes, config); err != nil { - panic(err.Error()) + return err } } -func initConfig(config interface{}, configName, configPath string) { +func initConfig(config interface{}, configName, configPath string) error { if configPath == "" { var env = "CONFIG_NAME" if configName == "config.yaml" { @@ -533,11 +533,18 @@ func initConfig(config interface{}, configName, configPath string) { configPath = fmt.Sprintf("../config/%s", configName) } } - unmarshalConfig(config, configPath) + return unmarshalConfig(config, configPath) } -func InitConfig(configPath string) { - initConfig(&Config, "config.yaml", configPath) - initConfig(&NotificationConfig, "notification.yaml", configPath) +func InitConfig(configPath string) error { + err := initConfig(&Config, "config.yaml", configPath) + if err != nil { + return err + } + err = initConfig(&NotificationConfig, "notification.yaml", configPath) + if err != nil { + return err + } Config.Notification = NotificationConfig.Notification + return nil } diff --git a/pkg/common/db/table/relation/statistics.go b/pkg/common/db/table/relation/statistics.go deleted file mode 100644 index fd2af5f84..000000000 --- a/pkg/common/db/table/relation/statistics.go +++ /dev/null @@ -1,30 +0,0 @@ -package relation - -import "time" - -// these two is virtual table just for cms -type ActiveGroup struct { - Name string - ID string `gorm:"column:recv_id"` - MessageNum int `gorm:"column:message_num"` -} - -type ActiveUser struct { - Name string - ID string `gorm:"column:send_id"` - MessageNum int `gorm:"column:message_num"` -} - -type StatisticsInterface interface { - GetActiveUserNum(from, to time.Time) (num int64, err error) - GetIncreaseUserNum(from, to time.Time) (num int64, err error) - GetTotalUserNum() (num int64, err error) - GetTotalUserNumByDate(to time.Time) (num int64, err error) - GetSingleChatMessageNum(from, to time.Time) (num int64, err error) - GetGroupMessageNum(from, to time.Time) (num int64, err error) - GetIncreaseGroupNum(from, to time.Time) (num int64, err error) - GetTotalGroupNum() (num int64, err error) - GetGroupNum(to time.Time) (num int64, err error) - GetActiveGroups(from, to time.Time, limit int) ([]*ActiveGroup, error) - GetActiveUsers(from, to time.Time, limit int) (activeUsers []*ActiveUser, err error) -} diff --git a/pkg/common/db/unrelation/super_group.go b/pkg/common/db/unrelation/super_group.go index cd873c190..4ab702827 100644 --- a/pkg/common/db/unrelation/super_group.go +++ b/pkg/common/db/unrelation/super_group.go @@ -57,7 +57,6 @@ func (s *SuperGroupMongoDriver) FindSuperGroup(ctx context.Context, groupIDs []s return nil, err } defer cursor.Close(ctx) - if err := cursor.All(ctx, &groups); err != nil { return nil, utils.Wrap(err, "") } @@ -65,43 +64,32 @@ func (s *SuperGroupMongoDriver) FindSuperGroup(ctx context.Context, groupIDs []s } func (s *SuperGroupMongoDriver) AddUserToSuperGroup(ctx context.Context, groupID string, userIDs []string) error { - opts := options.Session().SetDefaultReadConcern(readconcern.Majority()) - return s.MgoDB.Client().UseSessionWithOptions(ctx, opts, func(sCtx mongo.SessionContext) error { - _, err := s.superGroupCollection.UpdateOne(sCtx, bson.M{"group_id": groupID}, bson.M{"$addToSet": bson.M{"member_id_list": bson.M{"$each": userIDs}}}) + _, err := s.superGroupCollection.UpdateOne(ctx, bson.M{"group_id": groupID}, bson.M{"$addToSet": bson.M{"member_id_list": bson.M{"$each": userIDs}}}) + if err != nil { + return err + } + upsert := true + opts := &options.UpdateOptions{ + Upsert: &upsert, + } + for _, userID := range userIDs { + _, err = s.userToSuperGroupCollection.UpdateOne(ctx, bson.M{"user_id": userID}, bson.M{"$addToSet": bson.M{"group_id_list": groupID}}, opts) if err != nil { - _ = sCtx.AbortTransaction(ctx) - return err + return utils.Wrap(err, "transaction failed") } - upsert := true - opts := &options.UpdateOptions{ - Upsert: &upsert, - } - for _, userID := range userIDs { - _, err = s.userToSuperGroupCollection.UpdateOne(sCtx, bson.M{"user_id": userID}, bson.M{"$addToSet": bson.M{"group_id_list": groupID}}, opts) - if err != nil { - _ = sCtx.AbortTransaction(ctx) - return utils.Wrap(err, "transaction failed") - } - } - return sCtx.CommitTransaction(ctx) - }) + } } func (s *SuperGroupMongoDriver) RemoverUserFromSuperGroup(ctx context.Context, groupID string, userIDs []string) error { - opts := options.Session().SetDefaultReadConcern(readconcern.Majority()) - return s.MgoDB.Client().UseSessionWithOptions(ctx, opts, func(sCtx mongo.SessionContext) error { - _, err := s.superGroupCollection.UpdateOne(sCtx, bson.M{"group_id": groupID}, bson.M{"$pull": bson.M{"member_id_list": bson.M{"$in": userIDs}}}) - if err != nil { - _ = sCtx.AbortTransaction(ctx) - return err - } - err = s.RemoveGroupFromUser(sCtx, groupID, userIDs) - if err != nil { - _ = sCtx.AbortTransaction(ctx) - return err - } - return sCtx.CommitTransaction(ctx) - }) + _, err := s.superGroupCollection.UpdateOne(ctx, bson.M{"group_id": groupID}, bson.M{"$pull": bson.M{"member_id_list": bson.M{"$in": userIDs}}}) + if err != nil { + return err + } + err = s.RemoveGroupFromUser(ctx, groupID, userIDs) + if err != nil { + return err + } + return nil } func (s *SuperGroupMongoDriver) GetSuperGroupByUserID(ctx context.Context, userID string) (*unrelation.UserToSuperGroupModel, error) { From 1e43ad2fc02953c50669cae5c609cf43f6dc5013 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 23 Feb 2023 19:55:38 +0800 Subject: [PATCH 10/19] config path --- internal/msgtransfer/modify_msg_handler.go | 2 -- 1 file changed, 2 deletions(-) diff --git a/internal/msgtransfer/modify_msg_handler.go b/internal/msgtransfer/modify_msg_handler.go index 27b31c9c3..dc4f8e1c0 100644 --- a/internal/msgtransfer/modify_msg_handler.go +++ b/internal/msgtransfer/modify_msg_handler.go @@ -4,7 +4,6 @@ import ( "OpenIM/pkg/apistruct" "OpenIM/pkg/common/config" "OpenIM/pkg/common/constant" - "OpenIM/pkg/common/db/cache" "OpenIM/pkg/common/db/controller" unRelationTb "OpenIM/pkg/common/db/table/unrelation" kfk "OpenIM/pkg/common/kafka" @@ -24,7 +23,6 @@ type ModifyMsgConsumerHandler struct { modifyMsgConsumerGroup *kfk.MConsumerGroup extendMsgInterface controller.ExtendMsgInterface - cache cache.MsgCache } func (mmc *ModifyMsgConsumerHandler) Init() { From e103644929ba38ac23ab05f373c754497bd8a7b9 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 23 Feb 2023 19:57:37 +0800 Subject: [PATCH 11/19] config path --- cmdutils/mongo/cmd/main.go | 45 -------------------------- cmdutils/mongo/mongo_utils.go | 59 ----------------------------------- 2 files changed, 104 deletions(-) delete mode 100644 cmdutils/mongo/cmd/main.go delete mode 100644 cmdutils/mongo/mongo_utils.go diff --git a/cmdutils/mongo/cmd/main.go b/cmdutils/mongo/cmd/main.go deleted file mode 100644 index ffa5986f5..000000000 --- a/cmdutils/mongo/cmd/main.go +++ /dev/null @@ -1,45 +0,0 @@ -package main - -import ( - mongoUtils "OpenIM/cmdutils/mongo" - "OpenIM/pkg/common/config" - "context" - "flag" - "fmt" - "go.mongodb.org/mongo-driver/mongo" - "go.mongodb.org/mongo-driver/mongo/options" -) - -func init() { - uri := "mongodb://sample.host:27017/?maxPoolSize=20&w=majority" - if config.Config.Mongo.DBUri != "" { - // example: mongodb://$user:$password@mongo1.mongo:27017,mongo2.mongo:27017,mongo3.mongo:27017/$DBDatabase/?replicaSet=rs0&readPreference=secondary&authSource=admin&maxPoolSize=$DBMaxPoolSize - uri = config.Config.Mongo.DBUri - } else { - if config.Config.Mongo.DBPassword != "" && config.Config.Mongo.DBUserName != "" { - uri = fmt.Sprintf("mongodb://%s:%s@%s/%s?maxPoolSize=%d", config.Config.Mongo.DBUserName, config.Config.Mongo.DBPassword, config.Config.Mongo.DBAddress, - config.Config.Mongo.DBDatabase, config.Config.Mongo.DBMaxPoolSize) - } else { - uri = fmt.Sprintf("mongodb://%s/%s/?maxPoolSize=%d", - config.Config.Mongo.DBAddress, config.Config.Mongo.DBDatabase, - config.Config.Mongo.DBMaxPoolSize) - } - } - var err error - mongoUtils.Client, err = mongo.Connect(context.TODO(), options.Client().ApplyURI(uri)) - if err != nil { - panic(err) - } - err = mongoUtils.Client.Ping(context.TODO(), nil) - if err != nil { - panic(err) - } - fmt.Println("Connected to MongoDB!") -} - -func main() { - userID := flag.String("userID", "", "userID") - flag.Parse() - fmt.Println("userID:", *userID) - mongoUtils.GetUserAllChat(*userID) -} diff --git a/cmdutils/mongo/mongo_utils.go b/cmdutils/mongo/mongo_utils.go deleted file mode 100644 index dd9497a1a..000000000 --- a/cmdutils/mongo/mongo_utils.go +++ /dev/null @@ -1,59 +0,0 @@ -package mongo - -import ( - "OpenIM/pkg/common/config" - sdkws "OpenIM/pkg/proto/sdkws" - "context" - "fmt" - "github.com/golang/protobuf/proto" - "go.mongodb.org/mongo-driver/mongo" - "gopkg.in/mgo.v2/bson" - "time" -) - -var ( - Client *mongo.Client -) - -type MsgInfo struct { - SendTime int64 - Msg []byte -} - -type UserChat struct { - UID string - Msg []MsgInfo -} - -func GetUserAllChat(uid string) { - ctx, _ := context.WithTimeout(context.Background(), time.Duration(config.Config.Mongo.DBTimeout)*time.Second) - collection := Client.Database(config.Config.Mongo.DBDatabase).Collection("msg") - var userChatList []UserChat - uid = uid + ":" - filter := bson.M{"uid": bson.M{"$regex": uid}} - //filter := bson.M{"uid": "17726378428:0"} - result, err := collection.Find(context.Background(), filter) - if err != nil { - fmt.Println("find error", err.Error()) - return - } - if err := result.All(ctx, &userChatList); err != nil { - fmt.Println(err.Error()) - } - for _, userChat := range userChatList { - for _, msg := range userChat.Msg { - msgData := &sdkws.MsgData{} - err := proto.Unmarshal(msg.Msg, msgData) - if err != nil { - fmt.Println(err.Error(), msg) - continue - } - fmt.Println("seq: ", msgData.Seq, "status: ", msgData.Status, - "sendID: ", msgData.SendID, "recvID: ", msgData.RecvID, - "sendTime: ", msgData.SendTime, - "clientMsgID: ", msgData.ClientMsgID, - "serverMsgID: ", msgData.ServerMsgID, - "content: ", string(msgData.Content)) - } - } -} From 3106f671af34a6a89ad38e5b01919ca0b1795232 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Fri, 24 Feb 2023 10:41:34 +0800 Subject: [PATCH 12/19] config path --- internal/push/getui/push.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/internal/push/getui/push.go b/internal/push/getui/push.go index 461956675..02436a8d3 100644 --- a/internal/push/getui/push.go +++ b/internal/push/getui/push.go @@ -70,8 +70,9 @@ func (g *Client) Push(ctx context.Context, userIDs []string, title, content stri for i, v := range s.GetSplitResult() { go func(index int, userIDs []string) { defer wg.Done() - if err = g.batchPush(ctx, token, userIDs, pushReq); err != nil { + if err2 := g.batchPush(ctx, token, userIDs, pushReq); err2 != nil { log.NewError(tracelog.GetOperationID(ctx), "batchPush failed", i, token, pushReq) + err = err2 } }(i, v.Item) } From dd7a7d9cdad131053dd68c0bfc19257039dfc170 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Fri, 24 Feb 2023 10:47:36 +0800 Subject: [PATCH 13/19] config path --- internal/rpc/msg/send_pull.go | 2 +- pkg/common/db/controller/msg.go | 82 ++++++++++++++++----------------- 2 files changed, 42 insertions(+), 42 deletions(-) diff --git a/internal/rpc/msg/send_pull.go b/internal/rpc/msg/send_pull.go index bfa0a063f..3919b125d 100644 --- a/internal/rpc/msg/send_pull.go +++ b/internal/rpc/msg/send_pull.go @@ -287,7 +287,7 @@ func (m *msgServer) GetMaxAndMinSeq(ctx context.Context, req *sdkws.GetMaxAndMin func (m *msgServer) PullMessageBySeqList(ctx context.Context, req *sdkws.PullMessageBySeqListReq) (*sdkws.PullMessageBySeqListResp, error) { resp := &sdkws.PullMessageBySeqListResp{GroupMsgDataList: make(map[string]*sdkws.MsgDataList)} - msgs, err := m.MsgInterface.GetMessagesBySeq(ctx, req.UserID, req.Seqs) + msgs, err := m.MsgInterface.GetMessagesBySeqs(ctx, req.UserID, req.Seqs) if err != nil { return nil, err } diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index c7083fbc8..63baac03e 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -24,7 +24,7 @@ import ( "github.com/golang/protobuf/proto" ) -type MsgDatabaseInterface interface { +type MsgDatabase interface { // 批量插入消息 BatchInsertChat2DB(ctx context.Context, sourceID string, msgList []*pbMsg.MsgDataToMQ, currentMaxSeq int64) error // 刪除redis中消息缓存 @@ -73,11 +73,11 @@ type MsgDatabaseInterface interface { GetGroupMinSeq(ctx context.Context, groupID string) (int64, error) } -func NewMsgDatabase(mgo *mongo.Client, rdb redis.UniversalClient) MsgDatabaseInterface { - return &MsgDatabase{} +func NewMsgDatabase(mgo *mongo.Client, rdb redis.UniversalClient) MsgDatabase { + return &msgDatabase{} } -type MsgDatabase struct { +type msgDatabase struct { mgo unRelationTb.MsgDocModelInterface cache cache.MsgCache msg unRelationTb.MsgDocModel @@ -85,7 +85,7 @@ type MsgDatabase struct { rdb redis.Client } -func (db *MsgDatabase) reactionExtensionList(reactionExtensionList map[string]*sdkws.KeyValue) map[string]unRelationTb.KeyValueModel { +func (db *msgDatabase) reactionExtensionList(reactionExtensionList map[string]*sdkws.KeyValue) map[string]unRelationTb.KeyValueModel { r := make(map[string]unRelationTb.KeyValueModel) for key, value := range reactionExtensionList { r[key] = unRelationTb.KeyValueModel{ @@ -97,35 +97,35 @@ func (db *MsgDatabase) reactionExtensionList(reactionExtensionList map[string]*s return r } -func (db *MsgDatabase) JudgeMessageReactionEXISTS(ctx context.Context, clientMsgID string, sessionType int32) (bool, error) { +func (db *msgDatabase) JudgeMessageReactionEXISTS(ctx context.Context, clientMsgID string, sessionType int32) (bool, error) { return db.cache.JudgeMessageReactionEXISTS(ctx, clientMsgID, sessionType) } -func (db *MsgDatabase) SetMessageTypeKeyValue(ctx context.Context, clientMsgID string, sessionType int32, typeKey, value string) error { +func (db *msgDatabase) SetMessageTypeKeyValue(ctx context.Context, clientMsgID string, sessionType int32, typeKey, value string) error { return db.cache.SetMessageTypeKeyValue(ctx, clientMsgID, sessionType, typeKey, value) } -func (db *MsgDatabase) SetMessageReactionExpire(ctx context.Context, clientMsgID string, sessionType int32, expiration time.Duration) (bool, error) { +func (db *msgDatabase) SetMessageReactionExpire(ctx context.Context, clientMsgID string, sessionType int32, expiration time.Duration) (bool, error) { return db.cache.SetMessageReactionExpire(ctx, clientMsgID, sessionType, expiration) } -func (db *MsgDatabase) GetMessageTypeKeyValue(ctx context.Context, clientMsgID string, sessionType int32, typeKey string) (string, error) { +func (db *msgDatabase) GetMessageTypeKeyValue(ctx context.Context, clientMsgID string, sessionType int32, typeKey string) (string, error) { return db.cache.GetMessageTypeKeyValue(ctx, clientMsgID, sessionType, typeKey) } -func (db *MsgDatabase) GetOneMessageAllReactionList(ctx context.Context, clientMsgID string, sessionType int32) (map[string]string, error) { +func (db *msgDatabase) GetOneMessageAllReactionList(ctx context.Context, clientMsgID string, sessionType int32) (map[string]string, error) { return db.cache.GetOneMessageAllReactionList(ctx, clientMsgID, sessionType) } -func (db *MsgDatabase) DeleteOneMessageKey(ctx context.Context, clientMsgID string, sessionType int32, subKey string) error { +func (db *msgDatabase) DeleteOneMessageKey(ctx context.Context, clientMsgID string, sessionType int32, subKey string) error { return db.cache.DeleteOneMessageKey(ctx, clientMsgID, sessionType, subKey) } -func (db *MsgDatabase) InsertOrUpdateReactionExtendMsgSet(ctx context.Context, sourceID string, sessionType int32, clientMsgID string, msgFirstModifyTime int64, reactionExtensionList map[string]*sdkws.KeyValue) error { +func (db *msgDatabase) InsertOrUpdateReactionExtendMsgSet(ctx context.Context, sourceID string, sessionType int32, clientMsgID string, msgFirstModifyTime int64, reactionExtensionList map[string]*sdkws.KeyValue) error { return db.ExtendMsg.InsertOrUpdateReactionExtendMsgSet(ctx, sourceID, sessionType, clientMsgID, msgFirstModifyTime, db.reactionExtensionList(reactionExtensionList)) } -func (db *MsgDatabase) GetExtendMsg(ctx context.Context, sourceID string, sessionType int32, clientMsgID string, maxMsgUpdateTime int64) (*pbMsg.ExtendMsg, error) { +func (db *msgDatabase) GetExtendMsg(ctx context.Context, sourceID string, sessionType int32, clientMsgID string, maxMsgUpdateTime int64) (*pbMsg.ExtendMsg, error) { extendMsgSet, err := db.ExtendMsg.GetExtendMsgSet(ctx, sourceID, sessionType, maxMsgUpdateTime) if err != nil { return nil, err @@ -153,40 +153,40 @@ func (db *MsgDatabase) GetExtendMsg(ctx context.Context, sourceID string, sessio }, nil } -func (db *MsgDatabase) DeleteReactionExtendMsgSet(ctx context.Context, sourceID string, sessionType int32, clientMsgID string, msgFirstModifyTime int64, reactionExtensionList map[string]*sdkws.KeyValue) error { +func (db *msgDatabase) DeleteReactionExtendMsgSet(ctx context.Context, sourceID string, sessionType int32, clientMsgID string, msgFirstModifyTime int64, reactionExtensionList map[string]*sdkws.KeyValue) error { return db.ExtendMsg.DeleteReactionExtendMsgSet(ctx, sourceID, sessionType, clientMsgID, msgFirstModifyTime, db.reactionExtensionList(reactionExtensionList)) } -func (db *MsgDatabase) SetSendMsgStatus(ctx context.Context, id string, status int32) error { +func (db *msgDatabase) SetSendMsgStatus(ctx context.Context, id string, status int32) error { return db.cache.SetSendMsgStatus(ctx, id, status) } -func (db *MsgDatabase) GetSendMsgStatus(ctx context.Context, id string) (int32, error) { +func (db *msgDatabase) GetSendMsgStatus(ctx context.Context, id string) (int32, error) { return db.cache.GetSendMsgStatus(ctx, id) } -func (db *MsgDatabase) MsgToMQ(ctx context.Context, key string, mq *pbMsg.MsgDataToMQ) error { +func (db *msgDatabase) MsgToMQ(ctx context.Context, key string, mq *pbMsg.MsgDataToMQ) error { //TODO implement me panic("implement me") } -func (db *MsgDatabase) GetUserMaxSeq(ctx context.Context, userID string) (int64, error) { +func (db *msgDatabase) GetUserMaxSeq(ctx context.Context, userID string) (int64, error) { return db.cache.GetUserMaxSeq(ctx, userID) } -func (db *MsgDatabase) GetUserMinSeq(ctx context.Context, userID string) (int64, error) { +func (db *msgDatabase) GetUserMinSeq(ctx context.Context, userID string) (int64, error) { return db.cache.GetUserMinSeq(ctx, userID) } -func (db *MsgDatabase) GetGroupMaxSeq(ctx context.Context, groupID string) (int64, error) { +func (db *msgDatabase) GetGroupMaxSeq(ctx context.Context, groupID string) (int64, error) { return db.cache.GetGroupMaxSeq(ctx, groupID) } -func (db *MsgDatabase) GetGroupMinSeq(ctx context.Context, groupID string) (int64, error) { +func (db *msgDatabase) GetGroupMinSeq(ctx context.Context, groupID string) (int64, error) { return db.cache.GetGroupMinSeq(ctx, groupID) } -func (db *MsgDatabase) BatchInsertChat2DB(ctx context.Context, sourceID string, msgList []*pbMsg.MsgDataToMQ, currentMaxSeq int64) error { +func (db *msgDatabase) BatchInsertChat2DB(ctx context.Context, sourceID string, msgList []*pbMsg.MsgDataToMQ, currentMaxSeq int64) error { //newTime := utils.GetCurrentTimestampByMill() if int64(len(msgList)) > db.msg.GetSingleGocMsgNum() { return errors.New("too large") @@ -270,11 +270,11 @@ func (db *MsgDatabase) BatchInsertChat2DB(ctx context.Context, sourceID string, return nil } -func (db *MsgDatabase) DeleteMessageFromCache(ctx context.Context, userID string, msgs []*pbMsg.MsgDataToMQ) error { +func (db *msgDatabase) DeleteMessageFromCache(ctx context.Context, userID string, msgs []*pbMsg.MsgDataToMQ) error { return db.cache.DeleteMessageFromCache(ctx, userID, msgs) } -func (db *MsgDatabase) BatchInsertChat2Cache(ctx context.Context, sourceID string, msgList []*pbMsg.MsgDataToMQ) (int64, error) { +func (db *msgDatabase) BatchInsertChat2Cache(ctx context.Context, sourceID string, msgList []*pbMsg.MsgDataToMQ) (int64, error) { //newTime := utils.GetCurrentTimestampByMill() lenList := len(msgList) if int64(lenList) > db.msg.GetSingleGocMsgNum() { @@ -326,7 +326,7 @@ func (db *MsgDatabase) BatchInsertChat2Cache(ctx context.Context, sourceID strin return lastMaxSeq, utils.Wrap(err, "") } -func (db *MsgDatabase) DelMsgBySeqs(ctx context.Context, userID string, seqs []int64) (totalUnExistSeqs []int64, err error) { +func (db *msgDatabase) DelMsgBySeqs(ctx context.Context, userID string, seqs []int64) (totalUnExistSeqs []int64, err error) { sortkeys.Int64s(seqs) docIDSeqsMap := db.msg.GetDocIDSeqsMap(userID, seqs) lock := sync.Mutex{} @@ -347,7 +347,7 @@ func (db *MsgDatabase) DelMsgBySeqs(ctx context.Context, userID string, seqs []i return totalUnExistSeqs, nil } -func (db *MsgDatabase) DelMsgBySeqsInOneDoc(ctx context.Context, docID string, seqs []int64) (unExistSeqs []int64, err error) { +func (db *msgDatabase) DelMsgBySeqsInOneDoc(ctx context.Context, docID string, seqs []int64) (unExistSeqs []int64, err error) { seqMsgs, indexes, unExistSeqs, err := db.GetMsgAndIndexBySeqsInOneDoc(ctx, docID, seqs) if err != nil { return nil, err @@ -360,7 +360,7 @@ func (db *MsgDatabase) DelMsgBySeqsInOneDoc(ctx context.Context, docID string, s return unExistSeqs, nil } -func (db *MsgDatabase) GetMsgAndIndexBySeqsInOneDoc(ctx context.Context, docID string, seqs []int64) (seqMsgs []*sdkws.MsgData, indexes []int, unExistSeqs []int64, err error) { +func (db *msgDatabase) GetMsgAndIndexBySeqsInOneDoc(ctx context.Context, docID string, seqs []int64) (seqMsgs []*sdkws.MsgData, indexes []int, unExistSeqs []int64, err error) { doc, err := db.mgo.FindOneByDocID(ctx, docID) if err != nil { return nil, nil, nil, err @@ -391,7 +391,7 @@ func (db *MsgDatabase) GetMsgAndIndexBySeqsInOneDoc(ctx context.Context, docID s return seqMsgs, indexes, unExistSeqs, nil } -func (db *MsgDatabase) GetNewestMsg(ctx context.Context, sourceID string) (msgPb *sdkws.MsgData, err error) { +func (db *msgDatabase) GetNewestMsg(ctx context.Context, sourceID string) (msgPb *sdkws.MsgData, err error) { msgInfo, err := db.mgo.GetNewestMsg(ctx, sourceID) if err != nil { return nil, err @@ -399,7 +399,7 @@ func (db *MsgDatabase) GetNewestMsg(ctx context.Context, sourceID string) (msgPb return db.unmarshalMsg(msgInfo) } -func (db *MsgDatabase) GetOldestMsg(ctx context.Context, sourceID string) (msgPb *sdkws.MsgData, err error) { +func (db *msgDatabase) GetOldestMsg(ctx context.Context, sourceID string) (msgPb *sdkws.MsgData, err error) { msgInfo, err := db.mgo.GetOldestMsg(ctx, sourceID) if err != nil { return nil, err @@ -407,7 +407,7 @@ func (db *MsgDatabase) GetOldestMsg(ctx context.Context, sourceID string) (msgPb return db.unmarshalMsg(msgInfo) } -func (db *MsgDatabase) unmarshalMsg(msgInfo *unRelationTb.MsgInfoModel) (msgPb *sdkws.MsgData, err error) { +func (db *msgDatabase) unmarshalMsg(msgInfo *unRelationTb.MsgInfoModel) (msgPb *sdkws.MsgData, err error) { msgPb = &sdkws.MsgData{} err = proto.Unmarshal(msgInfo.Msg, msgPb) if err != nil { @@ -416,7 +416,7 @@ func (db *MsgDatabase) unmarshalMsg(msgInfo *unRelationTb.MsgInfoModel) (msgPb * return msgPb, nil } -func (db *MsgDatabase) getMsgBySeqs(ctx context.Context, sourceID string, seqs []int64, diffusionType int) (seqMsg []*sdkws.MsgData, err error) { +func (db *msgDatabase) getMsgBySeqs(ctx context.Context, sourceID string, seqs []int64, diffusionType int) (seqMsg []*sdkws.MsgData, err error) { var hasSeqs []int64 singleCount := 0 m := db.msg.GetDocIDSeqsMap(sourceID, seqs) @@ -457,7 +457,7 @@ func (db *MsgDatabase) getMsgBySeqs(ctx context.Context, sourceID string, seqs [ return seqMsg, nil } -func (db *MsgDatabase) GetMsgBySeqs(ctx context.Context, userID string, seqs []int64) (seqMsg []*sdkws.MsgData, err error) { +func (db *msgDatabase) GetMsgBySeqs(ctx context.Context, userID string, seqs []int64) (seqMsg []*sdkws.MsgData, err error) { successMsgs, failedSeqs, err := db.cache.GetMessagesBySeq(ctx, userID, seqs) if err != nil { if err != redis.Nil { @@ -478,7 +478,7 @@ func (db *MsgDatabase) GetMsgBySeqs(ctx context.Context, userID string, seqs []i return successMsgs, nil } -func (db *MsgDatabase) GetSuperGroupMsgBySeqs(ctx context.Context, groupID string, seqs []int64) (seqMsg []*sdkws.MsgData, err error) { +func (db *msgDatabase) GetSuperGroupMsgBySeqs(ctx context.Context, groupID string, seqs []int64) (seqMsg []*sdkws.MsgData, err error) { successMsgs, failedSeqs, err := db.cache.GetMessagesBySeq(ctx, groupID, seqs) if err != nil { if err != redis.Nil { @@ -499,7 +499,7 @@ func (db *MsgDatabase) GetSuperGroupMsgBySeqs(ctx context.Context, groupID strin return successMsgs, nil } -func (db *MsgDatabase) CleanUpUserMsg(ctx context.Context, userID string) error { +func (db *msgDatabase) CleanUpUserMsg(ctx context.Context, userID string) error { err := db.DeleteUserMsgsAndSetMinSeq(ctx, userID, 0) if err != nil { return err @@ -508,7 +508,7 @@ func (db *MsgDatabase) CleanUpUserMsg(ctx context.Context, userID string) error return utils.Wrap(err, "") } -func (db *MsgDatabase) DeleteUserSuperGroupMsgsAndSetMinSeq(ctx context.Context, groupID string, userIDs []string, remainTime int64) error { +func (db *msgDatabase) DeleteUserSuperGroupMsgsAndSetMinSeq(ctx context.Context, groupID string, userIDs []string, remainTime int64) error { var delStruct delMsgRecursionStruct minSeq, err := db.deleteMsgRecursion(ctx, groupID, unRelationTb.OldestList, &delStruct, remainTime) if err != nil { @@ -536,7 +536,7 @@ func (db *MsgDatabase) DeleteUserSuperGroupMsgsAndSetMinSeq(ctx context.Context, return nil } -func (db *MsgDatabase) DeleteUserMsgsAndSetMinSeq(ctx context.Context, userID string, remainTime int64) error { +func (db *msgDatabase) DeleteUserMsgsAndSetMinSeq(ctx context.Context, userID string, remainTime int64) error { var delStruct delMsgRecursionStruct minSeq, err := db.deleteMsgRecursion(ctx, userID, unRelationTb.OldestList, &delStruct, remainTime) if err != nil { @@ -562,7 +562,7 @@ func (d *delMsgRecursionStruct) getSetMinSeq() int64 { // seq 70 // set minSeq 21 // recursion 删除list并且返回设置的最小seq -func (db *MsgDatabase) deleteMsgRecursion(ctx context.Context, sourceID string, index int64, delStruct *delMsgRecursionStruct, remainTime int64) (int64, error) { +func (db *msgDatabase) deleteMsgRecursion(ctx context.Context, sourceID string, index int64, delStruct *delMsgRecursionStruct, remainTime int64) (int64, error) { // find from oldest list msgs, err := db.mgo.GetMsgsByIndex(ctx, sourceID, index) if err != nil || msgs.DocID == "" { @@ -644,7 +644,7 @@ func (db *MsgDatabase) GetUserMinMaxSeqInMongoAndCache(ctx context.Context, user return } -func (db *MsgDatabase) GetSuperGroupMinMaxSeqInMongoAndCache(ctx context.Context, groupID string) (minSeqMongo, maxSeqMongo, maxSeqCache int64, err error) { +func (db *msgDatabase) GetSuperGroupMinMaxSeqInMongoAndCache(ctx context.Context, groupID string) (minSeqMongo, maxSeqMongo, maxSeqCache int64, err error) { minSeqMongo, maxSeqMongo, err = db.GetMinMaxSeqMongo(ctx, groupID) if err != nil { return 0, 0, 0, err @@ -656,7 +656,7 @@ func (db *MsgDatabase) GetSuperGroupMinMaxSeqInMongoAndCache(ctx context.Context return } -func (db *MsgDatabase) GetMinMaxSeqMongo(ctx context.Context, sourceID string) (minSeqMongo, maxSeqMongo int64, err error) { +func (db *msgDatabase) GetMinMaxSeqMongo(ctx context.Context, sourceID string) (minSeqMongo, maxSeqMongo int64, err error) { oldestMsgMongo, err := db.mgo.GetOldestMsg(ctx, sourceID) if err != nil { return 0, 0, err @@ -678,10 +678,10 @@ func (db *MsgDatabase) GetMinMaxSeqMongo(ctx context.Context, sourceID string) ( return } -func (db *MsgDatabase) SetGroupUserMinSeq(ctx context.Context, groupID, userID string, minSeq int64) (err error) { +func (db *msgDatabase) SetGroupUserMinSeq(ctx context.Context, groupID, userID string, minSeq int64) (err error) { return db.cache.SetGroupUserMinSeq(ctx, groupID, userID, minSeq) } -func (db *MsgDatabase) SetUserMinSeq(ctx context.Context, userID string, minSeq int64) (err error) { +func (db *msgDatabase) SetUserMinSeq(ctx context.Context, userID string, minSeq int64) (err error) { return db.cache.SetUserMinSeq(ctx, userID, minSeq) } From bb94a7947c20e4fcb30dbdc2580db5aace38f4af Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Fri, 24 Feb 2023 11:01:33 +0800 Subject: [PATCH 14/19] config path --- internal/push/fcm/push.go | 4 +- internal/push/fcm/push_test.go | 2 +- internal/push/getui/push.go | 4 +- internal/push/push_rpc_server.go | 2 +- internal/push/push_to_client.go | 4 +- internal/rpc/conversation/conversaion.go | 2 +- internal/rpc/friend/friend.go | 2 +- internal/rpc/group/group.go | 2 +- internal/rpc/msg/delete.go | 12 +- internal/rpc/msg/extend_msg.go | 8 +- internal/rpc/msg/msg_status.go | 4 +- internal/rpc/msg/send_msg.go | 4 +- internal/rpc/msg/send_pull.go | 22 +- internal/rpc/msg/server.go | 4 +- pkg/common/db/cache/msg.go | 475 ---------------------- pkg/common/db/cache/redis.go | 479 ++++++++++------------- pkg/common/db/controller/conversation.go | 2 +- pkg/common/db/controller/friend.go | 2 +- pkg/common/db/controller/group.go | 2 +- pkg/common/db/controller/msg.go | 8 +- pkg/common/db/controller/push.go | 2 +- {internal => pkg/common/db}/tx/gorm.go | 0 {internal => pkg/common/db}/tx/mongo.go | 0 {internal => pkg/common/db}/tx/tx.go | 0 24 files changed, 245 insertions(+), 801 deletions(-) delete mode 100644 pkg/common/db/cache/msg.go rename {internal => pkg/common/db}/tx/gorm.go (100%) rename {internal => pkg/common/db}/tx/mongo.go (100%) rename {internal => pkg/common/db}/tx/tx.go (100%) diff --git a/internal/push/fcm/push.go b/internal/push/fcm/push.go index 2aa7f7f63..1a8617c3b 100644 --- a/internal/push/fcm/push.go +++ b/internal/push/fcm/push.go @@ -19,10 +19,10 @@ var Terminal = []int{constant.IOSPlatformID, constant.AndroidPlatformID, constan type Fcm struct { fcmMsgCli *messaging.Client - cache cache.MsgCache + cache cache.Cache } -func NewClient(cache cache.MsgCache) *Fcm { +func NewClient(cache cache.Cache) *Fcm { opt := option.WithCredentialsFile(filepath.Join(config.Root, "config", config.Config.Push.Fcm.ServiceAccount)) fcmApp, err := firebase.NewApp(context.Background(), nil, opt) if err != nil { diff --git a/internal/push/fcm/push_test.go b/internal/push/fcm/push_test.go index cc310b30e..0df2b45da 100644 --- a/internal/push/fcm/push_test.go +++ b/internal/push/fcm/push_test.go @@ -9,7 +9,7 @@ import ( ) func Test_Push(t *testing.T) { - var redis cache.MsgCache + var redis cache.Cache offlinePusher := NewClient(redis) err := offlinePusher.Push(context.Background(), []string{"userID1"}, "test", "test", &push.Opts{}) assert.Nil(t, err) diff --git a/internal/push/getui/push.go b/internal/push/getui/push.go index 02436a8d3..b263a11a2 100644 --- a/internal/push/getui/push.go +++ b/internal/push/getui/push.go @@ -38,12 +38,12 @@ const ( ) type Client struct { - cache cache.MsgCache + cache cache.Cache tokenExpireTime int64 taskIDTTL int64 } -func NewClient(cache cache.MsgCache) *Client { +func NewClient(cache cache.Cache) *Client { return &Client{cache: cache, tokenExpireTime: tokenExpireTime, taskIDTTL: taskIDTTL} } diff --git a/internal/push/push_rpc_server.go b/internal/push/push_rpc_server.go index b5b478a12..080377305 100644 --- a/internal/push/push_rpc_server.go +++ b/internal/push/push_rpc_server.go @@ -25,7 +25,7 @@ type RPCServer struct { pusher Pusher } -func (r *RPCServer) Init(rpcPort int, cache cache.MsgCache) { +func (r *RPCServer) Init(rpcPort int, cache cache.Cache) { r.rpcPort = rpcPort r.rpcRegisterName = config.Config.RpcRegisterName.OpenImPushName } diff --git a/internal/push/push_to_client.go b/internal/push/push_to_client.go index 097257c55..53b05b572 100644 --- a/internal/push/push_to_client.go +++ b/internal/push/push_to_client.go @@ -25,7 +25,7 @@ import ( ) type Pusher struct { - cache cache.MsgCache + cache cache.Cache client discoveryregistry.SvcDiscoveryRegistry offlinePusher OfflinePusher groupLocalCache localcache.GroupLocalCache @@ -33,7 +33,7 @@ type Pusher struct { successCount int } -func NewPusher(cache cache.MsgCache, client discoveryregistry.SvcDiscoveryRegistry, offlinePusher OfflinePusher) *Pusher { +func NewPusher(cache cache.Cache, client discoveryregistry.SvcDiscoveryRegistry, offlinePusher OfflinePusher) *Pusher { return &Pusher{ cache: cache, client: client, diff --git a/internal/rpc/conversation/conversaion.go b/internal/rpc/conversation/conversaion.go index 6c04fe637..96acffe5f 100644 --- a/internal/rpc/conversation/conversaion.go +++ b/internal/rpc/conversation/conversaion.go @@ -3,12 +3,12 @@ package conversation import ( "OpenIM/internal/common/check" "OpenIM/internal/common/notification" - "OpenIM/internal/tx" "OpenIM/pkg/common/constant" "OpenIM/pkg/common/db/cache" "OpenIM/pkg/common/db/controller" "OpenIM/pkg/common/db/relation" tableRelation "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/db/tx" pbConversation "OpenIM/pkg/proto/conversation" "OpenIM/pkg/utils" "context" diff --git a/internal/rpc/friend/friend.go b/internal/rpc/friend/friend.go index f345034c2..5f472c27e 100644 --- a/internal/rpc/friend/friend.go +++ b/internal/rpc/friend/friend.go @@ -4,11 +4,11 @@ import ( "OpenIM/internal/common/check" "OpenIM/internal/common/convert" "OpenIM/internal/common/notification" - "OpenIM/internal/tx" "OpenIM/pkg/common/constant" "OpenIM/pkg/common/db/controller" "OpenIM/pkg/common/db/relation" tablerelation "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/db/tx" "OpenIM/pkg/common/tokenverify" "OpenIM/pkg/common/tracelog" registry "OpenIM/pkg/discoveryregistry" diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index 048cc4cd1..064ba33b9 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -3,12 +3,12 @@ package group import ( "OpenIM/internal/common/check" "OpenIM/internal/common/notification" - "OpenIM/internal/tx" "OpenIM/pkg/common/constant" "OpenIM/pkg/common/db/cache" "OpenIM/pkg/common/db/controller" "OpenIM/pkg/common/db/relation" relationTb "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/db/tx" "OpenIM/pkg/common/db/unrelation" "OpenIM/pkg/common/tokenverify" "OpenIM/pkg/common/tracelog" diff --git a/internal/rpc/msg/delete.go b/internal/rpc/msg/delete.go index 79843fa3a..02854cb29 100644 --- a/internal/rpc/msg/delete.go +++ b/internal/rpc/msg/delete.go @@ -9,7 +9,7 @@ import ( func (m *msgServer) DelMsgList(ctx context.Context, req *sdkws.DelMsgListReq) (*sdkws.DelMsgListResp, error) { resp := &sdkws.DelMsgListResp{} - if _, err := m.MsgInterface.DelMsgBySeqs(ctx, req.UserID, req.SeqList); err != nil { + if _, err := m.MsgDatabase.DelMsgBySeqs(ctx, req.UserID, req.SeqList); err != nil { return nil, err } DeleteMessageNotification(ctx, req.UserID, req.SeqList) @@ -21,14 +21,14 @@ func (m *msgServer) DelSuperGroupMsg(ctx context.Context, req *msg.DelSuperGroup if err := tokenverify.CheckAdmin(ctx); err != nil { return nil, err } - //maxSeq, err := m.MsgInterface.GetGroupMaxSeq(ctx, req.GroupID) + //maxSeq, err := m.MsgDatabase.GetGroupMaxSeq(ctx, req.GroupID) //if err != nil { // return nil, err //} - //if err := m.MsgInterface.SetGroupUserMinSeq(ctx, req.GroupID, maxSeq); err != nil { + //if err := m.MsgDatabase.SetGroupUserMinSeq(ctx, req.GroupID, maxSeq); err != nil { // return nil, err //} - if err := m.MsgInterface.DeleteUserSuperGroupMsgsAndSetMinSeq(ctx, req.GroupID, []string{req.UserID}, 0); err != nil { + if err := m.MsgDatabase.DeleteUserSuperGroupMsgsAndSetMinSeq(ctx, req.GroupID, []string{req.UserID}, 0); err != nil { return nil, err } return resp, nil @@ -39,10 +39,10 @@ func (m *msgServer) ClearMsg(ctx context.Context, req *msg.ClearMsgReq) (*msg.Cl if err := tokenverify.CheckAccessV3(ctx, req.UserID); err != nil { return nil, err } - if err := m.MsgInterface.CleanUpUserMsg(ctx, req.UserID); err != nil { + if err := m.MsgDatabase.CleanUpUserMsg(ctx, req.UserID); err != nil { return nil, err } - //if err := m.MsgInterface.DelUserAllSeq(ctx, req.UserID); err != nil { + //if err := m.MsgDatabase.DelUserAllSeq(ctx, req.UserID); err != nil { // return nil, err //} return resp, nil diff --git a/internal/rpc/msg/extend_msg.go b/internal/rpc/msg/extend_msg.go index 95cd057c5..866a39198 100644 --- a/internal/rpc/msg/extend_msg.go +++ b/internal/rpc/msg/extend_msg.go @@ -27,7 +27,7 @@ func (m *msgServer) SetMessageReactionExtensions(ctx context.Context, req *msg.S notification.ExtendMessageUpdatedNotification(req.OperationID, req.OpUserID, req.SourceID, req.SessionType, req, &resp, !req.IsReact, false) return resp, nil } - isExists, err := m.MsgInterface.JudgeMessageReactionEXISTS(ctx, req.ClientMsgID, req.SessionType) + isExists, err := m.MsgDatabase.JudgeMessageReactionEXISTS(ctx, req.ClientMsgID, req.SessionType) if err != nil { return nil, err } @@ -41,12 +41,12 @@ func (m *msgServer) SetMessageReactionExtensions(ctx context.Context, req *msg.S return nil, err } v.LatestUpdateTime = utils.GetCurrentTimestampByMill() - if err := m.MsgInterface.SetMessageTypeKeyValue(ctx, req.ClientMsgID, req.SessionType, k, utils.StructToJsonString(v)); err != nil { + if err := m.MsgDatabase.SetMessageTypeKeyValue(ctx, req.ClientMsgID, req.SessionType, k, utils.StructToJsonString(v)); err != nil { return nil, err } } resp.IsReact = true - _, err := m.MsgInterface.SetMessageReactionExpire(ctx, req.ClientMsgID, req.SessionType, time.Duration(24*3)*time.Hour) + _, err := m.MsgDatabase.SetMessageReactionExpire(ctx, req.ClientMsgID, req.SessionType, time.Duration(24*3)*time.Hour) if err != nil { return nil, err } @@ -55,7 +55,7 @@ func (m *msgServer) SetMessageReactionExtensions(ctx context.Context, req *msg.S if err != nil { return nil, err } - mongoValue, err := m.MsgInterface.GetExtendMsg(ctx, req.SourceID, req.SessionType, req.ClientMsgID, req.MsgFirstModifyTime) + mongoValue, err := m.MsgDatabase.GetExtendMsg(ctx, req.SourceID, req.SessionType, req.ClientMsgID, req.MsgFirstModifyTime) if err != nil { return nil, err } diff --git a/internal/rpc/msg/msg_status.go b/internal/rpc/msg/msg_status.go index 27c5cc136..5d408430e 100644 --- a/internal/rpc/msg/msg_status.go +++ b/internal/rpc/msg/msg_status.go @@ -9,7 +9,7 @@ import ( func (m *msgServer) SetSendMsgStatus(ctx context.Context, req *pbMsg.SetSendMsgStatusReq) (*pbMsg.SetSendMsgStatusResp, error) { resp := &pbMsg.SetSendMsgStatusResp{} - if err := m.MsgInterface.SetSendMsgStatus(ctx, tracelog.GetOperationID(ctx), req.Status); err != nil { + if err := m.MsgDatabase.SetSendMsgStatus(ctx, tracelog.GetOperationID(ctx), req.Status); err != nil { return nil, err } return resp, nil @@ -17,7 +17,7 @@ func (m *msgServer) SetSendMsgStatus(ctx context.Context, req *pbMsg.SetSendMsgS func (m *msgServer) GetSendMsgStatus(ctx context.Context, req *pbMsg.GetSendMsgStatusReq) (*pbMsg.GetSendMsgStatusResp, error) { resp := &pbMsg.GetSendMsgStatusResp{} - status, err := m.MsgInterface.GetSendMsgStatus(ctx, tracelog.GetOperationID(ctx)) + status, err := m.MsgDatabase.GetSendMsgStatus(ctx, tracelog.GetOperationID(ctx)) if IsNotFound(err) { resp.Status = constant.MsgStatusNotExist return resp, nil diff --git a/internal/rpc/msg/send_msg.go b/internal/rpc/msg/send_msg.go index 8f8bc9220..e082cf63f 100644 --- a/internal/rpc/msg/send_msg.go +++ b/internal/rpc/msg/send_msg.go @@ -165,7 +165,7 @@ func (m *msgServer) messageVerification(ctx context.Context, data *msg.SendMsgRe } if revokeMessage.RevokerID != revokeMessage.SourceMessageSendID { - resp, err := m.MsgInterface.GetSuperGroupMsgBySeqs(ctx, data.MsgData.GroupID, []int64{int64(revokeMessage.Seq)}) + resp, err := m.MsgDatabase.GetSuperGroupMsgBySeqs(ctx, data.MsgData.GroupID, []int64{int64(revokeMessage.Seq)}) if err != nil { return nil, err } @@ -352,7 +352,7 @@ func (m *msgServer) sendMsgToGroupOptimization(ctx context.Context, list []strin if v == "" || groupPB.MsgData.SendID == "" { return constant.ErrArgs.Wrap("userID or groupPB.MsgData.SendID is empty") } - err := m.MsgInterface.MsgToMQ(ctx, v, &msgToMQGroup) + err := m.MsgDatabase.MsgToMQ(ctx, v, &msgToMQGroup) if err != nil { wg.Done() return err diff --git a/internal/rpc/msg/send_pull.go b/internal/rpc/msg/send_pull.go index 3919b125d..6461189bc 100644 --- a/internal/rpc/msg/send_pull.go +++ b/internal/rpc/msg/send_pull.go @@ -25,7 +25,7 @@ func (m *msgServer) sendMsgSuperGroupChat(ctx context.Context, req *msg.SendMsgR return nil, err } msgToMQSingle := msg.MsgDataToMQ{MsgData: req.MsgData} - err = m.MsgInterface.MsgToMQ(ctx, msgToMQSingle.MsgData.GroupID, &msgToMQSingle) + err = m.MsgDatabase.MsgToMQ(ctx, msgToMQSingle.MsgData.GroupID, &msgToMQSingle) if err != nil { return nil, err } @@ -42,12 +42,12 @@ func (m *msgServer) sendMsgSuperGroupChat(ctx context.Context, req *msg.SendMsgR } func (m *msgServer) sendMsgNotification(ctx context.Context, req *msg.SendMsgReq) (resp *msg.SendMsgResp, err error) { msgToMQSingle := msg.MsgDataToMQ{MsgData: req.MsgData} - err = m.MsgInterface.MsgToMQ(ctx, msgToMQSingle.MsgData.RecvID, &msgToMQSingle) + err = m.MsgDatabase.MsgToMQ(ctx, msgToMQSingle.MsgData.RecvID, &msgToMQSingle) if err != nil { return nil, err } if msgToMQSingle.MsgData.SendID != msgToMQSingle.MsgData.RecvID { //Filter messages sent to yourself - err = m.MsgInterface.MsgToMQ(ctx, msgToMQSingle.MsgData.SendID, &msgToMQSingle) + err = m.MsgDatabase.MsgToMQ(ctx, msgToMQSingle.MsgData.SendID, &msgToMQSingle) if err != nil { return nil, err } @@ -74,13 +74,13 @@ func (m *msgServer) sendMsgSingleChat(ctx context.Context, req *msg.SendMsgReq) } msgToMQSingle := msg.MsgDataToMQ{MsgData: req.MsgData} if isSend { - err = m.MsgInterface.MsgToMQ(ctx, req.MsgData.RecvID, &msgToMQSingle) + err = m.MsgDatabase.MsgToMQ(ctx, req.MsgData.RecvID, &msgToMQSingle) if err != nil { return nil, constant.ErrInternalServer.Wrap("insert to mq") } } if msgToMQSingle.MsgData.SendID != msgToMQSingle.MsgData.RecvID { //Filter messages sent to yourself - err = m.MsgInterface.MsgToMQ(ctx, req.MsgData.SendID, &msgToMQSingle) + err = m.MsgDatabase.MsgToMQ(ctx, req.MsgData.SendID, &msgToMQSingle) if err != nil { return nil, constant.ErrInternalServer.Wrap("insert to mq") } @@ -255,11 +255,11 @@ func (m *msgServer) SendMsg(ctx context.Context, req *msg.SendMsgReq) (resp *msg func (m *msgServer) GetMaxAndMinSeq(ctx context.Context, req *sdkws.GetMaxAndMinSeqReq) (*sdkws.GetMaxAndMinSeqResp, error) { resp := new(sdkws.GetMaxAndMinSeqResp) m2 := make(map[string]*sdkws.MaxAndMinSeq) - maxSeq, err := m.MsgInterface.GetUserMaxSeq(ctx, req.UserID) + maxSeq, err := m.MsgDatabase.GetUserMaxSeq(ctx, req.UserID) if err != nil { return nil, err } - minSeq, err := m.MsgInterface.GetUserMinSeq(ctx, req.UserID) + minSeq, err := m.MsgDatabase.GetUserMinSeq(ctx, req.UserID) if err != nil { return nil, err } @@ -268,11 +268,11 @@ func (m *msgServer) GetMaxAndMinSeq(ctx context.Context, req *sdkws.GetMaxAndMin if len(req.GroupIDList) > 0 { resp.GroupMaxAndMinSeq = make(map[string]*sdkws.MaxAndMinSeq) for _, groupID := range req.GroupIDList { - maxSeq, err := m.MsgInterface.GetGroupMaxSeq(ctx, groupID) + maxSeq, err := m.MsgDatabase.GetGroupMaxSeq(ctx, groupID) if err != nil { return nil, err } - minSeq, err := m.MsgInterface.GetGroupMinSeq(ctx, groupID) + minSeq, err := m.MsgDatabase.GetGroupMinSeq(ctx, groupID) if err != nil { return nil, err } @@ -287,13 +287,13 @@ func (m *msgServer) GetMaxAndMinSeq(ctx context.Context, req *sdkws.GetMaxAndMin func (m *msgServer) PullMessageBySeqList(ctx context.Context, req *sdkws.PullMessageBySeqListReq) (*sdkws.PullMessageBySeqListResp, error) { resp := &sdkws.PullMessageBySeqListResp{GroupMsgDataList: make(map[string]*sdkws.MsgDataList)} - msgs, err := m.MsgInterface.GetMessagesBySeqs(ctx, req.UserID, req.Seqs) + msgs, err := m.MsgDatabase.GetMsgBySeqs(ctx, req.UserID, req.Seqs) if err != nil { return nil, err } resp.List = msgs for userID, list := range req.GroupSeqList { - msgs, err := m.MsgInterface.GetMessagesBySeq(ctx, userID, req.Seqs) + msgs, err := m.MsgDatabase.GetMsgBySeqs(ctx, userID, req.Seqs) if err != nil { return nil, err } diff --git a/internal/rpc/msg/server.go b/internal/rpc/msg/server.go index 78a4388b0..ef8c79077 100644 --- a/internal/rpc/msg/server.go +++ b/internal/rpc/msg/server.go @@ -16,7 +16,7 @@ import ( type msgServer struct { RegisterCenter discoveryRegistry.SvcDiscoveryRegistry - MsgInterface controller.MsgDatabase + MsgDatabase controller.MsgDatabase Group *check.GroupChecker User *check.UserCheck Conversation *check.ConversationChecker @@ -45,7 +45,7 @@ func Start(client *openKeeper.ZkClient, server *grpc.Server) error { Conversation: check.NewConversationChecker(client), User: check.NewUserCheck(client), Group: check.NewGroupChecker(client), - //MsgInterface: controller.MsgInterface(), + //MsgDatabase: controller.MsgDatabase(), RegisterCenter: client, GroupLocalCache: localcache.NewGroupMemberIDsLocalCache(client), black: check.NewBlackChecker(client), diff --git a/pkg/common/db/cache/msg.go b/pkg/common/db/cache/msg.go deleted file mode 100644 index e54ff524b..000000000 --- a/pkg/common/db/cache/msg.go +++ /dev/null @@ -1,475 +0,0 @@ -package cache - -import ( - "OpenIM/pkg/common/config" - "OpenIM/pkg/common/constant" - "OpenIM/pkg/common/tracelog" - pbChat "OpenIM/pkg/proto/msg" - pbRtc "OpenIM/pkg/proto/rtc" - "OpenIM/pkg/proto/sdkws" - "OpenIM/pkg/utils" - "context" - "errors" - "fmt" - "github.com/golang/protobuf/jsonpb" - "github.com/golang/protobuf/proto" - "strconv" - "time" - - "github.com/go-redis/redis/v8" -) - -const ( - userIncrSeq = "REDIS_USER_INCR_SEQ:" // user incr seq - appleDeviceToken = "DEVICE_TOKEN" - userMinSeq = "REDIS_USER_MIN_SEQ:" - - getuiToken = "GETUI_TOKEN" - getuiTaskID = "GETUI_TASK_ID" - messageCache = "MESSAGE_CACHE:" - signalCache = "SIGNAL_CACHE:" - signalListCache = "SIGNAL_LIST_CACHE:" - FcmToken = "FCM_TOKEN:" - groupUserMinSeq = "GROUP_USER_MIN_SEQ:" - groupMaxSeq = "GROUP_MAX_SEQ:" - groupMinSeq = "GROUP_MIN_SEQ:" - sendMsgFailedFlag = "SEND_MSG_FAILED_FLAG:" - userBadgeUnreadCountSum = "USER_BADGE_UNREAD_COUNT_SUM:" - exTypeKeyLocker = "EX_LOCK:" - - uidPidToken = "UID_PID_TOKEN_STATUS:" - - SignalListCache = "SIGNAL_LIST_CACHE:" - - SignalCache = "SIGNAL_CACHE:" -) - -type MsgCache interface { - IncrUserSeq(ctx context.Context, userID string) (int64, error) - GetUserMaxSeq(ctx context.Context, userID string) (int64, error) - SetUserMaxSeq(ctx context.Context, userID string, maxSeq int64) error - SetUserMinSeq(ctx context.Context, userID string, minSeq int64) (err error) - GetUserMinSeq(ctx context.Context, userID string) (int64, error) - - SetGroupUserMinSeq(ctx context.Context, groupID, userID string, minSeq int64) (err error) - GetGroupUserMinSeq(ctx context.Context, groupID, userID string) (int64, error) - GetGroupMaxSeq(ctx context.Context, groupID string) (int64, error) - GetGroupMinSeq(ctx context.Context, groupID string) (int64, error) - IncrGroupMaxSeq(ctx context.Context, groupID string) (int64, error) - SetGroupMaxSeq(ctx context.Context, groupID string, maxSeq int64) error - SetGroupMinSeq(ctx context.Context, groupID string, minSeq int64) error - - AddTokenFlag(ctx context.Context, userID string, platformID int, token string, flag int) error - - GetTokensWithoutError(ctx context.Context, userID, platformID string) (map[string]int, error) - - SetTokenMapByUidPid(ctx context.Context, userID string, platformID int, m map[string]int) error - DeleteTokenByUidPid(ctx context.Context, userID string, platformID int, fields []string) error - GetMessagesBySeq(ctx context.Context, userID string, seqList []int64) (seqMsg []*sdkws.MsgData, failedSeqList []int64, err error) - SetMessageToCache(ctx context.Context, userID string, msgList []*pbChat.MsgDataToMQ) (int, error) - DeleteMessageFromCache(ctx context.Context, userID string, msgList []*pbChat.MsgDataToMQ) error - CleanUpOneUserAllMsg(ctx context.Context, userID string) error - HandleSignalInfo(ctx context.Context, msg *sdkws.MsgData, pushToUserID string) (isSend bool, err error) - GetSignalInfoFromCacheByClientMsgID(ctx context.Context, clientMsgID string) (invitationInfo *pbRtc.SignalInviteReq, err error) - GetAvailableSignalInvitationInfo(ctx context.Context, userID string) (invitationInfo *pbRtc.SignalInviteReq, err error) - DelUserSignalList(ctx context.Context, userID string) error - DelMsgFromCache(ctx context.Context, userID string, seqList []int64) error - - SetGetuiToken(ctx context.Context, token string, expireTime int64) error - GetGetuiToken(ctx context.Context) (string, error) - SetGetuiTaskID(ctx context.Context, taskID string, expireTime int64) error - GetGetuiTaskID(ctx context.Context) (string, error) - - SetSendMsgStatus(ctx context.Context, id string, status int32) error - GetSendMsgStatus(ctx context.Context, id string) (int32, error) - SetFcmToken(ctx context.Context, account string, platformID int, fcmToken string, expireTime int64) (err error) - GetFcmToken(ctx context.Context, account string, platformID int) (string, error) - DelFcmToken(ctx context.Context, account string, platformID int) error - IncrUserBadgeUnreadCountSum(ctx context.Context, userID string) (int, error) - SetUserBadgeUnreadCountSum(ctx context.Context, userID string, value int) error - GetUserBadgeUnreadCountSum(ctx context.Context, userID string) (int, error) - JudgeMessageReactionEXISTS(ctx context.Context, clientMsgID string, sessionType int32) (bool, error) - GetOneMessageAllReactionList(ctx context.Context, clientMsgID string, sessionType int32) (map[string]string, error) - DeleteOneMessageKey(ctx context.Context, clientMsgID string, sessionType int32, subKey string) error - SetMessageReactionExpire(ctx context.Context, clientMsgID string, sessionType int32, expiration time.Duration) (bool, error) - GetMessageTypeKeyValue(ctx context.Context, clientMsgID string, sessionType int32, typeKey string) (string, error) - SetMessageTypeKeyValue(ctx context.Context, clientMsgID string, sessionType int32, typeKey, value string) error - LockMessageTypeKey(ctx context.Context, clientMsgID string, TypeKey string) error - UnLockMessageTypeKey(ctx context.Context, clientMsgID string, TypeKey string) error -} - -func NewMsgCache(client redis.UniversalClient) MsgCache { - return &msgCache{rdb: client} -} - -type msgCache struct { - rdb redis.UniversalClient -} - -func (m *msgCache) IncrUserSeq(ctx context.Context, userID string) (int64, error) { - return utils.Wrap2(m.rdb.Get(ctx, userIncrSeq+userID).Int64()) -} - -func (m *msgCache) GetUserMaxSeq(ctx context.Context, userID string) (int64, error) { - return utils.Wrap2(m.rdb.Get(ctx, userIncrSeq+userID).Int64()) -} - -func (m *msgCache) SetUserMaxSeq(ctx context.Context, userID string, maxSeq int64) error { - return utils.Wrap1(m.rdb.Set(ctx, userIncrSeq+userID, maxSeq, 0).Err()) -} - -func (m *msgCache) SetUserMinSeq(ctx context.Context, userID string, minSeq int64) (err error) { - return utils.Wrap1(m.rdb.Set(ctx, userMinSeq+userID, minSeq, 0).Err()) -} - -func (m *msgCache) GetUserMinSeq(ctx context.Context, userID string) (int64, error) { - return utils.Wrap2(m.rdb.Get(ctx, userMinSeq+userID).Int64()) -} - -func (m *msgCache) SetGroupUserMinSeq(ctx context.Context, groupID, userID string, minSeq int64) (err error) { - key := groupUserMinSeq + "g:" + groupID + "u:" + userID - return utils.Wrap1(m.rdb.Set(ctx, key, minSeq, 0).Err()) -} - -func (m *msgCache) GetGroupUserMinSeq(ctx context.Context, groupID, userID string) (int64, error) { - return utils.Wrap2(m.rdb.Get(ctx, groupMinSeq+groupID).Int64()) -} - -func (m *msgCache) GetGroupMaxSeq(ctx context.Context, groupID string) (int64, error) { - return utils.Wrap2(m.rdb.Get(ctx, groupMaxSeq+groupID).Int64()) -} - -func (m *msgCache) GetGroupMinSeq(ctx context.Context, groupID string) (int64, error) { - return utils.Wrap2(m.rdb.Get(ctx, groupMinSeq+groupID).Int64()) -} - -func (m *msgCache) IncrGroupMaxSeq(ctx context.Context, groupID string) (int64, error) { - key := groupMaxSeq + groupID - seq, err := m.rdb.Incr(ctx, key).Uint64() - return int64(seq), utils.Wrap1(err) -} - -func (m *msgCache) SetGroupMaxSeq(ctx context.Context, groupID string, maxSeq int64) error { - key := groupMaxSeq + groupID - return utils.Wrap1(m.rdb.Set(ctx, key, maxSeq, 0).Err()) -} - -func (m *msgCache) SetGroupMinSeq(ctx context.Context, groupID string, minSeq int64) error { - key := groupMinSeq + groupID - return utils.Wrap1(m.rdb.Set(ctx, key, minSeq, 0).Err()) -} - -func (m *msgCache) AddTokenFlag(ctx context.Context, userID string, platformID int, token string, flag int) error { - key := uidPidToken + userID + ":" + constant.PlatformIDToName(platformID) - return utils.Wrap1(m.rdb.HSet(ctx, key, token, flag).Err()) -} - -func (m *msgCache) GetTokensWithoutError(ctx context.Context, userID, platformID string) (map[string]int, error) { - key := uidPidToken + userID + ":" + platformID - m, err := m.rdb.HGetAll(ctx, key).Result() - if err != nil { - return nil, utils.Wrap1(err) - } - mm := make(map[string]int) - for k, v := range m { - mm[k] = utils.StringToInt(v) - } - return mm, nil -} - -func (m *msgCache) SetTokenMapByUidPid(ctx context.Context, userID string, platformID int, m map[string]int) error { - key := uidPidToken + userID + ":" + constant.PlatformIDToName(platformID) - mm := make(map[string]interface{}) - for k, v := range m { - mm[k] = v - } - return utils.Wrap1(m.rdb.HSet(ctx, key, mm).Err()) -} - -func (m *msgCache) DeleteTokenByUidPid(ctx context.Context, userID string, platformID int, fields []string) error { - key := uidPidToken + userID + ":" + constant.PlatformIDToName(platformID) - return utils.Wrap1(m.rdb.HDel(ctx, key, fields...).Err()) -} - -func (m *msgCache) GetMessagesBySeq(ctx context.Context, userID string, seqList []int64) (seqMsg []*sdkws.MsgData, failedSeqList []int64, err error) { - var errResult error - for _, v := range seqList { - //MESSAGE_CACHE:169.254.225.224_reliability1653387820_0_1 - key := messageCache + userID + "_" + strconv.Itoa(int(v)) - result, err := m.rdb.Get(ctx, key).Result() - if err != nil { - errResult = err - failedSeqList = append(failedSeqList, v) - } else { - msg := sdkws.MsgData{} - err = jsonpb.UnmarshalString(result, &msg) - if err != nil { - errResult = err - failedSeqList = append(failedSeqList, v) - } else { - seqMsg = append(seqMsg, &msg) - } - - } - } - return seqMsg, failedSeqList, errResult -} - -func (m *msgCache) SetMessageToCache(ctx context.Context, userID string, msgList []*pbChat.MsgDataToMQ) (int, error) { - pipe := m.rdb.Pipeline() - var failedList []pbChat.MsgDataToMQ - for _, msg := range msgList { - key := messageCache + userID + "_" + strconv.Itoa(int(msg.MsgData.Seq)) - s, err := utils.Pb2String(msg.MsgData) - if err != nil { - return 0, utils.Wrap1(err) - } - err = pipe.Set(ctx, key, s, time.Duration(config.Config.MsgCacheTimeout)*time.Second).Err() - if err != nil { - return 0, utils.Wrap1(err) - } - } - if len(failedList) != 0 { - return len(failedList), errors.New(fmt.Sprintf("set msg to cache failed, failed lists: %q,%s", failedList, tracelog.GetOperationID(ctx))) - } - _, err := pipe.Exec(ctx) - return 0, err -} - -func (m *msgCache) DeleteMessageFromCache(ctx context.Context, userID string, msgList []*pbChat.MsgDataToMQ) error { - for _, msg := range msgList { - if err := m.rdb.Del(ctx, messageCache+userID+"_"+strconv.Itoa(int(msg.MsgData.Seq))).Err(); err != nil { - return utils.Wrap1(err) - } - } - return nil -} - -func (m *msgCache) CleanUpOneUserAllMsg(ctx context.Context, userID string) error { - key := messageCache + userID + "_" + "*" - vals, err := m.rdb.Keys(ctx, key).Result() - if err == redis.Nil { - return nil - } - if err != nil { - return utils.Wrap1(err) - } - for _, v := range vals { - if err := m.rdb.Del(ctx, v).Err(); err != nil { - return utils.Wrap1(err) - } - } - return nil -} - -func (m *msgCache) HandleSignalInfo(ctx context.Context, msg *sdkws.MsgData, pushToUserID string) (isSend bool, err error) { - req := &pbRtc.SignalReq{} - if err := proto.Unmarshal(msg.Content, req); err != nil { - return false, utils.Wrap1(err) - } - var inviteeUserIDList []string - var isInviteSignal bool - switch signalInfo := req.Payload.(type) { - case *pbRtc.SignalReq_Invite: - inviteeUserIDList = signalInfo.Invite.Invitation.InviteeUserIDList - isInviteSignal = true - case *pbRtc.SignalReq_InviteInGroup: - inviteeUserIDList = signalInfo.InviteInGroup.Invitation.InviteeUserIDList - isInviteSignal = true - if !utils.Contain(pushToUserID, inviteeUserIDList...) { - return false, nil - } - case *pbRtc.SignalReq_HungUp, *pbRtc.SignalReq_Cancel, *pbRtc.SignalReq_Reject, *pbRtc.SignalReq_Accept: - return false, utils.Wrap1(errors.New("signalInfo do not need offlinePush")) - default: - return false, nil - } - if isInviteSignal { - for _, userID := range inviteeUserIDList { - timeout, err := strconv.Atoi(config.Config.Rtc.SignalTimeout) - if err != nil { - return false, utils.Wrap1(err) - } - keyList := SignalListCache + userID - err = m.rdb.LPush(ctx, keyList, msg.ClientMsgID).Err() - if err != nil { - return false, utils.Wrap1(err) - } - err = m.rdb.Expire(ctx, keyList, time.Duration(timeout)*time.Second).Err() - if err != nil { - return false, utils.Wrap1(err) - } - key := SignalCache + msg.ClientMsgID - err = m.rdb.Set(ctx, key, msg.Content, time.Duration(timeout)*time.Second).Err() - if err != nil { - return false, utils.Wrap1(err) - } - } - } - return true, nil -} - -func (m *msgCache) GetSignalInfoFromCacheByClientMsgID(ctx context.Context, clientMsgID string) (invitationInfo *pbRtc.SignalInviteReq, err error) { - bytes, err := m.rdb.Get(ctx, SignalCache+clientMsgID).Bytes() - if err != nil { - return nil, utils.Wrap1(err) - } - req := &pbRtc.SignalReq{} - if err = proto.Unmarshal(bytes, req); err != nil { - return nil, utils.Wrap1(err) - } - invitationInfo = &pbRtc.SignalInviteReq{} - switch req2 := req.Payload.(type) { - case *pbRtc.SignalReq_Invite: - invitationInfo.Invitation = req2.Invite.Invitation - invitationInfo.OpUserID = req2.Invite.OpUserID - case *pbRtc.SignalReq_InviteInGroup: - invitationInfo.Invitation = req2.InviteInGroup.Invitation - invitationInfo.OpUserID = req2.InviteInGroup.OpUserID - } - return invitationInfo, nil -} - -func (m *msgCache) GetAvailableSignalInvitationInfo(ctx context.Context, userID string) (invitationInfo *pbRtc.SignalInviteReq, err error) { - key, err := m.rdb.LPop(ctx, SignalListCache+userID).Result() - if err != nil { - return nil, utils.Wrap1(err) - } - invitationInfo, err = m.GetSignalInfoFromCacheByClientMsgID(ctx, key) - if err != nil { - return nil, err - } - return invitationInfo, m.DelUserSignalList(ctx, userID) -} - -func (m *msgCache) DelUserSignalList(ctx context.Context, userID string) error { - return utils.Wrap1(m.rdb.Del(ctx, SignalListCache+userID).Err()) -} - -func (m *msgCache) DelMsgFromCache(ctx context.Context, userID string, seqList []int64) error { - for _, seq := range seqList { - key := messageCache + userID + "_" + strconv.Itoa(int(seq)) - result, err := m.rdb.Get(ctx, key).Result() - if err != nil { - if err == redis.Nil { - continue - } - return utils.Wrap1(err) - } - var msg sdkws.MsgData - if err := jsonpb.UnmarshalString(result, &msg); err != nil { - return err - } - msg.Status = constant.MsgDeleted - s, err := utils.Pb2String(&msg) - if err != nil { - return utils.Wrap1(err) - } - if err := m.rdb.Set(ctx, key, s, time.Duration(config.Config.MsgCacheTimeout)*time.Second).Err(); err != nil { - return utils.Wrap1(err) - } - } - return nil -} - -func (m *msgCache) SetGetuiToken(ctx context.Context, token string, expireTime int64) error { - return utils.Wrap1(m.rdb.Set(ctx, getuiToken, token, time.Duration(expireTime)*time.Second).Err()) -} - -func (m *msgCache) GetGetuiToken(ctx context.Context) (string, error) { - return utils.Wrap2(m.rdb.Get(ctx, getuiToken).Result()) -} - -func (m *msgCache) SetGetuiTaskID(ctx context.Context, taskID string, expireTime int64) error { - return utils.Wrap1(m.rdb.Set(ctx, getuiTaskID, taskID, time.Duration(expireTime)*time.Second).Err()) -} - -func (m *msgCache) GetGetuiTaskID(ctx context.Context) (string, error) { - return utils.Wrap2(m.rdb.Get(ctx, getuiTaskID).Result()) -} - -func (m *msgCache) SetSendMsgStatus(ctx context.Context, id string, status int32) error { - return utils.Wrap1(m.rdb.Set(ctx, sendMsgFailedFlag+id, status, time.Hour*24).Err()) -} - -func (m *msgCache) GetSendMsgStatus(ctx context.Context, id string) (int32, error) { - result, err := m.rdb.Get(ctx, sendMsgFailedFlag+id).Int() - return int32(result), utils.Wrap1(err) -} - -func (m *msgCache) SetFcmToken(ctx context.Context, account string, platformID int, fcmToken string, expireTime int64) (err error) { - return utils.Wrap1(m.rdb.Set(ctx, FcmToken+account+":"+strconv.Itoa(platformID), fcmToken, time.Duration(expireTime)*time.Second).Err()) -} - -func (m *msgCache) GetFcmToken(ctx context.Context, account string, platformID int) (string, error) { - return utils.Wrap2(m.rdb.Get(ctx, FcmToken+account+":"+strconv.Itoa(platformID)).Result()) -} - -func (m *msgCache) DelFcmToken(ctx context.Context, account string, platformID int) error { - return utils.Wrap1(m.rdb.Del(ctx, FcmToken+account+":"+strconv.Itoa(platformID)).Err()) -} - -func (m *msgCache) IncrUserBadgeUnreadCountSum(ctx context.Context, userID string) (int, error) { - seq, err := m.rdb.Incr(ctx, userBadgeUnreadCountSum+userID).Result() - return int(seq), utils.Wrap1(err) -} - -func (m *msgCache) SetUserBadgeUnreadCountSum(ctx context.Context, userID string, value int) error { - return utils.Wrap1(m.rdb.Set(ctx, userBadgeUnreadCountSum+userID, value, 0).Err()) -} - -func (m *msgCache) GetUserBadgeUnreadCountSum(ctx context.Context, userID string) (int, error) { - return utils.Wrap2(m.rdb.Get(ctx, userBadgeUnreadCountSum+userID).Int()) -} - -func (m *msgCache) LockMessageTypeKey(ctx context.Context, clientMsgID string, TypeKey string) error { - key := exTypeKeyLocker + clientMsgID + "_" + TypeKey - return utils.Wrap1(m.rdb.SetNX(ctx, key, 1, time.Minute).Err()) -} - -func (m *msgCache) UnLockMessageTypeKey(ctx context.Context, clientMsgID string, TypeKey string) error { - key := exTypeKeyLocker + clientMsgID + "_" + TypeKey - return utils.Wrap1(m.rdb.Del(ctx, key).Err()) -} - -func (m *msgCache) getMessageReactionExPrefix(clientMsgID string, sessionType int32) string { - switch sessionType { - case constant.SingleChatType: - return "EX_SINGLE_" + clientMsgID - case constant.GroupChatType: - return "EX_GROUP_" + clientMsgID - case constant.SuperGroupChatType: - return "EX_SUPER_GROUP_" + clientMsgID - case constant.NotificationChatType: - return "EX_NOTIFICATION" + clientMsgID - } - return "" -} - -func (m *msgCache) JudgeMessageReactionEXISTS(ctx context.Context, clientMsgID string, sessionType int32) (bool, error) { - n, err := m.rdb.Exists(ctx, m.getMessageReactionExPrefix(clientMsgID, sessionType)).Result() - if err != nil { - return false, utils.Wrap(err, "") - } - return n > 0, nil -} - -func (m *msgCache) SetMessageTypeKeyValue(ctx context.Context, clientMsgID string, sessionType int32, typeKey, value string) error { - return utils.Wrap1(m.rdb.HSet(ctx, m.getMessageReactionExPrefix(clientMsgID, sessionType), typeKey, value).Err()) -} - -func (m *msgCache) SetMessageReactionExpire(ctx context.Context, clientMsgID string, sessionType int32, expiration time.Duration) (bool, error) { - return utils.Wrap2(m.rdb.Expire(ctx, m.getMessageReactionExPrefix(clientMsgID, sessionType), expiration).Result()) -} - -func (m *msgCache) GetMessageTypeKeyValue(ctx context.Context, clientMsgID string, sessionType int32, typeKey string) (string, error) { - return utils.Wrap2(m.rdb.HGet(ctx, m.getMessageReactionExPrefix(clientMsgID, sessionType), typeKey).Result()) -} - -func (m *msgCache) GetOneMessageAllReactionList(ctx context.Context, clientMsgID string, sessionType int32) (map[string]string, error) { - return utils.Wrap2(m.rdb.HGetAll(ctx, m.getMessageReactionExPrefix(clientMsgID, sessionType)).Result()) -} - -func (m *msgCache) DeleteOneMessageKey(ctx context.Context, clientMsgID string, sessionType int32, subKey string) error { - return utils.Wrap1(m.rdb.HDel(ctx, m.getMessageReactionExPrefix(clientMsgID, sessionType), subKey).Err()) -} diff --git a/pkg/common/db/cache/redis.go b/pkg/common/db/cache/redis.go index 8869eaf59..900b7c4ec 100644 --- a/pkg/common/db/cache/redis.go +++ b/pkg/common/db/cache/redis.go @@ -3,6 +3,7 @@ package cache import ( "OpenIM/pkg/common/config" "OpenIM/pkg/common/constant" + "OpenIM/pkg/common/tracelog" pbChat "OpenIM/pkg/proto/msg" pbRtc "OpenIM/pkg/proto/rtc" "OpenIM/pkg/proto/sdkws" @@ -10,12 +11,12 @@ import ( "context" "errors" "fmt" + "github.com/golang/protobuf/jsonpb" + "github.com/golang/protobuf/proto" "strconv" "time" "github.com/go-redis/redis/v8" - "github.com/golang/protobuf/jsonpb" - "github.com/golang/protobuf/proto" ) const ( @@ -37,6 +38,10 @@ const ( exTypeKeyLocker = "EX_LOCK:" uidPidToken = "UID_PID_TOKEN_STATUS:" + + SignalListCache = "SIGNAL_LIST_CACHE:" + + SignalCache = "SIGNAL_CACHE:" ) type Cache interface { @@ -49,6 +54,7 @@ type Cache interface { SetGroupUserMinSeq(ctx context.Context, groupID, userID string, minSeq int64) (err error) GetGroupUserMinSeq(ctx context.Context, groupID, userID string) (int64, error) GetGroupMaxSeq(ctx context.Context, groupID string) (int64, error) + GetGroupMinSeq(ctx context.Context, groupID string) (int64, error) IncrGroupMaxSeq(ctx context.Context, groupID string) (int64, error) SetGroupMaxSeq(ctx context.Context, groupID string, maxSeq int64) error SetGroupMinSeq(ctx context.Context, groupID string, minSeq int64) error @@ -74,8 +80,8 @@ type Cache interface { SetGetuiTaskID(ctx context.Context, taskID string, expireTime int64) error GetGetuiTaskID(ctx context.Context) (string, error) - SetSendMsgStatus(ctx context.Context, status int32) error - GetSendMsgStatus(ctx context.Context) (int, error) + SetSendMsgStatus(ctx context.Context, id string, status int32) error + GetSendMsgStatus(ctx context.Context, id string) (int32, error) SetFcmToken(ctx context.Context, account string, platformID int, fcmToken string, expireTime int64) (err error) GetFcmToken(ctx context.Context, account string, platformID int) (string, error) DelFcmToken(ctx context.Context, account string, platformID int) error @@ -92,298 +98,227 @@ type Cache interface { UnLockMessageTypeKey(ctx context.Context, clientMsgID string, TypeKey string) error } -// native redis operate - -//func NewRedis() *RedisClient { -// o := &RedisClient{} -// o.InitRedis() -// return o -//} - -func NewRedis() (*RedisClient, error) { - var rdb redis.UniversalClient - if config.Config.Redis.EnableCluster { - rdb = redis.NewClusterClient(&redis.ClusterOptions{ - Addrs: config.Config.Redis.DBAddress, - Username: config.Config.Redis.DBUserName, - Password: config.Config.Redis.DBPassWord, // no password set - PoolSize: 50, - }) - //if err := rdb.Ping(ctx).Err();err != nil { - // return nil, fmt.Errorf("redis ping %w", err) - //} - //return &RedisClient{rdb: rdb}, nil - } else { - rdb = redis.NewClient(&redis.Options{ - Addr: config.Config.Redis.DBAddress[0], - Username: config.Config.Redis.DBUserName, - Password: config.Config.Redis.DBPassWord, // no password set - DB: 0, // use default DB - PoolSize: 100, // 连接池大小 - }) - //err := rdb.Ping(ctx).Err() - //if err != nil { - // panic(err.Error() + " redis " + config.Config.Redis.DBAddress[0] + config.Config.Redis.DBUserName + config.Config.Redis.DBPassWord) - //} - } - ctx, cancel := context.WithTimeout(context.Background(), time.Second*10) - defer cancel() - err := rdb.Ping(ctx).Err() - if err != nil { - return nil, fmt.Errorf("redis ping %w", err) - } - return &RedisClient{rdb: rdb}, nil +func NewMsgCache(client redis.UniversalClient) Cache { + return &msgCache{rdb: client} } -type RedisClient struct { +type msgCache struct { rdb redis.UniversalClient } -func NewRedisClient(rdb redis.UniversalClient) *RedisClient { - return &RedisClient{rdb: rdb} +func (m *msgCache) IncrUserSeq(ctx context.Context, userID string) (int64, error) { + return utils.Wrap2(m.rdb.Get(ctx, userIncrSeq+userID).Int64()) } -func (r *RedisClient) GetClient() redis.UniversalClient { - return r.rdb +func (m *msgCache) GetUserMaxSeq(ctx context.Context, userID string) (int64, error) { + return utils.Wrap2(m.rdb.Get(ctx, userIncrSeq+userID).Int64()) } -// Perform seq auto-increment operation of user messages -func (r *RedisClient) IncrUserSeq(ctx context.Context, uid string) (int64, error) { - key := userIncrSeq + uid - seq, err := r.rdb.Incr(context.Background(), key).Result() - return seq, err +func (m *msgCache) SetUserMaxSeq(ctx context.Context, userID string, maxSeq int64) error { + return utils.Wrap1(m.rdb.Set(ctx, userIncrSeq+userID, maxSeq, 0).Err()) } -// Get the largest Seq -func (r *RedisClient) GetUserMaxSeq(ctx context.Context, uid string) (int64, error) { - key := userIncrSeq + uid - seq, err := r.rdb.Get(context.Background(), key).Result() - return int64(utils.StringToInt(seq)), err +func (m *msgCache) SetUserMinSeq(ctx context.Context, userID string, minSeq int64) (err error) { + return utils.Wrap1(m.rdb.Set(ctx, userMinSeq+userID, minSeq, 0).Err()) } -// set the largest Seq -func (r *RedisClient) SetUserMaxSeq(ctx context.Context, uid string, maxSeq int64) error { - key := userIncrSeq + uid - return r.rdb.Set(context.Background(), key, maxSeq, 0).Err() +func (m *msgCache) GetUserMinSeq(ctx context.Context, userID string) (int64, error) { + return utils.Wrap2(m.rdb.Get(ctx, userMinSeq+userID).Int64()) } -// Set the user's minimum seq -func (r *RedisClient) SetUserMinSeq(ctx context.Context, uid string, minSeq int64) (err error) { - key := userMinSeq + uid - return r.rdb.Set(context.Background(), key, minSeq, 0).Err() -} - -// Get the smallest Seq -func (r *RedisClient) GetUserMinSeq(ctx context.Context, uid string) (int64, error) { - key := userMinSeq + uid - seq, err := r.rdb.Get(context.Background(), key).Result() - return int64(utils.StringToInt(seq)), err -} - -func (r *RedisClient) SetGroupUserMinSeq(ctx context.Context, groupID, userID string, minSeq int64) (err error) { +func (m *msgCache) SetGroupUserMinSeq(ctx context.Context, groupID, userID string, minSeq int64) (err error) { key := groupUserMinSeq + "g:" + groupID + "u:" + userID - return r.rdb.Set(context.Background(), key, minSeq, 0).Err() -} -func (r *RedisClient) GetGroupUserMinSeq(ctx context.Context, groupID, userID string) (int64, error) { - key := groupUserMinSeq + "g:" + groupID + "u:" + userID - seq, err := r.rdb.Get(context.Background(), key).Result() - return int64(utils.StringToInt(seq)), err + return utils.Wrap1(m.rdb.Set(ctx, key, minSeq, 0).Err()) } -func (r *RedisClient) GetGroupMaxSeq(ctx context.Context, groupID string) (int64, error) { +func (m *msgCache) GetGroupUserMinSeq(ctx context.Context, groupID, userID string) (int64, error) { + return utils.Wrap2(m.rdb.Get(ctx, groupMinSeq+groupID).Int64()) +} + +func (m *msgCache) GetGroupMaxSeq(ctx context.Context, groupID string) (int64, error) { + return utils.Wrap2(m.rdb.Get(ctx, groupMaxSeq+groupID).Int64()) +} + +func (m *msgCache) GetGroupMinSeq(ctx context.Context, groupID string) (int64, error) { + return utils.Wrap2(m.rdb.Get(ctx, groupMinSeq+groupID).Int64()) +} + +func (m *msgCache) IncrGroupMaxSeq(ctx context.Context, groupID string) (int64, error) { key := groupMaxSeq + groupID - seq, err := r.rdb.Get(context.Background(), key).Result() - return int64(utils.StringToInt(seq)), err + seq, err := m.rdb.Incr(ctx, key).Uint64() + return int64(seq), utils.Wrap1(err) } -func (r *RedisClient) IncrGroupMaxSeq(ctx context.Context, groupID string) (int64, error) { +func (m *msgCache) SetGroupMaxSeq(ctx context.Context, groupID string, maxSeq int64) error { key := groupMaxSeq + groupID - seq, err := r.rdb.Incr(context.Background(), key).Result() - return seq, err + return utils.Wrap1(m.rdb.Set(ctx, key, maxSeq, 0).Err()) } -func (r *RedisClient) SetGroupMaxSeq(ctx context.Context, groupID string, maxSeq int64) error { - key := groupMaxSeq + groupID - return r.rdb.Set(context.Background(), key, maxSeq, 0).Err() -} - -func (r *RedisClient) SetGroupMinSeq(ctx context.Context, groupID string, minSeq int64) error { +func (m *msgCache) SetGroupMinSeq(ctx context.Context, groupID string, minSeq int64) error { key := groupMinSeq + groupID - return r.rdb.Set(context.Background(), key, minSeq, 0).Err() + return utils.Wrap1(m.rdb.Set(ctx, key, minSeq, 0).Err()) } -// Store userid and platform class to redis -func (r *RedisClient) AddTokenFlag(ctx context.Context, userID string, platformID int, token string, flag int) error { +func (m *msgCache) AddTokenFlag(ctx context.Context, userID string, platformID int, token string, flag int) error { key := uidPidToken + userID + ":" + constant.PlatformIDToName(platformID) - return r.rdb.HSet(context.Background(), key, token, flag).Err() + return utils.Wrap1(m.rdb.HSet(ctx, key, token, flag).Err()) } -//key:userID+platform-> -func (r *RedisClient) GetTokenMapByUidPid(ctx context.Context, userID, platformID int) (map[string]int, error) { +func (m *msgCache) GetTokensWithoutError(ctx context.Context, userID, platformID string) (map[string]int, error) { key := uidPidToken + userID + ":" + platformID - m, err := r.rdb.HGetAll(context.Background(), key).Result() - mm := make(map[string]int) - for k, v := range m { - mm[k] = utils.StringToInt(v) - } - return mm, err -} - -func (r *RedisClient) GetTokensWithoutError(ctx context.Context, userID, platform string) (map[string]int, error) { - key := uidPidToken + userID + ":" + platform - m, err := r.rdb.HGetAll(context.Background(), key).Result() - if err != nil && err == redis.Nil { - return nil, nil + m, err := m.rdb.HGetAll(ctx, key).Result() + if err != nil { + return nil, utils.Wrap1(err) } mm := make(map[string]int) for k, v := range m { mm[k] = utils.StringToInt(v) } - return mm, utils.Wrap(err, "") + return mm, nil } -func (r *RedisClient) SetTokenMapByUidPid(ctx context.Context, userID string, platform string, m map[string]int) error { - key := uidPidToken + userID + ":" + platform +func (m *msgCache) SetTokenMapByUidPid(ctx context.Context, userID string, platformID int, m map[string]int) error { + key := uidPidToken + userID + ":" + constant.PlatformIDToName(platformID) mm := make(map[string]interface{}) for k, v := range m { mm[k] = v } - return r.rdb.HSet(context.Background(), key, mm).Err() + return utils.Wrap1(m.rdb.HSet(ctx, key, mm).Err()) } -func (r *RedisClient) DeleteTokenByUidPid(ctx context.Context, userID string, platform string, fields []string) error { - key := uidPidToken + userID + ":" + platform - return r.rdb.HDel(context.Background(), key, fields...).Err() +func (m *msgCache) DeleteTokenByUidPid(ctx context.Context, userID string, platformID int, fields []string) error { + key := uidPidToken + userID + ":" + constant.PlatformIDToName(platformID) + return utils.Wrap1(m.rdb.HDel(ctx, key, fields...).Err()) } -func (r *RedisClient) GetMessagesBySeq(ctx context.Context, userID string, seqList []int64, operationID string) (seqMsgs []*sdkws.MsgData, failedSeqs []int64, err2 error) { +func (m *msgCache) GetMessagesBySeq(ctx context.Context, userID string, seqList []int64) (seqMsg []*sdkws.MsgData, failedSeqList []int64, err error) { + var errResult error for _, v := range seqList { //MESSAGE_CACHE:169.254.225.224_reliability1653387820_0_1 key := messageCache + userID + "_" + strconv.Itoa(int(v)) - result, err := r.rdb.Get(context.Background(), key).Result() + result, err := m.rdb.Get(ctx, key).Result() if err != nil { - if err != redis.Nil { - err2 = err - } - failedSeqs = append(failedSeqs, v) + errResult = err + failedSeqList = append(failedSeqList, v) } else { msg := sdkws.MsgData{} err = jsonpb.UnmarshalString(result, &msg) if err != nil { - err2 = err - failedSeqs = append(failedSeqs, v) + errResult = err + failedSeqList = append(failedSeqList, v) } else { - seqMsgs = append(seqMsgs, &msg) + seqMsg = append(seqMsg, &msg) } + } } - return seqMsgs, failedSeqs, err2 + return seqMsg, failedSeqList, errResult } -func (r *RedisClient) SetMessageToCache(ctx context.Context, userID string, msgs []*pbChat.MsgDataToMQ, uid string) (int, error) { - pipe := r.rdb.Pipeline() - var failedMsgs []pbChat.MsgDataToMQ - for _, msg := range msgs { - key := messageCache + uid + "_" + strconv.Itoa(int(msg.MsgData.Seq)) +func (m *msgCache) SetMessageToCache(ctx context.Context, userID string, msgList []*pbChat.MsgDataToMQ) (int, error) { + pipe := m.rdb.Pipeline() + var failedList []pbChat.MsgDataToMQ + for _, msg := range msgList { + key := messageCache + userID + "_" + strconv.Itoa(int(msg.MsgData.Seq)) s, err := utils.Pb2String(msg.MsgData) if err != nil { - continue + return 0, utils.Wrap1(err) } err = pipe.Set(ctx, key, s, time.Duration(config.Config.MsgCacheTimeout)*time.Second).Err() - //err = r.rdb.HMSet(context.Background(), "12", map[string]interface{}{"1": 2, "343": false}).Err() if err != nil { - failedMsgs = append(failedMsgs, *msg) + return 0, utils.Wrap1(err) } } - if len(failedMsgs) != 0 { - return len(failedMsgs), errors.New(fmt.Sprintf("set msg to cache failed, failed lists: %q,%s", failedList)) + if len(failedList) != 0 { + return len(failedList), errors.New(fmt.Sprintf("set msg to cache failed, failed lists: %q,%s", failedList, tracelog.GetOperationID(ctx))) } _, err := pipe.Exec(ctx) return 0, err } -func (r *RedisClient) DeleteMessageFromCache(ctx context.Context, userID string, msgs []*pbChat.MsgDataToMQ) error { - for _, msg := range msgs { - key := messageCache + userID + "_" + strconv.Itoa(int(msg.MsgData.Seq)) - err := r.rdb.Del(ctx, key).Err() - if err != nil { + +func (m *msgCache) DeleteMessageFromCache(ctx context.Context, userID string, msgList []*pbChat.MsgDataToMQ) error { + for _, msg := range msgList { + if err := m.rdb.Del(ctx, messageCache+userID+"_"+strconv.Itoa(int(msg.MsgData.Seq))).Err(); err != nil { + return utils.Wrap1(err) } } return nil } -func (r *RedisClient) CleanUpOneUserAllMsg(ctx context.Context, userID string) error { +func (m *msgCache) CleanUpOneUserAllMsg(ctx context.Context, userID string) error { key := messageCache + userID + "_" + "*" - vals, err := r.rdb.Keys(ctx, key).Result() + vals, err := m.rdb.Keys(ctx, key).Result() if err == redis.Nil { return nil } if err != nil { - return utils.Wrap(err, "") + return utils.Wrap1(err) } for _, v := range vals { - err = r.rdb.Del(ctx, v).Err() + if err := m.rdb.Del(ctx, v).Err(); err != nil { + return utils.Wrap1(err) + } } return nil } -func (r *RedisClient) HandleSignalInfo(ctx context.Context, operationID string, msg *sdkws.MsgData, pushToUserID string) (isSend bool, err error) { +func (m *msgCache) HandleSignalInfo(ctx context.Context, msg *sdkws.MsgData, pushToUserID string) (isSend bool, err error) { req := &pbRtc.SignalReq{} if err := proto.Unmarshal(msg.Content, req); err != nil { - return false, err + return false, utils.Wrap1(err) } - var inviteeUserIDs []string + var inviteeUserIDList []string var isInviteSignal bool switch signalInfo := req.Payload.(type) { case *pbRtc.SignalReq_Invite: - inviteeUserIDs = signalInfo.Invite.Invitation.InviteeUserIDList + inviteeUserIDList = signalInfo.Invite.Invitation.InviteeUserIDList isInviteSignal = true case *pbRtc.SignalReq_InviteInGroup: - inviteeUserIDs = signalInfo.InviteInGroup.Invitation.InviteeUserIDList + inviteeUserIDList = signalInfo.InviteInGroup.Invitation.InviteeUserIDList isInviteSignal = true - if !utils.IsContain(pushToUserID, inviteeUserIDs) { + if !utils.Contain(pushToUserID, inviteeUserIDList...) { return false, nil } case *pbRtc.SignalReq_HungUp, *pbRtc.SignalReq_Cancel, *pbRtc.SignalReq_Reject, *pbRtc.SignalReq_Accept: - return false, nil + return false, utils.Wrap1(errors.New("signalInfo do not need offlinePush")) default: return false, nil } if isInviteSignal { - for _, userID := range inviteeUserIDs { + for _, userID := range inviteeUserIDList { timeout, err := strconv.Atoi(config.Config.Rtc.SignalTimeout) if err != nil { - return false, err + return false, utils.Wrap1(err) } - keyList := signalListCache + userID - err = r.rdb.LPush(context.Background(), keyList, msg.ClientMsgID).Err() + keyList := SignalListCache + userID + err = m.rdb.LPush(ctx, keyList, msg.ClientMsgID).Err() if err != nil { - return false, err + return false, utils.Wrap1(err) } - err = r.rdb.Expire(context.Background(), keyList, time.Duration(timeout)*time.Second).Err() + err = m.rdb.Expire(ctx, keyList, time.Duration(timeout)*time.Second).Err() if err != nil { - return false, err + return false, utils.Wrap1(err) } - key := signalCache + msg.ClientMsgID - err = r.rdb.Set(context.Background(), key, msg.Content, time.Duration(timeout)*time.Second).Err() + key := SignalCache + msg.ClientMsgID + err = m.rdb.Set(ctx, key, msg.Content, time.Duration(timeout)*time.Second).Err() if err != nil { - return false, err + return false, utils.Wrap1(err) } } } return true, nil } -func (r *RedisClient) GetSignalInfoFromCacheByClientMsgID(ctx context.Context, clientMsgID string) (invitationInfo *pbRtc.SignalInviteReq, err error) { - key := signalCache + clientMsgID - invitationInfo = &pbRtc.SignalInviteReq{} - bytes, err := r.rdb.Get(context.Background(), key).Bytes() +func (m *msgCache) GetSignalInfoFromCacheByClientMsgID(ctx context.Context, clientMsgID string) (invitationInfo *pbRtc.SignalInviteReq, err error) { + bytes, err := m.rdb.Get(ctx, SignalCache+clientMsgID).Bytes() if err != nil { - return nil, err + return nil, utils.Wrap1(err) } req := &pbRtc.SignalReq{} if err = proto.Unmarshal(bytes, req); err != nil { - return nil, err + return nil, utils.Wrap1(err) } + invitationInfo = &pbRtc.SignalInviteReq{} switch req2 := req.Payload.(type) { case *pbRtc.SignalReq_Invite: invitationInfo.Invitation = req2.Invite.Invitation @@ -392,162 +327,112 @@ func (r *RedisClient) GetSignalInfoFromCacheByClientMsgID(ctx context.Context, c invitationInfo.Invitation = req2.InviteInGroup.Invitation invitationInfo.OpUserID = req2.InviteInGroup.OpUserID } - return invitationInfo, err -} - -func (r *RedisClient) GetAvailableSignalInvitationInfo(ctx context.Context, userID string) (invitationInfo *pbRtc.SignalInviteReq, err error) { - keyList := signalListCache + userID - result := r.rdb.LPop(context.Background(), keyList) - if err = result.Err(); err != nil { - return nil, utils.Wrap(err, "GetAvailableSignalInvitationInfo failed") - } - key, err := result.Result() - if err != nil { - return nil, utils.Wrap(err, "GetAvailableSignalInvitationInfo failed") - } - invitationInfo, err = r.GetSignalInfoFromCacheByClientMsgID(ctx, key) - if err != nil { - return nil, utils.Wrap(err, "GetSignalInfoFromCacheByClientMsgID") - } - err = r.DelUserSignalList(ctx, userID) - if err != nil { - return nil, utils.Wrap(err, "GetSignalInfoFromCacheByClientMsgID") - } return invitationInfo, nil } -func (r *RedisClient) DelUserSignalList(ctx context.Context, userID string) error { - keyList := signalListCache + userID - err := r.rdb.Del(context.Background(), keyList).Err() - return err +func (m *msgCache) GetAvailableSignalInvitationInfo(ctx context.Context, userID string) (invitationInfo *pbRtc.SignalInviteReq, err error) { + key, err := m.rdb.LPop(ctx, SignalListCache+userID).Result() + if err != nil { + return nil, utils.Wrap1(err) + } + invitationInfo, err = m.GetSignalInfoFromCacheByClientMsgID(ctx, key) + if err != nil { + return nil, err + } + return invitationInfo, m.DelUserSignalList(ctx, userID) } -func (r *RedisClient) DelMsgFromCache(ctx context.Context, uid string, seqList []int64, operationID string) { +func (m *msgCache) DelUserSignalList(ctx context.Context, userID string) error { + return utils.Wrap1(m.rdb.Del(ctx, SignalListCache+userID).Err()) +} + +func (m *msgCache) DelMsgFromCache(ctx context.Context, userID string, seqList []int64) error { for _, seq := range seqList { - key := messageCache + uid + "_" + strconv.Itoa(int(seq)) - result, err := r.rdb.Get(context.Background(), key).Result() + key := messageCache + userID + "_" + strconv.Itoa(int(seq)) + result, err := m.rdb.Get(ctx, key).Result() if err != nil { if err == redis.Nil { - } else { + continue } - continue + return utils.Wrap1(err) } var msg sdkws.MsgData - if err := utils.String2Pb(result, &msg); err != nil { - continue + if err := jsonpb.UnmarshalString(result, &msg); err != nil { + return err } msg.Status = constant.MsgDeleted s, err := utils.Pb2String(&msg) if err != nil { - continue + return utils.Wrap1(err) } - if err := r.rdb.Set(context.Background(), key, s, time.Duration(config.Config.MsgCacheTimeout)*time.Second).Err(); err != nil { + if err := m.rdb.Set(ctx, key, s, time.Duration(config.Config.MsgCacheTimeout)*time.Second).Err(); err != nil { + return utils.Wrap1(err) } } + return nil } -func (r *RedisClient) SetGetuiToken(ctx context.Context, token string, expireTime int64) error { - return r.rdb.Set(context.Background(), getuiToken, token, time.Duration(expireTime)*time.Second).Err() +func (m *msgCache) SetGetuiToken(ctx context.Context, token string, expireTime int64) error { + return utils.Wrap1(m.rdb.Set(ctx, getuiToken, token, time.Duration(expireTime)*time.Second).Err()) } -func (r *RedisClient) GetGetuiToken(ctx context.Context) (string, error) { - result, err := r.rdb.Get(context.Background(), getuiToken).Result() - return result, err +func (m *msgCache) GetGetuiToken(ctx context.Context) (string, error) { + return utils.Wrap2(m.rdb.Get(ctx, getuiToken).Result()) } -func (r *RedisClient) SetGetuiTaskID(ctx context.Context, taskID string, expireTime int64) error { - return r.rdb.Set(context.Background(), getuiTaskID, taskID, time.Duration(expireTime)*time.Second).Err() +func (m *msgCache) SetGetuiTaskID(ctx context.Context, taskID string, expireTime int64) error { + return utils.Wrap1(m.rdb.Set(ctx, getuiTaskID, taskID, time.Duration(expireTime)*time.Second).Err()) } -func (r *RedisClient) GetGetuiTaskID(ctx context.Context) (string, error) { - result, err := r.rdb.Get(context.Background(), getuiTaskID).Result() - return result, err +func (m *msgCache) GetGetuiTaskID(ctx context.Context) (string, error) { + return utils.Wrap2(m.rdb.Get(ctx, getuiTaskID).Result()) } -func (r *RedisClient) SetSendMsgStatus(ctx context.Context, status int32, operationID string) error { - return r.rdb.Set(context.Background(), sendMsgFailedFlag+operationID, status, time.Hour*24).Err() +func (m *msgCache) SetSendMsgStatus(ctx context.Context, id string, status int32) error { + return utils.Wrap1(m.rdb.Set(ctx, sendMsgFailedFlag+id, status, time.Hour*24).Err()) } -func (r *RedisClient) GetSendMsgStatus(ctx context.Context, operationID string) (int, error) { - result, err := r.rdb.Get(context.Background(), sendMsgFailedFlag+operationID).Result() - if err != nil { - return 0, err - } - status, err := strconv.Atoi(result) - return status, err +func (m *msgCache) GetSendMsgStatus(ctx context.Context, id string) (int32, error) { + result, err := m.rdb.Get(ctx, sendMsgFailedFlag+id).Int() + return int32(result), utils.Wrap1(err) } -func (r *RedisClient) SetFcmToken(ctx context.Context, account string, platformID int, fcmToken string, expireTime int64) (err error) { - key := FcmToken + account + ":" + strconv.Itoa(platformID) - return r.rdb.Set(context.Background(), key, fcmToken, time.Duration(expireTime)*time.Second).Err() +func (m *msgCache) SetFcmToken(ctx context.Context, account string, platformID int, fcmToken string, expireTime int64) (err error) { + return utils.Wrap1(m.rdb.Set(ctx, FcmToken+account+":"+strconv.Itoa(platformID), fcmToken, time.Duration(expireTime)*time.Second).Err()) } -func (r *RedisClient) GetFcmToken(ctx context.Context, account string, platformID int) (string, error) { - key := FcmToken + account + ":" + strconv.Itoa(platformID) - return r.rdb.Get(context.Background(), key).Result() -} -func (r *RedisClient) DelFcmToken(ctx context.Context, account string, platformID int) error { - key := FcmToken + account + ":" + strconv.Itoa(platformID) - return r.rdb.Del(context.Background(), key).Err() -} -func (r *RedisClient) IncrUserBadgeUnreadCountSum(ctx context.Context, uid string) (int, error) { - key := userBadgeUnreadCountSum + uid - seq, err := r.rdb.Incr(context.Background(), key).Result() - return int(seq), err -} -func (r *RedisClient) SetUserBadgeUnreadCountSum(ctx context.Context, uid string, value int) error { - key := userBadgeUnreadCountSum + uid - return r.rdb.Set(context.Background(), key, value, 0).Err() -} -func (r *RedisClient) GetUserBadgeUnreadCountSum(ctx context.Context, uid string) (int, error) { - key := userBadgeUnreadCountSum + uid - seq, err := r.rdb.Get(context.Background(), key).Result() - return utils.StringToInt(seq), err -} -func (r *RedisClient) JudgeMessageReactionEXISTS(ctx context.Context, clientMsgID string, sessionType int32) (bool, error) { - key := r.getMessageReactionExPrefix(clientMsgID, sessionType) - n, err := r.rdb.Exists(context.Background(), key).Result() - return n > 0, err +func (m *msgCache) GetFcmToken(ctx context.Context, account string, platformID int) (string, error) { + return utils.Wrap2(m.rdb.Get(ctx, FcmToken+account+":"+strconv.Itoa(platformID)).Result()) } -func (r *RedisClient) GetOneMessageAllReactionList(ctx context.Context, clientMsgID string, sessionType int32) (map[string]string, error) { - key := r.getMessageReactionExPrefix(clientMsgID, sessionType) - return r.rdb.HGetAll(context.Background(), key).Result() - -} -func (r *RedisClient) DeleteOneMessageKey(ctx context.Context, clientMsgID string, sessionType int32, subKey string) error { - key := r.getMessageReactionExPrefix(clientMsgID, sessionType) - return r.rdb.HDel(context.Background(), key, subKey).Err() - -} -func (r *RedisClient) SetMessageReactionExpire(ctx context.Context, clientMsgID string, sessionType int32, expiration time.Duration) (bool, error) { - key := r.getMessageReactionExPrefix(clientMsgID, sessionType) - return r.rdb.Expire(context.Background(), key, expiration).Result() +func (m *msgCache) DelFcmToken(ctx context.Context, account string, platformID int) error { + return utils.Wrap1(m.rdb.Del(ctx, FcmToken+account+":"+strconv.Itoa(platformID)).Err()) } -func (r *RedisClient) GetMessageTypeKeyValue(ctx context.Context, clientMsgID string, sessionType int32, typeKey string) (string, error) { - key := r.getMessageReactionExPrefix(clientMsgID, sessionType) - result, err := r.rdb.HGet(context.Background(), key, typeKey).Result() - return result, err +func (m *msgCache) IncrUserBadgeUnreadCountSum(ctx context.Context, userID string) (int, error) { + seq, err := m.rdb.Incr(ctx, userBadgeUnreadCountSum+userID).Result() + return int(seq), utils.Wrap1(err) } -func (r *RedisClient) SetMessageTypeKeyValue(ctx context.Context, clientMsgID string, sessionType int32, typeKey, value string) error { - key := r.getMessageReactionExPrefix(clientMsgID, sessionType) - return r.rdb.HSet(context.Background(), key, typeKey, value).Err() - +func (m *msgCache) SetUserBadgeUnreadCountSum(ctx context.Context, userID string, value int) error { + return utils.Wrap1(m.rdb.Set(ctx, userBadgeUnreadCountSum+userID, value, 0).Err()) } -func (r *RedisClient) LockMessageTypeKey(ctx context.Context, clientMsgID string, TypeKey string) error { +func (m *msgCache) GetUserBadgeUnreadCountSum(ctx context.Context, userID string) (int, error) { + return utils.Wrap2(m.rdb.Get(ctx, userBadgeUnreadCountSum+userID).Int()) +} + +func (m *msgCache) LockMessageTypeKey(ctx context.Context, clientMsgID string, TypeKey string) error { key := exTypeKeyLocker + clientMsgID + "_" + TypeKey - return r.rdb.SetNX(context.Background(), key, 1, time.Minute).Err() + return utils.Wrap1(m.rdb.SetNX(ctx, key, 1, time.Minute).Err()) } -func (r *RedisClient) UnLockMessageTypeKey(ctx context.Context, clientMsgID string, TypeKey string) error { + +func (m *msgCache) UnLockMessageTypeKey(ctx context.Context, clientMsgID string, TypeKey string) error { key := exTypeKeyLocker + clientMsgID + "_" + TypeKey - return r.rdb.Del(context.Background(), key).Err() - + return utils.Wrap1(m.rdb.Del(ctx, key).Err()) } -func (r *RedisClient) getMessageReactionExPrefix(clientMsgID string, sessionType int32) string { +func (m *msgCache) getMessageReactionExPrefix(clientMsgID string, sessionType int32) string { switch sessionType { case constant.SingleChatType: return "EX_SINGLE_" + clientMsgID @@ -560,3 +445,31 @@ func (r *RedisClient) getMessageReactionExPrefix(clientMsgID string, sessionType } return "" } + +func (m *msgCache) JudgeMessageReactionEXISTS(ctx context.Context, clientMsgID string, sessionType int32) (bool, error) { + n, err := m.rdb.Exists(ctx, m.getMessageReactionExPrefix(clientMsgID, sessionType)).Result() + if err != nil { + return false, utils.Wrap(err, "") + } + return n > 0, nil +} + +func (m *msgCache) SetMessageTypeKeyValue(ctx context.Context, clientMsgID string, sessionType int32, typeKey, value string) error { + return utils.Wrap1(m.rdb.HSet(ctx, m.getMessageReactionExPrefix(clientMsgID, sessionType), typeKey, value).Err()) +} + +func (m *msgCache) SetMessageReactionExpire(ctx context.Context, clientMsgID string, sessionType int32, expiration time.Duration) (bool, error) { + return utils.Wrap2(m.rdb.Expire(ctx, m.getMessageReactionExPrefix(clientMsgID, sessionType), expiration).Result()) +} + +func (m *msgCache) GetMessageTypeKeyValue(ctx context.Context, clientMsgID string, sessionType int32, typeKey string) (string, error) { + return utils.Wrap2(m.rdb.HGet(ctx, m.getMessageReactionExPrefix(clientMsgID, sessionType), typeKey).Result()) +} + +func (m *msgCache) GetOneMessageAllReactionList(ctx context.Context, clientMsgID string, sessionType int32) (map[string]string, error) { + return utils.Wrap2(m.rdb.HGetAll(ctx, m.getMessageReactionExPrefix(clientMsgID, sessionType)).Result()) +} + +func (m *msgCache) DeleteOneMessageKey(ctx context.Context, clientMsgID string, sessionType int32, subKey string) error { + return utils.Wrap1(m.rdb.HDel(ctx, m.getMessageReactionExPrefix(clientMsgID, sessionType), subKey).Err()) +} diff --git a/pkg/common/db/controller/conversation.go b/pkg/common/db/controller/conversation.go index 9db064a50..b706ecd09 100644 --- a/pkg/common/db/controller/conversation.go +++ b/pkg/common/db/controller/conversation.go @@ -1,11 +1,11 @@ package controller import ( - "OpenIM/internal/tx" "OpenIM/pkg/common/constant" "OpenIM/pkg/common/db/cache" "OpenIM/pkg/common/db/relation" relationTb "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/db/tx" "OpenIM/pkg/utils" "context" "encoding/json" diff --git a/pkg/common/db/controller/friend.go b/pkg/common/db/controller/friend.go index 58a838dc3..c783dd3d8 100644 --- a/pkg/common/db/controller/friend.go +++ b/pkg/common/db/controller/friend.go @@ -1,9 +1,9 @@ package controller import ( - "OpenIM/internal/tx" "OpenIM/pkg/common/constant" "OpenIM/pkg/common/db/table/relation" + "OpenIM/pkg/common/db/tx" "OpenIM/pkg/utils" "context" "errors" diff --git a/pkg/common/db/controller/group.go b/pkg/common/db/controller/group.go index 89f3fd9f6..a513c54ba 100644 --- a/pkg/common/db/controller/group.go +++ b/pkg/common/db/controller/group.go @@ -1,11 +1,11 @@ package controller import ( - "OpenIM/internal/tx" "OpenIM/pkg/common/constant" "OpenIM/pkg/common/db/cache" relationTb "OpenIM/pkg/common/db/table/relation" unRelationTb "OpenIM/pkg/common/db/table/unrelation" + "OpenIM/pkg/common/db/tx" "OpenIM/pkg/utils" "context" "fmt" diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index 63baac03e..33ed7f882 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -50,6 +50,8 @@ type MsgDatabase interface { GetSuperGroupMinMaxSeqInMongoAndCache(ctx context.Context, groupID string) (minSeqMongo, maxSeqMongo, maxSeqCache int64, err error) // 设置群用户最小seq 直接调用cache SetGroupUserMinSeq(ctx context.Context, groupID, userID string, minSeq int64) (err error) + GetGroupUserMinSeq(ctx context.Context, groupID, userID string) (int64, error) + // 设置用户最小seq 直接调用cache SetUserMinSeq(ctx context.Context, userID string, minSeq int64) (err error) @@ -79,7 +81,7 @@ func NewMsgDatabase(mgo *mongo.Client, rdb redis.UniversalClient) MsgDatabase { type msgDatabase struct { mgo unRelationTb.MsgDocModelInterface - cache cache.MsgCache + cache cache.Cache msg unRelationTb.MsgDocModel ExtendMsg unRelationTb.ExtendMsgSetModelInterface rdb redis.Client @@ -685,3 +687,7 @@ func (db *msgDatabase) SetGroupUserMinSeq(ctx context.Context, groupID, userID s func (db *msgDatabase) SetUserMinSeq(ctx context.Context, userID string, minSeq int64) (err error) { return db.cache.SetUserMinSeq(ctx, userID, minSeq) } + +func (db *msgDatabase) GetGroupUserMinSeq(ctx context.Context, groupID, userID string) (int64, error) { + return db.cache.GetGroupUserMinSeq(ctx, groupID, userID) +} diff --git a/pkg/common/db/controller/push.go b/pkg/common/db/controller/push.go index 09b29c9bf..16b931c1f 100644 --- a/pkg/common/db/controller/push.go +++ b/pkg/common/db/controller/push.go @@ -10,7 +10,7 @@ type PushInterface interface { } type PushDataBase struct { - cache cache.MsgCache + cache cache.Cache } func (p *PushDataBase) DelFcmToken(ctx context.Context, userID string, platformID int) error { diff --git a/internal/tx/gorm.go b/pkg/common/db/tx/gorm.go similarity index 100% rename from internal/tx/gorm.go rename to pkg/common/db/tx/gorm.go diff --git a/internal/tx/mongo.go b/pkg/common/db/tx/mongo.go similarity index 100% rename from internal/tx/mongo.go rename to pkg/common/db/tx/mongo.go diff --git a/internal/tx/tx.go b/pkg/common/db/tx/tx.go similarity index 100% rename from internal/tx/tx.go rename to pkg/common/db/tx/tx.go From 66aaa9b1529035c4ff5a45bd6f965b72aef541c7 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Fri, 24 Feb 2023 11:06:49 +0800 Subject: [PATCH 15/19] config path --- .../msgtransfer/persistent_msg_handler.go | 2 +- pkg/common/db/controller/chatlog.go | 35 ++++--------------- pkg/common/db/relation/chat_log_model.go | 2 +- 3 files changed, 8 insertions(+), 31 deletions(-) diff --git a/internal/msgtransfer/persistent_msg_handler.go b/internal/msgtransfer/persistent_msg_handler.go index 65634ba7e..1578f05ba 100644 --- a/internal/msgtransfer/persistent_msg_handler.go +++ b/internal/msgtransfer/persistent_msg_handler.go @@ -21,7 +21,7 @@ import ( type PersistentConsumerHandler struct { persistentConsumerGroup *kfk.MConsumerGroup - chatLogInterface controller.ChatLogInterface + chatLogInterface controller.ChatLogDatabase } func (pc *PersistentConsumerHandler) Init() { diff --git a/pkg/common/db/controller/chatlog.go b/pkg/common/db/controller/chatlog.go index 50ae13771..3771e78b0 100644 --- a/pkg/common/db/controller/chatlog.go +++ b/pkg/common/db/controller/chatlog.go @@ -1,50 +1,27 @@ package controller import ( - "OpenIM/pkg/common/db/relation" relationTb "OpenIM/pkg/common/db/table/relation" pbMsg "OpenIM/pkg/proto/msg" - "gorm.io/gorm" ) -type ChatLogInterface interface { +type ChatLogDatabase interface { CreateChatLog(msg pbMsg.MsgDataToMQ) error GetChatLog(chatLog *relationTb.ChatLogModel, pageNumber, showNumber int32, contentTypeList []int32) (int64, []relationTb.ChatLogModel, error) } -func NewChatLogController(db *gorm.DB) ChatLogInterface { - return &ChatLogController{database: NewChatLogDataBase(db)} -} - -type ChatLogController struct { - database ChatLogDataBaseInterface -} - -func (c *ChatLogController) CreateChatLog(msg pbMsg.MsgDataToMQ) error { - return c.database.CreateChatLog(msg) -} - -func (c *ChatLogController) GetChatLog(chatLog *relationTb.ChatLogModel, pageNumber, showNumber int32, contentTypeList []int32) (int64, []relationTb.ChatLogModel, error) { - return c.database.GetChatLog(chatLog, pageNumber, showNumber, contentTypeList) -} - -type ChatLogDataBaseInterface interface { - CreateChatLog(msg pbMsg.MsgDataToMQ) error - GetChatLog(chatLog *relationTb.ChatLogModel, pageNumber, showNumber int32, contentTypeList []int32) (int64, []relationTb.ChatLogModel, error) +func NewChatLogDatabase(chatLogModelInterface relationTb.ChatLogModelInterface) ChatLogDatabase { + return &ChatLogDataBase{chatLogModel: chatLogModelInterface} } type ChatLogDataBase struct { - chatLogDB relationTb.ChatLogModelInterface -} - -func NewChatLogDataBase(db *gorm.DB) ChatLogDataBaseInterface { - return &ChatLogDataBase{chatLogDB: relation.NewChatLog(db)} + chatLogModel relationTb.ChatLogModelInterface } func (c *ChatLogDataBase) CreateChatLog(msg pbMsg.MsgDataToMQ) error { - return c.chatLogDB.Create(msg) + return c.chatLogModel.Create(msg) } func (c *ChatLogDataBase) GetChatLog(chatLog *relationTb.ChatLogModel, pageNumber, showNumber int32, contentTypeList []int32) (int64, []relationTb.ChatLogModel, error) { - return c.chatLogDB.GetChatLog(chatLog, pageNumber, showNumber, contentTypeList) + return c.chatLogModel.GetChatLog(chatLog, pageNumber, showNumber, contentTypeList) } diff --git a/pkg/common/db/relation/chat_log_model.go b/pkg/common/db/relation/chat_log_model.go index 17c85bbdf..69c0558ec 100644 --- a/pkg/common/db/relation/chat_log_model.go +++ b/pkg/common/db/relation/chat_log_model.go @@ -17,7 +17,7 @@ type ChatLogGorm struct { DB *gorm.DB } -func NewChatLog(db *gorm.DB) *ChatLogGorm { +func NewChatLogGorm(db *gorm.DB) *ChatLogGorm { return &ChatLogGorm{DB: db} } From 92764b37277049c636e7160a7a612a753587ca49 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Fri, 24 Feb 2023 11:13:16 +0800 Subject: [PATCH 16/19] config path --- internal/api/route.go | 2 +- internal/msggateway/init.go | 2 +- internal/msggateway/logic.go | 6 ++-- internal/msggateway/relay_rpc_server.go | 2 +- internal/msggateway/ws_server.go | 4 +-- internal/msgtransfer/init.go | 2 +- internal/push/init.go | 2 +- internal/push/push_to_client.go | 4 +-- internal/rpc/msg/send_pull.go | 16 +++++----- internal/startrpc/start.go | 2 +- pkg/common/db/controller/msg.go | 40 ++++++++++++------------- pkg/common/kafka/producer.go | 2 +- pkg/common/prome/prometheus.go | 18 +++++------ 13 files changed, 51 insertions(+), 51 deletions(-) diff --git a/internal/api/route.go b/internal/api/route.go index 3305a2d0d..32f8cafde 100644 --- a/internal/api/route.go +++ b/internal/api/route.go @@ -32,7 +32,7 @@ func NewGinRouter() *gin.Engine { prome.NewApiRequestCounter() prome.NewApiRequestFailedCounter() prome.NewApiRequestSuccessCounter() - r.Use(prome.PromeTheusMiddleware) + r.Use(prome.PrometheusMiddleware) r.GET("/metrics", prome.PrometheusHandler()) } userRouterGroup := r.Group("/user") diff --git a/internal/msggateway/init.go b/internal/msggateway/init.go index 7798a55eb..9945e3277 100644 --- a/internal/msggateway/init.go +++ b/internal/msggateway/init.go @@ -40,7 +40,7 @@ func Run(prometheusPort int) { go ws.run() go rpcSvr.run() go func() { - err := prome.StartPromeSrv(prometheusPort) + err := prome.StartPrometheusSrv(prometheusPort) if err != nil { panic(err) } diff --git a/internal/msggateway/logic.go b/internal/msggateway/logic.go index 3533951de..1c22b0af4 100644 --- a/internal/msggateway/logic.go +++ b/internal/msggateway/logic.go @@ -50,18 +50,18 @@ func (ws *WServer) msgParse(conn *UserConn, binaryMsg []byte) { case constant.WSGetNewestSeq: log.NewInfo(m.OperationID, "getSeqReq ", m.SendID, m.MsgIncr, m.ReqIdentifier) ws.getSeqReq(conn, &m) - prome.PromeInc(prome.GetNewestSeqTotalCounter) + prome.Inc(prome.GetNewestSeqTotalCounter) case constant.WSSendMsg: log.NewInfo(m.OperationID, "sendMsgReq ", m.SendID, m.MsgIncr, m.ReqIdentifier) ws.sendMsgReq(conn, &m) - prome.PromeInc(prome.MsgRecvTotalCounter) + prome.Inc(prome.MsgRecvTotalCounter) case constant.WSSendSignalMsg: log.NewInfo(m.OperationID, "sendSignalMsgReq ", m.SendID, m.MsgIncr, m.ReqIdentifier) ws.sendSignalMsgReq(conn, &m) case constant.WSPullMsgBySeqList: log.NewInfo(m.OperationID, "pullMsgBySeqListReq ", m.SendID, m.MsgIncr, m.ReqIdentifier) ws.pullMsgBySeqListReq(conn, &m) - prome.PromeInc(prome.PullMsgBySeqListTotalCounter) + prome.Inc(prome.PullMsgBySeqListTotalCounter) case constant.WsLogoutMsg: log.NewInfo(m.OperationID, "conn.Close()", m.SendID, m.MsgIncr, m.ReqIdentifier) ws.userLogoutReq(conn, &m) diff --git a/internal/msggateway/relay_rpc_server.go b/internal/msggateway/relay_rpc_server.go index 2cea2ebcc..290453873 100644 --- a/internal/msggateway/relay_rpc_server.go +++ b/internal/msggateway/relay_rpc_server.go @@ -203,7 +203,7 @@ func (r *RPCServer) SuperGroupOnlineBatchPushOneMsg(_ context.Context, req *pbRe resultCode := sendMsgBatchToUser(userConn, replyBytes.Bytes(), req, platform, v) if resultCode == 0 && utils.IsContainInt(platform, r.pushTerminal) { tempT.OnlinePush = true - prome.PromeInc(prome.MsgOnlinePushSuccessCounter) + prome.Inc(prome.MsgOnlinePushSuccessCounter) log.Info(req.OperationID, "PushSuperMsgToUser is success By Ws", "args", req.String(), "recvPlatForm", constant.PlatformIDToName(platform), "recvID", v) temp.ResultCode = resultCode resp = append(resp, temp) diff --git a/internal/msggateway/ws_server.go b/internal/msggateway/ws_server.go index 6adad24fe..c8b70be2e 100644 --- a/internal/msggateway/ws_server.go +++ b/internal/msggateway/ws_server.go @@ -351,7 +351,7 @@ func (ws *WServer) addUserConn(uid string, platformID int, conn *UserConn, token for _, v := range ws.wsUserToConn { count = count + len(v) } - prome.PromeGaugeInc(prome.OnlineUserGauge) + prome.GaugeInc(prome.OnlineUserGauge) log.Debug(operationID, "WS Add operation", "", "wsUser added", ws.wsUserToConn, "connection_uid", uid, "connection_platform", constant.PlatformIDToName(platformID), "online_user_num", len(ws.wsUserToConn), "online_conn_num", count) } @@ -393,7 +393,7 @@ func (ws *WServer) delUserConn(conn *UserConn) { if callbackResp.ErrCode != 0 { log.NewError(operationID, utils.GetSelfFuncName(), "callbackUserOffline failed", callbackResp) } - prome.PromeGaugeDec(prome.OnlineUserGauge) + prome.GaugeDec(prome.OnlineUserGauge) } diff --git a/internal/msgtransfer/init.go b/internal/msgtransfer/init.go index 46fc1b585..832ecc65e 100644 --- a/internal/msgtransfer/init.go +++ b/internal/msgtransfer/init.go @@ -46,7 +46,7 @@ func (m *MsgTransfer) Run(promePort int) { go m.historyMongoCH.historyConsumerGroup.RegisterHandleAndConsumer(&m.historyMongoCH) go m.modifyCH.modifyMsgConsumerGroup.RegisterHandleAndConsumer(&m.modifyCH) go func() { - err := prome.StartPromeSrv(promePort) + err := prome.StartPrometheusSrv(promePort) if err != nil { panic(err) } diff --git a/internal/push/init.go b/internal/push/init.go index 090b24b5d..fa211c1ed 100644 --- a/internal/push/init.go +++ b/internal/push/init.go @@ -55,7 +55,7 @@ func (p *Push) Run(prometheusPort int) { go p.rpcServer.run() go p.pushCh.pushConsumerGroup.RegisterHandleAndConsumer(&p.pushCh) go func() { - err := prome.StartPromeSrv(prometheusPort) + err := prome.StartPrometheusSrv(prometheusPort) if err != nil { panic(err) } diff --git a/internal/push/push_to_client.go b/internal/push/push_to_client.go index 53b05b572..321f0c839 100644 --- a/internal/push/push_to_client.go +++ b/internal/push/push_to_client.go @@ -187,10 +187,10 @@ func (p *Pusher) OfflinePushMsg(ctx context.Context, sourceID string, msg *sdkws } err = p.offlinePusher.Push(ctx, offlinePushUserIDs, title, content, opts) if err != nil { - prome.PromeInc(prome.MsgOfflinePushFailedCounter) + prome.Inc(prome.MsgOfflinePushFailedCounter) return err } - prome.PromeInc(prome.MsgOfflinePushSuccessCounter) + prome.Inc(prome.MsgOfflinePushSuccessCounter) return nil } diff --git a/internal/rpc/msg/send_pull.go b/internal/rpc/msg/send_pull.go index 6461189bc..caa473be6 100644 --- a/internal/rpc/msg/send_pull.go +++ b/internal/rpc/msg/send_pull.go @@ -14,14 +14,14 @@ import ( func (m *msgServer) sendMsgSuperGroupChat(ctx context.Context, req *msg.SendMsgReq) (resp *msg.SendMsgResp, err error) { resp = &msg.SendMsgResp{} - promePkg.PromeInc(promePkg.WorkSuperGroupChatMsgRecvSuccessCounter) + promePkg.Inc(promePkg.WorkSuperGroupChatMsgRecvSuccessCounter) // callback if err = CallbackBeforeSendGroupMsg(ctx, req); err != nil && err != constant.ErrCallbackContinue { return nil, err } if _, err = m.messageVerification(ctx, req); err != nil { - promePkg.PromeInc(promePkg.WorkSuperGroupChatMsgProcessFailedCounter) + promePkg.Inc(promePkg.WorkSuperGroupChatMsgProcessFailedCounter) return nil, err } msgToMQSingle := msg.MsgDataToMQ{MsgData: req.MsgData} @@ -34,7 +34,7 @@ func (m *msgServer) sendMsgSuperGroupChat(ctx context.Context, req *msg.SendMsgR return nil, err } - promePkg.PromeInc(promePkg.WorkSuperGroupChatMsgProcessSuccessCounter) + promePkg.Inc(promePkg.WorkSuperGroupChatMsgProcessSuccessCounter) resp.SendTime = msgToMQSingle.MsgData.SendTime resp.ServerMsgID = msgToMQSingle.MsgData.ServerMsgID resp.ClientMsgID = msgToMQSingle.MsgData.ClientMsgID @@ -60,7 +60,7 @@ func (m *msgServer) sendMsgNotification(ctx context.Context, req *msg.SendMsgReq } func (m *msgServer) sendMsgSingleChat(ctx context.Context, req *msg.SendMsgReq) (resp *msg.SendMsgResp, err error) { - promePkg.PromeInc(promePkg.SingleChatMsgRecvSuccessCounter) + promePkg.Inc(promePkg.SingleChatMsgRecvSuccessCounter) if err = CallbackBeforeSendSingleMsg(ctx, req); err != nil && err != constant.ErrCallbackContinue { return nil, err } @@ -89,7 +89,7 @@ func (m *msgServer) sendMsgSingleChat(ctx context.Context, req *msg.SendMsgReq) if err != nil && err != constant.ErrCallbackContinue { return nil, err } - promePkg.PromeInc(promePkg.SingleChatMsgProcessSuccessCounter) + promePkg.Inc(promePkg.SingleChatMsgProcessSuccessCounter) resp.SendTime = msgToMQSingle.MsgData.SendTime resp.ServerMsgID = msgToMQSingle.MsgData.ServerMsgID resp.ClientMsgID = msgToMQSingle.MsgData.ClientMsgID @@ -98,7 +98,7 @@ func (m *msgServer) sendMsgSingleChat(ctx context.Context, req *msg.SendMsgReq) func (m *msgServer) sendMsgGroupChat(ctx context.Context, req *msg.SendMsgReq) (resp *msg.SendMsgResp, err error) { // callback - promePkg.PromeInc(promePkg.GroupChatMsgRecvSuccessCounter) + promePkg.Inc(promePkg.GroupChatMsgRecvSuccessCounter) err = CallbackBeforeSendGroupMsg(ctx, req) if err != nil && err != constant.ErrCallbackContinue { return nil, err @@ -106,7 +106,7 @@ func (m *msgServer) sendMsgGroupChat(ctx context.Context, req *msg.SendMsgReq) ( var memberUserIDList []string if memberUserIDList, err = m.messageVerification(ctx, req); err != nil { - promePkg.PromeInc(promePkg.GroupChatMsgProcessFailedCounter) + promePkg.Inc(promePkg.GroupChatMsgProcessFailedCounter) return nil, err } @@ -221,7 +221,7 @@ func (m *msgServer) sendMsgGroupChat(ctx context.Context, req *msg.SendMsgReq) ( } // - promePkg.PromeInc(promePkg.GroupChatMsgProcessSuccessCounter) + promePkg.Inc(promePkg.GroupChatMsgProcessSuccessCounter) resp.SendTime = msgToMQSingle.MsgData.SendTime resp.ServerMsgID = msgToMQSingle.MsgData.ServerMsgID resp.ClientMsgID = msgToMQSingle.MsgData.ClientMsgID diff --git a/internal/startrpc/start.go b/internal/startrpc/start.go index c6beb4880..eca62cad2 100644 --- a/internal/startrpc/start.go +++ b/internal/startrpc/start.go @@ -57,7 +57,7 @@ func start(rpcPorts []int, rpcRegisterName string, prometheusPorts []int, rpcFn return err } if config.Config.Prometheus.Enable { - err := prome.StartPromeSrv(*flagPrometheusPort) + err := prome.StartPrometheusSrv(*flagPrometheusPort) if err != nil { return err } diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index 33ed7f882..df49e75de 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -242,18 +242,18 @@ func (db *msgDatabase) BatchInsertChat2DB(ctx context.Context, sourceID string, doc.DocID = docID doc.Msg = msgsToMongo if err = db.mgo.Create(ctx, doc); err != nil { - prome.PromeInc(prome.MsgInsertMongoFailedCounter) + prome.Inc(prome.MsgInsertMongoFailedCounter) //log.NewError(operationID, "InsertOne failed", filter, err.Error(), sChat) return utils.Wrap(err, "") } - prome.PromeInc(prome.MsgInsertMongoSuccessCounter) + prome.Inc(prome.MsgInsertMongoSuccessCounter) } else { - prome.PromeInc(prome.MsgInsertMongoFailedCounter) + prome.Inc(prome.MsgInsertMongoFailedCounter) //log.Error(operationID, "FindOneAndUpdate failed ", err.Error(), filter) return utils.Wrap(err, "") } } else { - prome.PromeInc(prome.MsgInsertMongoSuccessCounter) + prome.Inc(prome.MsgInsertMongoSuccessCounter) } } if docIDNext != "" { @@ -262,11 +262,11 @@ func (db *msgDatabase) BatchInsertChat2DB(ctx context.Context, sourceID string, nextDoc.Msg = msgsToMongoNext //log.NewDebug(operationID, "filter ", seqUidNext, "list ", msgListToMongoNext, "userID: ", userID) if err = db.mgo.Create(ctx, nextDoc); err != nil { - prome.PromeInc(prome.MsgInsertMongoFailedCounter) + prome.Inc(prome.MsgInsertMongoFailedCounter) //log.NewError(operationID, "InsertOne failed", filter, err.Error(), sChat) return utils.Wrap(err, "") } - prome.PromeInc(prome.MsgInsertMongoSuccessCounter) + prome.Inc(prome.MsgInsertMongoSuccessCounter) } //log.Debug(operationID, "batch mgo cost time ", mongo2.getCurrentTimestampByMill()-newTime, userID, len(msgList)) return nil @@ -296,10 +296,10 @@ func (db *msgDatabase) BatchInsertChat2Cache(ctx context.Context, sourceID strin //log.Debug(operationID, "constant.SingleChatType lastMaxSeq before add ", currentMaxSeq, "userID ", sourceID, err) } if err != nil && err != redis.Nil { - prome.PromeInc(prome.SeqGetFailedCounter) + prome.Inc(prome.SeqGetFailedCounter) return 0, utils.Wrap(err, "") } - prome.PromeInc(prome.SeqGetSuccessCounter) + prome.Inc(prome.SeqGetSuccessCounter) lastMaxSeq := currentMaxSeq for _, m := range msgList { currentMaxSeq++ @@ -309,10 +309,10 @@ func (db *msgDatabase) BatchInsertChat2Cache(ctx context.Context, sourceID strin //log.Debug(operationID, "SetMessageToCache ", sourceID, len(msgList)) failedNum, err := db.cache.SetMessageToCache(ctx, sourceID, msgList) if err != nil { - prome.PromeAdd(prome.MsgInsertRedisFailedCounter, failedNum) + prome.Add(prome.MsgInsertRedisFailedCounter, failedNum) //log.Error(operationID, "setMessageToCache failed, continue ", err.Error(), len(msgList), sourceID) } else { - prome.PromeInc(prome.MsgInsertRedisSuccessCounter) + prome.Inc(prome.MsgInsertRedisSuccessCounter) } //log.Debug(operationID, "batch to redis cost time ", mongo2.getCurrentTimestampByMill()-newTime, sourceID, len(msgList)) if msgList[0].MsgData.SessionType == constant.SuperGroupChatType { @@ -321,9 +321,9 @@ func (db *msgDatabase) BatchInsertChat2Cache(ctx context.Context, sourceID strin err = db.cache.SetUserMaxSeq(ctx, sourceID, currentMaxSeq) } if err != nil { - prome.PromeInc(prome.SeqSetFailedCounter) + prome.Inc(prome.SeqSetFailedCounter) } else { - prome.PromeInc(prome.SeqSetSuccessCounter) + prome.Inc(prome.SeqSetSuccessCounter) } return lastMaxSeq, utils.Wrap(err, "") } @@ -463,18 +463,18 @@ func (db *msgDatabase) GetMsgBySeqs(ctx context.Context, userID string, seqs []i successMsgs, failedSeqs, err := db.cache.GetMessagesBySeq(ctx, userID, seqs) if err != nil { if err != redis.Nil { - prome.PromeAdd(prome.MsgPullFromRedisFailedCounter, len(failedSeqs)) + prome.Add(prome.MsgPullFromRedisFailedCounter, len(failedSeqs)) log.Error(tracelog.GetOperationID(ctx), "get message from redis exception", err.Error(), failedSeqs) } } - prome.PromeAdd(prome.MsgPullFromRedisSuccessCounter, len(successMsgs)) + prome.Add(prome.MsgPullFromRedisSuccessCounter, len(successMsgs)) if len(failedSeqs) > 0 { mongoMsgs, err := db.getMsgBySeqs(ctx, userID, seqs, constant.WriteDiffusion) if err != nil { - prome.PromeAdd(prome.MsgPullFromMongoFailedCounter, len(failedSeqs)) + prome.Add(prome.MsgPullFromMongoFailedCounter, len(failedSeqs)) return nil, err } - prome.PromeAdd(prome.MsgPullFromMongoSuccessCounter, len(mongoMsgs)) + prome.Add(prome.MsgPullFromMongoSuccessCounter, len(mongoMsgs)) successMsgs = append(successMsgs, mongoMsgs...) } return successMsgs, nil @@ -484,18 +484,18 @@ func (db *msgDatabase) GetSuperGroupMsgBySeqs(ctx context.Context, groupID strin successMsgs, failedSeqs, err := db.cache.GetMessagesBySeq(ctx, groupID, seqs) if err != nil { if err != redis.Nil { - prome.PromeAdd(prome.MsgPullFromRedisFailedCounter, len(failedSeqs)) + prome.Add(prome.MsgPullFromRedisFailedCounter, len(failedSeqs)) log.Error(tracelog.GetOperationID(ctx), "get message from redis exception", err.Error(), failedSeqs) } } - prome.PromeAdd(prome.MsgPullFromRedisSuccessCounter, len(successMsgs)) + prome.Add(prome.MsgPullFromRedisSuccessCounter, len(successMsgs)) if len(failedSeqs) > 0 { mongoMsgs, err := db.getMsgBySeqs(ctx, groupID, seqs, constant.ReadDiffusion) if err != nil { - prome.PromeAdd(prome.MsgPullFromMongoFailedCounter, len(failedSeqs)) + prome.Add(prome.MsgPullFromMongoFailedCounter, len(failedSeqs)) return nil, err } - prome.PromeAdd(prome.MsgPullFromMongoSuccessCounter, len(mongoMsgs)) + prome.Add(prome.MsgPullFromMongoSuccessCounter, len(mongoMsgs)) successMsgs = append(successMsgs, mongoMsgs...) } return successMsgs, nil diff --git a/pkg/common/kafka/producer.go b/pkg/common/kafka/producer.go index 69a5e9c53..b7ecba3e4 100644 --- a/pkg/common/kafka/producer.go +++ b/pkg/common/kafka/producer.go @@ -66,7 +66,7 @@ func (p *Producer) SendMessage(m proto.Message, key string, operationID string) partition, offset, err := p.producer.SendMessage(kMsg) log.Info(operationID, "ByteEncoder SendMessage end", "key ", kMsg.Key.Length(), kMsg.Value.Length(), p.producer) if err == nil { - prome.PromeInc(prome.SendMsgCounter) + prome.Inc(prome.SendMsgCounter) } return partition, offset, utils.Wrap(err, "") } diff --git a/pkg/common/prome/prometheus.go b/pkg/common/prome/prometheus.go index 065fcf461..89cbea072 100644 --- a/pkg/common/prome/prometheus.go +++ b/pkg/common/prome/prometheus.go @@ -11,7 +11,7 @@ import ( "github.com/prometheus/client_golang/prometheus/promhttp" ) -func StartPromeSrv(prometheusPort int) error { +func StartPrometheusSrv(prometheusPort int) error { if config.Config.Prometheus.Enable { http.Handle("/metrics", promhttp.Handler()) err := http.ListenAndServe(":"+strconv.Itoa(prometheusPort), nil) @@ -37,19 +37,19 @@ func (r responseBodyWriter) Write(b []byte) (int, error) { return r.ResponseWriter.Write(b) } -func PromeTheusMiddleware(c *gin.Context) { - PromeInc(ApiRequestCounter) +func PrometheusMiddleware(c *gin.Context) { + Inc(ApiRequestCounter) w := &responseBodyWriter{body: &bytes.Buffer{}, ResponseWriter: c.Writer} c.Writer = w c.Next() if c.Writer.Status() == http.StatusOK { - PromeInc(ApiRequestSuccessCounter) + Inc(ApiRequestSuccessCounter) } else { - PromeInc(ApiRequestFailedCounter) + Inc(ApiRequestFailedCounter) } } -func PromeInc(counter prometheus.Counter) { +func Inc(counter prometheus.Counter) { if config.Config.Prometheus.Enable { if counter != nil { counter.Inc() @@ -57,7 +57,7 @@ func PromeInc(counter prometheus.Counter) { } } -func PromeAdd(counter prometheus.Counter, add int) { +func Add(counter prometheus.Counter, add int) { if config.Config.Prometheus.Enable { if counter != nil { counter.Add(float64(add)) @@ -65,7 +65,7 @@ func PromeAdd(counter prometheus.Counter, add int) { } } -func PromeGaugeInc(gauges prometheus.Gauge) { +func GaugeInc(gauges prometheus.Gauge) { if config.Config.Prometheus.Enable { if gauges != nil { gauges.Inc() @@ -73,7 +73,7 @@ func PromeGaugeInc(gauges prometheus.Gauge) { } } -func PromeGaugeDec(gauges prometheus.Gauge) { +func GaugeDec(gauges prometheus.Gauge) { if config.Config.Prometheus.Enable { if gauges != nil { gauges.Dec() From 2a0ad5c7afd78aa86c0d6488564d391aed974d12 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Fri, 24 Feb 2023 11:15:40 +0800 Subject: [PATCH 17/19] config path --- pkg/common/db/controller/msg.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index df49e75de..81526ced3 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -629,7 +629,7 @@ func (db *msgDatabase) deleteMsgRecursion(ctx context.Context, sourceID string, return seq, utils.Wrap(err, "deleteMsg failed") } -func (db *MsgDatabase) GetUserMinMaxSeqInMongoAndCache(ctx context.Context, userID string) (minSeqMongo, maxSeqMongo, minSeqCache, maxSeqCache int64, err error) { +func (db *msgDatabase) GetUserMinMaxSeqInMongoAndCache(ctx context.Context, userID string) (minSeqMongo, maxSeqMongo, minSeqCache, maxSeqCache int64, err error) { minSeqMongo, maxSeqMongo, err = db.GetMinMaxSeqMongo(ctx, userID) if err != nil { return 0, 0, 0, 0, err From ffaf0bd02107e53b93ccbf330e78b6a7682901ec Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Fri, 24 Feb 2023 11:37:40 +0800 Subject: [PATCH 18/19] config path --- pkg/common/db/controller/msg.go | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index 81526ced3..f633f4558 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -418,7 +418,7 @@ func (db *msgDatabase) unmarshalMsg(msgInfo *unRelationTb.MsgInfoModel) (msgPb * return msgPb, nil } -func (db *msgDatabase) getMsgBySeqs(ctx context.Context, sourceID string, seqs []int64, diffusionType int) (seqMsg []*sdkws.MsgData, err error) { +func (db *msgDatabase) getMsgBySeqs(ctx context.Context, sourceID string, seqs []int64, diffusionType int) (seqMsgs []*sdkws.MsgData, err error) { var hasSeqs []int64 singleCount := 0 m := db.msg.GetDocIDSeqsMap(sourceID, seqs) @@ -436,7 +436,7 @@ func (db *msgDatabase) getMsgBySeqs(ctx context.Context, sourceID string, seqs [ return nil, err } if utils.Contain(msgPb.Seq, value...) { - seqMsg = append(seqMsg, msgPb) + seqMsgs = append(seqMsgs, msgPb) hasSeqs = append(hasSeqs, msgPb.Seq) singleCount++ if singleCount == len(value) { @@ -454,12 +454,12 @@ func (db *msgDatabase) getMsgBySeqs(ctx context.Context, sourceID string, seqs [ } else if diffusionType == constant.ReadDiffusion { exceptionMsg = db.msg.GenExceptionSuperGroupMessageBySeqs(diff, sourceID) } - seqMsg = append(seqMsg, exceptionMsg...) + seqMsgs = append(seqMsgs, exceptionMsg...) } - return seqMsg, nil + return seqMsgs, nil } -func (db *msgDatabase) GetMsgBySeqs(ctx context.Context, userID string, seqs []int64) (seqMsg []*sdkws.MsgData, err error) { +func (db *msgDatabase) GetMsgBySeqs(ctx context.Context, userID string, seqs []int64) (successMsgs []*sdkws.MsgData, err error) { successMsgs, failedSeqs, err := db.cache.GetMessagesBySeq(ctx, userID, seqs) if err != nil { if err != redis.Nil { @@ -480,7 +480,7 @@ func (db *msgDatabase) GetMsgBySeqs(ctx context.Context, userID string, seqs []i return successMsgs, nil } -func (db *msgDatabase) GetSuperGroupMsgBySeqs(ctx context.Context, groupID string, seqs []int64) (seqMsg []*sdkws.MsgData, err error) { +func (db *msgDatabase) GetSuperGroupMsgBySeqs(ctx context.Context, groupID string, seqs []int64) (successMsgs []*sdkws.MsgData, err error) { successMsgs, failedSeqs, err := db.cache.GetMessagesBySeq(ctx, groupID, seqs) if err != nil { if err != redis.Nil { From cfe6aff3ace464441b536a2ea9ea673ecf4c8937 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Fri, 24 Feb 2023 11:51:07 +0800 Subject: [PATCH 19/19] config path --- cmd/api/main.go | 4 +++- cmd/rpc/user/main.go | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/cmd/api/main.go b/cmd/api/main.go index c1b0bb6de..1edc383ec 100644 --- a/cmd/api/main.go +++ b/cmd/api/main.go @@ -17,12 +17,14 @@ func main() { log.NewPrivateLog(constant.LogFileName) router := api.NewGinRouter() go third.MinioInit() - ginPort := flag.Int("port", config.Config.Api.GinPort[0], "get ginServerPort from cmd,default 10002 as port") configPath := flag.String("config_path", "../config/", "config folder") flag.Parse() if err := config.InitConfig(*configPath); err != nil { panic(err.Error()) } + + ginPort := flag.Int("port", config.Config.Api.GinPort[0], "get ginServerPort from cmd,default 10002 as port") + flag.Parse() address := "0.0.0.0:" + strconv.Itoa(*ginPort) if config.Config.Api.ListenIP != "" { address = config.Config.Api.ListenIP + ":" + strconv.Itoa(*ginPort) diff --git a/cmd/rpc/user/main.go b/cmd/rpc/user/main.go index b7436746a..25ff3e45a 100644 --- a/cmd/rpc/user/main.go +++ b/cmd/rpc/user/main.go @@ -8,6 +8,6 @@ import ( func main() { - startrpc.Start(config.Config.RpcPort.OpenImUserPort[0], config.Config.RpcRegisterName.OpenImUserName, config.Config.Prometheus.UserPrometheusPort[0], user.Start) + startrpc.Start(config.Config.RpcPort.OpenImUserPort, config.Config.RpcRegisterName.OpenImUserName, config.Config.Prometheus.UserPrometheusPort[0], user.Start) }