Discuz解除用户发送站内信消息间隔时间限制的方法
近期因项目开发需要把站内信用作实时聊天,因此原15秒才能发送一次站内信的限制肯定是不合适的。
查阅有关帖子,操作发现:设置UCENTER短消息间隔,并修改spacecp_pm等文件对站内用户互发消息是无效的,依然提示间隔过短发送失败。
经过一路函数追踪,需作以下修改方能实现站内短消息的无间隔发送(请慎重修改,无间隔发送的防攻击安全措施应做到位)。
需修改的文件请做好备份工作。
1、修改uc_client/control/pm.php找到以下代码(110行附近),注释或删除。
if($this->settings['pmfloodctrl']) { if(!$_ENV['pm']->ispminterval($this->user['uid'], $this->settings['pmfloodctrl'])) { return PMFLOODCTRL_ERROR; } }
2、修改source/include/spacecp/spacecp_pm.php找到以下代码删除或注释。
$waittime = interval_check('post'); if($waittime > 0) { showmessage('message_can_not_send_2', '', array(), array('return' => true)); }
之后即可解决。
再次强调,原先的间隔设置是为了防止频繁发送短消息、攻击的,如做以上修改,请自行做好安全措施。
本文网址:https://www.dedexuexi.com/jzjc/dzjc/3550.html
本站部分文章搜集与网络,如有侵权请联系本站,转载请说明出处。
标签:Discuz