259 lines
14 KiB
Plaintext
Executable File
259 lines
14 KiB
Plaintext
Executable File
#
|
||
#
|
||
# 本配置文件为debug使用,修改这里不会在Release包中生效。Release中包含的配置文件在 ${Porject_Path}/distribution/src/main/resources目录下
|
||
#
|
||
#
|
||
|
||
|
||
|
||
#*********************************************************************
|
||
# Server configuration
|
||
#*********************************************************************
|
||
#服务器的接入IP。给客户端提供是${server.ip}和${http_port}。
|
||
#客户端会从${http_port}端口获取到长链接端口。这个地址一定要改成客户端可以访问到的IP地址
|
||
# (如果您部署云服务器上或者具有独立公网出口的服务器上,请改为对应的公网IP;如果您部署在在内网环境下,在内网使用,这个地方改成内网地址)
|
||
server.ip 0.0.0.0
|
||
|
||
##原生客户端长链接端口
|
||
port 1883
|
||
|
||
##客户端短链接端口
|
||
http_port 80
|
||
|
||
#管理端口
|
||
http.admin.port 18080
|
||
|
||
##节点ID,当集群部署时,一定不能有重复。
|
||
node_id 1
|
||
|
||
##绑定IP,保持不变即可
|
||
host 0.0.0.0
|
||
|
||
##本地绑定端口
|
||
local_port 80
|
||
|
||
##是否使用内置DB。0使用mysql;1使用h2db;2使用mysql+mongodb。社区版只支持0和1,专业版支持2
|
||
embed.db 1
|
||
|
||
## 是否自动清理历史消息记录,当为true时,IM服务会定时扫描t_messages_x和t_user_messages_x表,清除掉3年前的历史消息。
|
||
## 如果不开启自动清理,需要手动清理t_messages_x和t_user_messages_x表内的历史数据,保存数据不能超过3年。
|
||
## 使用mongodb时次开关无效(因为mongodb设置了消息过期时间,会自动清理)。
|
||
db.auto_clean_history_messages true
|
||
|
||
##服务器管理接口密钥
|
||
http.admin.secret_key 123456
|
||
|
||
##服务器API接口参数是否检查时间。当设置为false时,所有的请求会检查时间的有效性;当设置为true时,可以在http.admin.secret_key保持不变的情况下,使用固定的服务API签名
|
||
##nonce = "76616", timestamp = "1558350862502", sign = "b98f9b0717f59febccf1440067a7f50d9b31bdde"
|
||
##这个地方上线前要改为false
|
||
http.admin.no_check_time true
|
||
|
||
##用来生产im token的私钥,只在服务器使用,客户端不用。正式使用时为了安全一定要修改这个值,切记切记
|
||
token.key testim
|
||
|
||
##token的过期时间,单位为毫秒,默认为无限期。如果需要设置无限期,客户端上一定需要加上token过期的处理。token过期的处理请参考文档的常见问题
|
||
##token.expire_time 2592000000
|
||
|
||
##首次登录,是否接收之前的历史消息。
|
||
##0 不接收历史消息,只接收5分钟以内的消息,由于服务器没有保存已经收取记录,所以如果有超过5分钟之前未收取的消息也不会收取下拉;
|
||
##1接收,会接收 message.max_queue 配置的条数的历史消息
|
||
message.roaming 0
|
||
|
||
##是否开启拉取远程历史消息。如果为1,客户端在会话内如果本地消息读取完了,可以下拉继续加载在服务器上的该会话的消息;如果为0则不能。
|
||
message.remote_history_message 0
|
||
|
||
##服务器为每个用户缓存的消息数量。这个值改得太大,拉取消息时间变长,另外会占用大量内存。
|
||
message.max_queue 1024
|
||
|
||
##是否禁止陌生人聊天
|
||
message.disable_stranger_chat false
|
||
|
||
##黑名单策略,0 发送失败,返回被拉黑的错误码;1 发送成功但消息被服务器直接丢弃
|
||
message.blacklist.strategy 0
|
||
|
||
##是否禁止服务器端消息搜索,该功能暂未实现。目前的影响是如果打开,则存储消息时不单独保存_searchable_content字段
|
||
message.disable_remote_search false
|
||
|
||
##允许客户端撤回消息时限,单位是秒。群组管理员或群主撤回群成员消息、server api不受此限制,可以撤回任意时限内的消息
|
||
message.recall_time_limit 120
|
||
|
||
## 禁止客户端发送消息类型,消息类型以逗号分开,下面3个值为示例,可以删除。
|
||
## 一般用于重要类型消息,比如交易、充值等,禁止客户端发送,仅限于服务器发送,提高安全性。
|
||
message.forbidden_client_send_types 3999,4000,4001
|
||
|
||
##禁止搜索用户
|
||
friend.disable_search false
|
||
|
||
##禁止按照昵称搜索用户。
|
||
friend.disable_nick_name_search false
|
||
|
||
##禁止发送好友邀请,通过server api添加好友不受此限制
|
||
friend.disable_friend_request false
|
||
|
||
##好友请求重复发送的间隔,单位是毫秒,默认是7天,0为不限制
|
||
friend.repeat_request_duration 604800000
|
||
|
||
##好友请求被拒绝后再次发送的间隔,单位是毫秒,默认是30天,0为不限制
|
||
friend.reject_request_duration 2592000000
|
||
|
||
##好友请求过期时间,单位是毫秒,默认是7天,0为不限制
|
||
friend.request_expiration_duration 604800000
|
||
|
||
##添加好友后会发送欢迎消息,比如"你们已经是好友了,可以聊天了"。这个开关控制是用旧的方式还是用新的方式。
|
||
##旧的方式会发送notification消息(contenttype是80),内容会根据好友接收者的语言选择对应的语言,如果双方语言不一致会导致另外一方看到的不是本地语言。
|
||
##新的方式会发送添加好友消息(contenttype是93)和欢迎消息(contenttype是92),需要客户端实现这两种消息。
|
||
##如果客户端已经实现这两种消息可以打开这个开关
|
||
friend.new_welcome_message false
|
||
|
||
## 聊天室观众空闲退出时间,单位为毫秒,默认为15分钟,0为永远不退出
|
||
chatroom.participant_idle_time 900000
|
||
|
||
## 用户向聊天室发送消息,自动加入聊天室
|
||
chatroom.rejoin_when_active true
|
||
|
||
## 是否允许客户端发送操作群的自定义群通知消息
|
||
group.allow_client_custom_operation_notification true
|
||
|
||
## 当群成员退出或者被移除时,是否同时给管理员和相关人员发送显式通知消息。
|
||
## 0 不发送,1 退群时发送,2 踢人时发送,3 退群和踢人时都发送。
|
||
group.visible_quit_or_kickoff_notification 0
|
||
|
||
## 隐藏用户信息属性类型,2是性别,3是电话号码,4是邮箱,5是地址,6是公司信息,7是社交账号,8是Extra信息。当需要隐藏多个时以英文逗号分开;
|
||
## 本配置是为了提高安全性,避免把对应信息同步到客户端,这样就能防止程序被破解从而拿到用户关键信息。仅对客户端有效,server api不受影响。
|
||
## 注意,修改本配置不会对已经同步的信息产生影响。
|
||
#user.hide_properties 3,4,5
|
||
|
||
#*********************************************************************
|
||
# hazelcase configuration
|
||
#*********************************************************************
|
||
hazelcast.configuration config/hazelcast.xml
|
||
|
||
#*********************************************************************
|
||
# Media server configuration
|
||
#*********************************************************************
|
||
##是否使用七牛云存储。1使用七牛;0使用内存文件服务器。默认的七牛账户信息不可用,请在七牛官网申请账户并配置
|
||
## https://docs.wildfirechat.cn/server/media_server.html
|
||
media.server.use_qiniu 0
|
||
|
||
##媒体类型分类
|
||
#Media_Type_GENERAL = 0,
|
||
#Media_Type_IMAGE = 1,
|
||
#Media_Type_VOICE = 2,
|
||
#Media_Type_VIDEO = 3,
|
||
#Media_Type_FILE = 4,
|
||
#Media_Type_PORTRAIT = 5,
|
||
#Media_Type_FAVORITE = 6
|
||
|
||
# qiniu media server configuration
|
||
qiniu.server_url http://up.qbox.me
|
||
qiniu.access_key tU3vdBK5BL5j4N7jI5N5uZgq_HQDo170w5C9Amnn
|
||
qiniu.secret_key YfQIJdgp5YGhwEw14vGpaD2HJZsuJldWtqens7i5
|
||
qiniu.bucket_general_name media
|
||
qiniu.bucket_general_domain http://pghnpyzos.bkt.clouddn.com
|
||
qiniu.bucket_image_name media
|
||
qiniu.bucket_image_domain http://pghnpyzos.bkt.clouddn.com
|
||
qiniu.bucket_voice_name media
|
||
qiniu.bucket_voice_domain http://pghnpyzos.bkt.clouddn.com
|
||
qiniu.bucket_video_name media
|
||
qiniu.bucket_video_domain http://pghnpyzos.bkt.clouddn.com
|
||
qiniu.bucket_file_name media
|
||
qiniu.bucket_file_domain http://pghnpyzos.bkt.clouddn.com
|
||
qiniu.bucket_sticker_name media
|
||
qiniu.bucket_sticker_domain http://pghnpyzos.bkt.clouddn.com
|
||
qiniu.bucket_moments_name media
|
||
qiniu.bucket_moments_domain http://pghnpyzos.bkt.clouddn.com
|
||
qiniu.bucket_portrait_name storage
|
||
qiniu.bucket_portrait_domain http://cdn2.wildfirechat.cn
|
||
qiniu.bucket_favorite_name storage
|
||
qiniu.bucket_favorite_domain http://cdn2.wildfirechat.cn
|
||
|
||
|
||
# local media server configuration
|
||
# 本地媒体服务器配置。
|
||
local.media.storage.root media
|
||
|
||
# 是否支持多端登陆,为true时支持任意平台任意多个客户端同时登录;为false时每个平台只支持一个端登录,但不同平台可以同时登录。
|
||
server.multi_endpoint false
|
||
|
||
# 多平台连接状态通知(仅当multi_endpoint为false时有效),true时移动端可以收到pc或web端登录的通知。
|
||
server.multi_platform_notification false
|
||
|
||
#*********************************************************************
|
||
# Push server configuration
|
||
#*********************************************************************
|
||
##推送服务项目地址:https://github.com/wildfirechat/push_server。
|
||
##安卓推送服务器地址
|
||
##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!!
|
||
push.android.server.address http://localhost:8085/android/push
|
||
|
||
##苹果推送服务器地址
|
||
##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!!
|
||
push.ios.server.address http://localhost:8085/ios/push
|
||
|
||
#*********************************************************************
|
||
# 监控配置
|
||
#*********************************************************************
|
||
#monitor.exception_event_address http://localhost:8888/im_exception_event/
|
||
|
||
#*********************************************************************
|
||
# 各种事件回调
|
||
#*********************************************************************
|
||
##用户在线状态事件回调地址
|
||
##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!!
|
||
#user.online_status_callback http://localhost:8888/im_event/user/online
|
||
|
||
##用户信息变动事件回调地址
|
||
##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!!
|
||
#relation.relation_update_callback http://localhost:8888/im_event/user/relation
|
||
|
||
##用户信息变动事件回调地址
|
||
##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!!
|
||
#user.user_info_update_callback http://localhost:8888/im_event/user/info
|
||
|
||
##消息转发地址
|
||
##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!!
|
||
#message.forward.url http://localhost:8888/im_event/message
|
||
##需要转发的消息类型,当有多个时以英文逗号分割。如果转发所有消息,请注释掉配置或者设置为空
|
||
#message.forward.types 1,2,3
|
||
|
||
##设备信息转发地址
|
||
##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!!
|
||
#things_message.forward.url http://localhost:8888/im_event/things/message
|
||
|
||
##群组信息变动事件回调地址
|
||
##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!!
|
||
#group.group_info_update_callback http://localhost:8888/im_event/group/info
|
||
|
||
##群组信息变动事件回调地址
|
||
##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!!
|
||
#group.group_member_update_callback http://localhost:8888/im_event/group/member
|
||
|
||
##频道信息变动回调地址
|
||
##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!!
|
||
#channel.channel_info_update_callback http://localhost:8888/im_event/channel/info
|
||
|
||
##聊天室信息变动回调地址
|
||
##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!!
|
||
#chatroom.chatroom_info_update_callback http://localhost:8888/im_event/chatroom/info
|
||
|
||
##聊天室成员变动回调地址
|
||
##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!!
|
||
#chatroom.chatroom_member_update_callback http://localhost:8888/im_event/chatroom/member
|
||
|
||
#*********************************************************************
|
||
# Sensitive configuration
|
||
#*********************************************************************
|
||
## 内置文本敏感词过滤处理方法,0 发送失败;1 发送成功但消息被服务器直接丢弃;2 命中的敏感词被替换成***;3 记录并继续发送
|
||
sensitive.filter.type 0
|
||
|
||
## 如果内置敏感词库无法满足您的需求,可以自己开发部署敏感词审核服务。配置如下地址和消息类型,IM服务会把指定消息类型的消息回调到指定地址
|
||
## 审核服务返回状态码200表示继续发送,如果需要替换内容,返回状态码200并且内容为替换后的内容。返回403表示不允许发送。其它错误继续发送。
|
||
## 独立审核服务地址,IM服务会post SendMessageData。如果需要修改消息内容,返回 MessagePayload。请参考应用服务中 "/message/censor" Mapping.
|
||
#sensitive.remote_server_url http://192.168.3.202:8888/message/censor
|
||
## 需要进行敏感词审核的消息类型,当有多个时以英文逗号分割
|
||
#sensitive.remote_sensitive_message_type 1,2,3
|
||
## 如果远程审核服务返回403,返回给发送端发送失败还是成功?实际上这个值影响发送响应是否等待审核结果,当为false时,消息发送给审核服务就立即返回
|
||
## 成功给客户端。当为true时,消息发送给审核服务,等待审核结果,如果结果为继续发送就返回给客户端为成功,结果为禁止发送就返回失败给客户端。
|
||
## 客户端操作的超时一般为10s左右,且考虑到复杂的网络情况,建议处理时间不要超过3s。建议这个值为false。
|
||
#sensitive.remote_fail_when_matched false
|