• בלוג
  • חמישה בוטים לטלגרם שתוכלו לכתוב כפרויקט צד

חמישה בוטים לטלגרם שתוכלו לכתוב כפרויקט צד

18/06/2023

אחרי שהתרגלנו לדבר בצ'ט בווטסאפ ועם Chat GPT אין דבר יותר טבעי מלהמשיך לתקשר עם בוטים גם במקומות אחרים. ברמה הטכנית בוטים מציעים דרך פשוטה לבנות ממשק לפרויקט שיהיה אינטואיטיבי למשתמשים ויחסית פשוט לפיתוח. אם אתם מחפשים רעיון לפרויקט צד, בוט לטלגרם יכול להיות משהו שכיף לבנות ולשחק איתו כשהוא באוויר. הנה חמישה רעיונות לבוטים שתוכלו לבנות בזמנכם הפנוי.

1. בוט אקו

את חווית פיתוח הבוטים תוכלו להתחיל עם בוט פשוט ששולח לכם בחזרה כל הודעה שתשלחו לו. בוט כזה ייתן לכם הזדמנות ללמוד איך לתקשר עם BotFather, איך לקבל טוקן ואיך להריץ בוט.

מתכנתי פייתון יכולים להתחיל עם הספריה python-telegram-bot.

מתכנתי Node.JS יכולים לנסות את node-telegram-bot-api.

וכאן יש רשימה די ארוכה של ספריות בכל השפות לבניית בוטים לטלגרם: https://core.telegram.org/bots/samples

את הבוט אפשר להריץ על כל שרת לינוד או אם אין לכם כח להתקנות להשתמש ב PaaS כמו code capsules. כאן יש מדריך להרצת בוט על השירות שלהם: https://codecapsules.io/docs/deployment/how-to-deploy-python-telegram-bot-to-production/

2. בוט שעוזר להגות מילים באנגלית

אחרי שהעלינו בוט אקו והצלחנו לתקשר איתו, אפשר לעבור לבוטים מעניינים יותר. בדוגמה הבאה נשדרג את בוט האקו כך שיחזיר את הטקסט ששלחנו לו בהודעה קולית. תוכלו להשתמש ב AWS Polly כדי לתרגם טקסט לקובץ קול, ואחר כך חפשו ב API של הספריה שבחרתם איך שולחים הודעה קולית.

3. בוט תזכורות

בכתיבת בוט אנחנו מקבלים במתנה את הטיפול בהתחברות וזיהוי משתמשים - כי טלגרם מזהה אותם בשבילנו. המשימה הבאה תהיה לכתוב בוט שמייצר רשימת תזכורות למשתמשים.

כל משתמש יוכל לשלוח לבוט הודעת "תזכיר לי" שתכיל את התאריך והשעה של התזכורת וטקסט התזכורת, והבוט ישלח חזרה הודעה בשעה שנבחרה. כדי לעשות את הפרויקט מעניין תוכלו לשמור את כל התזכורות בבסיס נתונים, ותוכלו לשחק עם פיענוח הפקודה ולתת גמישות בהבנת הפקודות - למשל "תזכיר לי לסגור את האש עוד 15 דקות" או "תזכיר לי להוציא את הכלב כל בוקר בשמונה".

4. בוט קורא רסס

אחרי שלמדתם מבוט התזכורות איך לשמור מידע למשתמשים ספציפיים ואיך לשלוח הודעה מתהליך רקע, נתקדם עוד צעד ונעקוב אחר פרסומים חדשים באינטרנט. כל משתמש בבוט יוכל לשלוח הודעת "הירשם ל" עם כתובת אתר והרישום יישמר בבסיס נתונים של הבוט. פעם ביום או כמה פעמים ביום הבוט יתעורר, יחפש כתבות חדשות בכל האתרים שאנשים רשומים אליהם וישלח לכל אחד את המאמרים החדשים מהאתרים שהוא רשום אליהם.

בשביל לעשות את הפיתוח מעניין תוכלו להשתמש ב Airflow כדי לנהל את תהליכי הרקע, ושימו לב לא לשלוח לכולם הודעות באותה שעה כדי לא לעבור את מגבלת ההודעות לדקה של טלגרם (כן יום אחד יהיו לבוט שלכם אלפי משתמשים אז צריך להיערך בהתאם). אם גיליתם מאמר שאלף משתמשים רוצים לקבל תצטרכו לשלוח אותו בצורה מדורגת.

5. בוט שמשחק איקס עיגול

עכשיו שהשתלטנו על בוטים, בסיסי נתונים ועבודה ברקע עדיין נשארה עוד יכולת מדליקה של בוטים בטלגרם, והיא הטיפול במשתמשים ש"מזכירים" את הבוט שלכם בשיחה. למשימה האחרונה נכתוב בוט שכשמזכירים אותו בשיחה הוא מתפרץ ושולח לוח משחק של איקס עיגול. כל משתמש בתורו מודיע לבוט איפה רוצה לשחק, והבוט ישלח הודעה כשאחד המשתמשים בשיחה מנצח.

שימו לב שהפעם לא צריך בסיס נתונים, ובמקום כדאי להשתמש במנגנוני ניהול ה Context של ספריית הבוטים שבחרתם. מיטיבי לכת כאן מוזמנים להחליף את המשחק או לאפשר לבוט לשחק מספר משחקים.