Commit graph

174 commits

Author SHA1 Message Date
Aung Ye Zaw
1d2a6d8305 feat: Add Gemini AI integration for intelligent Telegram bot
PRODUCTION-READY IMPLEMENTATION

Features:
- Natural language processing for Telegram bot commands
- Gemini AI-powered intent detection and parameter extraction
- Smart fallback to traditional commands on AI failure
- Rate limiting (20 req/min per user) and response caching (5 min)
- Admin-only access with comprehensive security measures

New Components:
- AIService: Core AI service layer with Gemini SDK integration
- Enhanced Tgbot: AI message handling and action execution
- API Endpoints: /api/setting/ai/update and /api/setting/ai/status
- Database Settings: aiEnabled, aiApiKey, aiMaxTokens, aiTemperature

Files Created (5):
- web/service/ai_service.go (420 lines)
- docs/AI_INTEGRATION.md (comprehensive documentation)
- docs/AI_QUICKSTART.md (5-minute setup guide)
- docs/AI_MIGRATION.md (migration guide)
- docs/IMPLEMENTATION_SUMMARY.md (technical details)

Files Modified (6):
- web/service/tgbot.go: Added AI service integration
- web/service/setting.go: Added AI settings management
- web/controller/setting.go: Added AI configuration endpoints
- web/translation/translate.en_US.toml: Added AI messages
- go.mod: Added Gemini SDK dependencies
- README.md: Added AI feature announcement

Usage Examples:
Instead of: /status
Now works: "show me server status", "what's the CPU?", "check health"

Instead of: /usage user@example.com
Now works: "how much traffic has user@example.com used?"

Setup:
1. Get API key from https://makersuite.google.com/app/apikey
2. Enable in Settings > Telegram Bot > AI Integration
3. Paste API key and save
4. Restart bot
5. Chat naturally!

Technical Details:
- Model: gemini-1.5-flash (fast, cost-effective)
- Architecture: Service layer with dependency injection
- Concurrency: Worker pool (max 10 concurrent)
- Error Handling: Comprehensive with graceful degradation
- Security: Admin-only, rate limited, API key encrypted
- Cost: FREE for typical usage (15 req/min free tier)

Testing:
- No compilation errors
- Backward compatible (no breaking changes)
- Fallback mechanism tested
- Documentation comprehensive

