2017-07-25 77 views
-1

我有这条线需要从不一致的文本通道接收消息。从不一致的聊天命令中获取消息

choice = video[int.Parse(CommandHandler.message .Content)-1].Url; 

我尝试了很多东西,包括在api中搜索,但我没有线索。

这里是命令

[Command("join", RunMode= RunMode.Async), Summary("joins voice channel")] 
public async Task joinvoice([Remainder, Summary("The text to echo")] string searchP="") 
{ 

    IVoiceChannel voicechannel = (CommandHandler.Last as IGuildUser).VoiceChannel; 

    if (voicechannel == null) 
    { 
     await ReplyAsync("u have to be in a channel first"); 
     return; 

    } 
    string choice = ""; 
    VideoSearch SearchRisolts = new VideoSearch(); 
    if (searchP != "") 
    { 
     if (searchP.Contains("https://")) 
      choice = searchP; 
     else 
     { 
      List<VideoInformation> video = SearchRisolts.SearchQuery(searchP, 1); 
      await ReplyAsync("1) " + video[0].Title + "\n\n2) " + video[1].Title + "\n\n3) " + video[2].Title); 

      choice = video[int.Parse(CommandHandler.message .Content)-1].Url;//here i need to recive a message from the chat 
     } 
    } 

    if (voicechannel != Program.voicechannel) 
    { 
     Program.audioClient = await voicechannel.ConnectAsync(); 
     Program.voicechannel = voicechannel; 

    } 
    if (Program.audioClient!=null) 
     await SendAsync(Program.audioClient, choice); 

} 

回答

0

包含这个功能应该从BaseModule<ICommandContext>

BaseModule派生的类包含的背景下,这在地方包含你正在寻找的信息。

Context.Message.Content