|
@@ -1,7 +1,6 @@
|
|
|
package wx
|
|
|
|
|
|
import (
|
|
|
- . "app.yhyue.com/moapp/jybase/mongodb"
|
|
|
"app.yhyue.com/moapp/jypkg/common/src/qfw/util/jy"
|
|
|
"bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/pb"
|
|
|
"encoding/json"
|
|
@@ -133,6 +132,10 @@ func MenuClickHandler(w ResponseWriter, r *Request) {
|
|
|
// }
|
|
|
}
|
|
|
|
|
|
+var (
|
|
|
+ MsgLock = &sync.Mutex{}
|
|
|
+)
|
|
|
+
|
|
|
// 客服消息处理
|
|
|
func MsgTxtHandler(w ResponseWriter, r *Request) {
|
|
|
log.Println("所有指令", r.FromUserName, r.Content, r.CreateTime, r.MsgId) //测试信息
|
|
@@ -143,6 +146,8 @@ func MsgTxtHandler(w ResponseWriter, r *Request) {
|
|
|
if openid != "" {
|
|
|
redis.Put("push", "remind&&"+openid, "3", 172800)
|
|
|
}
|
|
|
+ MsgLock.Lock()
|
|
|
+ defer MsgLock.Unlock()
|
|
|
//微信客服消息 有可能会触发三次回调机制
|
|
|
receiveKey := fmt.Sprintf("customer_service_%s_%s_%v", r.FromUserName, r.Content, r.MsgId)
|
|
|
isReceived, err := redis.Exists("other", receiveKey)
|
|
@@ -191,6 +196,7 @@ func MsgTxtHandler(w ResponseWriter, r *Request) {
|
|
|
if KeysReply(r.Content, w) {
|
|
|
return
|
|
|
}
|
|
|
+ log.Println("未匹配到关键词")
|
|
|
go tools.MQFW.Save("weixinoffline", &map[string]interface{}{
|
|
|
"s_openid": r.FromUserName,
|
|
|
"s_msg": r.Content,
|