SmartCode
1.06K subscribers
145 photos
2 videos
20 files
130 links
Download Telegram
کتابخانه node-telegram-bot-api یکی از محبوب‌ترین کتابخانه‌ها برای ساخت ربات‌های تلگرام با استفاده از Node.js است. این کتابخانه امکانات متنوعی را برای تعامل با API تلگرام فراهم می‌کند و نوشتن ربات‌های تلگرام را ساده و کارآمد می‌سازد.

### ویژگی‌های کلیدی:

1. سازگار با API تلگرام: این کتابخانه از تمام امکانات API تلگرام مانند ارسال پیام، دریافت پیام‌های جدید، مدیریت کاربر، و تعامل با استیکرها پشتیبانی می‌کند.

2. راحتی در استفاده: با استفاده از این کتابخانه می‌توانید به سرعت ربات‌های خود را راه‌اندازی کرده و آنها را توسعه دهید. این کتابخانه از Promiseها و Callbacks پشتیبانی می‌کند که به برنامه‌نویسان امکانات بیشتری می‌دهد.

3. مدیریت رویدادها: با قابلیت مدیریت رویدادها، می‌توانید به راحتی به انواع مختلف رویدادها (مثل دریافت پیام، کلیک بر روی دکمه‌ها، و غیره) پاسخ دهید.

4. سازماندهی آسان کد: به دلیل ساختار ماژولار و تمیز آن، کد شما سازماندهی شده و خوانا خواهد بود.

5. پشتیبانی از وب‌هوک: این کتابخانه امکان استفاده از وب‌هوک‌ها را فراهم می‌کند که برای ربات‌های دو طرفه و سریع بسیار مناسب است.

### نصب و استفاده:

برای نصب این کتابخانه، می‌توانید از npm استفاده کنید:

npm install node-telegram-bot-api



سپس، می‌توانید ربات خود را با استفاده از کد زیر راه‌اندازی کنید:

const TelegramBot = require('node-telegram-bot-api');

// توکن ربات خود را از BotFather بگیرید
const token = 'YOUR_TELEGRAM_BOT_TOKEN';

// ایجاد یک نمونه از ربات
const bot = new TelegramBot(token, { polling: true });

// گوش دادن به پیام‌های جدید
bot.on('message', (msg) => {
const chatId = msg.chat.id;
bot.sendMessage(chatId, 'Hello World!');
});



با این کد، ربات شما به پیام‌ها پاسخ خواهد داد. می‌توانید قابلیت‌های بیشتری به ربات اضافه کنید و آن را متناسب با نیازهای خود توسعه دهید.
برای یادگیری این پکیج حتما باید js, nodejs , database, از قبل بلد باشید و سپس میتوانید این کتابخانه از داکیومنت https://www.npmjs.com/package/node-telegram-bot-api بخوانید
Audio
console.log(1);
setTimeout(() => console.log(2), 0);
Promise.resolve()
.then(() => {
console.log(3);
return Promise.resolve(4);
})
.then(console.log);
console.log(5);
در نسخه‌های اخیر JavaScript، یکی از ویژگی‌های جالب و جدید WeakRefs (مراجع ضعیف) اضافه شده است. این ویژگی به شما اجازه می‌دهد تا به شیء‌هایی که به طور ضعیف نگه‌داری می‌شوند، ارجاع دهید. این یعنی وقتی تنها مراجع به یک شیء ضعیف باشند، آن شیء می‌تواند به راحتی جمع‌آوری شود و حافظه آزاد شود.

مثال:
let obj = { name: 'Example' };
let weakRef = new WeakRef(obj);

// دسترسی به شیء:
let deref = weakRef.deref(); // اگر شیء هنوز وجود داشته باشد، آن را برمی‌گرداند
console.log(deref); // { name: 'Example' }

// اگر فقط مرجع ضعیف باقی بماند و شیء دیگر به آن ارجاع ندهد، آن شیء جمع‌آوری خواهد شد.
obj = null; // مقداردهی به null

// در اینجا اگر بخواهید دوباره deref کنید، ممکن است undefined برگردد
deref = weakRef.deref();
console.log(deref); // ممکن است undefined باشد



این ویژگی به ویژه برای بهبود کارایی در مدیریت حافظه در برنامه‌های بزرگ و پیچیده بسیار مفید است.
CHALLENGE


const map = new Map();
const key1 = {};
const key2 = key1;

map.set(key1, "Value for key1");
map.set(key2, "Value for key2");

console.log(map.get({}));
console.log(map.get(key1));
CHALLENGE

console.log(typeof NaN);
console.log(NaN === NaN);
const numbers = [1, 2, 3, 4, 5];
const result = numbers.map(num => {
if (num === 3) {
return num * 2;
}
return num;
});

console.log(result);
CHALLENGE

const obj = { a: 10 };
console.log(obj.a && obj.b || 20);
شاید عجیب باشه ولی شکست ارزش بیشتری نسبت به موفقیت دارع .
موفقیت اسودگی و راحتی میاره و این باعث شکست میشه
شکست سختی و ناراحتی میاره و این باعث موفقیت میشه
CHALLENGE

const arr = [1, 2, 3];
const copy = [...arr];
copy.push(4);

console.log(arr);
console.log(copy);
const obj = {
a: 1,
a: 2,
a: 3
};
console.log(obj.a);
👍1🍓1👀1
CHALLENGE


Number.prototype[Symbol.iterator] = function*() { yield *['a','b','c'] };
console.log([...1]);
🍓31🤓1