feat: implement TelegramClient core module (issue #31) #36

Merged
jihoson merged 1 commits from feature/issue-31-telegram-client into main 2026-02-04 21:30:50 +09:00
Collaborator

Summary

  • Implement TelegramClient class with graceful degradation
  • Add NotificationPriority enum (LOW/MEDIUM/HIGH/CRITICAL)
  • Implement LeakyBucket rate limiter (1 msg/sec)
  • Add 8 notification methods
  • Create comprehensive README with setup guide

Implementation Details

  • Follows NewsAPI pattern for optional APIs
  • Uses existing aiohttp dependency (no new dependencies)
  • Session management pattern from KISBroker
  • All API errors logged but never crash
  • Rate limiting prevents Telegram spam

Testing

  • Manual testing required (needs Telegram bot credentials)
  • Graceful degradation tested (works without credentials)
  • Full test suite coming in issue #32

🤖 Generated with Claude Code

## Summary - ✅ Implement TelegramClient class with graceful degradation - ✅ Add NotificationPriority enum (LOW/MEDIUM/HIGH/CRITICAL) - ✅ Implement LeakyBucket rate limiter (1 msg/sec) - ✅ Add 8 notification methods - ✅ Create comprehensive README with setup guide ## Implementation Details - Follows NewsAPI pattern for optional APIs - Uses existing aiohttp dependency (no new dependencies) - Session management pattern from KISBroker - All API errors logged but never crash - Rate limiting prevents Telegram spam ## Testing - Manual testing required (needs Telegram bot credentials) - Graceful degradation tested (works without credentials) - Full test suite coming in issue #32 ## Related Issues - Closes #31 - Part 1 of 5 for Telegram notification system - Next: Issue #32 (tests), #33 (config), #34 (main.py integration), #35 (docs) 🤖 Generated with [Claude Code](https://claude.com/claude-code)
agentson added 1 commit 2026-02-04 21:30:10 +09:00
feat: implement TelegramClient core module (issue #31)
Some checks failed
CI / test (pull_request) Has been cancelled
73e1d0a54e
Add TelegramClient for real-time trading notifications:
- NotificationPriority enum (LOW/MEDIUM/HIGH/CRITICAL)
- LeakyBucket rate limiter (1 msg/sec)
- 8 notification methods (trade, circuit breaker, fat finger, market open/close, system start/shutdown, errors)
- Graceful degradation (optional API, never crashes)
- Session management pattern from KISBroker
- Comprehensive README with setup guide and troubleshooting

Follows NewsAPI pattern for optional APIs.
Uses existing aiohttp dependency.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
jihoson merged commit 628a572c70 into main 2026-02-04 21:30:50 +09:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: jihoson/The-Ouroboros#36