mirror of
				https://github.com/openimsdk/open-im-server.git
				synced 2025-11-04 19:32:17 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			463 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			463 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
# The class cannot be named by Pascal or camel case.
 | 
						||
# If it is not used, the corresponding structure will not be set,
 | 
						||
# and it will not be read naturally.
 | 
						||
serverversion: 3.0.0
 | 
						||
#---------------Infrastructure configuration---------------------#
 | 
						||
etcd:
 | 
						||
  etcdSchema: openIM #默认即可
 | 
						||
  etcdAddr: [127.0.0.1:2379] #单机部署时,默认即可
 | 
						||
 | 
						||
mysql:
 | 
						||
  dbMysqlAddress: [127.0.0.1:13306] #mysql地址 目前仅支持单机,默认即可
 | 
						||
  dbMysqlUserName: root #mysql用户名,建议修改
 | 
						||
  dbMysqlPassword: openIM # mysql密码,建议修改
 | 
						||
  dbMysqlDatabaseName: openIM #默认即可
 | 
						||
  dbTableName: eMsg #默认即可
 | 
						||
  dbMsgTableNum: 1
 | 
						||
  dbMaxOpenConns: 20
 | 
						||
  dbMaxIdleConns: 10
 | 
						||
  dbMaxLifeTime: 120
 | 
						||
 | 
						||
mongo:
 | 
						||
  dbAddress: [127.0.0.1:37017] #redis地址 目前仅支持单机,默认即可
 | 
						||
  dbDirect: false
 | 
						||
  dbTimeout: 10
 | 
						||
  dbDatabase: openIM #mongo db 默认即可
 | 
						||
  dbSource: admin
 | 
						||
  dbUserName: #mongo用户名,建议修改
 | 
						||
  dbPassword: #mongo密码,建议修改
 | 
						||
  dbMaxPoolSize: 20
 | 
						||
  dbRetainChatRecords: 3650 #mongo保存离线消息时间(天)
 | 
						||
 | 
						||
redis:
 | 
						||
  dbAddress: 127.0.0.1:16379 #redis地址 目前仅支持单机,默认即可
 | 
						||
  dbMaxIdle: 128
 | 
						||
  dbMaxActive: 0
 | 
						||
  dbIdleTimeout: 120
 | 
						||
  dbPassWord: openIM #redis密码 建议修改
 | 
						||
 | 
						||
kafka:
 | 
						||
  ws2mschat:
 | 
						||
    addr: [127.0.0.1:9092] #kafka配置,默认即可
 | 
						||
    topic: "ws2ms_chat"
 | 
						||
  ms2pschat:
 | 
						||
    addr: [127.0.0.1:9092] #kafka配置,默认即可
 | 
						||
    topic: "ms2ps_chat"
 | 
						||
  consumergroupid:
 | 
						||
    msgToMongo: mongo
 | 
						||
    msgToMySql: mysql
 | 
						||
    msgToPush: push
 | 
						||
 | 
						||
#---------------Internal service configuration---------------------#
 | 
						||
 | 
						||
# 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 来访问
 | 
						||
endpoints:
 | 
						||
  api: openim_api
 | 
						||
  cmsapi: openim_cms_api
 | 
						||
  push: openim_push
 | 
						||
  msg_gateway: openim_msg_gateway
 | 
						||
  rpc_auth: openim_rpc_auth
 | 
						||
  rpc_friend: openim_rpc_friend
 | 
						||
  rpc_group: openim_rpc_group
 | 
						||
  rpc_msg: openim_rpc_msg
 | 
						||
  rpc_user: openim_rpc_user
 | 
						||
  rpc_statistic: openim_rpc_statistic
 | 
						||
  rpc_admin_cms: openim_rpc_admin_cms
 | 
						||
  rpc_message_cms: openim_rpc_admin_cms
 | 
						||
 | 
						||
api:
 | 
						||
  openImApiPort: [10000] #api服务端口,默认即可,注意开放此端口或做nginx转发
 | 
						||
