Round 392: Zoom ext, Teams ext, Webex ext, Discord/Matrix ext (20 commands)

ober

2f6674bfd089d0a57082bc89eddd1364467a0caa

diff --git a/docs/jemacs-vs-emacs.md b/docs/jemacs-vs-emacs.md
index 73eae7c..6770dc9 100644
--- a/docs/jemacs-vs-emacs.md
+++ b/docs/jemacs-vs-emacs.md
@@ -4583,6 +4583,31 @@ No remaining Tier 1 gaps. All core editing, completion, and navigation features 
 | ebib-import-file | :orange_circle: | Import file into Ebib |
 | ebib-push-citation | :orange_circle: | Push Ebib citation to buffer |
 
+### Round 392 — Zoom ext, Teams ext, Webex ext, Discord/Matrix ext
+
+| Feature | Emacs | jemacs | Status |
+|---|---|---|---|
+| Zoom meetings | — | `zoom-meetings` | :orange_circle: Scaffolded |
+| Zoom recordings | — | `zoom-recordings` | :orange_circle: Scaffolded |
+| Zoom webinars | — | `zoom-webinars` | :orange_circle: Scaffolded |
+| Zoom users | — | `zoom-users` | :orange_circle: Scaffolded |
+| Teams channels | — | `teams-channels` | :orange_circle: Scaffolded |
+| Teams messages | — | `teams-messages` | :orange_circle: Scaffolded |
+| Teams meetings | — | `teams-meetings` | :orange_circle: Scaffolded |
+| Teams apps | — | `teams-apps` | :orange_circle: Scaffolded |
+| Webex meetings | — | `webex-meetings` | :orange_circle: Scaffolded |
+| Webex rooms | — | `webex-rooms` | :orange_circle: Scaffolded |
+| Webex messages | — | `webex-messages` | :orange_circle: Scaffolded |
+| Webex recordings | — | `webex-recordings` | :orange_circle: Scaffolded |
+| Discord servers | — | `discord-servers` | :orange_circle: Scaffolded |
+| Discord channels | — | `discord-channels` | :orange_circle: Scaffolded |
+| Discord messages | — | `discord-messages` | :orange_circle: Scaffolded |
+| Discord bots | — | `discord-bots` | :orange_circle: Scaffolded |
+| Matrix rooms | — | `matrix-rooms` | :orange_circle: Scaffolded |
+| Matrix messages | — | `matrix-messages` | :orange_circle: Scaffolded |
+| Matrix spaces | — | `matrix-spaces` | :orange_circle: Scaffolded |
+| Matrix users | — | `matrix-users` | :orange_circle: Scaffolded |
+
 ### Round 391 — Confluence ext, SharePoint ext, Google Docs ext, Google Sheets/Slides ext
 
 | Feature | Emacs | jemacs | Status |
diff --git a/src/jerboa-emacs/editor-extra-final.ss b/src/jerboa-emacs/editor-extra-final.ss
index 2740088..5d508b8 100644
--- a/src/jerboa-emacs/editor-extra-final.ss
+++ b/src/jerboa-emacs/editor-extra-final.ss
@@ -27380,3 +27380,44 @@
 (def (cmd-google-slides-present app)
   (let* ((echo (app-state-echo app)))
     (echo-message! echo "Google Slides: starting presentation mode")))
+
+;; Round 392 batch 2 — Webex ext, Discord/Matrix ext
+(def (cmd-webex-messages app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Webex: listing messages")))
+
+(def (cmd-webex-recordings app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Webex: listing recordings")))
+
+(def (cmd-discord-servers app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Discord: listing servers")))
+
+(def (cmd-discord-channels app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Discord: listing channels")))
+
+(def (cmd-discord-messages app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Discord: listing messages")))
+
+(def (cmd-discord-bots app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Discord: listing bots")))
+
+(def (cmd-matrix-rooms app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Matrix: listing rooms")))
+
+(def (cmd-matrix-messages app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Matrix: listing messages")))
+
+(def (cmd-matrix-spaces app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Matrix: listing spaces")))
+
+(def (cmd-matrix-users app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Matrix: listing users")))
diff --git a/src/jerboa-emacs/editor-extra-modes.ss b/src/jerboa-emacs/editor-extra-modes.ss
index d6640e0..fb428c5 100644
--- a/src/jerboa-emacs/editor-extra-modes.ss
+++ b/src/jerboa-emacs/editor-extra-modes.ss
@@ -28167,3 +28167,44 @@
 (def (cmd-google-docs-list app)
   (let* ((echo (app-state-echo app)))
     (echo-message! echo "Google Docs: listing documents")))
+
+;; Round 392 batch 1 — Zoom ext, Teams ext
+(def (cmd-zoom-meetings app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Zoom: listing meetings")))
+
+(def (cmd-zoom-recordings app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Zoom: listing recordings")))
+
+(def (cmd-zoom-webinars app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Zoom: listing webinars")))
+
+(def (cmd-zoom-users app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Zoom: listing users")))
+
+(def (cmd-teams-channels app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Teams: listing channels")))
+
+(def (cmd-teams-messages app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Teams: listing messages")))
+
+(def (cmd-teams-meetings app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Teams: listing meetings")))
+
+(def (cmd-teams-apps app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Teams: listing installed apps")))
+
+(def (cmd-webex-meetings app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Webex: listing meetings")))
+
+(def (cmd-webex-rooms app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Webex: listing rooms")))
diff --git a/src/jerboa-emacs/editor-extra-regs2.ss b/src/jerboa-emacs/editor-extra-regs2.ss
index bfcfc35..d49d921 100644
--- a/src/jerboa-emacs/editor-extra-regs2.ss
+++ b/src/jerboa-emacs/editor-extra-regs2.ss
@@ -9706,4 +9706,26 @@
   (register-command! 'google-slides-list cmd-google-slides-list)
   (register-command! 'google-slides-export cmd-google-slides-export)
   (register-command! 'google-slides-present cmd-google-slides-present)
+
+  ;; Round 392 — Zoom ext, Teams ext, Webex ext, Discord/Matrix ext
+  (register-command! 'zoom-meetings cmd-zoom-meetings)
+  (register-command! 'zoom-recordings cmd-zoom-recordings)
+  (register-command! 'zoom-webinars cmd-zoom-webinars)
+  (register-command! 'zoom-users cmd-zoom-users)
+  (register-command! 'teams-channels cmd-teams-channels)
+  (register-command! 'teams-messages cmd-teams-messages)
+  (register-command! 'teams-meetings cmd-teams-meetings)
+  (register-command! 'teams-apps cmd-teams-apps)
+  (register-command! 'webex-meetings cmd-webex-meetings)
+  (register-command! 'webex-rooms cmd-webex-rooms)
+  (register-command! 'webex-messages cmd-webex-messages)
+  (register-command! 'webex-recordings cmd-webex-recordings)
+  (register-command! 'discord-servers cmd-discord-servers)
+  (register-command! 'discord-channels cmd-discord-channels)
+  (register-command! 'discord-messages cmd-discord-messages)
+  (register-command! 'discord-bots cmd-discord-bots)
+  (register-command! 'matrix-rooms cmd-matrix-rooms)
+  (register-command! 'matrix-messages cmd-matrix-messages)
+  (register-command! 'matrix-spaces cmd-matrix-spaces)
+  (register-command! 'matrix-users cmd-matrix-users)
 )