mirror of
				https://github.com/openimsdk/open-im-server.git
				synced 2025-10-31 00:12:18 +08:00 
			
		
		
		
	* fix: StringValue When there are double quotes in the string value, serialization and deserialization fail Signed-off-by: withchao <993506633@qq.com> * test: StatusTemporaryRedirect -> StatusFound Signed-off-by: withchao <993506633@qq.com> * chore: pb a2r Signed-off-by: withchao <993506633@qq.com> * chore: replacement package Signed-off-by: withchao <993506633@qq.com> * chore: replacement package Signed-off-by: withchao <993506633@qq.com> * chore: replacement package Signed-off-by: withchao <993506633@qq.com> * fix: remove go mod replace Signed-off-by: withchao <993506633@qq.com> * fix: tools version Signed-off-by: withchao <993506633@qq.com> * fix: config.yaml Signed-off-by: withchao <993506633@qq.com> --------- Signed-off-by: withchao <993506633@qq.com>
		
			
				
	
	
		
			261 lines
		
	
	
		
			8.8 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			261 lines
		
	
	
		
			8.8 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| # Copyright © 2023 OpenIM. All rights reserved.
 | ||
| #
 | ||
| # Licensed under the Apache License, Version 2.0 (the "License");
 | ||
| # you may not use this file except in compliance with the License.
 | ||
| # You may obtain a copy of the License at
 | ||
| #
 | ||
| #     http://www.apache.org/licenses/LICENSE-2.0
 | ||
| #
 | ||
| # Unless required by applicable law or agreed to in writing, software
 | ||
| # distributed under the License is distributed on an "AS IS" BASIS,
 | ||
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | ||
| # See the License for the specific language governing permissions and
 | ||
| # limitations under the License.
 | ||
| 
 | ||
| #OpenIM config
 | ||
| 
 | ||
| 
 | ||
| #---------------Infrastructure configuration---------------------#
 | ||
| zookeeper:
 | ||
|   schema: openim                          #不建议修改
 | ||
|   address: [ 127.0.0.1:2181 ]             #
 | ||
|   username:                               #用户名
 | ||
|   password:                               #密码
 | ||
| 
 | ||
| mysql:
 | ||
|   address: [ 127.0.0.1:13306 ]            #目前仅支持单机
 | ||
|   username: root
 | ||
|   password: openIM123
 | ||
|   database: openIM_v3                     #不建议修改
 | ||
|   maxOpenConn: 1000                       #最大连接数
 | ||
|   maxIdleConn: 100                        #最大空闲连接数
 | ||
|   maxLifeTime: 60                         #连接可以重复使用的最长时间(秒)
 | ||
|   logLevel: 4                             #日志级别 1=slient 2=error 3=warn 4=info
 | ||
|   slowThreshold: 500                      #慢语句阈值 (毫秒)
 | ||
| 
 | ||
| mongo:
 | ||
|   uri:                                    #不为空则直接使用该值
 | ||
|   address: [ 127.0.0.1:37017 ]            #单机时为mongo地址,使用分片集群时,为mongos地址
 | ||
|   database: openIM_v3                      #mongo db 默认即可
 | ||
|   username: root
 | ||
|   password: openIM123
 | ||
|   maxPoolSize: 100
 | ||
| 
 | ||
| redis:
 | ||
|   address: [ 127.0.0.1:16379 ]            #
 | ||
|   username:                               #only redis version 6.0+ need username
 | ||
|   password: openIM123
 | ||
| 
 | ||
| kafka:
 | ||
|   username:                               #用户名
 | ||
|   password:                               #密码
 | ||
|   addr: [ 127.0.0.1:9092 ]                #
 | ||
|   latestMsgToRedis:
 | ||
|     topic: "latestMsgToRedis"             #不建议修改
 | ||
|   offlineMsgToMongo:
 | ||
|     topic: "offlineMsgToMongoMysql"       #不建议修改
 | ||
|   msgToPush:
 | ||
|     topic: "msgToPush"                    #不建议修改
 | ||
|   consumerGroupID: #消费者组,不建议修改
 | ||
|     msgToRedis: redis                     #
 | ||
|     msgToMongo: mongo                     #
 | ||
|     msgToMySql: mysql                     #
 | ||
|     msgToPush: push                       #
 | ||
| 
 | ||
| 
 | ||
| rpc:
 | ||
