#!/bin/bash
# 台湾每日舆情简报 - 每日 08:00 定时任务
# 添加到 crontab: 0 8 * * * /home/admin/.openclaw/workspace/skills/taiwan-daily-briefing/scripts/daily_report.sh

set -e

LOG_FILE="/home/admin/.openclaw/workspace/reports/taiwan-daily-briefing/cron.log"
REPORTS_DIR="/home/admin/.openclaw/workspace/reports/taiwan-daily-briefing/briefings"
WORKSPACE="/home/admin/.openclaw/workspace"
SKILL_FILE="/home/admin/.openclaw/workspace/skills/taiwan-daily-briefing/SKILL.md"

# 目标用户
TARGET_USER="020251091339931228"
CHANNEL="dingtalk"

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

log "========== 台湾每日舆情日报任务启动 =========="
log "读取规范：$SKILL_FILE"

# 检查是否已存在今日报告
TODAY=$(date +%Y-%m-%d)
MD_FILE="${REPORTS_DIR}/${TODAY}-台湾每日舆情简报.md"
DOCX_FILE="${REPORTS_DIR}/${TODAY}-台湾每日舆情简报.docx"

if [ -f "$DOCX_FILE" ]; then
    log "今日报告已存在：$DOCX_FILE"
else
    log "今日报告不存在，需要 AI 生成..."
    log "请确保 AI 已读取 SKILL.md 中的规范要求"
fi

# 发送报告
send_report() {
    if [ -f "$DOCX_FILE" ]; then
        log "发送报告给用户：$TARGET_USER"
        
        cd "$WORKSPACE"
        openclaw message send \
            --channel "$CHANNEL" \
            --target "$TARGET_USER" \
            --file "$DOCX_FILE" \
            --message "长官，

今日台湾每日舆情简报已生成，请查收。

📄 报告编号：TW-${TODAY}-001
📊 采集时间：昨日 08:00 至今日 08:00
📝 报告字数：约 5000-6000 字
🔒 保密等级：内部参考

对您忠诚 📊"
        
        if [ $? -eq 0 ]; then
            log "✅ 报告已发送"
        else
            log "❌ 报告发送失败"
            return 1
        fi
    else
        log "❌ 错误：报告文件不存在 $DOCX_FILE"
        return 1
    fi
}

# 主流程
main() {
    # 检查报告是否存在
    if [ ! -f "$DOCX_FILE" ]; then
        log "⚠️  今日报告尚未生成，需要 AI 介入"
        log "AI 需要完成以下步骤："
        log "  1. 读取 SKILL.md 中的规范要求"
        log "  2. 读取 hourly 采集素材"
        log "  3. 使用 searxng 搜索最新信息"
        log "  4. 生成 Markdown 报告（按实际议题分类）"
        log "  5. 转换为 Word 格式"
        log "  6. 调用本脚本发送"
        exit 1
    fi
    
    # 发送报告
    send_report
    
    log "========== 任务完成 =========="
}

main
