Вы находитесь на странице: 1из 30

Online Games and Virtual Worlds:

White Paper Voice Services Integration & Operation

January 2009
Table of Contents

Service Overview 4

Vivox Precision Studio 4

Vivox Features 4

Person-to-Person Communications 4
Group Chat 5
Spatial Audio and Distance Attenuation 5
Channel Size 5
Open Microphone or Push to Talk 6
Individual Volume Controls 6
Moderator/Behavior Controls 6
Roster List 6
Recording and Monitoring 6
Client Side Recording 7
Channel Security 7
Voice Fonts 8
Administrative Management Portal 8

Safety and Managing the User Experience 8

Moderation 9
Monitoring 9
Parental Reporting 9
Recording 9
Control 10

Extending Community 10

PC 10
PlayStation® 3 10
Browser Plug-In 11
Vivox Community Connector 12
Voon 13
Advertising Support 13
PSTN/Mobile 13

The Vivox Network 14

Scale 14
Operational Risk Mitigation 17

Network Architecture 18

Management and Operations 19

Support 19
Online Games: Voice Chat Service Integration & Operation 3

Table of Contents (cont.)

Private Domains and Peering 20

Integration Methodology 21

Customized User Interface (UI) 24

Joining and Leaving a Channel 24


Participant List 26
Speaking Indications 27

Integration Process and Timelines 29

Managing the Service 29


Online Games: Voice Chat Service Integration & Operation 4

Service Overview

Vivox delivers superior quality IP voice services on a global scale for game and
virtual world communities. Vivox helps build and maintain online communities by
enabling one-to-one and group sociability, tactical communication and game
immersion with a professionally hosted and managed service. Vivox provides true
communications interoperability among PC, console, browser, desktop and mobile to
enable unprecedented community continuity. It’s all based on the robust Vivox SDK,
a game controlled UI and it’s delivered on the proven and massively scalable Vivox
Network. The feature-rich Vivox SDK facilitates a simple, custom integration into
your application and operates the network to deliver the services. Carrier-grade
infrastructure and advanced architecture, server-side voice mixing, full service
hosting, professional management and a dedicated 24x7 operations team with years
of large-scale experience ensure the most reliable service available to online games
with the lowest possible business and technical risk. You’re free to focus on the
development and growth of your world and community with confidence that Vivox is
delivering a high quality, stable and proven voice technology.

Vivox Precision Studio™

The Vivox Precision Studio SDK includes Communications and Administrative APIs
that enable game developers to tightly integrate the Vivox managed voice solution
into their games. The Communications API is generally integrated with the game
client while the Administrative API is generally integrated with the game server.

The Vivox Communications API integrates easily and manages all aspects of users’
voice communications. The Communications API allows game players to create,
control and participate in voice chat sessions with other users or groups of users. It
also provides management tools for developers to control and oversee user behavior.

Developers maintain complete control over the user interface and how voice is
exposed in the game, such as creating and deleting voice chat sessions (referred to
as “channels”) and enabling security functions on those channels.

Detailed information about the Precision Studio SDK is available upon request.

Vivox Features

Vivox offers distinct modes of communication:

Person-to-Person Communications
Vivox provides the ability for two users to talk directly and privately on-demand from
anywhere in the game world, on any game server. Communication in this case may
go directly from one user’s computer to the other user’s computer. If security
concerns or firewall restrictions make peer-to-peer communication inappropriate or
inadvisable, the voice traffic may be routed through the Vivox media servers.
Online Games: Voice Chat Service Integration & Operation 5

Vivox Features – Group Chat (cont.)

Group Chat
Players can talk in small or large groups through the use of voice chat sessions or
channels. There are three types of group channels available with the Vivox solution:

Dynamic Channels
Dynamic channels are created programmatically, tied to game activities or
on-demand by any player with appropriate credentials. Channels are typically
created when the first user joins voice on that channel. Each channel is
unique and may be linked to game data such as premium subscription, in-
game micro-transactions, a party ID, social affiliation, player characteristics or
another identifying element. Dynamic channels expire after a predefined
period of non-use and may be subsequently recreated with the same name if
desired.

Persistent Channels
Persistent channels are determined as part of the game design and remain
operational until they are explicitly removed by the developer. Persistent
channels can be restricted to a defined list of participants (see Access Control
Lists below) or mapped to specific events, teams and/or geography. These
channels are often mapped to game locales, guilds/teams, or other
established player organizations that are fairly static.

Proximate Channels
Proximate channels enable voice communication among avatars in a common
geographic space. In-game social gathering places can make voice chat
available to any avatar within a pre-defined range, or proximity to a fixed
object, that is controlled by the game. Simply walk up and talk to any player
within earshot - in the room, seated at your table, or by other range
definition. Proximate channels are particularly effective in pre-determined
social spaces. For example: lobbies, inns or taverns.

