返回列表 发帖
查看: 4719|回复: 2

解除用户发送站内信消息间隔时间限制的方法

1

主题

18

回帖

37

积分

应用开发者

贡献
0 点
金币
16 个
发表于 2019-6-24 13:04:03 | 显示全部楼层 |阅读模式
近期因项目开发需要把站内信用作实时聊天,因此原15秒才能发送一次站内信的限制肯定是不合适的。
查阅有关帖子,操作发现:设置UCENTER短消息间隔,并修改spacecp_pm等文件对站内用户互发消息是无效的,依然提示间隔过短发送失败。
经过一路函数追踪,需作以下修改方能实现站内短消息的无间隔发送(请慎重修改,无间隔发送的防攻击安全措施应做到位)。
需修改的文件请做好备份工作。

1、修改 uc_client/control/pm.php 找到以下代码(110行附近),注释或删除。
  1. if($this->settings['pmfloodctrl']) {
  2.         if(!$_ENV['pm']->ispminterval($this->user['uid'], $this->settings['pmfloodctrl'])) {
  3.                   return PMFLOODCTRL_ERROR;
  4.         }
  5. }
复制代码

2、修改 source/include/spacecp/spacecp_pm.php 找到以下代码删除或注释。
  1. $waittime = interval_check('post');
  2. if($waittime > 0) {
  3.         showmessage('message_can_not_send_2', '', array(), array('return' => true));
  4. }
复制代码

之后即可解决。
再次强调,原先的间隔设置是为了防止频繁发送短消息、攻击的,如做以上修改,请自行做好安全措施。
小时空 - 致力于Discuz!X应用开发
https://www.tsmini.com
回复

使用道具 举报

285

主题

1178

回帖

1567

积分

已臻大成

贡献
3 点
金币
0 个
发表于 2022-10-2 18:44:17 来自手机 | 显示全部楼层
好东西,感谢
回复 支持 反对

使用道具 举报

285

主题

1178

回帖

1567

积分

已臻大成

贡献
3 点
金币
0 个
发表于 2022-10-2 18:53:33 来自手机 | 显示全部楼层
为了防止短信息攻击,如果能设置发送短消息间隔时间就好了,15s太长换成3-5s应该就可以解决问题,还不影响交流
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2024-4-20 12:58 , Processed in 0.061618 second(s), 6 queries , Redis On.

Powered by Discuz! W1.0 Licensed

Cpoyright © 2001-2024 Discuz! Team.

关灯 在本版发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表