|   registerIP:                             #作为rpc启动时,注册到zookeeper的IP,api/gateway能访问到此ip和对应的rpcPort中的端口
 | ||
|   listenIP:                               #默认为0.0.0.0
 | ||
| 
 | ||
| 
 | ||
| api:
 | ||
|   openImApiPort: [ 10002 ]                #api服务端口
 | ||
|   listenIP:                               #默认为0.0.0.0
 | ||
| 
 | ||
| object:
 | ||
|   enable: "minio"                           #使用minio
 | ||
|   apiURL: "http://127.0.0.1:10002/object/"  #地址需要app能访问到
 | ||
|   minio:
 | ||
|     bucket: "openim"                      #不建议修改
 | ||
|     endpoint: http://127.0.0.1:10005      #地址需要app能够访问
 | ||
|     accessKeyID: root
 | ||
|     secretAccessKey: openIM123
 | ||
|     sessionToken: ""            #token
 | ||
|   cos: #tencent cos
 | ||
|     bucketURL: "https://temp-1252357374.cos.ap-chengdu.myqcloud.com"
 | ||
|     secretID: ""
 | ||
|     secretKey: ""
 | ||
|     sessionToken: ""
 | ||
|   oss: #ali oss
 | ||
|     endpoint: "https://oss-cn-chengdu.aliyuncs.com"
 | ||
|     bucket: "demo-9999999"
 | ||
|     bucketURL: "https://demo-9999999.oss-cn-chengdu.aliyuncs.com"
 | ||
|     accessKeyID: ""
 | ||
|     accessKeySecret: ""
 | ||
|     sessionToken: ""
 | ||
| 
 | ||
| rpcPort: #rpc服务端口,不建议修改,端口由脚本读取后传入程序,如启动多个程序,只需要填入多个端口,用逗号隔开,如  [10110, 10111]
 | ||
|   openImUserPort: [ 10110 ]
 | ||
|   openImFriendPort: [ 10120 ]
 | ||
|   openImMessagePort: [ 10130 ]
 | ||
|   openImMessageGatewayPort: [ 10140 ]
 | ||
|   openImGroupPort: [ 10150 ]
 | ||
|   openImAuthPort: [ 10160 ]
 | ||
|   openImPushPort: [ 10170 ]
 | ||
|   openImConversationPort: [ 10180 ]
 | ||
|   openImThirdPort: [ 10190 ]
 | ||
| 
 | ||
| rpcRegisterName: #rpc注册服务名,不建议修改
 | ||
|   openImUserName: User
 | ||
|   openImFriendName: Friend
 | ||
|   openImMsgName: Msg
 | ||
|   openImPushName: Push
 | ||
|   openImMessageGatewayName: MessageGateway
 | ||
|   openImGroupName: Group
 | ||
|   openImAuthName: Auth
 | ||
|   openImConversationName: Conversation
 | ||
|   openImThirdName: Third
 | ||
| 
 | ||
| log:
 | ||
|   storageLocation: ../../../../../logs/   #存放目录
 | ||
|   rotationTime: 24                        #日志旋转时间
 | ||
|   remainRotationCount: 2                  #日志数量
 | ||
|   remainLogLevel: 6                       #日志级别 6表示全都打印,
 | ||
|   isStdout: false
 | ||
|   isJson: false
 | ||
|   withStack: false
 | ||
| 
 | ||
| longConnSvr:
 | ||
|   openImWsPort: [ 10001 ]             #msg_gateway的websocket端口
 | ||
|   websocketMaxConnNum: 100000         #websocket最大连接数
 | ||
|   websocketMaxMsgLen: 4096            #websocket请求包最大长度
 | ||
|   websocketTimeout: 10                #websocket连接握手超时时间
 | ||
| 
 | ||
| push:
 | ||
|   enable: getui
 | ||
|   geTui: #个推离线推送
 | ||
|     pushUrl: "https://restapi.getui.com/v2/$appId"
 | ||
|     masterSecret: ""
 | ||
|     appKey: ""
 | ||
|     intent: ""
 | ||
|     channelID: ""
 | ||
|     channelName: ""
 | ||
|   fcm: #fcm离线推送
 | ||
|     serviceAccount: "x.json"          #帐号文件,并放在 config目录下
 | ||
|   jpns: #极光推送 在极光后台申请后,修改以下四项
 | ||
|     appKey:
 | ||
