#!/bin/bash # send-qr.sh — 发送指定账号的登录二维码(固定操作,2026-08-31) # 用法:bash send-qr.sh [group|dm] # hr1/hr2 指定账号;both=两个都发 # group 发到数字HR群(默认——主场景是群里@机器人要码) # dm 发到用户私聊(仅用户在私聊明确要码时用) # 说明:强制刷新登录页拿新码(保证有效),发送失败自动降级纯文字。 # 这是固化脚本——AI 被要求发二维码时直接执行本命令,不做多余分析。 set -u SCRIPTS=/opt/data/skills/recruitment-resume-screener/scripts HERMES=/opt/hermes/.venv/bin/hermes DM='oc_d09c77b62ca5f90f6699830fbc695c44' GROUP='oc_7ef4980f25ec2a80bb013d5dd79b9864' ACCTS="${1:?用法: send-qr.sh [group|dm]}" TARGET="${2:-group}" [ "$TARGET" = "dm" ] && DEST=$DM || DEST=$GROUP [ "$ACCTS" = "both" ] && ACCTS="hr1 hr2" for ACCT in $ACCTS; do case $ACCT in hr1) PORT=9223; LABEL="Chrome·合塑账号";; hr2) PORT=9225; LABEL="Edge·派卡账号";; *) echo "未知账号: $ACCT(只支持 hr1/hr2/both)"; exit 1;; esac QR=/tmp/zhaopin-login-qr-$ACCT-request.png echo "[$ACCT] 抓取二维码(刷新登录页拿新码)..." if node "$SCRIPTS/login-qrcode.js" $PORT $QR 2>&1 | grep -q SAVED && [ -s "$QR" ]; then printf "🚨 当前%s(%s)账号登录二维码(实时抓取):\n扫码可重新登录" "$ACCT" "$LABEL" > /tmp/qr-req-$ACCT.txt echo "MEDIA:$QR" >> /tmp/qr-req-$ACCT.txt $HERMES send -t "feishu:$DEST" -f /tmp/qr-req-$ACCT.txt >/dev/null 2>&1 \ && echo "[$ACCT] ✅ 已发送二维码 → $([ "$DEST" = "$GROUP" ] && echo 群 || echo 私聊)" \ || echo "[$ACCT] ❌ 发送失败" else echo "[$ACCT] ❌ 二维码抓取失败(CDP不通或页面异常)" fi done