שליחת הודעות לערוץ טלגרם בדרך הקלה באמצעות Telegram Bot

BotFather - שליחת הועדות לערוץ טלגרם בדרך הקלה

במדריך זה נדבר על הדרך הפשוטה והקלה לשלוח הודעות לערוץ טלגרם. והשימוש? תלוי צורך. אני למשל משתמש ביכלות זו במערכת ניטור שכתבתי. אפשרות נוספת היא לשימוש בבתים חכמים (גם אותה יישמתי אגב).

על מנת שנוכל להתקדם עם המדריך, תצטרכו לבצע את השלבים המקדימים הבאים:

  • הקמת ערוץ טלגרם ציבורי.
  • יצירת בוט טלגרם באמצעות BotFather.
  • הוספת הבוט שיצרתם כמנהל בערוץ

לאחר שביצעתם את השלבים לעיל, תוכלו כעת לשלוח הודעה לערוץ שלכם על ידי שליחת בקשת HTTP GET לממשק ה- API של Telegram בכתובת הבאה:

כאשר:

  • BOT_API_KEY – הוא ה API KEY של הבוט שקיבלתם בעת יצירתו.
  • MY_CHANNEL_NAME – שם הערוץ שפתחתם, לדוגמא @my_channel_name.
  • MY_MESSAGE_TEXT – תוכן ההודעה אותה תרצו לשלוח.

וכעת אספק מספר דוגמאות קוד בשפות הפיתוח השונות באמצעותן ניתן לממש את השליחה כפי שהוסברה כאן.

PHP

https://api.telegram.org/bot[BOT_API_KEY]/sendMessage?chat_id=[MY_CHANNEL_NAME]&text=[MY_MESSAGE_TEXT]
$apiToken = "my_bot_api_token";

$data = [
    'chat_id' => '@my_channel_name',
    'text' => 'Hello world!'
];

$response = file_get_contents("https://api.telegram.org/bot$apiToken/sendMessage?" . http_build_query($data) );
// Do what you want with result

JAVA

String urlString = "https://api.telegram.org/bot%s/sendMessage?chat_id=%s&text=%s";

String apiToken = "my_bot_api_token";
String chatId = "@my_channel_name";
String text = "Hello world!";

urlString = String.format(urlString, apiToken, chatId, text);

URL url = new URL(urlString);
URLConnection conn = url.openConnection();

StringBuilder sb = new StringBuilder();
InputStream is = new BufferedInputStream(conn.getInputStream());
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String inputLine = "";
while ((inputLine = br.readLine()) != null) {
    sb.append(inputLine);
}
String response = sb.toString();
// Do what you want with response

Objective-C

 

NSString *strUrl = @”https://api.telegram.org/bot%@/sendMessage?chat_id=%@&text=%@";
NSString *apiToken = @”my_bot_api_token”;
NSString *chatId = @”@my_channel_name”;
NSString *text = @”Hello world!”;
strUrl = [NSString stringWithFormat:strUrl, apiToken, chatId, text];
NSURL *url = [NSURL URLWithString:strUrl];
 
NSURLSessionDataTask *downloadTask = [[NSURLSession sharedSession]
 dataTaskWithURL:url completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
 
 // Do what you want with data
}];
 
[downloadTask resume];

#C

string urlString = "https://api.telegram.org/bot{0}/sendMessage?chat_id={1}&text={2}";
string apiToken = "my_bot_api_token";
string chatId = "@my_channel_name";
string text = "Hello world!";
urlString = String.Format(urlString, apiToken, chatId, text);
WebRequest request = WebRequest.Create(urlString);
Stream rs = request.GetResponse().GetResponseStream();
StreamReader reader = new StreamReader(rs);
string line = "";
StringBuilder sb = new StringBuilder();
while ( line !=null ) {
 line = reader.ReadLine();
 if ( line != null )
 sb.Append(line);
}
string response = sb.ToString();
// Do what you want with response

Be the first to comment

Leave a Reply

כתובת האימייל שלך לא תפורסם


*