US20150058239A1 - Item-based social discovery - Google Patents
Item-based social discovery Download PDFInfo
- Publication number
- US20150058239A1 US20150058239A1 US14/466,801 US201414466801A US2015058239A1 US 20150058239 A1 US20150058239 A1 US 20150058239A1 US 201414466801 A US201414466801 A US 201414466801A US 2015058239 A1 US2015058239 A1 US 2015058239A1
- Authority
- US
- United States
- Prior art keywords
- user
- item
- entity
- social network
- entities
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 claims abstract description 43
- 230000009471 action Effects 0.000 claims abstract description 20
- 230000004044 response Effects 0.000 claims abstract description 13
- 238000004458 analytical method Methods 0.000 claims description 36
- 238000012544 monitoring process Methods 0.000 claims description 5
- 230000001960 triggered effect Effects 0.000 claims description 2
- 230000008520 organization Effects 0.000 claims 2
- 238000004891 communication Methods 0.000 description 33
- 238000010586 diagram Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 17
- 239000000047 product Substances 0.000 description 14
- 230000003213 activating effect Effects 0.000 description 11
- 230000008878 coupling Effects 0.000 description 10
- 238000010168 coupling process Methods 0.000 description 10
- 238000005859 coupling reaction Methods 0.000 description 10
- 238000013475 authorization Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 238000001514 detection method Methods 0.000 description 7
- 230000000670 limiting effect Effects 0.000 description 7
- 230000001413 cellular effect Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 230000033001 locomotion Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012552 review Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 239000007789 gas Substances 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- RWSOTUBLDIXVET-UHFFFAOYSA-N Dihydrogen sulfide Chemical compound S RWSOTUBLDIXVET-UHFFFAOYSA-N 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 238000007792 addition Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 230000036760 body temperature Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 239000003344 environmental pollutant Substances 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 230000008921 facial expression Effects 0.000 description 1
- 231100001261 hazardous Toxicity 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000001976 improved effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012011 method of payment Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000004570 mortar (masonry) Substances 0.000 description 1
- 231100000719 pollutant Toxicity 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000002207 retinal effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 230000008786 sensory perception of smell Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000003997 social interaction Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0267—Wireless devices
-
- G06F17/30867—
-
- E—FIXED CONSTRUCTIONS
- E05—LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
- E05B—LOCKS; ACCESSORIES THEREFOR; HANDCUFFS
- E05B47/00—Operating or controlling locks or other fastening devices by electric or magnetic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/321—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices using wearable devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/322—Aspects of commerce using mobile devices [M-devices]
- G06Q20/3224—Transactions dependent on location of M-devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/326—Payment applications installed on the mobile devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/384—Payment protocols; Details thereof using social networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0255—Targeted advertisements based on user history
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0261—Targeted advertisements based on user location
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0282—Rating or review of business operators or products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0623—Item investigation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C9/00—Individual registration on entry or exit
- G07C9/30—Individual registration on entry or exit not involving the use of a pass
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/02—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by keys or other credit registering devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/02—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
-
- H04L51/32—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- E—FIXED CONSTRUCTIONS
- E05—LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
- E05B—LOCKS; ACCESSORIES THEREFOR; HANDCUFFS
- E05B47/00—Operating or controlling locks or other fastening devices by electric or magnetic means
- E05B2047/0048—Circuits, feeding, monitoring
- E05B2047/005—Opening, closing of the circuit
- E05B2047/0054—Opening, closing of the circuit using microprocessor, printed circuits, or the like
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/52—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
Definitions
- Embodiments of the present disclosure relate generally to mobile computing technology and, more particularly, but not by way of limitation, to item-based social discovery.
- FIG. 1A is a block diagram illustrating a networked system, according to some example embodiments.
- FIG. 1B illustrates a block diagram showing components provided within the system of FIG. 1A , according to some example embodiments.
- FIG. 2 is a block diagram illustrating an example embodiment of an item discovery system, according to some example embodiments.
- FIG. 3 is a flow diagram illustrating an example method for identifying suggested entities and recommending, to the user, forming a new social network relationship between the suggested entities and the user, according to some example embodiments.
- FIG. 4 is a flow diagram illustrating various communications in an example method for identifying suggested entities and recommending, to the user, forming a new social network relationship between the suggested entities and the user, according to some example embodiments.
- FIGS. 5 and 6 are flow diagrams illustrating example methods for identifying and presenting an item to the user, according to some example embodiments.
- FIG. 7 is a flow diagram illustrating a method for generating an item indication based on a user action, according to some example embodiments.
- FIG. 8 is a depiction of the user triggering an item indication based on geographic location data received from a device of the user, according to some example embodiments.
- FIGS. 9-15 illustrate example user interfaces, according to some example embodiments.
- FIG. 16 depicts an example mobile device and mobile operating system interface, according to some example embodiments.
- FIG. 17 is a block diagram illustrating an example of a software architecture that may be installed on a machine, according to some example embodiments.
- FIG. 18 illustrates a diagrammatic representation of a machine in the form of a computer system within which a set of instructions may be executed for causing the machine to perform any one or more of the methodologies discussed herein, according to an example embodiment.
- entity data that associates items with entities is stored.
- the entity data may indicate that a particular entity likes, wants, or owns a particular item.
- the particular entity specified liking, wanting, or owning the particular item (e.g., the entity inputting a designation for the item into a user interface configured to receive the item designation) in the past and the item designations are stored for subsequent analysis.
- the item designation may be automatically determined (e.g., scanning purchase histories of entities to determine items owned by the entities).
- An item indication that indicates a user affinity for a mutual item is generated in response to a user action.
- the user specifies the user affinity (e.g., liking or wanting the mutual item) at a user interface configured to receive the item designation.
- the item indication is generated automatically on behalf of the user in response to the user action.
- user location data is monitored and matched or compared with entity location data (e.g., a local merchant store that sells various items). If the monitoring of the user location data indicates that the user location matches an entity location (e.g., the user entering the local merchant store), an item indication associated with items of the entity is generated. In this way, the user action automatically triggers the item indication.
- the user and the entities are members of one or more social network services (e.g., Facebook® or Twitter®).
- suggested entities that are members of the social network service are identified based on the mutual item. For example, the mutual item indicated by the item indication is matched with items associated with the entities.
- a new social network relationship or connection between the user and at least one of the suggested entities is recommended to the user.
- the user may be presented with a notification, prompt, or another user interface that provides the user an option to form the new social network relationship with a particular suggested entity.
- the user may form social network relationships or connect with previously unknown entities interested in items the user has an affinity for.
- FIG. 1A an example embodiment of a high-level client-server-based network architecture 100 is shown.
- a networked system 102 provides server-side functionality via a network 104 (e.g., the Internet or wide area network (WAN)) to a client device 110 .
- a user e.g., user 106
- FIG. 1A illustrates, for example, a web client 112 (e.g., a browser, such as the Internet Explorer® browser developed by Microsoft® Corporation of Redmond, Wash. State), client application(s) 114 , and a programmatic client 116 executing on the client device 110 .
- a web client 112 e.g., a browser, such as the Internet Explorer® browser developed by Microsoft® Corporation of Redmond, Wash. State
- client application(s) 114 e.g., the Internet Explorer® browser developed by Microsoft® Corporation of Redmond, Wash. State
- programmatic client 116 e.g., programmatic client 116 executing on the client device 110 .
- the client device 110 may include the web client 112 , the client application(s) 114 , and the programmatic client 116 alone, together, or in any suitable combination.
- FIG. 1A shows one client device 110 , in other implementations, the network architecture 100 comprises multiple client devices.
- the client device 110 comprises a computing device that includes at least a display and communication capabilities that provide access to the networked system 102 via the network 104 .
- the client device 110 comprises, but is not limited to, a remote device, work station, computer, general purpose computer, Internet appliance, hand-held device, wireless device, portable device, wearable computer, cellular or mobile phone, Personal Digital Assistant (PDA), smart phone, tablet, ultrabook, netbook, laptop, desktop, multi-processor system, microprocessor-based or programmable consumer electronic, game consoles, set-top box, network Personal Computer (PC), mini-computer, and so forth.
- the client device 110 comprises one or more of a touch screen, accelerometer, gyroscope, biometric sensor, camera, microphone, Global Positioning System (GPS) device, and the like.
- GPS Global Positioning System
- the client device 110 communicates with the network 104 via a wired or wireless connection.
- the network 104 comprises an ad hoc network, an intranet, an extranet, a Virtual Private Network (VPN), a Local Area Network (LAN), a wireless LAN (WLAN), a Wide Area Network (WAN), a wireless WAN (WWAN), a Metropolitan Area Network (MAN), a portion of the Internet, a portion of the Public Switched Telephone Network (PSTN), a cellular telephone network, a wireless network, a Wireless Fidelity (Wi-Fi®) network, a Worldwide Interoperability for Microwave Access (WiMax) network, another type of network, or any suitable combination thereof.
- VPN Virtual Private Network
- LAN Local Area Network
- WLAN wireless LAN
- WAN Wide Area Network
- WWAN wireless WAN
- MAN Metropolitan Area Network
- PSTN Public Switched Telephone Network
- PSTN Public Switched Telephone Network
- a cellular telephone network a wireless network
- Wi-Fi® Wireless Fide
- the client device 110 includes one or more of the applications (also referred to as “apps”) such as, but not limited to, web browsers, book reader apps (operable to read e-books), media apps (operable to present various media forms including audio and video), fitness apps, biometric monitoring apps, messaging apps, electronic mail (email) apps, and e-commerce site apps (also referred to as “marketplace apps”).
- the client application(s) 114 include various components operable to present information to the user and communicate with networked system 102 .
- the e-commerce site application may be configured to locally provide the user interface and at least some of the functionalities with the application configured to communicate with the networked system 102 , on an as needed basis, for data or processing capabilities not locally available (e.g., access to a database of items available for sale, to authenticate a user, to verify a method of payment).
- the client device 110 can use its web browser to access the e-commerce site (or a variant thereof) hosted on the networked system 102 .
- the user (e.g., the user 106 ) comprises a person, a machine, or other means of interacting with the client device 110 .
- the user 106 is not be part of the network architecture 100 , but interacts with the network architecture 100 via the client device 110 or another means.
- the user 106 provides input (e.g., touch screen input or alphanumeric input) to the client device 110 and the input is communicated to the networked system 102 via the network 104 .
- the networked system 102 in response to receiving the input from the user 106 , communicates information to the client device 110 via the network 104 to be presented to the user 106 . In this way, the user can interact with the networked system 102 using the client device 110 .
- An Application Program Interface (API) server 120 and a web server 122 may be coupled to, and provide programmatic and web interfaces respectively to, one or more application server(s) 140 .
- the application server(s) 140 may host one or more publication system(s) 142 , payment system(s) 144 , and an item discovery system 150 , each of which may comprise one or more modules or applications and each of which may be embodied as hardware, software, firmware, or any combination thereof.
- the application server(s) 140 are, in turn, shown to be coupled to one or more database server(s) 124 that facilitate access to one or more information storage repositories or database(s) 126 .
- the database(s) 126 are storage devices that store information to be posted (e.g., publications or listings) to the publication system(s) 142 .
- the database(s) 126 may also store digital goods information in accordance with some example embodiments.
- a third party application 132 executing on a third party server 130 , is shown as having programmatic access to the networked system 102 via the programmatic interface provided by the API server 120 .
- the third party application 132 utilizing information retrieved from the networked system 102 , may support one or more features or functions on a website hosted by the third party.
- the third party website may, for example, provide one or more promotional, marketplace, or payment functions that are supported by the relevant applications of the networked system 102 .
- the publication system(s) 142 may provide a number of publication functions and services to the users that access the networked system 102 .
- the payment system(s) 144 may likewise provide a number of functions to perform or facilitate payments and transactions. While the publication system(s) 142 and payment system(s) 144 are shown in FIG. 1A to both form part of the networked system 102 , it will be appreciated that, in alternative embodiments, each system 142 and 144 may form part of a payment service that is separate and distinct from the networked system 102 . In some example embodiments, the payment system(s) 144 may form part of the publication system(s) 142 .
- the item discovery system 150 provides functionality to identity suggested entities for the user to form a social network relationship with, suggest items the user may be interested in, facilitate a purchase pick-up time for a particular item at a local entity (e.g., a local merchant store), among other functions.
- the item discovery system 150 communicates with the client device 110 , the third party server(s) 130 (e.g., social network services), the publication system(s) 142 (e.g., retrieving listings), and the payment system(s) 144 (e.g., purchasing a listing).
- the item discovery system 150 is a part of the publication system(s) 142 . The item discovery system 150 will be discussed further in connection with FIG. 2 below.
- client-server-based network architecture 100 shown in FIG. 1A employs a client-server architecture
- present inventive subject matter is, of course, not limited to such an architecture, and may equally well find application in a distributed, or peer-to-peer, architecture system, for example.
- the various systems of the applications server(s) 140 e.g., the publication system(s) 142 and the payment system(s) 144
- the web client 112 may access the various systems of the networked system 102 (e.g., the publication system(s) 142 ) via the web interface supported by the web server 122 .
- the programmatic client 116 and client application(s) 114 may access the various services and functions provided by the networked system 102 via the programmatic interface provided by the API server 120 .
- the programmatic client 116 may, for example, be a seller application (e.g., the Turbo Lister application developed by eBay® Inc., of San Jose, Calif.) to enable sellers to author and manage listings on the networked system 102 in an off-line manner, and to perform batch-mode communications between the programmatic client 116 and the networked system 102 .
- FIG. 1B illustrates a block diagram showing components provided within the publication system(s) 142 , according to some embodiments.
- the publication system(s) 142 may comprise a market place system to provide market place functionality facilitating the purchase of items associated with item listings on an e-commerce website).
- the publication system(s) 142 may be hosted on dedicated or shared server machines that are communicatively coupled to enable communications between server machines.
- the components themselves are communicatively coupled (e.g., via appropriate interfaces) to each other and to various data sources, so as to allow information to be passed between the applications or so as to allow the applications to share and access common data.
- the components may access one or more database(s) 126 via the database server(s) 124 .
- the publication system(s) 142 may provide a number of publishing, listing, and price-setting mechanisms whereby a seller (also referred to as a “first user”) may list (or publish information concerning) goods or services for sale or barter, a buyer (also referred to as a “second user”) can express interest in or indicate a desire to purchase or barter such goods or services, and a transaction (such as a trade) may be completed pertaining to the goods or services.
- the publication system(s) 142 may comprise a publication engine 160 and a selling engine 162 .
- the publication engine 160 may publish information, such as item listings or product description pages, on the publication system(s) 142 .
- the selling engine 162 may comprise one or more fixed-price engines that support fixed-price listing and price setting mechanisms and one or more auction engines that support auction-format listing and price setting mechanisms (e.g., English, Dutch, Chinese, Double, Reverse auctions, etc.).
- the various auction engines may also provide a number of features in support of these auction-format listings, such as a reserve price feature whereby a seller may specify a reserve price in connection with a listing and a proxy-bidding feature whereby a bidder may invoke automated proxy bidding.
- the selling engine 162 may further comprise one or more deal engines that support merchant-generated offers for products and services.
- a listing engine 164 allows sellers to conveniently author listings of items or authors to author publications.
- the listings pertain to goods or services that a user (e.g., a seller) wishes to transact via the networked system 102 .
- the listings may be an offer, deal, coupon, or discount for the good or service.
- Each good or service is associated with a particular category.
- the listing engine 164 may receive listing data such as title, description, and aspect name/value pairs.
- each listing for a good or service may be assigned an item identifier.
- a user may create a listing that is an advertisement or other form of information publication.
- Listings may then be stored to one or more storage devices coupled to the networked system 102 (e.g., database(s) 126 ).
- Listings also may comprise product description pages that display a product and information (e.g., product title, specifications, and reviews) associated with the product.
- the product description page may include an aggregation of item listings that correspond to the product described on the product description page.
- the listing engine 164 also may allow buyers to conveniently author listings or requests for items desired to be purchased.
- the listings may pertain to goods or services that a user (e.g., a buyer) wishes to transact via the networked system 102 .
- Each good or service is associated with a particular category.
- the listing engine 164 may receive as much or as little listing data, such as title, description, and aspect name/value pairs, that the buyer is aware of about the requested item.
- the listing engine 164 may parse the buyer's submitted item information and may complete incomplete portions of the listing.
- the listing engine 164 may parse the description, extract key terms, and use those terms to make a determination of the identity of the item. Using the determined item identity, the listing engine 164 may retrieve additional item details for inclusion in the buyer item request. In some embodiments, the listing engine 164 may assign an item identifier to each listing for a good or service.
- the listing engine 164 allows sellers to generate offers for discounts on products or services.
- the listing engine 164 may receive listing data, such as the product or service being offered, a price or discount for the product or service, a time period for which the offer is valid, and so forth.
- the listing engine 164 permits sellers to generate offers from sellers' mobile devices. The generated offers may be uploaded to the networked system 102 for storage and tracking.
- Searching the publication system(s) 142 is facilitated by a searching engine 166 .
- the searching engine 166 enables keyword queries of listings published via the publication system(s) 142 .
- the searching engine 166 receives the keyword queries from a device of a user and conducts a review of the storage device storing the listing information. The review will enable compilation of a result set of listings that may be sorted and returned to the client device 110 of the user.
- the searching engine 166 may record the query (e.g., keywords) and any subsequent user actions and behaviors (e.g., navigations, selections, or click-throughs).
- the searching engine 166 also may perform a search based on a location of the user.
- a user may access the searching engine 166 via a mobile device and generate a search query. Using the search query and the user's location, the searching engine 166 may return relevant search results for products, services, offers, auctions, and so forth to the user.
- the searching engine 166 may identify relevant search results both in list form and graphically on a map. Selection of a graphical indicator on the map may provide additional details regarding the selected search result.
- the user may specify, as part of the search query, a radius or distance from the user's current location to limit search results.
- a navigation engine 168 allows users to navigate through various categories, catalogs, or inventory data structures according to which listings may be classified within the publication system(s) 142 .
- the navigation engine 168 allows a user to successively navigate down a category tree comprising a hierarchy of categories (e.g., the category tree structure) until a particular set of listings is reached.
- Various other navigation applications within the navigation engine 168 may be provided to supplement the searching and browsing applications.
- the navigation engine 168 may record the various user actions (e.g., clicks) performed by the user in order to navigate down the category tree.
- a personalization engine 170 provides functionality to personalize various aspects of user interactions with the networked system 102 .
- the user can define, provide, or otherwise communicate personalization settings used by the personalization engine 170 to determine interactions with the publication system(s) 142 .
- the personalization engine 170 determines personalization settings automatically and personalizes interactions based on the automatically determined settings. For example, the personalization engine 170 determines a native language of the user and automatically presents information in the native language.
- FIG. 2 is a block diagram of the item discovery system 150 that provides functionality to identity suggested entities for the user to form a social network relationship with, suggest items the user may be interested in, facilitate a purchase pick-up time for a particular item at a local entity (e.g., a local merchant store), among other functions, according to some example embodiments.
- the item discovery system 150 includes a presentation module 210 , a communication module 220 , a data module 230 , an item module 240 , an analysis module 250 , and a purchase module 260 . All, or some, of the modules 210 - 260 of FIG. 2 , communicate with each other, for example, via a network coupling, shared memory, and the like. It will be appreciated that each module of modules 210 - 260 may be implemented as a single module, combined into other modules, or further subdivided into multiple modules. Other modules not pertinent to example embodiments may also be included, but are not shown.
- the presentation module 210 provides various presentation and user interface functionality operable to interactively present and receive information from the user. For instance, the presentation module 210 can cause presentation, to the user, of various user interfaces that recommend social network relationships, present various items and item listings, receive personalization settings, and other user interfaces to facilitate the functionality described herein. In various implementations, the presentation module 210 presents or causes presentation of information (e.g., visually displaying information on a screen, acoustic output, haptic feedback). Interactively presenting information is intended to include the exchange of information between a particular device and the user.
- presentation module 210 provides various presentation and user interface functionality operable to interactively present and receive information from the user. For instance, the presentation module 210 can cause presentation, to the user, of various user interfaces that recommend social network relationships, present various items and item listings, receive personalization settings, and other user interfaces to facilitate the functionality described herein. In various implementations, the presentation module 210 presents or causes presentation of information (e.g., visually displaying information on a screen, acou
- the user may provide input to interact with the user interface in many possible manners such as alphanumeric, point based (e.g., cursor), tactile, or other input (e.g., touch screen, tactile sensor, light sensor, infrared sensor, biometric sensor, microphone, gyroscope, accelerometer, or other sensors), and the like.
- the presentation module 210 provides many other user interfaces to facilitate functionality described herein.
- “presenting” as used herein is intended to include communicating information or instructions to a particular device that is operable to perform presentation based on the communicated information or instructions.
- the communication module 220 provides various communications functionality and web services.
- the communication module 220 provides network communication such as communicating with the networked system 102 , the client device 110 , and the third party server(s) 130 .
- the network communication may operate over wired or wireless modalities.
- Web services are intended to include retrieving information from the third party server(s) 130 , the database(s) 126 , and the application server(s) 140 .
- information retrieved by the communication module 220 comprises data associated with the user (e.g., user profile information from an online account, social network service data associated with the user), data associated with one or more items listed on an e-commerce website (e.g., images of the item, reviews of the item, item price), or other data to facilitate the functionality described herein.
- data associated with the user e.g., user profile information from an online account, social network service data associated with the user
- data associated with one or more items listed on an e-commerce website e.g., images of the item, reviews of the item, item price
- the data module 230 provides functionality to store (e.g., save), access, or otherwise manage a wide variety of data. For example, the data module 230 accesses the entity data that associates items with entities (e.g., stored in the database(s) 126 ). The data module 230 may also access member data from one or more social networks corresponding to a particular entity or the user, item data from various sources (e.g., the publication system(s) 142 ), purchase histories of entities, or other data.
- entity data that associates items with entities
- the data module 230 may also access member data from one or more social networks corresponding to a particular entity or the user, item data from various sources (e.g., the publication system(s) 142 ), purchase histories of entities, or other data.
- the item module 240 provides functionality to manage item indications, according to some implementations. For instance, the item module 240 may receive an item indication generated in response to a user action. In other instances, the item module 240 may generate the item indication based on various user actions (e.g., the user inputting an item designation such as a “like” to a user interface).
- the analysis module 250 provides a variety of analysis functions to facilitate the functionality described herein. For example, the analysis module 250 identifies entities and items by analyzing various data. In a specific example, the analysis module 250 identifies the suggested entities based on items corresponding to the plurality of entities.
- the purchase module 260 provides functionality to facilitate the purchase of a particular item or item listing. For instance, the purchase module 260 may facilitate the purchase of an item at a local store including determining a pick-up time and location.
- FIG. 3 is a flow diagram illustrating an example method 300 for recommending suggested entities for the user to form the new social network relationship with based, at least in part, on a user indicated affinity for a particular item, according to some example embodiments.
- the operations of the method 300 may be performed by components of the item discovery system 150 .
- the data module 230 accesses entity data that associates respective items of a plurality of items with respective entities of a plurality of entities. It will be appreciated that the entities are intended to include businesses, organizations, people, and the like.
- all, or some, of the entities of the plurality of entities may be registered at one or more social network services (e.g., Facebook® or Twitter®). That is to say, a portion of the entities of the plurality of entities are members of one or more social network services.
- the user is a member or a registered user at one or more social network services, according to various implementations. For instance, if a particular entity comprises a person, the person may maintain a member profile on a particular social network service that includes member data corresponding to the person (e.g., posts, likes, social graph data, check-ins, images of the person).
- a particular entity comprises a business and the business maintains a member profile on a particular social network service that includes member data corresponding to the business (e.g., posts related to the business, news related to the business, contact information of the business, a location of the business such as an address, likes, social graph data).
- member data e.g., posts related to the business, news related to the business, contact information of the business, a location of the business such as an address, likes, social graph data.
- the entity data includes data that associates respective entities of the plurality of entities with various items. For example, if a particular entity comprises a person, the person may have provided an indication of liking a particular item (e.g., activating a “like button” associated with a particular item). In another example, the particular entity may be associated with a particular item via a post provided by the particular entity (e.g., a post mentioning the item determined by the analysis module 250 ). In another example, the particular entity may submit input to a user interface, provided by the presentation module 210 , configured to receive input associated with various items. In this example, the entity may browse various items presented in the user interface and activate user interface elements that, for example, indicate the entity “liking,” “wanting,” or “owning” a particular item (see FIG. 10 for an example).
- the data module 230 may generate the entity data by retrieving member data associated with the plurality of entities and determining associations between various entities of the plurality of entities and various items. For instance, the data module 230 may retrieve member data and analyze the member data to associate particular members with particular items (e.g., scanning likes, posts, or check-ins to identify an association between an entity and an item). In a specific example, the data module 230 may determine an association between a particular entity and items of a particular merchant store (e.g., a brick-and-mortar store) based on a check-in by the particular entity to the particular merchant store (e.g., the entity is associated with items of the merchant store based on the check-in to the store).
- a particular merchant store e.g., a brick-and-mortar store
- the data module 230 accesses purchase history data corresponding to the plurality of entities (e.g., from the publication system(s) 142 ). In this example, the data module 230 associates respective entities of the plurality of entities with respective items included in the purchase history.
- purchase history data e.g., from the publication system(s) 142 .
- the data module 230 associates respective entities of the plurality of entities with respective items included in the purchase history.
- many other schemes and techniques can be employed by the data module 230 to associate various entities with various items.
- the data module 230 stores, retains, or saves the entity data in a storage device such as database(s) 126 , the entity data to be subsequently accessed by the data module 230 .
- the data module 230 can store, retain, or save the entity data in association with an entity identifier, social network identifier, other identifiers, or any suitable combination thereof.
- the data module 230 accesses entity data corresponding to a particular entity among the plurality of entities via a lookup based on entity identifier, social network identifier, other identifiers, or any suitable combination thereof.
- the item module 240 receives an item indication, generated in response to a user action of a user, according to some example embodiments.
- the item indication indicates a user affinity for a mutual item.
- the mutual item is an item that is common or in-common between the user and a particular entity (e.g., both the user and the particular entity have an affinity for the mutual item).
- the mutual item is common to the user and one or more entities.
- the user action comprises user interface interactions, user activities (e.g., the user entering a merchant store), and so on.
- the user provides input to a user interface, provided by the presentation module 210 , configured to receive the item indication (the presentation module 210 communicates the item indication to the item module 240 ).
- the entity may browse various items presented in the user interface and activate user interface elements that, for example, indicate the entity “liking,” “wanting,” or “owning” a particular item (see FIG. 10 for an example).
- the item indication is automatically generated in response to the user action on behalf of the user.
- the data module 230 monitors, tracks, or otherwise observes user location data of the user (e.g., as determined by a GPS component of a mobile device of the user). If the user enters a particular merchant store, the analysis module 250 may identify the particular merchant store by matching a physical user location included in the user location data with the particular merchant store location (e.g., retrieved from the third party server(s) 130 ). In this example, the user is associated with items of the particular merchant store based on the user entering the particular merchant store or being in a physical vicinity (e.g., a configurable distance such as ten meters) of the particular merchant store.
- the user is carrying a mobile device operable to detect NFC beacons integrated with a particular merchant store.
- the mobile device of the user communicates detected beacons to the data module 230 and the data module 230 subsequently communicates the beacon detection to the item module 240 to automatically generate the item indication.
- the user is associated with the items of the particular merchant store based on the beacon detection.
- the item discovery system 150 may employ many other schemes and techniques to automatically generate the item indication based on the user action; the above examples are merely non-limiting examples.
- the analysis module 250 identifies a suggested entity or proposed entity from among the plurality of entities by matching the mutual item with respective items of the plurality of items.
- the suggested entity does not have a social network relationship on a particular social network service with the user.
- the analysis module 250 identifies the suggested entity based on entities that are associated with a same or similar item as the mutual item.
- the analysis module 250 identifies multiple suggested entities and ranks the multiple suggested entities according to relevance criteria. For instance, a particular entity may be associated with the mutual item, but the association may be tenuous. For example, an entity that “wants” or “owns” a particular item may have a stronger association to the particular item than an entity that simply “likes” the particular item. In this example, the particular entity that has the stronger association to the particular item may be ranked higher than entities with weaker associations to the particular item.
- the user may be associated with multiple mutual items and the analysis module 250 identifies the suggested entity based on an occurrence count of the multiple mutual items and items associated with a particular entity. For example, if a particular entity is associated with three out of four of the multiple mutual items, the analysis module 250 may identify or rank more highly that particular entity over another entity that is associated with one out of four of the mutual items. It will be appreciated that the analysis module 250 may employ many other schemes and techniques to identify the suggested entity based on the mutual item and the above are merely non-limiting examples.
- the presentation module 210 causes recommendation of a new social network relationship on the social network service between the user and the suggested entity.
- a social network relationship or social network connection e.g., a “friend,” “follower,” or “favorite friend” is a designation stored by the social network service that associates members of the social network service.
- the social network relationship provides additional features available on the social network service such as an increasing level of disclosure between members with a social network relationship.
- the presentation module 210 causes recommendation of the new social network relationship by causing presentation, to the user, of a user interface including an option to form the new social network relationship between the user and the suggested entity (see FIG. 12 for an example).
- the user may select the option to form the new social network relationship, received at the presentation module 210 , and the presentation module 210 may communicate a request to form the new social network relationship to the social network.
- the analysis module 250 determines that the user and the suggested entity are registered at, or are members of, the same social network service prior recommending the new social network relationship between the suggested entity and the user.
- a mutual social network service may be a particular social network service that the user and a particular entity are members of.
- the mutual social network service may be a social network service common to the user and one or more entities.
- the analysis module 250 identifies the mutual social network service by comparing social network services associated with the user to social network services associated with a particular entity.
- the presentation module 210 can cause recommendation of forming a new social network relationship on the multiple mutual social network services or a portion of the multiple social network services.
- the analysis module 250 may facilitate registering (e.g., becoming a member of a particular social network service) the user at a particular social network service in the case the suggested entity is a member that particular social network service and the user is not a member of that particular social network service. In this way, the analysis module 250 facilitates the forming of the new social network relationship between the user and the suggested entity on a particular social network service.
- FIG. 4 is a flow diagram 400 illustrating various communications in an example method for identifying suggested entities and recommending, to the user, forming a new social network relationship between the suggested entities and the user, according to some example embodiments.
- the data module 230 accesses the entity data.
- the data module 230 retrieves, accesses, or otherwise obtains member data associated with the plurality of entities from the social network service(s) 402 .
- the data module 230 may employ a portion of the member data to generate the entity data (e.g., associate entities with particular items based on “likes” by the entities).
- the social network service(s) 402 provide the member data.
- the data module 230 may communicate a request (e.g., an API call) to the social network service(s) 402 to provide member data corresponding to a particular entity.
- the social network service(s) 402 provide the information without authorization credentials corresponding to the entity (e.g., publicly available information).
- the data module 230 provides the authorization credentials to the social network service(s) 402 to obtain the member data corresponding to the particular entity (e.g., the particular entity inputs the authorization credentials into a user interface provided by the presentation module 210 ).
- the data module 230 stores the entity data in a storage device such as database(s) 126 .
- the item module 240 receives the item indication, as described above.
- the item indication is triggered based on the user action.
- the user action includes a user device such as user device(s) 404 .
- the user device(s) 404 trigger the item indication by communicating various data to the item module 240 . For instance, the user submits a “like” corresponding to an item to a user interface configured to receive the “like” provided by the presentation module 210 .
- the user device(s) 404 trigger the item indication by detecting a NFC beacon corresponding to a particular merchant store associated with various items (e.g., the user entering a sporting goods store and moving within range of a NFC beacon integrated into the sporting goods store).
- the item indication may be associated with multiple items (e.g., any item carried by the sporting goods store) and the item module 240 may identify an item among the multiple items based on user preferences or other user data.
- the user preferences may include item categories or brands specified by the user.
- the analysis module 250 identifies the suggested entity from among the plurality of entities, as discussed above.
- the presentation module 210 causes recommendation of the new social network relationship between the user and the suggested entity to the user.
- the presentation module 210 communicates a user interface including the recommendation to the user device(s) 404 .
- the user device(s) 404 present the recommendation to the user (e.g., display the user interface communicated by the presentation module 210 ).
- the presentation module 210 provides the user an option to form the new social network relationship.
- the user device(s) 404 receive a selection of the option to form the new social network relationship from the user.
- the presentation module 210 generates a user interface including a user interface element that, when activated, sends a request to the social network service(s) 402 (e.g., the mutual social network service), the request being a request to form the new social network relationship between the user and the suggested entity.
- the user provides user authorization credentials to effectuate the forming of the new social network relationship at the social network service(s) 402 .
- the user authorization credentials can be included in the request to form the new social network relationship.
- the presentation module 210 requests the user authorization credentials from the user (e.g., via a user interface configured to receive the user authorization credentials) which are stored fur subsequent authorizations (e.g., using a token or a cookie).
- the request may trigger the social network service(s) 402 to obtain the user authorization credential from the user (e.g., prompt the user to log in).
- the social network service(s) 402 forms the new social network relationship between the user and the suggested entity.
- FIG. 5 is a flow diagram illustrating an example method 500 for identifying and presenting an item to the user, according to some example embodiments.
- the operations of the method 500 may be performed by components of the item discovery system 150 .
- the analysis module 250 identifies a non-mutual item of the plurality of items corresponding to the suggested entity.
- the non-mutual item is an item of the suggested entity that is not in common, or non-common, between the user and the suggested entity, according to some implementations. For example, if the suggested entity has “liked” or otherwise designated ten items and the user has “liked” or otherwise designated two of those ten items, the analysis module 250 identifies at least one of the eight items not “liked” or otherwise designated by the user.
- the presentation module 210 causes presentation of the non-mutual item to the user.
- the presentation includes an option for the user to generate another item indication that indicates an affinity for the non-mutual item.
- the user browses items corresponding to the suggested entity and may designate (e.g., “like”) items that may be of interest to the user.
- the newly designated item may be the basis for identifying further suggested entities in the method 300 described above.
- FIG. 6 is a flow diagram illustrating an example method 600 for identifying and presenting an item to the user, according to some example embodiments.
- the operations of the method 600 may be performed by components of the item discovery system 150 .
- the analysis module 250 identifies a contact entity of the user.
- the contact entity is an entity registered at, or a member of, the social network site that previously formed a social network relationship with the user on the social network site (e.g., friends, followers of the user).
- the user is a member of a user social network service and the user's “friends,” “follows,” or similar social network designations (e.g., designations stored in social graph data on the user social network service) on the user social network service are contact entities of the user in this instance.
- the analysis module 250 identifies the contact entity by accessing social graph data stores at the social network service.
- the data module 230 accesses a contact item corresponding to the contact entity. For example, once the analysis module 250 identifies the contact entity, the data module 230 accesses the entity data corresponding to the contact entity, if it exists, that is stored in the database(s) 126 (e.g., via a lookup of the contact entity using an entity identifier, social network member identifier, or other identifier). In another example, the analysis module 250 dynamically determines the contact item based on an analysis of member data corresponding to the network entity. For instance, the member data corresponding to the identified contact entity may include posts, check-ins, and the like that the analysis module 250 may analyze to identify the contact item.
- the presentation module 210 causes presentation of the contact item to the user. For instance, the presentation module 210 communicates a user interface including a description of the contact item to the user device with instructions to present the user interface to the user.
- the user may browse items associated with social network contacts or connections on the social network service of the user.
- the user may designate (e.g., “like,” or “want”) the contact item that may be of interest to the user.
- the newly designated item may be the basis for identifying further suggested entities in the method 300 described above.
- FIG. 7 is a flow diagram illustrating a method for generating an item indication based on a user action, according to some example embodiments.
- the operations of the method 700 may be performed by components of the item discovery system 150 .
- the data module 230 monitors user location data, received from a user device of the user.
- the user location data includes a physical user location of the user.
- the data module 230 may access GPS data provided by a mobile device of the user.
- the data module 230 accesses local entity location data that includes physical entity locations of local entities.
- predefined physical entity locations may be stored in a storage device such as database(s) 126 and accessed by the data module 230 .
- the analysis module 250 identifies a local entity from among the plurality of entities by matching the user location data with the entity location data. For example, the analysis module 250 may compare the physical user location to the physical entity locations to identity entities within a distance of the physical user location (e.g., within 20 feet of the physical user location). The distance may be configurable.
- the data module 230 accesses local item data corresponding to the local entity.
- the data module 230 may access the local item data from the entity data, the third party servers 130 , or elsewhere.
- the local item data comprises a plurality of local items.
- the local entity may be a local merchant store or local business that the user walked by or entered.
- the item module 240 generates the item indication that indicates a user affinity for a local item included in the plurality of local items.
- the user may enter a local sporting goods store and on that basis, the item module 240 may generate an item indication for a particular sporting goods item associated with the sporting goods store.
- the item module 240 may analyze user data or user preference to determine an item among the local items and generate the item indication corresponding to the determined item.
- the purchase module 260 provides the user with an option to purchase the local item from the local entity.
- the presentation module 210 causes presentation of a user interface configured to provide the user with option to purchase the local item (see FIG. 14 for an example).
- the purchase module 260 based on receiving a selection of the option to purchase the local item, facilitates the purchase of the local item including determining a pick-up time and location for the local item.
- FIG. 8 is a depiction 800 of the user triggering an item indication based on geographic location data received from a device of the user, according to some example embodiments.
- Scene 802 depicts a local store 804 , a local store radius 806 , a user radius 808 , a user 810 , and a communication coupling 812 .
- the user 810 is carrying a mobile device operable to provide location data (e.g., via a GPS component of the mobile device).
- the mobile device of the user may be communicatively coupled to the network 104 via the communication coupling 812 .
- the mobile device of the user 810 may communicate with the networked system 102 that includes the item discovery system 150 , according to some implementations.
- the mobile device of the user 810 is providing user location data to the data module 230 in real-time.
- the analysis module 250 may determine the local entity in real-time.
- real-time data is intended to include data associated with an event currently happening, such as, for example, the real-time data communicated to the data module 230 after a delay interval (e.g., due to transmission delay or other delays such as being temporarily stored at an intermediate device) between capturing the data and the data module 230 receiving the data.
- the item module 240 may generate the item indication associated with the local store 804 .
- the analysis module 250 determines the suggested entity based, at least in part, on the user location data. For instance, if the user 810 moves within the local store radius 806 , the analysis module 250 may identify the local store 804 as the suggested entity.
- FIGS. 9-15 depict example user interfaces for interactively presenting information to the user.
- FIGS. 9-15 depict specific example user interfaces and user interface elements, these are merely non-limiting examples and many other alternate user interfaces and user interface elements may be generated by the presentation module 210 and presented to the user. It will be noted that alternate presentations of the displays of FIGS. 9-15 may include additional information, graphics, options, and so forth; other presentations may include less information, or may provide abridged information for easy use by the user.
- FIG. 9 depicts an example device 900 (e.g., a smart phone) displaying an example user interface 910 .
- the user interface 910 includes section 920 that provides profile information to the user such as number of connections the user currently has or other profile information.
- the user interface 910 includes user interface elements 930 , 940 , 950 , and 960 that may indicate entity data corresponding to the user such as number of items the user owns, number of item “likes,” or number of item “wants.”
- Activating user interface element 970 may present another user interface that includes recommended items to the user (e.g., items associated with contact entities of the user or items associated with suggested entities).
- the user interface 910 includes section 980 that indicates recent activity.
- user interface element 990 indicates activity associated with a particular entity.
- the entity is a person named “Melissa Miller,” although in other instances the entity may be a business.
- FIG. 10 depicts an example device 1000 displaying an example user interface 1010 that includes user interface element 1020 and item listings 1030 and 1040 , according to some example embodiments.
- the user interface 1010 displays an interactive scrollable list of item listings (e.g., listings 1030 and 1040 ) to the user.
- the user interface element 1020 provides an option to sort the item listings 1030 and 1040 , or otherwise navigate the item listings 1030 and 1040 , according to various schemes such as sorting based on recentness (e.g., based on temporal information corresponding to respective item listings), item price, distance from the user, relevance, or other metrics.
- the user interface element 1020 displays item listings according to a particular designation such as “wants,” “likes,” or “haves.”
- the user may interact with the item listings by activating a particular item listing.
- a shaded corner may indicate an activated item listing, for example.
- the user may select the “likes” user interface element to activate the user interface element associated with an item the user has an affinity for.
- the user “liking” a particular item listing may trigger the item indication discussed above.
- the item listings 1030 and 1040 include various portions of item data such as an item image, price, merchant, brand, other information retrieved from the publication system(s) 142 , and the like.
- activating a particular item listing presents additional information corresponding to the particular item listing.
- FIG. 11 depicts an example device 1100 displaying an example user interface 1110 .
- the user interface 1110 is displayed in response to the user activating a user interface element corresponding to an item of the user interface 1010 (e.g., tapping a particular item to view more detailed information about the item).
- User interface element 1120 may provide information associated with an item such as an item image, price, merchant, brand, other information retrieved from the publication system(s) 142 , and the like.
- User interface element 1130 may provide the user with an option to purchase the item.
- User interface element 1140 may provide the user with an option to designate the item associated with user interface element 1120 as “wanted.”
- Section 1150 may display a scrollable list of entities that have designated the item associated with user interface element 1120 as wanted.
- the user may browse the list of entities and identify an entity to form a new social network relationship with.
- User interface element 1160 provides information corresponding to the group of entities displayed in section 1150 .
- the user interface element 1160 indicates the number of entities that designated the item associated with user interface element 1120 as “wanted.”
- User interface element 1170 indicates a particular entity among the entities that designated the item associated with user interface element 1120 as “wanted.”
- activating the user interface element 1170 provides additional information corresponding to the particular entity or initiates a request to form a social network relationship with particular entity.
- User interface element 1180 provides an option to display additional entities that designated the item associated with user interface element 1120 as “wanted.”
- FIG. 12 depicts an example device 1200 displaying an example user interface 1210 .
- User interface element 1220 may provide information associated with an item such as an item image, price, merchant, brand, other information retrieved from the publication system(s) 142 , and the like.
- User interface element 1230 indicates item designations provided by the plurality of entities. In this example, 92 entities designated “wants,” 482 entities designated “likes,” and 43 designated “haves.” Such information may assist the user in determining how popular among the plurality of entities a particular item is.
- the user interface 1210 may present information associated with entities that have designated the item associated with user interface element 1220 .
- user interface element 1240 may be a particular entity among the plurality of entities that “likes” the item associated with user interface element 1220 .
- the user may form a social network relationship or connect with the entity associated with user interface element 1240 by activating user interface element 1250 . In this way, the user may form social network relationships with entities based on a particular item.
- FIG. 13 depicts an example device 1300 displaying an example user interface 1310 .
- User interface element 1320 may provide an option to enable personalization settings or disable personalization settings.
- User interface elements 1330 and 1350 are item categories that may be specified as interesting to the user. Specifying a particular item category as being of interest may be used in the various analyses described above to identify entities and items that the user is interested in.
- User interface element 1340 may indicate that the user has designated a particular item category as being of interest.
- FIG. 13 is directed towards personalization settings including item categories, it will be appreciated that many other types of personalization settings may be inputted by the user.
- FIG. 14 depicts an example device 1400 displaying an example user interface 1410 that includes an item listing 1420 , user interface element 1430 , and user interface element 1440 , according to some example embodiments.
- the item listing 1420 includes various portions of item data such as an item image, price, merchant, brand, other information retrieved from the publication system(s) 142 , and the like.
- activating the item listing 1420 presents additional information corresponding to the item listing 1420 .
- activating the user interface element 1430 provides the user the option to purchase the item corresponding to the item listing 1420 (e.g., activating the user interface element 1440 may facilitate a transaction for the item, for example, using the payment system(s) 144 ).
- user interface element 1440 includes a map with locations of the item listing 1420 or a merchant 1460 that sells the item corresponding to the item listing 1420 .
- the current user location 1450 is determined (e.g., via a GPS component of a mobile device of the user) and used to determine nearby merchants that sell the item corresponding to the item listing 1420 .
- FIG. 15 depicts an example device 1500 displaying an example user interface 1510 that includes a notification 1520 , according to some example embodiments.
- the presentation module 210 causes presentation of the notification 1520 to the user.
- the presentation module 210 communicates, to the device 1500 , instructions to present the notification 1520 .
- the instructions include notification content, generated by the presentation module 210 , such as a message (e.g., pertinent information) to be presented to the user.
- the notification 1520 comprises a text message, such as Short Message Service (SMS) messages, Multimedia Messaging Service (MMS), Enhanced Messaging Service (EMS), and so forth.
- SMS Short Message Service
- MMS Multimedia Messaging Service
- EMS Enhanced Messaging Service
- the notification 1520 comprises a push notification or another similar type of notification.
- the notification 1520 comprises interactive user interface elements such as user interface elements 1530 .
- the user interface elements 1530 provide the user an option to make a selection (e.g., through an SMS system, mobile application).
- the notification 1520 provides the user the option to form the new social network relationship with a particular merchant.
- activating the user interface element 1530 communicates a request to the social network service to form the new social network relationship between the user and a particular entity.
- Modules may constitute either software modules (e.g., code embodied on a machine-readable medium or in a transmission signal) or hardware modules.
- a “hardware module” is a tangible unit capable of performing certain operations and may be configured or arranged in a certain physical manner.
- one or more computer systems e.g., a standalone computer system, a client computer system, or a server computer system
- one or more hardware modules of a computer system e.g., a processor or a group of processors
- software e.g., an application or application portion
- a hardware module may be implemented mechanically, electronically, or any suitable combination thereof.
- a hardware module may include dedicated circuitry or logic that is permanently configured to perform certain operations.
- a hardware module may be a special-purpose processor, such as a Field-Programmable Gate Array (FPGA) or an Application Specific Integrated Circuit (ASIC).
- a hardware module may also include programmable logic or circuitry that is temporarily configured by software to perform certain operations.
- a hardware module may include software encompassed within a general-purpose processor or other programmable processor. It will be appreciated that the decision to implement a hardware module mechanically, in dedicated and permanently configured circuitry, or in temporarily configured circuitry (e.g., configured by software) may be driven by cost and time considerations.
- hardware module should be understood to encompass a tangible entity, be that an entity that is physically constructed, permanently configured (e.g., hardwired), or temporarily configured (e.g., programmed) to operate in a certain manner or to perform certain operations described herein.
- “hardware-implemented module” refers to a hardware module. Considering embodiments in which hardware modules are temporarily configured (e.g., programmed), each of the hardware modules need not be configured or instantiated at any one instance in time. For example, where a hardware module comprises a general-purpose processor configured by software to become a special-purpose processor, the general-purpose processor may be configured as respectively different special-purpose processors (e.g., comprising different hardware modules) at different times. Software may accordingly configure a particular processor or processors, for example, to constitute a particular hardware module at one instance of time and to constitute a different hardware module at a different instance of time.
- Hardware modules can provide information to, and receive information from, other hardware modules. Accordingly, the described hardware modules may be regarded as being communicatively coupled. Where multiple hardware modules exist contemporaneously, communications may be achieved through signal transmission (e.g., over appropriate circuits and buses) between or among two or more of the hardware modules. In embodiments in which multiple hardware modules are configured or instantiated at different times, communications between such hardware modules may be achieved, for example, through the storage and retrieval of information in memory structures to which the multiple hardware modules have access. For example, one hardware module may perform an operation and store the output of that operation in a memory device to which it is communicatively coupled. A further hardware module may then, at a later time, access the memory device to retrieve and process the stored output. Hardware modules may also initiate communications with input or output devices, and can operate on a resource (e.g., a collection of information).
- a resource e.g., a collection of information
- processors may be temporarily configured (e.g., by software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such processors may constitute processor-implemented modules that operate to perform one or more operations or functions described herein.
- processor-implemented module refers to a hardware module implemented using one or more processors.
- the methods described herein may be at least partially processor-implemented, with a particular processor or processors being an example of hardware.
- a particular processor or processors being an example of hardware.
- the operations of a method may be performed by one or more processors or processor-implemented modules.
- the one or more processors may also operate to support performance of the relevant operations in a “cloud computing” environment or as a “software as a service” (SaaS).
- SaaS software as a service
- at least some of the operations may be performed by a group of computers (as examples of machines including processors), with these operations being accessible via a network (e.g., the Internet) and via one or more appropriate interfaces (e.g., an Application Program Interface (API)).
- API Application Program Interface
- processors may be distributed among the processors, not only residing within a single machine, but deployed across a number of machines.
- the processors or processor-implemented modules may be located in a single geographic location (e.g., within a home environment, an office environment, or a server farm). In other example embodiments, the processors or processor-implemented modules may be distributed across a number of geographic locations.
- FIG. 16 illustrates an example mobile device 1600 executing a mobile operating system (e.g., iOSTM, AndroidTM, Windows® Phone, or other mobile operating systems), according to example embodiments.
- the mobile device 1600 includes a touch screen operable to receive tactile data from a user 1602 .
- the user 1602 may physically touch 1604 the mobile device 1600 , and in response to the touch 1604 , the mobile device 1600 determines tactile data such as touch location, touch force, or gesture motion.
- the mobile device 1600 displays a home screen 1606 (e.g., Springboard on iOSTM) operable to launch applications or otherwise manage various aspects of the mobile device 1600 .
- a home screen 1606 e.g., Springboard on iOSTM
- the home screen 1606 provides status information such as battery life, connectivity, or other hardware statuses.
- the user 1602 activates user interface elements by touching an area occupied by a respective user interface element. In this manner, the user 1602 may interact with the applications. For example, touching the area occupied by a particular icon included in the home screen 1606 causes launching of an application corresponding to the particular icon.
- applications may be executing on the mobile device 1600 such as native applications (e.g., applications programmed in Objective-C running on iOSTM or applications programmed in Java running on AndroidTM), mobile web applications (e.g., Hyper Text Markup Language-5 (HTML5)), or hybrid applications (e.g., a native shell application that launches an HTML5 session).
- native applications e.g., applications programmed in Objective-C running on iOSTM or applications programmed in Java running on AndroidTM
- mobile web applications e.g., Hyper Text Markup Language-5 (HTML5)
- hybrid applications e.g., a native shell application that launches an HTML5 session.
- the mobile device 1600 includes a messaging app 1620 , audio recording app 1622 , a camera app 1624 , a book reader app 1626 , a media app 1628 , a fitness app 1630 , a file management app 1632 , a location app 1634 , a browser app 1636 , a settings app 1638 , a contacts app 1640 , a telephone call app 1642 , or other apps (e.g., gaming apps, social networking apps, biometric monitoring apps), a third party app 1644 .
- apps e.g., gaming apps, social networking apps, biometric monitoring apps
- FIG. 17 is a block diagram 1700 illustrating an architecture of software 1702 , which may be installed on any one or more of the devices described above.
- FIG. 17 is merely a non-limiting example of a software architecture, and it will be appreciated that many other architectures may be implemented to facilitate the functionality described herein.
- the software 1702 may be implemented by hardware such as machine 1800 of FIG. 18 that includes processors 1810 , memory 1830 , and I/O components 1850 .
- the software 1702 may be conceptualized as a stack of layers where each layer may provide a particular functionality.
- the software 1702 includes layers such as an operating system 1704 , libraries 1706 , frameworks 1708 , and applications 1710 .
- the applications 1710 invoke application programming interface (API) calls 1712 through the software stack and receive messages 1714 in response to the API calls 1712 , according to some implementations.
- API application programming interface
- the operating system 1704 manages hardware resources and provides common services.
- the operating system 1704 includes, for example, a kernel 1720 , services 1722 , and drivers 1724 .
- the kernel 1720 acts as an abstraction layer between the hardware and the other software layers in some implementations.
- the kernel 1720 provides memory management, processor management (e.g., scheduling), component management, networking, security settings, among other functionality.
- the services 1722 may provide other common services for the other software layers.
- the drivers 1724 may be responsible for controlling or interfacing with the underlying hardware.
- the drivers 1724 may include display drivers, camera drivers, Bluetooth® drivers, flash memory drivers, serial communication drivers (e.g., Universal Serial Bus (USB) drivers), Wi-Fi® drivers, audio drivers, power management drivers, and so forth.
- USB Universal Serial Bus
- the libraries 1706 provide a low-level common infrastructure that may be utilized by the applications 1710 .
- the libraries 1706 may include system 1730 libraries (e.g., C standard library) that may provide functions such as memory allocation functions, string manipulation functions, mathematic functions, and the like.
- the libraries 1706 may include API libraries 1732 such as media libraries (e.g., libraries to support presentation and manipulation of various media formats such as Moving Picture Experts Group-4 (MPEG4), Advanced Video Coding (H.264 or AVC), Moving Picture Experts Group Layer-3 (MP3), Advanced Audio Coding (AAC), Adaptive Multi-Rate (AMR) audio codec, Joint Photographic Experts Group (JPEG or JPG), Portable Network Graphics (PNG)), graphics libraries (e.g., an OpenGL framework used to render in two dimensions (2D) and three dimensions (3D) in a graphic content on a display), database libraries (e.g., SQLite to provide various relational database functions), web libraries (e.g., WebKit to provide web browsing functionality), and the like.
- the libraries 1706 may also include a wide variety of other libraries 1734 to provide many other APIs to the applications 1710 .
- the frameworks 1708 provide a high-level common infrastructure that may be utilized by the applications 1710 , according to some implementations.
- the frameworks 1708 provide various graphic user interface (GUI) functions, high-level resource management, high-level location services, and so forth.
- GUI graphic user interface
- the frameworks 1708 may provide abroad spectrum of other APIs that may be utilized by the applications 1710 , some of which may be specific to a particular operating system or platform.
- the applications 1710 include a home application 1750 , a contacts application 1752 , a browser application 1754 , a book reader application 1756 , a location application 1758 , a media application 1760 , a messaging application 1762 , a game application 1764 , and a broad assortment of other applications such as third party application 1766 .
- the applications 1710 are programs that execute functions defined in the programs.
- Various programming languages may be employed to create one or more of the applications 1710 , structured in a variety of manners, such as object-orientated programming languages (e.g., Objective-C, Java, or C++) or procedural programming languages (e.g., C or assembly language).
- the third party application 1766 may be mobile software running on a mobile operating system such as iOSTM, AndroidTM, Windows® Phone, or other mobile operating systems.
- the third party application 1766 may invoke the API calls 1712 provided by the mobile operating system 1704 to facilitate functionality described herein.
- FIG. 18 is a block diagram illustrating components of a machine 1800 , according to some example embodiments, able to read instructions from a machine-readable medium (e.g., a machine-readable storage medium) and perform any one or more of the methodologies discussed herein.
- FIG. 18 shows a diagrammatic representation of the machine 1800 in the example form of a computer system, within which instructions 1816 (e.g., software, a program, an application, an applet, an app, or other executable code) for causing the machine 1800 to perform any one or more of the methodologies discussed herein may be executed.
- the machine 1800 operates as a standalone device or may be coupled (e.g., networked) to other machines.
- the machine 1800 may operate in the capacity of a server machine or a client machine in a server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment.
- the machine 1800 may comprise, but not be limited to, a server computer, a client computer, a personal computer (PC), a tablet computer, a laptop computer, a netbook, a set-top box (STB), a personal digital assistant (PDA), an entertainment media system, a cellular telephone, a smart phone, a mobile device, a wearable device (e.g., a smart watch), a smart home device (e.g., a smart appliance), other smart devices, a web appliance, a network router, a network switch, a network bridge, or any machine capable of executing the instructions 1816 , sequentially or otherwise, that specify actions to be taken by machine 1800 .
- the term “machine” shall also be taken to include a collection of machines
- the machine 1800 may include processors 1810 , memory 1830 , and I/O components 1850 , which may be configured to communicate with each other via a bus 1802 .
- the processors 1810 e.g., a Central Processing Unit (CPU), a Reduced Instruction Set Computing (RISC) processor, a Complex Instruction Set Computing (CISC) processor, a Graphics Processing Unit (GPU), a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Radio-Frequency Integrated Circuit (RFIC), another processor, or any suitable combination thereof
- the processors 1810 may include, for example, processor 1812 and processor 1814 that may execute instructions 1816 .
- processor is intended to include multi-core processors that may comprise two or more independent processors (also referred to as “cores”) that may execute instructions contemporaneously.
- FIG. 18 shows multiple processors, the machine 1800 may include a single processor with a single core, a single processor with multiple cores (e.g., a multi-core process), multiple processors with a single core, multiple processors with multiples cores, or any combination thereof.
- the memory 1830 may include a main memory 1832 , a static memory 1834 , and a storage unit 1836 accessible to the processors 1810 via the bus 1802 .
- the storage unit 1836 may include a machine-readable medium 1838 on which is stored the instructions 1816 embodying any one or more of the methodologies or functions described herein.
- the instructions 1816 may also reside, completely or at least partially, within the main memory 1832 , within the static memory 1834 , within at least one of the processors 1810 (e.g., within the processor's cache memory), or any suitable combination thereof, during execution thereof by the machine 1800 . Accordingly, in various implementations, the main memory 1832 , static memory 1834 , and the processors 1810 are considered as machine-readable media 1838 .
- the term “memory” refers to a machine-readable medium 1838 able to store data temporarily or permanently and may be taken to include, but not be limited to, random-access memory (RAM), read-only memory (ROM), buffer memory, flash memory, and cache memory. While the machine-readable medium 1838 is shown in an example embodiment to be a single medium, the term “machine-readable medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, or associated caches and servers) able to store instructions 1816 .
- machine-readable medium shall also be taken to include any medium, or combination of multiple media, that is capable of storing instructions (e.g., instructions 1816 ) for execution by a machine (e.g., machine 1800 ), such that the instructions, when executed by one or more processors of the machine 1800 (e.g., processors 1810 ), cause the machine 1800 to perform any one or more of the methodologies described herein.
- a “machine-readable medium” refers to a single storage apparatus or device, as well as “cloud-based” storage systems or storage networks that include multiple storage apparatus or devices.
- machine-readable medium shall accordingly be taken to include, but not be limited to, one or more data repositories in the form of a solid-state memory (e.g., flash memory), an optical medium, a magnetic medium, other non-volatile memory (e.g., Erasable Programmable Read-Only Memory (EPROM)), or any suitable combination thereof.
- solid-state memory e.g., flash memory
- EPROM Erasable Programmable Read-Only Memory
- machine-readable medium specifically excludes non-statutory signals per se.
- the I/O components 1850 include a wide variety of components to receive input, provide output, produce output, transmit information, exchange information, capture measurements, and so on. In general, it will be appreciated that the I/O components 1850 may include many other components that are not shown in FIG. 18 .
- the I/O components 1850 are grouped according to functionality merely for simplifying the following discussion and the grouping is in no way limiting. In various example embodiments, the I/O components 1850 include output components 1852 and input components 1854 .
- the output components 1852 include visual components (e.g., a display such as a plasma display panel (PDP), a light emitting diode (LED) display, a liquid crystal display (LCD), a projector, or a cathode ray tube (CRT)), acoustic components (e.g., speakers), haptic components (e.g., a vibratory motor), other signal generators, and so forth.
- visual components e.g., a display such as a plasma display panel (PDP), a light emitting diode (LED) display, a liquid crystal display (LCD), a projector, or a cathode ray tube (CRT)
- acoustic components e.g., speakers
- haptic components e.g., a vibratory motor
- the input components 1854 include alphanumeric input components (e.g., a keyboard, a touch screen configured to receive alphanumeric input, a photo-optical keyboard, or other alphanumeric input components), point based input components (e.g., a mouse, a touchpad, a trackball, a joystick, a motion sensor, or other pointing instrument), tactile input components (e.g., a physical button, a touch screen that provides location and force of touches or touch gestures, or other tactile input components), audio input components (e.g., a microphone), and the like.
- alphanumeric input components e.g., a keyboard, a touch screen configured to receive alphanumeric input, a photo-optical keyboard, or other alphanumeric input components
- point based input components e.g., a mouse, a touchpad, a trackball, a joystick, a motion sensor, or other pointing instrument
- tactile input components e.g., a physical button, a touch
- the I/O components 1850 include biometric components 1856 , motion components 1858 , environmental components 1860 , or position components 1862 among a wide array of other components.
- the biometric components 1856 include components to detect expressions (e.g., hand expressions, facial expressions, vocal expressions, body gestures, or eye tracking), measure biosignals (e.g., blood pressure, heart rate, body temperature, perspiration, or brain waves), identify a person (e.g., voice identification, retinal identification, facial identification, fingerprint identification, or electroencephalogram based identification), and the like.
- the motion components 1858 include acceleration sensor components (e.g., accelerometer), gravitation sensor components, rotation sensor components (e.g., gyroscope), and so forth.
- the environmental components 1860 include, for example, illumination sensor components (e.g., photometer), temperature sensor components (e.g., one or more thermometer that detect ambient temperature), humidity sensor components, pressure sensor components (e.g., barometer), acoustic sensor components (e.g., one or more microphones that detect background noise), proximity sensor components (e.g., infrared sensors that detect nearby objects), gas sensors (e.g., machine olfaction detection sensors, gas detection sensors to detection concentrations of hazardous gases for safety or to measure pollutants in the atmosphere), or other components that may provide indications, measurements, or signals corresponding to a surrounding physical environment.
- illumination sensor components e.g., photometer
- temperature sensor components e.g., one or more thermometer that detect ambient temperature
- humidity sensor components e.g., pressure sensor components (e.g
- the position components 1862 include location sensor components (e.g., a Global Position System (GPS) receiver component), altitude sensor components (e.g., altimeters or barometers that detect air pressure from which altitude may be derived), orientation sensor components (e.g., magnetometers), and the like.
- location sensor components e.g., a Global Position System (GPS) receiver component
- altitude sensor components e.g., altimeters or barometers that detect air pressure from which altitude may be derived
- orientation sensor components e.g., magnetometers
- the I/O components 1850 may include communication components 1864 operable to couple the machine 1800 to a network 1880 or devices 1870 via coupling 1882 and coupling 1872 , respectively.
- the communication components 1864 include a network interface component or another suitable device to interface with the network 1880 .
- communication components 1864 include wired communication components, wireless communication components, cellular communication components, Near Field Communication (NFC) components, Bluetooth® components (e.g., Bluetooth® Low Energy), Wi-Fi® components, and other communication components to provide communication via other modalities.
- the devices 1870 may be another machine or any of a wide variety of peripheral devices (e.g., a peripheral device coupled via a Universal Serial Bus (USB)).
- USB Universal Serial Bus
- the communication components 1864 detect identifiers or include components operable to detect identifiers.
- the communication components 1864 include Radio Frequency Identification (RFID) tag reader components, NFC smart tag detection components, optical reader components (e.g., an optical sensor to detect a one-dimensional bar codes such as Universal Product Code (UPC) bar code, multi-dimensional bar codes such as Quick Response (QR) code, Aztec code, Data Matrix, Dataglyph, MaxiCode, PDF417, Ultra Code, Uniform Commercial Code Reduced Space Symbology (UCC RSS)-2D bar code, and other optical codes), acoustic detection components (e.g., microphones to identify tagged audio signals), or any suitable combination thereof.
- RFID Radio Frequency Identification
- NFC smart tag detection components e.g., NFC smart tag detection components
- optical reader components e.g., an optical sensor to detect a one-dimensional bar codes such as Universal Product Code (UPC) bar code, multi-dimensional bar codes such as Quick Response (QR) code, Aztec code
- IP Internet Protocol
- Wi-Fi® Wireless Fidelity
- one or more portions of the network 1880 may be an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless WAN (WWAN), a metropolitan area network (MAN), the Internet, a portion of the Internet, a portion of the Public Switched Telephone Network (PSTN), a plain old telephone service (POTS) network, a cellular telephone network, a wireless network, a Wi-Fi® network, another type of network, or a combination of two or more such networks.
- VPN virtual private network
- LAN local area network
- WLAN wireless LAN
- WAN wide area network
- WWAN wireless WAN
- MAN metropolitan area network
- PSTN Public Switched Telephone Network
- POTS plain old telephone service
- the network 1880 or a portion of the network 1880 may include a wireless or cellular network and the coupling 1882 may be a Code Division Multiple Access (CDMA) connection, a Global System for Mobile communications (GSM) connection, or other type of cellular or wireless coupling.
- CDMA Code Division Multiple Access
- GSM Global System for Mobile communications
- the coupling 1882 may implement any of a variety of types of data transfer technology, such as Single Carrier Radio Transmission Technology (1 ⁇ RTT), Evolution-Data Optimized (EVDO) technology, General Packet Radio Service (GPRS) technology, Enhanced Data rates for GSM Evolution (EDGE) technology, third Generation Partnership Project (3GPP) including 3G, fourth generation wireless (4G) networks, Universal Mobile Telecommunications System (UMTS), High Speed Packet Access (HSPA), Worldwide Interoperability for Microwave Access (WiMAX), Long Term Evolution (LTE) standard, others defined by various standard setting organizations, other long range protocols, or other data transfer technology.
- RTT Single Carrier Radio Transmission Technology
- GPRS General Packet Radio Service
- EDGE Enhanced Data rates for GSM Evolution
- 3GPP Third Generation Partnership Project
- 4G fourth generation wireless (4G) networks
- Universal Mobile Telecommunications System (UMTS) Universal Mobile Telecommunications System
- HSPA High Speed Packet Access
- WiMAX Worldwide Interoperability for Microwave Access
- LTE
- the instructions 1816 are transmitted or received over the network 1880 using a transmission medium via a network interface device (e.g., a network interface component included in the communication components 1864 ) and utilizing any one of a number of well-known transfer protocols (e.g., Hypertext Transfer Protocol (HTTP)).
- a network interface device e.g., a network interface component included in the communication components 1864
- HTTP Hypertext Transfer Protocol
- the instructions 1816 are transmitted or received using a transmission medium via the coupling 1872 (e.g., a peer-to-peer coupling) to devices 1870 .
- the term “transmission medium” shall be taken to include any intangible medium that is capable of storing, encoding, or carrying instructions 1816 for execution by the machine 1800 , and includes digital or analog communications signals or other intangible medium to facilitate communication of such software.
- the machine-readable medium 1838 is non-transitory (in other words, not having any transitory signals) in that it does not embody a propagating signal.
- labeling the machine-readable medium 1838 as “non-transitory” should not be construed to mean that the medium is incapable of movement; the medium should be considered as being transportable from one physical location to another.
- the machine-readable medium 1838 is tangible, the medium may be considered to be a machine-readable device.
- inventive subject matter has been described with reference to specific example embodiments, various modifications and changes may be made to these embodiments without departing from the broader scope of embodiments of the present disclosure.
- inventive subject matter may be referred to herein, individually or collectively, by the term “invention” merely for convenience and without intending to voluntarily limit the scope of this application to any single disclosure or inventive concept if more than one is, in fact, disclosed.
- the term “or” may be construed in either an inclusive or exclusive sense. Moreover, plural instances may be provided for resources, operations, or structures described herein as a single instance. Additionally, boundaries between various resources, operations, modules, engines, and data stores are somewhat arbitrary, and particular operations are illustrated in a context of specific illustrative configurations. Other allocations of functionality are envisioned and may fall within a scope of various embodiments of the present disclosure. In general, structures and functionality presented as separate resources in the example configurations may be implemented as a combined structure or resource. Similarly, structures and functionality presented as a single resource may be implemented as separate resources. These and other variations, modifications, additions, and improvements fall within a scope of embodiments of the present disclosure as represented by the appended claims. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Development Economics (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Marketing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Databases & Information Systems (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Primary Health Care (AREA)
- Tourism & Hospitality (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
A system and method for item-based social discovery are provided. In example embodiments, entity data that associates respective items of a plurality of items with respective entities of a plurality of entities is stored, each entity of the plurality of entities being registered at a social network service. An item indication, generated in response to a user action of a user, that indicates a user affinity for a mutual item is received, the user being registered at the social network service. A suggested entity from among the plurality of entities is identified by matching the mutual item with respective items of the plurality of items. The suggested entity does not have a social network relationship on the social network service with the user. Causing recommendation of a new social network relationship on the social network service between the user and the suggested member entity.
Description
- This application claims the priority benefit of U.S. Provisional Application No. 61/869,557, entitled “IMPROVED RETAIL EXPERIENCE,” filed Aug. 23, 2013, which is hereby incorporated by reference in its entirety.
- Embodiments of the present disclosure relate generally to mobile computing technology and, more particularly, but not by way of limitation, to item-based social discovery.
- In recent years mobile devices, wearable devices, smart devices, and the like have pervaded nearly every aspect of modern life. Social networks such as Facebook®, Twitter®, and many others have transformed Internet-based social interactions. In addition to these trends, the near ubiquity of wireless networks provides users with access to information and services provided by the Internet at virtually any physical location.
- Various ones of the appended drawings merely illustrate example embodiments of the present disclosure and cannot be considered as limiting its scope.
-
FIG. 1A is a block diagram illustrating a networked system, according to some example embodiments. -
FIG. 1B illustrates a block diagram showing components provided within the system ofFIG. 1A , according to some example embodiments. -
FIG. 2 is a block diagram illustrating an example embodiment of an item discovery system, according to some example embodiments. -
FIG. 3 is a flow diagram illustrating an example method for identifying suggested entities and recommending, to the user, forming a new social network relationship between the suggested entities and the user, according to some example embodiments. -
FIG. 4 is a flow diagram illustrating various communications in an example method for identifying suggested entities and recommending, to the user, forming a new social network relationship between the suggested entities and the user, according to some example embodiments. -
FIGS. 5 and 6 are flow diagrams illustrating example methods for identifying and presenting an item to the user, according to some example embodiments. -
FIG. 7 is a flow diagram illustrating a method for generating an item indication based on a user action, according to some example embodiments. -
FIG. 8 is a depiction of the user triggering an item indication based on geographic location data received from a device of the user, according to some example embodiments. -
FIGS. 9-15 illustrate example user interfaces, according to some example embodiments. -
FIG. 16 depicts an example mobile device and mobile operating system interface, according to some example embodiments. -
FIG. 17 is a block diagram illustrating an example of a software architecture that may be installed on a machine, according to some example embodiments. -
FIG. 18 illustrates a diagrammatic representation of a machine in the form of a computer system within which a set of instructions may be executed for causing the machine to perform any one or more of the methodologies discussed herein, according to an example embodiment. - The headings provided herein are merely for convenience and do not necessarily affect the scope or meaning of the terms used.
- The description that follows includes systems, methods, techniques, instruction sequences, and computing machine program products that embody illustrative embodiments of the disclosure. In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide an understanding of various embodiments of the inventive subject matter. It will be evident, however, to those skilled in the art, that embodiments of the inventive subject matter may be practiced without these specific details. In general, well-known instruction instances, protocols, structures, and techniques are not necessarily shown in detail.
- In various example embodiments, entity data that associates items with entities is stored. For instance, the entity data may indicate that a particular entity likes, wants, or owns a particular item. In some implementations, the particular entity specified liking, wanting, or owning the particular item (e.g., the entity inputting a designation for the item into a user interface configured to receive the item designation) in the past and the item designations are stored for subsequent analysis. In other implementations, the item designation may be automatically determined (e.g., scanning purchase histories of entities to determine items owned by the entities).
- An item indication that indicates a user affinity for a mutual item is generated in response to a user action. For example, the user specifies the user affinity (e.g., liking or wanting the mutual item) at a user interface configured to receive the item designation. In other examples, the item indication is generated automatically on behalf of the user in response to the user action. For example, user location data is monitored and matched or compared with entity location data (e.g., a local merchant store that sells various items). If the monitoring of the user location data indicates that the user location matches an entity location (e.g., the user entering the local merchant store), an item indication associated with items of the entity is generated. In this way, the user action automatically triggers the item indication.
- In various embodiments, the user and the entities are members of one or more social network services (e.g., Facebook® or Twitter®). In an embodiment, suggested entities that are members of the social network service are identified based on the mutual item. For example, the mutual item indicated by the item indication is matched with items associated with the entities.
- In embodiments, a new social network relationship or connection between the user and at least one of the suggested entities is recommended to the user. For example, the user may be presented with a notification, prompt, or another user interface that provides the user an option to form the new social network relationship with a particular suggested entity. In this manner, the user may form social network relationships or connect with previously unknown entities interested in items the user has an affinity for.
- With reference to
FIG. 1A , an example embodiment of a high-level client-server-basednetwork architecture 100 is shown. A networkedsystem 102 provides server-side functionality via a network 104 (e.g., the Internet or wide area network (WAN)) to aclient device 110. In some implementations, a user (e.g., user 106) interacts with thenetworked system 102 using theclient device 110.FIG. 1A illustrates, for example, a web client 112 (e.g., a browser, such as the Internet Explorer® browser developed by Microsoft® Corporation of Redmond, Wash. State), client application(s) 114, and aprogrammatic client 116 executing on theclient device 110. Theclient device 110 may include theweb client 112, the client application(s) 114, and theprogrammatic client 116 alone, together, or in any suitable combination. AlthoughFIG. 1A shows oneclient device 110, in other implementations, thenetwork architecture 100 comprises multiple client devices. - In various implementations, the
client device 110 comprises a computing device that includes at least a display and communication capabilities that provide access to thenetworked system 102 via thenetwork 104. Theclient device 110 comprises, but is not limited to, a remote device, work station, computer, general purpose computer, Internet appliance, hand-held device, wireless device, portable device, wearable computer, cellular or mobile phone, Personal Digital Assistant (PDA), smart phone, tablet, ultrabook, netbook, laptop, desktop, multi-processor system, microprocessor-based or programmable consumer electronic, game consoles, set-top box, network Personal Computer (PC), mini-computer, and so forth. In an example embodiment, theclient device 110 comprises one or more of a touch screen, accelerometer, gyroscope, biometric sensor, camera, microphone, Global Positioning System (GPS) device, and the like. - The
client device 110 communicates with thenetwork 104 via a wired or wireless connection. For example, one or more portions of thenetwork 104 comprises an ad hoc network, an intranet, an extranet, a Virtual Private Network (VPN), a Local Area Network (LAN), a wireless LAN (WLAN), a Wide Area Network (WAN), a wireless WAN (WWAN), a Metropolitan Area Network (MAN), a portion of the Internet, a portion of the Public Switched Telephone Network (PSTN), a cellular telephone network, a wireless network, a Wireless Fidelity (Wi-Fi®) network, a Worldwide Interoperability for Microwave Access (WiMax) network, another type of network, or any suitable combination thereof. - In some example embodiments, the
client device 110 includes one or more of the applications (also referred to as “apps”) such as, but not limited to, web browsers, book reader apps (operable to read e-books), media apps (operable to present various media forms including audio and video), fitness apps, biometric monitoring apps, messaging apps, electronic mail (email) apps, and e-commerce site apps (also referred to as “marketplace apps”). In some implementations, the client application(s) 114 include various components operable to present information to the user and communicate with networkedsystem 102. In some embodiments, if the e-commerce site application is included in theclient device 110, then this application may be configured to locally provide the user interface and at least some of the functionalities with the application configured to communicate with thenetworked system 102, on an as needed basis, for data or processing capabilities not locally available (e.g., access to a database of items available for sale, to authenticate a user, to verify a method of payment). Conversely, if the e-commerce site application is not included in theclient device 110, theclient device 110 can use its web browser to access the e-commerce site (or a variant thereof) hosted on thenetworked system 102. - In various example embodiments, the user (e.g., the user 106) comprises a person, a machine, or other means of interacting with the
client device 110. In some example embodiments, theuser 106 is not be part of thenetwork architecture 100, but interacts with thenetwork architecture 100 via theclient device 110 or another means. For instance, theuser 106 provides input (e.g., touch screen input or alphanumeric input) to theclient device 110 and the input is communicated to thenetworked system 102 via thenetwork 104. In this instance, thenetworked system 102, in response to receiving the input from theuser 106, communicates information to theclient device 110 via thenetwork 104 to be presented to theuser 106. In this way, the user can interact with thenetworked system 102 using theclient device 110. - An Application Program Interface (API)
server 120 and aweb server 122 may be coupled to, and provide programmatic and web interfaces respectively to, one or more application server(s) 140. The application server(s) 140 may host one or more publication system(s) 142, payment system(s) 144, and anitem discovery system 150, each of which may comprise one or more modules or applications and each of which may be embodied as hardware, software, firmware, or any combination thereof. The application server(s) 140 are, in turn, shown to be coupled to one or more database server(s) 124 that facilitate access to one or more information storage repositories or database(s) 126. In an example embodiment, the database(s) 126 are storage devices that store information to be posted (e.g., publications or listings) to the publication system(s) 142. The database(s) 126 may also store digital goods information in accordance with some example embodiments. - Additionally, a third party application 132, executing on a third party server 130, is shown as having programmatic access to the
networked system 102 via the programmatic interface provided by theAPI server 120. For example, the third party application 132, utilizing information retrieved from thenetworked system 102, may support one or more features or functions on a website hosted by the third party. The third party website may, for example, provide one or more promotional, marketplace, or payment functions that are supported by the relevant applications of thenetworked system 102. - The publication system(s) 142 may provide a number of publication functions and services to the users that access the
networked system 102. The payment system(s) 144 may likewise provide a number of functions to perform or facilitate payments and transactions. While the publication system(s) 142 and payment system(s) 144 are shown inFIG. 1A to both form part of thenetworked system 102, it will be appreciated that, in alternative embodiments, eachsystem networked system 102. In some example embodiments, the payment system(s) 144 may form part of the publication system(s) 142. - In some implementations, the
item discovery system 150 provides functionality to identity suggested entities for the user to form a social network relationship with, suggest items the user may be interested in, facilitate a purchase pick-up time for a particular item at a local entity (e.g., a local merchant store), among other functions. In some example embodiments, theitem discovery system 150 communicates with theclient device 110, the third party server(s) 130 (e.g., social network services), the publication system(s) 142 (e.g., retrieving listings), and the payment system(s) 144 (e.g., purchasing a listing). In an alternative example embodiment, theitem discovery system 150 is a part of the publication system(s) 142. Theitem discovery system 150 will be discussed further in connection withFIG. 2 below. - Further, while the client-server-based
network architecture 100 shown inFIG. 1A employs a client-server architecture, the present inventive subject matter is, of course, not limited to such an architecture, and may equally well find application in a distributed, or peer-to-peer, architecture system, for example. The various systems of the applications server(s) 140 (e.g., the publication system(s) 142 and the payment system(s) 144) may also be implemented as standalone software programs, which do not necessarily have networking capabilities. - The
web client 112 may access the various systems of the networked system 102 (e.g., the publication system(s) 142) via the web interface supported by theweb server 122. Similarly, theprogrammatic client 116 and client application(s) 114 may access the various services and functions provided by thenetworked system 102 via the programmatic interface provided by theAPI server 120. Theprogrammatic client 116 may, for example, be a seller application (e.g., the Turbo Lister application developed by eBay® Inc., of San Jose, Calif.) to enable sellers to author and manage listings on thenetworked system 102 in an off-line manner, and to perform batch-mode communications between theprogrammatic client 116 and thenetworked system 102. -
FIG. 1B illustrates a block diagram showing components provided within the publication system(s) 142, according to some embodiments. In various example embodiments, the publication system(s) 142 may comprise a market place system to provide market place functionality facilitating the purchase of items associated with item listings on an e-commerce website). The publication system(s) 142 may be hosted on dedicated or shared server machines that are communicatively coupled to enable communications between server machines. The components themselves are communicatively coupled (e.g., via appropriate interfaces) to each other and to various data sources, so as to allow information to be passed between the applications or so as to allow the applications to share and access common data. Furthermore, the components may access one or more database(s) 126 via the database server(s) 124. - The publication system(s) 142 may provide a number of publishing, listing, and price-setting mechanisms whereby a seller (also referred to as a “first user”) may list (or publish information concerning) goods or services for sale or barter, a buyer (also referred to as a “second user”) can express interest in or indicate a desire to purchase or barter such goods or services, and a transaction (such as a trade) may be completed pertaining to the goods or services. To this end, the publication system(s) 142 may comprise a
publication engine 160 and aselling engine 162. Thepublication engine 160 may publish information, such as item listings or product description pages, on the publication system(s) 142. In some embodiments, the sellingengine 162 may comprise one or more fixed-price engines that support fixed-price listing and price setting mechanisms and one or more auction engines that support auction-format listing and price setting mechanisms (e.g., English, Dutch, Chinese, Double, Reverse auctions, etc.). The various auction engines may also provide a number of features in support of these auction-format listings, such as a reserve price feature whereby a seller may specify a reserve price in connection with a listing and a proxy-bidding feature whereby a bidder may invoke automated proxy bidding. The sellingengine 162 may further comprise one or more deal engines that support merchant-generated offers for products and services. - A
listing engine 164 allows sellers to conveniently author listings of items or authors to author publications. In one embodiment, the listings pertain to goods or services that a user (e.g., a seller) wishes to transact via thenetworked system 102. In some embodiments, the listings may be an offer, deal, coupon, or discount for the good or service. Each good or service is associated with a particular category. Thelisting engine 164 may receive listing data such as title, description, and aspect name/value pairs. Furthermore, each listing for a good or service may be assigned an item identifier. In other embodiments, a user may create a listing that is an advertisement or other form of information publication. The listing information may then be stored to one or more storage devices coupled to the networked system 102 (e.g., database(s) 126). Listings also may comprise product description pages that display a product and information (e.g., product title, specifications, and reviews) associated with the product. In some embodiments, the product description page may include an aggregation of item listings that correspond to the product described on the product description page. - The
listing engine 164 also may allow buyers to conveniently author listings or requests for items desired to be purchased. In some embodiments, the listings may pertain to goods or services that a user (e.g., a buyer) wishes to transact via thenetworked system 102. Each good or service is associated with a particular category. Thelisting engine 164 may receive as much or as little listing data, such as title, description, and aspect name/value pairs, that the buyer is aware of about the requested item. In some embodiments, thelisting engine 164 may parse the buyer's submitted item information and may complete incomplete portions of the listing. For example, if the buyer provides a brief description of a requested item, thelisting engine 164 may parse the description, extract key terms, and use those terms to make a determination of the identity of the item. Using the determined item identity, thelisting engine 164 may retrieve additional item details for inclusion in the buyer item request. In some embodiments, thelisting engine 164 may assign an item identifier to each listing for a good or service. - In some embodiments, the
listing engine 164 allows sellers to generate offers for discounts on products or services. Thelisting engine 164 may receive listing data, such as the product or service being offered, a price or discount for the product or service, a time period for which the offer is valid, and so forth. In some embodiments, thelisting engine 164 permits sellers to generate offers from sellers' mobile devices. The generated offers may be uploaded to thenetworked system 102 for storage and tracking. - Searching the publication system(s) 142 is facilitated by a searching
engine 166. For example, the searchingengine 166 enables keyword queries of listings published via the publication system(s) 142. In example embodiments, the searchingengine 166 receives the keyword queries from a device of a user and conducts a review of the storage device storing the listing information. The review will enable compilation of a result set of listings that may be sorted and returned to theclient device 110 of the user. The searchingengine 166 may record the query (e.g., keywords) and any subsequent user actions and behaviors (e.g., navigations, selections, or click-throughs). - The searching
engine 166 also may perform a search based on a location of the user. A user may access the searchingengine 166 via a mobile device and generate a search query. Using the search query and the user's location, the searchingengine 166 may return relevant search results for products, services, offers, auctions, and so forth to the user. The searchingengine 166 may identify relevant search results both in list form and graphically on a map. Selection of a graphical indicator on the map may provide additional details regarding the selected search result. In some embodiments, the user may specify, as part of the search query, a radius or distance from the user's current location to limit search results. - In a further example, a
navigation engine 168 allows users to navigate through various categories, catalogs, or inventory data structures according to which listings may be classified within the publication system(s) 142. For example, thenavigation engine 168 allows a user to successively navigate down a category tree comprising a hierarchy of categories (e.g., the category tree structure) until a particular set of listings is reached. Various other navigation applications within thenavigation engine 168 may be provided to supplement the searching and browsing applications. Thenavigation engine 168 may record the various user actions (e.g., clicks) performed by the user in order to navigate down the category tree. - In some embodiments, a
personalization engine 170 provides functionality to personalize various aspects of user interactions with thenetworked system 102. For instance, the user can define, provide, or otherwise communicate personalization settings used by thepersonalization engine 170 to determine interactions with the publication system(s) 142. In further example embodiments, thepersonalization engine 170 determines personalization settings automatically and personalizes interactions based on the automatically determined settings. For example, thepersonalization engine 170 determines a native language of the user and automatically presents information in the native language. -
FIG. 2 is a block diagram of theitem discovery system 150 that provides functionality to identity suggested entities for the user to form a social network relationship with, suggest items the user may be interested in, facilitate a purchase pick-up time for a particular item at a local entity (e.g., a local merchant store), among other functions, according to some example embodiments. In an example embodiment, theitem discovery system 150 includes apresentation module 210, acommunication module 220, adata module 230, anitem module 240, ananalysis module 250, and apurchase module 260. All, or some, of the modules 210-260 ofFIG. 2 , communicate with each other, for example, via a network coupling, shared memory, and the like. It will be appreciated that each module of modules 210-260 may be implemented as a single module, combined into other modules, or further subdivided into multiple modules. Other modules not pertinent to example embodiments may also be included, but are not shown. - In some implementations, the
presentation module 210 provides various presentation and user interface functionality operable to interactively present and receive information from the user. For instance, thepresentation module 210 can cause presentation, to the user, of various user interfaces that recommend social network relationships, present various items and item listings, receive personalization settings, and other user interfaces to facilitate the functionality described herein. In various implementations, thepresentation module 210 presents or causes presentation of information (e.g., visually displaying information on a screen, acoustic output, haptic feedback). Interactively presenting information is intended to include the exchange of information between a particular device and the user. The user may provide input to interact with the user interface in many possible manners such as alphanumeric, point based (e.g., cursor), tactile, or other input (e.g., touch screen, tactile sensor, light sensor, infrared sensor, biometric sensor, microphone, gyroscope, accelerometer, or other sensors), and the like. It will be appreciated that thepresentation module 210 provides many other user interfaces to facilitate functionality described herein. Further, it will be appreciated that “presenting” as used herein is intended to include communicating information or instructions to a particular device that is operable to perform presentation based on the communicated information or instructions. - The
communication module 220 provides various communications functionality and web services. For example, thecommunication module 220 provides network communication such as communicating with thenetworked system 102, theclient device 110, and the third party server(s) 130. In various example embodiments, the network communication may operate over wired or wireless modalities. Web services are intended to include retrieving information from the third party server(s) 130, the database(s) 126, and the application server(s) 140. In some implementations, information retrieved by thecommunication module 220 comprises data associated with the user (e.g., user profile information from an online account, social network service data associated with the user), data associated with one or more items listed on an e-commerce website (e.g., images of the item, reviews of the item, item price), or other data to facilitate the functionality described herein. - The
data module 230 provides functionality to store (e.g., save), access, or otherwise manage a wide variety of data. For example, thedata module 230 accesses the entity data that associates items with entities (e.g., stored in the database(s) 126). Thedata module 230 may also access member data from one or more social networks corresponding to a particular entity or the user, item data from various sources (e.g., the publication system(s) 142), purchase histories of entities, or other data. - The
item module 240 provides functionality to manage item indications, according to some implementations. For instance, theitem module 240 may receive an item indication generated in response to a user action. In other instances, theitem module 240 may generate the item indication based on various user actions (e.g., the user inputting an item designation such as a “like” to a user interface). - The
analysis module 250 provides a variety of analysis functions to facilitate the functionality described herein. For example, theanalysis module 250 identifies entities and items by analyzing various data. In a specific example, theanalysis module 250 identifies the suggested entities based on items corresponding to the plurality of entities. - The
purchase module 260 provides functionality to facilitate the purchase of a particular item or item listing. For instance, thepurchase module 260 may facilitate the purchase of an item at a local store including determining a pick-up time and location. -
FIG. 3 is a flow diagram illustrating anexample method 300 for recommending suggested entities for the user to form the new social network relationship with based, at least in part, on a user indicated affinity for a particular item, according to some example embodiments. The operations of themethod 300 may be performed by components of theitem discovery system 150. Atoperation 310, thedata module 230 accesses entity data that associates respective items of a plurality of items with respective entities of a plurality of entities. It will be appreciated that the entities are intended to include businesses, organizations, people, and the like. - In various implementations, all, or some, of the entities of the plurality of entities may be registered at one or more social network services (e.g., Facebook® or Twitter®). That is to say, a portion of the entities of the plurality of entities are members of one or more social network services. In addition, the user is a member or a registered user at one or more social network services, according to various implementations. For instance, if a particular entity comprises a person, the person may maintain a member profile on a particular social network service that includes member data corresponding to the person (e.g., posts, likes, social graph data, check-ins, images of the person). In another instance, a particular entity comprises a business and the business maintains a member profile on a particular social network service that includes member data corresponding to the business (e.g., posts related to the business, news related to the business, contact information of the business, a location of the business such as an address, likes, social graph data).
- The entity data includes data that associates respective entities of the plurality of entities with various items. For example, if a particular entity comprises a person, the person may have provided an indication of liking a particular item (e.g., activating a “like button” associated with a particular item). In another example, the particular entity may be associated with a particular item via a post provided by the particular entity (e.g., a post mentioning the item determined by the analysis module 250). In another example, the particular entity may submit input to a user interface, provided by the
presentation module 210, configured to receive input associated with various items. In this example, the entity may browse various items presented in the user interface and activate user interface elements that, for example, indicate the entity “liking,” “wanting,” or “owning” a particular item (seeFIG. 10 for an example). - In some implementations, the
data module 230 may generate the entity data by retrieving member data associated with the plurality of entities and determining associations between various entities of the plurality of entities and various items. For instance, thedata module 230 may retrieve member data and analyze the member data to associate particular members with particular items (e.g., scanning likes, posts, or check-ins to identify an association between an entity and an item). In a specific example, thedata module 230 may determine an association between a particular entity and items of a particular merchant store (e.g., a brick-and-mortar store) based on a check-in by the particular entity to the particular merchant store (e.g., the entity is associated with items of the merchant store based on the check-in to the store). In another example, thedata module 230 accesses purchase history data corresponding to the plurality of entities (e.g., from the publication system(s) 142). In this example, thedata module 230 associates respective entities of the plurality of entities with respective items included in the purchase history. Of course, it will be appreciated by one skilled in the art that many other schemes and techniques can be employed by thedata module 230 to associate various entities with various items. - In some implementations, the
data module 230 stores, retains, or saves the entity data in a storage device such as database(s) 126, the entity data to be subsequently accessed by thedata module 230. Thedata module 230 can store, retain, or save the entity data in association with an entity identifier, social network identifier, other identifiers, or any suitable combination thereof. For example, thedata module 230 accesses entity data corresponding to a particular entity among the plurality of entities via a lookup based on entity identifier, social network identifier, other identifiers, or any suitable combination thereof. - At
operation 320, theitem module 240 receives an item indication, generated in response to a user action of a user, according to some example embodiments. In various implementations, the item indication indicates a user affinity for a mutual item. For example, the mutual item is an item that is common or in-common between the user and a particular entity (e.g., both the user and the particular entity have an affinity for the mutual item). In some examples, the mutual item is common to the user and one or more entities. The user action comprises user interface interactions, user activities (e.g., the user entering a merchant store), and so on. For example, the user provides input to a user interface, provided by thepresentation module 210, configured to receive the item indication (thepresentation module 210 communicates the item indication to the item module 240). In this example, the entity may browse various items presented in the user interface and activate user interface elements that, for example, indicate the entity “liking,” “wanting,” or “owning” a particular item (seeFIG. 10 for an example). - In other implementations, the item indication is automatically generated in response to the user action on behalf of the user. For example, the
data module 230 monitors, tracks, or otherwise observes user location data of the user (e.g., as determined by a GPS component of a mobile device of the user). If the user enters a particular merchant store, theanalysis module 250 may identify the particular merchant store by matching a physical user location included in the user location data with the particular merchant store location (e.g., retrieved from the third party server(s) 130). In this example, the user is associated with items of the particular merchant store based on the user entering the particular merchant store or being in a physical vicinity (e.g., a configurable distance such as ten meters) of the particular merchant store. In another example, the user is carrying a mobile device operable to detect NFC beacons integrated with a particular merchant store. In this example, the mobile device of the user communicates detected beacons to thedata module 230 and thedata module 230 subsequently communicates the beacon detection to theitem module 240 to automatically generate the item indication. In this example, the user is associated with the items of the particular merchant store based on the beacon detection. Theitem discovery system 150 may employ many other schemes and techniques to automatically generate the item indication based on the user action; the above examples are merely non-limiting examples. - At
operation 330, theanalysis module 250 identifies a suggested entity or proposed entity from among the plurality of entities by matching the mutual item with respective items of the plurality of items. In various implementations, the suggested entity does not have a social network relationship on a particular social network service with the user. In an embodiment, theanalysis module 250 identifies the suggested entity based on entities that are associated with a same or similar item as the mutual item. - In further embodiments, the
analysis module 250 identifies multiple suggested entities and ranks the multiple suggested entities according to relevance criteria. For instance, a particular entity may be associated with the mutual item, but the association may be tenuous. For example, an entity that “wants” or “owns” a particular item may have a stronger association to the particular item than an entity that simply “likes” the particular item. In this example, the particular entity that has the stronger association to the particular item may be ranked higher than entities with weaker associations to the particular item. - In still further embodiments, the user may be associated with multiple mutual items and the
analysis module 250 identifies the suggested entity based on an occurrence count of the multiple mutual items and items associated with a particular entity. For example, if a particular entity is associated with three out of four of the multiple mutual items, theanalysis module 250 may identify or rank more highly that particular entity over another entity that is associated with one out of four of the mutual items. It will be appreciated that theanalysis module 250 may employ many other schemes and techniques to identify the suggested entity based on the mutual item and the above are merely non-limiting examples. - At
operation 340, thepresentation module 210 causes recommendation of a new social network relationship on the social network service between the user and the suggested entity. A social network relationship or social network connection (e.g., a “friend,” “follower,” or “favorite friend”) is a designation stored by the social network service that associates members of the social network service. In some cases, the social network relationship provides additional features available on the social network service such as an increasing level of disclosure between members with a social network relationship. In various implementations, thepresentation module 210 causes recommendation of the new social network relationship by causing presentation, to the user, of a user interface including an option to form the new social network relationship between the user and the suggested entity (seeFIG. 12 for an example). In some instances, the user may select the option to form the new social network relationship, received at thepresentation module 210, and thepresentation module 210 may communicate a request to form the new social network relationship to the social network. - In various implementations, the
analysis module 250 determines that the user and the suggested entity are registered at, or are members of, the same social network service prior recommending the new social network relationship between the suggested entity and the user. For example, a mutual social network service may be a particular social network service that the user and a particular entity are members of. In other words, the mutual social network service may be a social network service common to the user and one or more entities. In some implementations, theanalysis module 250 identifies the mutual social network service by comparing social network services associated with the user to social network services associated with a particular entity. In scenarios where there are multiple mutual social network services, thepresentation module 210 can cause recommendation of forming a new social network relationship on the multiple mutual social network services or a portion of the multiple social network services. In still other example embodiments, theanalysis module 250 may facilitate registering (e.g., becoming a member of a particular social network service) the user at a particular social network service in the case the suggested entity is a member that particular social network service and the user is not a member of that particular social network service. In this way, theanalysis module 250 facilitates the forming of the new social network relationship between the user and the suggested entity on a particular social network service. -
FIG. 4 is a flow diagram 400 illustrating various communications in an example method for identifying suggested entities and recommending, to the user, forming a new social network relationship between the suggested entities and the user, according to some example embodiments. As discussed above, at theoperation 310, thedata module 230 accesses the entity data. In various example embodiments, thedata module 230 retrieves, accesses, or otherwise obtains member data associated with the plurality of entities from the social network service(s) 402. Thedata module 230 may employ a portion of the member data to generate the entity data (e.g., associate entities with particular items based on “likes” by the entities). Atoperation 410, the social network service(s) 402 provide the member data. For example, thedata module 230 may communicate a request (e.g., an API call) to the social network service(s) 402 to provide member data corresponding to a particular entity. In some cases, the social network service(s) 402 provide the information without authorization credentials corresponding to the entity (e.g., publicly available information). In other cases, thedata module 230 provides the authorization credentials to the social network service(s) 402 to obtain the member data corresponding to the particular entity (e.g., the particular entity inputs the authorization credentials into a user interface provided by the presentation module 210). As discussed above, thedata module 230 stores the entity data in a storage device such as database(s) 126. - At
operation 320, theitem module 240 receives the item indication, as described above. In various implementations, the item indication is triggered based on the user action. In some cases, the user action includes a user device such as user device(s) 404. Atoperation 420, the user device(s) 404 trigger the item indication by communicating various data to theitem module 240. For instance, the user submits a “like” corresponding to an item to a user interface configured to receive the “like” provided by thepresentation module 210. In another example, the user device(s) 404 trigger the item indication by detecting a NFC beacon corresponding to a particular merchant store associated with various items (e.g., the user entering a sporting goods store and moving within range of a NFC beacon integrated into the sporting goods store). In this example, the item indication may be associated with multiple items (e.g., any item carried by the sporting goods store) and theitem module 240 may identify an item among the multiple items based on user preferences or other user data. The user preferences may include item categories or brands specified by the user. - At the
operation 330, theanalysis module 250 identifies the suggested entity from among the plurality of entities, as discussed above. Subsequently, at theoperation 340, thepresentation module 210 causes recommendation of the new social network relationship between the user and the suggested entity to the user. For example, thepresentation module 210 communicates a user interface including the recommendation to the user device(s) 404. At operation 430, the user device(s) 404 present the recommendation to the user (e.g., display the user interface communicated by the presentation module 210). - In further embodiments, the
presentation module 210 provides the user an option to form the new social network relationship. At operation 440, the user device(s) 404 receive a selection of the option to form the new social network relationship from the user. For instance, thepresentation module 210 generates a user interface including a user interface element that, when activated, sends a request to the social network service(s) 402 (e.g., the mutual social network service), the request being a request to form the new social network relationship between the user and the suggested entity. In some implementations, the user provides user authorization credentials to effectuate the forming of the new social network relationship at the social network service(s) 402. For example, the user authorization credentials can be included in the request to form the new social network relationship. In some instances, thepresentation module 210 requests the user authorization credentials from the user (e.g., via a user interface configured to receive the user authorization credentials) which are stored fur subsequent authorizations (e.g., using a token or a cookie). In other instances, the request may trigger the social network service(s) 402 to obtain the user authorization credential from the user (e.g., prompt the user to log in). Atoperation 450, the social network service(s) 402 forms the new social network relationship between the user and the suggested entity. -
FIG. 5 is a flow diagram illustrating anexample method 500 for identifying and presenting an item to the user, according to some example embodiments. The operations of themethod 500 may be performed by components of theitem discovery system 150. Atoperation 510, theanalysis module 250 identifies a non-mutual item of the plurality of items corresponding to the suggested entity. In other words, the non-mutual item is an item of the suggested entity that is not in common, or non-common, between the user and the suggested entity, according to some implementations. For example, if the suggested entity has “liked” or otherwise designated ten items and the user has “liked” or otherwise designated two of those ten items, theanalysis module 250 identifies at least one of the eight items not “liked” or otherwise designated by the user. - At
operation 520, thepresentation module 210 causes presentation of the non-mutual item to the user. In some implementations, the presentation includes an option for the user to generate another item indication that indicates an affinity for the non-mutual item. In this manner, the user browses items corresponding to the suggested entity and may designate (e.g., “like”) items that may be of interest to the user. The newly designated item may be the basis for identifying further suggested entities in themethod 300 described above. -
FIG. 6 is a flow diagram illustrating anexample method 600 for identifying and presenting an item to the user, according to some example embodiments. The operations of themethod 600 may be performed by components of theitem discovery system 150. At operation 610, theanalysis module 250 identifies a contact entity of the user. The contact entity is an entity registered at, or a member of, the social network site that previously formed a social network relationship with the user on the social network site (e.g., friends, followers of the user). For instance, the user is a member of a user social network service and the user's “friends,” “follows,” or similar social network designations (e.g., designations stored in social graph data on the user social network service) on the user social network service are contact entities of the user in this instance. In some implementations, theanalysis module 250 identifies the contact entity by accessing social graph data stores at the social network service. - At
operation 620, thedata module 230 accesses a contact item corresponding to the contact entity. For example, once theanalysis module 250 identifies the contact entity, thedata module 230 accesses the entity data corresponding to the contact entity, if it exists, that is stored in the database(s) 126 (e.g., via a lookup of the contact entity using an entity identifier, social network member identifier, or other identifier). In another example, theanalysis module 250 dynamically determines the contact item based on an analysis of member data corresponding to the network entity. For instance, the member data corresponding to the identified contact entity may include posts, check-ins, and the like that theanalysis module 250 may analyze to identify the contact item. - At
operation 630, thepresentation module 210 causes presentation of the contact item to the user. For instance, thepresentation module 210 communicates a user interface including a description of the contact item to the user device with instructions to present the user interface to the user. Thus, the user may browse items associated with social network contacts or connections on the social network service of the user. In further embodiments, the user may designate (e.g., “like,” or “want”) the contact item that may be of interest to the user. The newly designated item may be the basis for identifying further suggested entities in themethod 300 described above. -
FIG. 7 is a flow diagram illustrating a method for generating an item indication based on a user action, according to some example embodiments. The operations of themethod 700 may be performed by components of theitem discovery system 150. At operation 710, thedata module 230 monitors user location data, received from a user device of the user. The user location data includes a physical user location of the user. For instance, thedata module 230 may access GPS data provided by a mobile device of the user. - At
operation 720, thedata module 230 accesses local entity location data that includes physical entity locations of local entities. For example, predefined physical entity locations may be stored in a storage device such as database(s) 126 and accessed by thedata module 230. - At
operation 730, theanalysis module 250 identifies a local entity from among the plurality of entities by matching the user location data with the entity location data. For example, theanalysis module 250 may compare the physical user location to the physical entity locations to identity entities within a distance of the physical user location (e.g., within 20 feet of the physical user location). The distance may be configurable. - At
operation 740, thedata module 230 accesses local item data corresponding to the local entity. Thedata module 230 may access the local item data from the entity data, the third party servers 130, or elsewhere. The local item data comprises a plurality of local items. For instance, the local entity may be a local merchant store or local business that the user walked by or entered. - At
operation 750, theitem module 240 generates the item indication that indicates a user affinity for a local item included in the plurality of local items. In a specific example, the user may enter a local sporting goods store and on that basis, theitem module 240 may generate an item indication for a particular sporting goods item associated with the sporting goods store. In some example embodiments, theitem module 240 may analyze user data or user preference to determine an item among the local items and generate the item indication corresponding to the determined item. - In further example embodiments, the
purchase module 260 provides the user with an option to purchase the local item from the local entity. For example, thepresentation module 210 causes presentation of a user interface configured to provide the user with option to purchase the local item (seeFIG. 14 for an example). In some implementations, based on receiving a selection of the option to purchase the local item, thepurchase module 260 facilitates the purchase of the local item including determining a pick-up time and location for the local item. -
FIG. 8 is adepiction 800 of the user triggering an item indication based on geographic location data received from a device of the user, according to some example embodiments.Scene 802 depicts alocal store 804, alocal store radius 806, auser radius 808, auser 810, and acommunication coupling 812. In the example ofFIG. 8 , theuser 810 is carrying a mobile device operable to provide location data (e.g., via a GPS component of the mobile device). The mobile device of the user may be communicatively coupled to thenetwork 104 via thecommunication coupling 812. Thus, the mobile device of theuser 810 may communicate with thenetworked system 102 that includes theitem discovery system 150, according to some implementations. - In some implementations, the mobile device of the
user 810 is providing user location data to thedata module 230 in real-time. Thus, theanalysis module 250 may determine the local entity in real-time. The term “real-time data,” as used herein, is intended to include data associated with an event currently happening, such as, for example, the real-time data communicated to thedata module 230 after a delay interval (e.g., due to transmission delay or other delays such as being temporarily stored at an intermediate device) between capturing the data and thedata module 230 receiving the data. - In the example of
FIG. 8 , if theanalysis module 250 determines that thelocal store 804 is within theuser radius 808, or conversely theuser 810 is within thelocal store radius 806, then theitem module 240 may generate the item indication associated with thelocal store 804. In other example embodiments, theanalysis module 250 determines the suggested entity based, at least in part, on the user location data. For instance, if theuser 810 moves within thelocal store radius 806, theanalysis module 250 may identify thelocal store 804 as the suggested entity. -
FIGS. 9-15 depict example user interfaces for interactively presenting information to the user. AlthoughFIGS. 9-15 depict specific example user interfaces and user interface elements, these are merely non-limiting examples and many other alternate user interfaces and user interface elements may be generated by thepresentation module 210 and presented to the user. It will be noted that alternate presentations of the displays ofFIGS. 9-15 may include additional information, graphics, options, and so forth; other presentations may include less information, or may provide abridged information for easy use by the user. -
FIG. 9 depicts an example device 900 (e.g., a smart phone) displaying anexample user interface 910. Theuser interface 910 includessection 920 that provides profile information to the user such as number of connections the user currently has or other profile information. Theuser interface 910 includesuser interface elements user interface element 970 may present another user interface that includes recommended items to the user (e.g., items associated with contact entities of the user or items associated with suggested entities). In some implementations, theuser interface 910 includessection 980 that indicates recent activity. For instance,user interface element 990 indicates activity associated with a particular entity. In this instance, the entity is a person named “Melissa Miller,” although in other instances the entity may be a business. -
FIG. 10 depicts anexample device 1000 displaying anexample user interface 1010 that includesuser interface element 1020 anditem listings user interface 1010 displays an interactive scrollable list of item listings (e.g.,listings 1030 and 1040) to the user. In some implementations, theuser interface element 1020 provides an option to sort theitem listings item listings - In
user interface 1010, theuser interface element 1020 displays item listings according to a particular designation such as “wants,” “likes,” or “haves.” The user may interact with the item listings by activating a particular item listing. A shaded corner may indicate an activated item listing, for example. In an example scenario, the user may select the “likes” user interface element to activate the user interface element associated with an item the user has an affinity for. In this scenario, the user “liking” a particular item listing may trigger the item indication discussed above. In some embodiments, theitem listings -
FIG. 11 depicts anexample device 1100 displaying anexample user interface 1110. In some implementations, theuser interface 1110 is displayed in response to the user activating a user interface element corresponding to an item of the user interface 1010 (e.g., tapping a particular item to view more detailed information about the item).User interface element 1120 may provide information associated with an item such as an item image, price, merchant, brand, other information retrieved from the publication system(s) 142, and the like.User interface element 1130 may provide the user with an option to purchase the item.User interface element 1140 may provide the user with an option to designate the item associated withuser interface element 1120 as “wanted.”Section 1150 may display a scrollable list of entities that have designated the item associated withuser interface element 1120 as wanted. In some implementations, the user may browse the list of entities and identify an entity to form a new social network relationship with.User interface element 1160 provides information corresponding to the group of entities displayed insection 1150. In this example, theuser interface element 1160 indicates the number of entities that designated the item associated withuser interface element 1120 as “wanted.”User interface element 1170 indicates a particular entity among the entities that designated the item associated withuser interface element 1120 as “wanted.” In some implementations, activating theuser interface element 1170 provides additional information corresponding to the particular entity or initiates a request to form a social network relationship with particular entity.User interface element 1180 provides an option to display additional entities that designated the item associated withuser interface element 1120 as “wanted.” -
FIG. 12 depicts anexample device 1200 displaying anexample user interface 1210.User interface element 1220 may provide information associated with an item such as an item image, price, merchant, brand, other information retrieved from the publication system(s) 142, and the like.User interface element 1230 indicates item designations provided by the plurality of entities. In this example, 92 entities designated “wants,” 482 entities designated “likes,” and 43 designated “haves.” Such information may assist the user in determining how popular among the plurality of entities a particular item is. Theuser interface 1210 may present information associated with entities that have designated the item associated withuser interface element 1220. For instance,user interface element 1240 may be a particular entity among the plurality of entities that “likes” the item associated withuser interface element 1220. The user may form a social network relationship or connect with the entity associated withuser interface element 1240 by activatinguser interface element 1250. In this way, the user may form social network relationships with entities based on a particular item. -
FIG. 13 depicts anexample device 1300 displaying anexample user interface 1310.User interface element 1320 may provide an option to enable personalization settings or disable personalization settings.User interface elements User interface element 1340 may indicate that the user has designated a particular item category as being of interest. AlthoughFIG. 13 is directed towards personalization settings including item categories, it will be appreciated that many other types of personalization settings may be inputted by the user. -
FIG. 14 depicts anexample device 1400 displaying anexample user interface 1410 that includes anitem listing 1420,user interface element 1430, anduser interface element 1440, according to some example embodiments. In an example embodiment, theitem listing 1420 includes various portions of item data such as an item image, price, merchant, brand, other information retrieved from the publication system(s) 142, and the like. In some implementations, activating theitem listing 1420 presents additional information corresponding to theitem listing 1420. In an example embodiment, activating theuser interface element 1430 provides the user the option to purchase the item corresponding to the item listing 1420 (e.g., activating theuser interface element 1440 may facilitate a transaction for the item, for example, using the payment system(s) 144). In some example embodiments,user interface element 1440 includes a map with locations of theitem listing 1420 or amerchant 1460 that sells the item corresponding to theitem listing 1420. In further example embodiments, thecurrent user location 1450 is determined (e.g., via a GPS component of a mobile device of the user) and used to determine nearby merchants that sell the item corresponding to theitem listing 1420. -
FIG. 15 depicts anexample device 1500 displaying anexample user interface 1510 that includes anotification 1520, according to some example embodiments. In various example embodiments, thepresentation module 210 causes presentation of thenotification 1520 to the user. For instance, thepresentation module 210 communicates, to thedevice 1500, instructions to present thenotification 1520. In some instances, the instructions include notification content, generated by thepresentation module 210, such as a message (e.g., pertinent information) to be presented to the user. In example embodiments, thenotification 1520 comprises a text message, such as Short Message Service (SMS) messages, Multimedia Messaging Service (MMS), Enhanced Messaging Service (EMS), and so forth. In other example embodiments, thenotification 1520 comprises a push notification or another similar type of notification. In further example embodiments, thenotification 1520 comprises interactive user interface elements such asuser interface elements 1530. In these example embodiments, theuser interface elements 1530 provide the user an option to make a selection (e.g., through an SMS system, mobile application). Inuser interface 1510, thenotification 1520 provides the user the option to form the new social network relationship with a particular merchant. In some implementations, activating theuser interface element 1530 communicates a request to the social network service to form the new social network relationship between the user and a particular entity. - Certain embodiments are described herein as including logic or a number of components, modules, or mechanisms. Modules may constitute either software modules (e.g., code embodied on a machine-readable medium or in a transmission signal) or hardware modules. A “hardware module” is a tangible unit capable of performing certain operations and may be configured or arranged in a certain physical manner. In various example embodiments, one or more computer systems (e.g., a standalone computer system, a client computer system, or a server computer system) or one or more hardware modules of a computer system (e.g., a processor or a group of processors) may be configured by software (e.g., an application or application portion) as a hardware module that operates to perform certain operations as described herein.
- In some embodiments, a hardware module may be implemented mechanically, electronically, or any suitable combination thereof. For example, a hardware module may include dedicated circuitry or logic that is permanently configured to perform certain operations. For example, a hardware module may be a special-purpose processor, such as a Field-Programmable Gate Array (FPGA) or an Application Specific Integrated Circuit (ASIC). A hardware module may also include programmable logic or circuitry that is temporarily configured by software to perform certain operations. For example, a hardware module may include software encompassed within a general-purpose processor or other programmable processor. It will be appreciated that the decision to implement a hardware module mechanically, in dedicated and permanently configured circuitry, or in temporarily configured circuitry (e.g., configured by software) may be driven by cost and time considerations.
- Accordingly, the phrase “hardware module” should be understood to encompass a tangible entity, be that an entity that is physically constructed, permanently configured (e.g., hardwired), or temporarily configured (e.g., programmed) to operate in a certain manner or to perform certain operations described herein. As used herein, “hardware-implemented module” refers to a hardware module. Considering embodiments in which hardware modules are temporarily configured (e.g., programmed), each of the hardware modules need not be configured or instantiated at any one instance in time. For example, where a hardware module comprises a general-purpose processor configured by software to become a special-purpose processor, the general-purpose processor may be configured as respectively different special-purpose processors (e.g., comprising different hardware modules) at different times. Software may accordingly configure a particular processor or processors, for example, to constitute a particular hardware module at one instance of time and to constitute a different hardware module at a different instance of time.
- Hardware modules can provide information to, and receive information from, other hardware modules. Accordingly, the described hardware modules may be regarded as being communicatively coupled. Where multiple hardware modules exist contemporaneously, communications may be achieved through signal transmission (e.g., over appropriate circuits and buses) between or among two or more of the hardware modules. In embodiments in which multiple hardware modules are configured or instantiated at different times, communications between such hardware modules may be achieved, for example, through the storage and retrieval of information in memory structures to which the multiple hardware modules have access. For example, one hardware module may perform an operation and store the output of that operation in a memory device to which it is communicatively coupled. A further hardware module may then, at a later time, access the memory device to retrieve and process the stored output. Hardware modules may also initiate communications with input or output devices, and can operate on a resource (e.g., a collection of information).
- The various operations of example methods described herein may be performed, at least partially, by one or more processors that are temporarily configured (e.g., by software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such processors may constitute processor-implemented modules that operate to perform one or more operations or functions described herein. As used herein, “processor-implemented module” refers to a hardware module implemented using one or more processors.
- Similarly, the methods described herein may be at least partially processor-implemented, with a particular processor or processors being an example of hardware. For example, at least some of the operations of a method may be performed by one or more processors or processor-implemented modules. Moreover, the one or more processors may also operate to support performance of the relevant operations in a “cloud computing” environment or as a “software as a service” (SaaS). For example, at least some of the operations may be performed by a group of computers (as examples of machines including processors), with these operations being accessible via a network (e.g., the Internet) and via one or more appropriate interfaces (e.g., an Application Program Interface (API)).
- The performance of certain of the operations may be distributed among the processors, not only residing within a single machine, but deployed across a number of machines. In some example embodiments, the processors or processor-implemented modules may be located in a single geographic location (e.g., within a home environment, an office environment, or a server farm). In other example embodiments, the processors or processor-implemented modules may be distributed across a number of geographic locations.
-
FIG. 16 illustrates an examplemobile device 1600 executing a mobile operating system (e.g., iOS™, Android™, Windows® Phone, or other mobile operating systems), according to example embodiments. In one embodiment, themobile device 1600 includes a touch screen operable to receive tactile data from auser 1602. For instance, theuser 1602 may physically touch 1604 themobile device 1600, and in response to thetouch 1604, themobile device 1600 determines tactile data such as touch location, touch force, or gesture motion. In various example embodiments, themobile device 1600 displays a home screen 1606 (e.g., Springboard on iOS™) operable to launch applications or otherwise manage various aspects of themobile device 1600. In some example embodiments, thehome screen 1606 provides status information such as battery life, connectivity, or other hardware statuses. In some implementations, theuser 1602 activates user interface elements by touching an area occupied by a respective user interface element. In this manner, theuser 1602 may interact with the applications. For example, touching the area occupied by a particular icon included in thehome screen 1606 causes launching of an application corresponding to the particular icon. - Many varieties of applications (also referred to as “apps”) may be executing on the
mobile device 1600 such as native applications (e.g., applications programmed in Objective-C running on iOS™ or applications programmed in Java running on Android™), mobile web applications (e.g., Hyper Text Markup Language-5 (HTML5)), or hybrid applications (e.g., a native shell application that launches an HTML5 session). For example, themobile device 1600 includes amessaging app 1620,audio recording app 1622, acamera app 1624, abook reader app 1626, amedia app 1628, afitness app 1630, afile management app 1632, alocation app 1634, abrowser app 1636, asettings app 1638, acontacts app 1640, atelephone call app 1642, or other apps (e.g., gaming apps, social networking apps, biometric monitoring apps), athird party app 1644. -
FIG. 17 is a block diagram 1700 illustrating an architecture ofsoftware 1702, which may be installed on any one or more of the devices described above.FIG. 17 is merely a non-limiting example of a software architecture, and it will be appreciated that many other architectures may be implemented to facilitate the functionality described herein. Thesoftware 1702 may be implemented by hardware such asmachine 1800 ofFIG. 18 that includesprocessors 1810,memory 1830, and I/O components 1850. In this example architecture, thesoftware 1702 may be conceptualized as a stack of layers where each layer may provide a particular functionality. For example, thesoftware 1702 includes layers such as anoperating system 1704,libraries 1706,frameworks 1708, andapplications 1710. Operationally, theapplications 1710 invoke application programming interface (API) calls 1712 through the software stack and receivemessages 1714 in response to the API calls 1712, according to some implementations. - In various implementations, the
operating system 1704 manages hardware resources and provides common services. Theoperating system 1704 includes, for example, akernel 1720,services 1722, anddrivers 1724. Thekernel 1720 acts as an abstraction layer between the hardware and the other software layers in some implementations. For example, thekernel 1720 provides memory management, processor management (e.g., scheduling), component management, networking, security settings, among other functionality. Theservices 1722 may provide other common services for the other software layers. Thedrivers 1724 may be responsible for controlling or interfacing with the underlying hardware. For instance, thedrivers 1724 may include display drivers, camera drivers, Bluetooth® drivers, flash memory drivers, serial communication drivers (e.g., Universal Serial Bus (USB) drivers), Wi-Fi® drivers, audio drivers, power management drivers, and so forth. - In some implementations, the
libraries 1706 provide a low-level common infrastructure that may be utilized by theapplications 1710. Thelibraries 1706 may includesystem 1730 libraries (e.g., C standard library) that may provide functions such as memory allocation functions, string manipulation functions, mathematic functions, and the like. In addition, thelibraries 1706 may includeAPI libraries 1732 such as media libraries (e.g., libraries to support presentation and manipulation of various media formats such as Moving Picture Experts Group-4 (MPEG4), Advanced Video Coding (H.264 or AVC), Moving Picture Experts Group Layer-3 (MP3), Advanced Audio Coding (AAC), Adaptive Multi-Rate (AMR) audio codec, Joint Photographic Experts Group (JPEG or JPG), Portable Network Graphics (PNG)), graphics libraries (e.g., an OpenGL framework used to render in two dimensions (2D) and three dimensions (3D) in a graphic content on a display), database libraries (e.g., SQLite to provide various relational database functions), web libraries (e.g., WebKit to provide web browsing functionality), and the like. Thelibraries 1706 may also include a wide variety ofother libraries 1734 to provide many other APIs to theapplications 1710. - The
frameworks 1708 provide a high-level common infrastructure that may be utilized by theapplications 1710, according to some implementations. For example, theframeworks 1708 provide various graphic user interface (GUI) functions, high-level resource management, high-level location services, and so forth. Theframeworks 1708 may provide abroad spectrum of other APIs that may be utilized by theapplications 1710, some of which may be specific to a particular operating system or platform. - In an example embodiment, the
applications 1710 include ahome application 1750, acontacts application 1752, abrowser application 1754, abook reader application 1756, alocation application 1758, amedia application 1760, amessaging application 1762, agame application 1764, and a broad assortment of other applications such asthird party application 1766. According to some embodiments, theapplications 1710 are programs that execute functions defined in the programs. Various programming languages may be employed to create one or more of theapplications 1710, structured in a variety of manners, such as object-orientated programming languages (e.g., Objective-C, Java, or C++) or procedural programming languages (e.g., C or assembly language). In a specific example, the third party application 1766 (e.g., an application developed using the Android™ or iOS™ software development kit (SDK) by an entity other than the vendor of the particular platform) may be mobile software running on a mobile operating system such as iOS™, Android™, Windows® Phone, or other mobile operating systems. In this example, thethird party application 1766 may invoke the API calls 1712 provided by themobile operating system 1704 to facilitate functionality described herein. -
FIG. 18 is a block diagram illustrating components of amachine 1800, according to some example embodiments, able to read instructions from a machine-readable medium (e.g., a machine-readable storage medium) and perform any one or more of the methodologies discussed herein. Specifically,FIG. 18 shows a diagrammatic representation of themachine 1800 in the example form of a computer system, within which instructions 1816 (e.g., software, a program, an application, an applet, an app, or other executable code) for causing themachine 1800 to perform any one or more of the methodologies discussed herein may be executed. In alternative embodiments, themachine 1800 operates as a standalone device or may be coupled (e.g., networked) to other machines. In a networked deployment, themachine 1800 may operate in the capacity of a server machine or a client machine in a server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. Themachine 1800 may comprise, but not be limited to, a server computer, a client computer, a personal computer (PC), a tablet computer, a laptop computer, a netbook, a set-top box (STB), a personal digital assistant (PDA), an entertainment media system, a cellular telephone, a smart phone, a mobile device, a wearable device (e.g., a smart watch), a smart home device (e.g., a smart appliance), other smart devices, a web appliance, a network router, a network switch, a network bridge, or any machine capable of executing theinstructions 1816, sequentially or otherwise, that specify actions to be taken bymachine 1800. Further, while only asingle machine 1800 is illustrated, the term “machine” shall also be taken to include a collection ofmachines 1800 that individually or jointly execute theinstructions 1816 to perform any one or more of the methodologies discussed herein. - The
machine 1800 may includeprocessors 1810,memory 1830, and I/O components 1850, which may be configured to communicate with each other via a bus 1802. In an example embodiment, the processors 1810 (e.g., a Central Processing Unit (CPU), a Reduced Instruction Set Computing (RISC) processor, a Complex Instruction Set Computing (CISC) processor, a Graphics Processing Unit (GPU), a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Radio-Frequency Integrated Circuit (RFIC), another processor, or any suitable combination thereof) may include, for example,processor 1812 andprocessor 1814 that may executeinstructions 1816. The term “processor” is intended to include multi-core processors that may comprise two or more independent processors (also referred to as “cores”) that may execute instructions contemporaneously. AlthoughFIG. 18 shows multiple processors, themachine 1800 may include a single processor with a single core, a single processor with multiple cores (e.g., a multi-core process), multiple processors with a single core, multiple processors with multiples cores, or any combination thereof. - The
memory 1830 may include a main memory 1832, astatic memory 1834, and astorage unit 1836 accessible to theprocessors 1810 via the bus 1802. Thestorage unit 1836 may include a machine-readable medium 1838 on which is stored theinstructions 1816 embodying any one or more of the methodologies or functions described herein. Theinstructions 1816 may also reside, completely or at least partially, within the main memory 1832, within thestatic memory 1834, within at least one of the processors 1810 (e.g., within the processor's cache memory), or any suitable combination thereof, during execution thereof by themachine 1800. Accordingly, in various implementations, the main memory 1832,static memory 1834, and theprocessors 1810 are considered as machine-readable media 1838. - As used herein, the term “memory” refers to a machine-
readable medium 1838 able to store data temporarily or permanently and may be taken to include, but not be limited to, random-access memory (RAM), read-only memory (ROM), buffer memory, flash memory, and cache memory. While the machine-readable medium 1838 is shown in an example embodiment to be a single medium, the term “machine-readable medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, or associated caches and servers) able to storeinstructions 1816. The term “machine-readable medium” shall also be taken to include any medium, or combination of multiple media, that is capable of storing instructions (e.g., instructions 1816) for execution by a machine (e.g., machine 1800), such that the instructions, when executed by one or more processors of the machine 1800 (e.g., processors 1810), cause themachine 1800 to perform any one or more of the methodologies described herein. Accordingly, a “machine-readable medium” refers to a single storage apparatus or device, as well as “cloud-based” storage systems or storage networks that include multiple storage apparatus or devices. The term “machine-readable medium” shall accordingly be taken to include, but not be limited to, one or more data repositories in the form of a solid-state memory (e.g., flash memory), an optical medium, a magnetic medium, other non-volatile memory (e.g., Erasable Programmable Read-Only Memory (EPROM)), or any suitable combination thereof. The term “machine-readable medium” specifically excludes non-statutory signals per se. - The I/
O components 1850 include a wide variety of components to receive input, provide output, produce output, transmit information, exchange information, capture measurements, and so on. In general, it will be appreciated that the I/O components 1850 may include many other components that are not shown inFIG. 18 . The I/O components 1850 are grouped according to functionality merely for simplifying the following discussion and the grouping is in no way limiting. In various example embodiments, the I/O components 1850 includeoutput components 1852 and input components 1854. Theoutput components 1852 include visual components (e.g., a display such as a plasma display panel (PDP), a light emitting diode (LED) display, a liquid crystal display (LCD), a projector, or a cathode ray tube (CRT)), acoustic components (e.g., speakers), haptic components (e.g., a vibratory motor), other signal generators, and so forth. The input components 1854 include alphanumeric input components (e.g., a keyboard, a touch screen configured to receive alphanumeric input, a photo-optical keyboard, or other alphanumeric input components), point based input components (e.g., a mouse, a touchpad, a trackball, a joystick, a motion sensor, or other pointing instrument), tactile input components (e.g., a physical button, a touch screen that provides location and force of touches or touch gestures, or other tactile input components), audio input components (e.g., a microphone), and the like. - In some further example embodiments, the I/
O components 1850 includebiometric components 1856,motion components 1858,environmental components 1860, orposition components 1862 among a wide array of other components. For example, thebiometric components 1856 include components to detect expressions (e.g., hand expressions, facial expressions, vocal expressions, body gestures, or eye tracking), measure biosignals (e.g., blood pressure, heart rate, body temperature, perspiration, or brain waves), identify a person (e.g., voice identification, retinal identification, facial identification, fingerprint identification, or electroencephalogram based identification), and the like. Themotion components 1858 include acceleration sensor components (e.g., accelerometer), gravitation sensor components, rotation sensor components (e.g., gyroscope), and so forth. Theenvironmental components 1860 include, for example, illumination sensor components (e.g., photometer), temperature sensor components (e.g., one or more thermometer that detect ambient temperature), humidity sensor components, pressure sensor components (e.g., barometer), acoustic sensor components (e.g., one or more microphones that detect background noise), proximity sensor components (e.g., infrared sensors that detect nearby objects), gas sensors (e.g., machine olfaction detection sensors, gas detection sensors to detection concentrations of hazardous gases for safety or to measure pollutants in the atmosphere), or other components that may provide indications, measurements, or signals corresponding to a surrounding physical environment. Theposition components 1862 include location sensor components (e.g., a Global Position System (GPS) receiver component), altitude sensor components (e.g., altimeters or barometers that detect air pressure from which altitude may be derived), orientation sensor components (e.g., magnetometers), and the like. - Communication may be implemented using a wide variety of technologies. The I/
O components 1850 may includecommunication components 1864 operable to couple themachine 1800 to anetwork 1880 ordevices 1870 viacoupling 1882 andcoupling 1872, respectively. For example, thecommunication components 1864 include a network interface component or another suitable device to interface with thenetwork 1880. In further examples,communication components 1864 include wired communication components, wireless communication components, cellular communication components, Near Field Communication (NFC) components, Bluetooth® components (e.g., Bluetooth® Low Energy), Wi-Fi® components, and other communication components to provide communication via other modalities. Thedevices 1870 may be another machine or any of a wide variety of peripheral devices (e.g., a peripheral device coupled via a Universal Serial Bus (USB)). - Moreover, in some implementations, the
communication components 1864 detect identifiers or include components operable to detect identifiers. For example, thecommunication components 1864 include Radio Frequency Identification (RFID) tag reader components, NFC smart tag detection components, optical reader components (e.g., an optical sensor to detect a one-dimensional bar codes such as Universal Product Code (UPC) bar code, multi-dimensional bar codes such as Quick Response (QR) code, Aztec code, Data Matrix, Dataglyph, MaxiCode, PDF417, Ultra Code, Uniform Commercial Code Reduced Space Symbology (UCC RSS)-2D bar code, and other optical codes), acoustic detection components (e.g., microphones to identify tagged audio signals), or any suitable combination thereof. In addition, a variety of information can be derived via thecommunication components 1864, such as, location via Internet Protocol (IP) geo-location, location via Wi-Fi® signal triangulation, location via detecting a NFC beacon signal that may indicate a particular location, and so forth. - In various example embodiments, one or more portions of the
network 1880 may be an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless WAN (WWAN), a metropolitan area network (MAN), the Internet, a portion of the Internet, a portion of the Public Switched Telephone Network (PSTN), a plain old telephone service (POTS) network, a cellular telephone network, a wireless network, a Wi-Fi® network, another type of network, or a combination of two or more such networks. For example, thenetwork 1880 or a portion of thenetwork 1880 may include a wireless or cellular network and thecoupling 1882 may be a Code Division Multiple Access (CDMA) connection, a Global System for Mobile communications (GSM) connection, or other type of cellular or wireless coupling. In this example, thecoupling 1882 may implement any of a variety of types of data transfer technology, such as Single Carrier Radio Transmission Technology (1×RTT), Evolution-Data Optimized (EVDO) technology, General Packet Radio Service (GPRS) technology, Enhanced Data rates for GSM Evolution (EDGE) technology, third Generation Partnership Project (3GPP) including 3G, fourth generation wireless (4G) networks, Universal Mobile Telecommunications System (UMTS), High Speed Packet Access (HSPA), Worldwide Interoperability for Microwave Access (WiMAX), Long Term Evolution (LTE) standard, others defined by various standard setting organizations, other long range protocols, or other data transfer technology. - In example embodiments, the
instructions 1816 are transmitted or received over thenetwork 1880 using a transmission medium via a network interface device (e.g., a network interface component included in the communication components 1864) and utilizing any one of a number of well-known transfer protocols (e.g., Hypertext Transfer Protocol (HTTP)). Similarly, in other example embodiments, theinstructions 1816 are transmitted or received using a transmission medium via the coupling 1872 (e.g., a peer-to-peer coupling) todevices 1870. The term “transmission medium” shall be taken to include any intangible medium that is capable of storing, encoding, or carryinginstructions 1816 for execution by themachine 1800, and includes digital or analog communications signals or other intangible medium to facilitate communication of such software. - Furthermore, the machine-
readable medium 1838 is non-transitory (in other words, not having any transitory signals) in that it does not embody a propagating signal. However, labeling the machine-readable medium 1838 as “non-transitory” should not be construed to mean that the medium is incapable of movement; the medium should be considered as being transportable from one physical location to another. Additionally, since the machine-readable medium 1838 is tangible, the medium may be considered to be a machine-readable device. - Throughout this specification, plural instances may implement components, operations, or structures described as a single instance. Although individual operations of one or more methods are illustrated and described as separate operations, one or more of the individual operations may be performed concurrently, and nothing requires that the operations be performed in the order illustrated. Structures and functionality presented as separate components in example configurations may be implemented as a combined structure or component. Similarly, structures and functionality presented as a single component may be implemented as separate components. These and other variations, modifications, additions, and improvements fall within the scope of the subject matter herein.
- Although an overview of the inventive subject matter has been described with reference to specific example embodiments, various modifications and changes may be made to these embodiments without departing from the broader scope of embodiments of the present disclosure. Such embodiments of the inventive subject matter may be referred to herein, individually or collectively, by the term “invention” merely for convenience and without intending to voluntarily limit the scope of this application to any single disclosure or inventive concept if more than one is, in fact, disclosed.
- The embodiments illustrated herein are described in sufficient detail to enable those skilled in the art to practice the teachings disclosed. Other embodiments may be used and derived therefrom, such that structural and logical substitutions and changes may be made without departing from the scope of this disclosure. The Detailed Description, therefore, is not to be taken in a limiting sense, and the scope of various embodiments is defined only by the appended claims, along with the full range of equivalents to which such claims are entitled.
- As used herein, the term “or” may be construed in either an inclusive or exclusive sense. Moreover, plural instances may be provided for resources, operations, or structures described herein as a single instance. Additionally, boundaries between various resources, operations, modules, engines, and data stores are somewhat arbitrary, and particular operations are illustrated in a context of specific illustrative configurations. Other allocations of functionality are envisioned and may fall within a scope of various embodiments of the present disclosure. In general, structures and functionality presented as separate resources in the example configurations may be implemented as a combined structure or resource. Similarly, structures and functionality presented as a single resource may be implemented as separate resources. These and other variations, modifications, additions, and improvements fall within a scope of embodiments of the present disclosure as represented by the appended claims. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.
Claims (20)
1. A system comprising:
a data module to access entity data that associates respective items of a plurality of items with respective entities of a plurality of entities, each entity of the plurality of entities being a member of at least one social network service;
an item module to receive an item indication, triggered by a user action of a user, that indicates a user desire for a mutual item, the user being a member of at least one social network service;
an analysis module, implemented by at least one hardware processor of a machine, to identify a suggested entity from among the plurality of entities by matching the mutual item with respective items of the plurality of items, the suggested entity not having a social network connection with the user on a mutual social network service, the user and the suggested entity being members of the mutual social network service; and
a presentation module to cause recommendation of a new social network connection on the mutual social network service between the user and the suggested entity.
2. The system of claim 1 , wherein:
the analysis module further to identify a non-mutual item of the plurality of items that corresponds to the suggested entity, the non-mutual item not being indicated by the user desire; and
the presentation module to cause presentation of the non-mutual item to the user, the presentation including an option for the user to generate another item indication that indicates a desire for the non-mutual item.
3. A method comprising:
accessing entity data that associates respective items of a plurality of items with respective entities of a plurality of entities, each entity of the plurality of entities being a member of at least one social network service;
receiving an item indication, generated in response to a user action of a user, that indicates a user affinity for a mutual item, the user being a member of at least one social network service;
identifying, using a hardware processor of a machine, a suggested entity from among the plurality of entities by matching the mutual item with respective items of the plurality of items, the suggested entity not having a social network connection with the user on a mutual social network service, the user and the suggested entity being members of the mutual social network service; and
causing recommendation of a new social network relationship on the mutual social network service between the user and the suggested entity.
4. The method of claim 3 , further comprising:
identifying a non-mutual item of the plurality of items corresponding to the suggested entity, the non-mutual item not being indicated by the user affinity; and
causing presentation of the non-mutual item to the user, the presentation including an option for the user to generate another item indication that indicates an affinity for the non-mutual item.
5. The method of claim 3 , further comprising:
identifying a contact entity associated with the user on a user social network service, the user being a member of the user social network service, the contact entity having asocial network relationship on the user social network service with the user;
accessing a contact item corresponding to the contact entity; and
causing presentation of the contact item to the user, the presentation including an option for the user to generate another item indication that indicates an affinity for the contact item.
6. The method of claim 3 , wherein the item indication is generated by:
monitoring user location data, received from a user device of the user, that includes a physical user location of the user;
accessing local entity location data that includes physical entity locations of local entities;
identifying a local entity from among the plurality of entities by matching the user location data with the entity location data;
accessing local item data corresponding to the local entity, wherein the local item data comprises a plurality of local items; and
generating the item indication that indicates a user affinity for a local item included in the plurality of local items.
7. The method of claim 6 , further comprising:
providing an option to purchase the local item from the local entity; and
based on receiving a selection of the option to purchase the local item, facilitating the purchase of the local item including determining a pick-up time and location for the local item.
8. The method of claim 6 , wherein the user location data is received in real-time from the user device and the determining the local entity is determined in real-time.
9. The method of claim 4 , wherein the item indication is generated by:
receiving user preferences associated with an affinity for items of the plurality of items; and
identifying the non-mutual item based, at least in part, on the user preferences.
10. The method of claim 3 , wherein the plurality of entities includes at least one of a business, an organization, and a person.
11. The method of claim 3 , further comprising:
accessing purchase history data corresponding to the plurality of entities; and
associating respective entities of the plurality of entities with respective items included in the purchase history.
12. A machine readable medium having no transitory signals and storing instructions that, when executed by at least one processor of a machine, cause the machine to perform operations comprising:
accessing entity data that associates respective items of a plurality of items with respective entities of a plurality of entities, each entity of the plurality of entities being members of at least one social network service;
receiving an item indication, generated in response to a user action of a user, that indicates a user affinity for a mutual item, the user being a member of at least one social network service;
identifying a suggested entity from among the plurality of entities by matching the mutual item with respective items of the plurality of items, the suggested entity not having a social network connection with the user on a mutual social network service, the user and the suggested entity being members of the mutual social network service; and
causing recommendation of a new social network relationship on the mutual social network service between the user and the suggested entity.
13. The machine-readable medium of claim 12 , wherein the operations further comprise:
identifying a non-mutual item of the plurality of items corresponding to the proposed entity, the non-mutual item not being indicated by the user demand; and
causing presentation of the non-mutual item to the user, the presentation including an option for the user to generate another item indication that indicates a demand for the non-mutual item.
14. The machine-readable medium of claim 12 , wherein the operations further comprise:
identifying a contact entity associated with the user on a user social network service, the user being a member of the user social network service, the contact entity having a social network relationship on the user social network service with the user;
accessing a contact item corresponding to the contact entity; and
causing presentation of the contact item to the user, the presentation including an option for the user to generate another item indication that indicates an affinity for the contact item.
15. The machine-readable medium of claim 12 , wherein the operations further comprise:
monitoring user location data, received from a user device of the user, that includes a physical user location of the user;
accessing local entity location data that includes physical entity locations of local entities;
identifying a local entity from among the plurality of entities by matching the user location data with the entity location data;
accessing local item data corresponding to the local entity, wherein the local item data comprises a plurality of local items; and
generating the item indication that indicates a user demand for a local item included in the plurality of local items.
16. The machine-readable medium of claim 15 , wherein the operations further comprise:
providing an option to purchase the local item from the local entity; and
based on receiving a selection of the option to purchase the local item, facilitating the purchase of the local item including determining a pick-up time and location for the local item.
17. The machine-readable medium of claim 15 , wherein the user location data is received in real-time from the user device and the determining the local entity is determined in real-time.
18. The machine-readable medium of claim 13 , wherein the operations further comprise:
receiving user preferences associated with an affinity for items of the plurality of items; and
identifying the non-mutual item based, at least in part, on the user preferences.
19. The machine-readable medium of claim 12 , wherein the plurality of entities includes at least one of a business, an organization, and a person.
20. The machine-readable medium of claim 12 , wherein the operations further comprise:
accessing purchase history data corresponding to the plurality of entities; and
associating respective entities of the plurality of entities with respective items included in the purchase history.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/466,801 US20150058239A1 (en) | 2013-08-23 | 2014-08-22 | Item-based social discovery |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361869557P | 2013-08-23 | 2013-08-23 | |
US14/466,801 US20150058239A1 (en) | 2013-08-23 | 2014-08-22 | Item-based social discovery |
Publications (1)
Publication Number | Publication Date |
---|---|
US20150058239A1 true US20150058239A1 (en) | 2015-02-26 |
Family
ID=52481220
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/465,710 Abandoned US20150058142A1 (en) | 2013-08-23 | 2014-08-21 | Store-integrated tablet |
US14/465,786 Abandoned US20150058123A1 (en) | 2013-08-23 | 2014-08-21 | Contextually aware interactive advertisements |
US14/466,801 Abandoned US20150058239A1 (en) | 2013-08-23 | 2014-08-22 | Item-based social discovery |
US14/466,857 Active 2035-12-06 US9842351B2 (en) | 2013-08-23 | 2014-08-22 | Generating product listings using locker sensors |
US15/837,675 Active 2035-06-15 US11188948B2 (en) | 2013-08-23 | 2017-12-11 | Generating product listings using locker sensor data and reconfiguring lockers based on product size |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/465,710 Abandoned US20150058142A1 (en) | 2013-08-23 | 2014-08-21 | Store-integrated tablet |
US14/465,786 Abandoned US20150058123A1 (en) | 2013-08-23 | 2014-08-21 | Contextually aware interactive advertisements |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/466,857 Active 2035-12-06 US9842351B2 (en) | 2013-08-23 | 2014-08-22 | Generating product listings using locker sensors |
US15/837,675 Active 2035-06-15 US11188948B2 (en) | 2013-08-23 | 2017-12-11 | Generating product listings using locker sensor data and reconfiguring lockers based on product size |
Country Status (1)
Country | Link |
---|---|
US (5) | US20150058142A1 (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160180391A1 (en) * | 2014-12-17 | 2016-06-23 | Ebay Inc. | Displaying merchandise with avatars |
US20160292247A1 (en) * | 2015-03-31 | 2016-10-06 | Kenneth Scott Kaufman | Method of retrieving categorical data entries through an interactive graphical abstraction |
WO2016203459A2 (en) * | 2015-06-18 | 2016-12-22 | WYMP, Inc. | Searching based on ranking of quality |
US9532188B1 (en) * | 2014-08-10 | 2016-12-27 | Google Inc. | Creating a group based on proximate detection |
US9842351B2 (en) | 2013-08-23 | 2017-12-12 | Ebay Inc. | Generating product listings using locker sensors |
WO2018009550A1 (en) * | 2015-12-01 | 2018-01-11 | Ebay Inc. | Sensor based product recommendations |
US20180267674A1 (en) * | 2017-03-15 | 2018-09-20 | Facebook, Inc. | Systems and methods for providing interactive user interface elements for obtaining feedback within a media content item |
US10540691B2 (en) * | 2015-01-06 | 2020-01-21 | Facebook, Inc. | Techniques for context sensitive overlays |
US10560560B2 (en) * | 2016-07-29 | 2020-02-11 | Cardex Group Pty Ltd | Contact information exchanging and content system and method for networking and marketing |
Families Citing this family (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8774455B2 (en) | 2011-03-02 | 2014-07-08 | Raf Technology, Inc. | Document fingerprinting |
US9443298B2 (en) | 2012-03-02 | 2016-09-13 | Authentect, Inc. | Digital fingerprinting object authentication and anti-counterfeiting system |
US10346852B2 (en) | 2016-02-19 | 2019-07-09 | Alitheon, Inc. | Preserving authentication under item change |
EP2951765A4 (en) | 2013-02-01 | 2016-08-10 | United Parcel Service Inc | Systems and methods for package delivery to alternate delivery locations |
US10521761B2 (en) | 2013-03-12 | 2019-12-31 | United Parcel Service Of America, Inc. | Systems and methods of delivering parcels using attended delivery/pickup locations |
EP3058488A4 (en) | 2013-10-14 | 2017-03-15 | United Parcel Service Of America, Inc. | Systems and methods for confirming an identity of an indivdiual, for example, at a locker bank |
US9639889B2 (en) * | 2013-12-23 | 2017-05-02 | Ebay Inc. | Discovery engine storefront |
US10528908B2 (en) * | 2014-03-12 | 2020-01-07 | Ebay Inc. | Automatic location based discovery of extended inventory |
CA2967064C (en) | 2014-11-14 | 2020-08-25 | United Parcel Service Of America, Inc. | Systems and methods for facilitating shipping of parcels for returning items |
US10410164B2 (en) | 2014-11-14 | 2019-09-10 | United Parcel Service Of America, Inc | Systems and methods for facilitating shipping of parcels |
US9743041B1 (en) * | 2015-01-22 | 2017-08-22 | Lawrence J. Owen | AskMe now system and method |
US10055707B2 (en) | 2015-04-07 | 2018-08-21 | Paypal, Inc. | Location detection devices for use in a courier services network |
US10296949B2 (en) * | 2015-04-21 | 2019-05-21 | Facebook, Inc. | Messenger application plug-in for providing tailored advertisements within a conversation thread |
US10083479B2 (en) * | 2015-06-04 | 2018-09-25 | Verizon Patent And Licensing Inc. | Systems and methods for product user interface development |
GB2544871A (en) * | 2015-10-08 | 2017-05-31 | Rfid Innovation Res Ltd | Intelligent display system and method |
US11121999B2 (en) | 2015-10-30 | 2021-09-14 | Microsoft Technology Licensing, Llc | Communication interface for wearable devices |
EP3174001A1 (en) * | 2015-11-27 | 2017-05-31 | Fujitsu Limited | Gaze tracking system and gaze tracking method |
KR102377002B1 (en) * | 2016-01-27 | 2022-03-21 | 삼성전자주식회사 | Electronic apparatus and operating method thereof |
US10867301B2 (en) | 2016-04-18 | 2020-12-15 | Alitheon, Inc. | Authentication-triggered processes |
CN106021586B (en) * | 2016-06-06 | 2020-02-18 | 腾讯科技(北京)有限公司 | Information processing method and server |
US10740767B2 (en) | 2016-06-28 | 2020-08-11 | Alitheon, Inc. | Centralized databases storing digital fingerprints of objects for collaborative authentication |
US10915612B2 (en) | 2016-07-05 | 2021-02-09 | Alitheon, Inc. | Authenticated production |
US11707216B2 (en) * | 2016-07-21 | 2023-07-25 | Comcast Cable Communications, Llc | Recommendations based on biometric feedback from wearable device |
US10902540B2 (en) | 2016-08-12 | 2021-01-26 | Alitheon, Inc. | Event-driven authentication of physical objects |
US10839528B2 (en) | 2016-08-19 | 2020-11-17 | Alitheon, Inc. | Authentication-based tracking |
US10600022B2 (en) | 2016-08-31 | 2020-03-24 | United Parcel Service Of America, Inc. | Systems and methods for synchronizing delivery of related parcels via a computerized locker bank |
MX2019003023A (en) * | 2016-09-16 | 2019-07-01 | Walmart Apollo Llc | Returned product detection. |
WO2018144842A1 (en) * | 2017-02-03 | 2018-08-09 | Viatouch Media Inc. | System and method of stocking and individualized merchandising in an automatic retail device |
US11157886B2 (en) | 2017-02-03 | 2021-10-26 | Viatouch Media Inc. | Cantilevered weight sensitive shelf, rail, and mounting system |
EP3435287A3 (en) | 2017-07-25 | 2019-05-01 | Alitheon, Inc. | Model-based digital fingerprinting |
US10635801B2 (en) | 2017-10-30 | 2020-04-28 | Walmart Apollo, Llc | Systems and methods for securing access to storage and retrieval systems |
CN107909741A (en) * | 2017-11-13 | 2018-04-13 | 北京小米移动软件有限公司 | The method and shared cabinet system of the shared cabinet of management |
US10970549B1 (en) | 2017-11-14 | 2021-04-06 | Wells Fargo Bank, N.A. | Virtual assistant of safe locker |
US10242263B1 (en) | 2017-11-14 | 2019-03-26 | Wells Fargo Bank, N.A. | Virtual assistant of safe locker |
US11087013B2 (en) | 2018-01-22 | 2021-08-10 | Alitheon, Inc. | Secure digital fingerprint key object database |
US11055763B2 (en) | 2018-04-04 | 2021-07-06 | Ebay Inc. | User authentication in hybrid online and real-world environments |
USD917527S1 (en) * | 2018-10-23 | 2021-04-27 | Yoox Net-A-Porter Group Spa | Display screen with graphical user interface |
US11263581B2 (en) * | 2019-01-11 | 2022-03-01 | Fff Enterprises, Inc. | Storage devices and operation methods thereof |
US11907894B2 (en) * | 2019-01-11 | 2024-02-20 | Fff Enterprises, Inc. | Storage devices and operation methods thereof |
US10963670B2 (en) | 2019-02-06 | 2021-03-30 | Alitheon, Inc. | Object change detection and measurement using digital fingerprints |
US10939143B2 (en) | 2019-03-26 | 2021-03-02 | Wipro Limited | System and method for dynamically creating and inserting immersive promotional content in a multimedia |
CN110009828A (en) * | 2019-04-12 | 2019-07-12 | 武汉找学网科技有限公司 | A kind of locker based on Internet of Things, storing method and system |
EP3734506A1 (en) | 2019-05-02 | 2020-11-04 | Alitheon, Inc. | Automated authentication region localization and capture |
EP3736717A1 (en) | 2019-05-10 | 2020-11-11 | Alitheon, Inc. | Loop chain digital fingerprint method and system |
US10948988B1 (en) * | 2019-09-09 | 2021-03-16 | Tectus Corporation | Contextual awareness based on eye motion tracking by an eye-mounted system |
US11238146B2 (en) | 2019-10-17 | 2022-02-01 | Alitheon, Inc. | Securing composite objects using digital fingerprints |
EP3859603A1 (en) | 2020-01-28 | 2021-08-04 | Alitheon, Inc. | Depth-based digital fingerprinting |
EP3885982A3 (en) | 2020-03-23 | 2021-12-22 | Alitheon, Inc. | Hand biometrics system and method using digital fingerprints |
US11568683B2 (en) | 2020-03-23 | 2023-01-31 | Alitheon, Inc. | Facial biometrics system and method using digital fingerprints |
EP3929806A3 (en) | 2020-04-06 | 2022-03-09 | Alitheon, Inc. | Local encoding of intrinsic authentication data |
US11663849B1 (en) | 2020-04-23 | 2023-05-30 | Alitheon, Inc. | Transform pyramiding for fingerprint matching system and method |
EP3916631A1 (en) | 2020-05-28 | 2021-12-01 | Alitheon, Inc. | Irreversible digital fingerprints for preserving object security |
EP3926496A1 (en) | 2020-06-17 | 2021-12-22 | Alitheon, Inc. | Asset-backed digital security tokens |
US11540007B2 (en) * | 2020-11-04 | 2022-12-27 | Digital Turbine, Inc. | Cross-device interaction |
US11908262B2 (en) | 2021-11-18 | 2024-02-20 | Capital One Services, Llc | Token based secure access to a locker system |
US20240087386A1 (en) * | 2022-09-13 | 2024-03-14 | Grubbrr Spv Llc | Systems and methods for management of dual sided delivery locker array |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120203846A1 (en) * | 2004-01-29 | 2012-08-09 | Hull Mark E | Social network for providing recommendations for items of interest |
US20130073632A1 (en) * | 2011-09-21 | 2013-03-21 | Vladimir Fedorov | Structured objects and actions on a social networking system |
US20130103758A1 (en) * | 2011-10-19 | 2013-04-25 | c/o Facebook, Inc. | Filtering and ranking recommended users on a social networking system |
US20130212173A1 (en) * | 2012-02-13 | 2013-08-15 | Robert William Carthcart | Suggesting relationship modifications to users of a social networking system |
US20140164126A1 (en) * | 2005-05-20 | 2014-06-12 | Frank C. Nicholas | Method and system for product delivery |
US9406084B2 (en) * | 2012-05-23 | 2016-08-02 | Specialty's Café & Bakery, Inc. | Methods for submitting a food order remotely |
Family Cites Families (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5158155A (en) * | 1990-10-11 | 1992-10-27 | Vendorsgroup, Inc. | Vendors' structural complex |
US8346626B2 (en) | 1999-05-07 | 2013-01-01 | Robertson Steven C | System and method for providing electronic multi-merchant gift registry services over a distributed network |
SG94334A1 (en) | 1999-09-15 | 2003-02-18 | First Cube Pte Ltd | A method and system for facilitating delivery and pickup of goods |
US7257552B1 (en) * | 2000-03-27 | 2007-08-14 | Hector Franco | Consumer products distribution system |
US7698240B1 (en) * | 2000-05-15 | 2010-04-13 | I2 Technologies Us, Inc. | System and method for providing electronic financial transaction services |
US6886895B2 (en) * | 2000-05-24 | 2005-05-03 | Globix Corporation | Security locker for computer equipment |
US6546309B1 (en) * | 2000-06-29 | 2003-04-08 | Kinney & Lange, P.A. | Virtual fitting room |
US6694217B2 (en) * | 2001-05-24 | 2004-02-17 | Breakthrough Logistics Corporation | Automated system for efficient article storage and self-service retrieval |
US20020178074A1 (en) | 2001-05-24 | 2002-11-28 | Gregg Bloom | Method and apparatus for efficient package delivery and storage |
US7653457B2 (en) * | 2001-03-16 | 2010-01-26 | Breakthrough Logistics Corporation | Method and system for efficient package delivery and storage |
US7890375B2 (en) * | 2001-07-31 | 2011-02-15 | Half.Com, Inc. | Method and system to facilitate pre-ordering via an electronic commerce facility, and to automatically facilitate satisfying of a pre-order upon listing of an appropriate offer via the electronic commerce facility |
US8782691B1 (en) * | 2002-01-15 | 2014-07-15 | The Directv Group, Inc. | Time shifted targeted advertisements based upon user profiles |
US8700586B2 (en) * | 2005-10-31 | 2014-04-15 | Yahoo! Inc. | Clickable map interface |
US7873549B1 (en) * | 2006-03-27 | 2011-01-18 | Amazon Technologies, Inc. | Product dimension correction |
US20070286358A1 (en) * | 2006-04-29 | 2007-12-13 | Msystems Ltd. | Digital audio recorder |
US7680786B2 (en) * | 2006-10-30 | 2010-03-16 | Yahoo! Inc. | Optimization of targeted advertisements based on user profile information |
US7733238B2 (en) * | 2007-04-27 | 2010-06-08 | Sensormatic Electronics, LLC | Handheld data capture system with power and safety monitor and method therefore |
US7853480B2 (en) | 2007-05-21 | 2010-12-14 | Amazon Technologies, Inc. | System and method for providing export services to merchants |
US20090024402A1 (en) * | 2007-07-20 | 2009-01-22 | Ebay Inc. | Search using multi-faceted reputation information |
US8356004B2 (en) * | 2007-12-13 | 2013-01-15 | Searete Llc | Methods and systems for comparing media content |
US8542906B1 (en) * | 2008-05-21 | 2013-09-24 | Sprint Communications Company L.P. | Augmented reality image offset and overlay |
US8494909B2 (en) * | 2009-02-09 | 2013-07-23 | Datalogic ADC, Inc. | Automatic learning in a merchandise checkout system with visual recognition |
US20110238512A1 (en) * | 2010-03-26 | 2011-09-29 | Eric Hapaki Doty | Method and Apparatus for Showroom Sales |
WO2012003580A1 (en) * | 2010-07-08 | 2012-01-12 | Christopher Bryson | Consumer, retailer and supplier computing systems and methods |
US9324107B2 (en) | 2010-10-05 | 2016-04-26 | Centric Software, Inc. | Interactive collection book for mobile devices |
US8886172B2 (en) * | 2010-12-06 | 2014-11-11 | Echostar Technologies L.L.C. | Providing location information using matrix code |
US8413884B2 (en) * | 2011-03-03 | 2013-04-09 | Life In Mobile, Inc. | Method and apparatus for dynamically presenting content in response to successive scans of a static code |
US20130041761A1 (en) * | 2011-04-07 | 2013-02-14 | Jeffrey Allen Voda | Location based advertising asset tracking system and method |
US20130046594A1 (en) | 2011-06-04 | 2013-02-21 | Box Office Live Television, LLC | Interactive advertising displays |
US10043219B2 (en) * | 2012-02-21 | 2018-08-07 | Neil Shivraj DAVEY | Robotically assisted banking automation and insurance system |
US20130110678A1 (en) * | 2011-11-02 | 2013-05-02 | Apple Inc. | Purchasing a product in a store using a mobile device |
US10127565B2 (en) * | 2011-12-09 | 2018-11-13 | Samsung Electronics Co., Ltd. | Displaying mobile advertising based on determining user's physical activity from mobile device sensor data |
US8666836B2 (en) | 2011-12-15 | 2014-03-04 | Facebook, Inc. | Targeting items to a user of a social networking system based on a predicted event for the user |
US8606645B1 (en) | 2012-02-02 | 2013-12-10 | SeeMore Interactive, Inc. | Method, medium, and system for an augmented reality retail application |
US9170656B2 (en) * | 2012-03-01 | 2015-10-27 | Elwha Llc | Systems and methods for scanning a user environment and evaluating data of interest |
US20130262252A1 (en) * | 2012-03-29 | 2013-10-03 | Girish Lakshman | Pickup locations as a transfer point |
US20130325594A1 (en) * | 2012-06-05 | 2013-12-05 | Yahoo! Inc. | Sponsored applications |
US9898742B2 (en) | 2012-08-03 | 2018-02-20 | Ebay Inc. | Virtual dressing room |
US9462066B2 (en) | 2012-08-21 | 2016-10-04 | Facebook, Inc. | Social action by quick response (QR) code |
US20140114875A1 (en) * | 2012-10-23 | 2014-04-24 | Swapbox Inc. | Methods and systems for the secure sale of tangible goods |
US8972189B2 (en) | 2012-10-29 | 2015-03-03 | Ebay Inc. | Social mobile shopping system |
US20140122201A1 (en) | 2012-10-30 | 2014-05-01 | Aaron Johnson | Apparatus, method, and computer program product for online social marketing |
KR20160007488A (en) * | 2013-03-15 | 2016-01-20 | 로케이터 아이피, 엘피 | Shelf-level marketing and point of sales enrichment |
US20140330407A1 (en) * | 2013-05-01 | 2014-11-06 | Thomas Corder | Intelligent Reconfigurable Locker System |
US8827095B1 (en) * | 2013-07-24 | 2014-09-09 | Locker Storage Solutions, LLC | Expandable-collapsible safe |
US20150058142A1 (en) | 2013-08-23 | 2015-02-26 | Michael George Lenahan | Store-integrated tablet |
US20150332362A1 (en) * | 2014-05-16 | 2015-11-19 | Reverb.com LLC | System and method for facilitating sale of goods |
-
2014
- 2014-08-21 US US14/465,710 patent/US20150058142A1/en not_active Abandoned
- 2014-08-21 US US14/465,786 patent/US20150058123A1/en not_active Abandoned
- 2014-08-22 US US14/466,801 patent/US20150058239A1/en not_active Abandoned
- 2014-08-22 US US14/466,857 patent/US9842351B2/en active Active
-
2017
- 2017-12-11 US US15/837,675 patent/US11188948B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120203846A1 (en) * | 2004-01-29 | 2012-08-09 | Hull Mark E | Social network for providing recommendations for items of interest |
US20140164126A1 (en) * | 2005-05-20 | 2014-06-12 | Frank C. Nicholas | Method and system for product delivery |
US20130073632A1 (en) * | 2011-09-21 | 2013-03-21 | Vladimir Fedorov | Structured objects and actions on a social networking system |
US20130103758A1 (en) * | 2011-10-19 | 2013-04-25 | c/o Facebook, Inc. | Filtering and ranking recommended users on a social networking system |
US20130212173A1 (en) * | 2012-02-13 | 2013-08-15 | Robert William Carthcart | Suggesting relationship modifications to users of a social networking system |
US9406084B2 (en) * | 2012-05-23 | 2016-08-02 | Specialty's Café & Bakery, Inc. | Methods for submitting a food order remotely |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11188948B2 (en) | 2013-08-23 | 2021-11-30 | Ebay Inc. | Generating product listings using locker sensor data and reconfiguring lockers based on product size |
US9842351B2 (en) | 2013-08-23 | 2017-12-12 | Ebay Inc. | Generating product listings using locker sensors |
US9532188B1 (en) * | 2014-08-10 | 2016-12-27 | Google Inc. | Creating a group based on proximate detection |
US10210544B2 (en) * | 2014-12-17 | 2019-02-19 | Paypal, Inc. | Displaying merchandise with avatars |
US20160180391A1 (en) * | 2014-12-17 | 2016-06-23 | Ebay Inc. | Displaying merchandise with avatars |
US10540691B2 (en) * | 2015-01-06 | 2020-01-21 | Facebook, Inc. | Techniques for context sensitive overlays |
US11734723B1 (en) | 2015-01-06 | 2023-08-22 | Meta Platforms, Inc. | System for providing context-sensitive display overlays to a mobile device via a network |
US12093980B2 (en) | 2015-01-06 | 2024-09-17 | Meta Platforms, Inc. | Techniques for context sensitive overlays |
US20160292247A1 (en) * | 2015-03-31 | 2016-10-06 | Kenneth Scott Kaufman | Method of retrieving categorical data entries through an interactive graphical abstraction |
WO2016203459A3 (en) * | 2015-06-18 | 2017-02-09 | WYMP, Inc. | Searching based on ranking of quality |
WO2016203459A2 (en) * | 2015-06-18 | 2016-12-22 | WYMP, Inc. | Searching based on ranking of quality |
WO2018009550A1 (en) * | 2015-12-01 | 2018-01-11 | Ebay Inc. | Sensor based product recommendations |
US10560560B2 (en) * | 2016-07-29 | 2020-02-11 | Cardex Group Pty Ltd | Contact information exchanging and content system and method for networking and marketing |
US11477315B2 (en) | 2016-07-29 | 2022-10-18 | Cardex Group Pty Ltd. | Contact information exchanging and content system and method for networking and marketing |
US20180267674A1 (en) * | 2017-03-15 | 2018-09-20 | Facebook, Inc. | Systems and methods for providing interactive user interface elements for obtaining feedback within a media content item |
US10521825B2 (en) * | 2017-03-15 | 2019-12-31 | Facebook, Inc. | Systems and methods for providing interactive user interface elements for obtaining feedback within a media content item |
Also Published As
Publication number | Publication date |
---|---|
US20150058142A1 (en) | 2015-02-26 |
US20180232771A1 (en) | 2018-08-16 |
US20150058123A1 (en) | 2015-02-26 |
US20150058163A1 (en) | 2015-02-26 |
US11188948B2 (en) | 2021-11-30 |
US9842351B2 (en) | 2017-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20150058239A1 (en) | Item-based social discovery | |
US10783565B2 (en) | Method, manufacture, and system of transferring authenticated sessions and states between electronic devices | |
US11132722B2 (en) | Dynamic predefined product reviews | |
US11463368B2 (en) | Rate limiter | |
US10997166B2 (en) | Comparison and visualization system | |
US20160342288A1 (en) | Intelligent highlighting of item listing features | |
US10205669B2 (en) | System and method of site traffic control | |
US9519931B2 (en) | System and method for personalized actionable notifications | |
US20210037094A1 (en) | Adopting data across different sites | |
US11568474B2 (en) | On-line session trace system | |
US11928727B2 (en) | Managing products at a physical marketplace | |
US20160189262A1 (en) | System and method for buy through transactions | |
KR102355923B1 (en) | Cataloging initiated by social networks | |
US20210142376A1 (en) | Compatible model determination for efficient listing creation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: EBAY INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LENAHAN, MICHAEL GEORGE;CHUNG, CHAHN;SANDOVAL, MYRA;AND OTHERS;REEL/FRAME:033595/0572 Effective date: 20140821 |
|
AS | Assignment |
Owner name: PAYPAL, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:EBAY INC.;REEL/FRAME:036171/0221 Effective date: 20150717 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |