2015-03-31 16 views
10

Nie mogę znaleźć przykładu wysłania wiadomości przez protokół telegramu z C#. Próbowałem użyć this, ale się nie udało. Czy możesz podać mi jakieś przykłady?Telegram C# przykład wyślij wiadomość

+0

jaki jest twój problem? – Milad

+1

Pierwsza wiadomość po jednym roku członkiem? Witamy w SO. Jeśli potrzebujesz pomocy, najpierw musisz pomóc sobie. [Co próbowałeś] (http://mattgemmell.com/what-have-you-tried/) do tej pory? – aloisdg

Odpowiedz

-2

Telegram ma oficjalnego API, które może zrobić dokładnie to, co trzeba, trzeba będzie zajrzeć do żądań HTTP chociaż ..

Oto dokumentacja wysyłając wiadomość:

funkcji

messages.sendMessage 

Params

peer InputPeer User or chat where a message will be sent 
message string Message text 
random_id long Unique client message ID required to prevent message resending 

przykład Query

(messages.sendMessage (inputPeerSelf) "Hello, me!" 12345678901) 

błędy powrotu

Code Type Description 
400 BAD_REQUEST PEER_ID_INVALID Invalid peer 
400 BAD_REQUEST MESSAGE_EMPTY Empty or invalid UTF8 message was sent 
400 BAD_REQUEST MESSAGE_TOO_LONG Message was too long. 

Current maximum length is 4096 UTF8 characters 

Dla pełnej dokumentacji iść here.

+0

Widzę oficjalny interfejs API, ale nie rozumiem, jak go używać. Niektóre rozwiązania mają szybki start z autoryzacją itd. –

+0

[this] (https://core.telegram.org/api/auth) to całkiem niezły wytłumaczenie, jak się uwierzytelnić, jeśli znasz żądania HTTP z C# this wouldn ' t naprawdę trudno je wdrożyć. –

+0

Zgadzam się, ale niektóre rozwiązania wdrożyły protokół dotyczący żądania asynchronicznego i szyfrowania wsparcia. –

13

TLSharp jest podstawową implementacją Telegram API na C#. Zobacz tutaj https://github.com/sochix/TLSharp

+0

Mam hash API rejestrując się tutaj (https://my.telegram.org/auth) .. jednak wykonanie powyższego kodu nie powiodło się stwierdzając, że hash nie jest zarejestrowany. –

+0

Co powiesz na odbieranie wiadomości przez tę linię? Czy to też możliwe? –

+0

Tak, będzie to możliwe, jeśli znaleźlibyśmy współtwórcę lub kogoś, kto przekazuje darowiznę na tę funkcję. – SochiX

0

Dla mojego bota używam pakietu nuget Telegram.Bot. Pełny kod przykładowy to here.

Oto przykład wysłania wiadomości w odpowiedzi na wiadomość przychodzącą.

// create bot instance 
var bot = new TelegramBotClient("YourApiToken"); 

// test your api configured correctly 
var me = await bot.GetMeAsync(); 
Console.WriteLine($"{me.Username} started"); 

// start listening for incoming messages 
while (true) 
{ 
    //get incoming messages 
    var updates = await bot.GetUpdatesAsync(offset); 
    foreach (var update in updates) 
    { 
     // send response to incoming message 
     await bot.SendTextMessageAsync(message.Chat.Id,"The Matrix has you..."); 
    } 
} 
Powiązane problemy