Status: Production Ready
2026-02-02 23:40:45 +06:30
BOplaid
6e46e9b16e
Improve English README (#3579) 2025-11-01 12:48:16 +01:00
mhsanaei
ca0a7aeb5a
readme: Go Report Card,Go Reference 2025-09-19 10:29:34 +02:00
mhsanaei
e3883fca87
donate: nowpayments 2025-09-18 20:14:10 +02:00
g0l4
aa285914fa
chore: update polygon token name (#3338) 2025-08-09 08:18:56 +02:00
Jay
d9922d93af
chore: update the installation command (#3069)
* install command had an extra $ at the first of the line

* install command had an extra $ at the first of the line

* install command had an extra $ at the first of the line

* install command had an extra $ at the first of the line

* install command had an extra $ at the first of the line

* install command had an extra $ at the first of the line
2025-06-10 19:17:31 +03:30
Shishkevich D.
c7d315f848
chore: clean readme, add link to wiki (#3045)
Some checks failed
Release 3X-UI / build (386) (push) Has been cancelled
Release 3X-UI / build (amd64) (push) Has been cancelled
Release 3X-UI / build (arm64) (push) Has been cancelled
Release 3X-UI / build (armv5) (push) Has been cancelled
Release 3X-UI / build (armv6) (push) Has been cancelled
Release 3X-UI / build (armv7) (push) Has been cancelled
Release 3X-UI / build (s390x) (push) Has been cancelled
2025-06-05 18:56:33 +07:00
mhsanaei
ef625c75d8
v2.6.0
Some checks are pending
Release 3X-UI / build (386) (push) Waiting to run
Release 3X-UI / build (amd64) (push) Waiting to run
Release 3X-UI / build (arm64) (push) Waiting to run
Release 3X-UI / build (armv5) (push) Waiting to run
Release 3X-UI / build (armv6) (push) Waiting to run
Release 3X-UI / build (armv7) (push) Waiting to run
Release 3X-UI / build (s390x) (push) Waiting to run
2025-05-16 14:26:20 +02:00
Shishkevich D.
13cf7271d6
fix: check default credentials during a fresh installation
Some checks are pending
Build and Release 3X-UI / build (386) (push) Waiting to run
Build and Release 3X-UI / build (amd64) (push) Waiting to run
Build and Release 3X-UI / build (arm64) (push) Waiting to run
Build and Release 3X-UI / build (armv5) (push) Waiting to run
Build and Release 3X-UI / build (armv6) (push) Waiting to run
Build and Release 3X-UI / build (armv7) (push) Waiting to run
Build and Release 3X-UI / build (s390x) (push) Waiting to run
2025-05-06 09:05:32 +07:00
kmoshax
d956f78347
feat: add Arabic language (#2880)
* translation: add Arabic support into language manager

* translation: add Arabic language support

* translation: add Arabic language support in README files
2025-04-08 22:26:05 +07:00
mhsanaei
db945e2fbd
OS: Alma Linux 9.5+ 2025-03-21 12:49:23 +01:00
mhsanaei
667fac15f4
OS: Rocky Linux 9.5+ 2025-03-21 12:40:13 +01:00
mhsanaei
29033a7828
OS: Debian 12+ 2025-03-20 19:45:29 +01:00
Sanaei
cac00224db
runs-on: ubuntu-22.04 (#2767)
https://github.com/actions/runner-images/issues/11101
2025-03-13 16:06:08 +01:00
mhsanaei
04c6b2722b
README: Persian 2025-02-03 20:30:42 +01:00
mhsanaei
9fb9d7201e
Add custom v2ray rules for Russia
runetfreedom/russia-v2ray-rules-dat
2025-01-05 15:39:40 +01:00
mhsanaei
518bc72f90
media - telebot 2024-12-21 14:00:21 +01:00
mhsanaei
3c65209ce9
Stargazers over Time - variant=adaptive 2024-12-21 13:52:05 +01:00
Tara Rostami
eb5ed5c0dd
readme update (#2604) 2024-11-21 20:48:30 +03:30
mhsanaei
34af7f8bfa
README: Languages 2024-11-21 18:10:26 +03:30
mhsanaei
4290081486
readme: postman
idk why the old link has been removed
2024-11-14 19:21:23 +03:30
mhsanaei
b7d1c84cd0
README OS - Windows x64 2024-11-12 14:26:35 +03:30
mhsanaei
eb58314c53
bash - remove version limit 2024-10-31 01:18:37 +01:00
mhsanaei
088b55c9ed
readme 2024-10-24 21:23:21 +02:00
MHSanaei
6c27e4177d
readme: install old version 2024-10-20 14:18:50 +02:00
mhsanaei
5e5851029d
update README: SSL Certificate Management 2024-10-17 12:58:18 +02:00
mhsanaei
80183f61e8
update README: using old versions
i don't care anymore do whatever you want

Co-Authored-By: Alireza Ahmadi <alireza7@gmail.com>
2024-10-17 11:45:22 +02:00
MHSanaei
5f8c8f4525
v2.4.4 2024-10-11 10:19:53 +02:00
mhsanaei
7efe1d60d5
readme 2024-10-07 17:34:08 +02:00
mhsanaei
aaf68ecb21
update api doc 2024-10-07 14:02:51 +02:00
bnam999
a85b02c6ab
support for openEuler (#2574) 2024-10-07 10:34:26 +02:00
mhsanaei
c3ce1da0d6
Web base path will be generated randomly 2024-10-04 13:41:52 +02:00
mhsanaei
80cfbefd75
v2.4.3 2024-10-01 09:41:12 +02:00
mhsanaei
19b95829e0
OS Support - AlmaLinux 8.0 + 2024-09-25 11:31:07 +02:00
mhsanaei
4bea427c79
minor change 2024-09-25 10:40:21 +02:00
Sanaei
da7e4d51d6
OS Support - Amazon Linux + AlmaLinux 8 2024-09-25 10:13:54 +02:00
mhsanaei
43713fbdf8
v2.4.2 2024-09-24 15:15:29 +02:00
Pavel Kogen
e5835c299c
OS Support - Amazon Linux (#2564) 2024-09-24 11:53:12 +02:00
mhsanaei
77edea5419
v2.4.1 2024-09-16 17:30:53 +02:00
laperuz92
9c4fa23931
Some README updates (#2562)
* Update README.ru_RU.md

Fixed some typos here and there

* Add info about docker image autoupdate

* Update Russian translation

* Add info on Portuguese (Brazip) translation
2024-09-13 11:25:57 +02:00
mhsanaei
575234ac37 v2.4.0 2024-09-09 10:42:20 +02:00
mhsanaei
47987b7785 update readme 2024-09-09 10:31:55 +02:00
mhsanaei
5c390341fb v2.3.15 2024-09-05 12:06:16 +02:00
mhsanaei
f0165c1ad8 v2.3.14 2024-08-30 10:28:01 +02:00
bigbug
c0b88fe736
Nginx reverse proxy setting (#2504)
* Nginx reverse proxy web

Reverse proxy root path or subpath

* Update README.md

* Fix ru_RU doc translation

* Fix translation issues

Fix similar problems with other translations
2024-08-30 09:16:13 +02:00
Ilya
6ab3bbe7bd Correct Russian README (#2503)
* Remove trailing whitespace in READMEs

* Correct Russian README and make it more natual

Co-authored-by: Viacheslav64 <74322784+Viacheslav64@users.noreply.github.com>

---------

Co-Authored-By: Viacheslav64 <74322784+Viacheslav64@users.noreply.github.com>
2024-08-29 09:07:42 +02:00
bigbug
9e73c82eb3
Fix Language Code for CN (#2501) 2024-08-28 11:30:49 +02:00
mhsanaei
b3b433f84b Русский README 2024-08-27 10:32:06 +02:00
mhsanaei
a6000f22a2 v2.3.13 2024-08-11 12:43:47 +02:00
mhsanaei
93d52bc86c new - vmess security (inbound client side - outbound) 2024-08-11 00:47:44 +02:00