Verified Commit c73409ed authored by Cui's avatar Cui

add subtype judge

parent c7189e64
...@@ -16,19 +16,141 @@ func Sender(accessToken string, message MessageStruct) (code int, msg string) { ...@@ -16,19 +16,141 @@ func Sender(accessToken string, message MessageStruct) (code int, msg string) {
case "CUSTOMER": case "CUSTOMER":
fallthrough fallthrough
case "MASS": case "MASS":
var cmi TextCustomerMessage
err := json.Unmarshal(message.MessageData, &cmi)
if err != nil { switch message.MessageSubType {
msg := "Unmarshal TextCustomerMessage failed" case "TEXT":
var cmi TextCustomerMessage
err := json.Unmarshal(message.MessageData, &cmi)
if err != nil {
msg := "Unmarshal TextCustomerMessage failed"
log.
WithField("error", err).
Error(msg)
code = -10011
break
}
code, msg = CustomerMessageSender(accessToken, &cmi)
case "IMAGE":
var cmi ImageCustomerMessage
err := json.Unmarshal(message.MessageData, &cmi)
if err != nil {
msg := "Unmarshal ImageCustomerMessage failed"
log.
WithField("error", err).
Error(msg)
code = -10012
break
}
code, msg = CustomerMessageSender(accessToken, &cmi)
case "VOICE":
var cmi VoiceCustomerMessage
err := json.Unmarshal(message.MessageData, &cmi)
if err != nil {
msg := "Unmarshal VoiceCustomerMessage failed"
log.
WithField("error", err).
Error(msg)
code = -10013
break
}
code, msg = CustomerMessageSender(accessToken, &cmi)
case "VIDEO":
var cmi VideoCustomerMessage
err := json.Unmarshal(message.MessageData, &cmi)
if err != nil {
msg := "Unmarshal VideoCustomerMessage failed"
log.
WithField("error", err).
Error(msg)
code = -10014
break
}
code, msg = CustomerMessageSender(accessToken, &cmi)
case "MUSIC":
var cmi MusicCustomerMessage
err := json.Unmarshal(message.MessageData, &cmi)
if err != nil {
msg := "Unmarshal MusicCustomerMessage failed"
log.
WithField("error", err).
Error(msg)
code = -10015
break
}
code, msg = CustomerMessageSender(accessToken, &cmi)
case "NEWS":
var cmi NewsCustomerMessage
err := json.Unmarshal(message.MessageData, &cmi)
if err != nil {
msg := "Unmarshal NewsCustomerMessage failed"
log.
WithField("error", err).
Error(msg)
code = -10016
break
}
code, msg = CustomerMessageSender(accessToken, &cmi)
case "MPNEWS":
var cmi MpnewsCustomerMessage
err := json.Unmarshal(message.MessageData, &cmi)
if err != nil {
msg := "Unmarshal MpnewsCustomerMessage failed"
log.
WithField("error", err).
Error(msg)
code = -10017
break
}
code, msg = CustomerMessageSender(accessToken, &cmi)
case "WXCARD":
var cmi WxcardCustomerMessage
err := json.Unmarshal(message.MessageData, &cmi)
if err != nil {
msg := "Unmarshal WxcardCustomerMessage failed"
log.
WithField("error", err).
Error(msg)
code = -10018
break
}
code, msg = CustomerMessageSender(accessToken, &cmi)
case "MINIPROGRAMPAGE":
var cmi MiniprogrampageCustomerMessage
err := json.Unmarshal(message.MessageData, &cmi)
if err != nil {
msg := "Unmarshal MiniprogrampageCustomerMessage failed"
log.
WithField("error", err).
Error(msg)
code = -10019
break
}
code, msg = CustomerMessageSender(accessToken, &cmi)
default:
msg := "MessageSubType is match failed"
log. log.
WithField("error", err).
Error(msg) Error(msg)
code = -10001 code = -10020
break break
} }
code, msg = CustomerMessageSender(accessToken, &cmi)
break break
case "TEMPLATE": case "TEMPLATE":
var tm TemplateMessage var tm TemplateMessage
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment