Skip to content

Commit 36c95e9

Browse files
committed
v3.4.0: 新增 slack 推送,优化 setup-windows.bat 一键安装 MCP
1 parent 5282541 commit 36c95e9

File tree

11 files changed

+543
-89
lines changed

11 files changed

+543
-89
lines changed

.github/workflows/crawler.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ jobs:
6363
NTFY_SERVER_URL: ${{ secrets.NTFY_SERVER_URL }}
6464
NTFY_TOKEN: ${{ secrets.NTFY_TOKEN }}
6565
BARK_URL: ${{ secrets.BARK_URL }}
66+
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
6667
GITHUB_ACTIONS: true
6768
run: python main.py
6869

README-Cherry-Studio.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ cd 你的项目名
6565

6666
### Windows 用户
6767

68-
1. **双击运行**项目文件夹中的 `setup-windows.bat`
68+
1. **双击运行**项目文件夹中的 `setup-windows.bat`,如果有问题,就运行 `setup-windows-en.bat`
6969
2. **等待安装完成**
7070
3. **记录显示的配置信息**(命令路径和参数)
7171

README-EN.md

Lines changed: 194 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
[![GitHub Stars](https://img.shields.io/github/stars/sansan0/TrendRadar?style=flat-square&logo=github&color=yellow)](https://github.com/sansan0/TrendRadar/stargazers)
1515
[![GitHub Forks](https://img.shields.io/github/forks/sansan0/TrendRadar?style=flat-square&logo=github&color=blue)](https://github.com/sansan0/TrendRadar/network/members)
1616
[![License](https://img.shields.io/badge/license-GPL--3.0-blue.svg?style=flat-square)](LICENSE)
17-
[![Version](https://img.shields.io/badge/version-v3.3.0-blue.svg)](https://github.com/sansan0/TrendRadar)
17+
[![Version](https://img.shields.io/badge/version-v3.4.0-blue.svg)](https://github.com/sansan0/TrendRadar)
1818
[![MCP](https://img.shields.io/badge/MCP-v1.0.2-green.svg)](https://github.com/sansan0/TrendRadar)
1919

2020
[![WeWork](https://img.shields.io/badge/WeWork-Notification-00D4AA?style=flat-square)](https://work.weixin.qq.com/)
@@ -25,6 +25,7 @@
2525
[![Email](https://img.shields.io/badge/Email-Notification-00D4AA?style=flat-square)](#)
2626
[![ntfy](https://img.shields.io/badge/ntfy-Notification-00D4AA?style=flat-square)](https://github.com/binwiederhier/ntfy)
2727
[![Bark](https://img.shields.io/badge/Bark-Notification-00D4AA?style=flat-square)](https://github.com/Finb/Bark)
28+
[![Slack](https://img.shields.io/badge/Slack-Notification-00D4AA?style=flat-square)](https://slack.com/)
2829

2930

3031
[![GitHub Actions](https://img.shields.io/badge/GitHub_Actions-Automation-2088FF?style=flat-square&logo=github-actions&logoColor=white)](https://github.com/sansan0/TrendRadar)
@@ -60,7 +61,7 @@
6061
- Thanks to **followers**, your interactions make the content more meaningful 😎
6162

6263
<details>
63-
<summary>👉 Click to view <strong>Acknowledgments</strong> (Current <strong>🔥72🔥</strong> supporters)</summary>
64+
<summary>👉 Click to view <strong>Acknowledgments</strong> (Current <strong>🔥73🔥</strong> supporters)</summary>
6465

6566
### Infrastructure Support
6667

@@ -90,6 +91,7 @@ After communication, the author indicated no concerns about server pressure, but
9091
9192
| Supporter | Amount (CNY) | Date | Note |
9293
| :-------: | :----------: | :--: | :--: |
94+
| D*5 | 1.8 * 3 | 2025.11.24 | |
9395
| *| 1 | 2025.11.17 | |
9496
| *| 10 | 2025.11.17 | |
9597
| R*w | 10 | 2025.11.17 | Great agent work! |
@@ -270,6 +272,33 @@ Transform from "algorithm recommendation captivity" to "actively getting the inf
270272
- **Major Version Upgrade**: Upgrading from v1.x to v2.y, recommend deleting existing fork and re-forking to save effort and avoid config conflicts
271273

272274

275+
### 2025/11/25 - v3.4.0
276+
277+
**🎉 Added Slack Push Support**
278+
279+
1. **Team Collaboration Push Channel**
280+
- Supports Slack Incoming Webhooks (globally popular team collaboration tool)
281+
- Centralized message management, suitable for team-shared trending news
282+
- Supports mrkdwn format (bold, links, etc.)
283+
284+
2. **Multiple Deployment Methods**
285+
- GitHub Actions: Configure `SLACK_WEBHOOK_URL` Secret
286+
- Docker: Environment variable `SLACK_WEBHOOK_URL`
287+
- Local: `config/config.yaml` configuration file
288+
289+
290+
> 📖 **Detailed Configuration Tutorial**: [Quick Start - Slack Push](#-quick-start)
291+
292+
- Optimized the one-click installation experience for setup-windows.bat and setup-windows-en.bat
293+
294+
**🔧 Upgrade Instructions**:
295+
- **GitHub Fork Users**: Update `main.py`, `config/config.yaml`, `.github/workflows/crawler.yml`
296+
297+
298+
<details>
299+
<summary>👉 Click to expand: <strong>Historical Updates</strong></summary>
300+
301+
273302
### 2025/11/24 - v3.3.0
274303

275304
**🎉 Added Bark Push Support**
@@ -334,9 +363,6 @@ Transform from "algorithm recommendation captivity" to "actively getting the inf
334363
- Fix issue where today's news query may return articles from past dates
335364

336365

337-
<details>
338-
<summary><strong>👉 Click to expand: Historical Updates</strong></summary>
339-
340366
### 2025/11/20 - v3.1.0
341367

342368
- **Added Personal WeChat Push Support**: WeWork application can push to personal WeChat without installing WeWork APP
@@ -918,6 +944,7 @@ frequency_words.txt file added **required word** feature, using + sign
918944
| **Sina Mail** | sina.com | smtp.sina.com | 465 | SSL |
919945
| **Sohu Mail** | sohu.com | smtp.sohu.com | 465 | SSL |
920946
| **189 Mail** | 189.cn | smtp.189.cn | 465 | SSL |
947+
| **Aliyun Mail** | aliyun.com | smtp.aliyun.com | 465 | TLS |
921948

922949
> **Auto-detect**: When using above emails, no need to manually configure `EMAIL_SMTP_SERVER` and `EMAIL_SMTP_PORT`, system auto-detects.
923950
>
@@ -927,6 +954,7 @@ frequency_words.txt file added **required word** feature, using + sign
927954
>
928955
> **Special Thanks**:
929956
> - Thanks to [@DYZYD](https://github.com/DYZYD) for contributing 189 Mail (189.cn) configuration and completing self-send-receive testing ([#291](https://github.com/sansan0/TrendRadar/issues/291))
957+
> - Thanks to [@longzhenren](https://github.com/longzhenren) for contributing Aliyun Mail (aliyun.com) configuration and completing testing ([#344](https://github.com/sansan0/TrendRadar/issues/344))
930958
931959
**Common Email Settings:**
932960

@@ -1078,6 +1106,162 @@ frequency_words.txt file added **required word** feature, using + sign
10781106

10791107
</details>
10801108

1109+
<details>
1110+
<summary>👉 Click to expand: <strong>Bark Push</strong> (iOS exclusive, clean & efficient)</summary>
1111+
<br>
1112+
1113+
**GitHub Secret Configuration (⚠️ Name must be exact):**
1114+
- **Name**: `BARK_URL` (copy and paste this name, don't type manually)
1115+
- **Secret**: Your Bark push URL
1116+
1117+
<br>
1118+
1119+
**Bark Introduction:**
1120+
1121+
Bark is a free open-source push tool for iOS platform, featuring simplicity, speed, and no ads.
1122+
1123+
**Usage Methods:**
1124+
1125+
### Method 1: Use Official Server (Recommended for beginners) 🆓
1126+
1127+
1. **Download Bark App**:
1128+
- iOS: [App Store](https://apps.apple.com/us/app/bark-customed-notifications/id1403753865)
1129+
1130+
2. **Get Push URL**:
1131+
- Open Bark App
1132+
- Copy the push URL displayed on the home page (format: `https://api.day.app/your_device_key`)
1133+
- Configure the URL to GitHub Secrets as `BARK_URL`
1134+
1135+
### Method 2: Self-Hosted Server (Complete Privacy Control) 🔒
1136+
1137+
**Suitable for**: Users with servers, pursuing complete privacy, strong technical skills
1138+
1139+
**Docker One-Click Deployment**:
1140+
```bash
1141+
docker run -d \
1142+
--name bark-server \
1143+
-p 8080:8080 \
1144+
finab/bark-server
1145+
```
1146+
1147+
**Configure TrendRadar**:
1148+
```yaml
1149+
BARK_URL: http://your-server-ip:8080/your_device_key
1150+
```
1151+
1152+
---
1153+
1154+
**Notes:**
1155+
- ✅ Bark uses APNs push, max 4KB per message
1156+
- ✅ Supports automatic batch sending, no worry about long messages
1157+
- ✅ Push format is plain text (automatically removes Markdown syntax)
1158+
- ⚠️ Only supports iOS platform
1159+
1160+
**Related Links:**
1161+
- [Bark Official Website](https://bark.day.app/)
1162+
- [Bark GitHub Repository](https://github.com/Finb/Bark)
1163+
- [Bark Server Self-Hosting Tutorial](https://github.com/Finb/bark-server)
1164+
1165+
</details>
1166+
1167+
<details>
1168+
<summary>👉 Click to expand: <strong>Slack Push</strong></summary>
1169+
<br>
1170+
1171+
**GitHub Secret Configuration (⚠️ Name must be exact):**
1172+
- **Name**: `SLACK_WEBHOOK_URL` (copy and paste this name, don't type manually)
1173+
- **Secret**: Your Slack Incoming Webhook URL
1174+
1175+
<br>
1176+
1177+
**Slack Introduction:**
1178+
1179+
Slack is a team collaboration tool, Incoming Webhooks can push messages to Slack channels.
1180+
1181+
**Setup Steps:**
1182+
1183+
### Step 1: Create Slack App
1184+
1185+
1. **Visit Slack API Page**:
1186+
- Open https://api.slack.com/apps?new_app=1
1187+
- Login to your Slack workspace if not logged in
1188+
1189+
2. **Choose Creation Method**:
1190+
- Click **"From scratch"**
1191+
1192+
3. **Fill in App Information**:
1193+
- **App Name**: Enter app name (e.g., `TrendRadar` or `Hot News Monitor`)
1194+
- **Workspace**: Select your workspace from dropdown
1195+
- Click **"Create App"** button
1196+
1197+
### Step 2: Enable Incoming Webhooks
1198+
1199+
1. **Navigate to Incoming Webhooks**:
1200+
- Find and click **"Incoming Webhooks"** in left menu
1201+
1202+
2. **Enable Feature**:
1203+
- Find **"Activate Incoming Webhooks"** toggle
1204+
- Switch from `OFF` to `ON`
1205+
- Page will auto-refresh showing new configuration options
1206+
1207+
### Step 3: Generate Webhook URL
1208+
1209+
1. **Add New Webhook**:
1210+
- Scroll to page bottom
1211+
- Click **"Add New Webhook to Workspace"** button
1212+
1213+
2. **Select Target Channel**:
1214+
- System will show authorization page
1215+
- Select channel to receive messages from dropdown (e.g., `#hot-news`)
1216+
- ⚠️ For private channels, must join the channel first
1217+
1218+
3. **Authorize App**:
1219+
- Click **"Allow"** button to complete authorization
1220+
- System will auto-redirect back to config page
1221+
1222+
### Step 4: Copy and Save Webhook URL
1223+
1224+
1. **View Generated URL**:
1225+
- In "Webhook URLs for Your Workspace" section
1226+
- You'll see the newly generated Webhook URL
1227+
- Format: `https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX`
1228+
1229+
2. **Copy URL**:
1230+
- Click **"Copy"** button on the right of URL
1231+
- Or manually select and copy URL
1232+
1233+
3. **Configure to TrendRadar**:
1234+
- **GitHub Actions**: Add URL to GitHub Secrets as `SLACK_WEBHOOK_URL`
1235+
- **Local Testing**: Fill URL in `config/config.yaml` `slack_webhook_url` field
1236+
- **Docker Deployment**: Add URL to `docker/.env` file as `SLACK_WEBHOOK_URL` variable
1237+
1238+
---
1239+
1240+
**Notes:**
1241+
- ✅ Supports Markdown format (auto-converts to Slack mrkdwn)
1242+
- ✅ Supports automatic batch sending (4KB per batch)
1243+
- ✅ Suitable for team collaboration, centralized message management
1244+
- ⚠️ Webhook URL contains secret key, never make it public
1245+
1246+
**Message Format Preview:**
1247+
```
1248+
*[Batch 1/2]*
1249+
1250+
📊 *Trending Topics Statistics*
1251+
1252+
🔥 *[1/3] AI ChatGPT* : 2 articles
1253+
1254+
1. [Baidu Hot] 🆕 ChatGPT-5 Official Release *[1]* - 09:15 (1 time)
1255+
1256+
2. [Toutiao] AI Chip Stocks Surge *[3]* - [08:30 ~ 10:45] (3 times)
1257+
```
1258+
1259+
**Related Links:**
1260+
- [Slack Incoming Webhooks Official Docs](https://api.slack.com/messaging/webhooks)
1261+
- [Slack API App Management](https://api.slack.com/apps)
1262+
1263+
</details>
1264+
10811265
> **💡 Beginner Quick Start Tip**:
10821266
>
10831267
> For first deployment, suggest completing **GitHub Secrets** configuration first (choose one push platform), then jump to [Step 3] to test push success.
@@ -1330,7 +1514,7 @@ Meizu
13301514
!second-hand
13311515
```
13321516

1333-
��� **Recommended:** Split into precise groups
1517+
**Recommended:** Split into precise groups
13341518
```txt
13351519
Huawei
13361520
OPPO
@@ -1804,6 +1988,10 @@ Cherry Studio provides GUI config interface, 5-minute quick deployment, complex
18041988

18051989
**Detailed Deployment Tutorial**: [README-Cherry-Studio.md](README-Cherry-Studio.md)
18061990

1991+
**Deployment Mode Description**:
1992+
- **STDIO Mode (Recommended)**: One-time configuration, no need to reconfigure later. The **illustrated deployment tutorial** only demonstrates this mode's configuration.
1993+
- **HTTP Mode (Alternative)**: If STDIO mode configuration encounters issues, you can use HTTP mode. This mode's configuration is basically the same as STDIO, but only requires copy-pasting one line, less error-prone. The only thing to note is that you need to manually start the service before each use. For details, refer to the HTTP mode section at the bottom of [README-Cherry-Studio.md](README-Cherry-Studio.md).
1994+
18071995
### 2. Learning to Talk with AI
18081996

18091997
**Detailed Conversation Tutorial**: [README-MCP-FAQ.md](README-MCP-FAQ.md)

0 commit comments

Comments
 (0)