حذف پیام‌ها در API تلگرام

telegram bot api delete messages
30 بهمن 1403

آشنایی با API تلگرام و حذف پیام‌ها


API تلگرام یکی از ابزارهای قدرتمند است که به برنامه‌نویسان اجازه می‌دهد تا بات‌هایی برای چت‌بات‌ها و ارتباطات مختلف بسازند. یکی از ویژگی‌های جالبی که این API ارائه می‌دهد، قابلیت حذف پیام‌هاست. این ویژگی می‌تواند در مواقعی که نیاز به پاک کردن پیام‌های ارسال شده در چت‌ها وجود دارد، خیلی کاربردی باشد. به طور مثال، ممکن است پیامی به اشتباه ارسال شده باشد یا نیاز به پاک کردن پیامی در گروهی باشد.


حذف پیام‌ها به وسیله تابع deleteMessage انجام می‌شود. این تابع به شما اجازه می‌دهد تا پیام‌های خاصی را با استفاده از شناسه (ID) آن‌ها از چت‌ها حذف کنید. برای استفاده از این تابع، شما به شناسه پیام و شناسه چت نیاز دارید. در واقع، شما باید بدانید که چه پیام و در کدام چت را می‌خواهید حذف کنید.


برای استفاده از API تلگرام و ارسال درخواست حذف پیام باید یک توکن دسترسی (access token) معتبر داشته باشید. این توکن به شما اجازه می‌دهد تا با API ارتباط برقرار کنید و عملیات مختلفی را انجام دهید. اگر هنوز توکن خود را دریافت نکرده‌اید، می‌توانید یک ربات جدید را در تلگرام بسازید و توکن آن را بگیرید.


حالا که با مفهوم حذف پیام‌ها در تلگرام آشنا شدیم، بیایید با استفاده از یک کد ساده، ببینیم چگونه می‌توانیم این کار را انجام دهیم. ما از HTTP POST برای ارسال درخواست استفاده می‌کنیم و با استفاده از توکن و شناسه‌های پیام و چت، پیام مورد نظر را حذف خواهیم کرد.


کد نمونه برای حذف پیام‌ها


const https = require('https');
const token = 'YOUR_BOT_TOKEN';
const chatId = 'CHAT_ID';
const messageId = 'MESSAGE_ID';

const url = `https://api.telegram.org/bot${token}/deleteMessage?chat_id=${chatId}&message_id=${messageId}`;

https.get(url, (resp) => {
let data = '';

// یک داده خوب دریافت کرده‌ایم
resp.on('data', (chunk) => {
data += chunk;
});

// تمام داده‌ها دریافت شده اند
resp.on('end', () => {
console.log(`پیام با شناسه ${messageId} حذف شد.`);
});
}).on('error', (err) => {
console.log('خطا: ' + err.message);
});

توضیحات خط به خط کد




خط 1: const https = require('https');
در اینجا ما ماژول HTTPS را برای ارسال درخواست‌های HTTP به API تلگرام بارگذاری می‌کنیم.



خط 2: const token = 'YOUR_BOT_TOKEN';
در این خط توکن دسترسی ربات خود را تعریف می‌کنیم. این توکن باید از تلگرام دریافت شده باشد.



خط 3: const chatId = 'CHAT_ID';
در اینجا شناسه چتی که پیام در آن ارسال شده است را مشخص می‌کنیم.



خط 4: const messageId = 'MESSAGE_ID';
در اینجا شناسه پیامی که می‌خواهیم حذف کنیم را تعیین می‌کنیم.



خط 5: const url = `${ ... }`;
در این خط URL درخواست حذف پیام را می‌سازیم که شامل توکن، شناسه چت و شناسه پیام است.



خط 6-14: https.get(url, (resp) => { ... });
در اینجا ما یک درخواست GET به API تلگرام ارسال می‌کنیم و پاسخ را می‌خوانیم. اگر پیام با موفقیت حذف شد، پیامی را به کنسول چاپ می‌کنیم.



خط آخر: console.log('خطا: ' + err.message);
اگر در ارسال درخواست خطایی رخ داد، پیام خطا را در کنسول چاپ می‌کنیم.

سوالات متداول

؟

چطور پیام‌ها را در تلگرام حذف کنم؟

؟

آیا می‌توانم پیام‌های گروهی را حذف کنم؟

؟

چگونه به API تلگرام دسترسی پیدا کنم؟