13.07.2015 Views

Thesis - Instituto de Telecomunicações

Thesis - Instituto de Telecomunicações

Thesis - Instituto de Telecomunicações

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

3.2. HUMAN COMPUTER INTERACTION 39ID Event handler Event cause0 onMouseMove The user moves the cursor.1 onMouseDown The user presses a mouse button.2 onKeyPress The user presses a key.3 onUnload The user exits a document.4 onMove The window is moved.5 onSelect The user selects some text.6 onResize The window is resized.7 onBlur The window loses focus.8 onFocus The window receives focus.Table 3.1: DOM events captured by WIDAM.The WIDAM Client The client works in any web browser, operating system in<strong>de</strong>pen<strong>de</strong>nt,capable of executing Javascript co<strong>de</strong> and supporting Java applets. When the usersenters on a page of the WIDAM system, an applet is launched. This applet creates a socketconnection that enables the message passing from and to the server.The client script sends a request to the browser, asking for notification of the userinterface events. These events are a sub set of the events from the Document Object Mo<strong>de</strong>lEvents [191]. In table 3.1 we list the events captured by the WIDAM system. Every timeone of these events occur, a message is passed to the server.The WIDAM Server The server machine is has two servers listening to different ports.We used a http server (listening at port 80) to wait for html page requests. We testedthe WIDAM system with different http servers such as Internet Information System fromMicrosoft, or the Apache http server from Apache Software Foundation, an open sourcesolution. The html pages nee<strong>de</strong>d by the WIDAM system are accessed by the http server.The javascript co<strong>de</strong> and applet co<strong>de</strong> nee<strong>de</strong>d for the communication, monitoring and displayoperations are also passed in the same communication channels.We <strong>de</strong>veloped a java server that listens for socket requests at port 8001. This socketserver is always active and waiting for a request of a communication channel. When a clientasks for a socket connection, the servers assigns a new socket and creates a thread to processthe communications with the new client.The data message that is sent by the client is composed by the information relatedto the generated event and its context. Table 3.2 lists all the fields of the message. Themessage is composed by several information about the DOM generated event. The event

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!