# 项目名称
项目介绍
## 目录
- [安装指南](#一、安装指南)
- [克隆项目](#克隆项目)
- [准备工作](#准备工作)
- [ffmpeg安装](#ffmpeg安装)
- [安装依赖](#安装依赖)
- [配置](#配置)
- [运行目录](#运行目录)
- [apache](#apache)
- [nginx](#nginx)
- [.env](#env)
- [数据库](#二、数据库)
- [网站初始信息](#三、初始信息)
## 一、安装指南
### 克隆项目
```bash
git clone http://47.76.126.2:3000/tg-bot/tg-bot-api.git
```
### 准备工作
需要先安装好运行环境,推荐使用宝塔服务器,安装LNMP的架构,建议使用nginx作为服务器,不建议使用apache。需要安装以下软件:
| 所需环境 | 版本 | 备注 | 推荐版本 |
|---------|----|----|---|
| linux | \>= 7.0 | | 7.9 |
| nginx | \>= 1.17 | | 最新的 |
| php | \>= 8.0.2 | 8.0.2 ~ 8.2 | 8.2.9 |
| mysql | \>= 5.7 | 必须要5.7及以上 | 5.7 |
| node | >= 22
### 安装依赖
```bash
# 安装依赖
composer install
# 创建符号链接
php artisan storage:link
```
### 配置
- #### 运行目录:
- 部署完成后,请修改 【运行目录】 为 `public` ,这里以宝塔为例:

- #### apache:
```apache
Options +FollowSymlinks -Multiviews
RewriteEngine on
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?s=$1 [QSA,PT,L]
# 可根据实际情况进行修改
Header set Accept-Ranges bytes
Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS"
Header set Access-Control-Allow-Headers "Content-Type, Authorization, X-Requested-With"
Header set Access-Control-Allow-Credentials "true"
```
- #### nginx:
```nginx
location / {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization';
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Max-Age' 3600;
if ($request_method = 'OPTIONS') {
# OPTIONS 请求直接返回 200
return 204;
}
#try_files $uri $uri/ /index.php?$query_string;
if (!-e $request_filename) {
rewrite ^/index.php(.*)$ /index.php?s=$1 last;
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
```
- #### .env:
(1) 将 `example.env` 重命名为 `.env`
(2) 修改以下配置项
```bash
# 以下配置仅为示例
# App
APP_NAME=lovingtalk
APP_DEBUG=false
APP_URL=http://localhost:8080
# 数据库
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=bot
DB_USERNAME=root
DB_PASSWORD=123456
DB_PREFIX=bot_
# 电子邮件
MAIL_MAILER=smtp
MAIL_ENCRYPTION=tls
MAIL_PORT=587
MAIL_FROM_NAME="${APP_NAME}"
MAIL_HOST=
MAIL_FROM_ADDRESS=""
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_EXP=600 # 邮件验证码有效期(秒)
```
## 二、数据库
- 请依次导入以下文件
|序号|文件|说明|
|---|---|---|
|1|[/sql/sql_prod.sql](/sql/sql_prod.sql)|初始数据|
## 三、初始信息
- 通过部署的域名访问程序后台系统,登录后请及时修改密码!!!
- 初始账号密码:
- 用户名:`admin`
- 密码:`123456`
`注意:登录后请及时修改管理员密码,防止泄露。`
## 四、设置机器人回调地址、菜单等
- .env设置机器人信息
- 访问 https://域名/api/setWebHook
## 五、设置区块链信息
- .env
- 设置归集USDT地址
- 设置TRX能量的秘钥
- 设置是区块网络
## 六、设置定时任务
- 30秒运行一次
- 充值确认:https://域名/admin/sync/recharge
- 余额归集:https://域名/admin/sync/collect
- 结算通知:https://域名/admin/sync/settle