Collecting Social Networking Data from Second Life
The aim of this article is to explore ways in which data about avatars in SL can be collected that can be used to perform some kind of social network analysis.
Data from the Server
There must be a lot of data available to Linden Labs, but it is not clear how to get this data, so we shall ignore this option for now.
Data from an Object in World
The alternative way to collect data would be to create objects in-world that a scripted to collect this data. This leads to a number of issue. Firstly, avatars must be made aware that such data is being collected and they must give permission to do so. Secondly, the object must have access to the data that is relevant for social network analysis.
The Virtual Name Tag
One idea would be to create a virtual name tag that avatars are asked to while visiting a VCE. This tag might also be used to display the person's real name, organization, and/or role in a meeting. When the tag is attached to the avatar a message might pop up that explains the purpose of the tag to the wearer and asks for logging permission.
Types of Data
The data necessary for doing social network analysis will primarily consist of data about the interactions between avatars. The three primary channels for communication are audio, (typed) open chat, and instant messages. Presumably only open chat would be available to the logger-tag. Having the logger attached to the avatar has the advantage that only chat that can be heard (seen) by the avatar is available for logging. However, there is no indication who a chat item is directed at.
Information provided in HTTP requests send from SL
This is the information send as "X-SecondLife-" headers in the request. Omitting the "X-SecondLife-" part that begins each header name, here is an example of each:
- Shard: Production
- Object-Name: HTTP request object
- Object-Key: fe4f4bc1-3cfb-6883-a130-102f825a7e07
- Region: Informatics (254976, 233216)
- Local-Position: (239.332504, 155.057953, 22.766310)
- Local-Rotation: (0.000000, 0.707107, 0.000000, 0.707107)
- Local-Velocity: (0.000000, 0.000000, 0.000000)
- Owner-Name: JeffD Arida
- Owner-Key: e18a4d5e-bff2-4e3a-8105-756910d01c82
Further information may be found here: http://wiki.secondlife.com/wiki/LlHTTPRequest
Second Life servers at Linden Labs provide the full list of a user's friends when connecting with Second Life credentials. Wene Chke's SL_Auth module can get this info. (Further information to see how slauth is working may be found here : http://lib.openmetaverse.org/wiki/Login )
Data Collection Tools
PieSpy is an IRC bot that monitors a set of IRC channels. It uses a simple set of heuristics to infer relationships between pairs of users. These inferrences allow PieSpy to build a mathematical model of a social network for any channel. These social networks can be drawn and used to create animations of evolving social networks. http://www.jibble.org/piespy/