امروزه استفاده از کانالهای تلگرام بسیار پر کاربرد شده و کاربران صفحات مجازی را مشغول کرده است. برنامه نویسان وب برای استفاده از APIهای تلگرام میتوانند به https://core.telegram.org/ مراجعه و توابع بیشتری را در پروژههای خود استفاده کنند.
ایجاد یک کانال و بات
بعد از ایجاد یک کانال public نیاز است یک بات ایجاد کنید. سپس این بات را به عنوان Administrator به کانال خود اضافه کنید.
ارسال پیام به کانال
بعد از ایجاد بات، سیستم به شما یک توکن میدهد که باید همان توکن را در ارسالها استفاده کنید. دستورات بالا به این صورت عمل میکنند که از طرف توکن، به عنوان مدیر کانال، یک پیام در کانال درج میشود.
ارسال فایل به کانال
طریقه فراخوانی تابع ارسال فایل
ارسال پیام به یک کانال private
برای ارسال پیام به یک کانال خصوصی ابتدا باید کانال عمومی داشته باشید. در تابع ارسال پیام به یک کانال تلگرام، متغیر uri هنگام اجرا دارای مقدار شده و شما میتوانید این آدرس را در مرورگر وارد کنید. اتفاقی که میافتد این است که ارسال به کانال انجام شده و نتیجهی آن روی صفحه ظاهر میگردد.
در متن بازگشتی یک پارامتر بنام ChannelId نمایش داده میشود که معمولا بصورت یک عدد منفی مثل 1001001734568- است که این کد، کد یکتای کانال ایجاد شده میباشد. شما از این به بعد
میتوانید کانال را Private یا حتی Rename کنید. همچنین میتوانید در ارسال به
کانال، بجای استفاده از ChannelName@، از کد یکتای بدست آمده استفاده نمائید.
ایجاد یک کانال و بات
بعد از ایجاد یک کانال public نیاز است یک بات ایجاد کنید. سپس این بات را به عنوان Administrator به کانال خود اضافه کنید.
ارسال پیام به کانال
var token="175287941:AAFcpXIIj1HuFlC5aB0QDBdWQBsTHqflkna"; // توکن خود را جایگزین کنید var channelId ="@ChannelName"; var message ="تست ارسال"; var uri = String.Format("https://api.telegram.org/bot{0}/sendMessage?chat_id={1}&text={2}", Token, channelId, message); using (WebClient client = new WebClient()) { dynamic s = client.DownloadString(uri); }
ارسال فایل به کانال
public bool SendFileToChannel(byte[] file, string fileName) { var token="175287941:AAFcpXIIj1HuFlC5aB0QDBdWQBsTHqflkna"; // توکن خود را جایگزین کنید var channelId ="@ChannelName"; using (var client = new HttpClient()) { var uri = String.Format("https://api.telegram.org/bot{0}/sendDocument?chat_id={1}", Token, channelId ); using (var multipartFormDataContent = new MultipartFormDataContent()) { var streamContent = new StreamContent(new MemoryStream(file)); streamContent.Headers.Add("Content-Type", "application/octet-stream"); streamContent.Headers.Add("Content-Disposition", "form-data; name=\"document\"; filename=\"" + fileName + "\""); multipartFormDataContent.Add(streamContent, "file", fileName); using (var message = client.PostAsync(uri, multipartFormDataContent)) { var contentString = message.Result.Content.ReadAsStringAsync(); } } } return true; }
طریقه فراخوانی تابع ارسال فایل
string path = @"c:\myFile.txt"; // All File Allowed : pdf, mp3, jpg ,... string fileName = Path.GetFileName(path); byte[] file = System.IO.File.ReadAllBytes(path); SendFileToChannel(file, fileName);
ارسال پیام به یک کانال private
برای ارسال پیام به یک کانال خصوصی ابتدا باید کانال عمومی داشته باشید. در تابع ارسال پیام به یک کانال تلگرام، متغیر uri هنگام اجرا دارای مقدار شده و شما میتوانید این آدرس را در مرورگر وارد کنید. اتفاقی که میافتد این است که ارسال به کانال انجام شده و نتیجهی آن روی صفحه ظاهر میگردد.
var uri = String.Format("https://api.telegram.org/bot{0}/sendMessage?chat_id={1}&text={2}", Token, channelId, message);