#!/bin/bash
# 每日资讯推送 v2 - 使用 openclaw cron 集成
# 获取资讯并通过企业微信发送

set -e

WORKSPACE="/root/.openclaw/workspace"
LOG_FILE="$WORKSPACE/logs/cron-daily-news.log"

log() {
    echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1" | tee -a "$LOG_FILE"
}

log "========== 开始执行每日资讯推送 =========="

# 获取 Readhub 早报
log "获取 Readhub 早报..."
READHUB_DATA=$(curl -s "https://api.readhub.cn/method/daily" 2>/dev/null || echo '{"news":[]}')

# 获取 V2EX 热帖
log "获取 V2EX 热帖..."
V2EX_DATA=$(curl -s "https://www.v2ex.com/api/hot.json" 2>/dev/null || echo '[]')

# 获取 Github Trending (简化版)
log "获取技术动态..."
GITHUB_DATA=$(curl -s "https://api.github.com/trending" 2>/dev/null | head -c 2000 || echo "[]")

# 生成 Markdown 格式消息
DATE_TODAY=$(date '+%Y 年 %m 月 %d 日')
DAY_OF_WEEK=$(date '+%A')

# 解析 Readhub 新闻
NEWS_ITEMS=""
if echo "$READHUB_DATA" | grep -q '"news"'; then
    NEWS_ITEMS=$(echo "$READHUB_DATA" | grep -oP '"title":"[^"]+"' | head -10 | sed 's/"title":"//;s/"$//' | while read -r title; do
        echo "• $title"
    done)
fi

# 解析 V2EX 热帖
V2EX_ITEMS=""
if echo "$V2EX_DATA" | grep -q '"title"'; then
    V2EX_ITEMS=$(echo "$V2EX_DATA" | grep -oP '"title":"[^"]+"' | head -5 | sed 's/"title":"//;s/"$//' | while read -r title; do
        echo "• $title"
    done)
fi

# 构建消息内容
MESSAGE="# 📰 每日资讯早报

**日期：** ${DATE_TODAY} ${DAY_OF_WEEK}

---

## 🔥 科技热点
${NEWS_ITEMS:-• 暂无数据}

## 💬 社区热议
${V2EX_ITEMS:-• 暂无数据}

---

_祝您有愉快的一天！_ 🌟"

log "资讯内容生成成功"

# 保存内容到文件
echo "$MESSAGE" > "$WORKSPACE/tmp/daily-news-$(date +%Y%m%d-%H%M).md"

# 使用 openclaw agent 发送到企业微信
log "发送消息到企业微信..."

openclaw agent \
    --message "$MESSAGE" \
    --channel wecom \
    --deliver \
    --timeout 60 2>&1 | tee -a "$LOG_FILE"

RESULT=$?

if [ $RESULT -eq 0 ]; then
    log "========== 资讯推送成功 =========="
else
    log "========== 资讯推送失败 (退出码：$RESULT) =========="
fi

exit $RESULT
