From 953a1b4d77ad8dd3c1c906fbff660806722a39af Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Fri, 25 Nov 2022 13:20:50 -0500 Subject: add to checkin checklist --- emacsconf-pad.el | 85 +++++++++++++++++++++++++++++++++++++++----------------- emacsconf.el | 24 ++++++++++------ 2 files changed, 75 insertions(+), 34 deletions(-) diff --git a/emacsconf-pad.el b/emacsconf-pad.el index b9f007c..87793c8 100644 --- a/emacsconf-pad.el +++ b/emacsconf-pad.el @@ -320,17 +320,21 @@ ${next-talk-list} ;; (emacsconf-pad-export-initial-content-for-hyperlists "/ssh:media:~/backstage/hyperlists") (defun emacsconf-pad-format-shift-hyperlist (shift info) - (let* ((prefixed (list + (let* ((track (emacsconf-get-track (plist-get shift :track))) + (prefixed (list :start (plist-get shift :start) :end (plist-get shift :end) :base-url emacsconf-base-url :year emacsconf-year + :ssh-port "46668" + :vnc-port (plist-get track :vnc-port) :host (format "%s" (emacsconf-surround "HOST-" (plist-get shift :host) "" "HOST")) :stream (format "%s" (emacsconf-surround "STREAM-" (plist-get shift :streamer) "" "STREAM")) :irc-volunteer (format "%s" (emacsconf-surround "IRC-" (plist-get shift :irc) "" "IRC")) - :track-id (plist-get (emacsconf-get-track (plist-get shift :track)) :id) + :track-id (plist-get track :id) + :conf-id emacsconf-id :checkin (format "%s" (emacsconf-surround "CHECKIN-" (plist-get shift :checkin) "" "CHECKIN")) :pad (format "%s" (emacsconf-surround "PAD-" (plist-get shift :pad) "" "PAD")) :coord (format "%s" (emacsconf-surround "COORD-" (plist-get shift :coord) "" "COORD")) @@ -364,29 +368,32 @@ ${next-talk-list}
  • [ ] ${pad}: Open ${base-url}${year}/talks for links to the pads
  • [ ] ${stream}: Start recording with OBS " "Talks @@ -409,26 +416,49 @@ ${next-talk-list} (defun emacsconf-pad-format-checkin-hyperlist (talk) (emacsconf-replace-plist-in-string - (append (list :time - (format-time-string "%H:%M" (plist-get talk :checkin-time) emacsconf-timezone) - :start - (format-time-string "%H:%M" (plist-get talk :start-time) emacsconf-timezone)) + (append (list + :time + (format-time-string "%H:%M" (plist-get talk :checkin-time) emacsconf-timezone) + :live + (format-time-string "%H:%M" (plist-get talk :live-time) emacsconf-timezone) + :start + (format-time-string "%H:%M" (plist-get talk :start-time) emacsconf-timezone) + :bbb-checklist + "") talk) - (pcase (or (plist-get talk :q-and-a) "") - ((rx "live") - "
  • [ ] ${time} ${checkin}: ${speakers} should be checked into ${bbb-backstage} and set as moderator(s) for talk time of ${start}
  • ") - ((rx "IRC") - "
  • [ ] ${time} ${checkin}: ${speakers} should be in #${channel} (${irc-nick}) for talk time of ${start}
  • ") - ((rx "Mumble") - "
  • [ ] ${time} ${checkin}: ${speakers} should be Mumble for talk time of ${start}
  • ") - (_ "")))) + (if (plist-get talk :video-duration) + (pcase (or (plist-get talk :q-and-a) "") + ((rx "live") + "
  • [ ] ${time} ${speakers} (${irc}) should be checked into ${bbb-backstage} and set as moderator(s) to go live at ${live} ${absolute-url} +${bbb-checklist}
  • ") + ((or (rx "IRC") (rx "pad")) + "
  • [ ] ${time} ${speakers} (${irc}) should be in #${channel} to go live at ${live} ${absolute-url}
  • ") + ((rx "Mumble") + "
  • [ ] ${time} ${speakers} (${irc}) should be in Mumble to go live at ${live} ${absolute-url}
  • ") + (_ "")) + "
  • [ ] ${time} LIVE: ${speakers} (${irc}) should be checked into ${bbb-backstage} and set as moderator(s) for ${absolute-url}${bbb-checklist} to go live at ${start}
  • "))) (defun emacsconf-pad-prepopulate-checkins (&optional info) (interactive) (setq info (or info (emacsconf-prepare-for-display (emacsconf-get-talk-info)))) (mapc (lambda (day) - (let ((pad-id (concat "checkin-" (downcase (format-time-string "%a" (plist-get (cadr day) :checkin-time)))))) + (let ((pad-id (concat "checkin-" (downcase (format-time-string "%a" (plist-get (cadr day) :checkin-time))))) + ) (emacsconf-pad-create-pad pad-id) (emacsconf-pad-set-html pad-id @@ -470,7 +500,7 @@ ${next-talk-list} (interactive) (let ((info (emacsconf-prepare-for-display (emacsconf-get-talk-info)))) (mapc (lambda (shift) - (emacsconf-pad-prepopulate-shift-hyperlists info)) + (emacsconf-pad-prepopulate-shift-hyperlist shift info)) emacsconf-shifts))) (defun emacsconf-pad-expand-intro (talk) @@ -583,6 +613,9 @@ ${next-talk-list}
  • [? Q&A is done early]
  • ")) ((rx "irc") diff --git a/emacsconf.el b/emacsconf.el index 830ba60..6f289c0 100644 --- a/emacsconf.el +++ b/emacsconf.el @@ -577,15 +577,21 @@ (defun emacsconf-add-checkin-time (o) (unless (or (null (plist-get o :status)) (null (plist-get o :email)) - (string= (plist-get o :status) "CANCELLED")) + (string= (plist-get o :status) "CANCELLED") + (string-match "after" (plist-get o :q-and-a))) (if (string= (plist-get o :status) "WAITING_FOR_PREREC") - (progn - (plist-put - o :checkin-label - "1 hour before the scheduled start of your talk, since you don't have a pre-recorded video") - (plist-put - o :checkin-time - (time-subtract (plist-get o :start-time) (seconds-to-time 3600)))) + (plist-put o :live-time + (plist-get o :start-time)) + (progn + (plist-put + o :checkin-label + "1 hour before the scheduled start of your talk, since you don't have a pre-recorded video") + (plist-put + o :checkin-time + (time-subtract (plist-get o :start-time) (seconds-to-time 3600)))) + (plist-put o :live-time + (time-add (plist-get o :start-time) + (seconds-to-time (* 60 (string-to-number (plist-get o :video-time)))))) (plist-put o :checkin-label "30 minutes before the scheduled start of your Q&A, since you have a pre-recorded video") (when (plist-get o :video-time) @@ -1017,11 +1023,13 @@ :watch "https://live.emacsconf.org/2022/watch/gen/" :tramp "/ssh:emacsconf-gen@res.emacsconf.org#46668:" :start "09:00" :end "17:00" + :vnc-port "5905" :status "offline") (:name "Development" :color "skyblue" :id "dev" :channel "emacsconf-dev" :watch "https://live.emacsconf.org/2022/watch/dev/" :tramp "/ssh:emacsconf-dev@res.emacsconf.org#46668:" :start "09:00" :end "17:00" + :vnc-port "5906" :status "offline"))) (defvar emacsconf-shifts (list (list :id "sat-am-gen" :track "General" :start "2022-12-03T08:00:00-0500" :end "2022-12-03T12:00:00-0500" :host "zaeph" :streamer "corwin" :checkin "sachac" :irc "sachac" :pad "publicvoit" :coord "sachac") (list :id "sat-pm-gen" :track "General" :start "2022-12-03T13:00:00-0500" :end "2022-12-03T18:00:00-0500" :host "zaeph" :streamer "corwin" :checkin "FlowyCoder" :irc "dto" :pad "publicvoit" :coord "sachac") (list :id "sat-am-dev" :track "Development" :start "2022-12-03T08:00:00-0500" :end "2022-12-03T12:00:00-0500" :host "bandali" :streamer "bandali" :checkin "sachac" :irc "dto" :coord "sachac") (list :id "sat-pm-dev" :track "Development" :start "2022-12-03T13:00:00-0500" :end "2022-12-03T18:00:00-0500" :host "vetrivln" :streamer "bandali" :checkin "FlowyCoder" :irc "vetrivln" :coord "sachac") (list :id "sun-am-gen" :track "General" :start "2022-12-04T08:00:00-0500" :end "2022-12-04T12:00:00-0500" :host "zaeph" :streamer "corwin" :checkin "sachac" :irc "sachac" :pad "publicvoit" :coord "sachac") (list :id "sun-pm-gen" :track "General" :start "2022-12-04T13:00:00-0500" :end "2022-12-04T18:00:00-0500" :host "zaeph" :streamer "jman" :checkin "FlowyCoder" :irc "dto" :pad "publicvoit" :coord "sachac") (list :id "sun-am-dev" :track "Development" :start "2022-12-04T08:00:00-0500" :end "2022-12-04T12:00:00-0500" :host "bandali" :streamer "bandali" :checkin "sachac" :irc "dto" :coord "sachac") (list :id "sun-pm-dev" :track "Development" :start "2022-12-04T13:00:00-0500" :end "2022-12-04T18:00:00-0500" :host "vetrivln" :streamer "bandali" :checkin "FlowyCoder" :irc "vetrivln" :coord "sachac")) -- cgit v1.2.3