2017-03-08 85 views
0

我想通过一个简单的C#控制台应用程序使用TLsharp库发送一个电报。我的程序运行但我收不到消息。我已经通过创建电报网站上的应用程序的过程,并获得必要的哈希ID和code.Please协助TLsharp控制台发送消息

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using TeleSharp.TL; 
using TLSharp; 
using TLSharp.Core; 

    namespace TLsharpTest 
    { 
     class Program 
     { 

    const int apiId = 55xxx; 
    const int groupId = -167xxxxx; 
    const string apiHash = "220xxxxxxxx"; 
    const string number = "27xxxxxxx"; 
    static void Main(string[] args) 
    { 

     var client = new TelegramClient(apiId, apiHash); 
     client.ConnectAsync(); 


     var hash = client.SendCodeRequestAsync(number); 
     var code = "55xxx"; // you can change code in debugger 
     var user = client.MakeAuthAsync(number, apiHash, code); 
     client.SendMessageAsync(new TLInputPeerUser() { user_id = groupId },    "TEST"); 
     Console.ReadKey(); 
    } 


    } 
} 

回答

0

您应该对用户的access_hash发送消息。它应该看起来像这样:

_client.SendMessageAsync(
       new TLInputPeerUser() 
       { 
        user_id = channelUser.Id, 
        access_hash = channelUser.AccessHash 
       }