修复:转发消息遍历发送通道时未跳过已禁用的通道

This commit is contained in:
pppscn 2023-02-12 23:20:34 +08:00
parent f468b4187b
commit edb5ef48a2
3 changed files with 13 additions and 2 deletions

View File

@ -21,7 +21,6 @@ import com.xuexiang.xui.utils.ResUtils
import com.xuexiang.xutil.XUtil import com.xuexiang.xutil.XUtil
import java.util.* import java.util.*
object SendUtils { object SendUtils {
private const val TAG = "SendUtils" private const val TAG = "SendUtils"
@ -63,6 +62,12 @@ object SendUtils {
fun sendMsgSender(msgInfo: MsgInfo, rule: Rule, senderIndex: Int = 0, logId: Long = 0L, msgId: Long = 0L) { fun sendMsgSender(msgInfo: MsgInfo, rule: Rule, senderIndex: Int = 0, logId: Long = 0L, msgId: Long = 0L) {
try { try {
val sender = rule.senderList[senderIndex] val sender = rule.senderList[senderIndex]
if (sender.status != 1) {
Log.d(TAG, "sender = $sender is disabled")
updateLogs(logId, 0, ResUtils.getString(R.string.sender_disabled))
senderLogic(0, msgInfo, rule, senderIndex, msgId)
return
}
when (sender.type) { when (sender.type) {
TYPE_DINGTALK_GROUP_ROBOT -> { TYPE_DINGTALK_GROUP_ROBOT -> {
val settingVo = Gson().fromJson(sender.jsonSetting, DingtalkGroupRobotSetting::class.java) val settingVo = Gson().fromJson(sender.jsonSetting, DingtalkGroupRobotSetting::class.java)
@ -129,12 +134,14 @@ object SendUtils {
SocketUtils.sendMsg(settingVo, msgInfo, rule, senderIndex, logId, msgId) SocketUtils.sendMsg(settingVo, msgInfo, rule, senderIndex, logId, msgId)
} }
else -> { else -> {
updateLogs(logId, 0, "未知发送通道") updateLogs(logId, 0, ResUtils.getString(R.string.unknown_sender))
senderLogic(0, msgInfo, rule, senderIndex, msgId)
} }
} }
} catch (e: Exception) { } catch (e: Exception) {
e.printStackTrace() e.printStackTrace()
updateLogs(logId, 0, e.message.toString()) updateLogs(logId, 0, e.message.toString())
senderLogic(0, msgInfo, rule, senderIndex, msgId)
} }
} }

View File

@ -993,4 +993,6 @@
<string name="sm4_key_tips">Client or server interaction messages are all encrypted and decrypted using SM4</string> <string name="sm4_key_tips">Client or server interaction messages are all encrypted and decrypted using SM4</string>
<string name="sender_del">Del Sender</string> <string name="sender_del">Del Sender</string>
<string name="sender_disabled">Sender is disabled</string>
<string name="unknown_sender">Unknown sender</string>
</resources> </resources>

View File

@ -994,4 +994,6 @@
<string name="sm4_key_tips">客户端/服务端交互采用SM4加解密</string> <string name="sm4_key_tips">客户端/服务端交互采用SM4加解密</string>
<string name="sender_del">删除发送通道</string> <string name="sender_del">删除发送通道</string>
<string name="sender_disabled">发送通道已禁用</string>
<string name="unknown_sender">未知发送通道</string>
</resources> </resources>