cmsapi:
 | 
						||
  openImCmsApiPort: [8000] #管理后台api服务端口,默认即可,注意开放此端口或做nginx转发
 | 
						||
sdk:
 | 
						||
  openImSdkWsPort: [30000] #jssdk服务端口,默认即可,项目中使用jssdk才需开放此端口或做nginx转发
 | 
						||
 | 
						||
credential: #腾讯cos,发送图片、视频、文件时需要,请自行申请后替换,必须修改
 | 
						||
  tencent:
 | 
						||
    appID: 1302656840
 | 
						||
    region: ap-chengdu
 | 
						||
    bucket: echat-1302656840
 | 
						||
    secretID: AKIDGNYVChzIQinu7QEgtNp0hnNgqcV8vZTC
 | 
						||
    secretKey: kz15vW83qM6dBUWIq681eBZA0c0vlIbe
 | 
						||
  minio:
 | 
						||
    bucket: openim
 | 
						||
    location: us-east-1
 | 
						||
    endpoint: http://127.0.0.1:9000
 | 
						||
    accessKeyID: minioadmin
 | 
						||
    secretAccessKey: minioadmin
 | 
						||
 | 
						||
rpcport: #rpc服务端口 默认即可
 | 
						||
  openImUserPort: [10100]
 | 
						||
  openImFriendPort: [10200]
 | 
						||
  openImOfflineMessagePort: [10300]
 | 
						||
  openImOnlineRelayPort: [10400]
 | 
						||
  openImGroupPort: [10500]
 | 
						||
  openImAuthPort: [10600]
 | 
						||
  openImPushPort: [10700]
 | 
						||
  openImStatisticsPort: [10800]
 | 
						||
  openImMessageCmsPort: [10900]
 | 
						||
  openImAdminCmsPort: [11000]
 | 
						||
  c2c:
 | 
						||
    callbackBeforeSendMsg:
 | 
						||
      switch: false
 | 
						||
      timeoutStrategy: 1 #1:send
 | 
						||
    callbackAfterSendMsg:
 | 
						||
      switch: false
 | 
						||
  state:
 | 
						||
    stateChange:
 | 
						||
      switch: false
 | 
						||
 | 
						||
rpcregistername: #rpc注册服务名,默认即可
 | 
						||
  openImUserName: User
 | 
						||
  openImFriendName: Friend
 | 
						||
  openImOfflineMessageName: OfflineMessage
 | 
						||
  openImPushName: Push
 | 
						||
  openImOnlineMessageRelayName: OnlineMessageRelay
 | 
						||
  openImGroupName: Group
 | 
						||
  openImAuthName: Auth
 | 
						||
  OpenImStatisticsName: Statistics
 | 
						||
  OpenImMessageCMSName: MessageCMS
 | 
						||
  openImAdminCMSName: AdminCMS
 | 
						||
 | 
						||
log:
 | 
						||
  storageLocation: ../logs/
 | 
						||
  rotationTime: 24
 | 
						||
  remainRotationCount: 5 #日志数量
 | 
						||
  remainLogLevel: 6 #日志级别 6表示全都打印,测试阶段建议设置为6
 | 
						||
  elasticSearchSwitch: false
 | 
						||
  elasticSearchAddr: [127.0.0.1:9201]
 | 
						||
  elasticSearchUser: ""
 | 
						||
  elasticSearchPassword: ""
 | 
						||
 | 
						||
modulename: #日志文件按模块命名,默认即可
 | 
						||
  longConnSvrName: msg_gateway
 | 
						||
  msgTransferName: msg_transfer
 | 
						||
  pushName: push
 | 
						||
 | 
						||
longconnsvr:
 | 
						||
  openImWsPort: [17778] # ws服务端口,默认即可,要开放此端口或做nginx转发
 | 
						||
  websocketMaxConnNum: 10000
 | 
						||
  websocketMaxMsgLen: 4096
 | 
						||
  websocketTimeOut: 10
 | 
						||
 | 
						||