Spatial Audio and Distance Attenuation


Spatial audio channels provide users with 3D audio where the position of others
relative to the listener is reflected in the audio stream. Players to the right sound
like they are on the right; those behind you sound as if a glance over your shoulder
will locate them. Audio can also reflect a ‘camera’ view at the developer’s discretion.
Spatial channels offer distance attenuated volume, so the further a player is from the
speaking player the softer they will sound. The attenuated range can be adjusted for
each channel in order to accommodate in-game player densities, geographic
differences, physical barriers, etc. The feel of voice communication is designed and
set by the developers to their vision.

Channel Size
Group size in a single channel is virtually unlimited and the voice stream is full
duplex. Although it is somewhat impractical to join tens of thousands of players in a
single un-moderated voice channel, the Vivox technology will accommodate such
group sizes in a single channel. The technology readily supports large group
sessions where a small group of presenters may address an audience of tens of
thousands of listeners with robust moderator controls.
Online Games: Voice Chat Service Integration & Operation 6

Vivox Features (cont.)


Open Microphone, Push-to–Talk (PTT), Toggle
Multiple options are available for controlling the microphone. Users can choose to
have an open microphone that transmits continually. Alternatively, Push-to-Talk
(PTT) allows users to key bind to a mouse, keyboard or controller. A toggle option is
also available where one press of the bind turns the microphone on and a second one
turns it off.

Individual Volume Controls


Players can manually adjust the volume of any player, or multiple players in a
channel to account for individual volume differences or background noise. Each
participant may also selectively mute any other player on demand.

Moderator/Behavior Controls
Vivox provides a full set of moderator controls to enhance the users’ experience with
command and control tools, hierarchy options and GM or CSR abilities. Any number
of users in a group may have moderator rights. Moderator controls can also be
delegated among group leaders. Controls include:

§ Mute a user, or group of users to block all audio originating from that user
on the channel until he is un-muted by a moderator
§ Kick a user to temporarily remove him from the channel for a definable
“cool-down” period before the user may rejoin
§ Ban a user (or group of users) to remove him from the audio channel and
prevent him from rejoining until he is un-banned by a moderator

Roster List
Vivox servers generate a real-time list of users in a voice channel that may be
represented in the game UI. The following information may be shown:

§ which user characters are monitoring an active voice channel


§ which users are available for voice chat
§ which user is actually speaking (graphical “who’s talking” indicator)
§ which users are designated as channel moderators
§ which users are banned, muted or kicked out of the channel by an
authorized moderator

Recording and Monitoring


Vivox provides APIs that allow audio channels to be monitored and recorded on-
demand with server side recording. Recording is an effective deterrent and means of
enforcing terms of service or acceptable use policies. Recording can be activated on-
demand by an administrator or triggered programmatically when necessary.

Developers can add proactive monitoring to randomly record channels and


automatically append the recording to a complaint, if one is filed. The goal is to catch
the start of the conversation before things become heated. Users may also be
automatically recorded each time they join an audio channel in cases where they
have been involved in past harassment complaints.

Recordings are only accessible by administrators and may be automatically deleted


based on customer needs.
Online Games: Voice Chat Service Integration & Operation 7

Vivox Features (cont.)

Client Side Recording


The Vivox SDK supports client side recording, allowing players to record everyone
who speaks in a channel. The recording can be either single track, where everyone
is in a single audio file, or multi-track, which creates a separate file for each speaker
- great for podcasts or machinima.

In addition to capturing a recording, a ‘TIVO-style’ loop is exposed. The loop


provides a buffer that creates and stores the previous minute (or more depending on
how it is set up) of conversation for playback. A user can use a slider to jog back in
the conversation and return to the live channel on demand. The playback of audio
can be accelerated by removing silence and playing back at a faster rate. This allows
the user to catch up to the ongoing conversation and is effective for GMs to review
conversation in case of a complaint.

Channel Security
Vivox provides multiple layers of security for voice channels. Base security is
centered on secure username/password combinations that are not known by the
user. Connections to Vivox servers are only accepted from authorized domains and
certain commands are restricted to the IP addresses of the game servers. There are
additional checks and controls that are beyond the scope of this document.

In addition to these controls, Vivox provides tools to limit unauthorized access to


channels:

Access Control Lists (ACLs)


Channels may be restricted to a defined list of player participants. The list
can be generated by the server to minimize the chance of a client side
exploit.

Password Protected Channels


Channels can be restricted using a password that forces authentication prior
to granting access.

ACLs are particularly useful when there is a small group or a relatively static group
list. For larger groups, password protected channels offer efficient protection.
Online Games: Voice Chat Service Integration & Operation 8

