diff options
Diffstat (limited to '')
-rw-r--r-- | 2022/organizers-notebook.md | 310 | ||||
-rw-r--r-- | 2022/organizers-notebook/index.org | 64 |
2 files changed, 330 insertions, 44 deletions
diff --git a/2022/organizers-notebook.md b/2022/organizers-notebook.md index 16ca48d7..a60d30e2 100644 --- a/2022/organizers-notebook.md +++ b/2022/organizers-notebook.md @@ -409,6 +409,21 @@ interests you! <https://pad.emacsconf.org/premortem> +### TODO Click on stuff with xdotool + +;; type emacsconf +(emacsconf-stream-track-ssh + (emacsconf-get-track “General”) + (split-string “xdotool mousemove 791 512 click 1 sleep 1 key Ctrl+a type emacsconf”)) +(emacsconf-stream-track-ssh + (emacsconf-get-track “General”) + (split-string “xdotool mousemove 558 160 click 1”)) + +xdotool mousemove 253 176 click 1 +xdotool mousemove 215 164 click 1 +xdotool key f11 + + ### DONE Make copyable version of bbb redirect :derisk: @@ -431,7 +446,7 @@ interests you! ### TODO Try a reboot -### STARTED icecast fallback :derisk:sachac: +### DONE icecast fallback :derisk:sachac: #### Creating the files @@ -512,15 +527,52 @@ Input #0, matroska,webm, from ’http://live0.emacsconf.org:8001/gen.webm&rs ### TODO Make sure things are okay for me to handle both streams :sachac: -#### TODO Add autokey shortcuts +#### DONE Add keyboard shortcuts + +<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> + + +<colgroup> +<col class="org-left" /> +<col class="org-left" /> +</colgroup> +<tbody> +<tr> +<td class="org-left">S-g</td> +<td class="org-left">gen VNC</td> +</tr> -#### TODO figure out left/right to keep track of both streams +<tr> +<td class="org-left">S-d</td> +<td class="org-left">dev VNC</td> +</tr> -#### TODO Guard against over-announcing by paying attention to erc -If it was the most recently announced talk in the channel, don’t re-announce it +<tr> +<td class="org-left">S-G</td> +<td class="org-left">gen console</td> +</tr> + + +<tr> +<td class="org-left">S-D</td> +<td class="org-left">dev console</td> +</tr> + + +<tr> +<td class="org-left">S-o</td> +<td class="org-left">orga@res console</td> +</tr> +</tbody> +</table> + + +#### DONE figure out left/right to keep track of both streams + +I’m just going to do this with pavucontrol so that it’s not too complicated #### TODO Tweak my audio setup for push-to-talk? @@ -529,6 +581,24 @@ If it was the most recently announced talk in the channel, don’t re-announ <https://gist.github.com/zouppen/bdd40a42c77ca387fae8bace0f2ed3e0> +#### STARTED Guard against over-announcing by paying attention to erc + +Goal: Don’t spam the channel with talk announcements + +If it was announced in the last 5 minutes, don’t reannounce it as part +of the hook, but allow reannouncements if called manually. + +How to detect announcements: + +If it was the most recently announced talk in the channel, don’t re-announce it + + (defun emacsconf-erc-notice-inserted-string (string) + (message "ERC: %s" string) + ) + + (remove-hook 'erc-insert-pre-hook #'emacsconf-erc-notice-inserted-string) + + <a id="qa"></a> ## TODO Make checkin and Q&A process slide :sachac: @@ -729,6 +799,108 @@ videotestsrc num\_buffers=2450 ! video/x-raw,width=400,height=300,framerate=10/1 #### DONE Revisit OBS and streaming setup to prepare for the dry run next weekend +#### DONE Make mini dry run hyperlist with buttons + +- hh:mm slug + - hyperlist note + - set talk playing + - play intro + - play talk + - set talk closed q + - join bbb + - set talk open q + - set talk to archive + +(emacsconf-hyperlist-show-streamer-day “2022-12-03”) +(emacsconf-hyperlist-show-streamer-day “2022-12-04”) + +Testing: + +<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> + + +<colgroup> +<col class="org-left" /> + +<col class="org-left" /> + +<col class="org-left" /> + +<col class="org-left" /> + +<col class="org-left" /> +</colgroup> +<tbody> +<tr> +<td class="org-left"> </td> +<td class="org-left">intro</td> +<td class="org-left">talk</td> +<td class="org-left">Q&A</td> +<td class="org-left">Expected</td> +</tr> + + +<tr> +<td class="org-left">journalism</td> +<td class="org-left">recorded</td> +<td class="org-left">live</td> +<td class="org-left"> </td> +<td class="org-left"> </td> +</tr> + + +<tr> +<td class="org-left">school</td> +<td class="org-left">recorded</td> +<td class="org-left">recorded</td> +<td class="org-left">IRC</td> +<td class="org-left"> </td> +</tr> + + +<tr> +<td class="org-left">handwritten</td> +<td class="org-left">recorded</td> +<td class="org-left">recorded</td> +<td class="org-left">BBB</td> +<td class="org-left"> </td> +</tr> + + +<tr> +<td class="org-left">treesitter</td> +<td class="org-left"> </td> +<td class="org-left"> </td> +<td class="org-left"> </td> +<td class="org-left"> </td> +</tr> + + +<tr> +<td class="org-left">health</td> +<td class="org-left">live</td> +<td class="org-left">recorded</td> +<td class="org-left">BBB</td> +<td class="org-left"> </td> +</tr> + + +<tr> +<td class="org-left">jupyter</td> +<td class="org-left">live</td> +<td class="org-left">live</td> +<td class="org-left">BBB</td> +<td class="org-left"> </td> +</tr> +</tbody> +</table> + +- journalism: recorded intro, recorded talk, live + +(emacsconf-hyperlist-show-streamer-day “2022-12-03” nil +(list “journalism” “school” “treesitter” “handwritten” “health” “jupyter”)) + + ### DONE Do a dry run for the dry run @@ -928,6 +1100,9 @@ Try them in an Etherpad [Use Mumble for backchannel coordination and also on-stage](file:///home/sacha/proj/emacsconf/wiki/2022/organizers-notebook/index.md) +#### TODO make sure live talks are on the checkin list + + ### DONE Make backstage redirects for pad and qa so that hosts and streamers can have an easier time ex: @@ -1801,7 +1976,7 @@ AM: 9-12 PM EST, PM: 1-5 PM EST (plus a little extra for setup/transition) Saturday Dec 3 -<table id="orge3c3e33" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> +<table id="orgebe9818" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> <colgroup> @@ -1837,7 +2012,7 @@ Saturday Dec 3 <td class="org-left">zaeph</td> <td class="org-left">sachac</td> <td class="org-left">corwin</td> -<td class="org-left">bandali</td> +<td class="org-left">dto</td> <td class="org-left">publicvoit</td> <td class="org-left">sachac</td> </tr> @@ -1848,7 +2023,7 @@ Saturday Dec 3 <td class="org-left">zaeph</td> <td class="org-left">sachac</td> <td class="org-left">FlowyCoder</td> -<td class="org-left">dto</td> +<td class="org-left">bandali</td> <td class="org-left">publicvoit</td> <td class="org-left">sachac</td> </tr> @@ -1881,7 +2056,7 @@ publicvoit - pad until 4pm on Sat, until 2pm on Sun Sunday Dec 4 -<table id="orgd8bd5e3" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> +<table id="org0f580e1" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> <colgroup> @@ -1917,7 +2092,7 @@ Sunday Dec 4 <td class="org-left">zaeph</td> <td class="org-left">sachac</td> <td class="org-left">corwin</td> -<td class="org-left">bandali</td> +<td class="org-left">dto</td> <td class="org-left">publicvoit</td> <td class="org-left">sachac</td> </tr> @@ -1928,7 +2103,7 @@ Sunday Dec 4 <td class="org-left">zaeph</td> <td class="org-left">jman</td> <td class="org-left">FlowyCoder</td> -<td class="org-left">dto</td> +<td class="org-left">bandali</td> <td class="org-left">publicvoit</td> <td class="org-left">sachac</td> </tr> @@ -2699,33 +2874,64 @@ Exception: [CHECK is unavailable](#check-gone) #### DONE Add intros to wiki pages -#### SOMEDAY Cache video data - audio processed +#### SOMEDAY Cache video data - audio processed? #### DONE Cache video data - edited captions -##### TODO Double-check that all the edited captions have the header +##### DONE Double-check that all the edited captions have the header + + (mapcar (lambda (o) + (plist-get o :slug)) + (seq-filter + (lambda (o) (and + (string= (plist-get o :status) "TO_STREAM") + (null (plist-get o :captions-edited)))) + (emacsconf-get-talk-info))) + + +#### DONE Set publishing on a timer :sachac: -#### TODO Set publishing on a timer :sachac: +##### DONE Single timer, batch timers for playing and closed q +(emacsconf-stream-schedule-timers) -#### TODO Simplify manual setting of a timer to update task status :sachac: -maybe use at? +#### DONE Simplify manual setting of a timer to update task status :sachac: +emacsconf-stream-schedule-talk-status-change -#### TODO Rename update-task-status.sh to update :sachac: + +#### DONE Rename update-task-status.sh to talk :sachac: #### DONE make sure captions are included on the wiki page -#### TODO Set public based on time, expose more interactive functions :sachac: +#### DONE Set public based on time, expose more interactive functions :sachac: so that the wiki doesn’t have to depend on synchronized conf.org state + (cl-assert + (plist-get + (emacsconf-add-talk-status (list :start-time (date-to-time "2022-01-01T12:00:00-0400"))) + :public)) + (cl-assert + (null + (plist-get + (emacsconf-add-talk-status (list :start-time (date-to-time "2030-01-01T12:00:00-0400"))) + :public))) + (cl-assert + (plist-get + (emacsconf-add-talk-status (list :start-time (date-to-time "2030-01-01T12:00:00-0400") + :status "PLAYING")) + :public)) + + +#### TODO figure out if we need to adapt to org-time-stamp-formats change removing brackets + ### Handle Q&A @@ -2951,7 +3157,7 @@ Probably focus on grabbing the audio first and seeing what’s worth keeping Make a table of the form -<table id="orgfd89639" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> +<table id="org09d841b" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> <colgroup> @@ -3261,12 +3467,12 @@ mpv –vf=negate $url export SLUG=the ID of the talk -- [TO\_STREAM -> PLAYING](#org29019ab):stream: +- [TO\_STREAM -> PLAYING](#org6f04e7b):stream: - [CLOSED\_Q -> OPEN\_Q](#open) - [OPEN\_Q -> TO\_ARCHIVE](#archive) -<a id="org29019ab"></a> +<a id="org6f04e7b"></a> ### TO\_STREAM -> PLAYING :stream: @@ -5147,6 +5353,9 @@ emacsconf-todo-hooks ### CANCELLED Use xdotool to automate joining BBB in Firefox (signing in, clicking on listen only) +#### TODO Xdotool over ssh so that I can click things? + + ### CANCELLED Experiment with sharing part of the screen so that there’s space for us to work a little off-screen We might just have to rely on xdotool to move windows the way we want them @@ -5215,10 +5424,65 @@ emacsconf-stream-display-clock-and-countdown #### SOMEDAY Redo in-between slides -#### TODO Automatically display in-between slide if there’s no recorded intro +#### DONE Automatically display in-between slide if there’s no recorded intro + +Okay, what’s the tricky part here? + +todo status triggers playing, so things have to be non-interactive +intro needs to be manual + +- if manual intro + - open the in-between page + - streamer types “play slug” manually +- if recorded intro + +Gen: + +<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> + + +<colgroup> +<col class="org-left" /> + +<col class="org-left" /> + +<col class="org-left" /> +</colgroup> +<tbody> +<tr> +<td class="org-left"> </td> +<td class="org-left">recorded intro</td> +<td class="org-left">live intro</td> +</tr> + + +<tr> +<td class="org-left">recorded talk</td> +<td class="org-left"><span title="(emacsconf-stream-play-intro "school")">school</span>; play automatically</td> +<td class="org-left"><span title="(emacsconf-stream-play-intro "workflows")">workflows</span>; show in-between, host intros over mumble, streamer types “play slug”</td> +</tr> + + +<tr> +<td class="org-left">live talk</td> +<td class="org-left"><span title="(emacsconf-stream-play-intro "journalism")">journalism</span>; play intro automatically, join bbb</td> +<td class="org-left"><span title="(emacsconf-stream-play-intro "survey")">survey</span>; join bbb, no in-between slide</td> +</tr> +</tbody> +</table> + +Dev: + +[async]((emacsconf-stream-play-intro "async")) + + +#### DONE Make sure recorded intros play +<(emacsconf-stream-play-talk-on-change "school")> should play intro + video +<(emacsconf-stream-play-video "health")> should play video (no recorded intro) -#### TODO Make sure recorded intros play +dev: +<(emacsconf-stream-play-talk-on-change "treesitter")> should play intro + video ### DONE Separate mumble audio so that panic button can still bring in our audio diff --git a/2022/organizers-notebook/index.org b/2022/organizers-notebook/index.org index 8d85010a..25c1ac03 100644 --- a/2022/organizers-notebook/index.org +++ b/2022/organizers-notebook/index.org @@ -118,6 +118,20 @@ interests you! :CUSTOM_ID: derisk :END: https://pad.emacsconf.org/premortem +*** TODO Click on stuff with xdotool + +;; type emacsconf +(emacsconf-stream-track-ssh + (emacsconf-get-track "General") + (split-string "xdotool mousemove 791 512 click 1 sleep 1 key Ctrl+a type emacsconf")) +(emacsconf-stream-track-ssh + (emacsconf-get-track "General") + (split-string "xdotool mousemove 558 160 click 1")) + + +xdotool mousemove 253 176 click 1 +xdotool mousemove 215 164 click 1 +xdotool key f11 *** DONE [#A] Make copyable version of bbb redirect :derisk: CLOSED: [2022-11-22 Tue 10:06] SCHEDULED: <2022-11-21 Mon> :PROPERTIES: @@ -289,13 +303,19 @@ CLOSED: [2022-11-29 Tue 08:02] SCHEDULED: <2022-11-28 Mon> I'm just going to do this with pavucontrol so that it's not too complicated -**** STARTED [#A] Guard against over-announcing by paying attention to erc +**** TODO [#C] Tweak my audio setup for push-to-talk? +SCHEDULED: <2022-11-30 Wed> +https://news.ycombinator.com/item?id=23160101 +https://gist.github.com/zouppen/bdd40a42c77ca387fae8bace0f2ed3e0 + +**** STARTED [#B] Guard against over-announcing by paying attention to erc SCHEDULED: <2022-11-29 Tue> :PROPERTIES: :CREATED: [2022-11-27 Sun 18:32] :Effort: 0:45 :END: :LOGBOOK: + CLOCK: [2022-11-29 Tue 12:49] CLOCK: [2022-11-29 Tue 08:18]--[2022-11-29 Tue 08:27] => 0:09 CLOCK: [2022-11-29 Tue 08:03]--[2022-11-29 Tue 08:03] => 0:00 :END: @@ -317,11 +337,6 @@ If it was the most recently announced talk in the channel, don't re-announce it (remove-hook 'erc-insert-pre-hook #'emacsconf-erc-notice-inserted-string) #+end_src -**** TODO [#C] Tweak my audio setup for push-to-talk? -SCHEDULED: <2022-11-30 Wed> -https://news.ycombinator.com/item?id=23160101 -https://gist.github.com/zouppen/bdd40a42c77ca387fae8bace0f2ed3e0 - ** TODO [#C] Make checkin and Q&A process slide :sachac: :PROPERTIES: :CREATED: [2022-11-20 Sun 10:04] @@ -553,12 +568,14 @@ CLOSED: [2022-11-19 Sat 11:09] :LOGBOOK: CLOCK: [2022-11-19 Sat 09:47]--[2022-11-19 Sat 11:09] => 1:22 :END: -**** STARTED Make mini dry run hyperlist with buttons +**** DONE Make mini dry run hyperlist with buttons +CLOSED: [2022-11-29 Tue 11:02] :PROPERTIES: :CREATED: [2022-11-28 Mon 22:40] :Effort: 1:00 :END: :LOGBOOK: +CLOCK: [2022-11-29 Tue 10:21]--[2022-11-29 Tue 11:02] => 0:41 CLOCK: [2022-11-29 Tue 08:27] :END: @@ -582,13 +599,14 @@ Testing: | journalism | recorded | live | | | | school | recorded | recorded | IRC | | | handwritten | recorded | recorded | BBB | | +| treesitter | | | | | | health | live | recorded | BBB | | | jupyter | live | live | BBB | | - journalism: recorded intro, recorded talk, live (emacsconf-hyperlist-show-streamer-day "2022-12-03" nil -(list "journalism" "school" "handwritten" "health" "jupyter")) +(list "journalism" "school" "treesitter" "handwritten" "health" "jupyter")) *** DONE [#A] Do a dry run for the dry run @@ -1677,8 +1695,8 @@ Saturday Dec 3 #+NAME: saturday-shifts | | Host | Streamer | Checkin | IRC | Pad | Coord | |--------+----------+----------+------------+----------+------------+--------| -| Gen AM | zaeph | sachac | corwin | bandali | publicvoit | sachac | -| Gen PM | zaeph | sachac | FlowyCoder | dto | publicvoit | sachac | +| Gen AM | zaeph | sachac | corwin | dto | publicvoit | sachac | +| Gen PM | zaeph | sachac | FlowyCoder | bandali | publicvoit | sachac | | Dev AM | bandali | sachac | corwin | dto | | sachac | | Dev PM | vetrivln | bandali | FlowyCoder | vetrivln | | sachac | @@ -1688,8 +1706,8 @@ Sunday Dec 4 #+NAME: sunday-shifts | | Host | Streamer | Checkin | IRC | Pad | Coord | |--------+----------+----------+------------+----------+------------+--------| -| Gen AM | zaeph | sachac | corwin | bandali | publicvoit | sachac | -| Gen PM | zaeph | jman | FlowyCoder | dto | publicvoit | sachac | +| Gen AM | zaeph | sachac | corwin | dto | publicvoit | sachac | +| Gen PM | zaeph | jman | FlowyCoder | bandali | publicvoit | sachac | | Dev AM | bandali | sachac | corwin | dto | | sachac | | Dev PM | vetrivln | bandali | FlowyCoder | vetrivln | | sachac | @@ -1744,7 +1762,7 @@ Interested in a shift? Please e-mail [[mailto:emacsconf-org-private@gnu.org]] an #+RESULTS: :results: -(setq 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 "sachac" :checkin "corwin" :irc "bandali" :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 "sachac" :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 "sachac" :checkin "corwin" :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 "sachac" :checkin "corwin" :irc "bandali" :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 "sachac" :checkin "corwin" :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"))) +(setq 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 "sachac" :checkin "corwin" :irc "dto" :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 "sachac" :checkin "FlowyCoder" :irc "bandali" :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 "sachac" :checkin "corwin" :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 "sachac" :checkin "corwin" :irc "dto" :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 "bandali" :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 "sachac" :checkin "corwin" :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"))) :end: ** After the conference @@ -2419,24 +2437,28 @@ CLOSED: [2022-11-29 Tue 07:50] SCHEDULED: <2022-12-01 Thu> (emacsconf-get-talk-info))) #+end_src -**** TODO Set publishing on a timer :sachac: -SCHEDULED: <2022-11-29 Tue> +**** DONE Set publishing on a timer :sachac: +CLOSED: [2022-11-29 Tue 12:48] SCHEDULED: <2022-11-29 Tue> :PROPERTIES: :CREATED: [2022-11-26 Sat 21:10] :END: -***** TODO Single timer, batch timers for playing and closed q +***** DONE Single timer, batch timers for playing and closed q +CLOSED: [2022-11-29 Tue 12:48] :PROPERTIES: :CREATED: [2022-11-29 Tue 00:47] :END: +(emacsconf-stream-schedule-timers) -***** TODO Schedule a single talk +**** DONE Simplify manual setting of a timer to update task status :sachac: +CLOSED: [2022-11-29 Tue 12:35] SCHEDULED: <2022-11-29 Tue> :PROPERTIES: -:CREATED: [2022-11-28 Mon 23:06] +:Effort: 0:30 +:END: +:LOGBOOK: +CLOCK: [2022-11-29 Tue 11:02]--[2022-11-29 Tue 12:35] => 1:33 :END: -**** TODO Simplify manual setting of a timer to update task status :sachac: -SCHEDULED: <2022-11-29 Tue> -maybe use at? +emacsconf-stream-schedule-talk-status-change **** DONE Rename update-task-status.sh to talk :sachac: CLOSED: [2022-11-29 Tue 07:44] SCHEDULED: <2022-11-29 Tue> |