Академический Документы
Профессиональный Документы
Культура Документы
January 2009
Table of Contents
Service Overview 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
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
Scale 14
Operational Risk Mitigation 17
Network Architecture 18
Support 19
Online Games: Voice Chat Service Integration & Operation 3
Integration Methodology 21
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.
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
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
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.
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
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:
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.
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
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.
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
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.
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?
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
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.
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
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+
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
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
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.
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.
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 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
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.
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.
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.
§ 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
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.
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:
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.
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.
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.
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
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.
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
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:
A window then
appears showing,
who is also
participating in the
guild channel.
Online Games: Voice Chat Service Integration & Operation 25
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
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:
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.
The Process:
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.
©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.