1
This commit is contained in:
@@ -851,6 +851,7 @@ func CheckAndReply(req *JXMsg, elmAppID string) (err error) {
|
|||||||
//}
|
//}
|
||||||
|
|
||||||
// GetIfReply 检查是否已回复
|
// GetIfReply 检查是否已回复
|
||||||
|
// 美团只需要第一条消息在一分钟之内回复就达标了,后面不需要自动回复了
|
||||||
func GetIfReply(key string, keyDetail UserRelInfo) (flag bool) {
|
func GetIfReply(key string, keyDetail UserRelInfo) (flag bool) {
|
||||||
flag = false
|
flag = false
|
||||||
if n, err := rdb.Exists(key); n > 0 && err == nil {
|
if n, err := rdb.Exists(key); n > 0 && err == nil {
|
||||||
@@ -877,27 +878,49 @@ func GetIfReply(key string, keyDetail UserRelInfo) (flag bool) {
|
|||||||
if err == nil && detail != nil {
|
if err == nil && detail != nil {
|
||||||
tKey := keyDetail.AppID + ":" + keyDetail.VendorStoreID + ":" + keyDetail.VendorID + ":" + keyDetail.UserID
|
tKey := keyDetail.AppID + ":" + keyDetail.VendorStoreID + ":" + keyDetail.VendorID + ":" + keyDetail.UserID
|
||||||
if detail[tKey] != nil {
|
if detail[tKey] != nil {
|
||||||
tDetail := detail[tKey][len(detail[tKey])-1]
|
for _, v := range detail[tKey] {
|
||||||
b := tDetail.(string)
|
b := v.(string)
|
||||||
lastMsg := &JXMsg{}
|
lastMsg := &JXMsg{}
|
||||||
err = json.Unmarshal([]byte(b), lastMsg)
|
err = json.Unmarshal([]byte(b), lastMsg)
|
||||||
if err != nil || lastMsg.SendType == SendTypeJx {
|
if err != nil {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
switch keyDetail.VendorID {
|
switch keyDetail.VendorID {
|
||||||
case VendorIDMTStr:
|
case VendorIDMTStr:
|
||||||
mt := lastMsg.MsgContent.(map[string]interface{})
|
mt := lastMsg.MsgContent.(map[string]interface{})
|
||||||
if mt["msg_source"].(float64) != mtwmapi.MsgSourceUser {
|
if mt["msg_source"].(float64) == mtwmapi.MsgSourceStore {
|
||||||
return false
|
return true
|
||||||
}
|
}
|
||||||
case VendorIDELMStr:
|
case VendorIDELMStr:
|
||||||
elm := lastMsg.MsgContent.(map[string]interface{})
|
elm := lastMsg.MsgContent.(map[string]interface{})
|
||||||
s := elm["payLoad"].(map[string]interface{})["senderId"].(string)
|
s := elm["payLoad"].(map[string]interface{})["senderId"].(string)
|
||||||
if s == "" || s[:2] != ebaiapi.SenderTypeUser {
|
if s == "" || s[:2] == ebaiapi.SenderTypeBusiness || s[:2] == ebaiapi.SenderTypeChainedAccountLogin || s[:2] == ebaiapi.SenderTypeSystem {
|
||||||
return false
|
return true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//tDetail := detail[tKey][len(detail[tKey])-1]
|
||||||
|
//b := tDetail.(string)
|
||||||
|
//lastMsg := &JXMsg{}
|
||||||
|
//err = json.Unmarshal([]byte(b), lastMsg)
|
||||||
|
//if err != nil || lastMsg.SendType == SendTypeJx {
|
||||||
|
// return false
|
||||||
|
//}
|
||||||
|
//switch keyDetail.VendorID {
|
||||||
|
//case VendorIDMTStr:
|
||||||
|
// mt := lastMsg.MsgContent.(map[string]interface{})
|
||||||
|
// if mt["msg_source"].(float64) != mtwmapi.MsgSourceUser {
|
||||||
|
// return false
|
||||||
|
// }
|
||||||
|
//case VendorIDELMStr:
|
||||||
|
// elm := lastMsg.MsgContent.(map[string]interface{})
|
||||||
|
// s := elm["payLoad"].(map[string]interface{})["senderId"].(string)
|
||||||
|
// if s == "" || s[:2] != ebaiapi.SenderTypeUser {
|
||||||
|
// return false
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return flag
|
return flag
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user