Users can communicate with an electronic commerce site via a mobile device. In some cases, users may wish to browse, search for and/or purchase products via a mobile device. Interacting with a browser and/or a mobile application user interface can often require input into a keyboard, touchscreen or other tactile input device that requires the attention of the user to submit search terms, select products, enter payment information, or other information needed to browse and/or purchase products from a mobile device.
Many aspects of the present disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the disclosure. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views.
In the following discussion, a general description of the system and its components is provided, followed by a discussion of the operation of the same. Embodiments of the present disclosure are directed to systems and methods that facilitate an assisted shopping experience for users of an electronic commerce site. A mobile application or an application executed on a client can utilize various input devices and other hardware capabilities to enhance a user's experience as well as facilitate a shopping experience that can be assisted by a customer service agent as described herein.
With reference to
The computing device 103 may comprise, for example, a server computer or any other system providing computing capability. Alternatively, a plurality of computing devices 103 may be employed that are arranged, for example, in one or more server banks or computer banks or other arrangements. For example, a plurality of computing devices 103 together may comprise, for example, a cloud computing resource, a grid computing resource, and/or any other distributed computing arrangement. Such computing devices 103 may be located in a single installation or may be dispersed among many different geographical locations. As one example, each of the disclosed components executed in the computing device 103 can be executed in different computing devices 103 in various locations in one or more data centers. However, for purposes of convenience, the computing device 103 is referred to herein in the singular. Even though the computing device is referred to in the singular, it is understood that a plurality of computing devices 103 may be employed in the various arrangements as described above.
The components executed on the computing device 103 include, for example, an electronic commerce application 119, an assisted shopping agent application 121, and other systems, applications, services, processes, engines, or functionality not discussed in detail herein. The electronic commerce application 119 is executed in order to facilitate the online purchase of items from one or more electronic marketplaces over the network 113. The electronic commerce application 119 also performs various backend functions associated with the online presence of an electronic marketplace in order to facilitate the online purchase of items. For example, the electronic commerce application 119 generates network pages such as, for example, web pages and/or other types of network content that are provided to clients for the purposes of promoting and selecting items for purchase, rental, download, lease, or any other forms of consumption.
The assisted shopping agent application 121 is executed to facilitate an assisted shopping experience that allows users and CS agents associated with an electronic commerce site to communicate with one another as described herein. The assisted shopping agent application 121 allows a CS agent to view various information about data displayed on a client device associated with a user, push information about products, facilitate purchasing of products via the electronic commerce application 119 as well as communicate via a voice session (e.g., telephone call, voice over internet protocol session, etc.). The assisted shopping agent application 121 can also receive search terms and other text that is derived from voice commands transcribed by a mobile application on a client to facilitate the assisted shopping experience described herein. In some embodiments, the assisted shopping agent application 121 can also receive a representation of voice commands, such as an audio file or other digital representation of an audio sample, from a client device 106 and generate a text equivalent to exchange data between a client 106 and the assisted shopping agent application 121. The assisted shopping agent application 121 can also receive data from a mobile application, special purpose application, and/or a browser via a data session, and the assisted shopping agent application 121 can also serve content to a client device 106 as described herein.
With regard to the data store 116, the data stored therein can include, for example, a product catalog 137, user account data 147, and potentially other data. The product catalog 137 may include information related to a plurality of items 148 offered in an electronic marketplace or otherwise available via the electronic commerce application 119. An item 148 may refer to a product, good, service, software download, multimedia download, social networking profile, or any combination, bundle, or package thereof, that may be offered for sale, purchase, rental, lease, download, and/or any other form of consumption as may be appreciated. The various data stored in the product catalog 137 may include, for example, search terms, titles, descriptions, quantities, conditions, images, options, weights, customer reviews, customer ratings, keywords, shipping restrictions, prices, tax classifications, unique identifiers, and any other data related to items 148.
The data store 116 can also include data regarding the various user accounts 147 of an electronic commerce site facilitated by the electronic commerce application 119 and assisted shopping agent application 121. In some embodiments, each user account 147 can be associated with a user profile 149 that can contain demographic data about the user as well as information regarding the browsing activity, purchase history, interests, or any other profile data about the user. User accounts 147 can also include session data 151 that includes information about assisted shopping sessions initiated by the user with a CS agent. The session data 151 can include search histories, browse histories, and CS agent notes, and other data related to the user's interactions with the assisted shopping agent application 121 via a client device 106.
The data store 116 can also include other data related to users and products as can be appreciated, but which are not necessary to discuss herein for an understanding of the various embodiments of the disclosure. Additionally, it should be appreciated that the data store 116 can be implemented in a separate computing device that may be located in a separate installation or location. The depicted table structure of the data store 116 is one example of how data can be structured therein according to embodiments of this disclosure, as it should be appreciated that data can be structured in many different ways across multiple data stores implemented in various computing devices. Accordingly, it should be appreciated that the depicted data store 116 and the table structure shown therein is but one example given for ease of depiction and explanation of various embodiments of this disclosure.
The client device 106 is representative of a plurality of client devices 106 that may be coupled to the network 113. The client device 106 may comprise, for example, a processor-based system such as a computer system. Such a computer system may be embodied in the form of a desktop computer, a laptop computer, a personal digital assistant, a mobile device (e.g., cellular telephone, smart phone, etc.), set-top box, music players, web pads, tablet computer systems, or other devices with like capability. The client device 106 includes a display device 152 upon which content pages 126 and other content may be rendered.
A client device 106a may be configured to execute various applications such as a browser application 153 and/or other applications. The browser application 153 may be executed in a client device 106, for example, to access and render content pages 126, such as web pages, or other network content served up by the computing device 103, CS agent system 108 and/or other servers. The client device 106a may be configured to execute applications beyond a browser application 153 such as, for example, instant message applications, an application specifically tailored to access resources of the computing device 103, and/or other applications as can be appreciated.
Another example of a device that can interact with the assisted shopping agent application 121 includes a client device 106b that can include a mobile device, tablet system, or like system that executes an assisted shopping application 155 that can receive inputs from a user, interact with the hardware and other capabilities of the client 106b as well as exchange data with the assisted shopping agent application 121. The assisted shopping application 155 is also tailored to access data provided by the assisted shopping agent application 121 and/or the CS agent application 154 and can include client side code that generates a user interface on a display device of the client 106b. The client device 106b may comprise a mobile device including cellular telephone and data access, location detection hardware, speed and/or direction detection hardware, and/or other hardware and software components.
Such a device can detect the location of a user using global positioning system 159 (GPS) or other location detection functionality, which can be submitted by the assisted shopping application 155 to the assisted shopping agent application 121 and/or the CS agent application 154. In one example, global positioning system 159 (GPS) functionality provided by the client device 106b can provide a location of the client to the assisted shopping application 155, which can in turn transmit a location of the client to the assisted shopping agent application 121. In one embodiment, the assisted shopping agent application 121 can utilize location based services and applications executed on the client device 106b to determine a location of the user, which can be used to facilitate an assisted shopping experience. Additionally, such a device may also detect the speed and/or direction of a user or the device, which can be submitted by the assisted shopping application 155 to the assisted shopping agent application 121 and/or the CS agent application 154.
The assisted shopping application 155 can also control one or more displays 160 in communication with the client device 106. Additionally, the client device 106b can include other hardware devices that are within or accessible to the client device 106. In one embodiment, the assisted shopping application 155 receives data from a proximity sensor 161 and use the data to determine whether a client device 106 is near or against the user's ear. Accordingly, this data can be transmitted to the assisted shopping agent application 121 and/or CS agent application 154 so that a CS agent can determine whether the user is likely looking at the display 160 of the client device 106. Additionally, assisted shopping application 155 can also interact with a microphone 163 to receive audio inputs from a user as well as one or more speakers 165 to play audio content. The assisted shopping application 155 can also activate a speakerphone mode associated with the client device 106 as well as keep the display 160 of the device active. In one embodiment, a speakerphone mode that include setting a speaker level and/or microphone sensitivity above one or more thresholds. The assisted shopping application 155 can interact with any other hardware or software components associated with a client device 106b to facilitate the functionality of embodiments of the present disclosure.
The CS agent system 108 is representative of one or more computing systems that can execute a CS agent application 154 with which a CS agent can interact with a user on a client 106 in an assisted shopping session. In some embodiments, the CS agent application 154 can include a browser that renders content provided by assisted shopping agent application 121 and/or client 106. In other embodiments, the CS agent application 154 can include a special purpose application that facilitates communication with the client 106. In some embodiments, some or all of the functionality described herein as ascribed to the assisted shopping agent application 121 can be implemented in a CS agent system 108.
Next, a description of various embodiments, variations, and examples of the present disclosure are provided. The following discussion includes non-limiting examples of interactions of users and CS agents in an assisted shopping experience that is facilitated by embodiments of the disclosure. Users of an electronic commerce site can engage in an assisted shopping experience to browse, search and/or purchase products available via an electronic commerce application 119. Such an experience can be facilitated by interactions with a CS agent associated with the electronic commerce site. In one embodiment, a user can initiate an assisted shopping experience by invoking the assisted shopping application 155 in a client. In one embodiment, the assisted shopping application 155 can prompt the user to speak about what the user is seeking via an electronic commerce site. The assisted shopping application 155 can transcribe the speech captured via a microphone 163 by employing a speech recognition or speech transcription algorithm, which can be transmitted to the assisted shopping agent application 121. In this way, the assisted shopping application 155 can establish a data session, such as a hypertext transport protocol session, with the assisted shopping agent application 121 that allows the exchange of data between the application and the assisted shopping agent application 121.
The assisted shopping application 155 can also initiate a voice session that is contemporaneous with a CS agent that allows a user to speak to the CS agent via the assisted shopping application 155. Such a voice session can be a bidirectional voice session that can be routed through the assisted shopping agent application 121 and/or the CS agent application 154 and allow a conversation between the user and the CS agent. In some embodiments, the voice session can include a wired and/or wireless phone call according to various standards that are known in the art. Additionally, in some embodiments, a wireless communication standard implemented by the client device 106 may not allow simultaneous or contemporaneous voice and data transmission. Additionally, in other embodiments, the assisted shopping application 155 may be executed on a client device 106 that is only equipped with the ability to communicate via the Internet. Therefore, in these scenarios, the assisted shopping application 155 can initiate a VoIP session with the assisted shopping agent application 121 to communicate with the CS agent so that the voice session and data session can be contemporaneous.
Accordingly, the assisted shopping agent application 121 can initiate a search of the product catalog 137 for products that are relevant to the transcribed speech and transmit search results to the assisted shopping application 155, which can be rendered on the client device 106 in a user interface. The assisted shopping application 155 can render a search results user interface that presents one or more search results relevant to the transcribed speech. As a voice session is established with the assisted shopping agent application 121 contemporaneously with the data session, a CS agent can speak to the user and provide assistance with searching for products as well as completing purchases. To facilitate this assisted shopping experience, the assisted shopping agent application 121 can push data to the assisted shopping application 155, which can display data pushed by the CS agent on the client device 106. Accordingly, the following user interfaces illustrate various examples of interactions that can occur between the assisted shopping agent application 121 and the assisted shopping application 155 that allow an assisted shopping experience to take place between a user and CS agent.
Therefore, reference is made to
Continuing the example shown in
The assisted shopping agent application 121 can receive the speech input and/or a text input corresponding to the transcribed speech input and perform a search for relevant products in the product catalog 137 associated with an electronic commerce site. The assisted shopping agent application 121 can transmit corresponding search results via the data session to the assisted shopping application 155. In some embodiments, the assisted shopping application 155 can remove certain terms from the transcribed speech input that can be considered extraneous or potentially unrelated to products in the product catalog 137. In one embodiment, the assisted shopping application 155 can consult a dictionary of extraneous terms and/or phrases that can be removed from a transcribed speech input before a text input is transmitted to the assisted shopping agent application 121 to perform a product search. In other embodiments, the assisted shopping agent application 121 can receive the transcribed speech input and remove extraneous terms from the text input that is employed to generate search results that are transmitted to the client device 106.
In one example, the assisted shopping agent application 121 can also consult a dictionary of extraneous terms and/or phrases that can be removed from the text input. In another example, the assisted shopping agent application 121 can identify terms in the text input that are unrelated to products in the product catalog 137 and remove these terms from the text input. As yet another example, the assisted shopping agent application 121 can identify terms in the text input that are related to fewer search results than a threshold and remove these terms from the text input. In some cases, the assisted shopping agent application 121 can identify terms in the text input that are related to more search terms than a threshold, which can indicate that these terms are not useful for identifying the intent of the user and remove these terms from the text input. For example, the assisted shopping agent application 121 can identify that the search term “the” is related to more search results than a threshold and determine that the search term is not useful for identifying products that the user is seeking.
Continuing the example of
The CS agent application 154 can also allow the CS agent to refine search terms corresponding to the speech input and generate a new search for products in the product catalog 137. Accordingly, the CS agent can refine a search and push the search results to the assisted shopping application 155, which can render the search results for display on the client device 106. In one example, the CS agent can suggest refinement of a search query to the user and push the search results to the assisted shopping application 115 for display on the client device 106. In another example, the refined search query created by the CS agent can include none of the terms in the speech input captured by the assisted shopping application 155. For example, a user may, as an initial speech input, say that he or she is seeking gifts for a spouse. Accordingly, the refinement of the speech input into a search query that can be created by the CS agent may include none of the terms spoken by the user.
The CS agent application 154 can also allow the CS agent to push a product detail page containing pricing, shipping terms, and other information about specific products to the assisted shopping application 155, which can render the product detail page on the display of the client device 106. An example of such a scenario is illustrated in
Returning to
In some embodiments, a user can also capture imagery, video, audio, or other data with an input device in communication with the client 106, which can be transmitted to the assisted shopping agent application 121 can displayed by the CS agent application 154. Accordingly, the CS agent can view and/or listen to the captured data to facilitate the assisted shopping experience. As one example, the user can capture an image via the assisted shopping application 155, which can employ an image capture device associated with the client device 106. The assisted shopping application 155 can transmit the captured image to the assisted shopping agent application 121, and the CS agent can view the image and push search results, product detail pages, initiate purchases, or take any of the actions described in the above examples.
Referring next to
Beginning with box 801, the assisted shopping application 155 can capture a speech input from a user. As noted above, the assisted shopping application 155 can capture such an input via microphone that is integrated with the client device 106. In box 805, the assisted shopping application 155 can initiate contemporaneous voice and data sessions with the assisted shopping agent application 121. In box 807, the assisted shopping application 155 can capture speech input from the user and transmit the speech input to the assisted shopping agent application 121 and/or CS agent application 143 via the data session.
In box 809, the assisted shopping application 121 can receive content from the assisted shopping agent application 121 and/or CS agent application 143. The content can be received via the data session and can be one or more search results that are based upon the captured speech input. In box 811, the assisted shopping application 155 can render a content page containing at least a portion of the content received in box 809. In box 811, the assisted shopping application 155 can determine whether the assisted shopping session is terminated by the user and/or the CS agent. If so, then in box 813, the assisted shopping application 155 can terminate the data session as well as voice session. Referring next to
In box 901, the assisted shopping agent application 121 can initiate contemporaneous voice and data sessions with the assisted shopping application 155 executed on a client device 106. In box 903, the assisted shopping agent application 121 can receive a transcribed speech input from the assisted shopping application 155. In box 905, the assisted shopping agent application 121 can initiate a search of a product catalog 137 for products that are relevant to the transcribed speech input. In box 907, the assisted shopping agent application 121 can transmit content to the assisted shopping application 155 for display on a client device 106. In box 909, the assisted shopping agent application 121 can receive data about the state of the client and/or the assisted shopping application 155. The assisted shopping agent application 121 can receive information about a proximity sensor state, a state of a display device, whether the device is in a sleep mode, etc., and provide this information to a CS agent to facilitate the assisted shopping experience. The assisted shopping agent application 121 can also receive inputs from a user, which can cause additional content requests from the assisted shopping application 155 that can be served by the assisted shopping agent application 121.
With reference to
Stored in the memory 906, 956 are both data and several components that are executable by the processor 903, 953. In particular, stored in the memory 906, 956 and executable by the processor 903, 953 are the various application discussed herein. Also stored in the memory 906 may be a data store 116 and other data. The client device 106 can also include a mass storage 916 component for data storage. In addition, an operating system may be stored in the memory 906, 956 and executable by the processor 903, 953. In the case of the client device 106, the operating system can provided the ability such as various application programming interfaces, that allow the assisted shopping application 155 to interact with the various hardware components such as a proximity sensor, microphone, speaker, display, capacitive or resistive touchscreen, or other input or output devices.
It is understood that there may be other applications that are stored in the memory 906, 956 and are executable by the processors 903, 953 as can be appreciated. Where any component discussed herein is implemented in the form of software, any one of a number of programming languages may be employed such as, for example, C, C++, C#, Objective C, Java, JavaScript, Perl, PHP, Visual Basic, Python, Ruby, Delphi, Flash, or other programming languages.
A number of software components are stored in the memory 906, 956 and are executable by the processor 903, 953. In this respect, the term “executable” means a program file that is in a form that can ultimately be run by the processor 903, 953. Examples of executable programs may be, for example, a compiled program that can be translated into machine code in a format that can be loaded into a random access portion of the memory 906, 956 and run by the processor 903, 953, source code that may be expressed in proper format such as object code that is capable of being loaded into a random access portion of the memory 906, 956 and executed by the processor 903, 953, or source code that may be interpreted by another executable program to generate instructions in a random access portion of the memory 906, 956 to be executed by the processor 903, 953, etc. An executable program may be stored in any portion or component of the memory 906, 956 including, for example, random access memory (RAM), read-only memory (ROM), hard drive, solid-state drive, USB flash drive, memory card, optical disc such as compact disc (CD) or digital versatile disc (DVD), floppy disk, magnetic tape, or other memory components.
The memory 906, 956 is defined herein as including both volatile and nonvolatile memory and data storage components. Volatile components are those that do not retain data values upon loss of power. Nonvolatile components are those that retain data upon a loss of power. Thus, the memory 906, 956 may comprise, for example, random access memory (RAM), read-only memory (ROM), hard disk drives, solid-state drives, USB flash drives, memory cards accessed via a memory card reader, floppy disks accessed via an associated floppy disk drive, optical discs accessed via an optical disc drive, magnetic tapes accessed via an appropriate tape drive, and/or other memory components, or a combination of any two or more of these memory components. In addition, the RAM may comprise, for example, static random access memory (SRAM), dynamic random access memory (DRAM), or magnetic random access memory (MRAM) and other such devices. The ROM may comprise, for example, a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or other like memory device.
Also, the processor 903, 953 may represent multiple processors 903, 953 and the memory 906, 956 may represent multiple memories 906 that operate in parallel processing circuits, respectively. In such a case, the local interface 909, 959 may be an appropriate network 113 (
Although the various applications and systems described herein may be embodied in software or code executed by general purpose hardware as discussed above, as an alternative the same may also be embodied in dedicated hardware or a combination of software/general purpose hardware and dedicated hardware. If embodied in dedicated hardware, each can be implemented as a circuit or state machine that employs any one of or a combination of a number of technologies. These technologies may include, but are not limited to, discrete logic circuits having logic gates for implementing various logic functions upon an application of one or more data signals, application specific integrated circuits having appropriate logic gates, or other components, etc. Such technologies are generally well known by those skilled in the art and, consequently, are not described in detail herein.
The flowcharts of
Although the flowcharts of
Also, any logic or application described herein, including the assisted shopping application 155 and/or assisted shopping agent application 121, that comprises software or code can be embodied in any non-transitory computer-readable medium for use by or in connection with an instruction execution system such as, for example, a processor 903, 953 in a computer system or other system. In this sense, the logic may comprise, for example, statements including instructions and declarations that can be fetched from the computer-readable medium and executed by the instruction execution system. In the context of the present disclosure, a “computer-readable medium” can be any medium that can contain, store, or maintain the logic or application described herein for use by or in connection with the instruction execution system. The computer-readable medium can comprise any one of many physical media such as, for example, magnetic, optical, or semiconductor media. More specific examples of a suitable computer-readable medium would include, but are not limited to, magnetic tapes, magnetic floppy diskettes, magnetic hard drives, memory cards, solid-state drives, USB flash drives, or optical discs. Also, the computer-readable medium may be a random access memory (RAM) including, for example, static random access memory (SRAM) and dynamic random access memory (DRAM), or magnetic random access memory (MRAM). In addition, the computer-readable medium may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or other type of memory device.
It should be emphasized that the above-described embodiments of the present disclosure are merely possible examples of implementations set forth for a clear understanding of the principles of the disclosure. Many variations and modifications may be made to the above-described embodiment(s) without departing substantially from the spirit and principles of the disclosure. All such modifications and variations are intended to be included herein within the scope of this disclosure and protected by the following claims.
This application is a continuation of and claims the benefit of U.S. patent application Ser. No. 13/171,761, entitled “ASSISTED SHOPPING,” and filed Jun. 29, 2011, which is hereby incorporated by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
5897622 | Blinn et al. | Apr 1999 | A |
6345239 | Bowman-Amuah | Feb 2002 | B1 |
6771766 | Shafiee et al. | Aug 2004 | B1 |
6928417 | Sundaresan | Aug 2005 | B1 |
7454368 | Stillman | Nov 2008 | B2 |
7672931 | Hurst-Hiller et al. | Mar 2010 | B2 |
7780081 | Liang | Aug 2010 | B1 |
7801570 | Cheung et al. | Sep 2010 | B2 |
8099289 | Mozer et al. | Jan 2012 | B2 |
8353452 | Sharpe et al. | Jan 2013 | B2 |
20020120674 | Son et al. | Aug 2002 | A1 |
20030115191 | Copperman | Jun 2003 | A1 |
20060122976 | Baluja et al. | Jun 2006 | A1 |
20090006336 | Forstall et al. | Jan 2009 | A1 |
20090012418 | Gerlach | Jan 2009 | A1 |
20090012704 | Franco | Jan 2009 | A1 |
20090287680 | Paek et al. | Nov 2009 | A1 |
20090304161 | Pettyjohn et al. | Dec 2009 | A1 |
20100061534 | Wang et al. | Mar 2010 | A1 |
20110106527 | Chiu | May 2011 | A1 |
20110246330 | Tikku et al. | Oct 2011 | A1 |
20120078700 | Pugliese, III | Mar 2012 | A1 |
20120203770 | Chitiveli et al. | Aug 2012 | A1 |
20120235865 | Nath et al. | Sep 2012 | A1 |
Entry |
---|
U.S. Appl. No. 13/171,752, filed Jun. 29, 2011 and entitled “Assisted Shopping”. *Copy not provided. |
Number | Date | Country | |
---|---|---|---|
20150294386 A1 | Oct 2015 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13171761 | Jun 2011 | US |
Child | 14494015 | US |