16 Commits

Author SHA1 Message Date
yan 6fe34be35f Update README.md 2026-03-27 10:14:09 +08:00
yan e646c3263a Update README.md 2026-03-27 10:12:49 +08:00
yanguo0905 8022c8b6b2 Update README.md 2026-03-24 17:05:46 +08:00
yanguo0905 08e5a767a9 Update README.md 2026-03-24 17:03:02 +08:00
yanguo0905 043b31814d Update README.md 2026-03-24 17:02:11 +08:00
yanguo0905 6e1a70b787 Update README.md 2026-03-24 16:30:14 +08:00
yanguo0905 5d9c60e354 Merge pull request #2 from yanguo0905/codex/remove-license-files-and-refactor-project-tho95l
Disable built-in license checks, add compatibility shims, and update docs/docker deploy
2026-03-24 16:25:44 +08:00
yanguo0905 a9c57dc0f7 docs: rewrite README sections to clarify no-license deployment 2026-03-24 16:25:16 +08:00
yanguo0905 c4ccd93de3 Merge pull request #1 from yanguo0905/codex/remove-license-files-and-refactor-project
Remove runtime license enforcement and add no-op compatibility shims
2026-03-24 15:28:18 +08:00
yanguo0905 f6bc2471da refactor: reintroduce license modules as no-op compatibility shims 2026-03-24 15:24:51 +08:00
GUGEGEBAIDU a53d3bbbce Update contact link in README.md 2025-12-02 14:16:17 +08:00
GUGEGEBAIDU f714020333 Fix contact link in README.md
Updated the contact link in the README.
2025-11-08 04:25:01 +08:00
谷歌个百度 caae73e83c Remove non-existent features from documentation (refund, VIP, tags, export, etc.) 2025-10-18 16:45:09 +08:00
谷歌个百度 d96c06c472 Remove non-existent refund feature from description 2025-10-18 16:42:36 +08:00
谷歌个百度 ba7ec28dc0 Add comprehensive legal protection: disclaimer, terms of service, and license clarification 2025-10-18 16:39:12 +08:00
谷歌个百度 16c4def753 Add comprehensive optimizations: badges, English README, issue templates 2025-10-18 16:20:20 +08:00
18 changed files with 1014 additions and 391 deletions
+47
View File
@@ -0,0 +1,47 @@
---
name: Bug Report 🐛
about: Report a bug to help us improve
title: '[BUG] '
labels: bug
assignees: ''
---
## 🐛 Bug Description
A clear and concise description of what the bug is.
## 📋 Steps to Reproduce
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
## ✅ Expected Behavior
A clear and concise description of what you expected to happen.
## ❌ Actual Behavior
A clear and concise description of what actually happened.
## 📸 Screenshots
If applicable, add screenshots to help explain your problem.
## 🖥️ Environment
- OS: [e.g. Ubuntu 22.04]
- Python Version: [e.g. 3.11]
- Docker Version: [e.g. 24.0.0]
- Bot Version: [e.g. v1.0.0]
## 📝 Additional Context
Add any other context about the problem here.
## 🔒 License Information
- Customer ID: [e.g. M0001]
- License Status: [Valid/Expired]
- Expiration Date: [e.g. 2025-02-17]
+43
View File
@@ -0,0 +1,43 @@
---
name: Feature Request 💡
about: Suggest an idea for this project
title: '[FEATURE] '
labels: enhancement
assignees: ''
---
## 💡 Feature Description
A clear and concise description of the feature you'd like to see.
## 🎯 Problem Statement
Is your feature request related to a problem? Please describe.
Example: I'm always frustrated when [...]
## 💭 Proposed Solution
A clear and concise description of what you want to happen.
## 🔄 Alternatives Considered
A clear and concise description of any alternative solutions or features you've considered.
## 📊 Use Case
Describe the use case for this feature. Who would benefit from it?
## 📸 Mockups/Examples
If applicable, add mockups or examples to help explain your feature.
## 📝 Additional Context
Add any other context or screenshots about the feature request here.
## 💰 Willingness to Pay
Would you be willing to sponsor this feature?
- [ ] Yes, I'd like to discuss pricing
- [ ] No, but I think it would be valuable
- [ ] Not sure
+37
View File
@@ -0,0 +1,37 @@
---
name: Question ❓
about: Ask a question about the project
title: '[QUESTION] '
labels: question
assignees: ''
---
## ❓ Question
A clear and concise question.
## 📋 Context
Provide any relevant context or background information.
## 🔍 What I've Tried
Describe what you've already tried to solve this issue.
## 📚 Documentation Checked
- [ ] I've read the README
- [ ] I've checked the FAQ
- [ ] I've searched existing issues
- [ ] I've checked the documentation
## 🖥️ Environment (if relevant)
- OS: [e.g. Ubuntu 22.04]
- Python Version: [e.g. 3.11]
- Docker Version: [e.g. 24.0.0]
- Bot Version: [e.g. v1.0.0]
## 📝 Additional Information
Any other information that might be helpful.
+411
View File
@@ -0,0 +1,411 @@
# 🤖 Fakabot - Professional Telegram Auto-Delivery Bot
[![GitHub release](https://img.shields.io/github/v/release/GUGEGEBAIDU/fakabot?style=flat-square)](https://github.com/GUGEGEBAIDU/fakabot/releases)
[![GitHub stars](https://img.shields.io/github/stars/GUGEGEBAIDU/fakabot?style=flat-square)](https://github.com/GUGEGEBAIDU/fakabot/stargazers)
[![GitHub forks](https://img.shields.io/github/forks/GUGEGEBAIDU/fakabot?style=flat-square)](https://github.com/GUGEGEBAIDU/fakabot/network)
[![GitHub issues](https://img.shields.io/github/issues/GUGEGEBAIDU/fakabot?style=flat-square)](https://github.com/GUGEGEBAIDU/fakabot/issues)
[![License](https://img.shields.io/badge/license-Commercial-blue.svg?style=flat-square)]()
[![Python](https://img.shields.io/badge/python-3.11-blue.svg?style=flat-square)]()
[![Telegram](https://img.shields.io/badge/Telegram-Bot-blue.svg?style=flat-square)](https://t.me/sonhshu)
[![Docker](https://img.shields.io/badge/docker-ready-blue.svg?style=flat-square)]()
<div align="center">
### 🚀 Automated Delivery System | Multiple Payment Methods | Redis High-Performance Cache
💳 Alipay · WeChat · USDT | 🐳 Docker One-Click Deploy | ⚡ 100x Performance Boost
**Use Cases**: Digital Products · Online Courses · Software Licenses · Memberships
🎬 [Live Demo](https://t.me/fakawan_bot) · 📱 [Contact](https://t.me/sonhshu) · 📖 [Documentation](#-quick-start)
[中文文档](README.md) | English
</div>
---
## ⚠️ Important Notice
The current version has removed built-in authorization checks, so **`license.key` is no longer required** for deployment.
- ✅ Startup no longer depends on license files
- ✅ Core business flows (payment/order/delivery) remain unchanged
- ✅ Older license-related setup steps in this document are legacy notes
---
## ✨ Core Features
### 💳 Payment System
Supports **4 mainstream payment methods**:
| Payment Method | Features | Settlement Speed |
|----------------|----------|------------------|
| **Alipay** | Face-to-face payment, QR code | Real-time |
| **WeChat Pay** | Native payment, QR code | Real-time |
| **USDT (TOKEN188)** | TRC20/ERC20, on-chain verification | 1-3 minutes |
| **USDT (Lemon Pay)** | Multi-chain support, low fees | Seconds |
**Features**:
- ✅ Automatic payment confirmation · ✅ Payment callback handling · ✅ Order status sync · ✅ Payment timeout handling
### 🎯 Auto-Delivery System
**Delivery Methods**:
- 📝 Text content (activation codes, accounts, etc.)
- 🔗 Download links (files, resources, etc.)
- 👥 Group invitations (Telegram groups, channels)
**Features**:
- ⚡ Instant delivery after payment
- 🔄 Automatic retry on failure
- 📊 Delivery record tracking
- 🔒 One-time invitation links (auto-revoke after use)
### ⚡ Performance Optimization
**Redis Cache System**:
- 💾 Product info cache (5 min)
- ⚙️ Config cache (10 min)
- 👤 User session cache (1 hour)
- 📈 100x performance improvement
**Rate Limiting**:
- 🛡️ User payment limit (5 times/5 min)
- 🚫 IP callback limit (100 times/min)
- ⏱️ User command limit (20 times/min)
### 📊 Order Management
**Admin Features**:
- 📋 Order list (all, pending, completed, failed)
- 🔍 Order search (by ID, user, product)
- 💰 Order statistics (amount, quantity)
### 👥 User Management
**User System**:
- 👤 User profiles (ID, username, registration time)
- 📊 Purchase history (order count, total amount)
### 🛍️ Product Management
**Product Features**:
- Add/edit/delete products
- 📦 Inventory management (auto-deduct, low stock alert)
- 💰 Price management
- 📊 Sales statistics
### 🎨 Admin Panel
**Management Interface**:
- 📊 Dashboard (today's orders, revenue, users)
- 📈 Monthly statistics
- ⚙️ System settings (payment config, notification config)
- 🔔 Message notifications
---
## 🚀 Quick Start
### 🎉 First-Time Setup
> 💡 **For**: First-time deployment after purchasing license
#### Step 1: Clone Project
```bash
git clone https://github.com/GUGEGEBAIDU/fakabot.git
cd fakabot
```
#### Step 2: Configure
```bash
# Copy config example
cp config.json.example config.json
# Edit config
vim config.json
```
**Required fields**:
```json
{
"BOT_TOKEN": "Your Bot Token", // Get from @BotFather
"ADMIN_ID": 123456789, // Your Telegram ID (from @userinfobot)
"DOMAIN": "https://yourdomain.com", // Optional
"PAYMENTS": {
// Payment configuration
}
}
```
**Get Bot Token**:
1. Find [@BotFather](https://t.me/BotFather)
2. Send `/newbot`
3. Follow prompts to create bot
4. Get Token
**Get Admin ID**:
1. Find [@userinfobot](https://t.me/userinfobot)
2. Send any message
3. Get your ID
#### Step 3: Save License Key (Important!)
```bash
# Paste your complete license key
echo "your_license_key" > license.key
# Example:
echo "M0001|1738310400|abc123def456..." > license.key
```
**Notes**:
- ✅ License key must be complete, no extra spaces or newlines
- ✅ Filename must be `license.key`
- ✅ File location in project root directory
#### Step 4: Start Service
```bash
# Start with Docker Compose
docker-compose up -d
```
#### Step 5: Verify
```bash
# Check logs
docker-compose logs -f
# Should see:
# ============================================================
# ✅ License verified
# 📝 Customer ID: M0001
# 📅 Expiration: 2025-02-17
# ⏰ Days remaining: 30 days
# ============================================================
```
#### Step 6: Test Bot
Search for your bot on Telegram, send `/start`
**If you see welcome message, deployment successful!** 🎉
---
### 🔄 Renewal Guide
> 💡 **For**: License expiring or expired, need renewal
**Important: Renewal only requires replacing license key, all data will be preserved!**
#### Step 1: Contact for Renewal
Contact [@sonhshu](https://t.me/sonhshu), choose renewal plan:
| Plan | Price | Discount |
|------|-------|----------|
| Monthly | 50 USDT | - |
| Quarterly | 135 USDT | 10% |
| Yearly | 510 USDT | 15% |
#### Step 2: Get New License
After payment, you'll receive a file: `renewal_license_M0001_xxx.txt`
File content example:
```
Customer ID: M0001
New License: M0001|1740902400|def456...
Renewal Period: 30 days
New Expiration: 2025-03-19
```
#### Step 3: SSH to Server
```bash
ssh root@your_server_ip
```
#### Step 4: Navigate to Project
```bash
cd fakabot
```
#### Step 5: Replace License
```bash
# Method 1: Direct input
echo "new_license_key" > license.key
# Example:
echo "M0001|1740902400|def456..." > license.key
# Method 2: Use editor
vim license.key
# Delete old license, paste new license, save and exit
```
#### Step 6: Restart Service
```bash
docker-compose restart
```
#### Step 7: Verify Renewal
```bash
# Check logs
docker-compose logs -f
# Should see:
# ============================================================
# ✅ License verified
# 📝 Customer ID: M0001
# 📅 Expiration: 2025-03-19 ← New expiration date
# ⏰ Days remaining: 30 days
# ============================================================
```
**If you see new expiration date, renewal successful!** 🎉
#### ✅ Data Preservation After Renewal
**All data preserved**:
- ✅ All product configurations
- ✅ All order records
- ✅ All customer data
- ✅ config.json settings
- ✅ Database files
**No need to reconfigure anything!**
---
## 💰 Subscription Pricing
### Purchase Options
| Plan | Duration | Price | Discount | Best For |
|------|----------|-------|----------|----------|
| **Monthly** | 30 days | 50 USDT | - | Trial users |
| **Quarterly** | 90 days | 135 USDT | 10% off | Regular users |
| **Yearly** | 365 days | 510 USDT | 15% off | Long-term users |
### How to Purchase
1. **Contact Customer Service**
- Telegram: [@sonhshu](https://t.me/sonhshu)
- Provide your requirements
2. **Make Payment**
- USDT (TRC20): `TDZM5DSSq8SrB8QTSBHyNwrcTswtCjKs9t`
- Provide transaction hash
3. **Receive License**
- Get license key file within 5 minutes
- Includes complete deployment guide
4. **Deploy and Use**
- Follow documentation to deploy
- Start earning immediately
---
## 📞 Contact Us
### Customer Service
- **Telegram**: [@sonhshu](https://t.me/sonhshu)
- **Demo Bot**: [@fakawan_bot](https://t.me/fakawan_bot)
- **Response Time**: 24/7 online
### Technical Support
- **GitHub Issues**: [Submit Issue](https://github.com/GUGEGEBAIDU/fakabot/issues)
- **Documentation**: [Complete Documentation](https://github.com/GUGEGEBAIDU/fakabot#readme)
---
## ⚠️ Disclaimer
**This project is for learning and legal commercial use only.**
### By using this project, you agree to:
- ✅ Comply with the laws and regulations of your country/region
- ✅ Use only for legal commercial purposes
- ✅ Take full responsibility for any consequences
- ✅ Not infringe on others' legal rights
### Developer Statement:
- 📢 Developers are not responsible for users' usage behavior
- 📢 Not liable for any losses caused by using this project
- 📢 Reserve the right to terminate service and revoke licenses at any time
- 📢 Reserve the right to refuse service to any user
### Strictly Prohibited Uses:
- ❌ Gambling, pornography, or illegal content sales
- ❌ Distribution of content that infringes intellectual property
- ❌ Fraud, pyramid schemes, or illegal activities
- ❌ Money laundering or illegal fund transfers
- ❌ Other activities that violate laws and regulations
### Legal Use Examples:
- ✅ Online courses and educational content sales
- ✅ Legitimate software license sales
- ✅ Membership subscription services
- ✅ Digital art and music sales
- ✅ E-books and document sales
**If users are found using this project for illegal purposes, developers will immediately terminate service and cooperate with relevant authorities.**
---
## 📄 License
**Commercial License**
This project uses a commercial license:
### Allowed:
- ✅ Personal learning and research
- ✅ Legal commercial use after purchasing license
- ✅ Modification and customization within license scope
### Prohibited:
- ❌ Commercial use without authorization
- ❌ Reselling or distributing license keys
- ❌ Removing or modifying the authorization system
- ❌ Use for any illegal purposes
### License Terms:
- License keys are for purchaser's personal use only
- Non-transferable, non-rentable, non-shareable
- Violation of license agreement will result in immediate termination
- Developers reserve the right to pursue legal action
**Copyright © 2025 Fakabot Team. All rights reserved.**
See [Terms of Service](TERMS_OF_SERVICE.md) for details.
---
<div align="center">
Made with ❤️ by Fakabot Team
[Get Started](#-quick-start) · [View Demo](https://t.me/fakawan_bot) · [Contact](https://t.me/sonhshu)
</div>
+153 -199
View File
@@ -1,9 +1,13 @@
# 🤖 Fakabot - 专业的 Telegram 自动发卡机器人
# 🤖 Fakabot - 专业的 Telegram 自动发卡机器人(破解版、无需授权码)
[![License](https://img.shields.io/badge/license-Commercial-blue.svg)]()
[![Python](https://img.shields.io/badge/python-3.11-blue.svg)]()
[![Telegram](https://img.shields.io/badge/Telegram-Bot-blue.svg)](https://t.me/sonhshu)
[![Docker](https://img.shields.io/badge/docker-ready-blue.svg)]()
[![GitHub release](https://img.shields.io/github/v/release/yanguo888/fakabot?style=flat-square)](https://github.com/yanguo888/fakabot/releases)
[![GitHub stars](https://img.shields.io/github/stars/yanguo888/fakabot?style=flat-square)](https://github.com/yanguo888/fakabot/stargazers)
[![GitHub forks](https://img.shields.io/github/forks/yanguo888/fakabot?style=flat-square)](https://github.com/yanguo888/fakabot/network)
[![GitHub issues](https://img.shields.io/github/issues/yanguo888/fakabot?style=flat-square)](https://github.com/yanguo888/fakabot/issues)
[![License](https://img.shields.io/badge/license-Commercial-blue.svg?style=flat-square)]()
[![Python](https://img.shields.io/badge/python-3.11-blue.svg?style=flat-square)]()
[![Telegram](https://img.shields.io/badge/Telegram-Bot-blue.svg?style=flat-square)](https://t.me/sonhshu)
[![Docker](https://img.shields.io/badge/docker-ready-blue.svg?style=flat-square)]()
<div align="center">
@@ -11,9 +15,11 @@
💳 支付宝 · 微信 · USDT | 🐳 Docker 一键部署 | ⚡ 性能提升 100 倍
**适用场景**:知识付费 · 虚拟商品 · 在线课程 · 软件授权 · 会员订阅
**适用场景**:知识付费 · 虚拟商品 · 在线课程 · 软件交付 · 会员服务
🎬 [在线演示](https://t.me/fakawan_bot) · 📱 [联系客服](https://t.me/sonhshu) · 📖 [完整文档](#-快速开始)
🎬 [在线演示](https://t.me/) · 📱 [联系客服](https://t.me/) · 📖 [完整文档](#-快速开始)
中文文档 | [English](README.en.md)
</div>
@@ -21,12 +27,11 @@
## ⚠️ 重要说明
本项目需要**授权码**才能运行。代码已内置授权验证系统,无法绕过
当前版本已移除内置授权校验逻辑,部署时**不再需要 `license.key`**
-授权码采用签名验证,无法伪造
-到期前 7 天自动提醒
-到期后自动停止运行
- ✅ 支持远程续费,无需重新部署
-无需授权文件即可启动
-原有支付、订单、发货等业务流程保持不变
-历史文档中涉及授权码的步骤属于旧版本说明
---
@@ -41,7 +46,7 @@
| **支付宝** | 当面付、扫码支付 | 实时 |
| **微信支付** | Native 支付、扫码 | 实时 |
| **USDT (TOKEN188)** | TRC20/ERC20、链上验证 | 1-3 分钟 |
| **USDT (柠檬支付)** | 多链支持、低手续费 | 秒级 |
| **USDT ** | 多链支持、低手续费 | 秒级 |
**特性**
- ✅ 自动到账确认 · ✅ 支付回调处理 · ✅ 订单状态同步 · ✅ 支付超时处理
@@ -112,9 +117,8 @@
</td>
<td width="50%">
- 🔄 订单状态(待支付/已支付/已完成/已退款
- 💰 订单统计(金额/数量/趋势
- 📊 数据导出(Excel/CSV
- 🔄 订单状态(待支付/已支付/已完成/已取消
- 💰 订单统计(金额/数量)
</td>
</tr>
@@ -125,10 +129,7 @@
强大的用户管理功能:
**用户信息**
- 👤 用户列表 · 📊 用户统计 · 💰 消费记录 · 📈 用户画像
**用户操作**
- 🚫 黑名单管理 · 👑 VIP 会员 · 💬 用户标签 · 📢 消息推送
- 👤 用户列表 · 📊 用户统计 · 💰 消费记录
### 🛍️ 商品管理
@@ -140,22 +141,20 @@
**库存管理**
- 📥 批量导入卡密 · 📊 库存统计 · ⚠️ 库存预警 · 🔄 自动补货提醒
**商品分类**
- 📁 分类管理 · 🏷️ 标签系统 · 🔝 排序设置 · 👁️ 显示/隐藏
### 🎨 管理后台
专业的管理后台界面:
**数据统计**
- 📊 今日数据(订单/收入/用户) · 📈 本月数据(趋势图表)
- 💰 总收入统计 · 👥 用户增长曲线
- 📊 今日数据(订单/收入/用户)
- 📈 本月数据统计
- 💰 总收入统计
**快速操作**
- ⚡ 一键发货 · 💸 一键退款 · 📢 批量通知 · 🔄 数据刷新
- ⚡ 一键发货 · 📢 批量通知 · 🔄 数据刷新
**系统设置**
- ⚙️ 基础配置 · 💳 支付配置 · 📧 通知配置 · 🎨 界面定制
- ⚙️ 基础配置 · 💳 支付配置 · 📧 通知配置
---
@@ -163,12 +162,12 @@
### 🎉 首次使用教程
> 💡 **适用于**刚购买授权码,第一次部署机器人
> 💡 **适用于**:第一次部署机器人(免授权版本)
#### 第 1 步:克隆项目
```bash
git clone https://github.com/GUGEGEBAIDU/fakabot.git
git clone https://github.com/yanguo888/fakabot.git
cd fakabot
```
@@ -206,44 +205,23 @@ vim config.json
2. 发送任意消息
3. 获取你的 ID
#### 第 3 步:保存授权码(重要!)
#### 第 3 步:启动服务
```bash
# 把授权码完整复制进去
echo "你的授权码" > license.key
# 示例:
echo "M0001|1738310400|abc123def456..." > license.key
# 使用 Docker Compose 启动(兼容新旧命令)
docker compose up -d || docker-compose up -d
```
**注意**
- ✅ 授权码必须完整,不要有多余的空格或换行
- ✅ 文件名必须是 `license.key`
- ✅ 文件位置在项目根目录
#### 第 4 步:启动服务
```bash
# 使用 Docker Compose 启动
docker-compose up -d
```
#### 第 5 步:验证运行
#### 第 4 步:验证运行
```bash
# 查看日志
docker-compose logs -f
docker compose logs -f bot || docker-compose logs -f bot
# 应该看到:
# ============================================================
# ✅ 授权验证通过
# 📝 客户ID: M0001
# 📅 到期时间: 2025-02-17
# ⏰ 剩余天数: 30 天
# ============================================================
# 看到机器人启动且无报错即可
```
#### 第 6 步:测试机器人
#### 第 5 步:测试机器人
在 Telegram 搜索你的机器人,发送 `/start`
@@ -251,93 +229,73 @@ docker-compose logs -f
---
### 🔄 续费教程
### 🧭 宝塔面板命令行一步一步安装(免授权版)
> 💡 **适用于**:授权码快到期或已过期,需要续费
> 适合你当前场景:已经在宝塔面板里打开「命令行」。
**重要:续费只需要替换授权码,所有数据都会保留!**
#### 第 1 步:联系客服续费
联系 [@sonhshu](https://t.me/sonhshu),选择续费套餐:
| 套餐 | 价格 | 优惠 |
|------|------|------|
| 月卡 | 50 USDT | - |
| 季卡 | 135 USDT | 10% |
| 年卡 | 510 USDT | 15% |
#### 第 2 步:支付并获取新授权码
支付后,你会收到一个文件:`续费授权码_M0001_xxx.txt`
文件内容示例:
```
客户ID: M0001
新授权码: M0001|1740902400|def456...
续费时长: 30 天
新到期日期: 2025-03-19
```
#### 第 3 步:SSH 登录服务器
#### 0)进入部署目录
```bash
ssh root@你的服务器IP
cd /www/wwwroot
```
#### 第 4 步:进入项目目录
#### 1)确认 Docker / Compose 可用
```bash
docker -v
docker compose version || docker-compose -v
```
#### 2)克隆项目(使用你的仓库)
```bash
git clone https://github.com/yanguo888/fakabot.git
cd fakabot
```
#### 第 5 步:替换授权码
#### 3)创建配置并填写参数
```bash
# 方法 1:直接输入
echo "新的授权码" > license.key
# 示例:
echo "M0001|1740902400|def456..." > license.key
# 方法 2:使用编辑器
vim license.key
# 删除旧授权码,粘贴新授权码,保存退出
cp config.json.example config.json
vim config.json
```
#### 第 6 步:重启服务
最少填写:
- `BOT_TOKEN`(从 @BotFather 获取)
- `ADMIN_ID`(从 @userinfobot 获取)
- 你实际使用的支付参数
#### 4)启动服务(无需授权文件)
```bash
docker-compose restart
docker compose up -d || docker-compose up -d
```
#### 第 7 步:验证续费
#### 5)查看运行日志
```bash
# 查看日志
docker-compose logs -f
# 应该看到:
# ============================================================
# ✅ 授权验证通过
# 📝 客户ID: M0001
# 📅 到期时间: 2025-03-19 ← 新的到期时间
# ⏰ 剩余天数: 30 天
# ============================================================
docker compose logs -f bot || docker-compose logs -f bot
```
**如果看到新的到期时间,说明续费成功!** 🎉
看到机器人启动且无报错后,`Ctrl + C` 退出日志。
#### ✅ 续费后数据保留情况
#### 6Telegram 验证
**以下数据全部保留**
- ✅ 所有商品配置
- ✅ 所有订单记录
- ✅ 所有客户数据
- ✅ config.json 配置
- ✅ 数据库文件
给机器人发送 `/start`,能收到欢迎消息即部署成功。
**不需要重新配置任何东西!**
#### 7)常用维护命令
```bash
# 重启
docker compose restart || docker-compose restart
# 查看容器状态
docker compose ps || docker-compose ps
# 更新代码并重建
git pull
docker compose up -d --build || docker-compose up -d --build
```
---
@@ -347,7 +305,7 @@ docker-compose logs -f
```bash
# 1. 克隆项目
git clone https://github.com/GUGEGEBAIDU/fakabot.git
git clone https://github.com/yanguo888/fakabot.git
cd fakabot
# 2. 复制配置文件
@@ -356,14 +314,11 @@ cp config.json.example config.json
# 3. 编辑配置(填写 Bot Token、管理员 ID 等)
vim config.json
# 4. 保存授权码
echo "你的授权码" > license.key
# 4. 一键启动
docker compose up -d || docker-compose up -d
# 5. 一键启动
docker-compose up -d
# 6. 查看日志
docker-compose logs -f
# 5. 查看日志
docker compose logs -f bot || docker-compose logs -f bot
```
**就这么简单!**
@@ -395,7 +350,7 @@ docker-compose ps
git pull && docker-compose up -d --build
# 备份数据
tar -czf backup.tar.gz data/ config.json license.key
tar -czf backup.tar.gz data/ config.json
```
---
@@ -412,11 +367,7 @@ tar -czf backup.tar.gz data/ config.json license.key
#### 部署步骤
**第 1 步:购买授权码**
联系客服:[@sonhshu](https://t.me/sonhshu)
**第 2 步:准备服务器**
**第 1 步:准备服务器**
推荐服务商:
- 阿里云轻量应用服务器(¥24/月)
@@ -426,18 +377,18 @@ tar -czf backup.tar.gz data/ config.json license.key
配置建议:1核2GB20GB 硬盘
**第 3 步:克隆项目**
**第 2 步:克隆项目**
```bash
# SSH 登录服务器
ssh root@你的服务器IP
# 克隆项目
git clone https://github.com/GUGEGEBAIDU/fakabot.git
git clone https://github.com/yanguo888/fakabot.git
cd fakabot
```
**第 4 步:安装依赖**
**第 3 步:安装依赖**
```bash
# 更新系统
@@ -455,7 +406,7 @@ systemctl start redis
systemctl enable redis
```
**第 5 步:配置机器人**
**第 4 步:配置机器人**
1. **创建 Telegram Bot**
- 找 [@BotFather](https://t.me/BotFather)
@@ -512,13 +463,7 @@ vim config.json
}
```
**第 6 步:保存授权码**
```bash
echo "你的授权码" > license.key
```
**第 7 步:启动机器人**
**第 5 步:启动机器人**
方式 A:直接运行(测试用)
@@ -568,16 +513,15 @@ systemctl enable fakabot
systemctl status fakabot
```
**第 8 步:验证运行**
**第 6 步:验证运行**
在 Telegram 搜索你的机器人,发送 `/start`
授权验证成功提示
启动成功提示(示例)
```
授权验证通过
📝 客户ID: C001
📅 到期时间: 2025-11-18
⏰ 剩余天数: 30 天
Bot 启动成功
✅ 数据库初始化完成
✅ 支付模块加载完成
```
---
@@ -970,45 +914,26 @@ crontab -e
---
## 💰 订阅价格
## 🧾 部署与维护说明
| 套餐 | 价格 | 优惠 | 推荐 |
|------|------|------|------|
| 月付 | 50 USDT/月 | - | 试用 ⭐ |
| 季付 | 135 USDT/季 | 10% | 推荐 ⭐⭐ |
| 年付 | 510 USDT/年 | 15% | 最划算 ⭐⭐⭐ |
### 购买方式
**联系客服**: [@sonhshu](https://t.me/sonhshu)
**支付方式**: USDT (TRC20)
```
TDZM5DSSq8SrB8QTSBHyNwrcTswtCjKs9t
```
> 💡 支付后请提供交易哈希和 Telegram 用户名,10 分钟内开通授权
- 当前版本为 **免授权运行**:不需要 `license.key`,也没有续费步骤。
- 若你看到旧文档里“授权码/续费/到期”相关内容,以本文档最新内容为准。
- 推荐优先使用 Docker Compose`docker compose`)部署,维护成本最低。
---
## ❓ 常见问题
### 购买相关
### 部署相关
**Q: 可以试用吗?**
A: 建议先购买月付(50 USDT)试用一个月,满意后再升级年付。首次购买 7 天内不满意可全额退款
**Q: 还需要授权码吗?**
A: 不需要。当前版本部署与运行均不依赖 `license.key`
**Q: 授权码会过期吗**
A: 是的,月付30天,季付90天,年付365天。到期前7天会自动提醒
**Q: 可以退款吗?**
A: 首次购买7天内不满意可申请全额退款。
**Q: 旧文档里出现授权码步骤怎么办**
A: 直接跳过即可;请以本 README 的“重要说明”和“快速开始”为准
**Q: 包含技术支持吗?**
A: 是的,所有订阅都包含技术支持,响应时间通常 1-24 小时
**Q: 续费如何操作?**
A: 联系客服,支付续费金额,获得新授权码,替换 license.key 文件即可。
A: 是,建议优先通过仓库 Issue 或你使用的交付渠道反馈问题
### 技术相关
@@ -1019,7 +944,7 @@ A: 最低 1核1GB,推荐 1核2GB。月费约 $5-10。
A: 不是必须的,但强烈推荐。域名可以配置 SSL,更安全。
**Q: 支持哪些支付方式?**
A: 机器人支持支付宝、微信、USDT (TOKEN188)、USDT (柠檬支付)。购买授权使用 USDT (TRC20)。
A: 机器人支持支付宝、微信、USDT (TOKEN188)、USDT (柠檬支付)。
**Q: 可以自定义界面吗?**
A: 可以,修改配置文件中的文案和按钮即可。
@@ -1033,9 +958,6 @@ A: 使用 SQLite 数据库,存储在 fakabot.db 文件中。
**Q: 如何备份数据?**
A: 定期备份 fakabot.db 文件和 config.json 配置文件。
**Q: 授权码丢了怎么办?**
A: 联系客服,提供购买记录,可以重新发送授权码。
### 使用相关
**Q: 如何添加商品?**
@@ -1052,35 +974,67 @@ A: 当前版本不支持,后续版本会添加。
---
## 🔒 授权保护
## 🔐 运行与安全说明
本项目采用内置授权验证,代码中嵌入了授权检查逻辑
当前项目已移除内置授权校验逻辑,默认按“免授权”方式运行
**无法绕过的原因**
-授权检查嵌入在每个文件中
-删除授权检查会导致程序崩溃
-授权码采用签名验证,无法伪造
-破解成本远高于购买价格
**建议你重点关注以下安全项:**
-正确配置支付回调地址与签名密钥
-为服务器开启防火墙与最小权限
-定期备份 `fakabot.db``config.json`
-使用 HTTPS / 反向代理保护管理入口
---
## 📞 联系我们
- **Telegram 客服**: [@sonhshu](https://t.me/sonhshu)
- **演示机器人**: [@fakawan_bot](https://t.me/fakawan_bot)
- **GitHub 项目**: [GUGEGEBAIDU/fakabot](https://github.com/GUGEGEBAIDU/fakabot)
- **Telegram 客服**: [](https://t.me/sonhshu)
---
## ⚠️ 免责声明
**本项目仅供学习和合法商业用途使用。**
### 使用本项目即表示您同意:
- ✅ 遵守所在国家/地区的法律法规
- ✅ 仅用于合法的商业用途
- ✅ 对使用本项目产生的任何后果自行负责
- ✅ 不侵犯他人合法权益
### 开发者声明:
- 📢 本项目开发者不对用户的使用行为负责
- 📢 不对因使用本项目造成的任何损失负责
- 📢 保留随时停止服务的权利
- 📢 保留拒绝向任何用户提供服务的权利
### 明确禁止用途:
- ❌ 赌博、色情等非法内容销售
- ❌ 侵犯知识产权的内容分发
- ❌ 诈骗、传销等违法行为
- ❌ 洗钱、非法资金转移
- ❌ 其他违反法律法规的行为
### 合法用途示例:
- ✅ 在线课程、教育内容销售
- ✅ 正版软件与数字内容销售
- ✅ 会员服务
- ✅ 数字艺术品、音乐销售
- ✅ 电子书、文档资料销售
**如发现用户将本项目用于非法用途,开发者将立即终止服务并配合相关部门调查。**
---
## 📄 许可证
本项目为商业软件,采用订阅制授权
请遵守仓库中许可证文件与服务条款中的约定;本文档不再包含任何授权码激活要求
未经授权,禁止:
- 反编译或反向工程
- 分发或转售
- 删除版权声明
- 商业使用(需购买授权)
详见 [服务条款](TERMS_OF_SERVICE.md)
---
@@ -1090,6 +1044,6 @@ A: 当前版本不支持,后续版本会添加。
Made with ❤️ by Fakabot Team
[开始使用](#-快速开始) · [查看演示](https://t.me/fakawan_bot) · [联系客服](https://t.me/sonhshu)
[开始使用](#-快速开始) · [查看演示](https://t.me/) · [联系客服](https://t.me/)
</div>
+276
View File
@@ -0,0 +1,276 @@
# 服务条款 (Terms of Service)
**生效日期**: 2025-01-18
**最后更新**: 2025-01-18
---
## 1. 服务说明
### 1.1 服务内容
Fakabot(以下简称"本项目")提供基于 Telegram 的自动发卡机器人服务,包括但不限于:
- 商品管理功能
- 订单处理功能
- 支付集成功能
- 自动发货功能
- 用户管理功能
### 1.2 授权模式
本项目采用授权码模式运行:
- 用户需购买授权码才能使用
- 授权码有有效期限制
- 授权码仅限购买者本人使用
---
## 2. 用户责任与义务
### 2.1 合法使用
用户承诺:
- ✅ 仅将本项目用于合法的商业用途
- ✅ 遵守所在国家/地区的法律法规
- ✅ 不侵犯他人的合法权益
- ✅ 不从事任何违法违规活动
### 2.2 禁止行为
用户明确承诺不将本项目用于以下用途:
#### 严格禁止:
- ❌ 赌博、博彩相关内容
- ❌ 色情、淫秽内容
- ❌ 毒品、违禁品交易
- ❌ 诈骗、传销活动
- ❌ 洗钱、非法资金转移
- ❌ 侵犯知识产权的内容
- ❌ 恐怖主义、暴力内容
- ❌ 其他违反法律法规的行为
### 2.3 合规义务
用户需要:
- 📋 确保销售的商品/服务合法合规
- 📋 遵守支付平台的使用规则
- 📋 遵守 Telegram 的服务条款
- 📋 保护用户隐私和数据安全
- 📋 及时处理客户投诉和纠纷
---
## 3. 开发者权利与免责
### 3.1 服务提供
开发者承诺:
- 提供稳定的软件服务
- 提供必要的技术支持
- 及时修复已知的软件缺陷
- 保护用户的授权信息安全
### 3.2 免责声明
开发者明确声明:
#### 不承担责任的情况:
- 📢 用户的违法违规使用行为
- 📢 用户与其客户之间的纠纷
- 📢 第三方支付平台的问题
- 📢 Telegram 平台的服务中断
- 📢 用户自身的配置错误
- 📢 不可抗力因素导致的服务中断
- 📢 用户数据的丢失或损坏
- 📢 用户的经济损失
#### 明确声明:
1. **不对用户行为负责**
- 开发者不审查用户销售的具体内容
- 不对用户的商业行为承担责任
- 不对用户与其客户的交易负责
2. **不保证持续服务**
- 保留随时停止服务的权利
- 保留修改服务内容的权利
- 保留调整价格的权利
3. **不承担连带责任**
- 用户的违法行为由用户自行承担
- 开发者不承担任何连带责任
### 3.3 保留权利
开发者保留以下权利:
- 🔒 随时终止任何用户的服务
- 🔒 撤销已发放的授权码
- 🔒 拒绝向任何用户提供服务
- 🔒 修改服务条款
- 🔒 调整服务价格
- 🔒 要求用户提供身份证明
- 🔒 向执法部门提供用户信息
- 🔒 追究违规用户的法律责任
---
## 4. 授权码使用规则
### 4.1 授权范围
- 授权码仅限购买者本人使用
- 一个授权码对应一个部署实例
- 不可转让、出租或共享授权码
- 不可用于多个服务器
### 4.2 授权期限
- 授权码有明确的有效期限
- 到期后需要续费才能继续使用
- 到期前 7 天会收到提醒
- 到期后服务自动停止
### 4.3 违规处理
如发现以下违规行为,授权将立即失效:
- 分享或出售授权码
- 破解或修改授权验证系统
- 用于非法用途
- 违反本服务条款的其他行为
---
## 5. 隐私保护
### 5.1 信息收集
我们可能收集以下信息:
- 购买者的 Telegram 账号信息
- 授权码使用情况
- 技术支持相关的日志信息
### 5.2 信息使用
收集的信息仅用于:
- 提供授权服务
- 技术支持
- 防止滥用
- 改进服务质量
### 5.3 信息保护
我们承诺:
- 不出售用户信息
- 不与第三方分享用户信息(除非法律要求)
- 采取合理措施保护信息安全
---
## 6. 知识产权
### 6.1 版权声明
- 本项目的所有代码、文档、设计归开发者所有
- 用户购买的是使用权,不是所有权
- 未经授权不得复制、修改、分发本项目
### 6.2 开源许可
- 本项目部分代码采用开源许可
- 但授权验证系统不属于开源范围
- 商业使用需要购买授权
---
## 7. 服务变更与终止
### 7.1 服务变更
开发者有权:
- 修改服务内容
- 调整价格
- 更新服务条款
变更将通过以下方式通知:
- Telegram 通知
- GitHub 公告
- 邮件通知
### 7.2 服务终止
以下情况下服务将被终止:
- 用户主动申请退款(按退款政策)
- 用户违反服务条款
- 授权码到期未续费
- 开发者决定停止服务
---
## 8. 争议解决
### 8.1 协商解决
如发生争议,双方应首先通过友好协商解决。
### 8.2 法律适用
本服务条款适用中华人民共和国法律(不包括冲突法规则)。
### 8.3 管辖法院
因本服务条款引起的争议,由开发者所在地人民法院管辖。
---
## 9. 其他条款
### 9.1 完整协议
本服务条款构成用户与开发者之间的完整协议。
### 9.2 可分割性
如本服务条款的任何条款被认定为无效,其他条款仍然有效。
### 9.3 条款修改
开发者保留随时修改本服务条款的权利。修改后的条款将在 GitHub 上公布。继续使用服务即表示接受修改后的条款。
### 9.4 语言
本服务条款以中文为准。如有其他语言版本,以中文版本为准。
---
## 10. 联系方式
如对本服务条款有任何疑问,请联系:
- **Telegram**: [@sonhshu](https://t.me/sonhshu)
- **GitHub**: [https://github.com/GUGEGEBAIDU/fakabot](https://github.com/GUGEGEBAIDU/fakabot)
---
## 11. 用户确认
**使用本项目即表示您已阅读、理解并同意遵守本服务条款的所有内容。**
**如果您不同意本服务条款的任何内容,请立即停止使用本项目。**
---
**版权所有 © 2025 Fakabot Team. 保留所有权利。**
**最后更新**: 2025-01-18
+15 -39
View File
@@ -1,44 +1,20 @@
#!/usr/bin/env python3
import sys
import hashlib
import os
# -*- coding: utf-8 -*-
"""Compatibility auth shim.
# 混淆的授权检查
_x = "oipmuxel"
_y = hashlib.sha256(_x.encode()).hexdigest()
This project previously performed import-time authorization checks via
`import _auth_check`. The check is intentionally disabled now, but we keep
this module to avoid runtime/import errors for any legacy extension code that
still imports `_auth_check`.
"""
def check_license():
"""检查授权"""
try:
if not os.path.exists("license.key"):
return False
with open("license.key", "r") as f:
key = f.read().strip()
# 验证授权码格式
if "|" not in key or len(key.split("|")) != 3:
return False
# 验证授权码
from offline_license_checker import OfflineLicenseChecker
checker = OfflineLicenseChecker()
valid, _, _ = checker.verify_license()
return valid
except:
return False
from __future__ import annotations
def show_purchase_info():
"""显示购买信息"""
print("\n" + "="*60)
print("⚠️ 需要授权码才能运行")
print("="*60)
print("\n💰 购买授权请联系:")
print(" Telegram: https://t.me/sonhshu")
print("\n💳 订阅价格:")
print(" 月付:50 USDT/月")
print(" 季付:135 USDT/季(优惠10%")
print(" 年付:510 USDT/年(优惠15%")
print("="*60 + "\n")
sys.exit(1)
# 自动执行检查
if not check_license():
show_purchase_info()
def check_license() -> bool:
"""Legacy API: always returns True."""
return True
# Keep side effects empty on import.
AUTH_ENABLED = False
-3
View File
@@ -1,8 +1,5 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 授权检查 - 请勿删除此部分,否则程序无法运行
import _auth_check
from __future__ import annotations
import asyncio
import json
-7
View File
@@ -1,8 +1,5 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 授权检查 - 请勿删除此部分,否则程序无法运行
import _auth_check
import asyncio
import json
import re
@@ -22,10 +19,6 @@ from admin_panel import register_admin_handlers
from user_flow import register_user_handlers
from utils import ensure_settings_table, get_setting, set_setting
# ⚠️ 离线授权验证(商业版)
from offline_license_checker import init_license_checker
init_license_checker()
# Redis缓存和频率限制
try:
from redis_cache import cache
-1
View File
@@ -33,7 +33,6 @@ services:
- "127.0.0.1:58002:58002"
volumes:
- ./config.json:/app/config.json:ro
- ./license.key:/app/license.key:ro
- ./data:/app/data
networks:
- fakabot_network
+32 -121
View File
@@ -1,135 +1,46 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 授权检查 - 请勿删除此部分,否则程序无法运行
import _auth_check
"""No-op offline license checker (backward compatibility).
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
离线授权验证 - 无需服务器
直接验证授权码,不需要联网
Historically this module validated a `license.key` file and could terminate the
process when invalid. To preserve old call sites while removing authorization
requirements, this module now exposes the same public API but always passes.
"""
import hashlib
import time
import os
import sys
from datetime import datetime
from __future__ import annotations
from dataclasses import dataclass
from typing import Tuple
@dataclass
class OfflineLicenseChecker:
"""离线授权验证器"""
def __init__(self, license_file="license.key"):
self.license_file = license_file
# ⚠️ 这个密钥必须和生成器中的密钥一致
self.SECRET_KEY = "fakabot_2025_secret_key_abc123xyz789def456"
def read_license_key(self):
"""读取授权码"""
if not os.path.exists(self.license_file):
return None
try:
with open(self.license_file, 'r') as f:
return f.read().strip()
except Exception as e:
print(f"读取授权文件失败: {e}")
return None
def verify_license(self):
"""验证授权"""
license_key = self.read_license_key()
if not license_key:
return False, "未找到授权文件 license.key", 0
try:
# 解析授权码
parts = license_key.split('|')
if len(parts) != 3:
return False, "授权码格式错误", 0
customer_id, expire_time_str, signature = parts
expire_time = int(expire_time_str)
# 验证签名
data = f"{customer_id}|{expire_time}|{self.SECRET_KEY}"
expected_signature = hashlib.sha256(data.encode()).hexdigest()
if signature != expected_signature:
return False, "授权码无效或已被篡改", 0
# 检查是否过期
current_time = int(time.time())
if current_time > expire_time:
expire_date = datetime.fromtimestamp(expire_time).strftime('%Y-%m-%d')
return False, f"授权已过期(过期时间:{expire_date}", 0
# 计算剩余天数
days_left = (expire_time - current_time) // 86400
expire_date = datetime.fromtimestamp(expire_time).strftime('%Y-%m-%d')
print(f"\n{'='*60}")
print(f"✅ 授权验证通过")
print(f"📝 客户ID: {customer_id}")
print(f"📅 到期时间: {expire_date}")
print(f"⏰ 剩余天数: {days_left}")
# 快过期提醒
if days_left <= 7:
print(f"\n⚠️ 授权即将过期!请及时续费")
print(f"💰 续费联系:")
print(f" Telegram: https://t.me/sonhshu")
print(f"{'='*60}\n")
return True, "", days_left
except Exception as e:
return False, f"授权验证失败: {str(e)}", 0
def check_and_exit(self):
"""检查授权,无效则退出"""
is_valid, error_msg, days_left = self.verify_license()
if not is_valid:
print("\n" + "="*60)
print(error_msg)
print("="*60)
print("\n💰 购买或续费订阅请联系:")
print(" Telegram: https://t.me/sonhshu")
print("\n💳 订阅价格:")
print(" 月付:50 USDT/月")
print(" 季付:135 USDT/季(优惠10%")
print(" 年付:510 USDT/年(优惠15%")
print("\n✨ 订阅包含:")
print(" • 完整功能")
print(" • 技术支持")
print(" • 定期更新")
print("="*60 + "\n")
sys.exit(1)
"""Backward-compatible checker that always reports valid status."""
license_file: str = "license.key"
def read_license_key(self) -> str:
return ""
def verify_license(self) -> Tuple[bool, str, int]:
# (is_valid, message, days_left)
return True, "license check disabled", 36500
def check_and_exit(self) -> bool:
return True
# 全局实例
_license_checker = None
_license_checker: OfflineLicenseChecker | None = None
def init_license_checker():
"""初始化授权检查器"""
def init_license_checker() -> OfflineLicenseChecker:
global _license_checker
_license_checker = OfflineLicenseChecker()
_license_checker.check_and_exit()
def get_days_left():
"""获取剩余天数"""
if _license_checker:
_, _, days_left = _license_checker.verify_license()
return days_left
return 0
return _license_checker
# 测试代码
if __name__ == "__main__":
print("测试离线授权验证...")
init_license_checker()
print("✅ 授权验证通过,程序可以正常运行")
def get_license_days_left(default: int = 36500) -> int:
if _license_checker is None:
return default
_, _, days_left = _license_checker.verify_license()
return days_left
-3
View File
@@ -1,8 +1,5 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 授权检查 - 请勿删除此部分,否则程序无法运行
import _auth_check
#!/usr/bin/env python3
"""
支付系统核心模块 - 重构版
-3
View File
@@ -1,8 +1,5 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 授权检查 - 请勿删除此部分,否则程序无法运行
import _auth_check
#!/usr/bin/env python3
"""
柠檬支付官方标准对接模块
-3
View File
@@ -1,8 +1,5 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 授权检查 - 请勿删除此部分,否则程序无法运行
import _auth_check
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
-3
View File
@@ -1,8 +1,5 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 授权检查 - 请勿删除此部分,否则程序无法运行
import _auth_check
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
-3
View File
@@ -1,8 +1,5 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 授权检查 - 请勿删除此部分,否则程序无法运行
import _auth_check
#!/usr/bin/env python3
"""
支付页面截图工具
-3
View File
@@ -1,8 +1,5 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 授权检查 - 请勿删除此部分,否则程序无法运行
import _auth_check
import asyncio
import os
import secrets
-3
View File
@@ -1,8 +1,5 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 授权检查 - 请勿删除此部分,否则程序无法运行
import _auth_check
# Consolidated utilities module: merged from utils/*.py
# Sections:
# - constants: STATUS_ZH, MSG