Skip to content

making meeting links¤

i need to be able to make meetings with folks. those meetings will often contain:

  • some content
  • real time collaboration
  • video chat

the notebooks builds a link for a video chat and real collaboration.

this system feels pretty de-platformated using jupyterlabs native rtc and jitsi video chat. ping me on twitter if you want a tour sometime.

in the future we can build: binder links, icalendar events.

    try:
        import ipywidgets, icalendar, dataclasses, uritemplate, traitlets, arrow
    except: 
        await __import__("micropip").install("ipywidgets icalendar dataclasses uritemplate traitlets arrow".split())
        import ipywidgets, icalendar, dataclasses, uritemplate, traitlets, arrow
    from functools import partial; from ipywidgets import *
    video = Text("in-this-house-we-wear-sweatpants", description="📹 video chat")
    rtc = Text("exquisite-potluck", description="🤝 real time collaboration")
    document = Text("", description="📄 file path")
    input = list(zip("JVC-PUBLIC room path".split(), [video, rtc, document]))
    lite_url = HTML("", description="💡 lite")

update_lite_url formats the input widgets using a uri template.

    def update_lite_url(*Δ, lite_template = "https://tonyfast.github.io/tonyfast/run/lab{?room,JVC-PUBLIC,path}"):
        url = uritemplate.URITemplate(lite_template).expand(dict(
            (k, v.value) for k, v in input if v.value))
        lite_url.value = F"""<a href="{url}">{url}</a>"""

initialize the widget interactions

    for k, widget in input: widget.observe(update_lite_url, "value")
    update_lite_url()

make the app and start tinkering with it.

    app = VBox([x[1] for x in input] + [lite_url]); app
VBox(children=(Text(value='in-this-house-we-wear-sweatpants', description='📹 video chat'), Text(value='exquisi…

i suspect i'll reuse this document to meet with folks, and build some more tooling for it.