发送语音本质上和发送图片差不多。
四个属性任选其一,出现多个时,按照VoiceId
> Url
> Path
> Base64
的优先级
var voice = new VoiceMessage
{
Path = "",
Url = "",
VoiceId = "",
Base64 = ""
};
await r.SendMessageAsync(voice);
或者你也可以使用MessageChainBuilder
:
var chain = new MessageChainBuilder()
.VoiceFromBase64("")
.VoiceFromId("")
.VoiceFromPath("")
.VoiceFromUrl("")
.Build();
await r.SendMessageAsync(chain);
但是你得把要发送的语音转换成QQ指定的slk或者amr格式,参见: silk-v3-decoder
var result = await FileManager.UploadVoiceAsync("path");
var vocieId = result.Item1;