1 / 11

Collabrary Toolkit for Multimedia Groupware

Collabrary Toolkit for Multimedia Groupware. Michael Boyle Saul Greenberg University of Calgary. What is the Collabrary?. COM object library Rapid prototyping of novel, multimedia groupware Multimedia capture, analysis, manipulation Shared Dictionary (network service).

kramerd
Download Presentation

Collabrary Toolkit for Multimedia Groupware

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Collabrary Toolkit for Multimedia Groupware Michael Boyle Saul Greenberg University of Calgary

  2. What is the Collabrary? • COM object library • Rapid prototyping of novel, multimedia groupware • Multimedia capture, analysis, manipulation • Shared Dictionary (network service)

  3. What is the Shared Dictionary? • Notification Server + Persistent Data • Hierarchy of key/value pairs • Subscription-based notifications • Central-server architecture • Simple, flexible programmatic API

  4. Programmatic API • Looks like a typical dictionary/hash table • String keys look like file-system paths Client 1: SD(“/users/joe/name”) = “Joe Smith” /users/joe/name /users/joe/photo /users/mary/email … Client 2: /users/joe/name changed

  5. Programmatic API • Subscriptions: asynchronous notifications • Glob-like pattern-matching language Dim Subscr As Subscription Set Subscr = SD.Subscribe(“/users/*/name”) Subscr_Notified(key,inst,val,reason,prev) Update GUI to reflect change in user name … End

  6. Automagic • Data marshalling • Primitives: 54.25, “Hello world!” • Complex data types: • Pictures • Sounds • Binary data: 01293ab92c03f023d… • Structs and marshal-by-value objects

  7. Automagic • Reconnection on network failure • Data tied to client lifetimes Example: SD.Open “tcp://myserver.com:TestDictionaryName

  8. Shared Dictionary Advantages • Simple API • Integrated support for multimedia • Performance • Persistence

  9. Absent from the Shared Dictionary • Authentication and authorization • Encryption (possible, but not automatic) • Sophisticated concurrency control algorithms • Transactions • Super-high scalability (e.g., federations) These aren’t needed for prototyping groupware!

  10. Shared Dictionary In Action • Examples • Notification Collage • Graffiti Video Conferencing

  11. Summary • Collabrary: toolkit for prototyping multimedia groupware • Notifications + Persistence + Multimedia • Flexible, feature-rich design • Simple programmatic interface

More Related