Vivox Features (cont.)

Voice Fonts
Vivox voice fonts allow users to alter the sound of their voice to match the unique
characteristics of their avatar, or simply to disguise their identity. Vivox developed
voice fonts to give developers a way to add quality voice alterations with appropriate
characteristics to the player characters they design and for users to mask their
identities with flair.

Voice fonts are generally designed to model avatars’ physiology. A tall, barrel-
chested avatar will produce a much different voice than a diminutive waif. The voice
font processes the incoming voice on the client side and applies a series of filters
based on the design physiology to produce an altered voice that is matched to the
avatar’s physical attributes and/or to the surrounding environment. Environmental
inputs can be integrated into the audio stream – echo from a dungeon, static from a
handheld communicator, wind off the ocean, or a harsh atmosphere that adds a
husky whisper or gravely undertone.

Vivox has an inventory of pre-configured fonts in addition to creating custom designs


in collaboration with the developer. Vivox has expended significant effort to enable
natural, non-mechanical transforms that may be subtle or significant alterations to
the natural voice stream.

Administrative Management Portal


Vivox provides a web-based administration portal that allows your operational staff
to directly monitor and manage users, channels, recorded data and view real time
statistics.

Safety and Managing the User Experience

Managing acceptable social behavior is a necessary part of ensuring a safe and


responsible online experience. Vivox provides multiple tools for developers to
minimize the impact of griefers, manage anti-social behavior and address parental
concerns as they may exist. It’s generally accepted that game players of all ages
use mobile phones, or any number of readily available desktop VoIP clients like
Skype or Google Talk to facilitate voice conversation during game play. Vivox
provides security tools that allow developers to employ safeguard best practices that
ensure a safe and responsible environment for players of all ages. We’ve established
through customer experience that voice users are generally less likely to create
behavioral petitions than IM users. This is attributable to the personal and rather
public nature of voice versus the more anonymous nature of text communication.
People are far more likely to type something offensive than to speak it.

There are a number of tools that can be exposed to maximize the comfort and
security of the community you serve, including:
Online Games: Voice Chat Service Integration & Operation 9

Safety and Managing the User Experience (cont.)

Moderation
Peer Moderation
The ability to individually mute any person in a group for yourself is a
powerful feature and the ultimate stop for a verbal griefer.

Group Moderation
Party leaders, guild officers and other authorized users can mute individuals
on demand. Group mute provides the ability to send the muted party a
message notifying them that they have been muted. This gives the muted
user a chance to cool down, adjust and apologize. They maintain listening
ability while muted in the channel, but they are not heard. Moderators may
also kick a user from a channel and they will be unable to rejoin for a minute.
This is a more aggressive action, but it reinforces the message of acceptable
behavior. For repeat offenders, a moderator can permanently ban a user from
speaking in a channel until the ban is reversed.

Monitoring
Stealth Mode
Stealth mode enables an authorized GM to enter any channel and listen in
without revealing their presence. This is useful in the case of real time
intervention, or to monitor a user who has been previously flagged.

Parental Control and Reporting


One way to improve the comfort parents have with online games is to give
them a window into what is happening with their children online. To aid in
providing this process, Vivox can generate the following reports:

Call detail - with whom, when and how often do children speak
This gives parents/guardians the opportunity to talk to their kids about
who they are talking with and establish rules on behavior. People that
your child speak with more frequently are worth asking about – who
are they, what do you know about them?

Geo coded reports


This allows parents to monitor and control the geographic location of
other voice chat participants, tied to IP address.

Recording
Client side recording allows users to record and store audio in any channel on
demand. An audio buffer of chat occurring prior to the recording can be sent
along with the recording to document goading behavior prior to the start of
the recording. This way a GM can hear what was said in the minute before the
complaint occurred.
Online Games: Voice Chat Service Integration & Operation 10

Safety and Managing the User Experience (cont.)

Control
White List
A user can’t speak or hear another user unless they are on the user’s white
list.

Black List
Managed by users, any users on a black list will not be heard in any channel.

Out of Band Key Passing


Outside the game, a player is required to pass a ‘token’ to another player, or
player’s parent, before voice chat is allowed. This would require that players
know each other outside of the game in order to pass the ‘token’.

Quick Chat
For younger players, allowing them to listen but only allowing them to select
from preset audio clips (e.g. “need manna”) into the channel.

Extending Community

Online worlds are virtually limitless, but even with their digital reach they bump up
against some real world limits. Users have access to options from PCs to game
consoles and have extended communities through Web forums and mash ups. More
and more developers are giving users the ability to extend elements from in world to
other technologies. Vivox provides developers with the ability to reach new
platforms and to continue to foster interaction with their brand/title with full
communications and feature interoperability among supported platforms.

Supported Platforms:

