35 lines
986 B
Bash
35 lines
986 B
Bash
|
|
#!/usr/bin/env bash
|
||
|
|
# control.sh - 播放控制测试
|
||
|
|
# 用法: control.sh <action> [k=v ...]
|
||
|
|
# action 取值(与文档 §6.1 CONTROL action 字段保持一致):
|
||
|
|
# PLAY | PAUSE | FULLSCREEN_ENTER | FULLSCREEN_EXIT |
|
||
|
|
# SEEK_FORWARD | SEEK_BACKWARD | SEEK_TO |
|
||
|
|
# PREV | NEXT | SELECT_INDEX | PAGE_NEXT | PAGE_PREV | GOTO_PAGE
|
||
|
|
#
|
||
|
|
# 示例:
|
||
|
|
# control.sh PLAY
|
||
|
|
# control.sh SEEK_FORWARD seconds=10
|
||
|
|
# control.sh SEEK_TO seconds=300
|
||
|
|
# control.sh SELECT_INDEX index=3
|
||
|
|
# control.sh GOTO_PAGE page=2
|
||
|
|
|
||
|
|
set -e
|
||
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||
|
|
# shellcheck disable=SC1091
|
||
|
|
source "${SCRIPT_DIR}/lib/common.sh"
|
||
|
|
|
||
|
|
require_adb
|
||
|
|
check_receiver_exists
|
||
|
|
|
||
|
|
if [ $# -lt 1 ]; then
|
||
|
|
log_err "缺少 action"
|
||
|
|
echo "用法: $0 <action> [k=v ...]" >&2
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
ACTION="$1"; shift
|
||
|
|
|
||
|
|
print_header "播放控制 CONTROL/${ACTION}"
|
||
|
|
PAYLOAD=$(build_control_payload "${ACTION}" "$@")
|
||
|
|
send_voice_broadcast "CONTROL" "${PAYLOAD}"
|
||
|
|
log_ok "预期在播放页执行 ${ACTION}"
|