37 lines
937 B
Go
37 lines
937 B
Go
|
package core
|
||
|
|
||
|
import "github.com/goWxHook/goWxHook/utils/json"
|
||
|
|
||
|
type VoiceToTextRequest struct {
|
||
|
Msgid string `json:"msgid"`
|
||
|
}
|
||
|
|
||
|
type VoiceToTextResponseData struct {
|
||
|
FromWxid string `json:"from_wxid"`
|
||
|
Msgid string `json:"msgid"`
|
||
|
RoomWxid string `json:"room_wxid"`
|
||
|
Status int `json:"status"`
|
||
|
Text string `json:"text"`
|
||
|
ToWxid string `json:"to_wxid"`
|
||
|
WxType int `json:"wx_type"`
|
||
|
}
|
||
|
|
||
|
type VoiceToTextResponse struct {
|
||
|
Data VoiceToTextResponseData `json:"data"`
|
||
|
Type int `json:"type"`
|
||
|
}
|
||
|
|
||
|
// VoiceToText 语音转文字
|
||
|
func (w *WxApi) VoiceToText(request VoiceToTextRequest) (*VoiceToTextResponseData, error) {
|
||
|
resp, err := w.internalCall(MtVoiceToTextMsg, 120, MtVoiceToTextMsg, request, nil)
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
var rdata VoiceToTextResponse
|
||
|
err = json.Unmarshal([]byte(resp), &rdata)
|
||
|
if err != nil {
|
||
|
return nil, WxError{-1, err.Error()}
|
||
|
}
|
||
|
return &rdata.Data, nil
|
||
|
}
|