2017-03-11 18 views
5

Tôi đang kết nối với Telegram API với thư viện này # C: TLSharpForwarding nhắn với TLSharp thư viện (C#)

Các nguồn lực cho thư viện này là không đủ, tôi đang cố gắng để chuyển tiếp một thông điệp tới kênh.

Tôi không yên tĩnh chắc chắn làm thế nào để có được bài kênh peer id (đối với các thông số chức năng đầu vào về phía trước)

var store = new FileSessionStore(); 
      var client = new TelegramClient(Properties.Settings.Default.apiID, Properties.Settings.Default.apiHash, store, "session"); 
      await client.ConnectAsync(); 
      var dialogs = (TLDialogs)await client.GetUserDialogsAsync(); 
      var chat = dialogs.chats.lists 
       .OfType<TLChannel>() 
       .SingleOrDefault(a=>a.title=="test"); 
      await client.SendRequestAsync<TLAbsUpdates>(
           new TLRequestForwardMessage() 
           { 
            id = 2, 
            peer = new TLInputPeerChannel() { channel_id = chat.id, access_hash = chat.access_hash.Value }, 
            random_id = Helpers.GenerateRandomLong() 
           }); 

tôi nhận được thông báo lỗi này:

{ "PEER_ID_INVALID"}

Xin hãy giúp tôi, id ngang hàng là gì và cách tôi có thể truy cập và sử dụng nó để chuyển tiếp thư bằng TLSharp. Cảm ơn.

+0

Bạn có phải là chủ sở hữu của kênh này không? –

+0

@CharlesOkwuagwu Yeah chắc chắn chúng tôi có kênh và nhóm – Farzad

Trả lời

2

Mã này có thể được sử dụng để chuyển tiếp

**

await client.SendRequestAsync<TLAbsUpdates>(new TLRequestForwardMessage() { id = item2.Id, peer = new TLInputPeerChat() { chat_id = item.id }, random_id = Helpers.GenerateRandomLong(), }); 
--------------------------------------- 

** ---------------------------------

+0

xin lỗi, loại mục nào và item2? (TLMessage hoặc TLChannel hoặc TLChat) –

3

Bạn có thể làm điều đó với thủ thuật này đẹp đó là vui nhộn: mã này là dưới đây:

new TLInputPeerChannel { channel_id = chat.id, access_hash = cha.access_hash.Value }, offset, 
       maxId, limit);