PC
§ Windows XP, Vista
§ Mac OS X
§ Linux
All features described in this document are fully supported on these operating
systems.

PlayStation® 3
Vivox is an authorized developer for the PS3.

The PS3 version of Precision Studio will support all the features of the Vivox PC SDK,
except recording (this may be supported in the future). The SDK has been optimized
to take advantage of the SPUs on the cell processor and has a smaller processor
footprint than the peer to peer small group solution presently offered by the PS3 dev
kit.
Online Games: Voice Chat Service Integration & Operation 11

Extending Community (cont.)

With Precision Studio on the PS3, developers are able to create dynamic groups on
the fly and at the scale available on the PC. At the developer’s option, these groups
can communicate cross game and with players on the PC version of the game. The
command set is identical to the PC version making it easier to build your game.

Browser Plug-In
Vivox has extended its technology to the browser. By installing the generic Vivox
plug-in, a user is able to connect to the Vivox Network and access all of the features
of the Precision Studio SDK.

Supported platforms
Windows XP, Vista
- Internet Explorer 7+
- Firefox 3+

Mac OS X 10.4 Intel CPU only


- Firefox 3+

Web technologies supported


- HTML
- Java
- Flash

Integration with web games/sites


The small browser plug-in is installed by the end user and is common across
all games. The driving value for the plug-in for the first release is to deliver
the most functionality with the least integration effort for game developers.
Many of the common UI elements and state handling is in the plug-in code,
greatly reducing the integration effort. Each game maintains full control over
the game UI.
Online Games: Voice Chat Service Integration & Operation 12

Extending Community (cont.)


Vivox Community Connector
Vivox communication tools extend the game community interaction beyond the time
that users are actually ‘in world’. Vivox offers a variety of tools that help blend the
virtual and real world and extend the community.

The Vivox Community Connector is a


custom-branded, standalone, out-of-
game communications client that
enables users to communicate with one
another via presence, voice and IM.
Depending on developer needs, this
client can access in-game chat channels
or function solely out of game. Users
can see buddy presence, sync the list
with their in-game address book and
have IM or live voice chat sessions with
others directly.

Benefits include:
§ Longer player retention and recovery
§ Out of game connections
o Down times
o Alerts
o Need a friend
o Maintaining out of game relationships
§ Increased presence and participation
§ Fostered loyalty and community commitment
§ Possibility to cross network peering to public IM
§ Events
o Tournaments
o Live guest events
o Concerts/seminars

The Vivox Community Connector also empowers developers to extend their brand
and content past the game and onto the players’ desktop. With a fully customizable
UI, Vivox Community Connector is designed to reflect the originality of your brand
and offers flexible business model options with advertising and co-branding
capabilities to drive revenue and market presence.
Online Games: Voice Chat Service Integration & Operation 13

Extending Community (cont.)


Voon™
Voon is a standalone desktop client
that Vivox released in partnership with
a number of gaming websites. Voon’s
mission is to allow these gaming
communities to hold events and keep
their members connected. In addition
to a friends list, Voon gives users the
ability to create and publicize audio
events. Presentation controls are
exposed so that only certain people in
the channel are able to speak while
everyone can text.

The core code of Voon is available to partners to help them create a custom desktop
client. There is a substantial interest among players to stay connected with their
friends when they are not in game. By extending a friends list or access to the guild
channel to the desktop, players can stay connected while they are not in game.

Advertising Support
Both the Vivox Community Connector and Voon support graphical and audio
advertising.

For graphical advertising, the UIs are designed to support clickable industry standard
banner sizes. Audio advertising inserts short audio clips at convenient times, such as
when initially joining a channel. Both features support ad related business models
and allow developers to supplement the revenue stream with marketing dollars.

PSTN/Mobile
Vivox has established the PSTN/mobile network to allow connection to the regular
and mobile phone networks.

Dial-In
A regular phone number (DID) that allows connection to any voice channel in-
game from any telephone. This is particularly useful for guild/corp. channels
where all members are trying to connect at a given time, but some may be
away from their computer.

Dial-Out
Users can call out to regular phones around the world from the game UI.

SMS
To link the in game player community with the real world, Vivox delivers text
messages from in-game to mobile phones. This may be done without
exposing users’ mobile numbers to other users.
Online Games: Voice Chat Service Integration & Operation 14

The Vivox Network


The Vivox Network delivers communication as a managed service in order to
eliminate impact on game servers, provide immense scalability, and deliver voice
communications of the highest quality and reliability. The service includes all server
hardware, hosting and bandwidth for all voice users. Vivox operations professionals
monitor and manage the network and users 24/7 in order to deliver a superior-
quality, fully supported global voice solution that “just works”. Today, Vivox delivers
over 2 billion minutes of voice chat every month to millions of users in over 180
countries.

