Урок 10: Моніторинг у реальному часі та алерти

Навігація курсу: Хаб: Уроки

Попередній: Урок-09-Патерни-та-кластеризація | Наступний: Урок-11-AI-Інтеграція-Воркфлоу-OSINT


Слайди (Презентаційний текст)

Слайд 1 — Заголовок

Моніторинг у реальному часі та алерти
Без “екзотики” та без ліцензійних пасток


Слайд 2 — Навіщо моніторинг у реальному часі?

Реактивний OSINT — ви шукаєте коли вже пізно
Проактивний моніторинг — ви знаєте раніше за всіх

Сценарії:

  • Нова згадка клієнта/партнера у пресі → реакція до публікації
  • Поява витоку даних → реагування в години, не дні
  • Зміна наративу навколо об’єкту → рання ескалація
  • Нова активність відстежуваної особи → оновлення досьє

Слайд 3 — Піраміда інструментів (без дорогих ліцензій)

Рівень 4 (платний):  Crimewall, Recorded Future, Maltego Pro
───────────────────────────────────────────────────────
Рівень 3 ($10-50/міс): Brand24, Mention.com, Talkwalker
───────────────────────────────────────────────────────
Рівень 2 (умовно безкоштовний): Google Alerts, IFTTT
───────────────────────────────────────────────────────
Рівень 1 (повністю безкоштовний): RSS + Telegram + Python

Ціль курсу: Рівень 1-2 = 80% можливостей без ліцензійних пасток


Слайд 4 — RSS: основа безкоштовного моніторингу

RSS (Really Simple Syndication) — стандартний протокол підписки на оновлення

Що доступно через RSS (2025-2026):

  • Новинні сайти (99% мають RSS)
  • YouTube-канали: https://www.youtube.com/feeds/videos.xml?channel_id=ID
  • Reddit: https://reddit.com/r/ukraine.rss
  • Google News: https://news.google.com/rss/search?q=запит
  • GitHub: releases, commits, issues

Рекомендовані RSS-читачі: Inoreader (250 безкоштовних фідів), Feedly


Слайд 5 — Telegram як канал моніторингу

Telegram RSS конвертери:

  • RSS.app — конвертує Telegram-канал у RSS-фід
  • RSS.hub — відкритий інструмент, self-hosted варіант
  • FetchRSS.com — простий конвертер
# Підписатись на Telegram-канал через RSS:
1. Отримайте фід на RSS.app для @channel_name
2. Додайте у Inoreader
3. Налаштуйте keyword filter

# Або напряму через веб-версію:
t.me/s/channel_name → RSS через FetchRSS

Osavul — спеціалізована платформа для Telegram-моніторингу (150,000+ каналів)


Слайд 6 — Google Alerts і News

Google Alerts (alerts.google.com):

Запит: "Іван Петренко" OR "Ivan Petrenko"
Частота: раз на день (або миттєво для критичних)
Джерела: новини + блоги + веб
Доставка: email або RSS-фід

Google News API:

# GNews Python бібліотека
from gnews import GNews
 
google_news = GNews(language='uk', country='UA',
                    max_results=10, period='1d')
news = google_news.get_news("Іван Петренко")

Слайд 7 — Keyword Alerting: архітектура

Джерела → Збір → Фільтрація → Нормалізація → Алерт
   │          │         │            │            │
RSS, API   Cron/      Keyword    Дедуплік.   Email/
Telegram  Scheduler   match      та оцінка  Telegram/
Web       (Python)               достовірн. Slack

Базова Python реалізація:

import schedule, time
 
def check_and_alert():
    results = rss_reader.fetch_all()
    matches = keyword_filter(results, keywords=["TechUA", "Петренко"])
    for match in deduplicate(matches):
        send_telegram_alert(match)
 
schedule.every(30).minutes.do(check_and_alert)
while True:
    schedule.run_pending()
    time.sleep(60)

Слайд 8 — Моніторинг соцмереж: безкоштовні варіанти

ПлатформаБезкоштовний інструмент
Twitter/XTwitter Advanced Search (web)
RedditReddit Search API (безкоштовний)
YouTubeYouTube Data API (10,000 одиниць/день)
TelegramTelegram Bot API + RSS конвертери
GitHubGitHub Events API
NewsGNews, newsapi.org (100 запитів/день)

Слайд 9 — IFTTT і Zapier: без коду

IFTTT (If This Then That):

  • Google Alert → Telegram сповіщення
  • RSS новини → Google Sheets таблиця
  • Новий YouTube відео → email

Zapier (безкоштовний до 100 задач/місяць):

  • Складніші workflow
  • Більше інтеграцій

Make (колишній Integromat):

  • Найпотужніший no-code варіант
  • Безкоштовний до 1000 операцій/місяць

Слайд 10 — Управління алертами: уникнення перевантаження

Проблема: занадто багато алертів = аналітик ігнорує всі

Рішення — рівні пріоритетів:

