From b0ea62236c16befc72294e0a74a684dfea038a86 Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Tue, 20 Oct 2020 00:27:21 -0400 Subject: Add talk IDs and code to generate them --- 2020/submissions.org | 165 ++++++++++++++++++++++++++++++--------------------- 1 file changed, 99 insertions(+), 66 deletions(-) (limited to '2020') diff --git a/2020/submissions.org b/2020/submissions.org index fbf343ca..04d0d2e8 100644 --- a/2020/submissions.org +++ b/2020/submissions.org @@ -165,6 +165,8 @@ SCHEDULED: <2020-11-28 Sat 09:00-09:30> :TARGET_TIME: 120 :MIN_TIME_SUM: 110 :DIFFERENCE: Extra: 10 +:TALK_ID: 01 +:CUSTOM_ID: talk01 :END: #+CALL: check_time() :eval yes @@ -196,6 +198,8 @@ SCHEDULED: <2020-11-28 Sat 09:33-09:43> :AVAILABILITY: prerec, maybe 9am-3pm EST :NAME: Sacha Chua :PREREC: planned +:TALK_ID: 02 +:CUSTOM_ID: talk02 :END: Name: Sacha Chua @@ -245,6 +249,8 @@ SCHEDULED: <2020-11-28 Sat 09:46-10:06> :MIN_TIME: 20 :AVAILABILITY: 9am-12pm EST :NAME: Leo Vivier +:TALK_ID: 03 +:CUSTOM_ID: talk03 :END: Name: Leo Vivier @@ -315,6 +321,8 @@ SCHEDULED: <2020-11-28 Sat 10:09-10:19> :MIN_TIME: 10 :AVAILABILITY: 8:30am EST-12pm EST :NAME: Bala Ramadurai +:TALK_ID: 04 +:CUSTOM_ID: talk04 :END: Name: Bala Ramadurai @@ -401,6 +409,8 @@ SCHEDULED: <2020-11-28 Sat 10:22-10:32> :MIN_TIME: 10 :AVAILABILITY: ok :NAME: Jonathan Gregory +:TALK_ID: 05 +:CUSTOM_ID: talk05 :END: Name: Jonathan Gregory @@ -460,6 +470,8 @@ SCHEDULED: <2020-11-28 Sat 10:35-10:45> :MAX_TIME: 10 :AVAILABILITY: 10am-5pm EST, daylight Central US :NAME: Grant Shangreaux +:TALK_ID: 06 +:CUSTOM_ID: talk06 :END: Name: Grant Shangreaux @@ -526,6 +538,8 @@ SCHEDULED: <2020-11-28 Sat 10:48-10:58> :MIN_TIME: 10 :AVAILABILITY: ok :NAME: Corwin Brust +:TALK_ID: 07 +:CUSTOM_ID: talk07 :END: Name: Corwin Brust @@ -576,6 +590,8 @@ SCHEDULED: <2020-11-28 Sat 11:01-11:21> :MAX_TIME: 50 :AVAILABILITY: PST, so maybe 11 AM EST - 5 PM EST? :NAME: Sid Kasivajhula +:TALK_ID: 08 +:CUSTOM_ID: talk08 :END: #+begin_quote @@ -666,6 +682,8 @@ SCHEDULED: <2020-11-28 Sat 11:24-11:44> :MIN_TIME: 20 :AVAILABILITY: After 4pm UTC - 11am-5pm EST :NAME: Andrew Tropin +:TALK_ID: 09 +:CUSTOM_ID: talk09 :END: Name: Andrew Tropin @@ -772,6 +790,8 @@ SCHEDULED: <2020-11-28 Sat 13:03-13:13> :MIN_TIME: 10 :AVAILABILITY: CET, so 9am-maybe 2pm EST (8pm CET) :NAME: Rainer König + :TALK_ID: 10 + :CUSTOM_ID: talk10 :END: #+begin_quote @@ -853,6 +873,8 @@ SCHEDULED: <2020-11-28 Sat 13:16-13:26> :MIN_TIME: 10 :AVAILABILITY: ok :NAME: Andrea +:TALK_ID: 11 +:CUSTOM_ID: talk11 :END: Name: Andrea @@ -915,6 +937,8 @@ SCHEDULED: <2020-11-28 Sat 13:29-13:49> :MAX_TIME: 50 :AVAILABILITY: ok, confirmed :NAME: Aldric +:TALK_ID: 12 +:CUSTOM_ID: talk12 :END: Name: Aldric @@ -968,6 +992,8 @@ SCHEDULED: <2020-11-28 Sat 13:52-14:02> :MIN_TIME: 10 :AVAILABILITY: 9am-12pm EST (in CET timezone)... see if 1-3pm EST (7-9pm CET) is still doable? :NAME: Leo Vivier +:TALK_ID: 13 +:CUSTOM_ID: talk13 :END: Name: Leo Vivier @@ -1040,6 +1066,8 @@ SCHEDULED: <2020-11-28 Sat 14:05-14:15> :MAX_TIME: 10 :AVAILABILITY: ok :NAME: Joseph Corneli, Raymond Puzio, and Cameron Ray Smith +:TALK_ID: 14 +:CUSTOM_ID: talk14 :END: Name: Joseph Corneli, Raymond Puzio, and Cameron Ray Smith @@ -1114,6 +1142,8 @@ SCHEDULED: <2020-11-28 Sat 14:18-14:38> :MIN_TIME: 20 :AVAILABILITY: ok :NAME: Adam Ard +:TALK_ID: 15 +:CUSTOM_ID: talk15 :END: Name: Adam Ard @@ -1188,6 +1218,8 @@ SCHEDULED: <2020-11-28 Sat 14:41-14:51> :MAX_TIME: 20 :AVAILABILITY: 9am-5pm CET, so 9am-12pm EST; see if 7pm-9pm CET (1-3pm EST is available) :NAME: Adolfo Villafiorita +:TALK_ID: 16 +:CUSTOM_ID: talk16 :END: Name: Adolfo Villafiorita @@ -1248,6 +1280,8 @@ SCHEDULED: <2020-11-28 Sat 14:54-15:14> :MIN_TIME: 20 :AVAILABILITY: 2:30-ish EST ok with tea; in CET timezone :NAME: Leo Vivier +:TALK_ID: 17 +:CUSTOM_ID: talk17 :END: Name: Leo Vivier @@ -1325,6 +1359,8 @@ SCHEDULED: <2020-11-28 Sat 15:17-15:37> :MAX_TIME: 20 :AVAILABILITY: ok :NAME: Noorah Alhasan +:TALK_ID: 18 +:CUSTOM_ID: talk18 :END: #+begin_quote @@ -1403,6 +1439,8 @@ SCHEDULED: <2020-11-28 Sat 15:40-16:00> :MIN_TIME: 20 :AVAILABILITY: 2:30-ish EST ok with tea; in CET timezone :NAME: Leo Vivier +:TALK_ID: 19 +:CUSTOM_ID: talk19 :END: Name: Leo Vivier @@ -1485,6 +1523,8 @@ SCHEDULED: <2020-11-28 Sat 16:03-16:13> :MIN_TIME: 10 :AVAILABILITY: ok :NAME: Brett Gilio +:TALK_ID: 20 +:CUSTOM_ID: talk20 :END: Name: Brett Gilio @@ -1546,6 +1586,8 @@ SCHEDULED: <2020-11-28 Sat 16:16-16:36> :MAX_TIME: 20 :AVAILABILITY: ok :NAME: Corwin Brust +:TALK_ID: 21 +:CUSTOM_ID: talk21 :END: Name: Corwin Brust @@ -1615,6 +1657,8 @@ SCHEDULED: <2020-11-28 Sat 17:03-17:43> :AVAILABILITY: ok :PREREC: planned :NAME: Eduardo Ochs +:TALK_ID: 22 +:CUSTOM_ID: talk22 :END: #+begin_quote @@ -1748,6 +1792,8 @@ SCHEDULED: <2020-11-29 Sun 09:33-09:53> :MIN_TIME: 20 :AVAILABILITY: Unavailable 1pm-2pm EST both days :NAME: Musa Al-hassy +:TALK_ID: 23 +:CUSTOM_ID: talk23 :END: #+begin_quote @@ -1863,6 +1909,8 @@ SCHEDULED: <2020-11-29 Sun 09:56-10:46> :AVAILABILITY: GMT+7, so earlier is better (9:30 EST?). Can pre-record and answer questions. :NAME: Tuấn-Anh Nguyễn :PREREC: planned +:TALK_ID: 24 +:CUSTOM_ID: talk24 :END: Name: Tuấn-Anh Nguyễn @@ -1923,6 +1971,8 @@ SCHEDULED: <2020-11-29 Sun 10:49-11:09> :MIN_TIME: 20 :AVAILABILITY: ok :NAME: Andrea +:TALK_ID: 25 +:CUSTOM_ID: talk25 :END: Name: Andrea @@ -1993,6 +2043,8 @@ SCHEDULED: <2020-11-29 Sun 11:12-11:22> :MIN_TIME: 10 :AVAILABILITY: Available both days, birthday on the 28th :NAME: Zen Monk Alain M. Lafon +:TALK_ID: 26 +:CUSTOM_ID: talk26 :END: Name: Zen Monk Alain M. Lafon @@ -2098,6 +2150,8 @@ SCHEDULED: <2020-11-29 Sun 13:03-13:13> :MIN_TIME: 10 :AVAILABILITY: Sun 12pm EST onwards :NAME: Pierce Wang +:TALK_ID: 27 +:CUSTOM_ID: talk27 :END: #+begin_quote @@ -2169,6 +2223,8 @@ SCHEDULED: <2020-11-29 Sun 13:16-13:26> :MIN_TIME: 10 :AVAILABILITY: 8am-10pm CET, so 9am-3pm EST :NAME: Vasilij "wasamasa" Schneidermann +:TALK_ID: 28 +:CUSTOM_ID: talk28 :END: #+begin_quote @@ -2235,6 +2291,8 @@ SCHEDULED: <2020-11-29 Sun 13:29-14:19> :MIN_TIME: 50 :AVAILABILITY: ok :NAME: Erik Elmshauser and Corwin Brust +:TALK_ID: 29 +:CUSTOM_ID: talk29 :END: Name: Erik Elmshauser and Corwin Brust @@ -2305,6 +2363,8 @@ SCHEDULED: <2020-11-29 Sun 14:22-14:42> :MIN_TIME: 20 :AVAILABILITY: ok :NAME: Corwin Brust +:TALK_ID: 30 +:CUSTOM_ID: talk30 :END: Name: Corwin Brust @@ -2418,6 +2478,8 @@ SCHEDULED: <2020-11-29 Sun 14:45-14:55> :MIN_TIME: 10 :AVAILABILITY: MST, so 11am-5pm EST :NAME: Gabriele Bozzola (@sbozzolo) +:TALK_ID: 31 +:CUSTOM_ID: talk31 :END: Name: Gabriele Bozzola (@sbozzolo) @@ -2474,6 +2536,8 @@ SCHEDULED: <2020-11-29 Sun 14:58-15:08> :MIN_TIME: 10 :AVAILABILITY: Central time, 10am EST-5pm EST :NAME: Grant Shangreaux +:TALK_ID: 32 +:CUSTOM_ID: talk32 :END: Name: Grant Shangreaux @@ -2547,6 +2611,8 @@ SCHEDULED: <2020-11-29 Sun 15:11-15:31> :MIN_TIME: 20 :AVAILABILITY: ok :NAME: Eric Abrahamsen +:TALK_ID: 33 +:CUSTOM_ID: talk33 :END: Name: Eric Abrahamsen @@ -2611,6 +2677,8 @@ SCHEDULED: <2020-11-29 Sun 15:34-15:54> :MIN_TIME: 20 :AVAILABILITY: afternoon if possible :NAME: Fermin MF +:TALK_ID: 34 +:CUSTOM_ID: talk34 :END: #+begin_quote @@ -2672,6 +2740,8 @@ SCHEDULED: <2020-11-29 Sun 15:57-16:17> :MIN_TIME: 20 :AVAILABILITY: after 12pm EST both days; confirmed available November 29, 1pm-4:30pm EST. :NAME: Matthew Zeng +:TALK_ID: 35 +:CUSTOM_ID: talk35 :END: Name: Matthew Zeng @@ -2725,6 +2795,8 @@ SCHEDULED: <2020-11-29 Sun 16:20-16:30> :MIN_TIME: 10 :AVAILABILITY: ok :NAME: Zachary Kanfer +:TALK_ID: 36 +:CUSTOM_ID: talk36 :END: Name: Zachary Kanfer @@ -2793,6 +2865,8 @@ SCHEDULED: <2020-11-29 Sun 16:30-17:00> :MIN_TIME: 10 :AVAILABILITY: ok :NAME: Corwin Brust + :TALK_ID: 37 + :CUSTOM_ID: talk37 :END: #+begin_quote @@ -2846,6 +2920,10 @@ SCHEDULED: <2020-11-29 Sun 16:30-17:00> fair use. * Code +:PROPERTIES: +:TALK_ID: 38 +:CUSTOM_ID: talk38 +:END: #+NAME: check_time #+begin_src emacs-lisp :export code :eval no @@ -2858,6 +2936,26 @@ SCHEDULED: <2020-11-29 Sun 16:30-17:00> #+end_src #+begin_src emacs-lisp :results none +(defun conf/assign-ids () + (interactive) + (goto-char (point-min)) + ;; Determine the maximum ID assigned so far + (let ((id + (1+ + (apply 'max + (mapcar + 'string-to-number + (org-map-entries + (lambda () + (let ((org-trust-scanner-tags t)) + (org-entry-get (point) "TALK_ID"))) "TALK_ID>0" 'file)))))) + (goto-char (point-min)) + (while (re-search-forward ":NAME: " nil t) + (unless (org-entry-get (point) "TALK_ID") + (org-set-property "TALK_ID" (format "%02d" id)) + (org-set-property "CUSTOM_ID" (format "talk%02d" id)) + (setq id (1+ id)))))) + (defun conf/update-talks () (interactive) (save-excursion @@ -2921,72 +3019,7 @@ The total is written to the MIN_TIME_SUM property of this heading" (lambda () (org-entry-get (point) "MIN_TIME")) nil 'tree)))))))) #+end_src -* COMMENT Notes - -O1 - main organizer, O2 - secondary organizer or volunteer - - -** Overview -- 1 green room for speaker checkin, 4 rooms -- 4 rooms streamed as room sources. O1 picks up the appropriate source and uses it for main conference mount point and individual talk mount points -- main conference can be streamed through OBS if that doesn't work out -** Things to check or decide -- Mail merge? -- Amin to investigate if Icecast can take one stream source and send it to the main conference stream and the individual talk stream -- Assign rooms shortly before presentation - - *Shortly before presentation:* accommodates reshuffling -- Generating static images - - Before the presentation: Talk title, speaker - - Speaker checked in - - After the presentation: pointer to main conference stream - - After the conference: conference has ended, we'll take some time to prepare the recording - -** Before the conference -- Do tech checks and get alternative ways to contact speakers (phone number? IRC nick? Something that goes ding?) -- Turn on audio alert -- Install Mute Tab extension -** Tech check -- Explain process -- Test audio, webcam, screensharing, collaborative pad -** Shortly before the presentation -- Speaker joins green room (O2 home room). O2 gets alert -- O2 directs speaker to available room -- Speaker joins talk room -- O2 makes speaker presenter and moderator (so they can kick out recorder when done), does tech check -- Speaker tries screen sharing and webcam, then returns to uploaded presentation -- O2 starts secondary stream and recording, checks individual page -- O2 notifies O1 with link to the talk room -- O1 joins meeting -- O1 sets conference stream to individual talk endpoint -- O2 starts recording in BBB -** During the presentation -- Speaker presents, keeping an eye on the collaborative pad for questions -- O1 stays with speaker to help with questions and timing -- O2 wanders off to do the tech check with the next person and pings O1 when ready -** After the presentation -- O1 announces next steps: If you want to continue the conversation, go to the individual talk page -- O1 goes to next talk when ready -- Speaker continues with extended presentation if they want -** After the extended presentation (if any) -- Speaker removes the recorder/streamer user to end the stream and recording -- Speaker stops the BBB recording -** Scenarios -*** Prerecorded presentations -- O1 streams presentation to both endpoints (is there a neat command-line way to do this?) -https://stackoverflow.com/questions/7869190/is-it-possible-to-pull-a-rtmp-stream-from-one-server-and-broadcast-it-to-another -or maybe IceCast can handle the splitting -*** Tech issues -- If can't be easily resolved, play pre-recorded talk early and try again later (or follow up) -- Stream a technical issues slide to the end point -*** Speaker can stream directly from computer over RTMP -- Can skip BigBlueButton entirely if they want -- Speaker starts streaming to talk endpoint -- O2 verifies that it's playing and communicates with speaker through collaborative pad -- O1 switches conference stream to talk endpoint -*** Speaker is giving another talk soon -- Stay in same room -- O2 checks in near the time of the next talk -- O2 stops and restarts recorder, giving it the next talk's stream endpoint + * COMMENT Possible rough flow suggested by Sacha -- cgit v1.2.3