All group communication is mixed on Vivox servers and sent back as a single voice
stream to all voice channel participants. This results in high fidelity, full duplex voice
quality with minimum local CPU impact.

All users of the Vivox Network have the ability to talk with any other user on the
Network, regardless of the title they are playing. Of course, game developers
determine the scope of Vivox Network participation based on the vision for their
community. Controls are in place to manage the reach of communications.

Scale
We are often asked, ‘Does your system scale?’ Simply put, the Vivox Network is
specifically designed and built to meet the demands of massive online communities.
This may mean supporting 100 total users across the world, 10,000 users in a single
channel or millions of voice users concurrently connected in a single game world. But
the question of scalability in MMOGs and virtual worlds is complex, with several
different elements that need to be addressed. We address the main ones below:

Can the Vivox Network put a large number of people in a single channel?
Yes. The Vivox Network is proven to support a large number of real people in
a single channel. We routinely accommodate channel sizes well over 100
concurrent participants. These people are in dynamically created channels,
talking and moderating each other, receiving speaking notifications and
randomly joining and leaving the channel. Vivox has customers who run live
events where over 6,000 real people have attended in a single channel.

Why say ‘real’ people?


People behave differently than test scripts. They will join and leave based on
all sorts of factors and they talk or do things in the game based on their own
free will. This causes use patterns that you just can’t mimic in a test
environment. So, although we have tested our infrastructure to much higher
levels, we focus on the impacts we have seen from real people.

Can you recover from a patch?


All Vivox customers add regular patches. They routinely see the highest
concurrency rates after a major content patch as players hop on to try out the
new content. These patches often result in a rush of players immediately
after the game servers come up, creating peaks in registrations and channel
joins with the Vivox servers. Vivox is the provider of voice services to the two
largest single sharded games/worlds in existence, EVE Online (which peaks at
over 50k voice users) and Second Life (which peaks at over 75k voice users).
When either of these customers returns from downtime, Vivox sees the
Online Games: Voice Chat Service Integration & Operation 15

The Vivox Network (cont.)


heaviest strain any game can place on the Vivox Network servers. The Vivox
infrastructure has been developed and tuned to easily handle these loads, and
we do so routinely.

Can real people really manage a conversation with hundreds or thousands in


a channel?
Yes, in self managed groups. Players have developed skills and self generated
“radio discipline” to manage group voice use. The addition of peer controls
that allow players to adjust the volume of others (muting some) or moderator
controls that let group leaders mute problems is often all that is needed.

Vivox provides for both a moderated channel - where one person (or assigned
people like guild leaders) are given moderator controls - and for a democratic
channel where any user can use the moderator controls. Vivox has also
developed other ways for players to self-manage participation as it best
relates to the context of the session:

Presentation mode:
By setting presentation mode on a channel, moderators control who is
muted and who can speak and share the ability to control speaking
permissions.

Lecture mode: one user speaks and others listen


Every one other than the speaker joins the channel automatically
muted and does not have the ability to un-mute. The moderator can
un-mute one or more people in the audience and mute them again
when they are finished speaking. This mode uses out of band
signaling – raising a hand or sending a text message to let the
moderator know they want to speak.

Seminar mode:
Other than the moderator all users join muted and un-mute
themselves to speak. When they are done speaking they return to a
muted state.

Auditorium mode:
This mode works much like Lecture mode, but it is specially designed
for very large groups. In a very large group, over 300 people, things
like roster updates, presence statuses etc. generate useless network
traffic. In Auditorium mode these extraneous items are not sent out,
thereby reducing the amount of traffic to the client that produces a
better experience.

Multi-channel:
Multi-channel enables structured communication allowing a large
number of players in a complex environment (i.e. combat or raid) to
stay in communication without blocking important messages.

The best example for large group management and the use of multi-
channel comes from EVE Online. EVE Online uses the Vivox multi-
channel calls to help users manage fleets of 256 pilots. Users are
Online Games: Voice Chat Service Integration & Operation 16

The Vivox Network (cont.)


placed in squads, squads are part of wings and there is a fleet
commander over the entire fleet. Users listen on their squad, wing
and fleet channels. They can speak on their squad channel, squad
leaders can speak on the wing channel. When a fleet commander
speaks all other speakers are muted and they can hear the fleet
commander. The same thing happens when a wing commander speaks
on the wing channel.

Can players reach other players?


Some voice solutions suffer the problem of creating isolated islands, not so
with Vivox. Any user connected to the Vivox Network can talk to any other
player, at the developer’s discretion. Players can talk to others who are on a
different shard or even in a different game. The ability to connect cross shard
or cross game is entirely in the control of the developer. Some publishers
have cross game communication and are adding the ability to connect with
anyone else on the Vivox Network. This means any user can reach millions of
others. The limits of connections and reach are established by the game
world.

