[ieee 2009 conference in games and virtual worlds for serious applications (vs-games) - coventry, uk...

2
Collaborative Web-Browsing in a Virtual World Malcolm Crowe and Daniel Livingstone School of Computing University of the West of Scotland Paisley, Scotland Abstract—Presenting web-content inside a 3D shared virtual space has strong potential as a tool for collaboration, but there are a number of issues to be resolved – an array of factors both technical and human. In this short paper we outline work on the SLOODLE browser, a collaborative browser for Second Life TM . We hope that this work has the potential to enhance collaborative-browsing through embedding it in a rich and highly social 3D space. Keywords-collaboration; virtual worlds; MUVE; CSCW; I. INTRODUCTION In the mid 80's, work in the Xerox PARC Colab considered the need for WYSIWIS (what you see is what I see) interfaces to support collaborative computer-supported meetings and the need to allow individual participants to also view private information [1]. This has informed more recent work on collaborative web-browsing, or 'cobrowsing' [2, 3]. One recent paper [3] outlines some of the potential benefits and applications of cobrowsing, lists basic requirements for cobrowsing, reviews a range of extant systems for cobrowsing, and finally details a novel system for cobrowsing which supports the dynamic creation of groups and sub-groups within a collaborative browsing session. One of the most common uses of cobrowsing is to support online presentations - allowing a presenter to share slides with a number of online viewers to accompany a talk - and this is now possible with standard web browser clients via a number of online applications such as Google Docs (http://docs.google.com/). Cobrowsing generally does not implement strict WYSIWIS in the sense that even if the contents of the browser itself are identical, users may have other windows open and may be dividing their attention between cobrowsing and sending instant-messages, editing documents and so forth. A re-interpretation of strict WYSIWIS specifically for windowed operating-systems then is whether or not a particular window shows identical content with identical formatting [3]. It is this interpretation that we will use for cobrowsing in a 3D virtual environment where users may have differing viewpoints inside a common 3D virtual space. II. REQUIREMENTS FOR COBROWSING [3] identifies eight requirements for cobrowsing using a standard 2D user-interface, although several of these do not apply as we are restricting this work to a single platform, Second Life, and we are able to use the features of that SLOODLE is funded and supported by Eduserv. platform to determine, and limit, which users are in or may join a cobrowsing session. The three requirements which do deserve discussion are: cobrowsing organization, web page synchronization and scalability. Collaborative working requires social rules for participants to adhere to. Current cobrowsing solutions generally support one of two approaches, either sharing control over the browsing and following of links amongst all participants or putting the session under the control of one of the participants only [3]. Ideally both approaches should be supported. Web-page synchronization requires not just that all browsers are updated to load the same web page after a link is clicked, with minimal delay, but that the different clients are actually presented with the same content with the same format. Consider that participants in a session may be accessing the session from different countries or from within different corporate organizations, each with their own firewalls and intra-nets. Viewing many major web-sites or the results from a popular search engine may give different results for each of the UK, the USA or China - with localized results and advertising. Viewing a page within a corporate firewall may be possible for some participants but not for others. The only effective solution for this is the introduction of some form of web-proxy. The loading on this proxy then limits the scalability of the solution. An issue not discussed in [3] is the need to support shared focus of attention during cobrowsing. Telepointing was implemented in the PARC Colab [1], and distributed pointing is an important feature for supporting collaborative working with sketches and diagrams over networks [4], and the lack of a common viewpoint in a 3D environment is a known challenge for many collaborative tasks [5]. III. WEB BROWSING IN SECOND LIFE The base for our work is the built-in support for viewing web pages in the Second Life platform [6]. The Second Life client can present a web page within a separate window inside the client, or rendered onto a surface in the 3D environment. In this work we are concerned only with the latter, which places the web content inside the 3D environment. A major limitation with this is that media embedded media in a web-page does not work and while client-side Javascript is supported, Adobe Flash is not. Web-pages rendered in-world are non-interactive - links may be visible, but cannot be selected. This naturally presents a significant barrier to implementing cobrowsing. It is possible to work around this via a combination of scripting in Second Life using the LSL script language and complementary server side scripting. 978-0-7695-3588-3/09 $25.00 © 2009 IEEE DOI 10.1109/VS-GAMES.2009.38 221 978-0-7695-3588-3/09 $25.00 © 2009 IEEE DOI 10.1109/VS-GAMES.2009.38 221 978-0-7695-3588-3/09 $25.00 © 2009 IEEE DOI 10.1109/VS-GAMES.2009.38 221 2009 Conference in Games and Virtual Worlds for Serious Applications 978-0-7695-3588-3/09 $25.00 © 2009 IEEE DOI 10.1109/VS-GAMES.2009.38 221

Upload: daniel

Post on 10-Mar-2017

215 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: [IEEE 2009 Conference in Games and Virtual Worlds for Serious Applications (VS-GAMES) - Coventry, UK (2009.03.23-2009.03.24)] 2009 Conference in Games and Virtual Worlds for Serious

Collaborative Web-Browsing in a Virtual World

Malcolm Crowe and Daniel Livingstone School of Computing

University of the West of Scotland Paisley, Scotland

Abstract—Presenting web-content inside a 3D shared virtual space has strong potential as a tool for collaboration, but there are a number of issues to be resolved – an array of factors both technical and human. In this short paper we outline work on the SLOODLE browser, a collaborative browser for Second LifeTM. We hope that this work has the potential to enhance collaborative-browsing through embedding it in a rich and highly social 3D space.

Keywords-collaboration; virtual worlds; MUVE; CSCW;

I. INTRODUCTION In the mid 80's, work in the Xerox PARC Colab considered

the need for WYSIWIS (what you see is what I see) interfaces to support collaborative computer-supported meetings and the need to allow individual participants to also view private information [1]. This has informed more recent work on collaborative web-browsing, or 'cobrowsing' [2, 3]. One recent paper [3] outlines some of the potential benefits and applications of cobrowsing, lists basic requirements for cobrowsing, reviews a range of extant systems for cobrowsing, and finally details a novel system for cobrowsing which supports the dynamic creation of groups and sub-groups within a collaborative browsing session.

One of the most common uses of cobrowsing is to support online presentations - allowing a presenter to share slides with a number of online viewers to accompany a talk - and this is now possible with standard web browser clients via a number of online applications such as Google Docs (http://docs.google.com/). Cobrowsing generally does not implement strict WYSIWIS in the sense that even if the contents of the browser itself are identical, users may have other windows open and may be dividing their attention between cobrowsing and sending instant-messages, editing documents and so forth. A re-interpretation of strict WYSIWIS specifically for windowed operating-systems then is whether or not a particular window shows identical content with identical formatting [3]. It is this interpretation that we will use for cobrowsing in a 3D virtual environment where users may have differing viewpoints inside a common 3D virtual space.

II. REQUIREMENTS FOR COBROWSING [3] identifies eight requirements for cobrowsing using a

standard 2D user-interface, although several of these do not apply as we are restricting this work to a single platform, Second Life, and we are able to use the features of that

SLOODLE is funded and supported by Eduserv.

platform to determine, and limit, which users are in or may join a cobrowsing session. The three requirements which do deserve discussion are: cobrowsing organization, web page synchronization and scalability.

Collaborative working requires social rules for participants to adhere to. Current cobrowsing solutions generally support one of two approaches, either sharing control over the browsing and following of links amongst all participants or putting the session under the control of one of the participants only [3]. Ideally both approaches should be supported.

Web-page synchronization requires not just that all browsers are updated to load the same web page after a link is clicked, with minimal delay, but that the different clients are actually presented with the same content with the same format. Consider that participants in a session may be accessing the session from different countries or from within different corporate organizations, each with their own firewalls and intra-nets. Viewing many major web-sites or the results from a popular search engine may give different results for each of the UK, the USA or China - with localized results and advertising. Viewing a page within a corporate firewall may be possible for some participants but not for others. The only effective solution for this is the introduction of some form of web-proxy. The loading on this proxy then limits the scalability of the solution.

An issue not discussed in [3] is the need to support shared focus of attention during cobrowsing. Telepointing was implemented in the PARC Colab [1], and distributed pointing is an important feature for supporting collaborative working with sketches and diagrams over networks [4], and the lack of a common viewpoint in a 3D environment is a known challenge for many collaborative tasks [5].

III. WEB BROWSING IN SECOND LIFE The base for our work is the built-in support for viewing

web pages in the Second Life platform [6]. The Second Life client can present a web page within a separate window inside the client, or rendered onto a surface in the 3D environment. In this work we are concerned only with the latter, which places the web content inside the 3D environment. A major limitation with this is that media embedded media in a web-page does not work and while client-side Javascript is supported, Adobe Flash is not. Web-pages rendered in-world are non-interactive - links may be visible, but cannot be selected. This naturally presents a significant barrier to implementing cobrowsing. It is possible to work around this via a combination of scripting in Second Life using the LSL script language and complementary server side scripting.

2009 Conference in Games and Virtual Worlds for Serious Applications

978-0-7695-3588-3/09 $25.00 © 2009 IEEE

DOI 10.1109/VS-GAMES.2009.38

221

2009 Conference in Games and Virtual Worlds for Serious Applications

978-0-7695-3588-3/09 $25.00 © 2009 IEEE

DOI 10.1109/VS-GAMES.2009.38

221

2009 Conference in Games and Virtual Worlds for Serious Applications

978-0-7695-3588-3/09 $25.00 © 2009 IEEE

DOI 10.1109/VS-GAMES.2009.38

221

2009 Conference in Games and Virtual Worlds for Serious Applications

978-0-7695-3588-3/09 $25.00 © 2009 IEEE

DOI 10.1109/VS-GAMES.2009.38

221

Page 2: [IEEE 2009 Conference in Games and Virtual Worlds for Serious Applications (VS-GAMES) - Coventry, UK (2009.03.23-2009.03.24)] 2009 Conference in Games and Virtual Worlds for Serious

Some notable features of the in-world browser are:

• It is possible to set the nominal pixel dimensions of the web browser texture. The client generates a texture representing the result of viewing the web page in a window canvas, and this texture is then mapped onto the 3D object surface. If a web page is larger than the canvas, a non-interactive scrollbar is shown down the right hand edge of the page.

• The use of media in-world is based on land ‘parcels’. Under normal conditions, all avatars present in the same parcel of land will see the same media content (video, web page or image).

LSL commands allow dynamic control over the URL of a web-page to be displayed on a surface and to start and stop the display of media (including web pages) and even makes it possible to display different content to different users [6].

IV. COLLABORATIVE BROWSING IN SECOND LIFE Interaction with media systems in Second Life is usually

dialog-based, or involves clicking one of a set of buttons, or by providing some text input in chat. Second Life browsers such as Daden (http://www.daden.co.uk) have used typed-chat commands to control browsing.

In the SLOODLE project, two pointing mechanisms have been investigated for mouse-based input. One is the ordinary web-browsing concept that touching the display at a particular place can be used to follow a link, or interact with a page element. The other, more suited to shared browsing, allows interaction via a virtual mouse: an arrow with a button that can be pushed around the display. Text input can be handled using chat once the virtual mouse has clicked a text field

Figure 1. SLOODLE browser with virtual mouse. Inset: The virtual mouse.

Accordingly, in developing a flexible SLOODLE browser, we implemented both solutions. A virtual mouse which is shared by participants and visible in front of the browser surface for cobrowsing activity (Fig. 1), and ‘mouseless’ browsing which uses the normal operating system mouse to click directly on points in the 3D surface. Although the use of the virtual mouse may seen clunky by comparison with simple touching, in either case we need to add scripts to relate locations of clicks to web-page elements. Our solution for this is an online ‘virtual mouse server’, VMouseSvr.

When the page is rendered by the client, there will be other HTTP requests, for images etc. The VMouseSvr must act as a proxy for these requests too, and this represents another VMouseSvr service, the Proxy service. Many web pages have large amounts of JavaScript, of which a great many web pages contain script errors, which normally allow them to be rendered but which cause significant problems for the proxy.

We have dealt with these and a range of other issues to implement a one-prim solution, the SLOODLE Browser (the virtual mouse uses two additional prims). The browser supports public, group and agent-based browsing, use of chat to change URLs, and browsing using either a virtual mouse or direct touch events. The VMouseSvr is implemented in C# for .NET but also works well with on Apache/Linux.

V. CONCLUSIONS We have outlined the implementation of the SLOODLE

browser, a solution which is able to ensure that all participants in a cobrowsing session are shown identical web page content and formatting. Synchronization of web page display is also handled, all clients refreshed after any change with relatively small delays. A virtual mouse serves to support collaborative discussion and browsing, and can be shared by all participants in cobrowsing sessions. A shared mouse also limits the possibility that several users will near-simultaneously click different links on a page and removes the need for more complex arbitration.

The load on the VMouseSVR, limits the scalability of this solution at present and Javascript errors in source pages can cause issues for the VMouseSVR. Despite these limitations, we believe that the SLOODLE browser satisfies the most significant requirements for cobrowsing and evaluations of, and extensions to, this work are in progress.

ACKNOWLEDGMENT Many thanks to Peter Bloomfield for his contributions.

REFERENCES [1] M. Stefik, D. G. Bobrow, G. Foster, S. Lanning, and D. Tatar,

"WYSIWIS Revised: Early Experiences with Multiuser Interfaces," ACM Trans. on Office Information Systems, vol. 5, pp. 147-167, 1987.

[2] S. Greenberg and M. Roseman, "GroupWeb: A WWW browser as real time groupware," presented at CHI, conference companion, Vancouver, BC, Canada, 1996.

[3] G. de J. Hoyos-Rivera, R. Lima-Gomes, and J.-P. Courtiat, "CoLab: A Flexible Collaborative Web Browsing Tool," in Proceedings of the 19th International Conference on Advanced Information Networking and Applications - Volume 1: IEEE Computer Society, 2005, pp. 501-506.

[4] P. Barthelmess, E. Kaiser, X. Huang, and D. Demirdjian, "Distributed Pointing for Multimodal Collaboration over Sketched Diagrams," presented at 7th International Conference on Multimodal Interfaces (ICMI), Trento, Italy, 2005.

[5] J. Hindmarsh, M. Fraser, C. Heath, S. Benford, and C. Greenhalgh, "Object-focused interaction in collaborative virtual environments," ACM Transactions on Computer-Human Interaction, vol. 7, pp. 477-509, 2000.

[6] D. Livingstone, M. Crowe, and P. Bloomfield, "HTML on a Prim: Uses and Abuses," presented at Second Life Education Community Conference, Tampa, Florida, 2008.

222222222222