ID: jchat_tgnotify
Name: jChat Telegram Уведомления
Name_EN: jChat Telegram Notifications
Version: 1.0.0
Acts: index
File: jchat_tgnotify.php
Config: config.php
Install: install.php
Deinstall: uninstall.php
Type: plugin
Description: Надстройка для jChat, отправляющая уведомления администратору в Telegram о новых сообщениях в чате. Поддерживает фильтры: только гости, первое сообщение за сессию, антифлуд защита.
Description_EN: jChat add-on that sends Telegram notifications to admin about new chat messages. Supports filters: guests only, first message per session, anti-flood protection.
Author: GitHub Copilot
Title: jChat → Telegram
Information: Интеграция jChat с Telegram Bot API для мгновенных уведомлений
Chat Telegram Notifications Plugin v1.0
Плагин-надстройка для jChat, добавляющая уведомления в Telegram о новых сообщениях в чате.
Возможности:
- Отправка уведомлений администратору в Telegram при новых сообщениях в чате
- Фильтр "только гости" - уведомлять только о сообщениях от незарегистрированных пользователей
- Фильтр "первое сообщение" - уведомлять только о первом сообщении пользователя за сессию
- Антифлуд защита - настраиваемый интервал между уведомлениями
- Хранение состояния через сессии или cookies
Установка:
1. Скопируйте папку jchat_tgnotify в /engine/plugins/
2. Установите плагин через админ-панель NGCMS
3. Создайте бота в Telegram через @BotFather и получите токен
4. Узнайте свой Chat ID (через @userinfobot)
5. Настройте плагин в админ-панели: Плагины → jChat Telegram Notifications
Рекомендуемые настройки:
- Включить уведомления: Да
- Антифлуд: 20 секунд
- Только первое сообщение за сессию: Да
- Только гости: по желанию (если хотите реагировать только на новых посетителей)
📋 Что было сделано:
1. Создан плагин jchat_tgnotify
- ✅ Полностью соответствует стандартам NGCMS
- ✅ Интеграция с jChat через хук
- ✅ Гибкие фильтры уведомлений
- ✅ Антифлуд защита
- ✅ Локализация на русском
2. Структура плагина:
engine/plugins/jchat_tgnotify/
├── jchat_tgnotify.php # Основная логика
├── config.php # Настройки в админке
├── install.php # Установка
├── uninstall.php # Удаление
├── version # Метаданные
├── readme # Описание
├── history # История версий
├── SETUP_GUIDE.md # Руководство
└── lang/russian/
└── main.ini # Локализация
```
3. Интеграция в jChat:
- Модифицирован `/engine/plugins/jchat/jchat.php`
- Добавлен вызов уведомлений после сохранения сообщения
---
⚙️ Текущие настройки (рекомендуемые):
| Параметр | Значение | Назначение |
| ----------------- ----| ---------------- | -------------------------------- |
| **Включено** | ✅ Да | Уведомления активны |
| **Bot Token** | ✅ Настроен | Токен от @BotFather |
| **Chat ID** | ✅ Настроен | ID для уведомлений |
| **Только гости** | ⚙️ На выбор | Фильтр незарегистрированных |
| **Только первое** | ✅ Да | Одно уведомление за сессию |
| **Антифлуд** | 20 сек | Интервал между уведомлениями |
**Изменить:** Админка → Плагины → jchat_tgnotify → Конфигурация
---
📱 Формат уведомления:
```
🟦 jChat: новое сообщение
👤 Автор: Гость123
🕒 Время: 2025-12-15 14:30:45
🌐 IP: 192.168.1.100
🔗 Страница:
https://yoursite.ru/💬 Здравствуйте, можно задать вопрос?
🔧 Управление фильтрами:
"Только гости" - кому отправлять
- **ВКЛ** → Только от незарегистрированных пользователей
- **ВЫКЛ** → От всех (гости + зарегистрированные)
"Только первое сообщение" - как часто
- **ВКЛ** → Одно уведомление за сессию от посетителя
- **ВЫКЛ** → Каждое сообщение (может быть много!)
"Антифлуд" - интервал
- **0** → Без ограничений (не рекомендуется)
- **20-30** → Оптимально
- **60+** → Редкие уведомления
---
💡 Рекомендации:
Для минимума уведомлений:
```
✅ Только гости: Да
✅ Только первое сообщение: Да
✅ Антифлуд: 30 секунд
```
Для всех сообщений:
```
❌ Только гости: Нет
❌ Только первое сообщение: Нет
✅ Антифлуд: 10 секунд (защита от флуда)
```
Для мониторинга новых посетителей:
```
✅ Только гости: Да
✅ Только первое сообщение: Да
✅ Антифлуд: 0 (выкл)
```
---
🛠️ Техническая информация:
Как работает:
1. Посетитель пишет в jChat
2. jChat сохраняет в БД
3. Вызывается `jchat_tgnotify_send()`
4. Проверяются фильтры
5. Отправка через Telegram Bot API
6. Вы получаете уведомление
API используемые:
- `extra_get_param()` - чтение настроек NGCMS
- `extra_set_param()` - сохранение настроек
- Telegram Bot API `sendMessage`
- PHP cURL или file_get_contents
Требования:
- PHP 7.0+
- jChat установлен
- Интернет-соединение к api.telegram.org
🔄 Обновление плагина:
Если понадобится обновить:
1. Сделайте резервную копию настроек (Token, Chat ID)
2. Удалите плагин через админку
3. Установите новую версию
4. Введите настройки заново
❓ Часто задаваемые вопросы:
**Q: Можно ли отправлять в несколько чатов?**
A: Нет, только в один Chat ID. Но можно создать группу и добавить туда бота.
**Q: Как отключить уведомления временно?**
A: Настройки → Включить уведомления → Нет
**Q: Можно изменить текст уведомления?**
A: Да, отредактируйте функцию `jchat_tgnotify_send()` в файле `jchat_tgnotify.php`
**Q: Работает ли с несколькими сайтами?**
A: Да, создайте отдельного бота для каждого сайта.
📞 Поддержка:
При проблемах проверьте:
1. Плагин установлен и включен
2. Token и Chat ID правильные
3. Боту отправлен `/start` в Telegram
4. Сервер имеет доступ к api.telegram.org
5. Проверьте фильтры (могут блокировать)
🎯 **Плагин готов к использованию!** Приятной работы! 🚀
Скачать:jchat_tgnotify_eace1a4e.zip