This application generally relates to management of supply of service, and in particular, management of supply of service using network-based systems and methods.
On-demand services such as transportation services and food ordering services are becoming more and more popular. To promote its on-demand service, a company may deliver to consumers coupons in the forms of voucher, credit, or discount. Systems that are able to deliver targeted coupons according to a specific type of consumers are desired.
One aspect of the present disclosure is directed to a system including a memory storing instructions and a processor in communication with the memory. When executing the instructions, the processor may be configured to establish a communication with a mobile device via a network and identify a user identity associated with a user of a service from the mobile device. The processor may he configured to obtain a user profile associated with the user identity and identify a trigger event indicating an intention of the user to initiate a service request for a service from the mobile device. The processor may also be configured to determine, based on the user profile and the trigger event, a promotion associated with the user identity and generate a message relating to the promotion to be sent to the mobile device.
Another aspect of the present disclosure is directed to a method. The method may include establishing a communication with a mobile device via a network and identifying a user identity associated with a user of a service from the mobile device. The method may include obtaining a user profile associated with the user identity and identifying a trigger event indicating an intention of the user to initiate a service request for a service from the mobile device. The method may also include determining, based on the user profile and the trigger event, a promotion associated with the user identity and generating a message relating to the promotion to be sent to the mobile device.
Yet another aspect of the present disclosure is directed to a non-transitory computer readable medium embodying a computer program product. The computer program product includes instructions configured to cause a computing system to establish a communication with a mobile device via a network and identify a user identity associated with a user of a service from the mobile device. The instructions may be configured to cause the computing system to obtain a user profile associated with the user identity and identify a trigger event indicating an intention of the user to initiate a service request for a service from the mobile device. The instructions may also be configured to cause the computing system to determine, based on the user profile and the trigger event, a promotion associated with the user identity, and generate a message relating to the promotion to be sent to the mobile device.
The methods, systems, and/or programming described herein are further described in terms of exemplary embodiments. These exemplary embodiments are described in detail with reference to the drawings. These embodiments are non-limiting exemplary embodiments, in which like reference numerals represent similar structures throughout the several views of the drawings, and wherein:
In the following detailed description, numerous specific details are set forth by way of examples in order to provide a thorough understanding of the relevant disclosure. However, it should be apparent to those skilled in the art that the present disclosure may be practiced without such details. In other instances, well known methods, procedures, systems, components, and/or circuitry have been described at a relatively high level, without detail, in order to avoid unnecessarily obscuring aspects of the present disclosure.
It will be understood that the term “system,” “device,” “unit,” and/or “module” used herein are one method to distinguish different components, elements, parts, section or assembly of different level in ascending order. However, the terms may be displaced by other expression if they may achieve the same purpose.
It will be understood that when a device, unit, or module is referred to as being “on,” “connected to” or “coupled to” another device, unit, or module, it may be directly on, connected or coupled to, or communicate with the other device, unit, or module, or an intervening device, unit, or module may be present, unless the context clearly indicates otherwise. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.
The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting. As used herein, the singular forms “a,” “an,” and “the” may be intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises,” “comprising,” “includes,” and/or “including” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
These and other features, and characteristics of the present disclosure, as well as the methods of operation and functions of the related elements of structure and the combination of parts and economies of manufacture, may become more apparent upon consideration of the following description with reference to the accompanying drawing(s), all of which form a part of this specification. It is to be expressly understood, however, that the drawings(s) are for the purpose of illustration and description only and are not intended to limit the scope of the present disclosure. It is understood that the drawings are not to scale.
Moreover, while the system and method in the present disclosure is described primarily in regard to determine a state of a vehicle, it should also be understood that this is only one exemplary embodiment. The system or method of the present disclosure may be applied to any other kind of on-demand service. For example, the system or method of the present disclosure may be applied to different transportation systems including land, ocean, aerospace, or the like, or any combination thereof. The vehicle of the transportation systems may include a taxi, a private car, a hitch, a bus, a train, a bullet train, a high speed rail, a subway, a vessel, an aircraft, a spaceship, a hot-air balloon, a driverless vehicle, or the like, or any combination thereof. The transportation system may also include any transportation system that applies management and/or distribution, for example, a system for sending and/or receiving an express. The application scenarios of the system or method of the present disclosure may include a webpage, a plug-in of a browser, a client terminal, a custom system, an internal analysis system, an artificial intelligence robot, or the like, or any combination thereof.
The term “user,” “passenger,” “requester,” “service requester,” and custom in the present disclosure are used interchangeably to refer to an individual, an entity or a tool that may request or order a service. Also, the term “driver,” “provider,” “service provider,” and “supplier” in the present disclosure are used interchangeably to refer to an individual, an entity or a tool that may provide a service or facilitate the providing of the service. The term “user equipment” in the present disclosure may refer to a tool that may be used to request a service, order a service, or facilitate the providing of the service. The term “mobile terminal” in the present disclosure may refer to a tool that may be used by a driver to provide a service. In the present disclosure, “user” and “user equipment (UE)” may be used interchangeably.
The term “service request” in the present disclosure refers to a request initiated by a user (for himself or herself, or a third party), a passenger, a requester, a service requester, a customer, or the like, or any combination thereof. The service requested may be payable upon the completion of the service or free. The term “order” in the present disclosure refers to an order sent from the server (e.g., server 110 in
The positioning technology used in the present disclosure may include a global positioning system (GPS), a global navigation satellite system (GLONASS), a compass navigation system (COMPASS), a Galileo positioning system, a quasi-zenith satellite system (QZSS), a wireless fidelity (WiFi) positioning technology, or the like, or any combination thereof. One or more of the above positioning technologies may be used interchangeably in the present disclosure.
The present disclosure describes methods and systems of a messages delivering system to determine and deliver messages about the promotion of a service. The method and system as disclosed herein aim at determining an attribute of the promotion, for example, the timing to deliver messages for the promotion or the amount of the promotion.
Server 110 may process information and/or data relating to a user (e.g., through a user identity or user ID). For example, server 110 may establish a communication with mobile user equipment 130 via network 120. Sever 110 may also identify a user identity associated with a user of a service from mobile user equipment 130, and determine or obtain a user profession associated with the user identity. Server 110 may further identify or detect a trigger event, and determine, based on the user profile and the trigger event, a promotion associated with the user identity. Server 110 may also generate a message relating to the promotion to be sent to the mobile device. In some embodiments, the trigger event may be an indication or operation by the user at mobile user equipment 130 that is indicative of an intention of the user to initiate a service request for a service from mobile user equipment 130. For example, the trigger event may be a service request from mobile user equipment 130. Server 110 may receive and process a service request from mobile user equipment 130. Server 110 may also transmit an acknowledgement in response to the service request to mobile user equipment 130. Server 110 may further generate an order based on the service request and broadcast the generated order to one or more service providers 140. In some embodiments, server 110 may determine a promotion to be delivered to mobile user equipment 130. For example, server 110 may access historical requests of a user ID stored in database 150 through network 120 and process the historical requests. Server 110 may analyze the information, generate a promotion, and store the generated promotion. In some embodiments, the promotion may be a coupon with some benefit (e.g., a certain amount of credit). The promotion may be delivered to mobile user equipment 130 as a message when a trigger event occurs. In some embodiments, a trigger event may be a program on mobile user equipment 130 is started, the login information of a program on the mobile user equipment 130 is entered, a log-in event of the user ID, a request for the service, or a payment by the user. In some embodiments, server 110 may be a single server or a server cluster. The server cluster may be centralized or distributed. In some embodiments, server 110 may be local or remote. Server 110 may communicate with mobile user equipment 130, service provider 140, and/or database 150 via network 120. The communication may be wired or wireless. For example, server 110 may access information and/or data stored in mobile user equipment 130, service provider 140, or database 150, via network 120. As another example, server 110 may be directly connected to mobile user equipment 130, service provider 140, or database 150, and access information and/or data stored therein. In some embodiments, server 110 may be implemented on a cloud platform. Merely by way of example, the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an inter-cloud, a multi-cloud, or the like, or any combination thereof.
Network 120 may be a single network or a combination of different networks. For example, network 120 may be a local area network (LAN), a wide area network (WAN), a public network, a private network, a wireless local area network (WLAN), a virtual network, a Metropolitan Area Network (MAN), a Public Telephone Switched Network (PSTN), or any combination thereof. Network 120 may also include various network access points, for example, wired or wireless access points such as base stations or Internet exchange points, through which a data source may connect to network 120 in order to transmit information via network 120. A user or requester may send a request, from mobile user equipment 130, to server 110 and receive results or suggestions via network 120. Server 110 may access information stored in database 150 or directly via network 120.
Mobile user equipment 130, which may be connected to network 120, may be a mobile device 130-1, a tablet computer 130-2, a laptop computer 130-3, a built-in device 130-4, or the like, or any combination thereof. In some embodiments, mobile device 130-1 may include a wearable device, a smart mobile device, a virtual reality device, an augmented reality device, or the like, or any combination thereof. In some embodiments, the wearable device may include a smart bracelet, a smart footgear, a smart glass, a smart helmet, a smart watch, a smart clothing, a smart backpack, a smart accessory, or the like, or any combination thereof. In some embodiments, the smart mobile device may include a smartphone, a personal digital assistance (PDA), a gaming device, a navigation device, a point of sale (POS) device, or the like, or any combination thereof. In some embodiments, the virtual reality device and/or the augmented reality device may include a virtual reality helmet, a virtual reality glass, a virtual reality patch, an augmented reality helmet, an augmented reality glass, an augmented reality patch, or the like, or any combination thereof. For example, the virtual reality device and/or the augmented reality device may include a Google Glass, an Oculus Rift, a HoloLens, a Gear VR, etc. In some embodiments, built-in device 130-4 may include an onboard computer, an onboard television, etc. In some embodiments, mobile user equipment 130 may be a device with positioning technology for locating the position of the user and/or the mobile user equipment 130 associated with the user. A trigger event for delivering a message may occur at mobile user equipment 130. In some embodiments, the trigger event may include an operation of a service interface, and a service interface may be a service application installed in mobile user equipment 130 or a service interface displayed in a third-party software or interact browser installed in mobile user equipment 130. In some embodiments, a service application may be a software installed in mobile user equipment 130 for user to request a service. In some embodiments, the trigger event may include a launching operation of the service application, a service request operation, or a paying operation of a service.
Services requested by mobile user equipment 130 may be of different types. For example, mobile user equipment 130 associated with a user ID may request a service of a Sport Utility Vehicle (SUV), a luxury car (LUX), a sedan, an electric car, or a taxi. The types of the services may be displayed as options on a list or tags on the mobile user equipment 130 for the user to choose or click. In some embodiments, a coupon that server 110 delivers to the mobile user equipment 130 may be used by a user for a certain type of service but not for other types of services. In some embodiments, historical requests may be categorized into groups with different types of service, and the promotion may be determined according to the historical requests of the type(s) of service. When a trigger event relating to a type of service (e.g., the user chooses a particular type of service at mobile user equipment 130) is detected, a promotion (ea., a coupon) may be determined by server 110 based on historical requests of the same type of service and delivered to the mobile user equipment 130.
Service provider 140 may be associated with a particular type of service such as one of Type 1, Type 2, . . . , and Type n (shown as 140-1, 140-2, 140-n in
Database 150 may store registration information of users (i.e., passengers or service requesters) and service providers. Database 150 may also store historical information relating to users and service providers. The historical information may include, for example, the previous request(s) by a user or the information relating to how a service provider performed in connection with a previous service. As illustrated in
It should be noted that message delivering system described below is merely provided for illustrating an example of the system, and not intended to limit the scope of the present disclosure.
Storage 220 may store instructions for processor 210, and when executing the instructions, processor 210 may perform one or more functions described in the present disclosure. For example, storage 220 may store instructions executed by processor 210 to determine an amount of a benefit (e.g., a credit or discount) of a coupon. Storage 220 may also store data necessary for processor 210 to perform certain functions. For instance, storage 220 may store the promotion such as a coupon transmitted from processor 210, and when a trigger event occurs, the promotion may be delivered to the mobile user equipment 130 in the form of a message. As another example, storage 220 may store service request(s) from a mobile user equipment 130 (or a plurality of mobile user equipments 130), and then transmit an order(s) generated based on the service request(s) to a service provider 140 (or a plurality of service providers 140). Storage 220 may further store data for processor 210 to determine weighting factors for calculating the amount of the benefit (e.g., a credit or discount) of a coupon. For example, one or more service type classifying strategies may be used to tag a service provider 140. A service type may be a parameter for filtering historical requests used for calculating the amount of the benefit of a coupon. A service provider 140 may be classified to one of a plurality of service types according to service type classifying strategy. The service type classifying strategy may be adjusted by server 110. Other information used for determining the amount of the benefit of a coupon may be stored in storage 220.
In some embodiments, storage 220 may include a mass storage, a removable storage, a volatile read-and-write memory, a read-only memory (ROM), or the like, or any combination thereof. Exemplary mass storage may include a magnetic disk, an optical disk, a solid-state drives, etc. Exemplary removable storage may include a flash drive, a floppy disk, an optical disk, a memory card, a zip disk, a magnetic tape, etc. Exemplary volatile read-and-write memory may include a random access memory (RAM). Exemplary RAM may include a dynamic RAM (DRAM), a double date rate synchronous dynamic RAM (DDR SDRAM), a static RAM (SRAM), a thyristor RAM (T-RAM), and a zero-capacitor RAM (Z-RAM), etc. Exemplary ROM may include a mask ROM (MROM), a programmable ROM (PROM), an erasable programmable ROM (PEROM), an electrically erasable programmable ROM (EEPROM), a compact disk ROM (CD-ROM), or a digital versatile disk ROM.
Network interface 230 may be interface with network 120 and/or one or more components of system 100 (e.g., server 110, mobile user equipment 130, service provider 140, and database 150). In some embodiments, network interface 230 may include a mobile user equipment interface 310 (also referred to herein as “UE interface”) and a service provider interface 320. In some embodiments, network interface 230 may include other interfaces (not shown) for communicating with other components of system 100. For example, network interface 230 may include a database interface (not shown) for transmitting data to the database or receive data from database 150.
UE interface 310 may facilitate communications between server 110 and mobile user equipment 130. For example, a service request from a mobile user equipment 130 may be transmitted through UE interface 310 to server 110. As another example, server 110 may receive, from mobile user equipment 130 via UE interface 310, information relating to an operation on mobile user equipment 130 indicative of the occurrence of a trigger event (i.e., the user may initiate a service request on mobile user equipment 130). UE interface 310 may also transmit information to the mobile user equipment 130. For example, server 110 may transmit to mobile user equipment 130 via UE interface 310 a response to the service request. As another example, location information of the mobile user equipment 130 may be received by server 110 through UE interface 310 for determining candidate service providers in certain area to broadcast an order generated based on the service request to the candidate service providers. Still as another example, server 110 may deliver a message of promotion such as a coupon to the mobile user equipment 130 via UE interface 310.
The service provider interface 320 may facilitate communications between server 110 and service provider 140. For example, server 110 may transmit an order to service provider 140 through the service provider interface 320. As another example, information such as guidance, management policies or incentive policies may be transmitted from server 110 to service provider 140 via the service provider interface 320. Service provider 140 may also transmit a response to an order e.g., accepting or rejecting the order) through service provider interface 320 to server 110. As another example, location information of service provider 140 may be received by server 110 through service provider interface 320 for determining candidate service providers 140 in a certain area to broadcast the order to the candidate service providers 140.
In some embodiments, network interface 230 (e.g., UE interface 310, service provider interface 320) may be any type of wired or wireless network interface. Merely by way of example, network interface 230 (e.g., UE interface 310, service provider interface 320) may include a cable network interface, a wireline network interface, an optical fiber network interface, a telecommunications network interface, an intranet interface, an Internet interface, a local area network (LAN) interface, a wide area network (WAN) interface, a wireless local area network (WLAN) interface, a metropolitan area network (MAN) interface, a wide area network (WAN) interface, a public telephone switched network (PSTN) interface, a Bluetooth network interface, a ZigBee network interface, a near field communication (NFC) network interface, or the like, or any combination thereof.
In some embodiments, network interface 230 (e.g., UE interface 310, service provider interface 320) may be implemented according to programming and/or computer language(s). Network interface 230 (e.g., UE interface 310, mobile terminal interface 320) may include circuitry for coupling server 110 to one or more networks, and is constructed for use with one or more communication protocols and technologies including, global system for mobile communications (GSM), code-division multiple access (CDMA), time-division multiple access (TDMA), general packet radio service (GPRS), enhanced data rate for GSM evolution (EDGE), wideband code division multiple access (WCDMA), high speed downlink packet access (HSDPA), long term evolution (LTE), user datagram protocol (UDP), transmission control protocol/Internet protocol (TCP/IP), short message service (SMS), wireless application protocol (WAP), ultra-wide band (UVB), IEEE 802.16 worldwide interoperability for microwave access (WiMax), session initiated protocol/real-time transport protocol (SIP/RTP), or any of a variety of other wireless communication protocols.
Historical requests and registration information received by the user ID receiving unit 510 may include demographic feature (DF) associated with the user. DF may be used to identify one or more categories of the user. The historical requests and registration information may also include request statistics (RS) associated with a plurality of historical service requests by the user, and/or expenditure statistics (ES) indicating the expenditure of the historical service requests by the user. DF may include some or all of the registration information associated with a user ID. In some embodiments, the one or more demographic features of the user may include gender, profession, and/or age group. In some embodiments, RS associated with the user may include the number of historical service requests by the user, the number of historical service requests having used at least one promotion, the average mileage of the historical service, and/or starts and destinations of the plurality of historical services. RS may also include city factors associated with the cities in which the historical requests are initiated or the historical services performed. In some embodiments, ES may include the total expenditure of the historical service requests, the average expenditure of the historical service requests, and/or the total amount of promotions (credit or discount) used in the historical service requests.
Analyzing module 420 may determine the amount of the benefit of a coupon based on historical requests and/or registration information received from the information receiving module 410. As illustrated in
In some embodiments, if server 110 receives a service request, which may be associated with a certain type of service, from a mobile user equipment 130, server 110 may broadcast the service request to a plurality of service providers 140 that can perform the type of service associated with the service request. If the service request is received or other trigger events (e.g., the application at mobile user equipment 130 for requesting a service is launched by the user) is detected by server 110, server 110 may deliver a coupon to mobile user equipment 130. The amount of the benefit of the coupon may be determined according to the registration information and/or data of the historical requests. In some embodiments, the historical requests used for calculating the amount of the benefit of the coupon may be restricted to a certain type of service. For example, when mobile user equipment 130 transmits to server 110 a service request of luxury car service, a coupon may be determined according to the historical requests of luxury car service, but not all types of service. In some embodiments, service type setting unit 640 of analyzing module 420 may filter the historical requests associated with the user (e.g., by matching the user ID) for determining the coupon.
In some embodiments, the coupon may be determined according to the city where the service request is sent or the service is to be performed. Server 110 may determine the city information based on the location information of mobile user equipment 130 it receives. For example, if server 110 receives a service request from mobile user equipment 130, the coupon may be determined according to the historical requests associated with the same city as the current request. Analyzing module 420 may filter the historical requests associated with the user that are associated with the same city as the current request.
User profile analyzing unit 620 may receive information from time period setting unit 610 and generate a user profile. In some embodiments, the user profile may include data for determining a promotion, including, for example, data relating to DF, RS and/or ES. User profile analyzing unit 620 may extract data relating to DF, RS and/or ES from the historical requests received from the time period setting unit 610. The user profile may be transmitted to promotion setting unit 630.
Promotion setting unit 630 may determine the amount of the benefit of a coupon based on the user profile. Promotion setting unit 630 may process data of DF, RS and/or ES. In some embodiments, as illustrated in
In some embodiments, the consumption ability may be determined according to data of RS and ES. Merely by way of example, the consumption ability may be determined according to the number of the historical service requests associated with the user (or ncar) and the total amount of the expenditure of the historical service requests associated with the user (or costall). In some embodiments, the consumption ability C may be determined according to the equation as follows:
wherein the parameter spend may be determined as follows:
In some embodiments, the probability of using a coupon may be determined according to data of RS and ES. Merely by way of example, the probability of using a coupon may be determined according to the number of the of historical service requests associated with the user (or ncar), the number of the historical service requests for which the user has used at least one coupon (or ncoupon), the total amount of the expenditure of the historical service requests associated with the user (or costall), and the total amount of the coupons used for the historical service requests costcoupon. In some embodiments, the probability of using a coupon P may be determined according to the equation as follows:
In some embodiments, server 110 may classify the user into a consumer group among a plurality of consumer groups based on one or more features relating to consumption of the user (or the user's consumption feature(s)). In some embodiments, users may be classified into a first consumer group and a second consumer group, using a clustering algorithm such as a K-means clustering algorithm. Consumption features may include a proportion for choosing a particular service type (e.g., an upscale service such as LUX or SUV), expenditure (all the time or within a particular time period), a probability of using a coupon, the total amount of the coupons used, and tips that the user gives. Server 110 may determine the consumption features based on the historical requests associated with the user.
In some embodiments, the first consumer group may be a group of consumers having a high probability of using a coupon and a high total amount of the coupons used. The second consumer group may be a group of consumers having a low probability of using a coupon and a low total amount of the coupons used. The consumers in the first consumer group may be coupon-sensitive consumers having a high probability of using a coupon, while the consumers in the second consumer group may be consumers with a medium or low probability of using a coupon. In some embodiments, for a consumption feature, a feature vector may be determined by server 110, θki is denoted as the ith characteristic vector for the kth cluster. The consumption feature represented by θki is a member of the multiple features. Server 110 may classify an unknown sample x (e.g., a consumer group) according to one or more feature vectors. In some embodiments, a classification method may be implemented as
wherein g is a degree of membership for the unknown sample x to be assigned to the kth cluster. Server 110 may determine a distance between sample x and the feature vector θki. Server 110 may further determine the cluster k corresponding to the maximum of g as the category to which the unknown sample x belongs.
In some embodiments, a coupon to be delivered to mobile user equipment 130 may be a special coupon or an ordinary coupon. In some embodiments, a special coupon may be a coupon delivered during a special promotion such as the spring festival and Christmas. An ordinary coupon may be a coupon delivered to mobile user equipment 130 regardless of any special promotion. In some embodiments, the coupon may be delivered to the user when a trigger event occurs and is detected by server 110. Alternatively, a coupon may be delivered to mobile user equipment 130 when one or more other conditions are met in addition to the detection of a trigger event. In some embodiments, after determining one or more certain conditions have met, server 110 may detect a trigger event from the user for delivering a new coupon. For example, server 110 may generate a coupon and transmit the coupon to mobile user equipment 130 only when the number of the coupons available to the user (e.g., associated with the user account) is lower than a threshold and a trigger event is detected. As another example, server 110 may determine that the coupons of the user will expire in a few days, and upon detecting a trigger event, server 110 may generate a coupon and transmit it to mobile user equipment 130.
In some embodiments, a trigger event may be initiated by a user or a third party. Server 110 may register User A with a unique ID and record User A when User A logs into server 110 (or other appropriate server hosting the log-in service). Server 110 may generate a list of promotion strategies according to the user profile. Merely by way of example, a promotion strategy generated by server 110 is shown in Table 1:
2 coupon
10 coupon
As indicated by the Table 1, server 110 may determine a coupon to be delivered to the user according to a promotion strategy specifying user profile types and their corresponding coupons within a predetermined time period. If the user initiating a trigger event is determined by server 110 as a User Profile Type I user, server 110 may send a promotion including a “2coupon” to mobile user equipment 130 (randomly, at a predetermined time, or upon detecting a trigger event).
Alternatively, if the user initiating a trigger event is determined by server 110 as a User Profile Type I and III user, server 110 may send a promotion including “2 coupon” and “5 point Alipay credit” to mobile user equipment 130 (randomly, at a predetermined time, or upon detecting the trigger event).
Alternatively, if a user initiating a trigger event is determined by server 110 as none of User Profile Type I user, User Profile Type II user or User Profile Type III user, server 110 may send no promotion to mobile user equipment 130.
In some embodiments, a trigger event may be initiated by a third party (e.g., an e-commerce shop) when a user conducts business at the third party. Server of the third party may register User B with a unique ID and record User B when User B purchases a merchandise using a coupon at the e-commerce shop (or other appropriate server hosting the e-commerce service). When the server of third party initiates a certain trigger event, for example, requesting a connection with server 110 in system 100, server 110 may obtain information relating to promotion for User B from the server of third party when server 110 establishes connection with server of the third party.
In some embodiments, the information relating to promotion for User B may be “ID and usage of coupon”. If the ID of User B is already registered and stored in server 110, server 110 may determine user profile associated with the ID of User B. If there is a promotion strategy for delivering coupons in server 110 for user profile associated with the ID of User B, server 110 may send a coupon to mobile user equipment 130 (randomly, at a predetermined time, or upon detecting the trigger event).
Alternatively, the information relating to promotion for User B may be “ID and usage of coupon”. If the ID of User B is already registered and stored in server 110, server 110 may determine user profile associated with the ID of User B. If there is no promotion strategy for delivering coupons in server 110, server 110 may generate a list of promotion strategies for delivering coupons.
In some embodiments, besides the consumption ability and probability of using coupons, the amount of coupon may also be determined according to a demographic factor of a user. The demographic factor may be determined according to one or more demographic features of the user such as the user's gender, profession, and age. Demographic features may also include the age group the user belongs to. Merely by way of example, the demographic factor may be set as 0.9 if the user is a businessman or 0.7 if the user is a teacher. The demographic factor may be assigned based on a value determination strategy. The value determination strategy may be stored in storage 220 accessible to server 110. The value determination strategy may be adjusted by server 110. In some embodiments, the value assignment strategy may be a lookup table stored in storage 220, which may specify demographic features, parameters of the demographic features, and the corresponding demographic factor values.
The message delivering unit 820 may deliver a message including a promotion to the mobile user equipment 130. The promotion may be a coupon or voucher, with a discount, a credit, or a combination thereof. In some embodiments, the promotion may be a coupon with some benefit (e.g., a certain amount of a credit or discount). In some embodiments, the promotion may be transmitted to storage 220 from promotion setting unit 630, stored in storage 220, and transmitted to the message delivering unit 820 when a trigger event is detected.
In some embodiments, a coupon detecting unit (not shown in
In some embodiments, the computing device 900 may also include a network interface 951. Network interface 951 may facilitate communications between computing device 900 and network 120. For example, a service request from mobile user equipment 130 may be transferred to server 110 through network interface 951. As another example, service provider 140 may accept the order received from server 110 through network interface 951. A location of mobile user equipment 130 or service provider 140 may be transferred to server 110 through network interface 951.
In some embodiments, computing device 900 may include an audio interface 952. Audio interface 952 may take various audio inputs and convert them into digital data. In some embodiments, computing device 900 may include an input/output interface (I/O interface) 953 in communication with external I/O devices (e.g., a mouse, a keyboard, a monitor, a printer, or the like) and configured to receive input from and output information to the user or the driver. In some embodiments, computing devices 900 may include a microphone 956. In some embodiments, computing devices 900 may include a keypad or keyboard 957. In some embodiments, computing devices 900 may include a display 955. In some embodiments, computing device 900 may also include a haptic interface 954.
In 1020, a promotion may be determined by processor 210. In some embodiments, processor 210 may be configured to determine the consumption ability of the user, the probability of using a coupon, determine a demographic factor, and/or set a maximal value of the price of the service to be performed. Processor 210 may further determine a promotion based on the determined consumption ability of the user, probability of using a coupon, demographic factor, and/or maximal value of the price of the service to be performed. In some embodiments, processor 210 may determine the amount of the benefit of the coupon that is to be delivered to mobile user equipment 130 (i.e., the promotion to be delivered to the user) based on the maximal amount of the price of the service to be performed and at least one of the consumption ability of the user, the probability of using a coupon, or the demographic factor. In some embodiments, information relating to the promotion information about the amount of the benefit of the coupon may be stored in storage 220.
In 1030, a trigger event may be detected by processor 210. Trigger event detecting unit 810 of processor 210 may receive information from operations receiving unit 510 and detect whether an operation is a trigger event or not. In some embodiments, trigger event detecting unit 810 may detect whether an operation is a trigger event based on one or more trigger event templates. For example, if trigger event detecting unit 810 receive information relating to an operation at mobile user equipment 130 from the operation receiving unit 510, trigger event detecting unit 810 may compare the operation with the trigger events templates. In some embodiments, the trigger events templates may be stored in storage 220 and adjusted by server 110. In 1040, processor 210 may generate a message including the determined promotion and deliver the message to mobile user equipment 130.
In 1120, time period setting unit 610 of analyzing module 420 may determine a time period filter for filtering the historical requests obtained in 1110. For example, time period setting unit 610 may determine a first time period and a second time period as a time period windows for the time period filter. Analyzing module 420 may then select the historical requests in the time period window. Alternatively, analyzing module 420 may first determine a time period filter and then obtain the historical requests within the time period specified by the determined time period filter from database 150 directly.
Alternatively or additionally, in 1130, processor 210 may determine the service type of the current request. Processor 210 may also filter the historical requests (the historical requests obtained in 1110 or the filtered historical requests by the time period filter obtained in 1120) according to the determined service type, and obtain the historical requests that have the same type of service as the current service request.
Alternatively or additionally, in 1140, processor 210 may determine a user profile based on the information relating to the historical requests (e.g., the historical requests obtained in 1110, the filtered historical requests by the time period filter obtained in 1120, or the filtered historical requests obtained in 1130). In some embodiments, the user profile may include data of DF, RS or ES, which may be used for determining the promotion. In some embodiments, the data of DF, RS or ES may be used for determining a maximal value of price and/or weighting factors such as the consumption ability, probability of using a coupons, and demographic factor(s).
In some embodiments, processor 210, in 1150, may determine the promotion based on the information included in the user profile. Alternatively or additionally, processor 210 may determine the promotion based on the historical requests the historical requests obtained in 1110, the filtered historical requests by the time period filter obtained in 1120, or the filtered historical requests obtained in 1130).
Processor 210, in 1210, may obtain a plurality of historical requests associated with the user. The historical requests may be the historical requests obtained by processor 210 in 1110, the filtered historical requests by the time period filter obtained in 1120, or the filtered historical requests obtained in 1130 described elsewhere in this disclosure.
In 1230, processor 210 may determine an activity factor for the user based on the historical requests. The activity factor may be a factor indicating the user's frequency of requesting services. In some embodiments, the activity factor may be determined according to the number of the historical requests (e.g., the historical requests obtained by processor 210 in 1110, the filtered historical requests by the time period filter obtained in 1120, or the filtered historical requests obtained in 1130). In some embodiments, the activity factor may be determined based on the number of the historical requests within a time window. In some embodiments, an activity changing factor may be used with the activity factor for determining the maximal price. Alternatively, the activity changing factor may be determined according to the number of the historical requests within two or more time windows. In some embodiments, the two or more time windows may have a same time frame or different time frames. The activity changing factor may be determined according to the equation as follows:
wherein AC is the activity changing factor, α is a constant,
wherein V1 is the activity factor of the historical requests in the first time window and V2 is the activity factor of the historical requests in the second time window. In some embodiments, the first time window may be prior to the second time window. In some embodiments, the first time window may have a same length as the second time window.
Alternatively or additionally, processor 210, in 1240, may determine a price-mileage factor based on the historical requests. The price-mileage factor may include a price factor and a mileage factor. In some embodiments, the price factor may be determined according to the average amount of the expenditure of the historical requests, and the mileage factor may be determined according to the average mileage of the historical requests. In some embodiments, the price factor may be determined according to the equation as follows:
wherein PF is the price factor, β is a constant, and y is the average amount of the expenditure of the historical requests. The price factor may be indicative a sensitivity of the user to the price of service. In some embodiments, the mileage factor may be determined according to the equation as follows:
wherein MF is the mileage factor, γ is a constant and z is the average mileage of the historical requests.
Alternatively or additionally, processor 210, in 1220, may determine a city factor. The city factor may be determined according to the location information included in the current request or information obtained from mobile user equipment 130 (e.g., through the location information of mobile user equipment 130). For example, the city where the service request is initiated or the service is to be performed may be obtained, and the city factor corresponding to the city may be determined according to a lookup table specifying a plurality of cities and their corresponding city factors. In some embodiments, the lookup table may be stored in storage 220 and/or database 150.
In 1250, processor 210 may determine the maximal value of price of the service to be performed according to the city factor (determined in 1220), activity factor (determined in 1230), or price-mileage factor (determined in 1240), or any combination thereof Merely by way of example, the maximal value of price may be determined according to the equation as follows:
MV=CF*V
2
*AC*PF*MF*y Equation (6),
wherein MV is the maximal value of price, CF is a city factor, V2 is the activity factor of the historical requests in the second time window, AC is the activity changing factor, PF is the price factor, MF is the mileage factor, and y is the average amount of the expenditure of the historical requests.
As described elsewhere in this disclosure, the amount of the benefit of a coupon may be determined according to the consumption ability of the user, the probability of using a coupon, the demographic factor, and/or the maximal value of price. Merely by way of example, the amount of the benefit of a coupon may be determined according to the equation as follows:
AB=MV*f
1(C)*f2(P)*f3(D) Equation (7),
wherein MV is the maximal value of price, AB is the amount of the benefit of a coupon, D is the demographic factor, f1(C) is a function of consumption ability, f2(P) is a function of probability of using a coupon, f3 (D) is a function of demographic factor. In some embodiments, if a factor the consumption ability of the user, the probability of using a coupon, the demographic factor, or the maximal value of price) is ignored for the purposes of determining the amount of the benefit, the function of the factor may be set as 1. Merely by way of example, the amount of the benefit of a coupon may be determined based on two factors—the maximal value of price and consumption ability, the amount of the benefit may be determined according to the equation AB=MV(1−C), wherein MV is the maximal value of price and C is the consumption ability. In other words, f1(C)=1−C, f2(P)=1, and f3(D)=1.
It should be noted that the functions above are for the purpose of illustration and description only and are not intended to limit the scope of the present disclosure. In some embodiments, the historical requests may be initiated in different cities and/or with different service types. When a trigger event occurs in a city with a certain service type, server 110 may deliver a coupon with some benefit (e.g., a certain amount of a credit or discount) that is determined according to registration information and historical requests occurred in the same city and with the same service type. If a trigger event such as launching a service application does not indicate a service type, a coupon that is determined according to the historical requests with a service type that the user requested most in the historical requests may be delivered to mobile user equipment 130.
Demographic factor may be determined according to one or more demographic features such as gender, residential city, profession, and/or age group. The user's residential city and profession may be determined according to the processes 1400-1600 illustrated in
In some embodiments, the demographic factor may be determined according to a lookup table stored in storage 220 and/or database 150. Merely by way of example, Table 2 is a lookup table that may be used by processor 210 for determining the demographic factor based two demographic features profession and age group to which the user belongs.
In some embodiments, the lookup table may be an n-dimension chart, wherein 1≤n≤the number of demographic features. The lookup table may be adjusted or updated by processor 210.
In some embodiments, processor 210 may determine a demographic feature of the user based on an exemplary process 1300 illustrated in
In 1340, processor 210 may optionally determine a time period for selecting the historical requests to be analyzed. In 1350, processor 210 may analyze the historical requests (the selected historical requests obtained in 1340 or the historical requests obtained in 1310) and identify the points of interest (or POIs) included in the historical requests. The POI in this application refers to a starting point or a destination in a request, and may include information relating to commercial, residential, attraction, and/or residential place(s) that is located in a particular point on the Earth. The POIs may be classified into various types such as school, hospital, railway station, airport, company, residential community, hotel scenic, spot, etc. In some embodiments, the identification of the POIs may be performed by user profile analyzing unit 620 of analyzing module 420.
In 1360, processor 210 may determine the demographic feature based on the POIs. For example, if the POIs included in the history requests are business places, processor 210 may determine that the user might be a businessman. As another example, if a POI included in the historical requests that the user regularly visited or departed (as a destination or starting point) is a company, it is likely that the POI is the user's workplace, and processor 210 may determine that the user is a businessman (or a teacher if the POI is an elementary school). In 1370, processor 210 may update the user's registration information for the future use. In some embodiments, processor 210 may determine whether there is more demographic feature to be obtained. If so, processor 210 may repeat the steps 1320 through 1370 (or 1380) to determine the demographic feature.
In some embodiments, the profession of the user (i.e., a demographic feature of the user) may be determined according to exemplary processes illustrated in
In some embodiments, in 1410, processor 210 may identify POIs from historical requests associated with one or more non-attribute cities. The user's attribute city refers to the city in which the user's registered phone number belongs. A non-attribute city is a city that is not the attribute city. The user's attribute city may be determined according to, for example, the area code or location identification code of the registered phone number.
In 1420, for each of non-attribute cities (or a portion of non-attribute cities), processor 210 (e.g., user profile analyzing unit 620) may determine the number of historical requests associated with the non-attribute city, and/or the number of hotels (including, for example, hotels, motels) and the number of residential communities in the non-attribute city (or part thereof).
In 1430, for a non-attribute city, processor 210 may determine whether the number of residential communities is larger than the number of hotels in the non-attribute city. If so, processor 210 may set the non-attribute city as a preliminary residential city of the user. Processor 210 may repeat step 1430 for each of non-attribute cities (or a portion of non-attribute cities) and determine a plurality of preliminary residential cities.
In 1440, processor 210 may determine which preliminary residential city has the largest number of residential communities among all preliminary residential cities. Processor 210 may also set the preliminary residential city having the largest number of residential communities as a candidate city of the user.
In 1610, processor 210 may determine a first type of POIs and a second type of POIs based on a POI classification strategy. In some embodiments, the POI classification strategy may be adjusted for determining different professions and categories of the user's demographic features. The POI classification strategy may be stored in storage 220 or database 150 accessible to processor 210. In some embodiments, the first type of POIs may include public transportation such as airport, subway station, bus station, and railroad station. In some embodiments, the second type of POIs may include places such as company, public community, residential community, hotel, scenic site, airport, and railway station.
In 1620, processor 210 may determine point for each of the POIs identified. In some embodiments, the point for a POI may be stored in storage 220 and/or database 150. The points for the POIs may be adjusted by server 110. Merely by way of example, Table 3 below shows the points for the POIs including airport, company, railroad station, and scenic sites.
In 1630, processor 210 may determine the number of POIs in the user's residential city and one or more non-residential cities based on the historical requests. Merely by way of example, Table 4 below shows the number of the first type of POIs (i.e., public transportations, including airport and railroad station) in residential city.
In 1640, processor 210 may determine the total points for the first type of POIs and the second type of POIs. In some embodiments, processor 210 may determine the total point for the first type of POIs in the user's residential city and the total point for the second type of POIs in the user's one or more non-residential cities. Merely by way of example, a total point for the first type of POIs in the user's residential city (shown in Table 4) may be 5*2+10*1=20. In some embodiments, the total point for the first type of POIs may be determined based on the points for the first type of POIs in the residential city and one or more non-residential cities. The total point for the second type of POIs may be determined based on the points for the second type of POIs in the residential city and one or more non-residential cities.
In 1650, processor 210 may determine a profession of the user according to the total point for the first type of POIs and total point for the second type of POIs. In some embodiments, processor 210 may determine the profession based on the total point for the first type of POIs in the residential city and the total point for the first type of POIs and second type of POIs for the one or more non-residential cities. In some embodiments, a user may be classified as a businessman if the total point for the first type of POIs are larger than a third threshold. In some embodiments, the user may be classified as a tourist if the total point for the second type of POIs are larger than a fourth threshold. In some embodiments, the third and fourth thresholds may be adjustable and stored in storage 220.
The following examples are provided merely for the purposes of describing particular exemplary embodiments and are not intended to be limiting the scope of the disclosure. Table 5 shows an exemplary record of historical requests for a user with a use ID P1. For illustration purposes, the details of the historical requests are omitted.
As shown in Table 5, the user initiates historical requests in three cities, namely, 1, 4, and 29. The profession of the user may he determined according to the processes 1400-1600 (illustrated in
The user P1's residential city may be determined according to process 1500 (illustrated in
The profession of the user may be determined according to the total point for the first type of POIs and the total point for the second type of POIs. For the residential city 4, the visiting times for the airport and the railroad station are 9 and 2, respectively. Thus, the point for the first type of POIs may be determined as 2*9+1*2=20, and the point for the second type of POIs may be determined as 2*9+1*2=20, For the non-residential cities 1 and 29. the visiting times for the company, airport, and other places are 36, 1, and 72, respectively. Thus, the point for the first type of POIs may be determined as 36*5+1*2+72*0.1=189.2, the point for the second type of POIs may be determined as 1*2+72*0.1=9.2. The total point for the first type of POIs are 20+189.2=209.2, and the total point for the second type of POIs are 20+9.2=29.2. The first type of POIs may be more related to a businessman, while the second type of POIs may be more related to a tourist. Accordingly, this user may be determined as a businessman according to a comparison between the total points for the first type of POIs and the total points for the second type of POIs.
Number | Date | Country | Kind |
---|---|---|---|
201510708357.X | Oct 2015 | CN | national |
201510851853.0 | Nov 2015 | CN | national |
201510991928.5 | Dec 2015 | CN | national |
201610216364.2 | Apr 2016 | CN | national |
This application is a continuation of international Application No. PCT/CN2016/103576, filed on Oct. 27, 2016, designating the United States of America, which claims priority of Chinese Application No. 201510708357.X, filed on Oct. 27, 2015, Chinese Application No. 201510851853.0, filed on Nov. 27, 2015, Chinese Application No. 201510991928,5, filed on Dec. 23, 2015, and Chinese Application No. 201610216364.2, filed on Apr. 7, 2016. Each of the above-referenced applications is expressly incorporated herein by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2016/103576 | Oct 2016 | US |
Child | 15838316 | US |