Can the Vivox Network scale to millions of unique users?


Yes. By breaking the network elements into specialized units, Vivox has
scaled to millions of unique users to date. The database, signaling system
and media handling servers are designed to scale by adding resources where
they are needed. Resources can be added and removed dynamically without
a system down time. As one element of the network grows the Vivox
Operations team adds more resources, as demand wanes in one area and
grows in another resources can be moved from our Network Operations
Center (NOC). Each element in the network is designed and proven to handle
the kind of scale millions of voice chat users generate. The scaling effort is
not limited to a single game or a single data center. Vivox operations is able
to add capacity across data centers giving us the ultimate flexibility to deal
with specific and specialized events such as patch day, game launch or double
XP weekends.

The foundation of the Vivox Network is our ability to virtualize the media
layer. All of the group communications is handled by the media layer which
manages to audio and reduces to the stream that is sent to the client. By
virtualizing this layer users are not linked to a specific server. Nor is a game
linked to a limited set of servers. Vivox is able to add and remove capacity to
the media layer without downtime. This way we are able to have ready
reserves for each customer and we are able to quickly bring more capacity to
bear. This is a complex functionality (think about back up systems that lock
files and block certain acts as they back up) that was built to deal with
unusual capacity shifts or failure of a single server.
Online Games: Voice Chat Service Integration & Operation 17

The Vivox Network (cont.)

Operational Risk Mitigation


Voice service is a core part of the user experience. It impacts how they work
together, how players socialize and how they play the game. In delivering voice to
millions of users, Vivox’s expertise in monitoring and managing the service ensures a
flexible and resilient service that maintains game immersion and minimizes
operational risk. This is a closed loop process between Vivox operations and
engineering, producing a telco-grade service.

Vivox monitors services 24/7 and responds before issues become problems. With
over 14 trillion minutes of total traffic, Vivox has built profiles and monitoring
procedures to spot trouble before it happens. Our operations team is able to add
and remove capacity on the fly to deal with emerging issues. All issues are reviewed
with core engineering as we strive to eliminate anything we don’t like. This works
across our platform and fixes are often implemented behind the scenes without
downtime required.

Fundamentally Vivox delivers:


§ A proven system – millions of users, trillions of minutes of actual use, uptime
SLA
§ The ability to scale dynamically with capacity added or removed without
downtime
§ Constant monitoring and improvements
§ A uniquely consistent and reliable user experience
§ A proven, operationally mature network that scales
§ Dramatically reduced development time and cost
§ A dedicated team of experts who are focused on improving the platform
§ Minimal risk from a technology and resource perspective
Online Games: Voice Chat Service Integration & Operation 18

Network Architecture

The Vivox Network assigns the resources needed to authenticate, connect and
manage communications into multiple servers and applications to provide granular
scalability. This allows Vivox to better manage and grow the network.

Granular scalability delivers significant advantages:

§ Massive scalability – service improvement is made by adding additional


servers for any particular function. This allows us to maintain optimal levels
of capacity for all users
§ Improved operational stability - each group of servers can be tuned for
optimal performance for its role
§ Fail-over across the functional group without disrupting calls in progress
§ Improved management & responsiveness - each server type can be set
up and monitored for the factors that impact it the most

Vivox has implemented detailed instrumentation for all network elements and
monitors them 24/7. With years of experience dealing with millions of users in over
180 countries, Vivox has fine tuned the network to deliver the highest level of
service quality and reliability available.

The Vivox infrastructure is an industry leading design including:


§ Bridge stacking and cascading that allow groups to exist across multiple
servers, delivering virtually unlimited group size. This architecture eliminates
assigning groups to a particular server, moving groups from one server to
another and losing marginal capacity associated with legacy architectures

§ Server-side mixing delivers superior audio quality by mixing all voices in real
time and delivering the audio in a single stream of natural sound
Online Games: Voice Chat Service Integration & Operation 19

Management & Operations


To support the Vivox Network, Vivox provides 24/7 management of all
communication services with tools and processes that have been fine tuned by a
practiced team of professionals. All elements of the infrastructure, from a power
strip in the datacenter to the code on end users’ machines, are monitored end to
end. Software errors are logged and tracked, hardware and server elements are
actively probed for signs of potential issues before they become problems. Vivox
service management is not about solving problems as they occur; it is about making
sure they never happen in the first place.

Real-time signaling and time-sensitive IP media involved in the integration of online


communication requires specialized skills and experience. The Vivox operations team
is staffed by VoIP veterans with extensive knowledge in managing large scale
distributed communication networks. The team deftly handles elements such as
forecasting loading trends, proactively detecting security issues and scaling available
capacity. In addition, the operations group also aggressively monitors ISP networks
to better manage network impacts on service quality.

