WO2023128861A2 - Method and system for providing an image of a location - Google Patents
Method and system for providing an image of a location Download PDFInfo
- Publication number
- WO2023128861A2 WO2023128861A2 PCT/SG2022/050910 SG2022050910W WO2023128861A2 WO 2023128861 A2 WO2023128861 A2 WO 2023128861A2 SG 2022050910 W SG2022050910 W SG 2022050910W WO 2023128861 A2 WO2023128861 A2 WO 2023128861A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- drop
- location
- point
- user
- image data
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
- G06Q10/00—Administration; Management
- G06Q10/02—Reservations, e.g. for tickets, services or events
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
- G06Q10/0836—Recipient pick-ups
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0259—Targeted advertisements based on store location
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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—Recommending goods or services
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0639—Locating goods or services, e.g. based on physical position of the goods or services within a shopping facility
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0641—Electronic shopping [e-shopping] utilising user interfaces specially adapted for shopping
- G06Q30/0643—Electronic shopping [e-shopping] utilising user interfaces specially adapted for shopping graphically representing goods, e.g. 3D product representation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/40—Business processes related to the transportation industry
Definitions
- the present disclosure relates broadly, but not exclusively, to methods and systems for providing a visual preview of a location.
- Transport, ride booking and delivery services have become increasingly popular, especially with the prevalence of applications offering such services.
- These applications may be installed on, for example, a mobile device to enable a user to conveniently access such services.
- a method for providing a visual preview of a location selected by a user at a user device comprising: receiving, from the user device, a request including location information of the selected location; obtaining image data corresponding to a drop-off point for the selected location based on the location information; and causing to be displayed, on the user device, the visual preview based on the image data.
- a system for providing a visual preview of a location selected by a user at a user device comprising: at least one processor; and at least one memory including computer program code; the at least one memory and the computer program code configured to, with the at least one processor, cause the system at least to: receive, from the user device, a request including location information of the selected location; obtain image data corresponding to a drop-off point for the selected location based on the location information; and cause to be displayed, on the user device, the visual preview based on the image data.
- FIG. 1 illustrates a system for providing an image of a location according to various embodiments of the present disclosure.
- FIG. 2 depicts example illustrations of how an image may be provided during a place of interest (POI) search, according to various embodiments.
- POI place of interest
- Fig. 3A depicts example illustrations of how an image may be provided for a dropoff location, according to various embodiments.
- Fig. 3B depicts example illustrations of how an image or offer may be provided for a merchant located near a drop-off location, according to various embodiments.
- FIG. 3C depicts an example illustration of how a location of a merchant may be indicated on a topographic map, according to various embodiments.
- FIG. 4 depicts an example illustration of how profiling may be implemented for providing an image of a location, according to various embodiments.
- FIG. 5 depicts an example illustration of how an online service infrastructure may be implemented for providing an image of a location, according to various embodiments.
- Fig. 6 illustrates an example flow diagram of how a visual preview of a location may be provided according to various embodiments.
- FIG. 7 illustrates an example flow diagram of how an offer may be recommended according to various embodiments.
- Figs. 8A and 8B form a schematic block diagram of a general purpose computer system upon which the coordination server of Fig. 1 can be practiced.
- Fig. 80 is a schematic block diagram of a general purpose computer system upon which the preview server of Fig. 2 can be practiced.
- Fig. 8D is a schematic block diagram of a general purpose computer system upon which a combined coordination server and preview server of Fig. 1 can be practiced.
- FIG. 9 shows an example of a computing device to realize the coordination server shown in Fig. 1.
- Fig. 10 shows an example of a computing device to realize the preview server shown in Fig. 1.
- FIG. 11 shows an example of a computing device to realize a combined coordination and preview server shown in Fig. 1 .
- the present specification also implicitly discloses a computer program, in that it would be apparent to the person skilled in the art that the individual steps of the method described herein may be put into effect by computer code.
- the computer program is not intended to be limited to any particular programming language and implementation thereof. It will be appreciated that a variety of programming languages and coding thereof may be used to implement the teachings of the disclosure contained herein.
- the computer program is not intended to be limited to any particular control flow. There are many other variants of the computer program, which can use different control flows without departing from the scope of the specification.
- the computer readable medium may include storage devices such as magnetic or optical disks, memory chips, or other storage devices suitable for interfacing with a computer.
- the computer readable medium may also include a hardwired medium such as exemplified in the Internet system, or wireless medium such as exemplified in the GSM mobile telephone system.
- the computer program when loaded and executed on such a computer effectively results in an apparatus that implements the steps of the preferred method.
- a transport or delivery booking service is one that enables a user to book a ride or delivery service.
- the service may be provided via an application installed in an electronic device (e.g. a mobile application installed on a mobile device), in which a user can search for and indicate a location at which the user wants to be picked up or sent to, or a location where the user wants an item to be picked up or delivered to.
- Such a transport or delivery booking service may also provide services that enable a user to order food or other goods from various merchants for delivery to the user, and may also be known as a transport, food and mart application, or referred to as a booking service or application in the present disclosure.
- a place of interest is a place or location that a user may indicate or search for in a transport or delivery booking service.
- the POI may be a place at which the user may be interested in going or delivering something. It may also be a location at which the user wants to be picked up by a driver or at which a delivery person is to retrieve an item for the user.
- There may be various drop-off points e.g. places where a user may alight after a ride, or deliver an item
- pick-up points e.g. places where a user may board a vehicle or receive an item that is to be delivered
- Booking applications tend to provide services across different verticals such as travel, food, mart, insurance and other similar verticals. At present, however, there is no application which supports cross-sell from different verticals that are personalized to the needs of a user in vicinity of a drop-off location or POI, for example by providing an offer or recommendation from food, mart or insurance verticals to a user who is utilizing a service from the travel vertical of the booking application.
- a location preview feature in a booking application (in which an image is provided for a location) is proposed which advantageously aids in promoting visual familiarity for a user on a real-time basis of drop-off and pick-up locations, by sselling one or more visuals (e.g. images, videos and the like) of a POI and its nearby locations as visual previews of the POI and its nearby locations.
- the visual preview could be all or part of a visual (or an image).
- the opportunity can be provided to merchants located near the drop off location of a user to advertise their ongoing offers to the user on a real time basis. This advantageously enhances the user experience by providing the user with information of merchants and/or offers within the vicinity of the drop off location that may interest the user. This also extends cross sell opportunities from transport to food/mart related merchants near the drop-off POI.
- a user may be any suitable type of entity, which may include a person, a consumer looking to book a transport or delivery service, or purchase a good or service via a coordination server, a seller looking to sell a good or service via the coordination server, a motorcycle driver or pillion rider in a case of the user looking to book or provide a motorcycle ride via the coordination server, a car driver or passenger in a case of the user looking to book or provide a car ride via the coordination server, and other similar entity.
- a user who is registered to the coordination or preview server will be called a registered user.
- a user who is not registered to the coordination server or preview server will be called a non-registered user.
- an unregistered user may or may not be able to enjoy certain services, such as for example the provision of recommendations or offers that are tailored based on user preferences during a travel or delivery booking, or may or may not be able to be a deliverer or driver of the concerned booking application, or other similar disadvantages.
- the term user will be used to collectively refer to both registered and non-registered users.
- a user may interchangeably be referred to as a requestor (e.g. a person who requests for a transport or delivery booking, or a good or service) or a provider (e.g. a person who provides the requested transport or delivery booking, or good or service to the requestor).
- a preview server may be a server that hosts software application programs for providing an image of a location.
- the preview server may be implemented as shown in Figs. 10 or 11 for determining and providing an image associated with a POI or a merchant, or for providing an offer to a user.
- the coordination server may be a server that hosts software application programs for processing payment transactions for, for example, purchasing of a good or service by a user.
- the coordination server may also be configured for processing travel or delivery coordination requests between a requestor and a provider.
- the coordination server communicates with other servers (e.g., a preview server) concerning payment transactions or travel coordination requests.
- the coordination server may communicate with a preview server to facilitate providing an image of a location for a ride associated with the travel coordination request.
- the coordination server may use a variety of different protocols and procedures in order to process the payment and/or travel or delivery coordination requests.
- Transactions that may be performed via a coordination server include good or service purchases, credit purchases, debit transactions, fund transfers, account withdrawals, etc.
- Coordination servers may be configured to process transactions via cash-substitutes, which may include payment cards, letters of credit, checks, payment accounts, etc.
- the coordination server is usually managed by a service provider that may be an entity (e.g. a company or organization) which operates to process transaction requests and/or travel or delivery coordination requests e.g. pair a provider of a travel coordination request to a requestor of the travel coordination request.
- the travel coordination server may include one or more computing devices that are used for processing transaction requests and/or travel or delivery coordination requests.
- a transaction account may be an account of a user who is registered at a coordination server.
- the user can be a customer, a service (e.g. ride-hailing) provider (e.g., a driver), or any third parties (e.g., a courier) who want to use the coordination server.
- the transaction account is not required to use the preview server.
- a transaction account typically includes details (e.g., name, address, vehicle, face image, etc.) of a user.
- the coordination server may manage the transaction accounts of users and the interactions between users and other external servers.
- Fig. 1 illustrates a block diagram of a system 100 for providing an image of a location. Further, the system 100 may enable a payment transaction for a good or service, and/or a request for a ride between a requestor and a provider.
- the system 100 comprises a requestor device 102, a provider device 104, an acquirer server 106, a coordination server 108, an issuer server 110, a preview server 140 and an image database 150.
- the requestor device 102 is in communication with a provider device 104 via a connection 112.
- the connection 112 may be an ad hoc connection (e.g., via NFC communication, Bluetooth, etc.) or over a network (e.g., the Internet).
- the requestor device 102 is also in communication with the preview server 140 via a connection 121 .
- the connection 121 may be a network connection (e.g., the Internet).
- the requestor device 102 may also be connected to a cloud that facilitates the system 100 for providing an image of a location.
- the requestor device 102 can send a signal or data to the cloud directly via an ad hoc connection (e.g., via NFC communication, Bluetooth, etc.) or over a network (e.g., the Internet).
- the provider device 104 is in communication with the requestor device 102 as described above, usually via the coordination server 108.
- the provider device 104 is, in turn, in communication with an acquirer server 106 via a connection 114.
- the provider device 104 is also in communication with the preview server 140 via a connection 123.
- the connections 114 and 123 may be network connections (e.g., provided via the Internet).
- the provider device 104 may also be connected to a cloud that facilitates the system 100 for providing an image of a location.
- the provider device 104 can send a signal or data to the cloud directly via an ad hoc connection (e.g., via NFC communication, Bluetooth, etc.) or over a network (e.g., the Internet).
- the acquirer server 106 is in communication with the coordination server 108 via a connection 116.
- the coordination server 108 is in communication with an issuer server 110 via a connection 118.
- the connections 116 and 118 may be over a network (e.g., the Internet).
- the coordination server 108 is further in communication with the preview server 140 via a connection 120.
- the connection 120 may be over a network (e.g., a local area network, a wide area network, the Internet, etc.).
- the coordination server 108 and the preview server 140 are combined and the connection 120 may be an interconnected bus.
- the preview server 140 is in communication with the reference image database 150 via respective connection 122.
- the connection 122 may be a network connection (e.g., provided via the Internet).
- the preview server 140 may also be connected to a cloud that facilitates the system 100 for providing an image of a location.
- the preview server 140 can send a signal or data to the cloud directly via a wireless ad hoc connection (e.g., via NFC communication, Bluetooth, etc.) or over a network (e.g., the Internet).
- the image database 150 stores image data comprising images of POIs located across the various regions of the world, for example, across South-East-Asia (SEA). Each image may be geo-tagged with a geographical coordinate (e.g. latitudinal and longitudinal coordinates) and map-matched to road-segments to facilitate shortlisting the images of a POI using location coordinates.
- the image database may be a component of the preview server 140.
- the image database 150 may be a database managed by an external entity and the preview server 140 is a server that, based on location information included in a request received from a user device (such as the requestor device 102 or the provider device 104), obtains an image (e.g.
- the image database 150 may further comprise images collected for restaurants, stores, outlets and other similar venues for merchants that may be geo-tagged with latitudinal and longitudinal coordinates and map-matched to road-segments to facilitate shortlisting the images of a POI using location coordinates.
- the preview server 140 may also determine an image corresponding to a merchant, the image being one that is based on historical data identifying the merchant.
- the image may be shown to the requestor or provider via displaying the image on the requestor device 102 or provider device 104 respectively, for providing a visual of the concerned POI or merchant associated with a request that is processed by the coordination server 108.
- a module such as an image module may store the images instead of the image database 150, wherein the image module may be integrated as part of the preview server 140, or may be external to the preview server 140.
- each of the devices 102, 104, and the servers 106, 108, 110, 140, and 150 provides an interface to enable communication with other connected devices 102, 104, 142 and/or servers 106, 108, 110, 140, and 150. Such communication is facilitated by an application programming interface (“API”).
- API application programming interface
- Such APIs may be part of a user interface that may include graphical user interfaces (GUIs), Web-based interfaces, programmatic interfaces such as application programming interfaces (APIs) and/or sets of remote procedure calls (RPCs) corresponding to interface elements, messaging interfaces in which the interface elements correspond to messages of a communication protocol, and/or suitable combinations thereof.
- GUIs graphical user interfaces
- APIs application programming interfaces
- RPCs remote procedure calls
- the requestor device 102 and the provider device 104 may receive an image depicting a POI, drop-off point, a merchant, or other similar locations in response to an enquiry shown on the GUI running on the respective API.
- server can mean a single computing device or a plurality of interconnected computing devices which operate together to perform a particular function. That is, the server may be contained within a single hardware unit or be distributed among several or many different hardware units.
- the preview server 140 is associated with an entity (e.g. a company or organization or moderator of the service). In one arrangement, the preview server 140 is owned and operated by the entity operating the coordination server 108. In such an arrangement, the preview server 140 may be implemented as a part (e.g., a computer program module, a computing device, etc.) of the coordination server 108.
- entity e.g. a company or organization or moderator of the service.
- the preview server 140 is owned and operated by the entity operating the coordination server 108.
- the preview server 140 may be implemented as a part (e.g., a computer program module, a computing device, etc.) of the coordination server 108.
- the coordination server 108 may also be configured to manage the registration of users.
- a registered user has a transaction account (see the discussion above) which includes details of the user.
- the registration step is called on-boarding.
- a user may use either the requestor device 102 or the provider device 104 to perform on-boarding to the coordination server 108.
- the on-boarding process for a user is performed by the user through one of the requestor device 102 or the provider device 104.
- the user downloads an app (which includes, or otherwise provides access to, the API to interact with the coordination server 108) to the requestor device 102 or the provider device 104.
- the user accesses a website (which includes, or otherwise provides access to, the API to interact with the coordination server 108) on the requestor device 102 or the provider device 104.
- the user is then able to interact with the preview server 140.
- the user may be a requestor or a provider associated with the requestor device 102 or the provider device 104, respectively.
- Details of the registration include, for example, name of the user, address of the user, emergency contact, blood type or other healthcare information, next-of-kin contact, permissions to retrieve data and information from the requestor device 102 and/or the provider device 104 for preview purposes, such as permission to use a camera of the requestor device 102 and/or the provider device 104 to take a picture of a POI, drop-off point, merchant or other similar locations, wherein the picture may be used by the preview server 140 as an image for preview purposes.
- another mobile device may be selected instead of the requestor device 102 and/or the provider device 104 for retrieving the image. Once on-boarded, the user would have a transaction account that stores all the details.
- the requestor device 102 is associated with a customer (or requestor) who is a party to, for example, a travel request that occurs between the requestor device 102 and the provider device 104.
- the requestor device 102 may be a computing device such as a desktop computer, an interactive voice response (IVR) system, a smartphone, a laptop computer, a personal digital assistant computer (PDA), a mobile computer, a tablet computer, and the like.
- IVR interactive voice response
- PDA personal digital assistant computer
- the requestor device 102 includes transaction credentials (e.g., a payment account) of a requestor to enable the requestor device 102 to be a party to a payment transaction. If the requestor has a transaction account, the transaction account may also be included (i.e., stored) in the requestor device 102. For example, a mobile device (which is a requestor device 102) may have the transaction account of the customer stored in the mobile device.
- transaction credentials e.g., a payment account
- the transaction account may also be included (i.e., stored) in the requestor device 102.
- a mobile device which is a requestor device 102 may have the transaction account of the customer stored in the mobile device.
- the requestor device 102 is a computing device in the form of a watch or similar wearable and is fitted with a wireless communications interface (e.g., a NFC interface).
- the requestor device 102 can then electronically communicate with the provider device 104 regarding a transaction or travel request.
- the customer uses the watch or similar wearable to make a request regarding the transaction or travel request by pressing a button on the watch or wearable.
- the provider device 104 is associated with a provider who is also a party to the transaction request that occurs between the requestor device 102 and the provider device 104.
- the provider device 104 may be a computing device such as a desktop computer, an interactive voice response (IVR) system, a smartphone, a laptop computer, a personal digital assistant computer (PDA), a mobile computer, a tablet computer, and the like.
- IVR interactive voice response
- PDA personal digital assistant computer
- the term "provider” refers to a service provider and any third party associated with providing a good or service for purchase, or a travel or ride or delivery service via the provider device 104. Therefore, the transaction account of a provider refers to both the transaction account of a provider and the transaction account of a third party (e.g., a travel coordinator or merchant) associated with the provider.
- a third party e.g., a travel coordinator or merchant
- details of the transaction account may also be included (i.e., stored) in the provider device 104.
- a mobile device which is a provider device 104 may have transaction account details (e.g., account number) of the provider stored in the mobile device.
- the provider device 104 is a computing device in the form of a watch or similar wearable and is fitted with a wireless communications interface (e.g., a NFC interface). The provider device 104 can then electronically communicate with the requestor to make a request regarding the transaction or travel request by pressing a button on the watch or wearable.
- the acquirer server 106 is associated with an acquirer who may be an entity (e.g. a company or organization) which issues (e.g. establishes, manages, administers) a payment account (e.g. a financial bank account) of a merchant.
- An example of an acquirer is a bank or other financial institution.
- the acquirer server 106 may include one or more computing devices that are used to establish communication with another server (e.g., the coordination server 108) by exchanging messages with and/or passing information to the other server.
- the acquirer server 106 forwards the payment transaction relating to a transaction or transport request to the coordination server 108.
- the coordination server 108 is configured to carry out processes relating to a transaction account by, for example, forwarding data and information associated with the transaction to the other servers in the system 100, such as the preview server 140.
- the coordination server 108 may provide data and information associated with a request including location information that may be used for the preview process of preview server 140.
- An image may be determined based on an outcome of the preview process e.g. an image corresponding to a drop-off point for a location based on the location information, the image being one that is based on historical data identifying the drop-off point.
- the issuer server 110 is associated with an issuer and may include one or more computing devices that are used to perform a payment transaction.
- the issuer may be an entity (e.g. a company or organization) which issues (e.g. establishes, manages, administers) a transaction credential or a payment account (e.g. a financial bank account) associated with the owner of the requestor device 102.
- the issuer server 110 may include one or more computing devices that are used to establish communication with another server (e.g., the coordination server 108) by exchanging messages with and/or passing information to the other server.
- the image database 150 is a database or server associated with an entity (e.g. a company or organization) which manages (e.g. establishes, administers) data relating to a plurality of users that are registered with a transaction account with the coordination server 108.
- the data comprises a plurality of images wherein each image is associated with a geographical coordinate and map-matched to road-segments to facilitate shortlisting the images near/of a POI or merchant.
- the images are used by the preview server 140 for providing an image associated with a POI or merchant to the requestor device 102 or the provider device 104.
- a personalized recommender system may provide personalized (e.g. Al-powered) recommendations based on the user behaviour, of the trending and popular cuisines at the location of choice.
- the recommender system may involve user profiling for personalized recommendations in real time.
- advertising platforms may also be used to offer merchants in bidding (e.g. merchants that are paying an amount of money to an entity managing the preview server 140 and/or coordination server 108 to promote their stores) to showcase their restau- rants/stores along with their respective offers. Additional metrics, like expected drop offs happening in next few hours at nearby POIs may help merchants to optimize their ads for each specific time window across the day.
- a benefit of embodiments of the present technology is to reduce uncertainty to passengers and drivers during a transport service, and to simultaneously leverage personalized cross sell opportunities across services that are also typically available on transport, food and mart applications.
- a destination preview e.g. an image depicting a view of a selected destination
- the next part may include display of a thumbnail of the passenger’s selected dropoff POI with multiple visuals to acquaint the passenger and/or driver about the POI to be visited.
- an API may use location information such as a POI identifier (POI ID) and fetches the images of the POI and its nearby location, using POI profiling (see, for example, Fig. 8), and further displays the shortlisted images on the transport booking application.
- POI ID a POI identifier
- intransit display of images of, and offers provided by, various merchants may utilize an advertising platform, and may be further augmented with a recommender system to person- alize the recommendations being shown to the passengers and driver partners.
- This service may be called once the passenger or driver opts for the service during transit.
- drop-offs are expected to be happening near the highest bidding merchants (e.g. merchants that are paying comparatively more over other merchants to an entity managing the preview server 140 and/or coordination server 108 to promote their stores)
- a heatmap visualization may be created for each high bidding merchant to draw the passenger or driver’s attention.
- the heatmap visualization may also be adjusted (for example, by using a brighter colour or shade of colour, or increasing the circumference of the heatmap surrounding the merchant, or other similar techniques) based on the number of expected drop-offs near a merchant to inform the passenger and driver of low or high traffic around the vicinity of the merchant.
- Stage one helps in providing information related to the drop-off/pick-up location during search and once the desired option is selected, thus helping a user to manage uncertainty and anxiety by providing visual previews of the POIs in form of images, GIFs, videos or other similar forms of media, and eventually leading to a better overall customer experience and trip. It is to be appreciated that the visual preview could be all or part of the POIs in form of images, GIFs, videos or other similar forms of media.
- the second stage advantageously provides additional, highly recommended, and personalized information, for example as a result of activating an opt-in only Trending button (for example, see icon 344 of Fig. 3B), that enables a user to make further decisions/purchases once the trip is completed. Being an opt-in functionality during each transit, this alleviates the uncertainty of the user arising from an abundance of information, thereby enhancing user experience when using the transport booking application.
- FIG. 2 depicts example illustrations of how an image may be provided during a POI search, according to various embodiments.
- Illustration 300 depicts a menu in a transport booking application where a user can input text to search for a desired drop-off location or POI.
- the user device on which the application is installed may be, for example, the requestor device 102.
- This menu may be activated in response to a request from the user to the coordination server 108 to make a transport booking.
- the user inputs text (e.g. “moun” at search bar 306) and various search results or POIs corresponding to the input text may be displayed. Based on each search result or POI, one or more drop-off points may be available and also shown to the user for selection.
- the preview server 140 may provide an image related to the POI. For example, the user may wish to have a preview of how the main lobby of Mount Alvernia Hospital looks like, and therefore presses preview icon 308.
- the preview server 140 receives the request including location information (e.g. information identifying the drop-off point main lobby of Mount Alvernia Hospital) and determines, based on the location information, an image 304 corresponding to the drop-off point (e.g. main lobby of Mount Alvernia Hospital), the image being one that is based on historical data identifying the drop-off point.
- the image 304 e.g.
- the location information may comprise a POI ID associated with the drop-off point or POI, or a geographical coordinate (e.g. latitudinal and longitudinal coordinates) corresponding to the drop-off point or POI, that may be used to identify the dropoff point or POI.
- the image may be geo-tagged with a geographical coordinate and/or associated with a POI ID to facilitate the preview server 140 in determining the correct image based on user’s selection.
- Determining the image may thus comprise determining that the geographical coordinate or associated POI ID is same as that of the drop-off point.
- the user may instead click on another preview icon 310 to have a preview of a different location, and another image 302 may be loaded and displayed on the user device to the user.
- the user may also be able to select the displayed drop-off point as the desired destination by pressing a confirmation bar 314.
- FIG. 3A depicts example illustrations of how an image may be provided for a dropoff location, according to various embodiments.
- Illustration 316 depicts a menu in the transport booking application where the user has selected a desired drop-off location (e.g. by clicking or touching confirmation bar 312 or 314), wherein a travel route is shown from a pick-up point 322 to a drop-off point 324 on a topographic map 326.
- the drop-off point 324 may be accompanied by a thumbnail image 328 depicting a mini view of the drop-off point.
- the user wishing to have a preview of how the drop-off point 324 looks like or to confirm that the drop-off point 324 is correct may request for images of the drop-off point 324 by clicking or touching the thumbnail image 328.
- the preview server 140 receives the request including location information (e.g. information identifying the drop-off point 324) and obtains, based on the location information, image data corresponding to the drop-off point 324.
- Obtaining the image data may further comprise identifying the drop-off point 324 based on the location information.
- the image data may be associated with a geographical coordinate, and obtaining the image data may further comprise determining that the geographical coordinate is same as that of the drop-off point 324.
- the image data (e.g. depicting a view 318 of the drop-off point 324) is then loaded and displayed via the application to the user as a visual preview of the location.
- the visual preview may be all or part of the image data, or may be generated from the image data.
- further images depicting other views of the drop-off point 324 may be displayed, such as image 320, or a video or animation of the drop-off point (not shown).
- FIG. 3B depicts example illustrations of how an image or offer may be provided for a merchant located near a drop-off location, according to various embodiments.
- Illustration 332 depicts a menu in the transport booking application where the user has confirmed a transport booking (e.g. by clicking or touching confirmation bar 330), wherein the user is shown travelling in real-time along a travel route 340 to a drop-off point 338 on a topographic map 342.
- the user may click or press a trending icon 344 to request displaying merchants that are located within the vicinity of the drop-off point 338.
- the preview server 140 receives the request including location information (e.g.
- the preview server 140 may identify that merchants 346 and 348 are within the vicinity of the drop-off point 338. These merchants may then be displayed on the topographic map 342 relative to the drop-off point 338. These merchants may be identified by the preview server 140 based on proximity to the drop-off point, the user preference associated with the request (e.g. preferences that are related to a user profile of the user), based on a highest bidder arrangement (e.g.
- each merchant (or specific merchants that are paying more to get their stores promoted) may be displayed on the topographic map with a heatmap 350 (see Fig. 3C).
- the intensity of the heatmap may be adjusted based on the location of the merchant relative to the drop-off point, or based on a highest bidder arrangement (e.g. merchants may pay more to have a bigger or brighter heatmap indicating their location on the topographic map), or other similar factors.
- the user wishing to find out more about the merchant 348 may, for example, send a request via clicking on or touching the thumbnail of the merchant 348 to display related images and offers.
- the preview server 140 receives the request and obtains image data (e.g. depicting a view 334 of the merchant 348) corresponding to the merchant 348 based on location information of the merchant 348.
- the view 334 may then be displayed on the user device via the transport booking application.
- the user may further request for related offers of the merchant by, for example, clicking on or touching the view 334.
- the preview server 140 may determine an offer (e.g.
- the preview server 140 may be configured to determine an expected arrival time at the drop-off point 338 based on an estimated time for travelling from the pickup point to the drop-off point 338, and determine the offer based on the expected arrival time. This advantageously provides realtime offer recommendations to the user. The user may then be able to browse through the provided catalog of offers and make a purchase by clicking on or touching a desired offer, and may even indicate that the user will pick up the purchased item upon arrival at the drop-off point 338.
- the preview server 140 may also be configured to request the user to provide images relating to a POI, for example when no image relating to the POI is available.
- the preview server 140 may receive an image relating to the POI, and store the received image as an image associated with the geographical coordinate and/or POI ID of the POI. While images are provided in the above examples, it will be appreciated that other forms of media such as videos may also be provided to users, for example a video sselling the POI or showing how to arrive at the POI from a certain location.
- Fig. 4 depicts an example illustration 400 of how profiling may be implemented for providing an image of a location, according to various embodiments.
- POI profiling may be utilized to build customized profiles 402 of all POIs recorded as historical data in, for example, an internal database 406 of an entity managing the preview server 140, and these customized POI profiles 402 can be queried to fetch POI related images in real-time.
- POI profiling may leverage an underlying imagery dataset 404 (such as KartaView, available from kartaview.org) to collect related images for each POI. Every image is tagged with location information such as a geographical coordinate (e.g.
- POI profiling queries the top-k images that are map-matched (e.g. matched to the road network surrounding the selected POI based on the location information tagged to the top-k images) closest to the selected POI and adds these images to the profiles of individual POIs.
- POI profiling can be further extended to merchants and users.
- Merchant profiling may be utilized by leveraging on imagery dataset 404 or another image database that stores images relating to the merchants, and may also be utilized to consolidate information relating to offers and/or goods of the merchant.
- the created merchant profiles may be queried not only for retrieving images relating to the merchant but also offers and/or goods of the merchant.
- User profiling may be utilized for consolidating information of each user of the associated travel or delivery booking application. For example, user preferences, behaviour and patterns relating to purchasing, travel, or other similar activities of a user may be compiled in a user profile which can be queried to provide personalized recommendations of merchant offers to the user.
- a final collection of POI and merchant profiles may be stored as image metadata in a datastore, for example such as AWS S3 Datastore in the following format:
- Fig. 5 depicts an example illustration 500 of how an online service infrastructure may be implemented for providing an image of a location, according to various embodiments.
- the online serving implementation for providing an image of a POI e.g. as a preview of the POI, which uses the POI and Merchant profiling, may be as follows.
- Step 1 502 a user inputs text for a drop-off location in an associated travel or delivery booking application of the requestor device 102 or provider device 104 (e.g. typing text in search bar 306 of Fig. 2).
- Corresponding POI IDs with names matching the input text are fetched from a POI-Backend service 504 and presented to the user as possible drop-off locations (e.g. POIs) via the application for selection by the user.
- a step 2 506 information such as an ID of the user, a selected POI (e.g. after clicking on or touching icon 308 or 310 of Fig. 2, thumbnail 328 of Fig. 3A, or thumbnail 346 or 348 of Fig. 3B) and associated POI ID are passed as input to a backend API 508 (for example, such as Backend API).
- a backend API 508 for example, such as Backend API
- an orchestrator API 512 within the backend API 508 queries a Micro FileService 514 to fetch preview images (e.g. images relating to the selected POI) and personalized recommendations (e.g. based on merchant and user preferences) in the following order: in a step 3.1 516, the Micro FileService 514 fetches a POI profile (e.g. including images relating to the POI) based on, for example, the POI ID, from an object storage service 518 such as, for example, Amazon AWS S3.
- the Micro FileService 514 may also fetch a merchant profile (e.g. including images relating to the merchant, and images relating to goods or services provided by the merchant) which is located within the vicinity of the selected POI.
- the Micro FileService 514 may also query a Personalized Recommendation service 522 to provide an Al powered recommendation to the user based on the trending and personalized cuisines, tailored according to the user’s preferences (e.g. based on a user profile associated with the ID of the user).
- the orchestrator API 512 compiles all metadata that is queried from the Micro Fileservice 514 and transmits the compiled information in a format that is compatible with the requestor device 102 or provider device 104.
- the orchestrator API 512 and the Micro-FileService 514 may be written in a programming language such as Golang, and may be deployed in Azure.
- AWS S3 may be used to store the POI and Merchant profiles. It will be appreciated that other APIs, programming languages, and object store services may be utilized in place of the above-mentioned examples.
- Fig. 6 illustrates an example flow diagram of how an image of a location may be provided according to various embodiments.
- a request including location information of a selected location is received from a user device.
- image data corresponding to a drop-off point for the selected location is obtained based on the location information.
- a visual preview based on the image data is caused to be displayed on the user device.
- obtaining the image data may further comprise identifying the drop-off point based on the location information.
- the image data may be associated with a geographical coordinate, and obtaining the image data may further comprise determining that the geographical coordinate is same as that of the drop-off point.
- additional image data corresponding to the drop-off point may be received from the user device, and the received image data may be stored as image data associated with the geographical coordinate.
- the visual preview may depict a view of the drop-off point, a location of the drop-off point relative to the location may be indicated on the user device, and the visual preview may be loaded on the user device as a view of the drop-off point.
- the visual preview may be all or part of the image data, or may be generated from the image data.
- Fig. 7 illustrates an example flow diagram of how cross vertical personalized recommendations during transit may be implemented according to various embodiments.
- a merchant located near the drop-off point may be identified based on a user preference associated with a request, the request including location information of a selected location; and a location of the merchant relative to the drop-off point may be indicated on the user device.
- image data corresponding to the merchant may be obtained based on location information of the merchant.
- an offer provided by the merchant may be determined based on the user preference associated with the request.
- an expected arrival time at the drop-off point may be determined based on an estimated time for travelling from the pickup location to the drop-off point.
- the offer (e.g. of step 706) may be determined based on the expected arrival time.
- Figs. 8A and 8B form a schematic block diagram of a general purpose computer system suitable for implementation of the coordination server of Fig. 1 .
- the computer system 1300 includes a computer module 1301.
- An external Modulator-Demodulator (Modem) transceiver device 1316 may be used by the computer module 1301 for communicating to and from a communications network 1320 via a connection 1321.
- the communications network 1320 may be a wide-area network (WAN), such as the Internet, a cellular telecommunications network, or a private WAN.
- the modem 1316 may be a traditional “dial-up” modem.
- the modem 1316 may be a broadband modem.
- a wireless modem may also be used for wireless connection to the communications network 1320.
- the computer module 1301 typically includes at least one processor unit 1305, and a memory unit 1306.
- the memory unit 1306 may have semiconductor random access memory (RAM) and semiconductor read only memory (ROM).
- the computer module 1301 also includes an interface 1308 for the external modem 1316.
- the modem 1316 may be incorporated within the computer module 1301 , for example within the interface 1308.
- the computer module 1301 also has a local network interface 1311 , which permits coupling of the computer system 1300 via a connection 1323 to a local-area communications network 1322, known as a Local Area Network (LAN).
- LAN Local Area Network
- the local communications network 1322 may also couple to the wide network 1320 via a connection 1324, which would typically include a so-called “firewall” device or device of similar functionality.
- the local network interface 1311 may comprise an Ethernet circuit card, a Bluetooth® wireless arrangement or an IEEE 802.1 1 wireless arrangement; however, numerous other types of interfaces may be practiced for the interface 1311.
- the I/O interfaces 1308 may afford either or both of serial and parallel connectivity, the former typically being implemented according to the Universal Serial Bus (USB) standards and having corresponding USB connectors (not illustrated).
- Storage devices 1309 are provided and typically include a hard disk drive (HDD) 1310. Other storage devices such as a floppy disk drive and a magnetic tape drive (not illustrated) may also be used.
- An optical disk drive 1312 is typically provided to act as a non-volatile source of data.
- Portable memory devices such optical disks, USB-RAM, portable, external hard drives, and floppy disks, for example, may be used as appropriate sources of data to the system 1300.
- the components 1305 to 1312 of the computer module 1301 typically communicate via an interconnected bus 1304 and in a manner that results in a conventional mode of operation of the computer system 1300 known to those in the relevant art.
- the processor 1305 is coupled to the system bus 1304 using a connection 1318.
- the memory 1306 and optical disk drive 1312 are coupled to the system bus 1304 by connections 1319. Examples of computers on which the described arrangements can be practised include IBM-PC’s and compatibles, Sun Sparcstations, Apple or like computer systems.
- the steps of the methods 600 and 700 in Figs. 6 and 7 facilitated by the coordination server 108 may be implemented using the computer system 1300.
- the steps of the methods 600 and 700 may be implemented as one or more software application programs 1333 executable within the computer system 1300.
- the steps of the method 600 as facilitated by the coordination server 108 are effected by instructions 1331 (see Fig. 6B) in the software 1333 that are carried out within the computer system 1300.
- the software instructions 1331 may be formed as one or more code modules, each for performing one or more particular tasks.
- the software may also be divided into two separate parts, in which a first part and the corresponding code modules facilitates the steps of the methods 600 and 700 and a second part and the corresponding code modules manage a user interface between the first part and the user.
- the software may be stored in a computer readable medium, including the storage devices described below, for example.
- the software is loaded into the computer system 1300 from the computer readable medium, and then executed by the computer system 1300.
- a computer readable medium having such software or computer program recorded on the computer readable medium is a computer program product.
- the use of the computer program product in the computer system 1300 preferably effects an advantageous apparatus for a coordination server 108.
- the software 1333 is typically stored in the HDD 1310 or the memory 1306.
- the software is loaded into the computer system 1300 from a computer readable medium, and executed by the computer system 1300.
- the software 1333 may be stored on an optically readable disk storage medium (e.g., CD-ROM) 1325 that is read by the optical disk drive 1312.
- a computer readable medium having such software or computer program recorded on it is a computer program product.
- the use of the computer program product in the computer system 1300 preferably effects an apparatus for a coordination server 108.
- the application programs 1333 may be supplied to the user encoded on one or more CD-ROMs 1325 and read via the corresponding drive 1312, or alternatively may be read by the user from the networks 1320 or 1322. Still further, the software can also be loaded into the computer system 1300 from other computer readable media.
- Computer readable storage media refers to any non-transitory tangible storage medium that provides recorded instructions and/or data to the computer system 1300 for execution and/or processing.
- Examples of such storage media include floppy disks, magnetic tape, optical disk, a hard disk drive, a ROM or integrated circuit, USB memory, a magneto-optical disk, or a computer readable card such as a PCMCIA card and the like, whether or not such devices are internal or external of the computer module 1301 .
- Examples of transitory or non-tangible computer readable transmission media that may also participate in the provision of software, application programs, instructions and/or data to the computer module 1301 include radio or infra-red transmission channels as well as a network connection to another computer or networked device, and the Internet or Intranets including e-mail transmissions and information recorded on Websites and the like.
- GUIs graphical user interfaces
- a user of the computer system 1300 and the application may manipulate the interface in a functionally adaptable manner to provide controlling commands and/or input to the applications associated with the GUI(s).
- Other forms of functionally adaptable user interfaces may also be implemented, such as an audio interface utilizing speech prompts output via loudspeakers and user voice commands input via a microphone.
- Fig. 8B is a detailed schematic block diagram of the processor 1305 and a “memory” 1334.
- the memory 1334 represents a logical aggregation of all the memory modules (including the HDD 1309 and semiconductor memory 1306) that can be accessed by the computer module 1301 in Fig. 8A.
- a power-on self-test (POST) program 1350 executes.
- the POST program 1350 is typically stored in a ROM 1349 of the semiconductor memory 1306 of Fig. 8A.
- a hardware device such as the ROM 1349 storing software is sometimes referred to as firmware.
- the POST program 1350 examines hardware within the computer module 1301 to ensure proper functioning and typically checks the processor 1305, the memory 1334 (1309, 1306), and a basic input-output systems software (BIOS) module 1351 , also typically stored in the ROM 1349, for correct operation. Once the POST program 1350 has run successfully, the BIOS 1351 activates the hard disk drive 1310 of Fig. 8A.
- BIOS basic input-output systems software
- Activation of the hard disk drive 1310 causes a bootstrap loader program 1352 that is resident on the hard disk drive 1310 to execute via the processor 1305.
- the operating system 1353 is a system level application, executable by the processor 1305, to fulfil various high level functions, including processor management, memory management, device management, storage management, software application interface, and generic user interface.
- the operating system 1353 manages the memory 1334 (1309, 1306) to ensure that each process or application running on the computer module 1301 has sufficient memory in which to execute without colliding with memory allocated to another process. Furthermore, the different types of memory available in the system 1300 of Fig. 8A must be used properly so that each process can run effectively. Accordingly, the aggregated memory 1334 is not intended to illustrate how particular segments of memory are allocated (unless otherwise stated), but rather to provide a general view of the memory accessible by the computer system 1300 and how such is used. [100] As shown in Fig.
- the processor 1305 includes a number of functional modules including a control unit 1339, an arithmetic logic unit (ALU) 1340, and a local or internal memory 1348, sometimes called a cache memory.
- the cache memory 1348 typically includes a number of storage registers 1344 - 1346 in a register section.
- One or more internal busses 1341 functionally interconnect these functional modules.
- the processor 1305 typically also has one or more interfaces 1342 for communicating with external devices via the system bus 1304, using a connection 1318.
- the memory 1334 is coupled to the bus 1304 using a connection 1319.
- the application program 1333 includes a sequence of instructions 1331 that may include conditional branch and loop instructions.
- the program 1333 may also include data 1332 which is used in execution of the program 1333.
- the instructions 1331 and the data 1332 are stored in memory locations 1328, 1329, 1330 and 1335, 1336, 1337, respectively.
- a particular instruction may be stored in a single memory location as depicted by the instruction shown in the memory location 1330.
- an instruction may be segmented into a number of parts each of which is stored in a separate memory location, as depicted by the instruction segments shown in the memory locations 1328 and 1329.
- the processor 1305 is given a set of instructions which are executed therein.
- the processor 1305 waits for a subsequent input, to which the processor 1305 reacts to by executing another set of instructions.
- Each input may be provided from one or more of a number of sources, including data generated by one or more of the input devices 1302, 1303, data received from an external source across one of the networks 1320, 1302, data retrieved from one of the storage devices 1306, 1309 or data retrieved from a storage medium 1325 inserted into the corresponding reader 1312, all depicted in Fig. 8A.
- the execution of a set of the instructions may in some cases result in output of data. Execution may also involve storing data or variables to the memory 1334.
- the disclosed coordination server 108 arrangements use input variables 1354, which are stored in the memory 1334 in corresponding memory loca- tions 1355, 1356, 1357.
- the coordination server 108 arrangements produce output variables 1361 , which are stored in the memory 1334 in corresponding memory locations 1362, 1363, 1364.
- Intermediate variables 1358 may be stored in memory locations 1359, 1360, 1366 and 1367.
- each fetch, decode, and execute cycle comprises: a fetch operation, which fetches or reads an instruction 1331 from a memory location 1328, 1329, 1330; a decode operation in which the control unit 1339 determines which instruction has been fetched; and an execute operation in which the control unit 1339 and/or the ALU 1340 execute the instruction.
- a further fetch, decode, and execute cycle for the next instruction may be executed.
- a store cycle may be performed by which the control unit 1339 stores or writes a value to a memory location 1332.
- Each step or sub-process in the processes as performed by the coordination server 108 is associated with one or more segments of the program 1333 and is performed by the register section 1344, 1345, 1347, the ALU 1340, and the control unit 1339 in the processor 1305 working together to perform the fetch, decode, and execute cycles for every instruction in the instruction set for the noted segments of the program 1333.
- the structural context of the computer system 1300 i.e., the coordination server 108 is presented merely by way of example. Therefore, in some arrangements, one or more features of the server 1300 may be omitted. Also, in some arrangements, one or more features of the server 1300 may be combined together. Additionally, in some arrangements, one or more features of the server 1300 may be split into one or more component parts.
- Fig. 9 shows an alternative implementation of the coordination server 108 (i.e., the computer system 1300).
- the coordination server 108 may be generally described as a physical device comprising at least one processor 802 and at least one memory 804 including computer program codes.
- the at least one memory 804 and the computer program codes are configured to, with the at least one processor 802, cause the coordination server 108 to facilitate the operations described in the methods 600 and 700.
- the coordination server 108 may also include a coordination module 806.
- the memory 804 stores computer program code that the processor 802 compiles to have each of the modules 806 and 808 performs their respective functions.
- the coordination module 806 performs the function of communicating with the requestor device 102 and the provider device 104; and the acquirer server 106 and the issuer server 110 to respectively receive and transmit a transaction, travel or delivery request message. Further, the coordination module 806 may provide data and information associated with POIs and users that are used for the preview process of preview server 140.
- Fig. 8C depict a general-purpose computer system 1400, upon which the preview server 140 described can be practiced.
- the computer system 1400 includes a computer module 1401.
- An external Modulator-Demodulator (Modem) transceiver device 1416 may be used by the computer module 1401 for communicating to and from a communications network 1420 via a connection 1421.
- the communications network 1420 may be a wide- area network (WAN), such as the Internet, a cellular telecommunications network, or a private WAN.
- the modem 1416 may be a traditional “dial-up” modem.
- the modem 1416 may be a broadband modem.
- a wireless modem may also be used for wireless connection to the communications network 1420.
- the computer module 1401 typically includes at least one processor unit 1405, and a memory unit 1406.
- the memory unit 1406 may have semiconductor random access memory (RAM) and semiconductor read only memory (ROM).
- the computer module 1401 also includes an interface 1408 for the external modem 1416.
- the modem 1416 may be incorporated within the computer module 1401 , for example within the interface 1408.
- the computer module 1401 also has a local network interface 1411 , which permits coupling of the computer system 1400 via a connection 1423 to a local-area communications network 1422, known as a Local Area Network (LAN).
- LAN Local Area Network
- the local communications network 1422 may also couple to the wide network 1420 via a connection 1424, which would typically include a so-called “firewall” device or device of similar functionality.
- the local network interface 1411 may comprise an Ethernet circuit card, a Bluetooth® wireless arrangement or an IEEE 802.1 1 wireless arrangement; however, numerous other types of interfaces may be practiced for the interface 1411.
- the I/O interfaces 1408 may afford either or both of serial and parallel connectivity, the former typically being implemented according to the Universal Serial Bus (USB) standards and having corresponding USB connectors (not illustrated).
- Storage devices 1409 are provided and typically include a hard disk drive (HDD) 1410. Other storage devices such as a floppy disk drive and a magnetic tape drive (not illustrated) may also be used.
- An optical disk drive 1412 is typically provided to act as a non-volatile source of data.
- Portable memory devices, such optical disks, USB-RAM, portable, external hard drives, and floppy disks, for example, may be used as appropriate sources of data to the system 1400.
- the components 1405 to 1412 of the computer module 1401 typically communicate via an interconnected bus 1404 and in a manner that results in a conventional mode of operation of the computer system 1400 known to those in the relevant art.
- the processor 1405 is coupled to the system bus 1404 using a connection 1418.
- the memory 1406 and optical disk drive 1412 are coupled to the system bus 1404 by connections 1419. Examples of computers on which the described arrangements can be practised include IBM-PC’s and compatibles, Sun Sparcstations, Apple or like computer systems.
- the methods 600 and 700, where performed by the preview server 140 may be implemented using the computer system 1400.
- the processes may be implemented as one or more software application programs 1433 executable within the computer system 1400.
- the sub-processes 400, 500, and 600 are effected by instructions (see corresponding component 1331 in Fig. 8B) in the software 1433 that are carried out within the computer system 1400.
- the software instructions may be formed as one or more code modules, each for performing one or more particular tasks.
- the software may also be divided into two separate parts, in which a first part and the corresponding code modules performs the methods and a second part and the corresponding code modules manage a user interface between the first part and the user.
- the software may be stored in a computer readable medium, including the storage devices described below, for example.
- the software is loaded into the computer system 1400 from the computer readable medium, and then executed by the computer system 1400.
- a computer readable medium having such software or computer program recorded on the computer readable medium is a computer program product.
- the use of the computer program product in the computer system 1400 preferably effects an advantageous apparatus for a preview server 140.
- the software 1433 is typically stored in the HDD 1410 or the memory 1406.
- the software is loaded into the computer system 1400 from a computer readable medium, and executed by the computer system 1400.
- the software 1433 may be stored on an optically readable disk storage medium (e.g., CD-ROM) 1425 that is read by the optical disk drive 1412.
- a computer readable medium having such software or computer program recorded on it is a computer program product.
- the use of the computer program product in the computer system 1400 preferably effects an apparatus for a preview server 140.
- the application programs 1433 may be supplied to the user encoded on one or more CD-ROMs 1425 and read via the corresponding drive 1412, or alternatively may be read by the user from the networks 1420 or 1422. Still further, the software can also be loaded into the computer system 1400 from other computer readable media.
- Computer readable storage media refers to any non-transitory tangible storage medium that provides recorded instructions and/or data to the computer system 1400 for execution and/or processing.
- Examples of such storage media include floppy disks, magnetic tape, optical disc, a hard disk drive, a ROM or integrated circuit, USB memory, a magneto-optical disk, or a computer readable card such as a PCMCIA card and the like, whether or not such devices are internal or external of the computer module 1401.
- Examples of transitory or non-tangible computer readable transmission media that may also participate in the provision of software, application programs, instructions and/or data to the computer module 1401 include radio or infra-red transmission channels as well as a network connection to another computer or networked device, and the Internet or Intranets including e-mail transmissions and information recorded on Websites and the like.
- GUIs graphical user interfaces
- a user of the computer system 1400 and the application may manipulate the interface in a functionally adaptable manner to provide controlling commands and/or input to the applications associated with the GUI(s).
- Other forms of functionally adaptable user interfaces may also be implemented, such as an audio interface utilizing speech prompts output via loudspeakers and user voice commands input via a microphone.
- the structural context of the computer system 1400 i.e., the preview server 140
- the structural context of the computer system 1400 is presented merely by way of example. Therefore, in some arrangements, one or more features of the computer system 1400 may be omitted. Also, in some arrangements, one or more features of the computer system 1400 may be combined together. Additionally, in some arrangements, one or more features of the computer system 1400 may be split into one or more component parts.
- Fig. 10 shows an alternative implementation of the preview server 140 (i.e., the computer system 1400).
- preview server 140 may be generally described as a physical device comprising at least one processor 902 and at least one memory 904 including computer program codes.
- the at least one memory 904 and the computer program codes are configured to, with the at least one processor 902, cause the preview server 140 to perform the operations described in the methods 600 and 700.
- the preview server 140 may also include a data module 908, a POI module 906, a merchant module 910 and a user module 912.
- the memory 904 stores computer program code that the processor 902 compiles to have each of the modules 906 to 916 performs their respective functions.
- the POI module 906 facilitates the function of determining an image corresponding to a drop-off point for the location based on location information, the image being one that is based on historical data identifying the drop-off point.
- the merchant module 908 facilitates the function of identifying a merchant located near the drop-off point based on a user preference associated with the request, determining an image corresponding to a merchant, the image being one that is based on historical data identifying the merchant, and determining an offer provided by the merchant based on the user preference associated with the request.
- the user module 908 facilitates the function of identifying a merchant located near the drop-off point based on a user preference associated with the request, and determining an offer provided by the merchant based on the user preference associated with the request.
- the data module 908 performs the functions of receiving data and information from the requestor device 102, provider device 104, coordination server 108, a cloud and other sources of information to facilitate the methods 600 and 700.
- the data module 908 may be configured to receive a request including location information from the requestor device 102, the provider device 104, coordination server 108 or other sources of information.
- the data module 908 may also be configured to receive an image corresponding to a drop-off point from the requestor device 102, the provider device 104, the coordination server 108, the image database 150 or other sources of information.
- the data module 908 may be further configured to send an image (for example, determined after a preview process from the processor 802 of the preview server 140) to the requestor device 102, the provider device 104, the coordination server 108, a database or other sources of information.
- Fig. 8D depicts a general-purpose computer system 1500, upon which a combined coordination server 108 and preview server 140 described can be practiced.
- the computer system 1500 includes a computer module 1501 .
- An external Modulator-Demodulator (Modem) transceiver device 1516 may be used by the computer module 1501 for communicating to and from a communications network 1520 via a connection 1521.
- the communications network 1520 may be a wide-area network (WAN), such as the Internet, a cellular telecommunications network, or a private WAN.
- the modem 1516 may be a traditional “dial-up” modem.
- the modem 1516 may be a broadband modem.
- a wireless modem may also be used for wireless connection to the communications network 1520.
- the computer module 1501 typically includes at least one processor unit 1505, and a memory unit 1506.
- the memory unit 1506 may have semiconductor random access memory (RAM) and semiconductor read only memory (ROM).
- the computer module 1501 also includes an interface 1508 for the external modem 1516.
- the modem 1516 may be incorporated within the computer module 1501 , for example within the interface 1508.
- the computer module 1501 also has a local network interface 1511 , which permits coupling of the computer system 1500 via a connection 1523 to a local-area communications network 1522, known as a Local Area Network (LAN).
- LAN Local Area Network
- the local communications network 1522 may also couple to the wide network 1520 via a connection 1524, which would typically include a so-called “firewall” device or device of similar functionality.
- the local network interface 1511 may comprise an Ethernet circuit card, a Bluetooth® wireless arrangement or an IEEE 802.1 1 wireless arrangement; however, numerous other types of interfaces may be practiced for the interface 1511.
- the I/O interfaces 1508 may afford either or both of serial and parallel connectivity, the former typically being implemented according to the Universal Serial Bus (USB) standards and having corresponding USB connectors (not illustrated).
- Storage devices 1509 are provided and typically include a hard disk drive (HDD) 1510. Other storage devices such as a floppy disk drive and a magnetic tape drive (not illustrated) may also be used.
- An optical disk drive 1512 is typically provided to act as a non-volatile source of data.
- Portable memory devices, such optical disks, USB-RAM, portable, external hard drives, and floppy disks, for example, may be used as appropriate sources of data to the system 1500.
- the components 1505 to 1512 of the computer module 1501 typically communicate via an interconnected bus 1504 and in a manner that results in a conventional mode of operation of the computer system 1500 known to those in the relevant art.
- the processor 1505 is coupled to the system bus 1504 using a connection 1518.
- the memory 1506 and optical disk drive 151 are coupled to the system bus 1504 by connections 1519. Examples of computers on which the described arrangements can be practised include IBM-PC’s and compatibles, Sun Sparcstations, Apple or like computer systems.
- the steps of the methods 600 and 700 performed by the preview server 140 and facilitated by the coordination server 108 may be implemented using the computer system 1500.
- the steps of the methods 600 and 700 as performed by the preview server 140 may be implemented as one or more software application programs 1533 executable within the computer system 1500.
- the steps of the methods 600 and 700 are effected by instructions (see corresponding component 1331 in Fig. 8B) in the software 1533 that are carried out within the computer system 1500.
- the software instructions may be formed as one or more code modules, each for performing one or more particular tasks.
- the software may also be divided into two separate parts, in which a first part and the corresponding code modules performs the steps of the methods 600 and 700 and a second part and the corresponding code modules manage a user interface between the first part and the user.
- the software may be stored in a computer readable medium, including the storage devices described below, for example.
- the software is loaded into the computer system 1500 from the computer readable medium, and then executed by the computer system 1500.
- a computer readable medium having such software or computer program recorded on the computer readable medium is a computer program product.
- the use of the computer program product in the computer system 1500 preferably effects an advantageous apparatus for a combined coordination server 108 and preview server 140.
- the software 1533 is typically stored in the HDD 1510 or the memory 1506.
- the software is loaded into the computer system 1500 from a computer readable medium, and executed by the computer system 1500.
- the software 1533 may be stored on an optically readable disk storage medium (e.g., CD-ROM) 1525 that is read by the optical disk drive 1512.
- a computer readable medium having such software or computer program recorded on it is a computer program product.
- the use of the computer program product in the computer system 1500 preferably effects an apparatus for a combined coordination server 108 and preview server 140.
- the application programs 1533 may be supplied to the user encoded on one or more CD-ROMs 1525 and read via the corresponding drive 1512, or alternatively may be read by the user from the networks 1520 or 1522. Still further, the software can also be loaded into the computer system 1500 from other computer readable media.
- Computer readable storage media refers to any non-transitory tangible storage medium that provides recorded instructions and/or data to the computer system 1500 for execution and/or processing.
- Examples of such storage media include floppy disks, magnetic tape, optical disc, a hard disk drive, a ROM or integrated circuit, USB memory, a magneto-optical disk, or a computer readable card such as a PCMCIA card and the like, whether or not such devices are internal or external of the computer module 1501 .
- Examples of transitory or non-tangible computer readable transmission media that may also participate in the provision of software, application programs, instructions and/or data to the computer module 1501 include radio or infra-red transmission channels as well as a network connection to another computer or networked device, and the Internet or Intranets including e-mail transmissions and information recorded on Websites and the like.
- GUIs graphical user interfaces
- a user of the computer system 1500 and the application may manipulate the interface in a functionally adaptable manner to provide controlling commands and/or input to the applications associated with the GUI(s).
- Other forms of functionally adaptable user interfaces may also be implemented, such as an audio interface utilizing speech prompts output via loudspeakers and user voice commands input via a microphone.
- the structural context of the computer system 1500 i.e., combined coordination server 108 and preview server 140
- the structural context of the computer system 1500 is presented merely by way of example. Therefore, in some arrangements, one or more features of the server 1500 may be omitted. Also, in some arrangements, one or more features of the server 1500 may be combined together. Additionally, in some arrangements, one or more features of the server 1500 may be split into one or more component parts.
- Fig. 11 shows an alternative implementation of combined coordination server 108 and preview server 140 (i.e., the computer system 1500).
- the combined coordination server 108 and preview server 140 may be generally described as a physical device comprising at least one processor 1002 and at least one memory 904 including computer program codes.
- the at least one memory 1004 and the computer program codes are configured to, with the at least one processor 1002, cause the combined coordination server 108 and preview server 140 to perform the operations described in the steps of the methods 600 and 700.
- the combined coordination server 108 and preview server 140 may also include a coordination module 806, a POI module 906, a data module 908, a merchant module 910, a user module 912.
- the memory 1004 stores computer program code that the processor 1002 compiles to have each of the modules 806 to 912 performs their respective functions.
- the coordination module 806 performs the function of communicating with the requestor device 102 and the provider device 104; and the acquirer server 106 and the issuer server 110 to respectively receive and transmit a transaction, travel or delivery request message. Further, the coordination module 806 may provide data and information associated with POIs and users that are used for the preview process of preview server 140.
- the POI module 906 facilitates the function of determining an image corresponding to a drop-off point for the location based on location information, the image being one that is based on historical data identifying the drop-off point.
- the merchant module 908 facilitates the function of identifying a merchant located near the drop-off point based on a user preference associated with the request, determining an image corresponding to a merchant, the image being one that is based on historical data identifying the merchant, and determining an offer provided by the merchant based on the user preference associated with the request.
- the user module 908 facilitates the function of identifying a merchant located near the drop-off point based on a user preference associated with the request, and determining an offer provided by the merchant based on the user preference associated with the request.
- the data module 908 performs the functions of receiving data and information from the requestor device 102, provider device 104, coordination server 108, a cloud and other sources of information to facilitate the methods 600 and 700.
- the data module 908 may be configured to receive a request including location information from the requestor device 102, the provider device 104, coordination server 108 or other sources of information.
- the data module 908 may also be configured to receive an image corresponding to a drop-off point from the requestor device 102, the provider device 104, the coordination server 108, the image database 150 or other sources of information.
- the data module 908 may be further configured to send an image (for example, determined after a preview process from the processor 802 of the preview server 140) to the requestor device 102, the provider device 104, the coordination server 108, a database or other sources of information.
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Development Economics (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Marketing (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- User Interface Of Digital Computer (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The present disclosure provides methods and systems for providing an image of a location. In some examples, there is provided a method for According to a first aspect of the present disclosure, there is provided a method for providing a visual preview of a lo-cation selected by a user at a user device, the method comprising: receiving, from the user device, a request including location information of the selected location; obtaining image data corresponding to a drop-off point for the selected location based on the location information; and causing to be displayed, on the user device, the visual preview based on the image data.
Description
Method and System for Providing an Image of a Location
FIELD OF INVENTION
[1] The present disclosure relates broadly, but not exclusively, to methods and systems for providing a visual preview of a location.
BACKGROUND
[2] Transport, ride booking and delivery services have become increasingly popular, especially with the prevalence of applications offering such services. These applications may be installed on, for example, a mobile device to enable a user to conveniently access such services.
[3] Quite often, a person looking to book a ride or delivery service or even a driver offering the ride or delivery service may be unfamiliar with the visuals of drop-off and pickup locations associated with the booking, thereby leading to unnecessary delays. For example, users may be unsure and confused over which point of interest (POI) or corresponding correct entrance (e.g. lobby or block) should be selected while making a transport booking, due to search results consisting of multiple POIs, and entrance options with similar names or naming structure.
[4] Further, in part due to being unfamiliar with drop-off and pick-up locations associated with a booking, there is also a lack of awareness of users (e.g. both passenger and driver of a transport booking) about real-time trending promotions & POIs prevalent nearby of a transit point and/or destination of the transport booking. There is also a lack of provision of such information that is personalized to each of the users’ needs.
[5] A need therefore exists to provide methods and systems that seek to overcome or at least minimize the above mentioned challenges.
SUMMARY
[6] According to a first aspect of the present disclosure, there is provided a method for providing a visual preview of a location selected by a user at a user device, the method comprising: receiving, from the user device, a request including location information of the selected location; obtaining image data corresponding to a drop-off point for the selected location based on the location information; and causing to be displayed, on the user device, the visual preview based on the image data.
[7] According to a second aspect of the present disclosure, there is provided a system for providing a visual preview of a location selected by a user at a user device, the system comprising: at least one processor; and at least one memory including computer program code; the at least one memory and the computer program code configured to, with the at least one processor, cause the system at least to: receive, from the user device, a request including location information of the selected location; obtain image data corresponding to a drop-off point for the selected location based on the location information; and cause to be displayed, on the user device, the visual preview based on the image data.
BRIEF DESCRIPTION OF THE DRAWINGS
[9] Embodiments and implementations are provided by way of example only, and will be better understood and readily apparent to one of ordinary skill in the art from the following written description, read in conjunction with the drawings, in which:
[10] Fig. 1 illustrates a system for providing an image of a location according to various embodiments of the present disclosure.
[11] Fig. 2 depicts example illustrations of how an image may be provided during a place of interest (POI) search, according to various embodiments.
[12] Fig. 3A depicts example illustrations of how an image may be provided for a dropoff location, according to various embodiments.
[13] Fig. 3B depicts example illustrations of how an image or offer may be provided for a merchant located near a drop-off location, according to various embodiments.
[14] Fig. 3C depicts an example illustration of how a location of a merchant may be indicated on a topographic map, according to various embodiments.
[15] Fig. 4 depicts an example illustration of how profiling may be implemented for providing an image of a location, according to various embodiments.
[16] Fig. 5 depicts an example illustration of how an online service infrastructure may be implemented for providing an image of a location, according to various embodiments.
[17] Fig. 6 illustrates an example flow diagram of how a visual preview of a location may be provided according to various embodiments.
[18] Fig. 7 illustrates an example flow diagram of how an offer may be recommended according to various embodiments.
[19] Figs. 8A and 8B form a schematic block diagram of a general purpose computer system upon which the coordination server of Fig. 1 can be practiced.
[20] Fig. 80 is a schematic block diagram of a general purpose computer system upon which the preview server of Fig. 2 can be practiced.
[21] Fig. 8D is a schematic block diagram of a general purpose computer system upon which a combined coordination server and preview server of Fig. 1 can be practiced.
[22] Fig. 9 shows an example of a computing device to realize the coordination server shown in Fig. 1.
[23] Fig. 10 shows an example of a computing device to realize the preview server shown in Fig. 1.
[24] Fig. 11 shows an example of a computing device to realize a combined coordination and preview server shown in Fig. 1 .
[25] Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been depicted to scale. For example, the dimensions of some of the elements in the illustrations, block diagrams or flowcharts may be exaggerated in respect to other elements to help to improve understanding of the present embodiments.
DETAILED DESCRIPTION
[26] Embodiments will be described, by way of example only, with reference to the drawings. Like reference numerals and characters in the drawings refer to like elements or equivalents.
[27] Some portions of the description which follows are explicitly or implicitly presented in terms of algorithms and functional or symbolic representations of operations on data within a computer memory. These algorithmic descriptions and functional or symbolic representations are the means used by those skilled in the data processing arts to convey most effectively the substance of their work to others skilled in the art. An algorithm is
here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities, such as electrical, magnetic or optical signals capable of being stored, transferred, combined, compared, and otherwise manipulated.
[28] Unless specifically stated otherwise, and as apparent from the following, it will be appreciated that throughout the present specification, discussions utilizing terms such as “monitoring”, “utilizing”, “retrieving”, “providing”, “generating”, “quantifying”, “calculating”, “outputting”, “optimising”, “rebuilding”, “storing”, ’’mapping”, “checking”, “identifying”, “collecting”, “searching”, “conducting”, “cross-checking”, “aggregating”, “determining”, “regenerating”, “updating”, “comparing”, “adjusting”, “compiling”, “performing”, “obtaining”, “predicting”, “loading”, “indicating” or the like, refer to the action and processes of a computer system, or similar electronic device, that manipulates and transforms data represented as physical quantities within the computer system into other data similarly represented as physical quantities within the computer system or other information storage, transmission or display devices.
[29] In addition, the present specification also implicitly discloses a computer program, in that it would be apparent to the person skilled in the art that the individual steps of the method described herein may be put into effect by computer code. The computer program is not intended to be limited to any particular programming language and implementation thereof. It will be appreciated that a variety of programming languages and coding thereof may be used to implement the teachings of the disclosure contained herein. Moreover, the computer program is not intended to be limited to any particular control flow. There are many other variants of the computer program, which can use different control flows without departing from the scope of the specification.
[30] Furthermore, one or more of the steps of the computer program may be performed in parallel rather than sequentially. Such a computer program may be stored on any computer readable medium. The computer readable medium may include storage devices such as magnetic or optical disks, memory chips, or other storage devices suitable for interfacing with a computer. The computer readable medium may also include a hardwired medium such as exemplified in the Internet system, or wireless medium such as exemplified in the GSM mobile telephone system. The computer program when loaded
and executed on such a computer effectively results in an apparatus that implements the steps of the preferred method.
[31] A transport or delivery booking service is one that enables a user to book a ride or delivery service. The service may be provided via an application installed in an electronic device (e.g. a mobile application installed on a mobile device), in which a user can search for and indicate a location at which the user wants to be picked up or sent to, or a location where the user wants an item to be picked up or delivered to. Such a transport or delivery booking service may also provide services that enable a user to order food or other goods from various merchants for delivery to the user, and may also be known as a transport, food and mart application, or referred to as a booking service or application in the present disclosure.
[32] A place of interest (POI) is a place or location that a user may indicate or search for in a transport or delivery booking service. The POI may be a place at which the user may be interested in going or delivering something. It may also be a location at which the user wants to be picked up by a driver or at which a delivery person is to retrieve an item for the user. There may be various drop-off points (e.g. places where a user may alight after a ride, or deliver an item) or pick-up points (e.g. places where a user may board a vehicle or receive an item that is to be delivered) associated with a POI which a user may be able to choose in a transport or delivery booking service.
[33] Booking applications tend to provide services across different verticals such as travel, food, mart, insurance and other similar verticals. At present, however, there is no application which supports cross-sell from different verticals that are personalized to the needs of a user in vicinity of a drop-off location or POI, for example by providing an offer or recommendation from food, mart or insurance verticals to a user who is utilizing a service from the travel vertical of the booking application.
[34] In the present disclosure, a location preview feature in a booking application (in which an image is provided for a location) is proposed which advantageously aids in promoting visual familiarity for a user on a real-time basis of drop-off and pick-up locations, by showcasing one or more visuals (e.g. images, videos and the like) of a POI and its
nearby locations as visual previews of the POI and its nearby locations. It is to be appreciated that the visual preview could be all or part of a visual (or an image). In addition, the opportunity can be provided to merchants located near the drop off location of a user to advertise their ongoing offers to the user on a real time basis. This advantageously enhances the user experience by providing the user with information of merchants and/or offers within the vicinity of the drop off location that may interest the user. This also extends cross sell opportunities from transport to food/mart related merchants near the drop-off POI.
[35] A user may be any suitable type of entity, which may include a person, a consumer looking to book a transport or delivery service, or purchase a good or service via a coordination server, a seller looking to sell a good or service via the coordination server, a motorcycle driver or pillion rider in a case of the user looking to book or provide a motorcycle ride via the coordination server, a car driver or passenger in a case of the user looking to book or provide a car ride via the coordination server, and other similar entity. A user who is registered to the coordination or preview server will be called a registered user. A user who is not registered to the coordination server or preview server will be called a non-registered user. Depending on the booking application, an unregistered user may or may not be able to enjoy certain services, such as for example the provision of recommendations or offers that are tailored based on user preferences during a travel or delivery booking, or may or may not be able to be a deliverer or driver of the concerned booking application, or other similar disadvantages. The term user will be used to collectively refer to both registered and non-registered users. A user may interchangeably be referred to as a requestor (e.g. a person who requests for a transport or delivery booking, or a good or service) or a provider (e.g. a person who provides the requested transport or delivery booking, or good or service to the requestor).
[36] A preview server may be a server that hosts software application programs for providing an image of a location. The preview server may be implemented as shown in Figs. 10 or 11 for determining and providing an image associated with a POI or a merchant, or for providing an offer to a user.
[37] The coordination server may be a server that hosts software application programs for processing payment transactions for, for example, purchasing of a good or service by
a user. The coordination server may also be configured for processing travel or delivery coordination requests between a requestor and a provider. The coordination server communicates with other servers (e.g., a preview server) concerning payment transactions or travel coordination requests. The coordination server may communicate with a preview server to facilitate providing an image of a location for a ride associated with the travel coordination request. The coordination server may use a variety of different protocols and procedures in order to process the payment and/or travel or delivery coordination requests.
[38] Transactions that may be performed via a coordination server include good or service purchases, credit purchases, debit transactions, fund transfers, account withdrawals, etc. Coordination servers may be configured to process transactions via cash-substitutes, which may include payment cards, letters of credit, checks, payment accounts, etc.
[39] The coordination server is usually managed by a service provider that may be an entity (e.g. a company or organization) which operates to process transaction requests and/or travel or delivery coordination requests e.g. pair a provider of a travel coordination request to a requestor of the travel coordination request. The travel coordination server may include one or more computing devices that are used for processing transaction requests and/or travel or delivery coordination requests.
[40] A transaction account may be an account of a user who is registered at a coordination server. The user can be a customer, a service (e.g. ride-hailing) provider (e.g., a driver), or any third parties (e.g., a courier) who want to use the coordination server. In certain circumstances, the transaction account is not required to use the preview server. A transaction account typically includes details (e.g., name, address, vehicle, face image, etc.) of a user. The coordination server may manage the transaction accounts of users and the interactions between users and other external servers.
[41] Fig. 1 illustrates a block diagram of a system 100 for providing an image of a location. Further, the system 100 may enable a payment transaction for a good or service, and/or a request for a ride between a requestor and a provider.
[42] In some embodiments, the system 100 comprises a requestor device 102, a provider device 104, an acquirer server 106, a coordination server 108, an issuer server 110, a preview server 140 and an image database 150.
[43] The requestor device 102 is in communication with a provider device 104 via a connection 112. The connection 112 may be an ad hoc connection (e.g., via NFC communication, Bluetooth, etc.) or over a network (e.g., the Internet). The requestor device 102 is also in communication with the preview server 140 via a connection 121 . The connection 121 may be a network connection (e.g., the Internet). The requestor device 102 may also be connected to a cloud that facilitates the system 100 for providing an image of a location. For example, the requestor device 102 can send a signal or data to the cloud directly via an ad hoc connection (e.g., via NFC communication, Bluetooth, etc.) or over a network (e.g., the Internet).
[44] The provider device 104 is in communication with the requestor device 102 as described above, usually via the coordination server 108. The provider device 104 is, in turn, in communication with an acquirer server 106 via a connection 114. The provider device 104 is also in communication with the preview server 140 via a connection 123. The connections 114 and 123 may be network connections (e.g., provided via the Internet). The provider device 104 may also be connected to a cloud that facilitates the system 100 for providing an image of a location. For example, the provider device 104 can send a signal or data to the cloud directly via an ad hoc connection (e.g., via NFC communication, Bluetooth, etc.) or over a network (e.g., the Internet).
[45] The acquirer server 106, in turn, is in communication with the coordination server 108 via a connection 116. The coordination server 108, in turn, is in communication with an issuer server 110 via a connection 118. The connections 116 and 118 may be over a network (e.g., the Internet).
[46] The coordination server 108 is further in communication with the preview server 140 via a connection 120. The connection 120 may be over a network (e.g., a local area network, a wide area network, the Internet, etc.). In one arrangement, the coordination server 108 and the preview server 140 are combined and the connection 120 may be an interconnected bus.
[47] The preview server 140, in turn, is in communication with the reference image database 150 via respective connection 122. The connection 122 may be a network connection (e.g., provided via the Internet). The preview server 140 may also be connected to a cloud that facilitates the system 100 for providing an image of a location. For example, the preview server 140 can send a signal or data to the cloud directly via a wireless ad hoc connection (e.g., via NFC communication, Bluetooth, etc.) or over a network (e.g., the Internet).
[48] The image database 150 stores image data comprising images of POIs located across the various regions of the world, for example, across South-East-Asia (SEA). Each image may be geo-tagged with a geographical coordinate (e.g. latitudinal and longitudinal coordinates) and map-matched to road-segments to facilitate shortlisting the images of a POI using location coordinates. The image database may be a component of the preview server 140. In an example, the image database 150 may be a database managed by an external entity and the preview server 140 is a server that, based on location information included in a request received from a user device (such as the requestor device 102 or the provider device 104), obtains an image (e.g. from the image database 150) corresponding to a drop-off point for a location based on the location information. A drop-off point of a location refers to a place at the location where a user may alight after a ride or deliver an item. The image database 150 may further comprise images collected for restaurants, stores, outlets and other similar venues for merchants that may be geo-tagged with latitudinal and longitudinal coordinates and map-matched to road-segments to facilitate shortlisting the images of a POI using location coordinates. The preview server 140 may also determine an image corresponding to a merchant, the image being one that is based on historical data identifying the merchant. The image may be shown to the requestor or provider via displaying the image on the requestor device 102 or provider device 104 respectively, for providing a visual of the concerned POI or merchant associated with a request that is processed by the coordination server 108. Alternatively, a module such as an image module may store the images instead of the image database 150, wherein the image module may be integrated as part of the preview server 140, or may be external to the preview server 140.
[49] In the illustrative embodiment, each of the devices 102, 104, and the servers 106, 108, 110, 140, and 150 provides an interface to enable communication with other connected devices 102, 104, 142 and/or servers 106, 108, 110, 140, and 150. Such communication is facilitated by an application programming interface (“API”). Such APIs may be part of a user interface that may include graphical user interfaces (GUIs), Web-based interfaces, programmatic interfaces such as application programming interfaces (APIs) and/or sets of remote procedure calls (RPCs) corresponding to interface elements, messaging interfaces in which the interface elements correspond to messages of a communication protocol, and/or suitable combinations thereof. For example, it is possible for at least one of the requestor device 102 and the provider device 104 to receive an image depicting a POI, drop-off point, a merchant, or other similar locations in response to an enquiry shown on the GUI running on the respective API.
[50] Use of the term ‘server’ herein can mean a single computing device or a plurality of interconnected computing devices which operate together to perform a particular function. That is, the server may be contained within a single hardware unit or be distributed among several or many different hardware units.
[51] The preview server 140 is associated with an entity (e.g. a company or organization or moderator of the service). In one arrangement, the preview server 140 is owned and operated by the entity operating the coordination server 108. In such an arrangement, the preview server 140 may be implemented as a part (e.g., a computer program module, a computing device, etc.) of the coordination server 108.
[52] The coordination server 108 may also be configured to manage the registration of users. A registered user has a transaction account (see the discussion above) which includes details of the user. The registration step is called on-boarding. A user may use either the requestor device 102 or the provider device 104 to perform on-boarding to the coordination server 108.
[53] It may not be necessary to have a transaction account at the coordination server 108 to access the functionalities of the coordination server 108. However, there are functions that are available to a registered user. These additional functions will be discussed below.
[54] The on-boarding process for a user is performed by the user through one of the requestor device 102 or the provider device 104. In one arrangement, the user downloads an app (which includes, or otherwise provides access to, the API to interact with the coordination server 108) to the requestor device 102 or the provider device 104. In another arrangement, the user accesses a website (which includes, or otherwise provides access to, the API to interact with the coordination server 108) on the requestor device 102 or the provider device 104. The user is then able to interact with the preview server 140. The user may be a requestor or a provider associated with the requestor device 102 or the provider device 104, respectively.
[55] Details of the registration include, for example, name of the user, address of the user, emergency contact, blood type or other healthcare information, next-of-kin contact, permissions to retrieve data and information from the requestor device 102 and/or the provider device 104 for preview purposes, such as permission to use a camera of the requestor device 102 and/or the provider device 104 to take a picture of a POI, drop-off point, merchant or other similar locations, wherein the picture may be used by the preview server 140 as an image for preview purposes. Alternatively, another mobile device may be selected instead of the requestor device 102 and/or the provider device 104 for retrieving the image. Once on-boarded, the user would have a transaction account that stores all the details.
[56] The requestor device 102 is associated with a customer (or requestor) who is a party to, for example, a travel request that occurs between the requestor device 102 and the provider device 104. The requestor device 102 may be a computing device such as a desktop computer, an interactive voice response (IVR) system, a smartphone, a laptop computer, a personal digital assistant computer (PDA), a mobile computer, a tablet computer, and the like.
[57] The requestor device 102 includes transaction credentials (e.g., a payment account) of a requestor to enable the requestor device 102 to be a party to a payment transaction. If the requestor has a transaction account, the transaction account may also be included (i.e., stored) in the requestor device 102. For example, a mobile device (which is
a requestor device 102) may have the transaction account of the customer stored in the mobile device.
[58] In one example arrangement, the requestor device 102 is a computing device in the form of a watch or similar wearable and is fitted with a wireless communications interface (e.g., a NFC interface). The requestor device 102 can then electronically communicate with the provider device 104 regarding a transaction or travel request. The customer uses the watch or similar wearable to make a request regarding the transaction or travel request by pressing a button on the watch or wearable.
[59] The provider device 104 is associated with a provider who is also a party to the transaction request that occurs between the requestor device 102 and the provider device 104. The provider device 104 may be a computing device such as a desktop computer, an interactive voice response (IVR) system, a smartphone, a laptop computer, a personal digital assistant computer (PDA), a mobile computer, a tablet computer, and the like.
[60] Hereinafter, the term "provider” refers to a service provider and any third party associated with providing a good or service for purchase, or a travel or ride or delivery service via the provider device 104. Therefore, the transaction account of a provider refers to both the transaction account of a provider and the transaction account of a third party (e.g., a travel coordinator or merchant) associated with the provider.
[61] If the provider has a transaction account, details of the transaction account may also be included (i.e., stored) in the provider device 104. For example, a mobile device (which is a provider device 104) may have transaction account details (e.g., account number) of the provider stored in the mobile device.
[62] In one example arrangement, the provider device 104 is a computing device in the form of a watch or similar wearable and is fitted with a wireless communications interface (e.g., a NFC interface). The provider device 104 can then electronically communicate with the requestor to make a request regarding the transaction or travel request by pressing a button on the watch or wearable.
[63] The acquirer server 106 is associated with an acquirer who may be an entity (e.g. a company or organization) which issues (e.g. establishes, manages, administers) a payment account (e.g. a financial bank account) of a merchant. An example of an acquirer is a bank or other financial institution. As discussed above, the acquirer server 106 may include one or more computing devices that are used to establish communication with another server (e.g., the coordination server 108) by exchanging messages with and/or passing information to the other server. The acquirer server 106 forwards the payment transaction relating to a transaction or transport request to the coordination server 108.
[64] The coordination server 108 is configured to carry out processes relating to a transaction account by, for example, forwarding data and information associated with the transaction to the other servers in the system 100, such as the preview server 140. In an example, the coordination server 108 may provide data and information associated with a request including location information that may be used for the preview process of preview server 140. An image may be determined based on an outcome of the preview process e.g. an image corresponding to a drop-off point for a location based on the location information, the image being one that is based on historical data identifying the drop-off point.
[65] The issuer server 110 is associated with an issuer and may include one or more computing devices that are used to perform a payment transaction. The issuer may be an entity (e.g. a company or organization) which issues (e.g. establishes, manages, administers) a transaction credential or a payment account (e.g. a financial bank account) associated with the owner of the requestor device 102. As discussed above, the issuer server 110 may include one or more computing devices that are used to establish communication with another server (e.g., the coordination server 108) by exchanging messages with and/or passing information to the other server.
[66] The image database 150 is a database or server associated with an entity (e.g. a company or organization) which manages (e.g. establishes, administers) data relating to a plurality of users that are registered with a transaction account with the coordination server 108. In one arrangement, the data comprises a plurality of images wherein each image is associated with a geographical coordinate and map-matched to road-segments to facilitate shortlisting the images near/of a POI or merchant. The images are used by the
preview server 140 for providing an image associated with a POI or merchant to the requestor device 102 or the provider device 104.
[67] In the present disclosure, various tools may be utilized. For example, besides the image database 150 for providing the images of POIs and merchants, a personalized recommender system may provide personalized (e.g. Al-powered) recommendations based on the user behaviour, of the trending and popular cuisines at the location of choice. The recommender system may involve user profiling for personalized recommendations in real time. Further, advertising platforms may also be used to offer merchants in bidding (e.g. merchants that are paying an amount of money to an entity managing the preview server 140 and/or coordination server 108 to promote their stores) to showcase their restau- rants/stores along with their respective offers. Additional metrics, like expected drop offs happening in next few hours at nearby POIs may help merchants to optimize their ads for each specific time window across the day.
[68] A benefit of embodiments of the present technology is to reduce uncertainty to passengers and drivers during a transport service, and to simultaneously leverage personalized cross sell opportunities across services that are also typically available on transport, food and mart applications. In a first stage, displaying a destination preview (e.g. an image depicting a view of a selected destination) as part of search results helps a passenger to make the right choice of POI among candidate POIs at the destination that have similar names. This is particularly helpful where the POI of choice may not be visited quite as often as others. Post the destination selection, within the first stage, the next part may include display of a thumbnail of the passenger’s selected dropoff POI with multiple visuals to acquaint the passenger and/or driver about the POI to be visited. Upon clicking or touching the thumbnail, an API may use location information such as a POI identifier (POI ID) and fetches the images of the POI and its nearby location, using POI profiling (see, for example, Fig. 8), and further displays the shortlisted images on the transport booking application.
[69] In a second stage (e.g. during transit from a pick-up point to the drop-off POI), intransit display of images of, and offers provided by, various merchants may utilize an advertising platform, and may be further augmented with a recommender system to person-
alize the recommendations being shown to the passengers and driver partners. This service may be called once the passenger or driver opts for the service during transit. When drop-offs are expected to be happening near the highest bidding merchants (e.g. merchants that are paying comparatively more over other merchants to an entity managing the preview server 140 and/or coordination server 108 to promote their stores), a heatmap visualization may be created for each high bidding merchant to draw the passenger or driver’s attention. The heatmap visualization may also be adjusted (for example, by using a brighter colour or shade of colour, or increasing the circumference of the heatmap surrounding the merchant, or other similar techniques) based on the number of expected drop-offs near a merchant to inform the passenger and driver of low or high traffic around the vicinity of the merchant.
[70] Stage one helps in providing information related to the drop-off/pick-up location during search and once the desired option is selected, thus helping a user to manage uncertainty and anxiety by providing visual previews of the POIs in form of images, GIFs, videos or other similar forms of media, and eventually leading to a better overall customer experience and trip. It is to be appreciated that the visual preview could be all or part of the POIs in form of images, GIFs, videos or other similar forms of media.The second stage advantageously provides additional, highly recommended, and personalized information, for example as a result of activating an opt-in only Trending button (for example, see icon 344 of Fig. 3B), that enables a user to make further decisions/purchases once the trip is completed. Being an opt-in functionality during each transit, this alleviates the uncertainty of the user arising from an abundance of information, thereby enhancing user experience when using the transport booking application.
[72] Fig. 2 depicts example illustrations of how an image may be provided during a POI search, according to various embodiments. Illustration 300 depicts a menu in a transport booking application where a user can input text to search for a desired drop-off location or POI. The user device on which the application is installed may be, for example, the requestor device 102. This menu may be activated in response to a request from the user to the coordination server 108 to make a transport booking. The user inputs text (e.g. “moun” at search bar 306) and various search results or POIs corresponding to the input text may be displayed. Based on each search result or POI, one or more drop-off points may be available and also shown to the user for selection. Based on the user’s selection, the preview server 140 may provide an image related to the POI. For example, the user may wish to have a preview of how the main lobby of Mount Alvernia Hospital looks like, and therefore presses preview icon 308. The preview server 140 receives the request including location information (e.g. information identifying the drop-off point main lobby of Mount Alvernia Hospital) and determines, based on the location information, an image 304 corresponding to the drop-off point (e.g. main lobby of Mount Alvernia Hospital), the image being one that is based on historical data identifying the drop-off point. The image 304
(e.g. depicting a view of the main lobby of Mount Alvernia Hospital) is then loaded and displayed via the application to the user as a preview of the location. The user may also be able to select the displayed drop-off point as the desired destination by pressing a confirmation bar 312. The location information may comprise a POI ID associated with the drop-off point or POI, or a geographical coordinate (e.g. latitudinal and longitudinal coordinates) corresponding to the drop-off point or POI, that may be used to identify the dropoff point or POI. The image may be geo-tagged with a geographical coordinate and/or associated with a POI ID to facilitate the preview server 140 in determining the correct image based on user’s selection. Determining the image may thus comprise determining that the geographical coordinate or associated POI ID is same as that of the drop-off point. On the other hand, the user may instead click on another preview icon 310 to have a preview of a different location, and another image 302 may be loaded and displayed on the user device to the user. The user may also be able to select the displayed drop-off point as the desired destination by pressing a confirmation bar 314.
[73] Fig. 3A depicts example illustrations of how an image may be provided for a dropoff location, according to various embodiments. Illustration 316 depicts a menu in the transport booking application where the user has selected a desired drop-off location (e.g. by clicking or touching confirmation bar 312 or 314), wherein a travel route is shown from a pick-up point 322 to a drop-off point 324 on a topographic map 326. The drop-off point 324 may be accompanied by a thumbnail image 328 depicting a mini view of the drop-off point. The user wishing to have a preview of how the drop-off point 324 looks like or to confirm that the drop-off point 324 is correct may request for images of the drop-off point 324 by clicking or touching the thumbnail image 328. The preview server 140 receives the request including location information (e.g. information identifying the drop-off point 324) and obtains, based on the location information, image data corresponding to the drop-off point 324. Obtaining the image data may further comprise identifying the drop-off point 324 based on the location information. The image data may be associated with a geographical coordinate, and obtaining the image data may further comprise determining that the geographical coordinate is same as that of the drop-off point 324.
[74] The image data (e.g. depicting a view 318 of the drop-off point 324) is then loaded and displayed via the application to the user as a visual preview of the location. The visual preview may be all or part of the image data, or may be generated from the image data.
Further, by clicking, touching or performing a swiping action on the view 318, further images depicting other views of the drop-off point 324 may be displayed, such as image 320, or a video or animation of the drop-off point (not shown). Once the user is satisfied that the drop-off point 324 is correct, the user may confirm the transport booking by clicking on or touching confirmation bar 330.
[75] Fig. 3B depicts example illustrations of how an image or offer may be provided for a merchant located near a drop-off location, according to various embodiments. Illustration 332 depicts a menu in the transport booking application where the user has confirmed a transport booking (e.g. by clicking or touching confirmation bar 330), wherein the user is shown travelling in real-time along a travel route 340 to a drop-off point 338 on a topographic map 342. The user may click or press a trending icon 344 to request displaying merchants that are located within the vicinity of the drop-off point 338. The preview server 140 receives the request including location information (e.g. information identifying the drop-off point 338), identifies one or more merchants located near the drop-off point 338 based on a user preference associated with the request, and indicates, on the user device, location of the merchants relative to the drop-off point 338. In this case, the preview server 140 may identify that merchants 346 and 348 are within the vicinity of the drop-off point 338. These merchants may then be displayed on the topographic map 342 relative to the drop-off point 338. These merchants may be identified by the preview server 140 based on proximity to the drop-off point, the user preference associated with the request (e.g. preferences that are related to a user profile of the user), based on a highest bidder arrangement (e.g. merchants that are paying more to an entity managing the preview server 140 and/or coordination server 108 to promote their stores), and/or other similar types of conditions. Further, each merchant (or specific merchants that are paying more to get their stores promoted) may be displayed on the topographic map with a heatmap 350 (see Fig. 3C). The intensity of the heatmap may be adjusted based on the location of the merchant relative to the drop-off point, or based on a highest bidder arrangement (e.g. merchants may pay more to have a bigger or brighter heatmap indicating their location on the topographic map), or other similar factors.
[76] The user wishing to find out more about the merchant 348 may, for example, send a request via clicking on or touching the thumbnail of the merchant 348 to display related images and offers. The preview server 140 receives the request and obtains image data (e.g. depicting a view 334 of the merchant 348) corresponding to the merchant 348 based
on location information of the merchant 348. The view 334 may then be displayed on the user device via the transport booking application. The user may further request for related offers of the merchant by, for example, clicking on or touching the view 334. The preview server 140 may determine an offer (e.g. for a good, service or other similar items) provided by the merchant 344 based on the user preference associated with the request, and these offers are then displayed in a menu 336 on the transport booking application. These offers may be tailored to the user based on the user preference associated with the request (e.g. preferences that are related to a user profile of the user), and may also be based on an expected arrival time of the user at the drop-off point. For example, the preview server 140 may be configured to determine an expected arrival time at the drop-off point 338 based on an estimated time for travelling from the pickup point to the drop-off point 338, and determine the offer based on the expected arrival time. This advantageously provides realtime offer recommendations to the user. The user may then be able to browse through the provided catalog of offers and make a purchase by clicking on or touching a desired offer, and may even indicate that the user will pick up the purchased item upon arrival at the drop-off point 338.
[77] During or after the transport booking process, the preview server 140 may also be configured to request the user to provide images relating to a POI, for example when no image relating to the POI is available. The preview server 140 may receive an image relating to the POI, and store the received image as an image associated with the geographical coordinate and/or POI ID of the POI. While images are provided in the above examples, it will be appreciated that other forms of media such as videos may also be provided to users, for example a video showcasing the POI or showing how to arrive at the POI from a certain location.
[78] Fig. 4 depicts an example illustration 400 of how profiling may be implemented for providing an image of a location, according to various embodiments. POI profiling may be utilized to build customized profiles 402 of all POIs recorded as historical data in, for example, an internal database 406 of an entity managing the preview server 140, and these customized POI profiles 402 can be queried to fetch POI related images in real-time. POI profiling may leverage an underlying imagery dataset 404 (such as KartaView, available from kartaview.org) to collect related images for each POI. Every image is tagged with location information such as a geographical coordinate (e.g. comprising latitudinal and longitudinal coordinates), and the POI selected on an associated travel or delivery booking
application of the requestor device 102 or provider device 104 is described by its corresponding geographical coordinate. Based on the tagged images, POI profiling queries the top-k images that are map-matched (e.g. matched to the road network surrounding the selected POI based on the location information tagged to the top-k images) closest to the selected POI and adds these images to the profiles of individual POIs.
[79] POI profiling can be further extended to merchants and users. For example, Merchant profiling may be utilized by leveraging on imagery dataset 404 or another image database that stores images relating to the merchants, and may also be utilized to consolidate information relating to offers and/or goods of the merchant. The created merchant profiles may be queried not only for retrieving images relating to the merchant but also offers and/or goods of the merchant. User profiling may be utilized for consolidating information of each user of the associated travel or delivery booking application. For example, user preferences, behaviour and patterns relating to purchasing, travel, or other similar activities of a user may be compiled in a user profile which can be queried to provide personalized recommendations of merchant offers to the user.
[80] In an implementation, a final collection of POI and merchant profiles may be stored as image metadata in a datastore, for example such as AWS S3 Datastore in the following format:
- s3:// <s3-bucket> // <s3-basepath> // transport // POI-ID // <top k images>
- s3:// <s3-bucket> // <s3-basepath> // food // MEX-ID // <top k images> (extensible to food/mart services)
[81] Fig. 5 depicts an example illustration 500 of how an online service infrastructure may be implemented for providing an image of a location, according to various embodiments. The online serving implementation for providing an image of a POI e.g. as a preview of the POI, which uses the POI and Merchant profiling, may be as follows. In Step 1 502, a user inputs text for a drop-off location in an associated travel or delivery booking application of the requestor device 102 or provider device 104 (e.g. typing text in search bar 306 of Fig. 2). Corresponding POI IDs with names matching the input text are fetched from a POI-Backend service 504 and presented to the user as possible drop-off locations (e.g. POIs) via the application for selection by the user. In a step 2 506, information such
as an ID of the user, a selected POI (e.g. after clicking on or touching icon 308 or 310 of Fig. 2, thumbnail 328 of Fig. 3A, or thumbnail 346 or 348 of Fig. 3B) and associated POI ID are passed as input to a backend API 508 (for example, such as Backend API).
[82] In a step 3 510, an orchestrator API 512 within the backend API 508 queries a Micro FileService 514 to fetch preview images (e.g. images relating to the selected POI) and personalized recommendations (e.g. based on merchant and user preferences) in the following order: in a step 3.1 516, the Micro FileService 514 fetches a POI profile (e.g. including images relating to the POI) based on, for example, the POI ID, from an object storage service 518 such as, for example, Amazon AWS S3. The Micro FileService 514 may also fetch a merchant profile (e.g. including images relating to the merchant, and images relating to goods or services provided by the merchant) which is located within the vicinity of the selected POI. In a step 3.2 520, the Micro FileService 514 may also query a Personalized Recommendation service 522 to provide an Al powered recommendation to the user based on the trending and personalized cuisines, tailored according to the user’s preferences (e.g. based on a user profile associated with the ID of the user). In a step 4 524, the orchestrator API 512 compiles all metadata that is queried from the Micro Fileservice 514 and transmits the compiled information in a format that is compatible with the requestor device 102 or provider device 104.
[83] In the example illustration 500, the orchestrator API 512 and the Micro-FileService 514 may be written in a programming language such as Golang, and may be deployed in Azure. AWS S3 may be used to store the POI and Merchant profiles. It will be appreciated that other APIs, programming languages, and object store services may be utilized in place of the above-mentioned examples.
[84] As sending large-size images and implementing identification of Personal Identifiable Information (P 11) over a mobile data network could be a possible bottleneck to implement, further improvements may be made. For example, preview images (except for the thumbnail to accompany each POI/merchant displayed on the application, since it is typically smaller in data and consumes less memory) may be lazy-loaded, and a load query issued only when the thumbnail icon is clicked. Further, since POI metadata do not change very often, it is possible to implement caching with a relatively long time-to-live (TTL) so that it will not be necessary to fetch/request new images every single time a selection is
made by a user. Furthermore, images (e.g. in KartaView) may be Pll masked and further processed such that face and number plate information in images are masked, and images may be compressed to reduce file size. While images are provided in the above examples, it will be appreciated that other forms of media such as videos may also be provided to users, for example a video showcasing the POI or showing how to arrive at the POI from a certain location.
[85] Fig. 6 illustrates an example flow diagram of how an image of a location may be provided according to various embodiments. In a step 602, a request including location information of a selected location is received from a user device. In a step 604, image data corresponding to a drop-off point for the selected location is obtained based on the location information. In a step 606, a visual preview based on the image data is caused to be displayed on the user device. In an implementation, obtaining the image data may further comprise identifying the drop-off point based on the location information. In an implementation, the image data may be associated with a geographical coordinate, and obtaining the image data may further comprise determining that the geographical coordinate is same as that of the drop-off point. In an implementation, additional image data corresponding to the drop-off point may be received from the user device, and the received image data may be stored as image data associated with the geographical coordinate. In an implementation wherein the visual preview may depict a view of the drop-off point, a location of the drop-off point relative to the location may be indicated on the user device, and the visual preview may be loaded on the user device as a view of the drop-off point. The visual preview may be all or part of the image data, or may be generated from the image data.
[86] Fig. 7 illustrates an example flow diagram of how cross vertical personalized recommendations during transit may be implemented according to various embodiments. In a step 702, a merchant located near the drop-off point may be identified based on a user preference associated with a request, the request including location information of a selected location; and a location of the merchant relative to the drop-off point may be indicated on the user device. In a step 704, image data corresponding to the merchant may be obtained based on location information of the merchant. In a step 706, an offer provided by the merchant may be determined based on the user preference associated with the request. In a step 708, wherein the location information of the selected location further includes a pickup location, an expected arrival time at the drop-off point may be determined based on an estimated time for travelling from the pickup location to the drop-off
point. In a step 710, the offer (e.g. of step 706) may be determined based on the expected arrival time.
[87] Figs. 8A and 8B form a schematic block diagram of a general purpose computer system suitable for implementation of the coordination server of Fig. 1 .
[88] As seen in Fig. 8A, the computer system 1300 includes a computer module 1301. An external Modulator-Demodulator (Modem) transceiver device 1316 may be used by the computer module 1301 for communicating to and from a communications network 1320 via a connection 1321. The communications network 1320 may be a wide-area network (WAN), such as the Internet, a cellular telecommunications network, or a private WAN. Where the connection 1321 is a telephone line, the modem 1316 may be a traditional “dial-up” modem. Alternatively, where the connection 1321 is a high capacity (e.g., cable) connection, the modem 1316 may be a broadband modem. A wireless modem may also be used for wireless connection to the communications network 1320.
[89] The computer module 1301 typically includes at least one processor unit 1305, and a memory unit 1306. For example, the memory unit 1306 may have semiconductor random access memory (RAM) and semiconductor read only memory (ROM). The computer module 1301 also includes an interface 1308 for the external modem 1316. In some implementations, the modem 1316 may be incorporated within the computer module 1301 , for example within the interface 1308. The computer module 1301 also has a local network interface 1311 , which permits coupling of the computer system 1300 via a connection 1323 to a local-area communications network 1322, known as a Local Area Network (LAN). As illustrated in Fig. 8A, the local communications network 1322 may also couple to the wide network 1320 via a connection 1324, which would typically include a so-called “firewall” device or device of similar functionality. The local network interface 1311 may comprise an Ethernet circuit card, a Bluetooth® wireless arrangement or an IEEE 802.1 1 wireless arrangement; however, numerous other types of interfaces may be practiced for the interface 1311.
[90] The I/O interfaces 1308 may afford either or both of serial and parallel connectivity, the former typically being implemented according to the Universal Serial Bus (USB) standards and having corresponding USB connectors (not illustrated). Storage devices 1309
are provided and typically include a hard disk drive (HDD) 1310. Other storage devices such as a floppy disk drive and a magnetic tape drive (not illustrated) may also be used. An optical disk drive 1312 is typically provided to act as a non-volatile source of data. Portable memory devices, such optical disks, USB-RAM, portable, external hard drives, and floppy disks, for example, may be used as appropriate sources of data to the system 1300.
[91] The components 1305 to 1312 of the computer module 1301 typically communicate via an interconnected bus 1304 and in a manner that results in a conventional mode of operation of the computer system 1300 known to those in the relevant art. For example, the processor 1305 is coupled to the system bus 1304 using a connection 1318. Likewise, the memory 1306 and optical disk drive 1312 are coupled to the system bus 1304 by connections 1319. Examples of computers on which the described arrangements can be practised include IBM-PC’s and compatibles, Sun Sparcstations, Apple or like computer systems.
[92] The steps of the methods 600 and 700 in Figs. 6 and 7 facilitated by the coordination server 108 may be implemented using the computer system 1300. For example, the steps of the methods 600 and 700 may be implemented as one or more software application programs 1333 executable within the computer system 1300. In particular, the steps of the method 600 as facilitated by the coordination server 108 are effected by instructions 1331 (see Fig. 6B) in the software 1333 that are carried out within the computer system 1300. The software instructions 1331 may be formed as one or more code modules, each for performing one or more particular tasks. The software may also be divided into two separate parts, in which a first part and the corresponding code modules facilitates the steps of the methods 600 and 700 and a second part and the corresponding code modules manage a user interface between the first part and the user.
[93] The software may be stored in a computer readable medium, including the storage devices described below, for example. The software is loaded into the computer system 1300 from the computer readable medium, and then executed by the computer system 1300. A computer readable medium having such software or computer program recorded on the computer readable medium is a computer program product. The use of the
computer program product in the computer system 1300 preferably effects an advantageous apparatus for a coordination server 108.
[94] The software 1333 is typically stored in the HDD 1310 or the memory 1306. The software is loaded into the computer system 1300 from a computer readable medium, and executed by the computer system 1300. Thus, for example, the software 1333 may be stored on an optically readable disk storage medium (e.g., CD-ROM) 1325 that is read by the optical disk drive 1312. A computer readable medium having such software or computer program recorded on it is a computer program product. The use of the computer program product in the computer system 1300 preferably effects an apparatus for a coordination server 108.
[95] In some instances, the application programs 1333 may be supplied to the user encoded on one or more CD-ROMs 1325 and read via the corresponding drive 1312, or alternatively may be read by the user from the networks 1320 or 1322. Still further, the software can also be loaded into the computer system 1300 from other computer readable media. Computer readable storage media refers to any non-transitory tangible storage medium that provides recorded instructions and/or data to the computer system 1300 for execution and/or processing. Examples of such storage media include floppy disks, magnetic tape, optical disk, a hard disk drive, a ROM or integrated circuit, USB memory, a magneto-optical disk, or a computer readable card such as a PCMCIA card and the like, whether or not such devices are internal or external of the computer module 1301 . Examples of transitory or non-tangible computer readable transmission media that may also participate in the provision of software, application programs, instructions and/or data to the computer module 1301 include radio or infra-red transmission channels as well as a network connection to another computer or networked device, and the Internet or Intranets including e-mail transmissions and information recorded on Websites and the like.
[96] The second part of the application programs 1333 and the corresponding code modules mentioned above may be executed to implement one or more graphical user interfaces (GUIs) to be rendered or otherwise represented upon a display. Through manipulation of typically a keyboard and a mouse, a user of the computer system 1300 and the application may manipulate the interface in a functionally adaptable manner to provide controlling commands and/or input to the applications associated with the GUI(s). Other
forms of functionally adaptable user interfaces may also be implemented, such as an audio interface utilizing speech prompts output via loudspeakers and user voice commands input via a microphone.
[97] Fig. 8B is a detailed schematic block diagram of the processor 1305 and a “memory” 1334. The memory 1334 represents a logical aggregation of all the memory modules (including the HDD 1309 and semiconductor memory 1306) that can be accessed by the computer module 1301 in Fig. 8A.
[98] When the computer module 1301 is initially powered up, a power-on self-test (POST) program 1350 executes. The POST program 1350 is typically stored in a ROM 1349 of the semiconductor memory 1306 of Fig. 8A. A hardware device such as the ROM 1349 storing software is sometimes referred to as firmware. The POST program 1350 examines hardware within the computer module 1301 to ensure proper functioning and typically checks the processor 1305, the memory 1334 (1309, 1306), and a basic input-output systems software (BIOS) module 1351 , also typically stored in the ROM 1349, for correct operation. Once the POST program 1350 has run successfully, the BIOS 1351 activates the hard disk drive 1310 of Fig. 8A. Activation of the hard disk drive 1310 causes a bootstrap loader program 1352 that is resident on the hard disk drive 1310 to execute via the processor 1305. This loads an operating system 1353 into the RAM memory 1306, upon which the operating system 1353 commences operation. The operating system 1353 is a system level application, executable by the processor 1305, to fulfil various high level functions, including processor management, memory management, device management, storage management, software application interface, and generic user interface.
[99] The operating system 1353 manages the memory 1334 (1309, 1306) to ensure that each process or application running on the computer module 1301 has sufficient memory in which to execute without colliding with memory allocated to another process. Furthermore, the different types of memory available in the system 1300 of Fig. 8A must be used properly so that each process can run effectively. Accordingly, the aggregated memory 1334 is not intended to illustrate how particular segments of memory are allocated (unless otherwise stated), but rather to provide a general view of the memory accessible by the computer system 1300 and how such is used.
[100] As shown in Fig. 8B, the processor 1305 includes a number of functional modules including a control unit 1339, an arithmetic logic unit (ALU) 1340, and a local or internal memory 1348, sometimes called a cache memory. The cache memory 1348 typically includes a number of storage registers 1344 - 1346 in a register section. One or more internal busses 1341 functionally interconnect these functional modules. The processor 1305 typically also has one or more interfaces 1342 for communicating with external devices via the system bus 1304, using a connection 1318. The memory 1334 is coupled to the bus 1304 using a connection 1319.
[101] The application program 1333 includes a sequence of instructions 1331 that may include conditional branch and loop instructions. The program 1333 may also include data 1332 which is used in execution of the program 1333. The instructions 1331 and the data 1332 are stored in memory locations 1328, 1329, 1330 and 1335, 1336, 1337, respectively. Depending upon the relative size of the instructions 1331 and the memory locations 1328-1330, a particular instruction may be stored in a single memory location as depicted by the instruction shown in the memory location 1330. Alternately, an instruction may be segmented into a number of parts each of which is stored in a separate memory location, as depicted by the instruction segments shown in the memory locations 1328 and 1329.
[102] In general, the processor 1305 is given a set of instructions which are executed therein. The processor 1305 waits for a subsequent input, to which the processor 1305 reacts to by executing another set of instructions. Each input may be provided from one or more of a number of sources, including data generated by one or more of the input devices 1302, 1303, data received from an external source across one of the networks 1320, 1302, data retrieved from one of the storage devices 1306, 1309 or data retrieved from a storage medium 1325 inserted into the corresponding reader 1312, all depicted in Fig. 8A. The execution of a set of the instructions may in some cases result in output of data. Execution may also involve storing data or variables to the memory 1334.
[103] The disclosed coordination server 108 arrangements use input variables 1354, which are stored in the memory 1334 in corresponding memory loca-
tions 1355, 1356, 1357. The coordination server 108 arrangements produce output variables 1361 , which are stored in the memory 1334 in corresponding memory locations 1362, 1363, 1364. Intermediate variables 1358 may be stored in memory locations 1359, 1360, 1366 and 1367.
[104] Referring to the processor 1305 of Fig. 8B, the registers 1344, 1345, 1346, the arithmetic logic unit (ALU) 1340, and the control unit 1339 work together to perform sequences of micro-operations needed to perform “fetch, decode, and execute” cycles for every instruction in the instruction set making up the program 1333. Each fetch, decode, and execute cycle comprises: a fetch operation, which fetches or reads an instruction 1331 from a memory location 1328, 1329, 1330; a decode operation in which the control unit 1339 determines which instruction has been fetched; and an execute operation in which the control unit 1339 and/or the ALU 1340 execute the instruction.
[105] Thereafter, a further fetch, decode, and execute cycle for the next instruction may be executed. Similarly, a store cycle may be performed by which the control unit 1339 stores or writes a value to a memory location 1332.
[106] Each step or sub-process in the processes as performed by the coordination server 108, is associated with one or more segments of the program 1333 and is performed by the register section 1344, 1345, 1347, the ALU 1340, and the control unit 1339 in the processor 1305 working together to perform the fetch, decode, and execute cycles for every instruction in the instruction set for the noted segments of the program 1333.
[107] It is to be understood that the structural context of the computer system 1300 (i.e., the coordination server 108) is presented merely by way of example. Therefore, in some arrangements, one or more features of the server 1300 may be omitted. Also, in some
arrangements, one or more features of the server 1300 may be combined together. Additionally, in some arrangements, one or more features of the server 1300 may be split into one or more component parts.
[108] Fig. 9 shows an alternative implementation of the coordination server 108 (i.e., the computer system 1300). In the alternative implementation, the coordination server 108 may be generally described as a physical device comprising at least one processor 802 and at least one memory 804 including computer program codes. The at least one memory 804 and the computer program codes are configured to, with the at least one processor 802, cause the coordination server 108 to facilitate the operations described in the methods 600 and 700. The coordination server 108 may also include a coordination module 806. The memory 804 stores computer program code that the processor 802 compiles to have each of the modules 806 and 808 performs their respective functions.
[109] With reference to Figs. 1 to 7, the coordination module 806 performs the function of communicating with the requestor device 102 and the provider device 104; and the acquirer server 106 and the issuer server 110 to respectively receive and transmit a transaction, travel or delivery request message. Further, the coordination module 806 may provide data and information associated with POIs and users that are used for the preview process of preview server 140.
[110] Fig. 8C depict a general-purpose computer system 1400, upon which the preview server 140 described can be practiced. The computer system 1400 includes a computer module 1401. An external Modulator-Demodulator (Modem) transceiver device 1416 may be used by the computer module 1401 for communicating to and from a communications network 1420 via a connection 1421. The communications network 1420 may be a wide- area network (WAN), such as the Internet, a cellular telecommunications network, or a private WAN. Where the connection 1421 is a telephone line, the modem 1416 may be a traditional “dial-up” modem. Alternatively, where the connection 1421 is a high capacity (e.g., cable) connection, the modem 1416 may be a broadband modem. A wireless modem may also be used for wireless connection to the communications network 1420.
[111] The computer module 1401 typically includes at least one processor unit 1405, and a memory unit 1406. For example, the memory unit 1406 may have semiconductor
random access memory (RAM) and semiconductor read only memory (ROM). The computer module 1401 also includes an interface 1408 for the external modem 1416. In some implementations, the modem 1416 may be incorporated within the computer module 1401 , for example within the interface 1408. The computer module 1401 also has a local network interface 1411 , which permits coupling of the computer system 1400 via a connection 1423 to a local-area communications network 1422, known as a Local Area Network (LAN). As illustrated in Fig. 8C, the local communications network 1422 may also couple to the wide network 1420 via a connection 1424, which would typically include a so-called “firewall” device or device of similar functionality. The local network interface 1411 may comprise an Ethernet circuit card, a Bluetooth® wireless arrangement or an IEEE 802.1 1 wireless arrangement; however, numerous other types of interfaces may be practiced for the interface 1411.
[112] The I/O interfaces 1408 may afford either or both of serial and parallel connectivity, the former typically being implemented according to the Universal Serial Bus (USB) standards and having corresponding USB connectors (not illustrated). Storage devices 1409 are provided and typically include a hard disk drive (HDD) 1410. Other storage devices such as a floppy disk drive and a magnetic tape drive (not illustrated) may also be used. An optical disk drive 1412 is typically provided to act as a non-volatile source of data. Portable memory devices, such optical disks, USB-RAM, portable, external hard drives, and floppy disks, for example, may be used as appropriate sources of data to the system 1400.
[113] The components 1405 to 1412 of the computer module 1401 typically communicate via an interconnected bus 1404 and in a manner that results in a conventional mode of operation of the computer system 1400 known to those in the relevant art. For example, the processor 1405 is coupled to the system bus 1404 using a connection 1418. Likewise, the memory 1406 and optical disk drive 1412 are coupled to the system bus 1404 by connections 1419. Examples of computers on which the described arrangements can be practised include IBM-PC’s and compatibles, Sun Sparcstations, Apple or like computer systems.
[114] The methods 600 and 700, where performed by the preview server 140 may be implemented using the computer system 1400. The processes may be implemented as
one or more software application programs 1433 executable within the computer system 1400. In particular, the sub-processes 400, 500, and 600 are effected by instructions (see corresponding component 1331 in Fig. 8B) in the software 1433 that are carried out within the computer system 1400. The software instructions may be formed as one or more code modules, each for performing one or more particular tasks. The software may also be divided into two separate parts, in which a first part and the corresponding code modules performs the methods and a second part and the corresponding code modules manage a user interface between the first part and the user.
[115] The software may be stored in a computer readable medium, including the storage devices described below, for example. The software is loaded into the computer system 1400 from the computer readable medium, and then executed by the computer system 1400. A computer readable medium having such software or computer program recorded on the computer readable medium is a computer program product. The use of the computer program product in the computer system 1400 preferably effects an advantageous apparatus for a preview server 140.
[116] The software 1433 is typically stored in the HDD 1410 or the memory 1406. The software is loaded into the computer system 1400 from a computer readable medium, and executed by the computer system 1400. Thus, for example, the software 1433 may be stored on an optically readable disk storage medium (e.g., CD-ROM) 1425 that is read by the optical disk drive 1412. A computer readable medium having such software or computer program recorded on it is a computer program product. The use of the computer program product in the computer system 1400 preferably effects an apparatus for a preview server 140.
[117] In some instances, the application programs 1433 may be supplied to the user encoded on one or more CD-ROMs 1425 and read via the corresponding drive 1412, or alternatively may be read by the user from the networks 1420 or 1422. Still further, the software can also be loaded into the computer system 1400 from other computer readable media. Computer readable storage media refers to any non-transitory tangible storage medium that provides recorded instructions and/or data to the computer system 1400 for execution and/or processing. Examples of such storage media include floppy disks, magnetic tape, optical disc, a hard disk drive, a ROM or integrated circuit, USB memory, a
magneto-optical disk, or a computer readable card such as a PCMCIA card and the like, whether or not such devices are internal or external of the computer module 1401. Examples of transitory or non-tangible computer readable transmission media that may also participate in the provision of software, application programs, instructions and/or data to the computer module 1401 include radio or infra-red transmission channels as well as a network connection to another computer or networked device, and the Internet or Intranets including e-mail transmissions and information recorded on Websites and the like.
[118] The second part of the application programs 1433 and the corresponding code modules mentioned above may be executed to implement one or more graphical user interfaces (GUIs) to be rendered or otherwise represented upon a display. Through manipulation of typically a keyboard and a mouse, a user of the computer system 1400 and the application may manipulate the interface in a functionally adaptable manner to provide controlling commands and/or input to the applications associated with the GUI(s). Other forms of functionally adaptable user interfaces may also be implemented, such as an audio interface utilizing speech prompts output via loudspeakers and user voice commands input via a microphone.
[119] It is to be understood that the structural context of the computer system 1400 (i.e., the preview server 140) is presented merely by way of example. Therefore, in some arrangements, one or more features of the computer system 1400 may be omitted. Also, in some arrangements, one or more features of the computer system 1400 may be combined together. Additionally, in some arrangements, one or more features of the computer system 1400 may be split into one or more component parts.
[120] Fig. 10 shows an alternative implementation of the preview server 140 (i.e., the computer system 1400). In the alternative implementation, preview server 140 may be generally described as a physical device comprising at least one processor 902 and at least one memory 904 including computer program codes. The at least one memory 904 and the computer program codes are configured to, with the at least one processor 902, cause the preview server 140 to perform the operations described in the methods 600 and 700. The preview server 140 may also include a data module 908, a POI module 906, a merchant module 910 and a user module 912. The memory 904 stores computer program
code that the processor 902 compiles to have each of the modules 906 to 916 performs their respective functions.
[121] With reference to Figs. 1 to 7, the POI module 906 facilitates the function of determining an image corresponding to a drop-off point for the location based on location information, the image being one that is based on historical data identifying the drop-off point.
[122] With reference to Figs. 1 to 7, the merchant module 908 facilitates the function of identifying a merchant located near the drop-off point based on a user preference associated with the request, determining an image corresponding to a merchant, the image being one that is based on historical data identifying the merchant, and determining an offer provided by the merchant based on the user preference associated with the request.
[123] With reference to Figs. 1 to 7, the user module 908 facilitates the function of identifying a merchant located near the drop-off point based on a user preference associated with the request, and determining an offer provided by the merchant based on the user preference associated with the request.
[124] With reference to Figs. 1 to 7, the data module 908 performs the functions of receiving data and information from the requestor device 102, provider device 104, coordination server 108, a cloud and other sources of information to facilitate the methods 600 and 700. For example, the data module 908 may be configured to receive a request including location information from the requestor device 102, the provider device 104, coordination server 108 or other sources of information. The data module 908 may also be configured to receive an image corresponding to a drop-off point from the requestor device 102, the provider device 104, the coordination server 108, the image database 150 or other sources of information. The data module 908 may be further configured to send an image (for example, determined after a preview process from the processor 802 of the preview server 140) to the requestor device 102, the provider device 104, the coordination server 108, a database or other sources of information.
[125] Fig. 8D depicts a general-purpose computer system 1500, upon which a combined coordination server 108 and preview server 140 described can be practiced. The computer
system 1500 includes a computer module 1501 . An external Modulator-Demodulator (Modem) transceiver device 1516 may be used by the computer module 1501 for communicating to and from a communications network 1520 via a connection 1521. The communications network 1520 may be a wide-area network (WAN), such as the Internet, a cellular telecommunications network, or a private WAN. Where the connection 1521 is a telephone line, the modem 1516 may be a traditional “dial-up” modem. Alternatively, where the connection 1521 is a high capacity (e.g., cable) connection, the modem 1516 may be a broadband modem. A wireless modem may also be used for wireless connection to the communications network 1520.
[126] The computer module 1501 typically includes at least one processor unit 1505, and a memory unit 1506. For example, the memory unit 1506 may have semiconductor random access memory (RAM) and semiconductor read only memory (ROM). The computer module 1501 also includes an interface 1508 for the external modem 1516. In some implementations, the modem 1516 may be incorporated within the computer module 1501 , for example within the interface 1508. The computer module 1501 also has a local network interface 1511 , which permits coupling of the computer system 1500 via a connection 1523 to a local-area communications network 1522, known as a Local Area Network (LAN). As illustrated in Fig. 8D, the local communications network 1522 may also couple to the wide network 1520 via a connection 1524, which would typically include a so-called “firewall” device or device of similar functionality. The local network interface 1511 may comprise an Ethernet circuit card, a Bluetooth® wireless arrangement or an IEEE 802.1 1 wireless arrangement; however, numerous other types of interfaces may be practiced for the interface 1511.
[127] The I/O interfaces 1508 may afford either or both of serial and parallel connectivity, the former typically being implemented according to the Universal Serial Bus (USB) standards and having corresponding USB connectors (not illustrated). Storage devices 1509 are provided and typically include a hard disk drive (HDD) 1510. Other storage devices such as a floppy disk drive and a magnetic tape drive (not illustrated) may also be used. An optical disk drive 1512 is typically provided to act as a non-volatile source of data. Portable memory devices, such optical disks, USB-RAM, portable, external hard drives, and floppy disks, for example, may be used as appropriate sources of data to the system 1500.
[128] The components 1505 to 1512 of the computer module 1501 typically communicate via an interconnected bus 1504 and in a manner that results in a conventional mode of operation of the computer system 1500 known to those in the relevant art. For example, the processor 1505 is coupled to the system bus 1504 using a connection 1518. Likewise, the memory 1506 and optical disk drive 151 are coupled to the system bus 1504 by connections 1519. Examples of computers on which the described arrangements can be practised include IBM-PC’s and compatibles, Sun Sparcstations, Apple or like computer systems.
[129] The steps of the methods 600 and 700 performed by the preview server 140 and facilitated by the coordination server 108 may be implemented using the computer system 1500. For example, the steps of the methods 600 and 700 as performed by the preview server 140 may be implemented as one or more software application programs 1533 executable within the computer system 1500. In particular, the steps of the methods 600 and 700 are effected by instructions (see corresponding component 1331 in Fig. 8B) in the software 1533 that are carried out within the computer system 1500. The software instructions may be formed as one or more code modules, each for performing one or more particular tasks. The software may also be divided into two separate parts, in which a first part and the corresponding code modules performs the steps of the methods 600 and 700 and a second part and the corresponding code modules manage a user interface between the first part and the user.
[130] The software may be stored in a computer readable medium, including the storage devices described below, for example. The software is loaded into the computer system 1500 from the computer readable medium, and then executed by the computer system 1500. A computer readable medium having such software or computer program recorded on the computer readable medium is a computer program product. The use of the computer program product in the computer system 1500 preferably effects an advantageous apparatus for a combined coordination server 108 and preview server 140.
[131] The software 1533 is typically stored in the HDD 1510 or the memory 1506. The software is loaded into the computer system 1500 from a computer readable medium, and executed by the computer system 1500. Thus, for example, the software 1533 may be stored on an optically readable disk storage medium (e.g., CD-ROM) 1525 that is read by
the optical disk drive 1512. A computer readable medium having such software or computer program recorded on it is a computer program product. The use of the computer program product in the computer system 1500 preferably effects an apparatus for a combined coordination server 108 and preview server 140.
[132] In some instances, the application programs 1533 may be supplied to the user encoded on one or more CD-ROMs 1525 and read via the corresponding drive 1512, or alternatively may be read by the user from the networks 1520 or 1522. Still further, the software can also be loaded into the computer system 1500 from other computer readable media. Computer readable storage media refers to any non-transitory tangible storage medium that provides recorded instructions and/or data to the computer system 1500 for execution and/or processing. Examples of such storage media include floppy disks, magnetic tape, optical disc, a hard disk drive, a ROM or integrated circuit, USB memory, a magneto-optical disk, or a computer readable card such as a PCMCIA card and the like, whether or not such devices are internal or external of the computer module 1501 . Examples of transitory or non-tangible computer readable transmission media that may also participate in the provision of software, application programs, instructions and/or data to the computer module 1501 include radio or infra-red transmission channels as well as a network connection to another computer or networked device, and the Internet or Intranets including e-mail transmissions and information recorded on Websites and the like.
[133] The second part of the application programs 1533 and the corresponding code modules mentioned above may be executed to implement one or more graphical user interfaces (GUIs) to be rendered or otherwise represented upon a display. Through manipulation of typically a keyboard and a mouse, a user of the computer system 1500 and the application may manipulate the interface in a functionally adaptable manner to provide controlling commands and/or input to the applications associated with the GUI(s). Other forms of functionally adaptable user interfaces may also be implemented, such as an audio interface utilizing speech prompts output via loudspeakers and user voice commands input via a microphone.
[134] It is to be understood that the structural context of the computer system 1500 (i.e., combined coordination server 108 and preview server 140) is presented merely by way of example. Therefore, in some arrangements, one or more features of the server 1500 may
be omitted. Also, in some arrangements, one or more features of the server 1500 may be combined together. Additionally, in some arrangements, one or more features of the server 1500 may be split into one or more component parts.
[135] Fig. 11 shows an alternative implementation of combined coordination server 108 and preview server 140 (i.e., the computer system 1500). In the alternative implementation, the combined coordination server 108 and preview server 140 may be generally described as a physical device comprising at least one processor 1002 and at least one memory 904 including computer program codes. The at least one memory 1004 and the computer program codes are configured to, with the at least one processor 1002, cause the combined coordination server 108 and preview server 140 to perform the operations described in the steps of the methods 600 and 700. The combined coordination server 108 and preview server 140 may also include a coordination module 806, a POI module 906, a data module 908, a merchant module 910, a user module 912. The memory 1004 stores computer program code that the processor 1002 compiles to have each of the modules 806 to 912 performs their respective functions.
[136] With reference to Figs. 1 to 7, the coordination module 806 performs the function of communicating with the requestor device 102 and the provider device 104; and the acquirer server 106 and the issuer server 110 to respectively receive and transmit a transaction, travel or delivery request message. Further, the coordination module 806 may provide data and information associated with POIs and users that are used for the preview process of preview server 140.
[137] With reference to Figs. 1 to 7, the POI module 906 facilitates the function of determining an image corresponding to a drop-off point for the location based on location information, the image being one that is based on historical data identifying the drop-off point.
[138] With reference to Figs. 1 to 7, the merchant module 908 facilitates the function of identifying a merchant located near the drop-off point based on a user preference associated with the request, determining an image corresponding to a merchant, the image being one that is based on historical data identifying the merchant, and determining an offer provided by the merchant based on the user preference associated with the request.
[139] With reference to Figs. 1 to 7, the user module 908 facilitates the function of identifying a merchant located near the drop-off point based on a user preference associated with the request, and determining an offer provided by the merchant based on the user preference associated with the request.
[140] With reference to Figs. 1 to 7, the data module 908 performs the functions of receiving data and information from the requestor device 102, provider device 104, coordination server 108, a cloud and other sources of information to facilitate the methods 600 and 700. For example, the data module 908 may be configured to receive a request including location information from the requestor device 102, the provider device 104, coordination server 108 or other sources of information. The data module 908 may also be configured to receive an image corresponding to a drop-off point from the requestor device 102, the provider device 104, the coordination server 108, the image database 150 or other sources of information. The data module 908 may be further configured to send an image (for example, determined after a preview process from the processor 802 of the preview server 140) to the requestor device 102, the provider device 104, the coordination server 108, a database or other sources of information.
[141] It will be appreciated by a person skilled in the art that numerous variations and/or modifications may be made to the present disclosure as shown in the specific embodiments without departing from the scope of the specification as broadly described. The present embodiments are, therefore, to be considered in all respects to be illustrative and not restrictive.
Claims
1 . A method for providing a visual preview of a location selected by a user at a user device, the method comprising: receiving, from the user device, a request including location information of the selected location; obtaining image data corresponding to a drop-off point for the selected location based on the location information; and causing to be displayed, on the user device, the visual preview based on the image data.
2. The method of claim 1 , further comprising: identifying a merchant located near the drop-off point based on a user preference associated with the request; and indicating, on the user device, a location of the merchant relative to the drop-off point.
3. The method of claim 2, further comprising: obtaining image data corresponding to the merchant based on location information of the merchant.
4. The method of claim 3, further comprising: determining an offer provided by the merchant based on the user preference associated with the request.
5. The method of claim 4, wherein the location information of the selected location further includes a pickup location, the method further comprising: determining an expected arrival time at the drop-off point based on an estimated time for travelling from the pickup location to the drop-off point; and determining the offer based on the expected arrival time.
6. The method of any one of claims 1 -5, wherein obtaining the image data further comprises identifying the drop-off point based on the location information.
7. The method of any one of claims 1 -6, wherein the image data is associated with a geographical coordinate, and wherein obtaining the image data further comprises determining that the geographical coordinate is same as that of the drop-off point.
8. The method of claim 7, further comprising: receiving, from the user device, additional image data corresponding to the dropoff point; and storing the received additional image data as image data associated with the geographical coordinate.
9. The method of any one of claims 1 -8, wherein the visual preview depicts a view of the drop-off point, and causing the visual preview to be displayed on the user device further comprises: indicating, on the user device, a location of the drop-off point relative to the location; and loading, on the user device, the visual preview as a view of the drop-off point.
10. A system for providing a visual preview of a location selected by a user at a user device, the system comprising: at least one processor; and at least one memory including computer program code; the at least one memory and the computer program code configured to, with the at least one processor, cause the system at least to: receive, from the user device, a request including location information of the selected location; obtain image data corresponding to a drop-off point for the selected location based on the location information; and cause to be displayed, on the user device, the visual preview based on the image data.
11 . The system of claim 10, further configured to: identify a merchant located near the drop-off point based on a user preference associated with the request; and indicate, on the user device, a location of the merchant relative to the drop-off point.
12. The system of claim 11 , further configured to: obtain image data corresponding to the merchant based on location information of the merchant.
13. The system of claim 1 , further configured to: determine an offer provided by the merchant based on the user preference associated with the request.
14. The system of claim 13, wherein the location information further includes a pickup location, the system further configured to: determine an expected arrival time at the drop-off point based on an estimated time for travelling from the pickup location to the drop-off point; and determine the offer based on the expected arrival time.
15. The system of any one of claims 10-14, wherein obtaining the image data further comprises identifying the drop-off point based on the location information.
16. The system of any one of claims 10-15, wherein the image data is associated with a geographical coordinate, and wherein obtaining the image data further comprises determining that the geographical coordinate is same as that of the drop-off point.
17. The system of claim 16, further configured to: receive, from the user device, additional image data corresponding to the drop-off point; and store the received additional image data as image data associated with the geographical coordinate.
18. The system of any one of claims 10-17, wherein the image data depicts a view of the drop-off point, and causing the visual preview to be displayed on the user device further comprises: indicate, on the user device, a location of the drop-off point relative to the location; and load, on the user device, the visual preview as a view of the drop-off point.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| VN1-2021-08493 | 2021-12-30 | ||
| VN1202108493 | 2021-12-30 |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| WO2023128861A2 true WO2023128861A2 (en) | 2023-07-06 |
| WO2023128861A9 WO2023128861A9 (en) | 2023-08-17 |
| WO2023128861A3 WO2023128861A3 (en) | 2023-09-28 |
Family
ID=87000403
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/SG2022/050910 Ceased WO2023128861A2 (en) | 2021-12-30 | 2022-12-15 | Method and system for providing an image of a location |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2023128861A2 (en) |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7119716B2 (en) * | 2003-05-28 | 2006-10-10 | Legalview Assets, Limited | Response systems and methods for notification systems for modifying future notifications |
| KR100932969B1 (en) * | 2007-05-23 | 2009-12-21 | (주)브이아이소프트 | Route guidance service method and navigation system performing the method |
| US20120197690A1 (en) * | 2011-01-31 | 2012-08-02 | Agulnek Jeremy S | Method of Operating a Navigation System to Provide Advertisements |
| US20140257988A1 (en) * | 2013-03-07 | 2014-09-11 | Ford Global Technologies, Llc | Method and system for selecting navigation routes and providing on-route advertising |
| CN106971319A (en) * | 2017-03-27 | 2017-07-21 | 李葛亮 | The method and software product of advertisement are shown to user using client of hiring a car |
| JP6885298B2 (en) * | 2017-10-27 | 2021-06-09 | トヨタ自動車株式会社 | Self-driving vehicle |
-
2022
- 2022-12-15 WO PCT/SG2022/050910 patent/WO2023128861A2/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| WO2023128861A9 (en) | 2023-08-17 |
| WO2023128861A3 (en) | 2023-09-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20250053953A1 (en) | Proximity based interactions via mobile devices | |
| US11783365B1 (en) | Blaze mobile banking using a non-browser based application | |
| US10496978B2 (en) | Social proximity payments | |
| US11403615B2 (en) | Automatic synchronization of a device for transaction processing based on geo-fenced locations | |
| US11062243B2 (en) | Activity integration associated with resource sharing management application | |
| US20200387887A1 (en) | Selected place on maps associated uniform resource locator (URL) or selected place associated merchant account based payment transactions, connections, offers, order, deals, reservation and call-to-actions | |
| US10768795B2 (en) | Integrated resource transfer application | |
| JP7721631B2 (en) | Customer device application site accessible via merchant management identifier | |
| US7309009B2 (en) | Retail store fly-around product locator | |
| US20230206198A1 (en) | User interface for a biller directory and payments engine | |
| US8849710B2 (en) | Projection shopping with a mobile device | |
| KR20170118431A (en) | Electronic device and payment method using the same | |
| US20140046837A1 (en) | Systems and methods for facilitating electronic payment service provider transactions using physical objects | |
| US20160063616A1 (en) | Techniques for completing pre-arranged transactions | |
| US10586231B2 (en) | Receipt retrieval based on location | |
| WO2023128861A2 (en) | Method and system for providing an image of a location | |
| US20240320718A1 (en) | Biller-side biller directory and payments engine architecture | |
| US20250362136A1 (en) | Method and system for adaptively identifying an optimal route | |
| US12505159B1 (en) | Enterprise platform with integrated user-curated playlist | |
| US12333654B2 (en) | System and method for generating a digital rendition of a location to recreate a user interaction in a digital ecosystem | |
| WO2024035337A1 (en) | Method and system for identifying a parking lot relative to a point of interest | |
| CN120450776A (en) | Advertising attribution method, advertising system, electronic device and server |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WWE | Wipo information: entry into national phase |
Ref document number: 2401004337 Country of ref document: TH |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 11202404573P Country of ref document: SG |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 22916916 Country of ref document: EP Kind code of ref document: A2 |