fix: 修复不同类型的回复规则同时生效的问题
This commit is contained in:
parent
d1d305a638
commit
293f3e5c09
@ -54,7 +54,7 @@ func ParseToChatUser(c *gin.Context) (chatUserInfo *accountFiee.ChatUserData, co
|
||||
originId = int64(fieeJwtInfo.ID)
|
||||
newChatUser = &accountFiee.ChatUserData{
|
||||
NickName: fieeJwtInfo.NickName,
|
||||
Account: fieeJwtInfo.Account,
|
||||
Account: fieeJwtInfo.Phone,
|
||||
Role: 1,
|
||||
Origin: config.AppConfig.System.Domain,
|
||||
OriginId: int64(fieeJwtInfo.ID),
|
||||
|
@ -165,11 +165,12 @@ func (r *Robot) Run() {
|
||||
fmt.Printf("robot listen event:%#v\n", event)
|
||||
r.mu.Lock()
|
||||
//加入聊天室规则
|
||||
hit := false
|
||||
hasHit := false
|
||||
for _, rule := range r.joinSessionRules {
|
||||
hit = rule.Hit(event, r.Info)
|
||||
hit := rule.Hit(event, r.Info)
|
||||
fmt.Printf("规则【%s】校验结果:%v\n", rule.GetTitle(), hit)
|
||||
if hit {
|
||||
hasHit = true
|
||||
if rule.RunTime().IsZero() {
|
||||
err := rule.Run(r.cache)
|
||||
if err != nil {
|
||||
@ -180,11 +181,12 @@ func (r *Robot) Run() {
|
||||
}
|
||||
}
|
||||
}
|
||||
if !hit {
|
||||
if !hasHit {
|
||||
for _, rule := range r.keywordsRules {
|
||||
hit = rule.Hit(event, r.Info)
|
||||
hit := rule.Hit(event, r.Info)
|
||||
fmt.Printf("规则【%s】校验结果:%v\n", rule.GetTitle(), hit)
|
||||
if hit {
|
||||
hasHit = true
|
||||
fmt.Println("命中规则:", rule.GetTitle())
|
||||
if rule.RunTime().IsZero() {
|
||||
err := rule.Run(r.cache)
|
||||
@ -197,11 +199,12 @@ func (r *Robot) Run() {
|
||||
}
|
||||
}
|
||||
}
|
||||
if !hit {
|
||||
if !hasHit {
|
||||
for _, rule := range r.noReplyAfterRules {
|
||||
hit = rule.Hit(event, r.Info)
|
||||
hit := rule.Hit(event, r.Info)
|
||||
fmt.Printf("规则【%s】校验结果:%v\n", rule.GetTitle(), hit)
|
||||
if hit {
|
||||
hasHit = true
|
||||
fmt.Println("命中规则:", rule.GetTitle())
|
||||
if rule.RunTime().IsZero() {
|
||||
err := rule.Run(r.cache)
|
||||
|
Loading…
Reference in New Issue
Block a user