🔴 КРИТИЧНИЙ  → миттєво (Telegram/SMS)
   Нова стаття в ЗМІ, витік даних, кримінальна згадка

🟡 ВАЖЛИВИЙ   → щоденний дайджест (email)
   Нові соцмережеві пости, зміна ролі, нова компанія

🟢 ФОНОВИЙ    → тижневий огляд (RSS)
   Загальні тематичні новини, слабко пов'язані згадки

Слайд 11 — Моніторинг темної мережі (базово)

Без “екзотики”:

  • HaveIBeenPwned — перевірка email на витоки (API безкоштовний)
  • BreachDirectory — пошук по компрометованим базам
  • DeHashed — платний але широкий пошук
  • Leak-Lookup — агрегатор витоків
import requests
 
def check_haveibeenpwned(email):
    headers = {"hibp-api-key": "ваш_ключ"}
    r = requests.get(
        f"https://haveibeenpwned.com/api/v3/breachedaccount/{email}",
        headers=headers
    )
    return r.json() if r.status_code == 200 else []

Слайд 12 — Дашборд моніторингу: практична архітектура

Рівень збору:
  RSS feeds → Inoreader або self-hosted Miniflux
  Telegram → RSS.app → той самий читач
  Google Alerts → email або RSS

Рівень фільтрації:
  Python скрипт з keyword matching + sentiment
  Дедуплікація за URL + контентом

Рівень виводу:
  🔴 Критично → Telegram-бот алерт
  🟡 Важливо → щоденний email дайджест
  🟢 Фоново → тижневий Obsidian-звіт

Нотатки доповідача

До слайду 3 — Піраміда інструментів

Акцент: 80% потреб покривається безкоштовними інструментами якщо правильно налаштувати. Дорогі платформи (Recorded Future, Crimewall) дають перевагу в масштабі і в доступі до закритих джерел — але для більшості задач аналітика вони не потрібні.

До слайду 5 — Telegram RSS

Telegram — найважливіший канал для пострадянського простору. Демонстрація: перетворіть публічний Telegram-канал у RSS прямо під час лекції через rss.app. Це займає 2 хвилини і студенти бачать результат.

До слайду 10 — Управління алертами

“Аналітик що отримує 500 алертів/день не читає жодного” — підкресліть. Правильне налаштування пріоритетів = різниця між корисним інструментом і шумом.


Домашнє завдання

Завдання 1 — Базова система моніторингу (обов’язкове)

Налаштуйте систему моніторингу для 1 суб’єкта або теми:

  1. Google Alert для імені суб’єкта → отримайте RSS-фід
  2. Додайте 3 новинних RSS-фіди у Inoreader
  3. Підпишіться на 2 Telegram-канали через RSS (RSS.app)
  4. Налаштуйте keyword filter у Inoreader

Здайте: скріншот налаштованого Inoreader + 3 перших алерти

Завдання 2 — HaveIBeenPwned (обов’язкове)

Перевірте (з дозволу власника або власний email):

  1. Через сайт hibp.com: скільки витоків?
  2. Через API (безкоштовний для 1 запиту/хвилину)
  3. Оцініть: яка інформація скомпрометована?
  4. Які OSINT-можливості відкриває ця інформація?

Завдання 3 — Побудова алерт-системи (бажане)

Побудуйте Python-скрипт що:

  1. Читає Google News RSS для заданого ключового слова
  2. Фільтрує результати за ключовими словами
  3. Надсилає сповіщення у Telegram-бот (Telegram Bot API, безкоштовний)

Матеріали для студентів

Ресурси

Telegram OSINT і моніторинг:

RSS і автоматизація:

  • World Monitor OSINT Dashboard — worldmonitor.app
  • Inoreader: inoreader.com (250 безкоштовних фідів)
  • RSS.app — конвертер Telegram у RSS

Шаблон налаштування моніторингу (роздаткове)

СУБ'ЄКТ МОНІТОРИНГУ: ________________
ДАТА ЗАПУСКУ: ________________

GOOGLE ALERTS
Запит 1: "___" (ім'я + прізвище в лапках)
Запит 2: "___" OR "___" (варіанти написання)
Запит 3: "___" site:linkedin.com (LinkedIn)
Частота: [миттєво / раз на день / раз на тиждень]
RSS-посилання: ________________

RSS ФІДИ (новини)
1. ________________ (джерело: ___)
2. ________________ (джерело: ___)
3. ________________ (джерело: ___)

TELEGRAM КАНАЛИ ЧЕРЕЗ RSS
1. @_______________ → RSS: ________________
2. @_______________ → RSS: ________________

ПРІОРИТЕТИ АЛЕРТІВ
🔴 Критично: ___________________
🟡 Важливо: ____________________
🟢 Фоново: _____________________

ПРОПУЩЕНИЙ КОНТЕНТ (що НЕ відстежується)
- _____________________ (причина: ___)

← Урок-09-Патерни-та-кластеризація | Наступний урок: Урок-11-AI-Інтеграція-Воркфлоу-OSINT →