Several key factors that the Vivox team has put into place ensure the uptime of the
Vivox Network:

§ Replicated and stateless servers provide architecture resiliency and the ability
to have seamless upgrades and failure recovery.
§ Hardware spares are kept 'at the ready' and exacting configuration controls
guarantee consistency.
§ Vivox deploys multiple environments for every game: a development domain,
which is used for testing and for the developers’ test bed and a production
domain for live users. With these separate domains, developers have a solid
environment in which to test features and integration before rolling out to the
user base. As new Vivox features are added, it provides a solid test
environment to minimize user impact.
§ The operational environment at Vivox extends to downtime management. All
work is planned and coordinated with the game developer’s operations team.

Support
Vivox delivers 24/7 live assistance and applies a tiered support approach in order to
minimize support calls.

Vivox has developed tools and user wizards that will allow users to auto-diagnose
problems and resolve them without customer service intervention.

• Audio Tuning Wizard – Vivox provides this as part of the SDK to allow all
service users fine-grained control over their microphone and speaker
selection and settings to ensure the best possible audio quality.

• Connectivity Troubleshooting Wizard – Vivox provides this as part of the SDK


to provide assistance when/if an individual user has issues accessing the
voice service. The troubleshooter analyzes a host of issues that may impact
connectivity and reports detected problems.
Online Games: Voice Chat Service Integration & Operation 20

Support (cont.)

Vivox provides named support for all developers and conducts regular reviews of the
support environment.

Vivox also provides training for GMs and operational staff. The training is customized
to the specific integration and covers:

§ The integration and user experience


§ Common user problems
§ Support procedures
§ The administration portal

For issues not resolved by self-support, the Vivox knowledge base, or first tier
support, Vivox backs up your service team. Any unresolved issue that cannot be
solved with self-support material is analyzed and addressed.

Private Domains and Peering


Vivox creates private communication domains for each customer, providing you with
a closed communication network for your users. Unless you request otherwise, users
in a given domain can only talk with other users within the same domain. Generally,
domains are restricted to a particular game title. At your request, Vivox can create
peering relationships between game titles, or allow publishers with multiple game
titles to open up voice communication among the players of multiple games. As
discussed earlier, Vivox can also provide links between your virtual domain and the
“real” world through connections to mobile and fixed phones.
Online Games: Voice Chat Service Integration & Operation 21

Integration Methodology
Integrating with Vivox involves
connecting events from game
code to Vivox calls to manage
who is connected to which
channel. Various elements of
information, like which guild a
user belongs to, can be used to
control to which channels they
have access.

Integration with Vivox involves 3 elements:


• Client integration
• Server side calls
• UI implications

A number of calls are mirrored on both the client and server so that developers have
flexibility in choosing how to integrate. Vivox best practices are continually refined
within the integration experience to find the simplest secure solution for the
developer.

Client Side Elements


The Precision Studio SDK provides libraries that deliver the communications
functions. They can either run in process with the game code or run out of process.
In addition to the code, a sample application, design guide and reference manual are
provided.

Typically, client side calls are used for local/users actions, such as joining a channel
or muting another user. However, almost all functions, including those generally
implemented through server calls, are available from the client.
Online Games: Voice Chat Service Integration & Operation 22

Integration Methodology (cont.)


Server Calls
Server side calls are typically used for user management (add/delete account) and
group actions (create a channel, modify ACL). The calls are made using HTTPS post
calls and have been tested to thousands of calls per second without performance
impact.

As large scale provisioning is a complex process, Vivox built the server side calls to
simplify the process while delivering confirmation for each activity to maintain
database integrity.

Server calls can also be extended to web pages to show user presence or initiate
events in the Community Connector.

Sample Flow
Integration of Voice in an application is straightforward. The following flow diagram
lays out the events that occur with creating a channel and adding the first user.

There are 3 calls made:

§ Create channel (2a)


§ Add moderator – usually the group leader; this can also be multiple people
and changed after the fact (3a)
§ Join Channel (5)
Online Games: Voice Chat Service Integration & Operation 23

Integration Methodology - Sample Flow (cont.)

The next user who joins the channel results in a simpler flow:

The game code must provide the user name and the party ID and one call is made to
join the channel.
Online Games: Voice Chat Service Integration & Operation 24

Customized User Interface


The User Interface is entirely controlled by the game developer in order to deliver a
graphical control that is matched to the game environment. The UI needs to support
audio participant roster lists, moderator rights (mute, kick, ban, rejoin, etc.) and
graphical “who’s talking” indicators. These indicators may take any number of
graphical forms, including a highlighted user character, a symbol display near the
user character, or other visual cue. The rights for these controls are based on
designated moderator and user roles that are controlled by game developers based
on internal group architecture.