push:
 | 
						||
  tpns: #腾讯推送,暂未测试 暂不要使用
 | 
						||
    ios:
 | 
						||
      accessID: 1600018281
 | 
						||
      secretKey: 3cd68a77a95b89e5089a1aca523f318f
 | 
						||
    android:
 | 
						||
      accessID: 111
 | 
						||
      secretKey: 111
 | 
						||
  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" #token生成相关,默认即可
 | 
						||
  # Token effective time day as a unit
 | 
						||
  accessExpire: 3650 #token过期时间(天)
 | 
						||
 | 
						||
messagecallback: #暂时不要使用 还需完善
 | 
						||
  callbackUrl: "http://www.xxx.com/msg/judge"
 | 
						||
  #TimeOut use second as unit
 | 
						||
  callbackTimeOut: 10
 | 
						||
messagejudge:
 | 
						||
  isJudgeFriend: true
 | 
						||
#  c2c:
 | 
						||
#    callbackBeforeSendMsg:
 | 
						||
#      switch: false
 | 
						||
#      timeoutStrategy: 1 #1:send
 | 
						||
#    callbackAfterSendMsg:
 | 
						||
#      switch: false
 | 
						||
#  state:
 | 
						||
#    stateChange:
 | 
						||
#      switch: false
 | 
						||
#ios系统推送声音以及标记计数
 | 
						||
iospush:
 | 
						||
  pushSound: "xxx"
 | 
						||
  badgeCount: true
 | 
						||
 | 
						||
