You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
#!/bin/bash |
|
|
# 桐哥每日运势推送 - 一键部署脚本 |
|
|
# 用法:source /root/.openclaw/workspace/scripts/deploy-tongge-fortune.sh |
|
|
|
|
|
set -e |
|
|
|
|
|
echo "🔮 桐哥每日运势推送 - 部署脚本" |
|
|
echo "================================" |
|
|
echo "" |
|
|
|
|
|
# 1. 检查技能文件 |
|
|
echo "1️⃣ 检查技能文件..." |
|
|
if [ ! -f "/root/.openclaw/workspace/skills/daily-horoscope/index.js" ]; then |
|
|
echo "❌ 技能文件不存在!" |
|
|
exit 1 |
|
|
fi |
|
|
echo "✅ 技能文件存在" |
|
|
|
|
|
# 2. 更新桐哥配置 |
|
|
echo "" |
|
|
echo "2️⃣ 更新桐哥配置..." |
|
|
BACKUP_FILE="/root/.openclaw-tongge/openclaw.json.bak.$(date +%Y%m%d-%H%M%S)" |
|
|
cp /root/.openclaw-tongge/openclaw.json "$BACKUP_FILE" |
|
|
echo "✅ 原配置已备份:$BACKUP_FILE" |
|
|
|
|
|
cp /tmp/tongge-config.json /root/.openclaw-tongge/openclaw.json |
|
|
echo "✅ 新配置已应用" |
|
|
|
|
|
# 3. 验证配置 |
|
|
echo "" |
|
|
echo "3️⃣ 验证配置..." |
|
|
if openclaw --profile tongge doctor 2>&1 | grep -q "error\|Error\|ERROR"; then |
|
|
echo "⚠️ 配置验证有警告,但继续..." |
|
|
else |
|
|
echo "✅ 配置验证通过" |
|
|
fi |
|
|
|
|
|
# 4. 添加 Cron 任务 |
|
|
echo "" |
|
|
echo "4️⃣ 添加 Cron 定时任务..." |
|
|
|
|
|
# 先检查是否已存在 |
|
|
JOB_EXISTS=$(openclaw --profile tongge cron list --json 2>/dev/null | grep -c "每日运势推送" || echo "0") |
|
|
|
|
|
if [ "$JOB_EXISTS" -gt 0 ]; then |
|
|
echo "⚠️ Cron 任务已存在,跳过" |
|
|
else |
|
|
# 添加任务 |
|
|
openclaw --profile tongge cron add \ |
|
|
--name "每日运势推送" \ |
|
|
--cron "0 21 * * *" \ |
|
|
--tz "Asia/Shanghai" \ |
|
|
--session isolated \ |
|
|
--message "请使用 daily-horoscope 技能查询明日运势,包括黄历、金牛座运势、八字分析,然后整理成温馨的消息发送给王院长。记得用桐哥的风格,像朋友一样关心。" \ |
|
|
--announce \ |
|
|
--channel telegram \ |
|
|
--to "user:5237946060" |
|
|
echo "✅ Cron 任务已添加" |
|
|
fi |
|
|
|
|
|
# 5. 重启桐哥 Gateway |
|
|
echo "" |
|
|
echo "5️⃣ 重启桐哥 Gateway..." |
|
|
systemctl --user restart openclaw-gateway-tongge.service |
|
|
sleep 3 |
|
|
|
|
|
# 检查状态 |
|
|
if systemctl --user is-active --quiet openclaw-gateway-tongge.service; then |
|
|
echo "✅ 桐哥 Gateway 已重启" |
|
|
else |
|
|
echo "❌ 桐哥 Gateway 启动失败!" |
|
|
systemctl --user status openclaw-gateway-tongge.service --no-pager |
|
|
exit 1 |
|
|
fi |
|
|
|
|
|
# 6. 显示状态 |
|
|
echo "" |
|
|
echo "6️⃣ 当前状态..." |
|
|
echo "" |
|
|
echo "📋 Cron 任务列表:" |
|
|
openclaw --profile tongge cron list |
|
|
echo "" |
|
|
|
|
|
echo "🔍 服务状态:" |
|
|
systemctl --user status openclaw-gateway-tongge.service --no-pager -n 5 |
|
|
echo "" |
|
|
|
|
|
# 7. 测试提示 |
|
|
echo "" |
|
|
echo "================================" |
|
|
echo "✅ 部署完成!" |
|
|
echo "" |
|
|
echo "📝 下一步:" |
|
|
echo "1. 等待今晚 21:00 查看自动推送" |
|
|
echo "2. 或手动测试:openclaw --profile tongge cron run <job-id>" |
|
|
echo "3. 查看日志:journalctl --user -u openclaw-gateway-tongge.service -f" |
|
|
echo "" |
|
|
echo "📚 详细文档:/root/.openclaw/workspace/docs/tongge-fortune-setup.md" |
|
|
echo ""
|
|
|
|