Using Open Source Software to Add Interaction to Webcasting in Health Keywords: Webcasting, Open Source, Interactivity, Maramba I1, Jones RB1 1. Faculty of Health and Social Work, University of Plymouth Correspondence: Dr. Inocencio Maramba, Faculty of Health and Social Work, University of Plymouth, Centre Court, Exeter Street, Plymouth PL4 8AA, UK
[email protected]
Using Open Source Software to Add Interaction to Webcasting in Health Keywords: Webcasting, Open Source, Interactivity, Abstract: Live webcasting has been used in our University since 2002. Because interactivity is not inherent in webcasting, we explored open source solutions to adding interactivity to the live webcast. An open source webchat solution was implemented which merged the webcast and a chat application into a single web page. This web application has been used for various purposes including research presentations and seminars (webinars), stakeholder consultations, marketing presentations to potential students, and motivational support in webbased cognitive behavioural therapy. The open source nature of the application facilitated making modifications to the programme code, allowing rapid customisation. Responses to the interactive webchat have been largely positive, with most participants expressing satisfaction with the system. Open source applications have proven to be very useful in adding interaction, booking sessions, and collecting data from participants in the webcasts being conducted by the Faculty. Interactive webcasting could prove useful for many organisations.
BACKGROUND Webcasting is "The distribution of digitally encoded multimedia (particularly audio and video) content over Internet protocol networks." (International Webcasting Association, http://webcasting.wikia.com/wiki/Main_Page). It has many applications, and is increasingly being used in health professions education, and for information dissemination.1,2,3 In our Faculty webcasting has been in use since 2002.4 Webcasting by itself has no interactive component. Interaction was needed to enable the viewers to ask questions from the webcast presenters or to enable discussion amongst the viewers. The Faculty had explored various ways to add interaction to the webcast, ranging from phone calls to email. However these methods were cumbersome and did not allow the viewers of the webcast to
hold a discussion amongst themselves. Therefore, the method of interaction had to have the following features:
Web based
Messages need to be delivered in real-time
No need for additional software
Ability to work through firewalls
From 2005 – 2006 the Faculty trialled a proprietary software called GoodMood WIP (http://www.goodmood.fi). While the results were encouraging, some aspects of the software made it a less than ideal solution. These aspects were:
Required both Flash and ActiveX. ActiveX is specific to the Internet Explorer web browser, thus limiting the web browsers it could be used with
The chat messages could not traverse network firewalls (such as those found in NHSNet)
The presentations were converted to Flash format prior to webcast. This made last-minute “on-the-fly“ editing of the presentation difficult.
No quick way to check the number and identity of participants.
A summary of the results of the GoodMood trial can be found at: http://alt.ac.uk/altc2006/timetable/files/881/Exploration_of_online_communications_suite_GoodM ood.pdf
METHODS: Software Selection Process Because of this we began exploring open source software that could add interactivity to the webcast. Open source software is gaining acceptance in the field of health informatics.5,6 Several websites were useful in searching for possible candidates; among them were Sourceforge (http://sourceforge.net), Freshmeat (http://freshmeat.net), and HotScripts
(http://www.hotscripts.com). All of these sites have a search function allowing the user to specify what type of application is being searched for. For our search we used the terms “web based chat”.
After trying several likely candidates, we settled on AjaxChat (http://www.ajaxchat.org). AjaxChat is written in PHP (http://www.php.net/), an open source web scripting language, and uses the MySQL relational database management system (http://www.mysql.com). It was featured in an article in Linux Journal (http://www.linuxjournal.com/article/9627). AjaxChat uses a web development technique called Ajax, which stands for Asynchronous Javascript and XML. This allows updates to be made to only certain portions of a web page, eliminating the need to refresh the whole page when new updates are made. This makes it possible to update the page in real-time, such as would be required by a webchat application. AjaxChat also separates the business logic from the presentation logic, in other words, the scripts that control the input, management, and storage of the data are separate from the templates that control the appearance of the webchat page. This means that it is easy to customise the appearance of the web pages for different applications. AjaxChat has several features that make it useful for adding interactivity to webcasts. These are:
Chat messages saved to database. These make archiving of the chat transcripts possible.
Chat can traverse firewalls. The standard web port (TCP port 80) is used for the chat, which is allowed by most corporate / organisational firewalls, and allows it to work with web proxy servers.
Separate chat ”rooms” available. Participants can go into their own chat room, which makes it possible to have “breakout sessions”, making management of the conversations easier.
Customisable ”avatars”. An avatar is a graphic representation of the participant. This can be a personal photograph, or a cartoon figure.
Source code available and under the terms of the open source license, can be modified and redistributed for free. The software itself requires no licensing fee.
A summary of the features of AjaxChat as compared with GoodMood can be seen in Table 1.
Table 1: Comparison of GoodMood and AjaxChat GoodMood Proprietary Solution, with licensing fee £££
AjaxChat Open Source Solution (written in PHP, requires MySQL). No licensing fee.
Access control: Registration, Login and
Access control: Registration, Login and
Password. Guest login can be enabled
Password. Guest login can be enabled
Allows recording of both video and chat
Chat messages saved to database. (Video can be separately recorded on DVD)
No message length limit
254 character message length limit
Chat cannot traverse firewalls (e.g., NHSnet)
Chat can traverse firewalls
No separate message ”rooms”
Separate chat ”rooms” available
No ”avatars”
Customisable ”avatars”
No list of participants shown to presenter
List of people logged on obvious to presenter
No list of participants shown in chat window
Participants list shown in chat window
RequiresCustomisation Flash and ActiveX Software
No additional software required
By modifying page templates of AjaxChat,Source the video of the webcast was Source Code the not web available codestream available incorporated into the webchat page. Other modifications of the web templates were made to make the application easier to use, as well as giving contact information for help and technical support. Because English was not the native language of the authors of AjaxChat, the accompanying language files were edited to “correct” English. The login page was modified for “branding” purposes, as well as to give additional helpful information. The data fields for registration can be
easily modified, and allows for gathering data in a small questionnaire. The registration data is saved to the MySQL database. The modified AjaxChat can be seen in Figure 1 (a „mock up‟ rather than screen capture!):
Figure 1: The modified AjaxChat page with embedded webcast The University uses Microsoft Windows Media Services to broadcast streaming video over the web. This video stream can be viewed by Windows Media Player (standalone or as a web-browser plugin) or by other video players that are capable of decoding the video stream. These include VLC,
mplayer, and RealPlayer. This is significant for those who are not using the Windows Operating System (e.g. Apple Macintosh, UNIX, and Linux users), as Windows Media Player will not be available on those systems. Forthcoming webcast events are posted on this web page: http://www.plymouth.ac.uk/health/webcasts . A link on that page leads directly to the interactive webcast page, where participants can register, and login to the webcast when the presentation goes live. Figure 2 shows the steps involved in the delivery of a webcast and how the AjaxChat is incorporated into the final webcast as it appears on the web browser of the viewer. The presenter has full control over what goes out in the video window by selecting and switching between outputs such as powerpoint, talking head, or other channels such as recorded DVD.
Figure 2: Steps involved in delivery of webcast with interactive chat RESULTS: Uses of the Interactive Webcast: We have been able to use the Interactive Webcast system for a variety of purposes, ranging from administrative meetings, research dissemination, continuing education, marketing, international collaboration, and even support for clinical programmes. Examples of these include:
Presentation of research results: Various one-hour webinars on (eg, a study on the Clinical Focus of NHS Trusts).
Administrative meetings: Consultation amongst members of the Faculty on future developments in Information Technology.
Continuing Education: A half day of webinars on E-Health, with participants from Germany,
Iran, Pakistan, Malaysia, and the UK.
Stakeholder consultation: a webcast focus group discussion with members of an older people‟s panel in the development of a research proposal (New Dynamics of Ageing Preparatory Network: Older People in Rural Areas).
International Collaboration: Webcast and discussion on Tailoring Health Information with participants from the US Food and Drug Administration.
Programme marketing: a marketing webcast for the BSc (Hons) Paramedicine Practitioner programme, which was featured in a news item by the BBC (http://news.bbc.co.uk/1/hi/england/devon/7070684.stm)
Clinical Uses (Support for web-based therapy): Motivational support via interactive chat for a web-based Cognitive Behavioural Therapy programme (Living Life to the Full). Results of this are presented elsewhere.7
Response to the Webcasts: Response to the webcasts has generally been favourable. Feedback was sought via email after certain webcasts, and in some instances, the participants were asked to answer a web questionnaire regarding their experience of using the interactive webcast. Among the responses received were the following: „all in all an enjoyable learning experience for me, with lots of potential‟ „I much liked the discussion and its momentum. I also liked that you did not use voice as a medium for communication, but used text based chat for this purpose‟, „I‟ve never done a chatroom ever, so being able to chat with many people in real time online was really interesting and beneficial‟. Problems Encountered During the Webcast: To ensure a smooth presentation, a video player will usually “buffer” the incoming video stream, i.e., load a large portion of the video stream in memory, before displaying. This leads to a time lag
typically of 30 seconds but ranging from 20 seconds to two minutes, before the video is seen by the viewer. Since the text chat messages arrive more or less instantaneously, this can result sometimes in the chat participants waiting for the webcast presenter to “catch up”. However, a short explanation to the participants is usually enough to mitigate this problem. The speed at which the chat page is refreshed can be set by webchat administrator. This, and other settings can be set via a web interface. However, setting chat window refresh time to a too short period can result in increased network load on the webserver, and can be flagged by some network monitoring software as being a “Denial of Service” (DoS) attack. This happened during one webcast, when we were asked by the hosting provider to terminate the webchat as it was generating too much network traffic. By setting the refresh rate to a slower setting (about one and a half seconds), we were able to keep the network traffic to an acceptable level. ”Freezing” of the webchat page was sometimes encountered by the viewers, especially those using older versions of Internet Explorer. When this occurs, the video continues, but the webchat is no longer being refreshed. This is probably due to the non-standard implementation of JavaScript on these older browsers. Pressing F5 (refresh) is usually sufficient to solve the problem. Other computer platforms such as Apple Macintosh or Linux need additional web browser plugins in order to view video stream. Updating to the latest versions of these operating systems will usually install a plugin that is compatible with the video stream. Other Open Source Software Used: In addition to AjaxChat, other open source software applications were also used to support other webcast activities. Booking of places in the E-Health Webinar and the technical support for Living Life to the Full was done using a web script written in Perl called My Signup Sheet. The script is available from http://www.fuzzymonkey.net/software/signup/ . For data collection about viewer feedback we used a webscript called Limesurvey (formerly
PHPSurveyor). The application can be downloaded from http://www.limesurvey.org. Both of these applications may be downloaded for free. Archiving of Webcasts and Chat Transcripts It is possible to record the video stream and archive it in digital format on the web. At present, the webcasts are archived at this URL: http://www.plymouth.ac.uk/pages/view.asp?page=13163. Since the chat transcripts are stored in the database, they can be retrieved later on for analysis or for revision, if the chat was education related. Planned Uses for the Interactive Webcast We are planning further uses for the interactive webcast, which include:
Conducting national and international discussions for the Older People in Rural Areas project.
Online module on E-Health for the MSc Public and Community Health programme. This module will be conducted as a series of interactive webcasts and will be supplemented by other asynchronous E-Learning activities.
Interactive webcasting for placement learning in dietetics, to assist dietitians in training during their placements.
DISCUSSION: AjaxChat has proven to be an effective way of enabling interactivity in our webcasts. The open source nature of the application proved invaluable as it made possible the rapid modification of the web page templates to suit our needs. It was also implemented at little cost since the software is free to download. Yet it gave better functionality than other proprietary applications that cost up to several hundred pounds. One proprietary aspect of the interactive webcast is the video stream itself, since this is generated
by a piece of proprietary software. It would be possible to replace this with an Open Source Streaming Media Server, such as the Darwin Streaming Server (http://developer.apple.com/opensource/server/streaming/index.html) or the Helix DNA Server (https://helixcommunity.org/). This is not a webconferencing solution (many-to-many video communication via the web). If this is what is desired, then the E-Presence application (which is also open source), may be useful (http://www.epresence.tv). Proprietary solutions for this include Elluminate (http://www.elluminate.com) and Webex (http://www.webex.com). Integration of interactive webcasting with an open source virtual learning environment such as Moodle (http://www.moodle.org) can also be investigated. Moodle already has a real-time chat facility. As Moodle is open source, it is possible to access the Application Programming Interface (API) to create a plugin for displaying a webcast stream. CONCLUSION Interactive live webcasting has many uses for a University Faculty of Health. Open Source software is an effective way of implementing interactivity in such webcasting activities. The open source nature of the applications makes them easy to modify to suit our needs. We will continue to explore the uses of open source software for the activities of the Faculty, in particular for interactive webcasting. Acknowledgements Many thanks to Sam Barrington, Stuart Billinghurst, Catherine Hennessy, Dave Hurrell, Rebeca Martinez, Matt Newcombe, John Preston, Zoe Portman , Adrian Vranch, and Chris Williams. REFERENCES
1. RA DiMaria-Ghalili, L Ostrow, K Rodney. Webcasting: A new instructional technology in distance graduate nursing education. J Nurs Educ. 2005, 44(1):11-8. 2. Yagi Y, Ahmed I, Gross W, Becich MJ, Demetris AJ, Wells A, et al. Webcasting pathology department conferences in a geographically distributed medical center. Hum Pathol. 2004, 35(7):790-7. 3. Locatis C, Fontelo P, Sneiderman C, Ackerman M, Uijtdehaage S, Candler C, et al. Webcasting videoconferences over IP: a synchronous communication experiment. J Am Med Inform Assoc. 2003, 10(2):150-3. 4. Jones R, Skirton H, McMullan M. Feasibility of combining e-health for patients with elearning for students using synchronous technologies. J Adv Nurs. 2006, 56(1):99-109. 5. McDonald CJ, Schadow G, Barnes M, Dexter P, Overhage JM, Mamlin B, et al. Open Source software in medical informatics--why, how and what. Int J Med Inform. 2003, 69(23):175-84. 6. Carnall D. Medical software's free future. BMJ. 2000, 321(7267):976. Counts: Abstract: 148. Text body without references: 1995. Tables 1. Figures: 2.