Refine naming and playlist resume

This commit is contained in:
codex
2026-06-09 22:43:33 +02:00
parent b48aa88e32
commit a953a3a9b1
5 changed files with 122 additions and 58 deletions
+9 -1
View File
@@ -80,6 +80,10 @@
"Guest"
(substring normalized 0 (min 48 (length normalized))))))
(defun kkkmeet-server--nonnegative-number (value)
"Return VALUE as a nonnegative number, or zero."
(max 0 (if (numberp value) value 0)))
(defun kkkmeet-server--normalize-playlist (playlist)
"Return a sanitized YouTube PLAYLIST vector."
(let ((seen (make-hash-table :test 'equal))
@@ -90,6 +94,8 @@
(t nil)))
(let* ((video-id (and (listp item) (alist-get 'videoId item)))
(title (and (listp item) (alist-get 'title item)))
(position (and (listp item) (alist-get 'position item)))
(duration (and (listp item) (alist-get 'duration item)))
(safe-video-id (and video-id (format "%s" video-id)))
(safe-title (string-trim (format "%s" (or title "")))))
(when (and safe-video-id
@@ -100,7 +106,9 @@
(push `((videoId . ,safe-video-id)
(title . ,(if (string-empty-p safe-title)
(format "YouTube video %s" safe-video-id)
safe-title)))
safe-title))
(position . ,(kkkmeet-server--nonnegative-number position))
(duration . ,(kkkmeet-server--nonnegative-number duration)))
items))))
(vconcat (nreverse items))))