|     masterSecret:
 | ||
|     pushUrl:
 | ||
|     pushIntent:
 | ||
| 
 | ||
| manager:
 | ||
|   userID: [ "openIM123456","openIM654321","openIMAdmin" ]   #内置的app管理员userID
 | ||
|   nickname: [ "system1","system2", "system3" ]              #内置的app管理员nickname
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| multiLoginPolicy: 1                                     #多平台登录:Android、iOS、Windows、Mac、web 每种平台只能有一个在线
 | ||
| 
 | ||
| 
 | ||
| chatPersistenceMysql: true                              #消息是否存入mysql,mysql中的消息仅用于管理后台使用
 | ||
| msgCacheTimeout: 86400                                  #信消息缓存时间秒,不建议修改
 | ||
| groupMessageHasReadReceiptEnable: true                  #群聊已读是否开启
 | ||
| singleMessageHasReadReceiptEnable: true                 #单聊已读是否开启
 | ||
| 
 | ||
| retainChatRecords: 365                                  #mongo保存离线消息时间(天)
 | ||
| chatRecordsClearTime: "0 2 * * 3"                       #每周三凌晨2点清理mongo中的过期(超过retainChatRecords时间)消息,这个删除是为了清理满足上个配置retainChatRecords的过期消息,不会发送通知,仅仅作为清理磁盘使用
 | ||
| msgDestructTime: "0 2 * * *"                            #消息自动删除时间,每天凌晨2点删除过期消息,这个删除是为了删除保留时间超过超过会话字段msg_destruct_time(秒)的消息。
 | ||
| 
 | ||
| secret: openIM123
 | ||
| 
 | ||
| tokenPolicy:
 | ||
|   expire: 90                                     #过期时间(天)
 | ||
| 
 | ||
| messageVerify:
 | ||
|   friendVerify: false                                  #发送消息时是否验证好友关系
 | ||
| 
 | ||
| #ios系统推送声音以及标记计数
 | ||
| iosPush:
 | ||
|   pushSound: "xxx"
 | ||
|   badgeCount: true
 | ||
|   production: false
 | ||
| 
 | ||
| callback:
 | ||
|   # 回调callback
 | ||
|   url:
 | ||
|   beforeSendSingleMsg:
 | ||
|     enable: false                                     #是否启用此回调事件
 | ||
|     timeout: 5                                        #超时时间(秒)
 | ||
|     failedContinue: true                              #如回调失败是否继续往后执行
 | ||
|   afterSendSingleMsg:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|   beforeSendGroupMsg:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|     failedContinue: true
 | ||
|   afterSendGroupMsg:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|   msgModify:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|     failedContinue: true
 | ||
|   userOnline:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|   userOffline:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|   userKickOff:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|   offlinePush:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|     failedContinue: true
 | ||
|   onlinePush:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|     failedContinue: true
 | ||
|   superGroupOnlinePush:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|     failedContinue: true
 | ||
|   beforeAddFriend:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|     failedContinue: true
 | ||
|   beforeCreateGroup:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|     failedContinue: true
 | ||
|   beforeMemberJoinGroup:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|     failedContinue: true
 | ||
|   beforeSetGroupMemberInfo:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|     failedContinue: true
 | ||
|   setMessageReactionExtensions:
 | ||
|     enable: false
 | ||
|     timeout: 5
 | ||
|     failedContinue: true
 | ||
| 
 | ||
| 
 | ||
| prometheus: #prometheus每个服务的端口数量需要和rpcPort保持对应
 | ||
|   enable: false
 | ||
|   userPrometheusPort: [ 20110 ]
 | ||
|   friendPrometheusPort: [ 20120 ]
 | ||
|   messagePrometheusPort: [ 20130 ]
 | ||
|   messageGatewayPrometheusPort: [ 20140 ]
 | ||
|   groupPrometheusPort: [ 20150 ]
 | ||
|   authPrometheusPort: [ 20160 ]
 | ||
|   pushPrometheusPort: [ 20170 ]
 | ||
|   conversationPrometheusPort: [ 20230 ]
 | ||
|   rtcPrometheusPort: [ 21300 ]
 | ||
|   thirdPrometheusPort: [ 21301 ]
 | ||
|   messageTransferPrometheusPort: [ 21400, 21401, 21402, 21403 ] #端口数量需要和script/path_info.sh中的msg_transfer_service_num保持一致
 |