in fig1 there is indicated , generally at 10 , a network architecture comprising a massive multiplayer online game ( mmoc ) environment 12 running on the internet 14 , and a contact center environment 16 also connected to the internet . within the mmog environment 12 , individual players 18 connect via the internet to a game server 20 following an authentication process carried out by an associated login server 22 ( the functions of login server 22 may of course also be carried out by game server 20 ). the game server 20 , which is shown as a single server but will more often be implemented as a network of servers , executes a number of processes in order to host a game for the players 18 , such processes typically including a game engine 24 , a representation of the simulated world or game environment 26 , representations and data relating to player characters or avatars 28 ( which inhabit the world representation 26 and interact with it and with each other according to the rules of the game engine 24 and the actions of players ), and communication functions shown generically at 30 , such functions often including voice , video and instant messaging facilities whereby player characters may interact wit one another , or players themselves may interact with one another in “ out of game ” communication channels which do not involve their characters . the login server 22 is provided with player account information including the player &# 39 ; s subscription and real world contact and billing details . in addition , if the game in question has an economy , the player &# 39 ; s character ( s ) may also have separate accounts in the game currency , and in the illustrated embodiment , this character account information is stored with the character / avatar data 28 on game server 20 . it will be appreciated that the player &# 39 ; s account and the character &# 39 ; s account need not be separate from one another and a unified account could be employed . the contact center environment 16 is separate from the game and comprises a contact center server 32 which is connected to the internet and to which a plurality of trained human contact center agents 34 are connected . agents 34 may make and receive voice calls to external parties or customers . such calls may be carried over the public switched telephone network ( pstn ), not shown , or may be carried over the internet with which the contact center server connects via an internet telephony gateway 36 . the contact center may additionally be enabled with technology such as the session initiation protocol ( sip ), allowing communications to be made in a range of media types . in addition to voice calls , agents may communicate with customers using video , or using data media such as instant messaging or email . incoming communications ( known as contacts ) are managed by the contact center server 32 in order to route contacts to agents in the most efficient manner for the contact center &# 39 ; s purposes . the management of contacts is controlled by workflows 38 which determine the routing of contacts through automated treatments such as an interactive voice response ( ivr ) application 40 or a music - on - hold server 42 . the ivr application provides information useful for classifying a contact in order to best route it to an available and competent agent . other information gleaned from the source of the contact , the number called , etc . can also be used in this way . each contact can therefore be allocated to one or more skillsets which are serviced by the agents 34 according to skillset abilities noted for each agent in a set of agent resource records 44 . at busy times , the contacts are placed in queues according to skillset and the contact center server also therefore manages the set of queues 46 . in this way , all incoming calls are classified and directed to agents according to the treatment specified in the workflows . the system as described thus far is conventional and known in the art . referring additionally to fig2 , a flowchart is shown detailing a sequence of steps carried out by a player 18 ( left hand column of flowchart ), the game server and login server 20 , 22 ( center column of flowchart ), and the contact center 16 ( right hand side of flowchart ). the process begins when a player logs into the game , step 50 , and following a successful login on the login account server 22 , step 52 , the game engine 24 sends the player &# 39 ; s avatar data and the world simulation data for the avatar &# 39 ; s environment to a game client resident on the player &# 39 ; s machine , step 54 . the client program running on the player &# 39 ; s machine renders the game world and the avatar within the game world to the player , step 56 , and the player can control this avatar in order to play the game as normal . within the game world provided according to the present invention , a mechanism has been provided for access to the services of contact center 16 . there may be any number of reasons why a player might want to access services which might be provided by a contact center , and the mechanism used to access the contact center can be any mechanism which a player avatar could normally access within the game . thus it could be a doorway or an arch through which the avatar moves , or a lever or a button , or a textual , menu or clickable command available through the client program . the mechanism might be labelled with “ real world ” information relating to the contact center , or the mechanism can appear to be entirely within the terms of reference of the game world , i . e . without any real world references . assuming that there is a portal or doorway provided in this particular game , the player avatar accesses this portal to initiate communication with the contact center , step 58 . the game engine recognises this action as a command to send a contact request to a contact center associated with that portal mechanism , step 60 . a communications link is created or accessed over the internet between the game and the contact center , i . e . the game server is programmed to formulate requests to a network address associated with the contact center . the request will typically include an identifier of the player , but may include additional details of the request , such as details entered by the player when accessing the mechanism in step 58 . thus , a player might write a letter or note , or record a voice message when accessing the mechanism , and any such details would be passed along with the request to the contact center in step 60 . in step 62 , the contact center , upon receiving a request for contact initiation , may request additional information to assist in queuing and directing the contact . such additional information might already be available to the game server from , for example , the login / account server 22 . other sources of data can also be used , such as the player history ( how often the player has requested similar services , details of the player &# 39 ; s in - game bank balance , details of previous services purchased or requested by the player , etc . ), step 64 . when this information is returned to the contact center , a contact is placed in a queue , step 66 . the contact center then returns details of the successful queuing of the contact and returns on - hold content to the game , step 68 . this on - hold content can be interactive voice response treatments , music on hold , or automated game content such as an automated character who appears to the player and asks questions analogous to those which would typically have been provided in an interactive voice response environment in a telephone call . the automated game content is supplied by a module 48 within the contact center environment 16 . when these details are returned to the game in step 68 , the game engine optionally simulates a queue and passes on the on - hold content in step 70 . thus , using the example of a series of question which are to be asked by the contact center , the game engine may in fact generate an automated character which is made to speak those question to the player &# 39 ; s avatar . in step 72 the player receives any queue content or any on - hold content and optionally , an interactive session may follow in which the player &# 39 ; s interaction with this content is processed by the game and / or the contact center to improve the queuing details or to add to the player &# 39 ; s data stored by the game and / or the contact center . a representation of the queue might be generated for the player , so that the player sees a line of other characters ahead of his own character , which reduces as the player &# 39 ; s contact approaches the top of the queue maintained by the contact center . another example is a representation of a waiting room , as at a doctor &# 39 ; s office . this environment allows for non - sequential / out - of - sequence processing of contacts ( such as when a nurse calls out the name of the next patient to be seen , which is not always the person waiting the longest ). as with traditional contacts in contact centers , the contact sooner or later reaches the top of a queue for which an agent is available , step 74 . the agent workstation is provided with a client program which performs a game login and launches the game client , step 76 . if the agent deals exclusively with contacts from one particular game , then the agent can be logged in permanently . alternatively , the agent may be servicing contacts from other channels as well as from the game , in which case it is more likely that the agent &# 39 ; s game client will log in to the game only when responding to such contacts . in step 78 , the game engine , following the agent &# 39 ; s login , sends avatar and world data to the agent &# 39 ; s client program , step 78 . the agent avatar then enters the contact center portal where the player &# 39 ; s avatar is situated , step 80 . in steps 82 and 84 , the agent avatar communicates with the player avatar and vice versa . the player is thus provided , in game , with an experience of dealing with an agent which is to all intents and purposes part of the game and does not require him or her to “ break character ”. from the point of view of the contact center , skilled agents can provide an enhanced experience to their customers which is not provided when a player has to log out of the game or take his or her attention away from the game in order to dial a contact center number or access a website . fig3 illustrates a variation on this process , beginning at step 74 , when the contact reaches the top of the queue and an agent becomes available . whereas the process of fig2 was immersive for the agent as well as for the player , the process of fig3 is not immersive for the agent , i . e . the agent does not have a full game client on his or her workstation . in step 86 of fig3 , the agent workstation performs a game login without a game client being presented to the agent . the game engine acknowledges this login in step 88 , and then the game itself generates an automated avatar in step 90 which is associated with that agent login . in step 92 , the automated avatar generated by the game enters the contact center portal ( i . e . it appears there to the player ) and from this point on the player avatar can communicate with this automated avatar , i . e . the player will see and can speak to the automated avatar in the contact center portal . form the agent &# 39 ; s point of view , the agent communicates with the game engine , in step 94 , such that any communications from the agent or to the agent using the normal communications equipment employed by that agent , are channelled to the game engine . the game engine intercepts such communications and uses them , step 96 , to automate the avatar with the agent &# 39 ; s communication . such automation can be as simple or as sophisticated as the game engine permits . thus , the voice of the agent can be augmented by physical gestures , emotions , and so on . alternatively , a video image of the agent can be converted to or merged with the avatar &# 39 ; s appearance and actions . in step 98 , it can be seen that the player avatar communicates with the automated avatar , and thus communication proceeds between the player and the agent with the game engine acting as an intermediary controlling the agent &# 39 ; s avatar . fig4 shows an example of a transaction carried out once communications have been established according to fig3 . the same principles apply , however , to the process of fig2 . in steps 94 , 96 and 98 , the agent , game and player communicate with one another as described above . when it is agreed between the player and agent that the player will pay for a product or service , step 100 , the player provides credit card or other payment details and address details or other authentication details verbally or using secure instant messaging , step 102 . these details are communicated either through the game server or via a different communications channel set up specifically for the transaction , and the agent verifies the transaction details as an agent would in a communications session in a contact center which had been initiated using more conventional channels , step 104 . once the agent is satisfied as to the financial details of the transaction and as to any agreed delivery of products or services , the transaction is completed , step 106 . it will be appreciated that the process of fig4 is essentially a conventional transaction piggybacked onto a contact center session carried out through the medium of a game according to the invention . however , fig5 describes a further integration between the contact center and the game . in the process of fig5 , steps 94 , 96 , 98 and 100 are as described above , with the player agreeing to pay for a product or service . however , rather than employing real - world payment mechanisms , the player in this case uses an in - game payment mechanism to pay for a product or service ( which may be a real world product or service ) with game currency , step 108 . the game verifies that the player is in a position to make such a payment according to the game rules , and performs a financial transaction deducting the credit from the player &# 39 ; s account , optionally taking a commission from the transaction , and crediting a contact center account held on the game server or held in the real world . for games where there is an open exchange mechanism converting between in - game currency and real world currency ( such as for the mmog called “ second life ” where the in - game currency of “ linden dollars ” are freely exchangeable on various websites to u . s . dollars ), the contact center may choose to be paid in real world currency rather than in in - game currency . however , it may also suit the contact center to maintain an in - game account balance . once this transaction has been completed according to the game server &# 39 ; s records , the agent is notified by the payment authorisation , step 112 , and the transaction then completes with the agreement of both player and agent , step 114 . the invention is not limited to the embodiment ( s ) described herein but can be amended or modified without departing from the scope of the present invention .
a mechanism is provided in a networked multiplayer game for use by playable characters . when operated by a player &# 39 ; s character , this mechanism causes the game to send a request for contact to an external contact center . the contact request is queued and allocated to an agent , optionally with the assistance of information provided by the game . when a contact center agent answers the contact request , a communications channel is opened from the agent directly into the game where the game system directs the communication to the local environment of the player &# 39 ; s character enabling the player to communicate with the agent of a contact center without leaving the game environment . the agent or contact center may additionally have a representation in the game so that the player can interact with the agent or contact center . the agent representation may be a character in the game controlled by an agent who is logged into the game , or by the contact center manipulating a game client or api , or by the game engine itself . a representation of the contact center may be a telephone graphic , portal , door , sign , lever , button or any other manipulable game object , and optionally a multimedia representation of the contact queuing system . payments can be made to or from the player using in - game currency which is credited or debited to an account held by the contact center .