diff --git a/cmd/Open-IM-SDK-Core b/cmd/Open-IM-SDK-Core index 23f31958d..992f76df0 160000 --- a/cmd/Open-IM-SDK-Core +++ b/cmd/Open-IM-SDK-Core @@ -1 +1 @@ -Subproject commit 23f31958dae08260c5f9631f4937389a8e2d6751 +Subproject commit 992f76df0ee500a0377523b0780d3a85f2275755 diff --git a/config/config.yaml b/config/config.yaml index b7bf188a6..a5d755182 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -4,44 +4,44 @@ serverversion: 2.0.0 #---------------Infrastructure configuration---------------------# etcd: - etcdSchema: openIM - etcdAddr: [ 127.0.0.1:2379 ] + etcdSchema: openIM #默认即可 + etcdAddr: [ 127.0.0.1:2379 ] #单机部署时,默认即可 mysql: - dbMysqlAddress: [ 127.0.0.1:13306 ] - dbMysqlUserName: root - dbMysqlPassword: openIM - dbMysqlDatabaseName: openIM_v2 - dbTableName: eMsg + dbMysqlAddress: [ 127.0.0.1:13306 ] #mysql地址 目前仅支持单机,默认即可 + dbMysqlUserName: root #mysql用户名,建议修改 + dbMysqlPassword: openIM # mysql密码,建议修改 + dbMysqlDatabaseName: openIM_v2 #默认即可 + dbTableName: eMsg #默认即可 dbMsgTableNum: 1 dbMaxOpenConns: 20 dbMaxIdleConns: 10 dbMaxLifeTime: 120 mongo: - dbAddress: [ 127.0.0.1:37017 ] + dbAddress: [ 127.0.0.1:37017 ] #redis地址 目前仅支持单机,默认即可 dbDirect: false dbTimeout: 10 - dbDatabase: openIM + dbDatabase: openIM #mongo db 默认即可 dbSource: admin - dbUserName: - dbPassword: + dbUserName: #mongo用户名,建议先不设置 + dbPassword: #mongo密码,建议先不设置 dbMaxPoolSize: 20 - dbRetainChatRecords: 7 + dbRetainChatRecords: 3650 #mongo保存离线消息时间(天),根据需求修改 redis: - dbAddress: 127.0.0.1:16379 + dbAddress: 127.0.0.1:16379 #redis地址 目前仅支持单机,默认即可 dbMaxIdle: 128 dbMaxActive: 0 dbIdleTimeout: 120 - dbPassWord: openIM + dbPassWord: openIM #redis密码 建议修改 kafka: ws2mschat: - addr: [ 127.0.0.1:9092 ] + addr: [ 127.0.0.1:9092 ] #kafka配置,默认即可 topic: "ws2ms_chat" ms2pschat: - addr: [ 127.0.0.1:9092 ] + addr: [ 127.0.0.1:9092 ] #kafka配置,默认即可 topic: "ms2ps_chat" consumergroupid: msgToMongo: mongo @@ -55,6 +55,7 @@ kafka: # The service ip default is empty, # automatically obtain the machine's valid network card ip as the service ip, # otherwise the configuration ip is preferred +#如果是单机模式,用0.0.0.0或者不填,默认即可 serverip: 0.0.0.0 # endpoints 内部组件间访问的端点host名称,访问时,可以内部直接访问 host:port 来访问 @@ -73,27 +74,28 @@ endpoints: rpc_message_cms: openim_rpc_admin_cms api: - openImApiPort: [ 10000 ] + openImApiPort: [ 10000 ] #api服务端口,默认即可,需要开放此端口或做nginx转发 cmsapi: - openImCmsApiPort: [ 8000 ] + openImCmsApiPort: [ 8000 ] #管理后台api服务端口,默认即可,需要开放此端口或做nginx转发 sdk: - openImSdkWsPort: [ 30000 ] + openImSdkWsPort: [ 30000 ] #jssdk服务端口,默认即可,项目中使用jssdk才需开放此端口或做nginx转发 -credential: +credential: #腾讯cos,发送图片、视频、文件时需要,请自行申请后替换,必须修改 tencent: appID: 1302656840 region: ap-chengdu bucket: echat-1302656840 secretID: AKIDGNYVChzIQinu7QEgtNp0hnNgqcV8vZTC secretKey: kz15vW83qM6dBUWIq681eBZA0c0vlIbe - minio: + minio: #MinIO 发送图片、视频、文件时需要,请自行申请后替换,必须修改。 客户端初始化时相应改动 bucket: openim location: us-east-1 endpoint: http://127.0.0.1:9000 accessKeyID: minioadmin secretAccessKey: minioadmin -rpcport: + +rpcport: #rpc服务端口 默认即可 openImUserPort: [ 10100 ] openImFriendPort: [ 10200 ] openImOfflineMessagePort: [ 10300 ] @@ -114,7 +116,7 @@ rpcport: stateChange: switch: false -rpcregistername: +rpcregistername: #rpc注册服务名,默认即可 openImUserName: User openImFriendName: Friend openImOfflineMessageName: OfflineMessage @@ -129,50 +131,52 @@ rpcregistername: log: storageLocation: ../logs/ rotationTime: 24 - remainRotationCount: 5 - remainLogLevel: 6 + remainRotationCount: 5 #日志数量 + remainLogLevel: 6 #日志级别 6表示全都打印,测试阶段建议设置为6 elasticSearchSwitch: false elasticSearchAddr: [ 127.0.0.1:9201 ] elasticSearchUser: "" elasticSearchPassword: "" -modulename: +modulename: #日志文件按模块命名,默认即可 longConnSvrName: msg_gateway msgTransferName: msg_transfer pushName: push longconnsvr: - openImWsPort: [ 17778 ] + openImWsPort: [ 17778 ] # ws服务端口,默认即可,要开放此端口或做nginx转发 websocketMaxConnNum: 10000 websocketMaxMsgLen: 4096 websocketTimeOut: 10 push: - tpns: + tpns: #腾讯推送,暂未测试 暂不要使用 ios: accessID: 1600018281 secretKey: 3cd68a77a95b89e5089a1aca523f318f android: accessID: 111 secretKey: 111 - jpns: + jpns: #极光推送 在极光后台申请后,修改以下四项,必须修改 appKey: cf47465a368f24c659608e7e masterSecret: 02204efe3f3832947a236ee5 pushUrl: "https://api.jpush.cn/v3/push" pushIntent: "intent:#Intent;component=io.openim.app.enterprisechat/io.openim.app.enterprisechat.MainActivity;end" manager: + #app管理员userID和对应的secret 建议修改。 用于管理后台登录,也可以用户管理后台对应的api appManagerUid: [ "openIM123456","openIM654321", "openIM333", "openIMAdmin"] secrets: [ "openIM1","openIM2", "openIM333", "openIMAdmin"] secret: tuoyun - +# 多端互踢策略 +# 1:多平台登录:Android、iOS、Windows、Mac 每种平台只能一个在线,web端可以多个同时在线 multiloginpolicy: 1 #token config tokenpolicy: - accessSecret: "open_im_server" + accessSecret: "open_im_server" #token生成相关,默认即可 # Token effective time day as a unit - accessExpire: 7 + accessExpire: 3650 #token过期时间(天) 默认即可 messagecallback: callbackSwitch: false @@ -190,7 +194,7 @@ messagejudge: # state: # stateChange: # switch: false - +#ios系统推送声音以及标记计数 iospush: pushSound: "xxx" badgeCount: true @@ -379,11 +383,11 @@ notification: unreadCount: false offlinePush: switch: true - title: "Deleted a friend" - desc: "Deleted a friend" - ext: "Deleted a friend" + title: "deleted a friend" + desc: "deleted a friend" + ext: "deleted a friend" defaultTips: - tips: "Deleted a friend" # + tips: "deleted a friend" # friendRemarkSet: @@ -406,11 +410,11 @@ notification: unreadCount: false offlinePush: switch: true - title: "Blocked a user" - desc: "Blocked a user" - ext: "Blocked a user" + title: "blocked a user" + desc: "blocked a user" + ext: "blocked a user" defaultTips: - tips: "Blocked a user" # + tips: "blocked a user" # blackDeleted: @@ -436,7 +440,7 @@ notification: desc: "Remove a blocked user" ext: "Remove a blocked user" defaultTips: - tips: "Remove a blocked user" + tips: "remove a blocked user" #####################conversation######################### conversationOptUpdate: @@ -455,23 +459,24 @@ notification: #---------------demo configuration---------------------# #The following configuration items are applied to openIM Demo configuration +#是否启动demo,如果自身没有账号体系,设置为true demoswitch: true demo: - openImDemoPort: [ 42233 ] - alismsverify: - accessKeyId: LTAI5tJPkn4HuuePdiLdGqe7 - accessKeySecret: 4n9OJ7ZCVN1U6KeHDAtOyNeVZcjOuV - signName: 托云信息技术 - verificationCodeTemplateCode: SMS_226810164 - superCode: 666666 + openImDemoPort: [ 42233 ] #demo对外服务端口,默认即可,需要开放此端口或做nginx转发 + alismsverify: #阿里云短信配置,在阿里云申请成功后修改以下四项,必须修改 + accessKeyId: LTAI5tJPkn4HuuePdiLdGqe71 + accessKeySecret: 4n9OJ7ZCVN1U6KeHDAtOyNeVZcjOuV1 + signName: OpenIM Corporation + verificationCodeTemplateCode: SMS_2268101641 + superCode: 666666 #超级验证码,建议修改掉,收不到短信验证码时可以用此替代 # second codeTTL: 300 - mail: + mail: #仅支持qq邮箱,具体操作参考 https://service.mail.qq.com/cgi-bin/help?subtype=1&id=28&no=1001256 必须修改 title: "openIM" - senderMail: "765567899@qq.com" - senderAuthorizationCode: "gxyausfoevlzbfag" + senderMail: "1765567899@qq.com" + senderAuthorizationCode: "1gxyausfoevlzbfag" smtpAddr: "smtp.qq.com" - smtpPort: 25 + smtpPort: 25 #需开放此端口 出口方向 diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index 2cd5ed4d8..40255d071 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -746,6 +746,7 @@ func (s *groupServer) GetGroups(_ context.Context, req *pbGroup.GetGroupsReq) (* OwnerUserID: v.CreatorUserID, Status: v.Status, CreatorUserID: v.CreatorUserID, + CreateTime: uint32(v.CreateTime.Unix()), }, GroupMasterId: groupMember.UserID, GroupMasterName: groupMember.Nickname, diff --git a/pkg/call_back_struct/common.go b/pkg/call_back_struct/common.go new file mode 100644 index 000000000..90b77eda8 --- /dev/null +++ b/pkg/call_back_struct/common.go @@ -0,0 +1 @@ +package call_back_struct diff --git a/pkg/call_back_struct/message.go b/pkg/call_back_struct/message.go new file mode 100644 index 000000000..90b77eda8 --- /dev/null +++ b/pkg/call_back_struct/message.go @@ -0,0 +1 @@ +package call_back_struct