|
|
|
|
|
|
|
|
j, _ := json.Marshal(s) |
|
|
j, _ := json.Marshal(s) |
|
|
postJSON(j, u) |
|
|
postJSON(j, u) |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
type sendVoiceMsg struct { |
|
|
|
|
|
ToUser string `json:"touser"` |
|
|
|
|
|
MsgType string `json:"msgtype"` |
|
|
|
|
|
Voice struct { |
|
|
|
|
|
MediaID string `json:"media_id"` |
|
|
|
|
|
} `json:"voice"` |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func kfSendVoice(user, path string) { |
|
|
|
|
|
mID := uploadVoice(path) |
|
|
|
|
|
kfSendVoiceByMediaID(user, mID) |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func kfSendVoiceByMediaID(user, mediaID string) { |
|
|
|
|
|
u := getKfSendURL() |
|
|
|
|
|
s := sendVoiceMsg{} |
|
|
|
|
|
s.ToUser = user |
|
|
|
|
|
s.MsgType = "voice" |
|
|
|
|
|
s.Voice.MediaID = mediaID |
|
|
|
|
|
|
|
|
|
|
|
j, _ := json.Marshal(s) |
|
|
|
|
|
postJSON(j, u) |
|
|
|
|
|
} |