notification:
 | 
						||
  groupCreated:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 3
 | 
						||
      unreadCount: true
 | 
						||
    offlinePush:
 | 
						||
      switch: true
 | 
						||
      title: "create group title" # xx create the group
 | 
						||
      desc: "create group desc"
 | 
						||
      ext: "create group ext"
 | 
						||
    defaultTips:
 | 
						||
      tips: "create the group" # xx create the group
 | 
						||
 | 
						||
  groupInfoSet:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 3
 | 
						||
      unreadCount: true
 | 
						||
    offlinePush:
 | 
						||
      switch: false
 | 
						||
      title: "groupInfoSet title"
 | 
						||
      desc: "groupInfoSet desc"
 | 
						||
      ext: "groupInfoSet ext"
 | 
						||
    defaultTips:
 | 
						||
      tips: "modified the group profile" # group info changed by xx
 | 
						||
 | 
						||
  joinGroupApplication:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 2
 | 
						||
      unreadCount: false
 | 
						||
    offlinePush:
 | 
						||
      switch: false
 | 
						||
      title: "joinGroupApplication title"
 | 
						||
      desc: "joinGroupApplication desc"
 | 
						||
      ext: "joinGroupApplication ext"
 | 
						||
    defaultTips:
 | 
						||
      tips: "apply to join the group" # group info changed by xx
 | 
						||
 | 
						||
  memberQuit:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 3
 | 
						||
      unreadCount: true
 | 
						||
    offlinePush:
 | 
						||
      switch: false
 | 
						||
      title: "memberQuit title"
 | 
						||
      desc: "memberQuit desc"
 | 
						||
      ext: "memberQuit ext"
 | 
						||
    defaultTips:
 | 
						||
      tips: "quit group chat" # group info changed by xx
 | 
						||
 | 
						||
  groupApplicationAccepted:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 2
 | 
						||
      unreadCount: true
 | 
						||
    offlinePush:
 | 
						||
      switch: false
 | 
						||
      title: "groupApplicationAccepted title"
 | 
						||
      desc: "groupApplicationAccepted desc"
 | 
						||
      ext: "groupApplicationAccepted ext"
 | 
						||
    defaultTips:
 | 
						||
      tips: "allowed to join the group" # group info changed by xx
 | 
						||
 | 
						||
  groupApplicationRejected:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 2
 | 
						||
      unreadCount: false
 | 
						||
    offlinePush:
 | 
						||
      switch: false
 | 
						||
      title: " title"
 | 
						||
      desc: " desc"
 | 
						||
      ext: " ext"
 | 
						||
    defaultTips:
 | 
						||
      tips: "rejected into the group" # group info changed by xx
 | 
						||
 | 
						||
  groupOwnerTransferred:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 3
 | 
						||
      unreadCount: true
 | 
						||
    offlinePush:
 | 
						||
      switch: false
 | 
						||
      title: "groupOwnerTransferred title"
 | 
						||
      desc: "groupOwnerTransferred desc"
 | 
						||
      ext: "groupOwnerTransferred ext"
 | 
						||
    defaultTips:
 | 
						||
      tips: "become a new group owner" # group info changed by xx
 | 
						||
 | 
						||
  memberKicked:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 3
 | 
						||
      unreadCount: true
 | 
						||
    offlinePush:
 | 
						||
      switch: false
 | 
						||
      title: "memberKicked title"
 | 
						||
      desc: "memberKicked desc"
 | 
						||
      ext: "memberKicked ext"
 | 
						||
    defaultTips:
 | 
						||
      tips: "kicked out of the group" # group info changed by xx
 | 
						||
 | 
						||
  memberInvited:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 3
 | 
						||
      unreadCount: true
 | 
						||
    offlinePush:
 | 
						||
      switch: false
 | 
						||
      title: "memberInvited title"
 | 
						||
      desc: "memberInvited desc"
 | 
						||
      ext: "memberInvited ext"
 | 
						||
    defaultTips:
 | 
						||
      tips: "invited into the group" # group info changed by xx
 | 
						||
 | 
						||
  memberEnter:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 3
 | 
						||
      unreadCount: true
 | 
						||
    offlinePush:
 | 
						||
      switch: false
 | 
						||
      title: "memberEnter title"
 | 
						||
      desc: "memberEnter desc"
 | 
						||
      ext: "memberEnter ext"
 | 
						||
    defaultTips:
 | 
						||
      tips: "entered the group" # group info changed by xx
 | 
						||
 | 
						||
  #############################friend#################################
 | 
						||
 | 
						||
  friendApplicationAdded:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 2
 | 
						||
      unreadCount: false
 | 
						||
    offlinePush:
 | 
						||
      switch: true
 | 
						||
      title: "Somebody applies to add you as a friend"
 | 
						||
      desc: "Somebody applies to add you as a friend"
 | 
						||
      ext: "Somebody applies to add you as a friend"
 | 
						||
    defaultTips:
 | 
						||
      tips: "I applies to add you as a friend" #
 | 
						||
 | 
						||
  friendApplicationApproved:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 2
 | 
						||
      unreadCount: false
 | 
						||
    offlinePush:
 | 
						||
      switch: true
 | 
						||
      title: "Someone applies to add your friend application"
 | 
						||
      desc: "Someone applies to add your friend application"
 | 
						||
      ext: "Someone applies to add your friend application"
 | 
						||
    defaultTips:
 | 
						||
      tips: "I applies to add your friend application" #
 | 
						||
 | 
						||
  friendApplicationRejected:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 2
 | 
						||
      unreadCount: false
 | 
						||
    offlinePush:
 | 
						||
      switch: true
 | 
						||
      title: "Someone rejected your friend application"
 | 
						||
      desc: "Someone rejected your friend application"
 | 
						||
      ext: "Someone rejected your friend application"
 | 
						||
    defaultTips:
 | 
						||
      tips: "I rejected your friend application" #
 | 
						||
 | 
						||
  friendAdded:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 3
 | 
						||
      unreadCount: true
 | 
						||
    offlinePush:
 | 
						||
      switch: true
 | 
						||
      title: "We have become friends"
 | 
						||
      desc: "We have become friends"
 | 
						||
      ext: "We have become friends"
 | 
						||
    defaultTips:
 | 
						||
      tips: "We have become friends" #
 | 
						||
 | 
						||
  friendDeleted:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 2
 | 
						||
      unreadCount: false
 | 
						||
    offlinePush:
 | 
						||
      switch: true
 | 
						||
      title: "deleted a friend"
 | 
						||
      desc: "deleted a friend"
 | 
						||
      ext: "deleted a friend"
 | 
						||
    defaultTips:
 | 
						||
      tips: "deleted a friend" #
 | 
						||
 | 
						||
  friendRemarkSet:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 2
 | 
						||
      unreadCount: false
 | 
						||
    offlinePush:
 | 
						||
      switch: true
 | 
						||
      title: "Your friend's profile has been changed"
 | 
						||
      desc: "Your friend's profile has been changed"
 | 
						||
      ext: "Your friend's profile has been changed"
 | 
						||
    defaultTips:
 | 
						||
      tips: "Your friend's profile has been changed" #
 | 
						||
 | 
						||
  blackAdded:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 2
 | 
						||
      unreadCount: false
 | 
						||
    offlinePush:
 | 
						||
      switch: true
 | 
						||
      title: "blocked a user"
 | 
						||
      desc: "blocked a user"
 | 
						||
      ext: "blocked a user"
 | 
						||
    defaultTips:
 | 
						||
      tips: "blocked a user" #
 | 
						||
 | 
						||
  blackDeleted:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 2
 | 
						||
      unreadCount: false
 | 
						||
    offlinePush:
 | 
						||
      switch: true
 | 
						||
      title: "Remove a blocked user"
 | 
						||
      desc: "Remove a blocked user"
 | 
						||
      ext: "Remove a blocked user"
 | 
						||
    defaultTips:
 | 
						||
      tips: "Remove a blocked user"
 | 
						||
 | 
						||
  #####################user#########################
 | 
						||
  userInfoUpdated:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 2
 | 
						||
      unreadCount: false
 | 
						||
    offlinePush:
 | 
						||
      switch: true
 | 
						||
      title: "Remove a blocked user"
 | 
						||
      desc: "Remove a blocked user"
 | 
						||
      ext: "Remove a blocked user"
 | 
						||
    defaultTips:
 | 
						||
      tips: "remove a blocked user"
 | 
						||
 | 
						||
  #####################conversation#########################
 | 
						||
  conversationOptUpdate:
 | 
						||
    conversation:
 | 
						||
      reliabilityLevel: 2
 | 
						||
      unreadCount: false
 | 
						||
      offlinePush:
 | 
						||
        switch: true
 | 
						||
        title: "conversation opt update"
 | 
						||
        desc: "conversation opt update"
 | 
						||
        ext: "conversation opt update"
 | 
						||
      defaultTips:
 | 
						||
        tips: "conversation opt update"
 | 
						||
 | 
						||
