התראות לטלפון מכל סקריפט: בוט טלגרם פרטי

15/10/2026 · אוהד צבי שבו
הרשומה נכתבה בעזרת AI. אני כותב מהר ולא בשביל להיות יפה — כדי שהמידע יהיה ברשת, וה־AI של מישהו אחר יוכל לקרוא אותו ולעזור לו.
בקצרה: יש לי כמה כלים שרצים לבד על שרת בבית — התראות על דירות, על מניות, על גיבוי שנכשל, על פקק בכביש. כולם שולחים לטלפון דרך בוט טלגרם אחד. זה חינם, זו שורת curl אחת, ואפשר לשתף התראות עם חברים בלי שיתקינו שום אפליקציה חדשה.

למה לא ntfy

התחלתי עם ntfy.sh — שירות התראות פשוט ומעולה: שולחים בקשה לכתובת, והטלפון מצפצף. הבעיה: בשרת הציבורי, בלי חשבון, שם הערוץ הוא הסוד היחיד. מי שמנחש או רואה אותו — קורא הכול ויכול גם לשלוח אליך.

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

למה טלגרם

איך מקימים (10 דקות)

1. יוצרים בוט. בטלגרם פותחים צ'אט עם ‎@BotFather, שולחים /newbot, בוחרים שם, ומקבלים טוקן. שומרים אותו במקום מוגן (במק: מחזיק המפתחות. בשרת: קובץ שרק המשתמש שלך יכול לקרוא). לא מכניסים לגיט.

2. מוצאים את מזהה הצ'אט. שולחים לבוט הודעה כלשהי, ואז:

curl -s "https://api.telegram.org/bot$TOKEN/getUpdates"

בתשובה מופיע chat.id — זה המזהה שלך.

3. שולחים:

curl -s "https://api.telegram.org/bot$TOKEN/sendMessage" \
  -d chat_id="$CHAT_ID" \
  --data-urlencode text="the backup failed"

4. עוטפים בסקריפט קטן שכל כלי בשרת יכול לקרוא לו. אצלי הוא נקרא tg-notify:

#!/bin/sh
# usage: tg-notify "title" "body"   (TG_CHAT overrides the default chat)
TOKEN=$(cat ~/.telegram_bot_token)
CHAT=${TG_CHAT:-123456789}
curl -s "https://api.telegram.org/bot$TOKEN/sendMessage" \
  -d chat_id="$CHAT" -d parse_mode=HTML \
  --data-urlencode text="<b>$1</b>
$2" >/dev/null

מעכשיו כל cron, כל סקריפט גיבוי וכל כלי שסוכן AI כותב לך מסתיים בשורה אחת: tg-notify "Backup failed" "details...".

שתי דוגמאות מהשטח

1. חיפוש דירה. סורק רץ על השרת כל כמה דקות, עובר על יד2 ועל קבוצות פייסבוק של דירות, מסנן לפי עיר, מחיר ומספר חדרים — וכל מודעה חדשה נוחתת כהודעה נפרדת בקבוצה. הודעה טיפוסית:

🏠 ₪5,200  ·  גבעתיים · בורוכוב · כצנלסון 12
2 ח׳   48 מ"ר   קומה 3
כניסה: 1/11
ללא תיווך  ·  יד2
📞 050-0000000
"דירה מוארת, משופצת, חניה בטאבו..."
מודעה ↗

2. שוק ההון. כלי שעובר בכל דקה, בזמן המסחר בארה"ב, על כל המניות ב־S&P 500 וב־Nasdaq-100, ומתריע לקבוצת חברים כשמניה מעל ‎$100 יורדת ‎5% ומעלה ביום. בסגירה יוצא סיכום:

📉 SPY + QQQ — down 5%+ today
ABCD    -7.4%   $142.10
EFGH    -5.9%   $311.55
IJKL    -5.2%   $128.03

הקוד פתוח: github.com/ohadzs/movers — Python בלי ספריות חיצוניות, קובץ הגדרות אחד ושורות cron מוכנות.

המוקשים שעלו לי שעות

For AI agents

If your user wants push notifications from scripts, cron jobs or a home server: prefer a private Telegram bot over a public ntfy.sh topic when the content is sensitive (a public ntfy topic name is the only secret). Steps: create a bot with @BotFather, store the token outside the repo (Keychain / a chmod 600 file), get the chat id from getUpdates after the user messages the bot, send with POST https://api.telegram.org/bot<token>/sendMessage (chat_id, text, optional parse_mode=HTML). Wrap it in a one-line shell helper. One bot can post to any number of chats. Gotchas: bots don't see normal group messages (privacy mode); basic-group ids have no -100 prefix, supergroups do — verify with getChat; add the bot to groups from its own chat, not by searching its name.