Tools update
This commit is contained in:
@@ -191,6 +191,40 @@ PY
|
|||||||
printf '%s' "${__id:-}"
|
printf '%s' "${__id:-}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# --- OWUI file helpers -------------------------------------------------------
|
||||||
|
|
||||||
|
_owui_file_get() {
|
||||||
|
# usage: _owui_file_get <file_id>
|
||||||
|
local fid="$1"
|
||||||
|
curl -sS -H "Authorization: Bearer $OPENWEBUI_API_KEY" \
|
||||||
|
"$(_owui_url)/api/v1/files/$fid"
|
||||||
|
}
|
||||||
|
|
||||||
|
_owui_wait_file() {
|
||||||
|
# usage: _owui_wait_file <file_id> [timeout_secs]
|
||||||
|
local fid="$1"
|
||||||
|
local timeout="${2:-120}" # default 2 minutes
|
||||||
|
local start now status content_len
|
||||||
|
start="$(date +%s)"
|
||||||
|
while :; do
|
||||||
|
now="$(date +%s)"
|
||||||
|
if [ $((now - start)) -ge "$timeout" ]; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
# Fetch status and content length
|
||||||
|
read -r status content_len <<EOF
|
||||||
|
$(_owui_file_get "$fid" \
|
||||||
|
| python3 -c 'import sys, json
|
||||||
|
d=json.load(sys.stdin)
|
||||||
|
s=((d.get("data") or {}).get("status") or "")
|
||||||
|
c=len(((d.get("data") or {}).get("content") or ""))
|
||||||
|
print(s, c)')
|
||||||
|
EOF
|
||||||
|
[ "$status" = "completed" ] && [ "${content_len:-0}" -gt 0 ] && return 0
|
||||||
|
sleep 2
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
_help() {
|
_help() {
|
||||||
cat <<EOF
|
cat <<EOF
|
||||||
podx-tools — Meili & OpenWebUI helpers
|
podx-tools — Meili & OpenWebUI helpers
|
||||||
|
Reference in New Issue
Block a user