How xf5201/pc28 works
This is a Telegram-operated, multi-user PC28 automated betting system. Users configure accounts, target chats and strategies through bot panels; the runtime collects draw results, triggers bets for running strategies, and settles records into profit and operational reporting. The principal flow is split between the crawler, strategy executor, Telegram account/session services and persistence. The tree indicates additional configuration, dashboard, log and notification capabilities; sampled excerpts do not establish all of their internal wiring, so those links are kept conservative.
Main entry points: strategy-executor.service.js Strategy executor · crawler.service.js Result crawler · handlers Bot handlers · index.js Runtime startup
Components 23
Telegram Bot
- Runtime startup
src/index.js - Bot handlers
src/bot/handlers - Panels and scenes
src/bot/panels - Login text flow
src/bot/handlers/login-text.handler.js - Notifications
src/services/notification.service.js
Accounts
- Account service
src/services/account.service.js - Session manager
src/services/session.manager.js
Betting Runtime
- Result crawler
src/services/crawler.service.js - Period service
src/services/period.service.js - Strategy executor
src/services/strategy-executor.service.js - Bet sender
src/services/bet-sender.service.js - Settlement service
src/services/settlement.service.js - Accounting service
src/services/accounting.service.js
Persistence
- SQLite database
src/db/connection.js - Account and config DAOs
src/db/account.dao.js - Bet and result DAOs
src/db/bet-record.dao.js - Profit log DAO
src/db/profit-log.dao.js - Panel context DAO
src/db/panel-context.dao.js
Betting Logic
- Strategy engine
src/core/strategy.engine.js - Odds engine
src/core/odds.engine.js
Other components
- Bot user
- Telegram API
- PC20 results API
Connections 31
- Bot user → Bot handlers: sends commands
- Runtime startup → Bot handlers: registers routes
- Runtime startup → Result crawler: starts crawler
- Runtime startup → Session manager: restores sessions
- Runtime startup → Telegram API: launches bot
- Bot handlers → Panels and scenes: renders panels
- Bot handlers → Account service: manages accounts
- Bot handlers → Strategy executor: controls strategies
- Bot handlers → Accounting service: requests reports
- Login text flow → Account service: submits credentials
- Login text flow → Panel context DAO: reads wizard state
- Account service → Telegram API: authenticates
- Account service → Session manager: initializes session
- Session manager → Account and config DAOs: recovers accounts
- Result crawler → PC20 results API: fetches results
- Result crawler → Bet and result DAOs: checks pending bets
- Result crawler → Settlement service: settles periods
- Result crawler → Strategy executor: triggers next bets
- Result crawler → Period service: uses period service
- Strategy executor → Strategy engine: calculates direction
- Strategy executor → Odds engine: calculates odds
- Strategy executor → Bet sender: schedules bet send
- Strategy executor → Account and config DAOs: reads strategy config
- Strategy executor → Bet and result DAOs: records bets
- Settlement service → Profit log DAO: records profit
- Accounting service → Profit log DAO: queries profit
- Notifications → Panels and scenes: updates panels
- Account and config DAOs → SQLite database: reads and writes
- Bet and result DAOs → SQLite database: reads and writes
- Profit log DAO → SQLite database: reads and writes
- Panel context DAO → SQLite database: reads and writes