Thelma Technology

Thelma Technology

This page presents discussions of various Thelma related technology questions and issues.

Overview

The main idea of Thelma is to investigate how interaction on the internet can be made easier. For an overview see the front page.

Challenges and Questions

A number of challenges and questions exist in the creation and usage of Thelma:

  • AJAX: How can the AJAX platform be utilized for creating applications for interaction?
  • Browser User Interface: How should the Thelma interaction components be designed to allow for unobtrusive web based interaction?
  • User Behavior: Will this new possibility for creating rich interactive applications make it easier for users to interact and allow for a higher degree of rich interaction on the Internet? 
  • Mobility: How far can mobility be supported by using the Thelma framework.  
  • Client Change: How should the transparent client change be designed when switching between different grades of interactivity?
  • Firewalls: How should the firewall problem be handled to allow as many as possible to interact?
  • Backend E-Meeting Gateway: How should the backend E-Meeting Gateway be designed to support many concurrent clients?
  • Licensing: How should licensing be handled when using the Thelma interaction components?

General Technology Discussions

Marratech integration

The backend of the Thelma system would be the existing Marratech Manager system which would provide a gateway into existing Marratech room-based e-meetings allowing for interaction between Thelma users and Marratech users. In this respect the Thelma system could be seen as a web based front-end to Marratech e-meetings allow for both one-way (receive only) and two-way web based interaction.

The user should be able to switch between Thelma and Marratech interaction as they prefer in real-time. I.e. depending on needs, e.g. mobility different applications could be used to access the same information but with different interaction possibilities.

A further advantage of levering on the existing Marratech Manager is its support for gateways to H323 and SIP systems which in turn would allow for lightweight H323/SIP interaction in a web browser using Thelma.

An important aspect when integrating into a commercial solution is how to handle licensing of existing limited resources. E.g. when integrating with the Marratech Manager which has a per room or per user based licensing system. how can the Thelma be a good player in such an environment. It is important to take this question into account when designing the new interaction system and not leaving it for “later”.

Marratech Licensing

An important part of the Marratech integration is how to handle Marratech licenses which are sold either per room or per seat. If a client connects to a Marratech room, should a license be allocated? XXX...

Problems due to JavaScript Limitations and Restrictions
JavaScript itself imposes a number of limitations and restrictions such as e.g. local file access and only connections back to the original server. How will these limitations influence the Thelma architecture?

Due to the lightweight framework of JavaScript not everything can be done in JavaScript (due to both security and technical implied limitations) and we propose here that the Thelma components are extended with heavier Java components that would allow for more functionality. Examples might be transmission of audio and video from the web browser which is something the JavaScript environment would not allow (today). This heavier Java component would require that Java is installed in the browser, and if this is not the case, i.e. Java is not installed then the Thelma system would be tolerant and still provide some basic functionality.  

Transport

Some technical background, Internet traffic can be divided into categories from a transport perspective: UDP and TCP. UDP stands for User Datagram Protocol and is very simple. It leaves all control (e.g. handling congestion and retransmission) to the application using the protocol. UDP is very suitable for using with real-time media applications as it allows the application to adapt quickly to changes in the network. TCP which stands for Transmission Control Protocol on the other hand includes control of the transmission and stops the insight from the application to the current state of the transmission. TCP is very suitable for applications that contain a state that they want to exchange with a server. E.g. sending an email from a client application to a server where all data is important and should reach the server. The biggest problem with using TCP for real-time media distribution is its property where you cannot cancel transmitted data, i.e. if a packet is lost in the network it will be retransmitted until it is delivered.  HTTP, the protocol used for transferring Web content uses TCP.

The Thelma framework will utilize different connection technologies for different levels of interaction where the lowest level will use HTTP over TCP for data transmission and thus allowing for simpler interaction between different parties.

Continue reading on the transport page.

Firewalls

Firewalls always present a special challenge and conflict when discussing rich communications. Most firewalls allow for “normal” Internet traffic such as web communication and email and block almost everything else.

UDP is best suited for rich media applications while TCP is much friendlier to firewalls, i.e. it is easier to traverse a firewall when using TCP. Of course different installations might prevent traffic to different degrees, where company firewalls are usually more restrictive than private firewalls.

Mobility

A challenge for realizing today’s rich interaction is how to support mobility where users switch between different carriers and different devices throughout the day. Today’s approach is to create special applications for each mobile device (PDA, phone, laptop etc.) while at the same time the web browsers in these devices become more powerful and support many types of rich web content (e.g. JavaScript and Ajax).  Enabling rich media via Thelma will allow for transparent interaction on these mobile devices.

One-way versus Two-way Media

A special case of the Thelma interaction framework is that it can be used for one-way "interaction", i.e. no interaction at all but rather receive only. This will be handled per media where application developers (i.e. web page creators) can decide if they only want to allow one-way or two-way interaction.

This is tightly connected to the the JavaScript limitations presented above where a mix of components will be used.

Media Related Discussion

Video
How should video be integrated into Thelma?
Audio
How should audio be integrated into Thelma?
Chat
How should chat be integrated into Thelma?
Whiteboard
How should whiteboard be integrated into Thelma?
Web Sharing
How should web sharing (co-surfing) be integrated into Thelma?

 

 

Peter Parnes | Contact Us | ©2006 Peter Parnes