The graphical representations that indicate various user states, e.g. who is talking,
are created by the game developer, and they are triggered from the server or client
API(s). The Vivox tool set allows the game developer to build graphical voice cues in
a way that match the environment and design goals of the game. Graphical cues
may show:

§ which user characters are monitoring an active voice channel


§ which users are available for voice chat
§ which user is actually speaking (who’s talking indicator)
§ which user is banned, muted or kicked out of the channel

Examples of interfaces in deployment follow:

Joining and Leaving a Channel


In the example shown below, the user, Oobaofo, has a voice chat toolbar constantly
present in the game UI per their option settings. By clicking on the icon in the
toolbar they can see what groups they belong to and can choose which to join.

A window then
appears showing,
who is also
participating in the
guild channel.
Online Games: Voice Chat Service Integration & Operation 25

Customized UI – Joining and Leaving a Channel (cont.)

Below is a picture of the additional channel/player management tools. From this


window players can set moderator rights and control group participation with mute
options, invite players and control volume and microphone settings.
Online Games: Voice Chat Service Integration & Operation 26

Customized UI (cont.)

Participant List
The participant list displays the users currently on a channel. The game may allow
the user to see the participant list for a channel he is allowed to access in addition to
a channel in which he is currently active. In the example below you can see all voice
participants in the Guild window.

Game-defined icons may also be used to indicate additional state information about
each user on the participant list. This information includes which users on the
participant list have access to voice or have been muted or banned by a moderator.

The figure below shows another way of indicating that a user has voice capability. In
this case, the voice-capable icon is on the name tag of the pictured avatar (named
Stravinsky).
Online Games: Voice Chat Service Integration & Operation 27

Customized UI – Participant List (cont.)


Another example of participant lists is shown in the following figure. The “cards” on
the right of the screen (indicated by the number “2”) show the voice participants in
the “All” channel. The yellow card indicates who is speaking as does the icon above
the avatar’s head.

Speaking Indications
Speaking indications associate a game-defined icon or other visual display with the
users currently speaking. Speaking indications are presented through the game user
interface and allow users to associate voices with other users. Common visual
speaking indications include:

§ Highlighting the avatar by making his name glow


§ Highlighting or adding an icon in the participant list
§ Highlighting icons in a map interface.
Online Games: Voice Chat Service Integration & Operation 28

Customized UI – Speaking Indications (cont.)


The value and number of speaking indications vary depending on the MMO. For fast-
paced games with pick-up groups, users need more information in multiple locations.
When user grouping is longer lived, users want the option to turn off some indicators
once they begin to recognize voices because multiple indicators can be distracting.

The figure below illustrates the example of highlighting an icon in the participant list.
The icon associated with “Nate D” turns green when he speaks.

Other examples of visually indicating who is speaking:


Online Games: Voice Chat Service Integration & Operation 29

Integration Process and Timelines

Vivox has refined an integration process over multiple game implementations to


deliver a quality voice solution in minimum time.

The Process:

§ Kick-off meeting – usually a single day involving designers and developers


in order to produce a detailed specification of the integration and to introduce
the development team to the SDK
§ UI design – the interface drives much of the lower level functionality and
designing it earlier greatly reduces development time
§ Wiring calls to UI stubs – connecting the Vivox calls to UI elements and
tracking state for items (e.g. user is in a channel)
§ Testing – Vivox works with the developer to develop and run test cases to
validate integration

As noted, Vivox provides a development domain and a production domain. This


allows developers to test and validate changes without impacting users.

Timelines vary based on the complexity of the integration, but it is reasonable to


expect an integration to take 3-4 weeks. With past Vivox implementations, the
detailed design created by Vivox at the kick-off meeting and UI design have been
key factors in shortening the development cycle.

Vivox assigns a project manager and engineer to every integration who will assist
and support developers. Regular status reports are provided to the teams to help
manage timelines and resource commitments.

Managing the Service

After the integration Vivox delivers:

§ Operational and support training


§ Detailed statistics on use
§ Real-time access to user and channel information via the admin portal
§ Regular reviews of usage and adoption
§ Marketing support to promote the game and drive usage

From design to ongoing operations, Vivox is there to ensure it just works.


2-4 Mercer Road
Natick, MA 01760
Toll free: 888.28.VIVOX (288-4869)
Phone: 508.650.3517
Fax: 508.650.3574
Email: info@vivox.com
http://www.vivox.com

©2009 The information in this document is confidential, proprietary and subject to change without notice.
Vivox, Vivox stylized logos and Precision Studio are trademarks or registered trademarks of Vivox, Inc. in the U.S. and/or
other countries. All other company and product names are trademarks or registered trademarks of their respective holders.

Вам также может понравиться