7 Commits

Author SHA1 Message Date
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 947 additions and 229 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>
+86 -37
View File
@@ -1,9 +1,13 @@
# 🤖 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/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">
@@ -13,7 +17,9 @@
**适用场景**:知识付费 · 虚拟商品 · 在线课程 · 软件授权 · 会员订阅
🎬 [在线演示](https://t.me/fakawan_bot) · 📱 [联系客服](https://t.me/sonhshu) · 📖 [完整文档](#-快速开始)
🎬 [在线演示](https://t.me/fakawan_bot) · 📱 [联系客服](https://t.me/szsh66) · 📖 [完整文档](#-快速开始)
中文文档 | [English](README.en.md)
</div>
@@ -21,12 +27,11 @@
## ⚠️ 重要说明
本项目需要**授权码**才能运行。代码已内置授权验证系统,无法绕过
当前版本已移除内置授权校验逻辑,部署时**不再需要 `license.key`**
-授权码采用签名验证,无法伪造
-到期前 7 天自动提醒
-到期后自动停止运行
- ✅ 支持远程续费,无需重新部署
-无需授权文件即可启动
-原有支付、订单、发货等业务流程保持不变
-历史文档中涉及授权码的步骤属于旧版本说明
---
@@ -112,9 +117,8 @@
</td>
<td width="50%">
- 🔄 订单状态(待支付/已支付/已完成/已退款
- 💰 订单统计(金额/数量/趋势
- 📊 数据导出(Excel/CSV
- 🔄 订单状态(待支付/已支付/已完成/已取消
- 💰 订单统计(金额/数量)
</td>
</tr>
@@ -125,10 +129,7 @@
强大的用户管理功能:
**用户信息**
- 👤 用户列表 · 📊 用户统计 · 💰 消费记录 · 📈 用户画像
**用户操作**
- 🚫 黑名单管理 · 👑 VIP 会员 · 💬 用户标签 · 📢 消息推送
- 👤 用户列表 · 📊 用户统计 · 💰 消费记录
### 🛍️ 商品管理
@@ -140,22 +141,20 @@
**库存管理**
- 📥 批量导入卡密 · 📊 库存统计 · ⚠️ 库存预警 · 🔄 自动补货提醒
**商品分类**
- 📁 分类管理 · 🏷️ 标签系统 · 🔝 排序设置 · 👁️ 显示/隐藏
### 🎨 管理后台
专业的管理后台界面:
**数据统计**
- 📊 今日数据(订单/收入/用户) · 📈 本月数据(趋势图表)
- 💰 总收入统计 · 👥 用户增长曲线
- 📊 今日数据(订单/收入/用户)
- 📈 本月数据统计
- 💰 总收入统计
**快速操作**
- ⚡ 一键发货 · 💸 一键退款 · 📢 批量通知 · 🔄 数据刷新
- ⚡ 一键发货 · 📢 批量通知 · 🔄 数据刷新
**系统设置**
- ⚙️ 基础配置 · 💳 支付配置 · 📧 通知配置 · 🎨 界面定制
- ⚙️ 基础配置 · 💳 支付配置 · 📧 通知配置
---
@@ -996,14 +995,11 @@ TDZM5DSSq8SrB8QTSBHyNwrcTswtCjKs9t
### 购买相关
**Q: 可以试用吗?**
A: 建议先购买月付(50 USDT)试用一个月,满意后再升级年付。首次购买 7 天内不满意可全额退款。
A: 建议先购买月付(50 USDT)试用一个月,满意后再升级年付。
**Q: 授权码会过期吗?**
A: 是的,月付30天,季付90天,年付365天。到期前7天会自动提醒。
**Q: 可以退款吗?**
A: 首次购买7天内不满意可申请全额退款。
**Q: 包含技术支持吗?**
A: 是的,所有订阅都包含技术支持,响应时间通常 1-24 小时。
@@ -1067,20 +1063,73 @@ A: 当前版本不支持,后续版本会添加。
## 📞 联系我们
- **Telegram 客服**: [@sonhshu](https://t.me/sonhshu)
- **演示机器人**: [@fakawan_bot](https://t.me/fakawan_bot)
- **GitHub 项目**: [GUGEGEBAIDU/fakabot](https://github.com/GUGEGEBAIDU/fakabot)
---
## ⚠️ 免责声明
**本项目仅供学习和合法商业用途使用。**
### 使用本项目即表示您同意:
- ✅ 遵守所在国家/地区的法律法规
- ✅ 仅用于合法的商业用途
- ✅ 对使用本项目产生的任何后果自行负责
- ✅ 不侵犯他人合法权益
### 开发者声明:
- 📢 本项目开发者不对用户的使用行为负责
- 📢 不对因使用本项目造成的任何损失负责
- 📢 保留随时停止服务和撤销授权的权利
- 📢 保留拒绝向任何用户提供服务的权利
### 明确禁止用途:
- ❌ 赌博、色情等非法内容销售
- ❌ 侵犯知识产权的内容分发
- ❌ 诈骗、传销等违法行为
- ❌ 洗钱、非法资金转移
- ❌ 其他违反法律法规的行为
### 合法用途示例:
- ✅ 在线课程、教育内容销售
- ✅ 正版软件授权码销售
- ✅ 会员订阅服务
- ✅ 数字艺术品、音乐销售
- ✅ 电子书、文档资料销售
**如发现用户将本项目用于非法用途,开发者将立即终止服务并配合相关部门调查。**
---
## 📄 许可证
本项目为商业软件,采用订阅制授权。
**Commercial License - 商业许可证**
未经授权,禁止
- 反编译或反向工程
- 分发或转售
- 删除版权声明
- 商业使用(需购买授权)
本项目采用商业许可证
### 允许:
- ✅ 个人学习和研究
- ✅ 购买授权后的合法商业使用
- ✅ 在授权范围内的修改和定制
### 禁止:
- ❌ 未经授权的商业使用
- ❌ 二次销售或分发授权码
- ❌ 移除或修改授权验证系统
- ❌ 用于任何非法用途
### 授权说明:
- 授权码仅限购买者本人使用
- 不可转让、出租或共享
- 违反许可协议将导致授权立即失效
- 开发者保留追究法律责任的权利
**版权所有 © 2025 Fakabot Team. 保留所有权利。**
详见 [服务条款](TERMS_OF_SERVICE.md)
---
@@ -1090,6 +1139,6 @@ A: 当前版本不支持,后续版本会添加。
Made with ❤️ by Fakabot Team
[开始使用](#-快速开始) · [查看演示](https://t.me/fakawan_bot) · [联系客服](https://t.me/sonhshu)
[开始使用](#-快速开始) · [查看演示](https://t.me/fakawan_bot) · [联系客服](https://t.me/szsh66)
</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
+28 -117
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:
"""离线授权验证器"""
"""Backward-compatible checker that always reports valid status."""
def __init__(self, license_file="license.key"):
self.license_file = license_file
# ⚠️ 这个密钥必须和生成器中的密钥一致
self.SECRET_KEY = "fakabot_2025_secret_key_abc123xyz789def456"
license_file: str = "license.key"
def read_license_key(self):
"""读取授权码"""
if not os.path.exists(self.license_file):
return None
def read_license_key(self) -> str:
return ""
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) -> Tuple[bool, str, int]:
# (is_valid, message, days_left)
return True, "license check disabled", 36500
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)
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