#---------------demo configuration---------------------#
 | 
						||
#The following configuration items are applied to openIM Demo configuration
 | 
						||
demoswitch: true #是否启动demo,如果自身没有账号体系,设置为true
 | 
						||
demo:
 | 
						||
  openImDemoPort: [42233] #demo对外服务端口,默认即可,需要开放此端口或做nginx转发
 | 
						||
  alismsverify: #阿里云短信配置,在阿里云申请成功后修改以下四项,必须修改
 | 
						||
    accessKeyId: LTAI5tJPkn4HuuePdiLdGqe71
 | 
						||
    accessKeySecret: 4n9OJ7ZCVN1U6KeHDAtOyNeVZcjOuV1
 | 
						||
    signName: OpenIM Corporation
 | 
						||
    verificationCodeTemplateCode: SMS_2268101641
 | 
						||
  superCode: 666666 #超级验证码,建议修改掉,收不到短信验证码时可以用此替代
 | 
						||
  #  second
 | 
						||
  codeTTL: 60
 | 
						||
  mail: #仅支持qq邮箱,具体操作参考 https://service.mail.qq.com/cgi-bin/help?subtype=1&id=28&no=1001256 必须修改
 | 
						||
    title: "openIM"
 | 
						||
    senderMail: "1765567899@qq.com"
 | 
						||
    senderAuthorizationCode: "1gxyausfoevlzbfag"
 | 
						||
    smtpAddr: "smtp.qq.com"
 | 
						||
    smtpPort: 25 #需开放此端口 出口方向
 | 
						||
 |