System and method for providing distributed support services in a virtual environment - Patents.com
By converting requests for assistance into support request objects within virtual environments and utilizing blockchain technology for secure identity verification, the system addresses the challenge of obtaining customer support within virtual environments, enhancing support efficiency and accessibility.
Patent Information
- Application Number
- JP2024553683
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-03-14
- Filing Date
- 2023-03-13
- Publication Date
- 2025-04-22
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Users in virtual environments face challenges in obtaining customer support and assistance within the virtual environment, as there is no effective method to seek support, and design elements that facilitate support are lacking, leading to reliance on external communication channels.
The system converts requests for assistance into support request objects within the virtual environment, allowing these objects to be forwarded to multiple support sources, including avatars and brands, and utilizing blockchain technology for secure identity verification and data storage.
This approach enables users to receive customer support and assistance within the virtual environment, reducing the need for external communication channels and enhancing the efficiency of support services by allowing access to multiple support entities.
Smart Images

Figure 2025512725000001_ABST
Abstract
Description
Detailed Description of the Invention
[0001] [CROSS REFERENCE TO RELATED APPLICATIONS] This patent application claims the benefit of U.S. Provisional Patent Application No. 63 / 319,688, entitled “Systems and Methods for Providing Support Services in a Virtual Environment,” filed March 14, 2022, the entire contents of which (including any addenda) are incorporated by reference into this application.
[0002] [Background technology] Virtual reality and augmented reality experiences are becoming more prevalent. Typically, users enter and interact with a virtual environment using specialized devices, such as a headset or glasses. The natural evolution of this type of experience is that of a person, represented by an avatar, existing within the virtual world and interacting with objects, other avatars, and the virtual environment. Sometimes, this virtual world or virtual reality is augmented by images or representations of objects in the real physical world. Such virtual worlds and environments have been called the "metaverse" (the concept of a highly immersive virtual world where people come together to interact, play, and work (Merriam-Webster Dictionary)).
[0003] As with the physical "real" world, a person experiencing the metaverse may encounter problems when using a product or service, such as a virtual application, delivery service, virtual device, business-related service, or another aspect of the virtual world. In some cases, the virtual form of an application or device may correspond to an actual real-world version of the same application or device. In the physical world, a person may contact the store where the product was purchased or the "brand" represented by the product or service to receive customer support or other forms of assistance, but such an approach is not possible in a virtual environment.
[0004] There are a number of reasons for this, but they are typically explained as having to do with one or more of the following:
[0005] - The lack of a point of contact within the virtual environment for assistance with a particular product or service, and the lack of an effective way to describe desired support within the virtual environment.
[0006] ○This is an example of how virtual environments have limitations and that users may need to leave the environment to perform certain tasks.
[0007] ■In some sense, this is caused by the fact that there is no way to seek support for products or services within the virtual environment without leaving the virtual environment, but instead must contact customer service or support providers using communication channels outside the virtual environment.
[0008] ■Similarly, this is caused by the lack of design elements that logically fit into the wide variety of possible virtual environments that provide avatars or a clear way for users to request assistance, i.e., the lack of a standardized, easy-to-understand form or process within the virtual environment for requesting support assistance regarding the virtual environment's applications, products, services, or features.
[0009] In many cases, inadequacies in support services result from the need to provide customer service or support personnel with contextual information about the service request, such as the type of product or service, its location, the identity of the service requester, the product's serial number or other identification, its current status, any error messages or error codes for the product or service, etc., and the inability to provide that information to assistance sources while within the virtual environment.
[0010] In some cases, this information may not be available, or even if it is available, there may be no process to collect and / or transfer this information to an appropriate object or avatar in the virtual environment to obtain the desired assistance.
[0011] ● The lack of a verifiable association between an avatar in a virtual environment and a real (physical) person to enable user authentication, verification, and personalized, secure assistance or support services.
[0012] ○ This concerns the problem of establishing a verifiable identity of an avatar so that the avatar, or the real person represented by the avatar, can be associated with a product or service in the virtual world, and the avatar can be authenticated to request and receive support services.
[0013] ■This also relates to the need for a secure identity verification system that protects personal data and information from security breaches, whether the personal data and information is provided by a real person or an avatar of that person.
[0014] ●Lack of infrastructure to provide customer support in a multi-brand environment to enable users to get assistance from multiple entities in a decentralized economic system while remaining within the metaverse experience.
[0015] This pertains to the problem of a virtual environment that includes a person (in the form of an avatar) wanting products and services from multiple sources and support services available for each without leaving the virtual environment, and considering the product, service, or context (if relevant to the request) for a customer service or support request.
[0016] ■This also demonstrates the value of collecting relevant contextual or identification data about a product or service so that it can be provided to an appropriate object or avatar within the virtual environment.
[0017] For example, in the “real” physical world, the context in which a request for customer service occurs may include the day, the time, the current state of the device, and any error messages displayed or implied, and this information is used by the customer service provider to determine how best to assist the customer.
[0018] ■This concern may also relate to the inability to get help from other people / avatars, which in some cases could be beneficial in providing solutions to the user's problems by accessing the "wisdom" and experience of the group.
[0019] The system and method embodiments described herein aim to solve these and related problems individually or collectively.
[0020] [Summary of the invention] The terms "invention," "the invention," "this invention," "the present invention," or "the present disclosure," or "the disclosure" as used herein are intended to broadly refer to all subject matter disclosed in this specification, the drawings, or each of the figures, and the claims. Statements containing these terms do not limit the meaning or scope of the disclosed subject matter or the claims. The embodiments covered by the disclosure are defined by the claims, not this summary. This summary is a high level overview of various aspects of the disclosure and introduces some of the concepts that are further described below in the detailed description. This summary is not intended to identify key, essential, or necessary features of the claimed subject matter, nor is it intended to be used alone to determine the scope of the claimed subject matter. The subject matter should be understood by reference to appropriate portions of the entire specification, any or all of the figures or drawings, and the claims.
[0021] Embodiments of the present disclosure are directed to systems and methods that allow a person experiencing and interacting within a virtual environment to obtain customer support or other forms of assistance within the environment for the objects, services, or experiences with which they interact within the virtual environment. In some embodiments, this may include the option to obtain support or some form of assistance from an avatar or object within the virtual environment. In one embodiment, this may be enabled by transforming or transforming a request for assistance into an object (referred to herein as a support request object) within the virtual environment.
[0022] The support request object may contain or be associated with data and information regarding, for example, the avatar / requester, the purpose of the request, the context in which the request was made, or the product or service for which assistance is being requested. The object representing the request may then be controlled by the person requesting assistance (in the form of an avatar within the virtual environment). This may facilitate the action of and access to multiple sources of assistance, which is not possible with a centralized support system that would otherwise require finding and obtaining support from a single source.
[0023] In some embodiments, the disclosed systems and methods may comprise elements, components, or processes configured and operative to provide one or more of the following:
[0024] Support services for a virtual environment and / or locations within the virtual environment that may include “objects” representing devices, experiences, products, or services associated with multiple sources or brands and that may be utilized within the virtual environment.
[0025] • A support service that considers the context of one or more of the requester / avatar, the object for which assistance is requested, the virtual environment, the location within the virtual environment, and the relationships between them.
[0026] ● To enable the provision of support services or other forms of assistance in response to support requests in the form of support or assistance request objects.
[0027] In one embodiment, the avatar indicates a desire to receive some form of assistance or support.
[0028] ■ In one embodiment, this may be determined by the avatar interacting with an object, which may represent, for example, a device, product, or service.
[0029] ■ An avatar's request for assistance or support initiates the process of generating a support request.
[0030] ○ Requests for support or assistance are translated into support or assistance request objects within the virtual environment.
[0031] o In one embodiment, the support or assistance request object may be forwardable or otherwise made available to other sources of support or assistance.
[0032] ■ Other sources of support or assistance may include other avatars.
[0033] ■ Other sources of support or assistance may include sources of data, information, advice, or access to other information or systems.
[0034] • The source of data, information or advice may be within the virtual environment or outside the virtual environment.
[0035] In one embodiment, converting a request into an object within the virtual environment provides a mechanism for securely transferring information or data related to the request between an avatar or object within the virtual environment and / or an assistive source outside the virtual environment.
[0036] ■In one embodiment, data and information related to or associated with the request (e.g., regarding the requester, the state of the product or service for which assistance is being requested, or the environment surrounding the product or service) may be stored on the blockchain and / or associated with a non-fungible token (NFT) or other form of token.
[0037] ● The stored data and information may include data that may be used to verify the identity of the avatar and / or the person controlling the avatar, along with an indication of the rights or privileges of the avatar and / or person that relate to the product or service for which assistance is being requested.
[0038] o In one embodiment, converting requests into objects within the virtual environment provides a mechanism for establishing a "market" where such objects may be auctioned, traded, sold, bartered, commented on, forwarded, exchanged, or otherwise exchanged.
[0039] ■ This may help enable the request to be responded to in a more efficient manner by making other sources of assistance available to the requester.
[0040] ■This reduces dependency on a central source of support or assistance to objects in the virtual environment by allowing access to the knowledge and experience of others and the most efficient means of responding to the request, increasing the likelihood that the requester will receive a satisfactory response to their request.
[0041] ■ Providing support or assistance upon request The disclosed approach may facilitate collaboration between avatars or sources of products or services.
[0042] ■ The disclosed approach of providing support or assistance on request empowers the requester to seek and identify the most efficient solution to the problem instead of having to rely solely on a centralized source of support services.
[0043] A secure and verifiable method for determining the right or ability of an avatar to request and receive support services. The method or approach used to perform this function may vary depending on the form of assistance requested and whether the right is related to the avatar and / or the person controlling the avatar. By way of non-limiting example, the following may be required:
[0044] ○ Verify the avatar's association with a real person and establish that person's rights or permissions.
[0045] o Verifying the identity and rights of an avatar with a verifiable token (e.g. NFT), which may relate to the avatar's rights in the virtual environment and may not require verification of the identity of the person controlling the avatar.
[0046] Verify the identity of an avatar in the virtual environment using a secure and recognized verification method.
[0047] ■In each example, the goal is to enable the avatar to identify itself and establish its rights, authority, or entitlements, and / or (if necessary in the circumstances) to enable a person to "establish" their association with the avatar (or control over the avatar) and establish their rights.
[0048] ■In some cases, identity verification may be part of a process that allows an avatar or real person to establish ownership of an object, or eligibility to use a service or some kind of support.
[0049] ○ This shows how the method used for identity verification can vary depending on the context generating the request for assistance.
[0050] ■In some cases, the avatar may be part of a transaction involving the transfer of "credit" or virtual funds, in which case there may be no need to verify the identity of the person controlling the avatar to provide the requested assistance.
[0051] ■In some cases, the avatar may be interacting with a service provider in the real world, in which case the avatar may need to verify that it is being controlled by an authenticated person in order to receive assistance.
[0052] Support services within the virtual environment that can connect and communicate (if necessary) with “real” world digital platforms and support tools, and real-world support agents, to obtain requested assistance.
[0053] o This interconnection between the virtual environment and real-world support tools may be used to enable existing real-world support agents to support the virtual world without changing their support workload or practices.
[0054] ■As an example, support agents can use CRM tools to respond to and participate in "chats" with support requests. These agents can continue to service requests for help that are generated in the real world while continuing to respond to requests that are generated in the virtual world as needed.
[0055] o This interconnection between the virtual environment and the physical real world may include services provided in the virtual environment that are tied to supporting real-world objects represented in the virtual space.
[0056] ■As an example, this could be envisaged allowing a user (in the form of their own avatar) in a virtual environment to obtain customer assistance with an object within that environment, where the object has a real-world version that the user owns and where the customer assistance can be applied to the real-world object.
[0057] ●Support services within the virtual environment may be accessed using virtual / augmented reality devices and technology, support may be provided for locations, objects, or assets within the virtual environment, support may be available from a menu / kiosk, or may be otherwise integrated with the virtual world experience.
[0058] As part of, or in addition to, enabling the provision of customer support services or other types of assistance within a virtual environment, the disclosed systems and methods may also provide the following advantages, services, or capabilities:
[0059] - Consideration of the context within the virtual environment that may be necessary to provide automated or self-help support.
[0060] This relates to the fact that in a virtual environment, the type of support needed may depend on the context at the time assistance is requested, especially for self-help or automated support.
[0061] For example, to provide self-help or automated help within a virtual environment, the system may need to know where the avatar is, what objects or avatars it may be interacting with, and what the avatar is doing so that appropriate help or automated assistance can be provided.
[0062] • Effective infrastructure for providing customer support within a multi-brand virtual environment and ensuring that users get assistance from the correct entity when multiple entities are present.
[0063] This is relevant in situations where, in virtual environments, the user experience is not provided by a single brand, but rather by a mixture of experiences, objects and services produced by multiple brands.
[0064] For example, in a virtual world, an avatar may be standing in a virtual mall surrounded by different stores, where each store experience is generated by a separate brand.
[0065] Similarly, in a virtual world, an avatar may be in their own virtual space, may own certain virtual objects (such as paintings, virtual cars, radios, or other objects) produced by different brands, and may want support when the objects are not functioning as expected in this world.
[0066] In some embodiments, a user may obtain customer service or support using a device such as a smart phone or tablet computer. In such a situation, the following features or capabilities may be provided:
[0067] ●A user's smartphone may act as a "window" through which to view and interact with a particular virtual reality or augmented reality environment.
[0068] ● The "window" may include an element for requesting support within the virtual environment (such as a kiosk within the virtual environment) that can be used to submit a request for support and initiate the support experience.
[0069] • The support provided may be based on and may include consideration of elements of the requester's real-world context and / or similar elements in the virtual environment.
[0070] o By way of example, by combining the real-world identity of the requestor with their real or virtual location and information about one or more objects in the virtual environment.
[0071] ●Support services may be provided within an augmented reality experience / environment that is capable of connecting and communicating with real-world support tools and / or support agents and capable of transferring information or other forms of assistance between the virtual / augmented environment and the real environment.
[0072] In some embodiments, in addition to providing customer support and other services for objects within a virtual environment, the disclosed systems and methods may provide one or more of the following functions or capabilities:
[0073] ● An identity verification and certification process (for the avatar and / or user) that can perform one or more of the following tasks:
[0074] ○ Identify and determine the rights of the avatar or the person controlling the avatar.
[0075] ○ Linking the identity of an avatar in a virtual environment to a person in the real world.
[0076] Determine whether a real-world person (and even their avatar) is authorized to receive support services from an object in the virtual environment.
[0077] o This may include the ability to generate a user identity that can be used in the virtual environment if the user does not currently have an identity.
[0078] ○ This may include the ability to verify identity and authenticated services that can be provided to avatars and / or real-world persons through the use of data stored on the blockchain, processing NFTs, or using other secure and recognized verification methods (e.g. multi-factor authentication and / or multi-channel authentication).
[0079] • The ability to notify virtual environment and / or real world support services if a user or service requester cannot be verified.
[0080] ○This is to prevent a person / avatar from gaining access to resources or assistance that they are not authorized for.
[0081] ● A set of processes that allow a service or support request to be associated with a user and treated as an object or asset belonging to the user / avatar.
[0082] ○ It allows users (in the form of their own avatar) to forward support requests to other people for advice or assistance.
[0083] ■This functionality enables the development of economies and markets within the virtual environment based on the value of service requests (e.g., by establishing ownership of property and opportunities for bidding, exchange, purchase and sale, appraisal, or other forms of property transfer) and encourages and enables collaboration within the virtual environment to more effectively address service requests.
[0084] In one embodiment, the disclosure is directed to a method of providing customer service and support within a virtual or augmented reality environment. In some embodiments, the disclosure is directed to creating a virtual support "ticket" that is brand independent, allowing for easier routing between brands to resolve customer or user issues. Additionally, because the virtual ticket is brand independent, it is expected that this will encourage third party services to be developed to resolve both common and less common issues encountered by users, involving a single brand or multiple brands.
[0085] In one embodiment, this may be done by treating the request for assistance as an object within the virtual environment. In such an embodiment, the disclosed method may include the following steps, stages, functions, processes, or acts:
[0086] ● Receiving or identifying a request for assistance with the product or service from an avatar in the virtual environment, with the product or service being represented as an object in the virtual environment.
[0087] As non-limiting examples, a request may be generated by an avatar visiting a kiosk, sending a communication, identifying an object and performing a process or action (such as touching an element on the object or picking up the object), or navigating to a particular location in the virtual environment (such as a landmark or building).
[0088] o Real people may also access the virtual environment via a web page, mobile application, or other supporting interface and may not need to have an avatar.
[0089] ● In response to the request, identify the product or service for which assistance is requested and determine whether the avatar (and, by inference, the real-world person / user corresponding to the avatar) is authenticated to obtain the requested assistance. This step or stage of the process may be optional and may be used as a gating step to verify that the avatar (and, by inference, the real-world person) is authenticated to receive the product or service assistance and therefore participate in the transformation and transfer of the support object.
[0090] ○ In the context of avatars, this may include identifying the avatar's identity, location, and / or context within the virtual environment and the services it is authorized to receive (which may be achieved using blockchain data, NFTs or other tokens, or other forms of verification or authentication), and / or identifying the real-world person that is supposed to correspond to the avatar and verifying that the authenticated person is in control of the avatar at the time the request is made.
[0091] ■If it is necessary to verify the identity of the real-world person who is controlling the avatar, in some embodiments this may involve a form of two-factor or two-channel authentication using objects, devices, or processes in both the virtual and real worlds as transmission channels or sources of verification data.
[0092] o In relation to objects representing products or services, this may include verifying that a real-world person is entitled to the requested assistance with the product or service in the virtual environment.
[0093] ■To achieve this, it may be necessary to collect certain information about the object, including but not limited to (and not required to be included in) the following:
[0094] • Identifying an object by one or more of the following, for example: name, brand, serial number, model, version, or type.
[0095] • Identifying the source of the object (if not obvious from the brand), such as a real-world or virtual-world store or other form of provider.
[0096] ● Determining the relationship between the object and the requestor (for example, by way of non-limiting example, whether the requestor is the owner or licensed user, or whether the requestor is associated with an NFT).
[0097] - Transforming the request for assistance into a virtual object (referred to herein as a support request object) within the virtual environment.
[0098] o In one embodiment, the support request object may be created as part of a Decentralized Autonomous Organization (DAO) that references, manages, and secures the support object. This process includes providing links to where the support details are stored within any corresponding integrated support services.
[0099] o In some embodiments, this may enable the development of a "market" and economy for support requests, allowing such requests to be priced, rated, paid for, traded, and transferred as objects.
[0100] o In one embodiment, the object may be created using blockchain technology to ensure there is a secure record of one or more of the ticket creation, associated contextual or other information, and the owner of the support request object (e.g., the person controlling the avatar, or the avatar with no reference to a person).
[0101] o A support request object may be owned and controlled by the avatar and / or the person who owns the avatar and / or the person who originally generated the request.
[0102] ■This gives owners control over what happens to a support request, including who can see the details and where they can go for support, as well as knowing when their support request has been satisfied.
[0103] ● A support request object is recognized as a support related object that is used as part of a support activity. A support request object may be associated with a public schema to allow a process to access the object and efficiently understand the data contained therein. In one embodiment, a support request object may have data associated with it that is stored on a blockchain or in a token or NFT format, where the data may include one or more of data, information, or metadata about the request. In one embodiment, the data, information, or metadata about the request may include, but is not limited to, and is not required to include:
[0104] o Data, information, or metadata about the requesting avatar and / or the person controlling the avatar. This data may be used to verify the requester's identity and establish rights or privileges regarding the product or service for which assistance is requested.
[0105] o Data, information or metadata about the product or service for which assistance is requested.
[0106] ■ This may include, by way of example, identifying the object by one or more of name, brand, serial number, model, version, or type.
[0107] ■ This may include identifying the source of the object (if not obvious from the brand), such as a real-world or virtual store or provider.
[0108] ■The state, status, or location of the object (for example, if an error code was generated, the configuration of the object, the process or function the product was requested to perform or was performing, or other relevant information).
[0109] ■This may include data, information, or metadata about the type of service or assistance requested, such as, for example, a requested document, an answer to a question, a video explaining how to set up a device, or a link to a source.
[0110] In one embodiment, the process may include verifying the identity of the person controlling the avatar.
[0111] o This may include forms of two-factor or two-channel authentication using both virtual and real-world devices or processes.
[0112] ●In one embodiment, the process may include data, information, or metadata about what the avatar (and thus the person controlling the avatar) is willing to pay, what they are willing to do, or what they are willing to assist another avatar / person in doing in exchange for assistance in responding to the support request.
[0113] o This may include a payment of funds to be used within the virtual environment, a payment of funds to be used outside the virtual environment, or another item of value (such as an object (support or otherwise) that is part of the transaction, etc.).
[0114] ● Allow the avatar or person generating the request to transfer the object formed from the support request to a support entity. The support entity may be another avatar or brand and may be located in a virtual or real environment, and the avatar or person generating the request may cause a process to be performed on the product, service, or support request object to obtain support.
[0115] ○ This may be the act of transferring the object to the brand so that the issue can be resolved.
[0116] o In one embodiment, this may change the appearance, location, or another characteristic of the object representing the product or service for which support is desired.
[0117] In one embodiment, the support request object may be identified by a particular characteristic or appearance (e.g., shape, color, or logo, etc.) that depends on the status or state of the request for support (e.g., submitted, under review, approved, completed, etc.).
[0118] In one embodiment, the venue for support requests may be in the form of a marketplace where other avatars may "bid" to respond to the request, offer payment in the form of a trade, service or currency, or offer different objects as incentives for being allowed to respond to the service request.
[0119] ■ In one embodiment, a process performed on a product, service, or support request object may indicate that the support request object is transferable through the marketplace.
[0120] ■ Allowing requests to be answered by more than one avatar, if desired, and for payment to be adjusted for one or more of these responses.
[0121] o An avatar in possession of a product or service requiring support may be able to control what information is seen and shared when the support request object (or ticket) is forwarded or put up for auction for others to bid on to provide the requested support service.
[0122] In some embodiments, the disclosed process may include an automated process that determines the "best" support entity based on collected data and matches it with the quality of the support entities in the virtual or real environment.
[0123] ■These qualities may include, by way of non-limiting example, but are not limited to, the type of services the entity offers, previous experiences when providing assistance, or previous experiences with the product or service for which assistance is requested.
[0124] ■For example, if the issue that has arisen (for which assistance is required) is a payment issue when purchasing a product or service, the automated process may determine that the bank or payment processor is best suited to resolve the issue and enable the purchaser to route a support request to the bank's or payment processor's support team (which may be in a virtual environment and / or in the real world).
[0125] Establish a method of communication between the requesting avatar and the current entity (a brand or other avatar) to which the support request object is forwarded for resolution so that support can be provided via messaging, voice, video or by automated tools (such as chatbots).
[0126] In this case, as non-limiting examples, the requested assistance or support may be provided in the form of a communication, information, instructions, a video to watch, places to visit, or a process to perform (which may be provided in the form of an object).
[0127] o When assistance is provided to the avatar / requester, indicators on the product or associated with the support / service request if displayed as an object may change (e.g., change color, shape, or appearance) to indicate that the support request has been answered and the issue resolved.
[0128] • Allowing the avatar (in one embodiment based on suggestions from the support entity) to transfer the object to a different support entity if the problem cannot be resolved by the entity that first attempts to provide assistance.
[0129] For example, if the store support team is unable to resolve the issue, the store support team (or the requester) can forward the forwarded ticket to the bank support team for resolution of the issue.
[0130] ■ In some embodiments, the forwarding may be performed by either the requestor or the supporting entity to which the requestor originally provided the supporting object.
[0131] - Allow a supporting entity that is able to resolve the problem (i.e. provide the requested assistance) to indicate to the requesting / owning avatar (or person) that assistance has been provided.
[0132] Allow the owning avatar to confirm that the issue has been resolved.
[0133] - After a response to a support request is received by the requesting avatar, the requester may make a payment to the avatar or avatars who provided assistance.
[0134] This may be done through the transfer of a token, currency, or another item of value.
[0135] o This may be initiated by the requesting avatar visiting a bank, office, kiosk, or other object within the virtual environment.
[0136] In one embodiment, the present disclosure is directed to a system for providing customer service and support within a virtual reality environment. The system may include one or more non-transitory computer-readable media that include a set of computer-executable instructions, and an electronic processor or co-processor. When executed by the processor or co-processor, the instructions cause the processor or co-processor (or a device or apparatus of which they are a part) to perform a set of operations that implement a disclosed method or method embodiments.
[0137] In one embodiment, the disclosure is directed to one or more non-transitory computer-readable media that include a set of computer-executable instructions that, when executed by an electronic processor or coprocessor, cause the processor or coprocessor (or a device or apparatus of which it is a part) to perform a set of operations that implement the disclosed method or method embodiments.
[0138] In some embodiments, the systems and methods described herein may provide services through a SaaS or multi-tenant platform. The platform provides access to multiple entities, each with an individual account and associated data store. Each account may correspond to, for example, a user, a set of users, an entity that offers customer service or support to users, or an organization. Each account may have access to one or more services, which are instantiated in that account and perform one or more of the methods or functions described herein.
[0139] Other objects and advantages of the described system and method will be apparent to those skilled in the art upon review of the detailed description and drawings included therein. Throughout the drawings, identical reference symbols and descriptions indicate similar, but not necessarily identical, elements. While the exemplary embodiments disclosed or described herein are susceptible to various modifications and alternative forms, specific embodiments are shown by way of example in the drawings and are described in detail herein. However, it is not intended that the exemplary or specific embodiments be limited to the forms described. Rather, the present disclosure covers all modifications, equivalents, and alternatives falling within the scope of the appended claims. [Brief description of the drawings]
[0140] DETAILED DESCRIPTION OF THE DRAWINGS Embodiments of the present invention according to the present disclosure will now be described with reference to the following drawings. [Figure 1(a)] FIG. 1(a) illustrates a system that includes a set of elements, components, functions, or processes that may be implemented as part of some embodiments. [Figure 1(b)] FIG. 1(b) is a flowchart or flow diagram illustrating a method, process, set of operations, or set of functions that allows a person to obtain customer service or assistance for objects in a virtual environment without leaving the virtual environment, according to some embodiments. [Diagram 2] FIG. 2 is a diagram illustrating elements or components that may be present in a computing device, server, or system configured to implement a method, process, function, or operation according to some embodiments. [Diagram 3] FIG. 3 illustrates a multi-tenant or SaaS platform architecture that may be used in implementing embodiments of the systems and methods disclosed herein. [Figure 4] FIG. 4 illustrates a multi-tenant or SaaS platform architecture that may be used in implementing embodiments of the systems and methods disclosed herein. [Diagram 5]FIG. 5 illustrates a multi-tenant or SaaS platform architecture that may be used in implementing embodiments of the systems and methods disclosed herein.
[0141] It is noted that the same numbers are used throughout this disclosure and the drawings to reference like components and features. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0142] [Detailed Description] The subject matter of each embodiment of the present disclosure is described herein with particularity to meet statutory requirements, but this description is not intended to limit the scope of the claims. The claimed subject matter may be embodied in other manners, may include different elements or steps, and may be used in combination with other existing or later developed technologies. This description should not be construed as implying a required order or arrangement among the various steps or elements, unless the particular order of steps or arrangement of elements is expressly stated to be required.
[0143] Embodiments of the present disclosure are described more fully herein with reference to the accompanying drawings, which form a part hereof, and which show, by way of illustration, exemplary embodiments in which the present disclosure may be practiced. The present disclosure may, however, be embodied in other forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will satisfy statutory requirements, and will convey the scope of the disclosure to those skilled in the art.
[0144] In particular, the present disclosure may be embodied, in whole or in part, as a system, as one or more methods, or as one or more devices. Each embodiment of the present disclosure may take the form of a hardware-implemented embodiment, a software-implemented embodiment, or an embodiment combining software and hardware aspects. For example, in some embodiments, one or more of the operations, functions, processes, or methods described herein may be performed by one or more suitable processing elements (such as, by way of non-limiting example, a processor, microprocessor, CPU, GPU, TPU, or controller) that are part of a client device, a server, a network element, a remote platform (such as a SaaS platform), an "in the cloud" service, or other form of computing or data processing system, device, or platform.
[0145] The one or more processing elements may be programmed with a set of executable instructions (e.g., software instructions), where the instructions may be stored on (or within) one or more suitable non-transitory computer-readable data storage elements. In some embodiments, the set of instructions may be communicated to a user (e.g., over a network such as the Internet) through transfer of the instructions or transfer of an application that executes the set of instructions. In some embodiments, the set of instructions or application may be utilized by an end user through access to a SaaS platform or a service offered through such a platform.
[0146] In some embodiments, one or more of the operations, functions, processes, or methods described herein may be implemented by a specialized form of hardware, such as a programmable gate array, an application specific integrated circuit (ASIC), or the like. However, certain embodiments of the present disclosure may also be implemented as an application, a subroutine that is part of a larger application, a "plug-in," an extension to the functionality of a data processing system or platform, or any other suitable form. Accordingly, the following detailed description is not to be construed in a limiting sense.
[0147] As mentioned above, in some embodiments, the systems and methods described herein may provide services through a SaaS or multi-tenant platform. The platform provides access to multiple entities, each with an individual account and associated data store. Each account may correspond to, for example, a user, a set of users, an entity that provides customer service or support to users, or an organization. Each account may have access to one or more services, which are instantiated in the account and perform one or more of the methods or functions described herein.
[0148] As used herein, the terms "metaverse," "virtual environment," "virtual reality," or "virtual world" refer to a computer-simulated environment in which multiple users may exist, in which each user may create and be represented by a personal avatar, and may simultaneously and independently explore the virtual world, participate in its activities, interact with objects, and communicate with others. (See Wikipedia. Avatars may be textual, graphical, or live video avatars with hearing and touch. Users access computer-simulated worlds that provide sensory cues to the user, and may experience a degree of presence by manipulating elements of the modeled world. Such modeled worlds and their rules may be based on real or fantasy worlds. Examples of rules include gravity, terrain, movement, real-time action, and communication. Communication between users may take many forms, including text, graphic icons, visual gestures, sound, and, rarely, touch, voice commands, and balance.) The virtual world or environment may include aspects of the physical or real world, in which case the experience may be referred to as "augmented reality."
[0149] By way of non-limiting example, a user may experience one or more of the following when interacting within and with the metaverse:
[0150] ●Persistent virtual interactive three-dimensional worlds and immersive experiences (e.g. accessed via one or more of VR, AR, and mobile devices).
[0151] • A blended brand experience that includes products and services offered by several different sources.
[0152] ● Decentralized self-sovereign identity, with each identity / avatar owned and controlled by the individual in the real world.
[0153] ●A decentralized metaverse asset / object that can be owned by one or more individuals / avatars.
[0154] ● Virtual objects, which may include, by way of non-limiting examples, land, structures, locations, artwork, tokens, rewards, facilities, services, devices, specific functions, or executable processes.
[0155] o In some embodiments, virtual objects may correspond to actual objects in the real world, such as, by way of non-limiting examples, places, buildings, businesses, devices, or animals.
[0156] ●A decentralized economy where objects can be associated with non-fungible tokens (NFTs) and the availability of direct transactions between people (i.e. avatars)
[0157] In some embodiments, providing “context” based customer support in a virtual world for a virtual product or service may include implementation of one or more of the following functions or capabilities:
[0158] The presence of virtual objects (such as, but not limited to, a ball, a service emblem, a designated location, or a kiosk) or event triggers (such as, but not limited to, the avatar pressing a button, standing on a square, or moving to a designated location) that can be used by the avatar to generate a request for support and / or initiate a support experience.
[0159] Awareness of the user / avatar's context in the virtual environment, including, by way of non-limiting example, virtual locations, nearby objects, the avatar's recent / current experiences or actions, the avatar's virtual or corresponding real-world identity, or brand affiliation or association of objects (if applicable).
[0160] For example, the perception that a person's avatar is in a virtual Starbucks lounge, seated at a table and playing a game of chess.
[0161] ●A virtual identity (usually in the form of an avatar) that is managed by a real-world person / user and is associated with certain data that the user controlling the avatar can share with the support service provider in order to authenticate the user and ensure that they (the user) have the right to the desired support services (such as, but not limited to, verifying that they are 18 years of age or that they have paid for the product or service).
[0162] Data or information used to establish rights in an avatar and / or person, or to verify the identity of the person controlling the avatar, may be stored or encoded in the blockchain, associated with an NFT, or stored in other suitable data storage elements.
[0163] A virtual environment experience where a user's avatar can interact with to obtain support, including (by way of example and not limitation) one or more of the following: self-help sources, artificial intelligence driven menus, voice chat, text chat with voice-to-text conversion capabilities, a device presenting video, a display presenting documents, or an interactive workflow.
[0164] In some embodiments, the service agent chat transcript (in text format) or voice chat may be displayed as a hologram or as an avatar with which another avatar can interact.
[0165] ● Support platform and routing services or functionality to execute or provide the avatar and / or the specific context-based experience of the product or service for which support is requested.
[0166] For example, if the user is in a virtual Starbucks, Starbucks help will be displayed.
[0167] The experience provided may include (but is not limited to, and is not required to include) the use of bots, automated events or event sequences, connection / routing to real-world agents, help or customer support ticketing processes, or support agent communication tools, as non-limiting examples.
[0168] Traditionally, support is provided by the brand, who owns and controls how that support is delivered. As an example, when a user or customer needs customer assistance or support for a product or service, they typically go through the following process:
[0169] 1. A user / person contacts the support center; 2. A support center (staffed by the brand) creates support tickets that are owned and managed by the brand.
[0170] 3. The Support Center provides users with customer service.
[0171] 4. If the brand cannot resolve the issue (for example, the issue is not with their brand but with another brand), they will either contact the second brand or, in most cases, tell the user to contact the other brand and create a new support ticket with them.
[0172] 5. In this case, the user will need to initiate a second interaction with the second brand to resolve the first issue.
[0173] However, technologies and services are often interwoven (meaning they are offered by multiple brands) and in the future, as users become more involved in decentralized models (e.g. the metaverse), it is expected that brands and services will often be interwoven and integrated into a single experience.
[0174] Unfortunately, this trend is not effectively addressed by traditional approaches to providing customer support services: the traditional model, where support request tickets are owned by the brand, limits users' ability to seek solutions to their problems across multiple brands. Instead, users must interact with each brand separately, with each brand unaware of previous interactions.
[0175] As discussed above, one aspect that makes providing customer service and support in a virtual environment more difficult than in the real world is that in a virtual world, there may be many different objects, object types, products, services, and locations, each associated with a different source or brand. For example, a person's avatar may be in a virtual living room with several different objects (including, but not limited to, a virtual book, a virtual board game, a virtual device, a radio, and a portal to a virtual experience) on the counter that have been purchased from different brands. Each object is expected to require different support and have different contextual information, and the support platform needs to be able to distinguish between each object and enable the user to receive support services applicable to that object from the associated source or brand.
[0176] On the other hand, in traditional real-world environments, each brand and its support is self-contained and the support is presented inside a desktop application, a dedicated chat, a web page, a mobile application, to name a few. However, in virtual environments, brands are scattered and offer different products, services, or experiences simultaneously and often in the same place in the virtual environment. For this situation, it is important to have enough contextual information available about the virtual world and the virtual object of interest to determine what support services should be presented. This contextual information may be related to a particular object, location, device state, event, or trigger specific to the brand or source of the object.
[0177] FIG. 1(a) illustrates a system including a set of elements, components, functions, or processes that may be implemented as part of some embodiments. As illustrated, a person in the real world uses a suitable device 101 to experience and interact with a virtual experience or environment 102. The device may be, by way of non-limiting examples, a computing device, a tablet, a mobile phone, or a dedicated virtual reality headset. The virtual experience or environment 102 may be one of virtual (artificial) reality, augmented reality, or a similar experience, and may be provided by a game or interactive application.
[0178] Within the virtual experience or environment 102, the real-world person using the device 101 may be represented by an avatar 103. The virtual experience or environment 102 may be generated and managed by a remote server 104 (as suggested by the element in the figure labeled "3D Virtual Interface Server or Service"). The server 104 may be operated by a provider of the game or interactive application being used by the real-world person. The server 104 is typically connected to and may exchange data and information using the Internet 105 and / or one or more intermediate networks.
[0179] The SaaS-based customer service platform 106 may also be connected to the Internet 105 and thus may be able to exchange data and information to interact with the virtual experience or environment 102, typically via a server 104. The SaaS-based customer service platform 106 may be connected to and provide customer assistance by routing service or assistance requests to a set of self-help or automated help resources 107 (such as, by way of non-limiting example, a set of documents, links, or chatbots) and / or to a service agent 108, who may be a real-world person using an appropriate computing device.
[0180] In one embodiment, an operator of the SaaS-based customer service platform 106 may provide one or more of the following elements, components, or processes to a source of a game, application, interactive experience, or other virtual or augmented reality environment or experience (as an example, the operator of the server 104):
[0181] A module, plug-in, or application that may be used to determine if support is required for an object within a virtual experience or environment and to collect or identify the contextual data and information necessary to provide an effective support service.
[0182] ● Virtual reality, augmented reality, or mobile device customer support modules (i.e., by way of non-limiting example, applications, routines, or executable sets of instructions for achieving functionality) that provide customer service and other forms of assistance, which may be virtual reality or augmented reality experiences or environments that the Brand integrates with and creates and / or manages.
[0183] In some embodiments, a user of a mobile application on a mobile device may be able to ask (or request) for support and then go through a process whereby an independent ticket is created that is owned by the user and has the same aspects / characteristics as disclosed herein for a service request object.
[0184] • A digital customer service and support platform (such as platform 106, or an account on a multi-tenant platform) that is connected to a virtual reality, augmented reality, or mobile device customer support module and is capable of exchanging data and information with that module.
[0185] - Ability to connect to and access self-help and agent tools and resources such that the customer support module can utilize self-help and / or access to real-world human agents.
[0186] In some embodiments, one or more of the modules used to determine whether support is needed (or customer support modules) may generate a user interface 109 within a virtual or augmented reality environment to enable the avatar 103 to interact with a customer support service. The interface 109 may include selectable or activatable elements that the avatar 103 may use to indicate the product for which assistance is desired (e.g., by model or by general category), or the type of service, the type of assistance desired, or another aspect of the service request.
[0187] As indicated by the "Trigger" element in the diagram, in some embodiments, a service request may be automatically generated in response to a situation or event. For example, an error message, an avatar performing a particular action or going to a particular location, or an object representing a product or service changing its appearance may be a type of trigger and may indicate a need for assistance. In some embodiments, such a trigger may automatically generate a service request or ticket.
[0188] 1(b) is a flow chart or diagram illustrating a method, process, sequence of acts, or sequence of functions in some embodiments that allows a person to obtain customer service or assistance for objects in a virtual environment without leaving the virtual environment. In some embodiments, the illustrated method, process, sequence of acts, or sequence of functions may be performed by executing a set of computer-executable instructions, some of which may be executed within a client device and some of which may be executed on a remote server platform.
[0189] As disclosed, in some embodiments, a person may obtain customer service or assistance for an object within a virtual environment without leaving the virtual environment by performing the following steps or stages:
[0190] ● A customer support or assistance platform (e.g., SaaS-based platform 106 in FIG. 1(a)) receives or identifies a request for assistance regarding a product or service from an avatar in the virtual environment (e.g., avatar 103 in FIG. 1(a)) (as shown in step or stage 110).
[0191] As non-limiting examples, a request may be generated by the avatar visiting a kiosk, sending a communication, identifying an object and performing a process or action (such as touching an element on the object or picking up the object), or navigating to a particular location in the virtual environment (such as a landmark or building).
[0192] o Real-world people may also access the virtual environment via a web page, mobile application, or other supporting interface and may not need to have an avatar.
[0193] ● Transforming the request into an object (referred to as a support request object) in the virtual environment (or, in some embodiments, into a real-world service request) (step or stage 120).
[0194] o In some embodiments, this may enable the development of a "market" and economy related to support requests, allowing such requests to be priced, rated, paid for, traded, and transferred as objects.
[0195] In one embodiment, the support request object may be generated using blockchain technology to ensure there is a secure record of the ticket creation, any relevant contextual or other information, and the owner of the support request object.
[0196] ○ Support Request objects are owned and controlled by the avatar and / or the person controlling the avatar or who originally generated the request for assistance.
[0197] o Support Request objects are used as part of support activities and have a published schema (so that processes can access the object and interpret the data contained within).
[0198] ●In one embodiment, the support request object may have data associated with it, which may be stored on the blockchain or in NFT format, and the data may include one or more of data, information, or metadata about the support request, data, information, or metadata related to the requester and / or the product or service for which assistance is requested (as shown in step or stage 130).
[0199] o In one embodiment, data, information, or metadata about the request, the requester, and / or the product or service may include (but is not limited to, and is not required to include):
[0200] ■Data, information or metadata about the requesting avatar and / or the person controlling the avatar.
[0201] ■ Data, information or metadata about the product or service for which assistance is requested.
[0202] 1. This may include, by way of example, identifying the object by name, brand, serial number, model, version, category, or type.
[0203] 2. This may involve identifying the source of the object (if not obvious from the brand), such as a real-world or virtual store or provider.
[0204] 3. The state, status, or location of the object (such as the configuration of the object, the process or function the product was requested to perform or was performing, or other relevant information, in case an error code was generated).
[0205] 4. This may include, by way of non-limiting example, data, information, or metadata about the type of service or assistance requested, such as a requested document, an answer to a question, a video explaining how to set up a device, or a link to a source.
[0206] • In one embodiment, the process may include verifying the identity of the person controlling the avatar (step or stage 140).
[0207] o This may include forms of two-factor or two-channel authentication using both virtual and real-world devices or processes.
[0208] o This may be done to verify that the person controlling the avatar (and thus the avatar) is entitled to the requested support or assistance.
[0209] ●In one embodiment, the process may include data, information or metadata about what the avatar (and thus the person controlling the avatar) is willing to pay, what they are willing to do, or what they are willing to assist another avatar / person in doing in exchange for assistance in fulfilling the request for assistance (step or stage 150).
[0210] o This may include the payment of funds for use within the virtual environment, the payment of funds for use outside the virtual environment, or the provision of an item or service of value.
[0211] ● Allow the avatar, or a person controlling the avatar, to transfer an object formed from the support request to a support entity, which may be another avatar or a brand and may be located in the virtual or real environment (step or stage 160).
[0212] In some embodiments, the avatar, or a person controlling the avatar, may cause a process to be performed on the object for which assistance is requested so that assistance can be obtained.
[0213] ■ In one embodiment, this may involve changing the appearance, location, or another characteristic of an object representing the product or service for which support is desired.
[0214] o In some embodiments, this may be the act of forwarding the support request object to the brand or a representation of the brand so that the brand can resolve the issue.
[0215] In one embodiment, a support request object may be identified by certain characteristics or appearances that depend on the status or state of the request for support.
[0216] In one embodiment, the location to which the support request object is forwarded and the process involving the support request object may be in the form of a marketplace where other avatars may "bid" to respond to the request, offer payment in the form of a service or currency, or offer different objects as incentives to be allowed to respond to the request.
[0217] ■ If desired, the marketplace may allow requests to be answered by more than one avatar, and the payment(s) for one or more of these responses may be adjusted.
[0218] ○ The avatar or person generating the request may be able to control what information is accessible and what information is shared when forwarding the support request object or putting it up for auction for bids by others to provide the requested support services.
[0219] In some embodiments, the disclosed systems and processes may include an automated process that determines the "best" support entity based on collected data and matches it with the quality of the support entities in the virtual or real environment.
[0220] ■For example, if the issue that has arisen (for which assistance is required) is a payment issue when purchasing a product or service, the automated process may determine that the bank or payment processor is best suited to resolve the issue and enable the purchaser to route a support request to the bank's or payment processor's support team (which may be in a virtual environment and / or in the real world).
[0221] ● Establish a method of communication between the requesting avatar and the entity (brand or other avatar) to which the support object is forwarded for resolution, allowing support to be provided through messaging, voice, video, or by automated tools (such as chatbots) (as shown in step or stage 170).
[0222] In this case, as non-limiting examples, the requested assistance or support may be provided in the form of a communication, information, instructions, a video to watch, places to visit, or a process to be performed (which may be provided in the form of an object).
[0223] When assistance is provided to the avatar / requester, indicators on the product or associated with the support / service request (if displayed as an object) may change (such as by changing color, shape, or appearance) to indicate that the support request has been answered and the issue resolved.
[0224] • If the problem cannot be resolved by the entity that initially attempts to provide assistance, then allowing the avatar (in one embodiment based on a suggestion from the support entity) to transfer the object to a different support entity (step or stage 180).
[0225] For example, if the store support team is unable to resolve the issue, the store support team (or the requester) can forward the forwarded ticket to the bank support team for resolution of the issue.
[0226] ■ In some embodiments, the forwarding may be performed by either the requestor or the supporting entity to which the requestor originally provided the supporting object.
[0227] ● A supporting entity that is able to resolve the problem is enabled to indicate to the owning avatar (or person) that the problem has been resolved (step or stage 190).
[0228] Allow the owning avatar to confirm that the issue has been resolved.
[0229] • After the response to the assistance request has been received by the requesting avatar, the requester may make a payment to the avatar or avatars who provided assistance (step or stage 195).
[0230] This may be done through the transfer of a token, currency, or another item of value.
[0231] o This may be initiated by the requesting avatar visiting a bank, office, kiosk, or other object within the virtual environment.
[0232] 2 is a diagram illustrating elements, components, or processes that may be present in or executed by one or more of a computing device, server, platform, or system 200 configured to perform a method, process, function, or operation according to some embodiments. In some embodiments, the disclosed systems and methods may be implemented in the form of a device or devices (such as, as non-limiting examples, a server or client device that is part of a system or platform) that includes a processing element and a set of executable instructions. The executable instructions may be part of a software application (or applications) and located within a software architecture.
[0233] In general, certain embodiments of the present disclosure may be implemented using a set of software instructions designed to be executed by an appropriately programmed processing element (such as, by way of non-limiting example, a GPU, TPU, CPU, microprocessor, processor, controller, state machine, or computing device). In a complex application or system, such instructions are typically arranged into "modules," each of which typically performs a particular task, process, function, or operation. The entire set of modules may have its operations controlled or coordinated by an operating system (OS) or other form of organizational platform.
[0234] The modules and / or sub-modules may include any suitable computer-executable code or set of instructions, such as computer-executable code corresponding to a programming language. For example, source code in a programming language may be compiled into the computer-executable code. Alternatively, or in addition, the programming language may be an interpreted programming language, such as a scripting language.
[0235] 2, system 200 may represent one or more of a server, a client device, a platform, or other form of computing or data processing device. Modules 202 each include a set of executable instructions that, when executed by a suitable electronic processor (such as that represented in the figure by "physical processor(s) 230"), cause system (or server or device) 200 to operate to perform a particular process, operation, function, or method.
[0236] The modules 202 may include one or more sets of instructions for performing the methods or functions described with reference to the figures and the functional and operational descriptions and disclosures provided herein. These modules may include those shown, or may include more or fewer modules than shown. Furthermore, the modules and the sets of computer-executable instructions included therein may be executed (in whole or in part) by the same processor or by multiple processors. When executed by multiple processors, coprocessors may be included in separate devices, e.g., in a processor in a client device and in a processor in a server.
[0237] The modules 202 are stored in a memory 220, which typically includes an operating system module 204 that contains instructions used to access and control the execution of instructions contained in other modules (among other functions). The modules 202 in the memory 220 are accessed using a "bus" or communication lines 216, which also function to allow a processor(s) 230 to communicate with the modules for data transfer and instruction execution purposes. The bus or communication lines 216 also allow the processor(s) 230 to interact with other elements of the system 200, such as input or output devices 222, a communication element 224 for communicating data or information with devices external to the system 200, and additional memory devices 226.
[0238] Each module or sub-module may correspond to a particular function, method, process, or operation performed by execution of the instructions (in whole or in part) in the module or sub-module. Each module or sub-module may include a set of computer-executable instructions that, when executed by a programmed processor or co-processor, causes the processor or co-processor (or the device, devices, server, or servers in which they are included) to perform a particular function, method, process, or operation. As noted above, the device in which the processor or co-processor is included may be one or both of a client device, or a remote server, or a platform. Thus, a module may include instructions that are executed (in whole or in part) by a client device, a server, or a platform, or any of them. Such functions, methods, processes, or operations may include those used to implement one or more aspects of the disclosed systems and methods, for example, to do the following:
[0239] ● Receiving (or identifying) a request for assistance with a product or service from an avatar in the virtual environment (as suggested by module 206), with the product or service being represented as an object in the virtual environment.
[0240] • Transforming the request into a virtual object (called a supporting request object) in the virtual environment (module 207).
[0241] ● Adding or associating data and information (e.g., which may be stored on the blockchain or in NFT or token form) to the support request object, where the data and information may include one or more of data, information, or metadata related to the request and related to the requester and / or the product or service for which assistance is requested (as suggested by module 208).
[0242] • Verifying the identity of the person controlling the avatar (if necessary and as represented by module 209).
[0243] • Providing data, information or metadata about what the avatar (and thus the person controlling the avatar) is willing to pay, what they are willing to do, and what they are willing to assist another avatar / person in exchange for assistance in fulfilling the support request (module 210).
[0244] ● Allowing an avatar or person generating a support request to transfer the support request object to a support provider entity, where the support entity may be an avatar or a brand and may be located in a virtual or real environment (module 211).
[0245] In some embodiments, the avatar or person generating the support request may cause a process to be performed on the support request object (e.g., changing appearance, generating a signal, transferring to another entity, etc.) so that support can be obtained.
[0246] ● Establish a method of communication between the avatar requesting support and the current entity (e.g., a brand or another avatar) to which the support request object is forwarded for resolution, so that support can be provided via messaging, voice, video, or by an automated tool (e.g., a chatbot) (module 212).
[0247] • Allowing the avatar or person requesting support to transfer the support request object to a different support entity if the issue cannot be resolved by the entity that first attempts to provide assistance (module 213).
[0248] o In one embodiment, the forwarding may be based on a suggestion from a supporting entity.
[0249] o In one embodiment, the current entity (to which the support request object was originally provided) may be able to forward the support request object to another entity.
[0250] • Allowing a support entity that is able to resolve the problem (i.e., provide the requested support assistance) to indicate to the avatar (or person) that originally generated the request for support that the problem has been resolved (module 214).
[0251] • After a response to a request for support or assistance is received by the requesting avatar, enabling the requester to make a payment to the support entity (eg, the avatar or avatars) that provided the assistance (module 215).
[0252] In one embodiment, a method may be implemented to establish or verify the identity of a person controlling an avatar in a virtual or augmented reality environment. This may be done to provide a verified association between an avatar and a real-world person for purposes of, by way of non-limiting example, executing a transaction, determining the attribution of a product or service within the virtual environment, or enabling the avatar to seek assistance with a virtual product or service. In one embodiment, the disclosed method may include the following verification / authentication steps, stages, functions, processes, or operations:
[0253] ● Determining that a request has been received from an object or event within the virtual environment seeking verification of the real-world identity of the person corresponding to the avatar.
[0254] In one embodiment, this may be the result of the avatar interacting with an object in the virtual environment, the avatar expressing an interest in purchasing, renting or using an object in the virtual environment, or an event occurring in the virtual environment.
[0255] o In one embodiment, this may be the result of a real-world person expressing an interest in purchasing, renting, or using an object in the virtual environment.
[0256] In response to a request or event, access a blockchain, token, or database having data that comprises:
[0257] o An identifier for a set of avatars in the virtual environment, where each avatar may be associated with a unique name, number, or alphanumeric string, as non-limiting examples.
[0258] o For each avatar identifier, a set of associated data or files, some or all of which may be encrypted, which may include one or more of the following:
[0259] ■ The real-world person's name or unique identifier associated with the avatar identifier.
[0260] ■Information about a real-world person that may be used as part of the authentication process, such as, but not limited to, date of birth, the last few digits of a social security number, mother's maiden name, and favorite color.
[0261] ■ Your password or answer to your security question.
[0262] ■ A unique identifier associated with an object that an avatar / person owns within the virtual environment or a service that the avatar is entitled to.
[0263] • Executing a logical process to determine the real-world person associated with the avatar responsible for generating (directly or indirectly) a request for verification, or the avatar associated with a real-world person who has expressed an interest in purchasing, renting, or using an object in the virtual environment.
[0264] Additionally, it determines whether the real-world person associated with the avatar is the person currently controlling the avatar.
[0265] ■This may include forms of authentication such as:
[0266] - Sending messages to a real-world person commanding them to control their avatar in a particular way to do something in the virtual environment.
[0267] ● Requiring a real-world person or avatar to provide a previously specified and stored password.
[0268] ● In some embodiments, this may involve a form of two-factor or two-channel authentication using both virtual and real-world devices or processes.
[0269] ● Determine that the real-world person associated with the avatar is the person controlling the avatar, and if the real-world person (and thus the avatar) is authorized to perform the desired action, allow the avatar or real-world person to take the action or execute the transaction.
[0270] In some embodiments, the functionality and services provided by the systems and methods described herein may be made available to multiple users by accessing accounts maintained by a server or service platform. Such a server or service platform may be referred to as a Software-as-a-Service (SaaS) format. FIG. 3 illustrates a SaaS system in which some embodiments may be implemented. FIG. 4 illustrates elements or components of an example operating environment in which some embodiments may be implemented. FIG. 5 illustrates further details of elements or components of the multi-tenant distributed computing services platform of FIG. 4 in which some embodiments may be implemented.
[0271] In some embodiments, the systems or methods disclosed herein may be implemented as microservices, processes, workflows, or functions that are executed in response to the submission of a service request. The microservices, processes, workflows, or functions may be executed by a server, data processing element, platform, or system. In some embodiments, data analytics and other services may be provided by a service platform located "in the cloud." In such embodiments, the platform may be accessible through APIs and SDKs. The functions, processes, and capabilities described herein may be provided as microservices within the platform. Interfaces with the microservices may be defined by REST and / or GraphQL endpoints. An administration console may enable users or administrators to securely access basic request and response data, manage accounts and access, and in some cases modify processing workflows or configurations.
[0272] It should be noted that while FIGS. 3-5 depict a multi-tenant or SaaS architecture that may be used to provide business-related or other applications and services to multiple accounts / users, such architectures may also be used to provide other types of data processing services and provide access to other applications. For example, such architectures may be used to provide aspects of the customer assistance and support services in a virtual environment as disclosed and / or described herein. In some embodiments, a platform or system of the type illustrated in FIGS. 3-5 may be operated by a third-party provider for providing a particular set of business-related applications, while in other embodiments, the platform may be operated by a provider and different businesses may provide applications or services to users through the platform.
[0273] FIG. 3 illustrates a system 300 in which an embodiment may be implemented or in which an embodiment of the service disclosed and / or described herein may be accessed. In accordance with the advantages of an application service provider (ASP) hosted business service system (such as a multi-tenant data processing platform), users of the disclosed and / or described services may include, as non-limiting examples, individuals, businesses, brands, stores, or organizations. Users may access the services using any suitable client, including, for example, but not limited to, a desktop computer, a laptop computer, a tablet computer, a scanner, a smartphone, or a dedicated VR headset. In general, any client device that has access to the Internet may be used. Users interact with the service platform across the Internet 308, or another suitable communications network or combination of networks. Examples of suitable client devices include a desktop computer 303, a smartphone 304, a tablet computer 305, or a laptop computer 306.
[0274] The system 310, which may be hosted by a third party, may include a set of services that assist a user (in the form of an avatar) to receive customer support within the virtual environment 312, and a web interface server 314 coupled as shown in Figure 3. It should be understood that either or both of the services 312 and the web interface server 314, although depicted as a single unit in Figure 3, may be implemented on one or more different hardware systems and components. The services 312 may include one or more functions or operations that provide support or assistance to a user / avatar in the virtual environment.
[0275] By way of example, in some embodiments, the set of functions, operations or services made available via the platform or system 310 may include the following:
[0276] ● Account management services 316. For example, The process or service that authenticates a user (in conjunction with the submission of user credentials with a client device).
[0277] A process or service that creates containers or instances of services or applications that are made available to users.
[0278] ● Service 318. For example, A process or service that receives a request for assistance with a product or service from an avatar in a virtual environment, where the product or service is represented as an object in the virtual environment.
[0279] o The process or service that transforms requests into virtual objects (called support request objects) in a virtual environment (or, in some cases, into service request tickets in the real world).
[0280] A process or service that adds or associates data and information (e.g., stored on the blockchain or in NFT or token form) to a support request object, where the data and information may include one or more of data, information, or metadata related to the request and relating to the requester and / or the product or service for which assistance is requested.
[0281] ○ A process or service that verifies the identity of the person controlling the avatar (if necessary).
[0282] The process or service whereby an avatar (and thus the person controlling the avatar) provides data, information or metadata about what they are willing to pay, what they are willing to do, or what they are willing to assist another avatar / person in exchange for assistance in fulfilling a request.
[0283] A process or service that enables an avatar or person generating a request for support to transfer an object formed from the support request to a support entity, which may be another avatar or brand and may be located in a virtual or real environment (in some embodiments, the avatar or person generating the request for support may cause a process to be performed on the support request object to obtain support).
[0284] A process or service that allows support to be provided through messaging, voice, video or via automated tools (such as chatbots) by establishing a method of communication between a requesting avatar and an entity (e.g. a brand or other avatar) to which the support request object is forwarded for resolution.
[0285] A process or service that allows a support request object to be transferred to a different support entity if the issue cannot be resolved by the entity that first attempts to provide assistance.
[0286] ■ As mentioned above, this may be initiated either by the avatar / person who originally generated the request for support, or by a support entity to which the support request object has been forwarded.
[0287] A process or service that enables a support entity that has been able to resolve a problem (i.e. provide the requested assistance) to indicate to the avatar (or person) that generated the request for support that the problem has been resolved.
[0288] A process or service that enables a requester to make a payment to a support entity (eg, an avatar or avatars) that has provided assistance.
[0289] ● Management services 320, e.g. Processes or services that allow service providers and / or platforms to manage and configure the processes and services offered to users, including, but not limited to, changing process flows and available options.
[0290] The platform or system shown in FIG. 3 may be hosted on a distributed computing system consisting of at least one, but possibly multiple, "servers." A server is a physical computer dedicated to providing data storage and execution of one or more software applications and services intended to serve the needs of users of other computers in data communication with the server over a public network, such as the Internet. The server and the services it provides may be referred to as "hosts," and the remote computers and the software applications running on them may be referred to as "clients." Depending on the computing service(s) it provides, it may also be referred to as a database server, data storage server, file server, mail server, print server, web server, etc. A web server is most often a combination of hardware and software that helps deliver content, usually by hosting websites, to web browsers of clients that access the web server over the Internet.
[0291] FIG. 4 illustrates elements and components of an example operating environment 400 in which an embodiment may be implemented. As illustrated, various clients 402 incorporating and / or embedded within various computing devices may communicate with a multi-tenant service platform 408 over one or more networks 414. For example, a client may incorporate and / or embedded within a client application (i.e., software) that is at least partially executed by one or more of the computing devices. Examples of suitable computing devices include personal computers, server computers 404, desktop computers 406, laptop computers 407, notebook computers, tablet computers or personal digital assistants (PDAs) 410, smartphones 412, mobile phones, and consumer electronic devices incorporating one or more computing device components, such as one or more electronic processors, microprocessors, central processing units (CPUs), or controllers. Examples of suitable networks 414 include networks that utilize wired and / or wireless communication technologies and networks (e.g., the Internet) that operate according to any suitable networking and / or communication protocol.
[0292] The distributed computing service / platform (sometimes referred to as a multi-tenant data processing platform) 408 may include multiple processing tiers, including a user interface tier 416, an application server tier 420, and a data storage tier 424. The user interface tier 416 may hold multiple user interfaces 417, including graphical user interfaces and / or web-based interfaces. The user interfaces may include a service's default user interface (depicted in the figure as a "Service UI") that provides access to applications and data for a user or "tenant" of the service, as well as one or more user interfaces (e.g., represented in the figure by "Tenant A UI", ..., "Tenant Z UI" and may be accessed via one or more APIs) that are specialized / customized according to user-specific requirements.
[0293] The default user interface may include user interface components that allow a tenant to manage their access to and use of the features and capabilities provided by the service platform. This may include accessing tenant data, initiating the instantiation of a particular application, initiating the execution of a particular data processing operation, etc. Each illustrated application server or processing tier 422 may be implemented with a set of computers and / or components, including computer servers and processors, and may perform various functions, methods, processes, or operations as determined by the execution of a software application or set of instructions. The data storage tier 424 may include one or more data stores, which may include a service data store 425 and one or more tenant data stores 426. The data stores may be implemented with any suitable data storage technology, including a structured query language (SQL)-based relational database management system (RDBMS).
[0294] The service platform 408 may be multi-tenant and operated by an entity that provides a set of business-related or other data processing applications, data storage, and functionality to multiple tenants. For example, the applications and functionality may include providing web-based access to functionality used by the business to provide services to end users, thereby allowing a user with a browser and an Internet or intranet connection to view, input, process, or modify certain information. Such functionality or applications are typically implemented by one or more modules of software code / instructions that are maintained on and executed by one or more servers 422 that are part of the platform's application server tier 420. As discussed in connection with FIG. 3, the platform system shown in FIG. 4 may be hosted on a distributed computing system that is comprised of at least one, but typically multiple, "servers."
[0295] As mentioned above, a business may utilize a system provided by a third party rather than building and maintaining such a platform or system itself. A third party may implement a business system / platform as described above in the context of a multi-tenant platform, where individual instantiations of the business's data processing workflows (such as data analysis and processing as described herein) are provided to users, with each business representing a tenant of the platform. One advantage of such a multi-tenant platform is that each tenant can customize its instantiation of the data processing workflows to its unique business needs or operational methods. Each tenant may be a business or entity that uses the multi-tenant platform to provide business services and functionality to multiple users.
[0296] FIG. 5 is a diagram showing further details of elements or components of the multi-tenant distributed computing services platform of FIG. 4 in which an embodiment can be implemented. The software architecture shown in FIG. 5 represents an example of an architecture that may be used to implement an embodiment of the present disclosure. In general, an embodiment of the present disclosure may be implemented using a set of software instructions designed to be executed by appropriately programmed processing elements (such as, by way of non-limiting example, a CPU, GPU, microprocessor, processor, controller, state machine, or computing device). In complex systems, such instructions are typically arranged as "modules," each of which performs a particular task, process, function, or operation. The entire set of modules may have their operations controlled or coordinated by an operating system (OS) or other form of organizational platform.
[0297] As mentioned above, FIG. 5 is a diagram showing further details of elements or components 500 of a multi-tenant distributed computing services platform in which an embodiment may be implemented. The example architecture includes a user interface layer or tier 502 having one or more user interfaces 503. Examples of such user interfaces include graphical user interfaces and application programming interfaces (APIs). Each user interface may include one or more interface elements 504. For example, a user may interact with the interface elements to access functionality and / or data provided by the application and / or data storage layers of the example architecture. Examples of graphical user interface elements include buttons, menus, checkboxes, drop-down lists, scroll bars, sliders, spinners, text boxes, icons, labels, progress bars, status bars, toolbars, windows, hyperlinks, and dialog boxes. The application programming interfaces may be local or remote and may include interface elements such as various controls, parameterized procedure calls, program objects, messaging protocols, etc.
[0298] The application layer 510 may include one or more application modules 511, each of which may have one or more sub-modules 512. Each application module 511 or sub-module 512 may correspond to a function, method, process, or operation performed by the module or sub-module (e.g., functions or processes related to data processing and providing services to users of the platform). Such functions, methods, processes, or operations may include, for example, those used to implement one or more aspects of the disclosed systems and methods for one or more of the processes or functions disclosed and / or described herein.
[0299] ● Receiving a request from an avatar in the virtual environment for assistance with the product or service, with the product or service being represented as an object in the virtual environment.
[0300] • Transforming the request into a virtual object (called a support request object) in the virtual environment (or, in some cases, into a service request ticket in the real world).
[0301] ● Adding or associating data and information (e.g., stored on the blockchain or in NFT or token form) to the support request object, where the data and information may include one or more of data, information, or metadata related to the request and related to the requester and / or the product or service for which assistance is requested.
[0302] • Verify the identity of the person controlling the avatar (if necessary).
[0303] Providing data, information or metadata about what an avatar (and therefore the person controlling the avatar) is willing to pay, what they are willing to do, or what they are willing to assist another avatar / person in exchange for assistance in fulfilling the request.
[0304] ● Allow an avatar or person generating a request for help to transfer an object formed from the support request to a support entity, which may be another avatar or brand and may be located in the virtual or real environment (in some embodiments, the avatar or person generating a request for help may cause a process to be performed on the support request object to obtain support).
[0305] Establish a method of communication between the requesting avatar and an entity (e.g., a brand or other avatar) to which the support request object is forwarded for resolution so that support can be provided via messaging, voice, video, or by automated tools (e.g., chatbots).
[0306] • Allowing the avatar to forward the support request object to a different support entity (based on suggestions from the support entity, in one embodiment) if the problem cannot be resolved by the entity that first attempts to provide assistance.
[0307] o This may be initiated by either the avatar / person that originally generated the request for support, or by a support entity to which the support request object has been forwarded.
[0308] ● Allow a support entity that is able to resolve a problem (i.e. provide the requested assistance) to indicate to the avatar (or person) that generated the request for support that the problem has been resolved.
[0309] - Allows the requester to make a payment to the supporting entity (eg, an avatar or avatars) that provided assistance after the requesting avatar receives a response to the request.
[0310] The application modules and / or sub-modules may include any suitable computer-executable code or set of instructions (e.g., as might be executed by a suitably programmed processor, microprocessor, or CPU), such as computer-executable code corresponding to a programming language. For example, source code in a programming language may be compiled into the computer-executable code. Alternatively, or in addition, the programming language may be an interpreted programming language, such as a scripting language. Each application server (e.g., as represented by element 422 in FIG. 4) may include each application module. Alternatively, separate application servers may include different sets of application modules. Such sets may be separate or overlapping.
[0311] The data storage layer 520 includes one or more data objects 522, each of which may have one or more data object elements 521, such as attributes and / or behaviors. For example, a data object may correspond to a table in a relational database, and a data object component may correspond to a column or field of such a table. Alternatively, or in addition, a data object may correspond to a data record having fields and associated services. Alternatively, or in addition, a data object may correspond to a persistent instance of a programmatic data object, such as a structure or class. Each data store of the data storage layer may include each data object. Alternatively, separate data stores may include different sets of data objects. Such sets may be disjoint or overlapping.
[0312] It should be noted that the example computing environments depicted in Figures 3-5 are not intended to be limiting examples. Additional environments in which embodiments of the present invention may be implemented in whole or in part include devices (including mobile devices), software applications, systems, appliances, networks, SaaS platforms, infrastructure-as-a-service (IaaS) platforms, or other configurable components that may be used by multiple users to enter data, process data, run applications, or review data.
[0313] The present disclosure includes the following sections and embodiments.
[0314] 1. A method of providing services to a user represented by an avatar in a virtual environment, comprising: receiving a request from an avatar in the virtual environment for assistance with the product or service, with the product or service represented as an object in the virtual environment; Converts requests for assistance into Support Request objects in a virtual environment, Add or associate with the support request object data, information, or metadata about the request, the requesting avatar, or one or more of the products or services for which assistance is requested; Providing data, information, or metadata about what the requesting avatar is willing to pay, do, or assist another avatar in fulfilling a request for assistance; Allows the requesting avatar to forward the support request object to the support entity, Establishing a method of communication between the requesting avatar and the supporting entity; allowing the supporting entity to indicate to the requesting avatar that the requested assistance has been provided; A method for allowing a requesting avatar to make a payment to a supporting entity that provided assistance.
[0315] 2. The method of claim 1, further comprising verifying the identity of the person controlling the requesting avatar.
[0316] 3. Verification of the identity of the person controlling the requesting avatar is further determining that a request has been received from an object or event within the virtual environment for verification of the real-world identity of the person corresponding to the requesting avatar; Upon request, an identifier for a set of avatars in the virtual environment, where each avatar may be associated with a unique name, number, or alphanumeric string; and a real-world person's name or unique identifier associated with each avatar identifier; and information about a real-world person associated with each avatar that may be used as part of an authentication process; and accessing a blockchain, token, or database having data comprising one or more of: 3. The method of claim 2, further comprising executing a logical process to verify the identity of the real-world person who is controlling the requesting avatar.
[0317] 4. The method of claim 1, wherein providing data, information, or metadata about what the requesting avatar is willing to pay, do, or assist another avatar in fulfilling the request for assistance further enables the requesting avatar to indicate that the support request object is already located within the marketplace.
[0318] 5. The blockchain, token, or database further comprises answers to passwords or secret questions associated with one or more of the real-world persons, and performs a logical process to verify the identity of the real-world person who is in control of the requesting avatar, Get the identifier of the avatar you are requesting, determining a name or unique identifier of a real-world person associated with the requesting avatar based on the obtained identifier; Prompting the requesting avatar to provide a password or answer to a security question associated with the real-world person associated with the requesting avatar; 4. The method of claim 3, further comprising determining whether a password or answer to a security question corresponds to one associated with a real-world person accessed from a blockchain, a token, or a database.
[0319] 6. The method of claim 1, further comprising enabling transfer of the support request object to a different support entity if the requested assistance cannot be provided by the support entity to which the support request object was transferred.
[0320] 7. The method of claim 1, wherein the method of communication between the requesting avatar and the support entity is one or more of messages, a user interface within the virtual environment, voice communication, video, or automated tools.
[0321] 8. One or more electronic processors configured to execute a set of computer-executable instructions; one or more non-transitory computer-readable media that contain a set of computer-executable instructions, When executed, the instructions cause one or more electronic processors, or a device or apparatus of which the processor is a part, to: receiving a request from an avatar in the virtual environment for assistance with the product or service, with the product or service represented as an object in the virtual environment; Converts requests for assistance into Support Request objects in a virtual environment, Add or associate with the support request object data, information, or metadata about the request, the requesting avatar, or one or more of the products or services for which assistance is requested; Providing data, information, or metadata about what the requesting avatar is willing to pay, do, or assist another avatar in fulfilling a request for assistance; Allows the requesting avatar to forward the support request object to the support entity, Establishing a method of communication between the requesting avatar and the supporting entity; allowing the supporting entity to indicate to the requesting avatar that the requested assistance has been provided; A system that enables a requesting avatar to make a payment to a support entity that provided assistance.
[0322] 9. The system of claim 8, further comprising instructions for causing the one or more electronic processors, or the device or apparatus of which the processor is a part, to verify the identity of the person controlling the requesting avatar.
[0323] 10. Verification of the identity of the person controlling the requesting avatar may further include: determining that a request has been received from an object or event within the virtual environment for verification of the real-world identity of the person corresponding to the requesting avatar; Upon request, an identifier for a set of avatars in the virtual environment, where each avatar may be associated with a unique name, number, or alphanumeric string; and a real-world person's name or unique identifier associated with each avatar identifier; and information about a real-world person associated with each avatar that may be used as part of an authentication process; and accessing a blockchain, token, or database having data comprising one or more of: 10. The system of claim 9, further comprising: executing a logical process to verify the identity of the real-world person who is controlling the requesting avatar.
[0324] 11. The system of claim 8, wherein providing data, information, or metadata about what the requesting avatar is willing to pay, do, or assist another avatar in fulfilling a request for assistance further enables the requesting avatar to indicate that the support request object is already located within the marketplace.
[0325] 12. The blockchain, token, or database further comprises answers to passwords or secret questions associated with one or more of the real-world persons, and performs a logical process to verify the identity of the real-world person who is in control of the requesting avatar, further comprising: Get the identifier of the avatar you are requesting, determining a name or unique identifier of a real-world person associated with the requesting avatar based on the obtained identifier; Prompting the requesting avatar to provide a password or answer to a security question associated with the real-world person associated with the requesting avatar; 11. The system of claim 10, which determines whether a password or answer to a security question corresponds to one associated with a real-world person accessed from a blockchain, a token, or a database.
[0326] 13. The system described in claim 8, further comprising instructions for causing one or more electronic processors or devices or apparatus of which the processors are a part to enable forwarding of the support request object to a different support entity if the requested assistance cannot be provided by the support entity to which the support request object has been forwarded.
[0327] 14. The system of claim 8, wherein the method of communication between the requesting avatar and the support entity is one or more of messages, a user interface within the virtual environment, voice communication, video, or automated tools.
[0328] 15. One or more non-transitory computer-readable media comprising a set of computer-executable instructions which, when executed by one or more programmed electronic processors, cause the processors, or a device or apparatus of which the processors are a part, to: receiving a request from an avatar in the virtual environment for assistance with the product or service, with the product or service represented as an object in the virtual environment; Converts requests for assistance into Support Request objects in a virtual environment, Populate or associate with the Support Request object data, information, or metadata about the request, the requesting avatar, or one or more of the products or services for which assistance is requested; Providing data, information, or metadata about what the requesting avatar is willing to pay, do, or assist another avatar in fulfilling a request for assistance; Allows the requesting avatar to forward the support request object to the support entity, Establishing a method of communication between the requesting avatar and the supporting entity; allowing the supporting entity to indicate to the requesting avatar that the requested assistance has been provided; A non-transitory computer readable medium that enables a requesting avatar to make payment to a support entity that provided assistance.
[0329] 16. The non-transitory computer readable medium of claim 15, further comprising instructions for causing one or more electronic processors, or a device or apparatus of which the processor is a part, to verify the identity of a person controlling a requesting avatar.
[0330] 17. Verification of the identity of the person controlling the requesting avatar may further include: determining that a request has been received from an object or event within the virtual environment for verification of the real-world identity of the person corresponding to the requesting avatar; Upon request, an identifier for a set of avatars in the virtual environment, where each avatar may be associated with a unique name, number, or alphanumeric string; and a real-world person's name or unique identifier associated with each avatar identifier; and information about a real-world person associated with each avatar that may be used as part of an authentication process; and accessing a blockchain, token, or database having data comprising one or more of: 17. The non-transitory computer readable medium of clause 16, implementing a logical process for verifying the identity of a real-world person who is controlling a requesting avatar.
[0331] 18. The non-transitory computer-readable medium of claim 15, wherein providing data, information, or metadata about what the requesting avatar is willing to pay, do, or assist another avatar in fulfilling a request for assistance further enables the requesting avatar to indicate that the support request object is already located within the marketplace.
[0332] 19. The blockchain, token, or database further comprises answers to passwords or security questions associated with one or more of the real-world persons, and performs a logical process to verify the identity of the real-world person who is in control of the requesting avatar, further comprising: Get the identifier of the avatar you are requesting, determining a name or unique identifier of a real-world person associated with the requesting avatar based on the obtained identifier; Prompting the requesting avatar to provide a password or answer to a security question associated with the real-world person associated with the requesting avatar; 20. The non-transitory computer-readable medium of claim 17, which determines whether an answer to a password or security question corresponds to one associated with a real-world person accessed from a blockchain, token, or database.
[0333] 20. A non-transitory computer-readable medium as described in claim 15, further comprising instructions for causing one or more electronic processors, or a device or apparatus of which the processors are a part, to enable forwarding of the support request object to a different support entity if the requested assistance cannot be provided by the support entity to which the support request object was forwarded.
[0334] 21. The non-transitory computer-readable medium of claim 15, wherein the method of communication between the requesting avatar and the support entity is one or more of messages, a user interface within the virtual environment, voice communication, video, or automated tools.
[0335] The disclosed systems and methods can be implemented in the form of control logic using computer software in a modular or integrated manner. Based on the disclosure and teachings provided herein, one of ordinary skill in the art will know and appreciate other ways and / or methods of implementing the present invention using hardware and combinations of hardware and software.
[0336] Machine learning (ML) is increasingly being used in various industries to enable data analysis and aid in decision making. To benefit from the use of ML, a machine learning algorithm is applied to a set of training data and labels to generate a "model", which represents what the application of the algorithm has "learned" from the training data. Each element (or instance or example in the form of one or more parameters, variables, features or "traits") of the training dataset is associated with a label or annotation that defines how that element should be classified by the trained model. A machine learning model in the form of a neural network is a set of layers of connected neurons that operate to make decisions (such as classification) on samples of input data. Once trained (i.e., the weights connecting the neurons have converged and stabilized or are within acceptable variance), the model operates on new elements of the input data and produces the correct label or classification as output.
[0337] In some embodiments, some of the methods, models, or functions described herein may be embodied in the form of a trained neural network, where the network is implemented by the execution of a computer-executable set of instructions or a representation of a data structure. The instructions may be stored in (or on) a non-transitory computer-readable medium and executed by a programmed processor or processing element. The set of instructions may be communicated to a user through the transfer of the instructions (e.g., over a network such as the Internet) or the transfer of an application that executes the set of instructions. The set of instructions or the application may be utilized by an end user through access to a SaaS platform or a service provided through such a platform. A trained neural network, a trained machine learning model, or any other form of decision or classification process may be used to implement one or more of the methods, functions, processes, or operations described herein. It should be noted that a neural network or deep learning model may be characterized in the form of a data structure in which data representing a set of layers containing nodes are stored, connections between the nodes of the different layers are generated (or formed), and the data structure operates on inputs to provide decisions or values as outputs.
[0338] In general terms, a neural network may be viewed as a system of interconnected artificial "neurons" or nodes that send messages to each other. The connections have numerical weights that are "tuned" during the training process so that a properly trained network will respond correctly when presented with (for example) an image or pattern to be recognized. In this characterization, the network is composed of multiple layers of feature-detecting "neurons," each layer having neurons that respond to different combinations of inputs from the previous layer. The network is trained using a "labeled" data set of inputs, with a wide selection of representative input patterns associated with intended output responses. Training is performed iteratively, using a generic method to determine the weights for the intermediate and final neurons. In terms of the computational model, each neuron calculates the dot product of the input and the weights, adds a bias, and applies a nonlinear trigger or activation function (e.g., using a sigmoid response function).
[0339] Any of the software components, processes, or functions described in this application may be implemented as software code executed by a processor using any suitable computer language, such as Python, Java, JavaScript, C, C++, or Perl, using conventional or object-oriented techniques. The software code may be stored as a sequence of instructions or commands in (or on) a non-transitory computer-readable medium, such as a random access memory (RAM), a read-only memory (ROM), a magnetic medium, such as a hard drive or a floppy disk, or an optical medium, such as a CD-ROM. Here, a non-transitory computer-readable medium is almost any medium suitable for storing data or sets of instructions, except for transient waveforms. Any such computer-readable medium may reside on or within a single computing device, or on or within different computing devices within a system or network.
[0340] According to one embodiment, the term processing element or processor, as used herein, may be a central processing unit (CPU) or may be conceptualized as a CPU (such as a virtual machine). In this embodiment, the CPU or device in which the CPU is embedded may be coupled, connected, and / or communicate with one or more peripheral devices, such as a display. In another embodiment, the processing element or processor may be embedded within a mobile computing device, such as a smartphone or tablet computer.
[0341] The non-transitory computer-readable storage medium referred to herein may include a number of physical drive units, such as a redundant array of independent disks (RAID), a floppy disk drive, a flash memory, a USB flash drive, an external hard disk drive, a thumb drive, a pen drive, a key drive, a high density digital versatile disk (HD-DVD) optical disk drive, an internal hard disk drive, a Blu-ray optical disk drive, or a Holographic Digital Data Storage (HDDS) optical disk drive, a synchronous dynamic random access memory (SDRAM), or other forms of memory based on similar devices or similar technologies. Such computer-readable storage media enable a processing element or processor to access computer-executable process steps, application programs, and the like stored on removable and non-removable storage media to offload data from a device or upload data to a device. As mentioned above, with respect to the embodiments described herein, a non-transitory computer-readable medium may include nearly any structure, technology, or method, except for a transitory waveform or similar medium.
[0342] Particular implementations of the disclosed technology are described herein with reference to block diagrams of systems and / or flowcharts or flow diagrams of functions, operations, processes, or methods. It will be understood that one or more blocks of a block diagram, or one or more stages or steps of a flowchart or flow diagram, and combinations of blocks of a block diagram and stages or steps of a flowchart or flow diagram, respectively, can be executed by computer-executable program instructions. However, in some embodiments, one or more of the blocks or stages or steps need not necessarily be executed in the order presented, or may not be executed at all.
[0343] These computer-executable program instructions may be loaded into a general purpose computer, special purpose computer, processor, or other programmable data processing apparatus to produce a particular instance of the machine, such that the instructions executed by the computer, processor, or other programmable data processing apparatus create means for performing one or more of the functions, operations, processes, or methods described herein. These computer program instructions may also be stored in a computer-readable memory that can direct the computer or other programmable data processing apparatus to function in a particular manner, thereby producing an article of manufacture that includes instruction means for performing one or more of the functions, operations, processes, or methods described herein, such that the instructions stored in the computer-readable memory.
[0344] While particular embodiments of the disclosed technology have been described in connection with what are presently considered to be the most practical and versatile embodiments, it is to be understood that the disclosed technology is not to be limited to the disclosed embodiments. Instead, the disclosed embodiments are intended to cover various modifications and equivalent arrangements included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.
[0345] This specification uses examples to disclose particular embodiments of the disclosed technology and to enable any person of ordinary skill in the art to practice particular embodiments of the disclosed technology, including making and using any devices or systems, and performing any methods incorporated therein. The patentable scope of particular embodiments of the disclosed technology is defined in the claims, and may include other examples that occur to those of ordinary skill in the art. Such other examples are intended to be within the scope of the claims if they have structural and / or functional elements that do not differ from the language of the claims, or if they include structural and / or functional elements that do not differ insubstantially from the language of the claims.
[0346] All references cited in this specification, including publications, patent applications, and patents, are hereby incorporated by reference to the same extent as if each reference was individually and specifically indicated to be incorporated by reference and / or was set forth in its entirety herein.
[0347] In this specification and the claims that follow, the use of the words "a" and "an" and "the" and similar references shall be construed to cover both the singular and the plural, unless otherwise indicated herein or clearly contradicted by context. In this specification and the claims that follow, the words "having", "including", "containing" and similar references shall be construed as open-ended terms (e.g., meaning "including, but not limited to"), unless otherwise indicated. The recitation of ranges of values herein is merely intended to be a shorthand method of individually referring to each separate value inclusively included within the range, unless otherwise indicated herein, and each separate value is incorporated herein as if it were individually recited herein. All methods described herein can be performed in any suitable order, unless otherwise indicated herein or clearly contradicted by context. The use of any and all examples or exemplary language (e.g., "such as") provided herein is intended merely to clarify embodiments of the invention and does not impose limitations on the scope of the invention unless specifically claimed. No language in the specification should be construed as indicating any non-claimed element as essential to each embodiment of the invention.
[0348] As used in this application (i.e., the claims, drawings, and specification), the term "or" is used inclusively to refer to items in alternatives and in combination.
[0349] Different arrangements of the components depicted in the drawings or described above, as well as components and steps not shown or described, may be utilized. Similarly, some features and subcombinations are of utility and may be employed without reference to other features and subcombinations. Each embodiment of the invention has been described by way of illustration and not by way of limitation, as alternative embodiments will become apparent to those reading this patent. Thus, the invention is not limited to the embodiments described above or depicted in the drawings, and various embodiments and modifications may be made without departing from the scope of the claims set forth below.
Claims
1. 1. A method of providing services to a user represented by an avatar in a virtual environment, comprising: receiving a request from an avatar in a virtual environment for assistance with a product or service, the product or service being represented as an object in the virtual environment; converting the request for assistance into a support request object within the virtual environment; adding or associating to the support request object data, information or metadata about the request, the requesting avatar, or one or more of the product or service for which assistance is requested; providing data, information, or metadata about what the requesting avatar is willing to pay, do, or assist another avatar in fulfilling the request for assistance; enabling the requesting avatar to forward the support request object to a support entity; Establishing a communication method between the requesting avatar and the support entity; enabling the support entity to indicate to the requesting avatar that the requested assistance has been provided; enabling the requesting avatar to make a payment to the support entity that provided assistance.
2. 10. The method of claim 1, further comprising verifying the identity of the person in control of the requesting avatar.
3. Verification of the identity of the person in control of the requesting avatar further comprises: determining that a request has been received from an object or event within the virtual environment for verification of a real-world identity of a person corresponding to the requesting avatar; In response to the request, an identifier for a set of avatars in the virtual environment, each avatar may be associated with a unique name, number, or alphanumeric string; and a real-world person's name or unique identifier associated with each avatar identifier; and information about the real-world person associated with each avatar that may be used as part of an authentication process; and accessing a blockchain, token, or database having data comprising one or more of:
3. The method of claim 2, comprising executing a logical process to verify the identity of the real-world person who is controlling the requesting avatar.
4. 2. The method of claim 1, wherein providing data, information, or metadata about what the requesting avatar is willing to pay, do, or assist another avatar in doing in exchange for fulfilling the request for assistance further includes enabling the requesting avatar to indicate that the support request object is already located within a marketplace.
5. The blockchain, token, or database further comprises answers to passwords or security questions associated with one or more of the real-world persons, and executing a logical process to verify the identity of the real-world person who is in control of the requesting avatar further comprises: Obtaining an identifier for the requesting avatar; determining a name or unique identifier of the real-world person associated with the requesting avatar based on the obtained identifier; prompting the requesting avatar to provide an answer to the password or security question associated with the real-world person associated with the requesting avatar; 4. The method of claim 3, comprising determining whether the password or answer to a security question corresponds to one associated with the real-world person accessed from the blockchain, token, or database.
6. 2. The method of claim 1, further comprising enabling transfer of the support request object to a different support entity if the requested assistance cannot be provided by the support entity to which the support request object was transferred.
7. The method of claim 1 , wherein the method of communication between the requesting avatar and the support entity is one or more of messages, a user interface within the virtual environment, voice communication, video, or an automated tool.
8. one or more electronic processors configured to execute a set of computer-executable instructions; and one or more non-transitory computer-readable media comprising the set of computer-executable instructions, When the instructions are executed, they cause the one or more electronic processors, or a device or apparatus of which the one or more electronic processors are a part, to: receiving a request from an avatar in a virtual environment for assistance with a product or service, the product or service being represented as an object in the virtual environment; converting the request for assistance into a support request object within the virtual environment; adding or associating to the support request object data, information or metadata about the request, the requesting avatar, or one or more of the product or service for which assistance is requested; providing data, information, or metadata about what the requesting avatar is willing to pay, do, or assist another avatar in fulfilling the request for assistance; enabling the requesting avatar to forward the support request object to a support entity; Establishing a communication method between the requesting avatar and the support entity; enabling the support entity to indicate to the requesting avatar that the requested assistance has been provided; The system enables the requesting avatar to make a payment to the support entity that provided assistance.
9. 10. The system of claim 8, further comprising instructions to cause the one or more electronic processors, or a device or apparatus of which the one or more electronic processors are a part, to verify the identity of a person in control of the requesting avatar.
10. Verification of the identity of the person in control of the requesting avatar further comprises: determining that a request has been received from an object or event within the virtual environment for verification of a real-world identity of a person corresponding to the requesting avatar; In response to the request, an identifier for a set of avatars in the virtual environment, each avatar may be associated with a unique name, number, or alphanumeric string; and a real-world person's name or unique identifier associated with each avatar identifier; and information about the real-world person associated with each avatar that may be used as part of an authentication process; and accessing a blockchain, token, or database having data comprising one or more of:
10. The system of claim 9, further comprising: executing a logical process to verify the identity of the real-world person who is controlling the requesting avatar.
11. 10. The system of claim 8, wherein providing data, information, or metadata about what the requesting avatar is willing to pay, do, or assist another avatar in doing in exchange for fulfilling the request for assistance further includes enabling the requesting avatar to indicate that the support request object is already placed in a marketplace.
12. The blockchain, token, or database further comprises answers to passwords or security questions associated with one or more of the real-world persons, and executing a logical process to verify the identity of the real-world person who is in control of the requesting avatar further comprises: Obtaining an identifier for the requesting avatar; determining a name or unique identifier of the real-world person associated with the requesting avatar based on the obtained identifier; prompting the requesting avatar to provide an answer to the password or security question associated with the real-world person associated with the requesting avatar; 11. The system of claim 10, further comprising: determining whether the password or answer to the security question corresponds to one associated with the real-world person accessed from the blockchain, token, or database.
13. 9. The system of claim 8, further comprising instructions to cause the one or more electronic processors, or a device or apparatus of which the one or more electronic processors are a part, to enable transfer of the support request object to a different support entity if the requested assistance cannot be provided by the support entity to which the support request object was transferred.
14. The system of claim 8 , wherein the method of communication between the requesting avatar and the support entity is one or more of messages, a user interface within the virtual environment, voice communication, video, or an automated tool.
15. One or more non-transitory computer-readable media comprising a set of computer-executable instructions which, when executed by one or more programmed electronic processors, cause the processors, or a device or apparatus of which the processors are a part, to: receiving a request from an avatar in a virtual environment for assistance with a product or service, the product or service being represented as an object in the virtual environment; converting the request for assistance into a support request object within the virtual environment; adding or associating to the support request object data, information or metadata about the request, the requesting avatar, or one or more of the product or service for which assistance is requested; providing data, information, or metadata about what the requesting avatar is willing to pay, do, or assist another avatar in fulfilling the request for assistance; enabling the requesting avatar to forward the support request object to a support entity; Establishing a communication method between the requesting avatar and the support entity; enabling the support entity to indicate to the requesting avatar that the requested assistance has been provided; a requesting avatar for providing assistance to a support entity that has provided assistance to the requesting avatar;
16. 16. The non-transitory computer-readable medium of claim 15, further comprising instructions to cause the one or more electronic processors, or a device or apparatus of which the one or more electronic processors are a part, to verify the identity of a person in control of the requesting avatar.
17. Verification of the identity of the person in control of the requesting avatar further comprises: determining that a request has been received from an object or event within the virtual environment for verification of a real-world identity of a person corresponding to the requesting avatar; In response to the request, an identifier for a set of avatars in the virtual environment, each avatar may be associated with a unique name, number, or alphanumeric string; and a real-world person's name or unique identifier associated with each avatar identifier; and information about the real-world person associated with each avatar that may be used as part of an authentication process; and accessing a blockchain, token, or database having data comprising one or more of:
20. The non-transitory computer readable medium of claim 16, comprising executing a logical process that verifies the identity of the real-world person who is controlling the requesting avatar.
18. 16. The non-transitory computer-readable medium of claim 15, wherein providing data, information, or metadata about what the requesting avatar is willing to pay, do, or assist another avatar in doing in exchange for fulfilling the request for assistance further includes enabling the requesting avatar to indicate that the support request object is already placed in a marketplace.
19. The blockchain, token, or database further comprises answers to passwords or security questions associated with one or more of the real-world persons, and executing a logical process to verify the identity of the real-world person who is in control of the requesting avatar further comprises: Obtaining an identifier for the requesting avatar; determining a name or unique identifier of the real-world person associated with the requesting avatar based on the obtained identifier; prompting the requesting avatar to provide an answer to the password or security question associated with the real-world person associated with the requesting avatar; 20. The non-transitory computer readable medium of claim 17, comprising determining whether the password or answer to a security question corresponds to one associated with the real-world person accessed from the blockchain, token, or database.
20. 16. The non-transitory computer-readable medium of claim 15, further comprising instructions to cause the one or more electronic processors, or a device or apparatus of which the one or more electronic processors are a part, to enable transfer of the support request object to a different support entity if the requested assistance cannot be provided by the support entity to which the support request object was transferred.
21. 16. The non-transitory computer-readable medium of claim 15, wherein the method of communication between the requesting avatar and the support entity is one or more of messages, a user interface within the virtual environment, voice communication, video, or automated tools.