U.S. patent application number 14/544208 was filed with the patent office on 2016-06-09 for application and platform to build enhanced data repositories for facilitating a merchant/service provider electronic exchange.
This patent application is currently assigned to HomeAway, Inc.. The applicant listed for this patent is Alex Holm Devine, Daniel Steven Haligas, Ryan Hedley Turner, Velayudhan Venugopal. Invention is credited to Alex Holm Devine, Daniel Steven Haligas, Ryan Hedley Turner, Velayudhan Venugopal.
Application Number | 20160165067 14/544208 |
Document ID | / |
Family ID | 56094777 |
Filed Date | 2016-06-09 |
United States Patent
Application |
20160165067 |
Kind Code |
A1 |
Turner; Ryan Hedley ; et
al. |
June 9, 2016 |
Application and platform to build enhanced data repositories for
facilitating a merchant/service provider electronic exchange
Abstract
A platform may include resources configured to receive
information representing a phone call from a caller (e.g., a
traveler) to a callee (e.g., a proprietor) and instead of
immediately connecting the phone call may communicate a message to
the caller telling the caller the call is being connected. Prior to
connecting the phone call with the callee, the platform may connect
with a proprietor device (e.g., a landline telephone or a
smartphone) and communicate a message to the callee that an
incoming phone call is from a potential customer and is being
provided courtesy of a merchant electronic exchange. The message
may further encourage the callee to join the merchant electronic
exchange as a member and/or inform the callee of the number of
leads it has provided to the callee. After communicating the
message to the proprietor, the platform may connect the call
between the caller and the callee.
Inventors: |
Turner; Ryan Hedley;
(Austin, TX) ; Haligas; Daniel Steven; (Panama
City, FL) ; Venugopal; Velayudhan; (Austin, TX)
; Devine; Alex Holm; (Austin, TX) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Turner; Ryan Hedley
Haligas; Daniel Steven
Venugopal; Velayudhan
Devine; Alex Holm |
Austin
Panama City
Austin
Austin |
TX
FL
TX
TX |
US
US
US
US |
|
|
Assignee: |
HomeAway, Inc.
Austin
TX
|
Family ID: |
56094777 |
Appl. No.: |
14/544208 |
Filed: |
December 8, 2014 |
Current U.S.
Class: |
370/352 |
Current CPC
Class: |
H04M 15/56 20130101;
G06Q 30/0645 20130101; G07C 9/00896 20130101; G07B 15/00 20130101;
G07C 2209/08 20130101; H04W 4/029 20180201; G07C 9/00174 20130101;
H04L 61/1529 20130101; G07C 9/38 20200101; H04W 4/021 20130101;
G06Q 10/02 20130101; G07C 9/00571 20130101 |
International
Class: |
H04M 15/00 20060101
H04M015/00; H04L 29/12 20060101 H04L029/12 |
Claims
1. A system, comprising: a communications interface; and a
computing resource in communication with the communications
interface; the computing resource configured to: receive data
representing a phone call from a first computing device in
communication with the communications interface via a first
communications link, communicate data representing a first message
to the first computing device prior to connecting the phone call
from the first computing device with a device the phone call is
addressed to, connect with the device the phone call is addressed
to via a second communications link between the communications
interface and the device, communicate, after connecting with the
device, data representing a second message to the device, and
connect the first computing device with the device using one or
more communications links between the first device, the device and
the communications interface.
2. The system of claim 1, wherein the computing resource is further
configured to: delay connection of the phone call from the first
computing device to the device, and communicate during the delay,
via the first communications link, the first message to the first
computing device, the first message including data representing
that the phone call from the first computing device is being
connected.
3. The system of claim 2, wherein the computing resource is further
configured to: communicate during the delay, via the second
communications link, the second message, the second message
including data representing that the phone call from a potential
customer is being provided by an electronic exchange.
4. The system of claim 1, wherein the computing resource is further
configured to: delay connection of the phone call from the first
computing device to the device, and communicate during the delay,
via the second communications link, the second message, the second
message including data representing that the phone call from a
potential customer is being provided by an electronic exchange, and
the data further includes an invitation to join the electronic
exchange.
5. The system of claim 1, wherein the first computing device is in
wireless communication with the communications interface via the
first communications link.
6. The system of claim 1, wherein the second message includes data
representing that the phone call from a potential customer is being
provided by an electronic exchange and the second message includes
data representing a proprietor rating on the potential
customer.
7. The system of claim 1, wherein the second message includes data
representing that the phone call from a potential customer is being
provided by an electronic exchange and the second message includes
data representing a tally of a number of phone call leads for other
potential customers that have been provided by the electronic
exchange.
8. The system of claim 1, wherein the first computing device
includes an application configured to transmit the data
representing the phone call using a voice over Internet protocol
call.
9. The system of claim 1, wherein communication between the first
device and the communications interface comprises digital data and
communication between the device and the communications interface
comprises analog data.
10. The system of claim 1, wherein after the first device and the
device are connected, communication between the first device and
the communication interface is via a voice over Internet protocol,
and communication between the device and the communication
interface is via a different protocol than the voice over Internet
protocol.
11. The system of claim 1, wherein after the first device and the
device are connected, communication between the first device and
the communication interface is via a server call, and communication
between the device and the communication interface is via a
different protocol than the server call.
12. The system of claim 1, wherein after the first device and the
device are connected, communication between the first device and
the communication interface and the device and the communication
interface are via a voice over Internet protocol.
13. The system of claim 1, wherein the computing resource is
further configured to: compute a running tally of phone call leads,
include in the second message, data representing that the phone
call from a potential customer is being provided by the electronic
exchange and data representing that the running tally of phone call
leads is being provided by the electronic exchange.
14. A computing device, comprising: a computing resource; a display
in communication with the computing resource; a data storage
resource; and a communications interface in communication with the
computing resource and the data storage resource, the computing
resource configured to: establish a communications link with an
external system, communicate to the external system, via the
communications link, data representing a phone number to be called
in response to a selection of an image presented on the display,
receive from the external system, prior to the external system
connecting the phone call with a device the phone call is addressed
to, data representing a first message generated by the external
system, and receive, from the external system via the
communications link, after the external system has connected the
phone call with the device the phone call is addressed to, data
representing a conversation.
15. The computing device of claim 14, wherein the computing
resource is further configured to: implement a voice over Internet
protocol to communicate the data representing the phone number to
be called to the external system.
16. The computing device of claim 14, wherein the computing
resource is further configured to: implement a server call to a
networked computing resource to communicate the data representing
the phone number to be called to the external system.
17. The computing device of claim 14, wherein the computing
resource is further configured to: access data representing
temporal data from a clock, access data representing geolocation
data from a global positioning system integrated circuit, determine
a distance between a geolocation of the activity and a current
geolocation of the computing device from the data representing
geolocation data, determine an estimated time of arrival at the
activity the phone call was addressed to by calculating a change in
the distance as a function of time using data representing time
data extracted from the data representing the temporal data, and
communicate, via the communications link, the estimated time of
arrival to the external system.
18. The computing device of claim 17, wherein the estimated time of
arrival is determined after the external system has connected the
phone call with the device the phone call is addressed to.
19. A method comprising: receiving from a caller computing device,
data representing a phone call to a callee device; transmitting
after a time delay, to the caller computing device, prior to
connecting the caller computing device with the callee device the
phone call is addressed to, data representing a first message
stating the phone call to the callee device is being connected;
establishing a first communications link with the callee device
using the data representing the phone call; transmitting over the
first communications link, data representing a second message
stating the a call from a potential customer is being provided by
an exchange; establishing a second communications link between the
callee device and the caller computing device, the second
communications link operative to connect the phone call from the
caller computing device with the callee device; and transmitting
over the second communications link, data representing a
conversation.
20. The method of claim 19 and further comprising: converting,
using a format converter, data transmitted from the callee device,
the caller computing device or both, from a first format to a
second format that is different than the first format; and
selecting, using a connection manager, a first sequence connection
type for the callee device and a second sequence connection type
for the caller computing device that is different than the first
sequence connection type.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is related to U.S. patent application Ser.
No. 14/562,629, filed on Dec. 5, 2014, having Attorney Docket No.
HOM-156, and titled "Adaptive Advisory Engine And Methods To
Predict Preferential Activities Available At A Region Associated
With Lodging" which is hereby incorporated by reference in its
entirety for all purposes.
FIELD
[0002] The present application relates generally to systems,
software, electronic messaging, mobile computing and communication
devices. More specifically, systems, applications, telephony
systems, computing devices, and methods to facilitate an electronic
exchange are described.
BACKGROUND
[0003] Travelers who have booked a stay at a property, such as
vacation rental or a consumer (e.g., a user, a customer, a client),
may require information on trusted sources for goods and/or
services in a geographic region or location they may be located in,
such as a geographic region or location in an area around the
vacation rental or a geographic region or location a consumer may
be visiting for shopping or other activities or events.
[0004] Experiences from other travelers and/or consumers with goods
and services in a particular geographic region may be helpful to
the traveler or consumer. However, conventional approaches have
failed to effectively connect travelers and/or consumers with
providers of goods and/or services that have been vetted by trusted
sources.
[0005] Thus, there is a need for devices, systems and methods that
facilitate connecting providers of goods and/or services with
consumers in need of those goods and/or services.
BRIEF DESCRIPTION OF THE DRAWINGS
[0006] Various embodiments or examples ("examples") of the present
application are disclosed in the following detailed description and
the accompanying drawings. The drawings are not necessarily to
scale:
[0007] FIG. 1 depicts one example of a platform configured to
invite a proprietor to join an electronic exchange prior to
connecting communications between a traveler and the
proprietor;
[0008] FIG. 2 depicts one example of a computer system;
[0009] FIG. 3 depicts an example of a sequence performed by a
platform to connect a call from a traveler device to a proprietor
device;
[0010] FIG. 4 depicts another example of a sequence performed by a
platform to connect a call from a traveler device to a proprietor
device;
[0011] FIG. 5 depicts examples of information associated with a
message that may include an invitation communicated to a proprietor
device;
[0012] FIG. 6 depicts one example of a flow diagram for connection
a phone call from a caller computing device with a callee device
using a platform;
[0013] FIG. 7 depicts one example of a flow diagram for an
application on a caller computing device that connects a phone call
from the caller computing device with a callee device using a
platform;
[0014] FIG. 8 depicts one example of a block diagram for a
telephony function of a platform;
[0015] FIG. 9 depicts one example of a flow diagram for a telephony
function of a platform; and
[0016] FIG. 10 depicts one example of a block diagram for a
platform.
DETAILED DESCRIPTION
[0017] Various embodiments or examples may be implemented in
numerous ways, including as a system, a process, a method, an
apparatus, a user interface, or a series of program instructions on
a non-transitory computer readable medium such as a computer
readable storage medium or a computer network where the program
instructions are sent over optical, electronic, or wireless
communication links. In general, operations of disclosed processes
may be performed in an arbitrary order, unless otherwise provided
in the claims.
[0018] A detailed description of one or more examples is provided
below along with accompanying figures. The detailed description is
provided in connection with such examples, but is not limited to
any particular example. The scope is limited only by the claims and
numerous alternatives, modifications, and equivalents are
encompassed. Numerous specific details are set forth in the
following description in order to provide a thorough understanding.
These details are provided for the purpose of example and the
described techniques may be practiced according to the claims
without some or all of these specific details. For clarity,
technical material that is known in the technical fields related to
the examples has not been described in detail to avoid
unnecessarily obscuring the description.
[0019] Reference is now made to FIG. 1 where one example 100 of a
platform 150 configured to invite a proprietor 103 to join an
electronic exchange prior to connecting communications between a
traveler 101 and the proprietor 103 is depicted. Traveler 101 may
be in a geographic region or location where a rental unit is
located and the traveler 101 may have booked a stay at the rental
unit. For example, the rental may be one unit in a group of condo
unit, where the traveler 101 is staying at rental 120, which may be
adjacent to other condo units such as unit 121. An owner of unit
120 may provide wired 193 and/or wireless 191 access to a guest
(e.g., for a computing device 110 of traveler 101), such as
traveler 101 via a wireless access point denoted as 130. During the
traveler's 101 stay at rental 120 the traveler may wish to
participate in other events (e.g., activities) in the geographic
region or location of rental 120 (e.g., in the same city, town,
vacation resort, etc.). Example events may include but are not
limited to dining, exercise, shopping, hiking, entertainment,
sporting events, etc., just to name a few. A vacation rental agency
or business acting on behalf of property owners or rental units and
travelers, or an owner of a rental may have access to a platform
150 (e.g., a backend system) configured to match traveler 101 event
selections with merchants, proprietors, businesses, and other
economic interest in the geographic region.
[0020] Platform 150 may have internal and/or external access to
resources including but not limited to one or more networked
computer resources or processor(s) (PROC), networked data storage
systems (DS), networked communications resources (COMS), executable
code (e.g., applications programming interface--API), search engine
optimization terms (SEO), for example. Platform 150 may communicate
with external computing devices and/or systems via COMS using wired
193 and/or wireless 191 communications links. For example, traveler
device 110, a proprietor device 113 or other devices may
communicate (191, 193) with platform 150 via an external resource
199 (e.g., the Internet and/or Cloud). One or more other
communications resources may be used as portal computing devices,
such as a wireless access point 130, a cellular network 177 and a
communications satellite 187 (e.g., a GPS satellite).
[0021] As one example, traveler 101 may wish to dine at a
restaurant that specializes in Tapas. To that end, traveler 101 may
interact 101i with device 110 via a user interface UI presented on
a display 111 of traveler device 110 may include a search field
111s in which a search key for "Tapas" may be entered using a
keyboard 111k presented on display 111. Other input devices such as
a voice based search may be used and example 100 is not limited to
the scenario depicted. The search string "Tapas" may yield several
hits for the geographic region or location around rental 120 (e.g.,
as determined by location data from device 110 or other
geo-location data). For example, the search key "Tapas" may return
several results denoted as r1-r5, although there may be more or
fewer search results as denoted by 159. Traveler 101 may select
101s (e.g., using a finger of traveler's 101 hand 101h to activate
a touch screen selection), search result r4 which may expand to
reveal additional information on a restaurant named "TapeOle". The
additional information may include an address, a star rating (e.g.,
one to five stars) for the restaurant, a distance (e.g., 1.3 miles)
from traveler's 101 current location to the restaurant, and may
further include icons or other selectable images configured to
contact and/or communicate a message to the restaurant (e.g., to
the proprietor, hostess, etc.).
[0022] For example, if after perusing the search results r1-r5, the
traveler 101 prefers "TapeOle" (e.g., based on its five-star
rating), then traveler 101 may select one of the communications
options presented, such as a phone call 119p, an email message
119e, and electronic message 119m (e.g., text, IM, SMS, etc.), or a
social media message 119s (e.g., a tweet). For purposes of
explanation, the following example will describe the traveler 101
selecting 101s the phone call 119p as the method for contacting the
restaurant "TapeOle".
[0023] After selecting 101s the icon 119p for the phone call,
circuitry and/or an application (APP) 126 on traveler device 110
may communicate (191, 193) with platform 150. Platform 150 may
receive data representing the phone call and temporarily Delay
connection of the phone call to its destination number (e.g., the
phone number for "TapaOle") as denoted by dashed line A from device
110 to function MSG/Delay in platform 150. While delaying
connection of the phone call to its intended destination, platform
150 may communicate a message (MSG) to the traveler 101 stating
that the phone call is being connected. For example, a speaker in
device 110 may audibly present the MSG to traveler 101. In other
examples, visual presentation of the MSG on display 111 may be
used, such as an icon, graphic, animation, text message, or the
like. Therefore, the content of the MSG need not be an audio form
of media and may be presented as another form of media, such as
video, images, text, etc.
[0024] Moreover, while the phone call is being delayed, platform
150 may communicate with the proprietor 103 of "TapeOle" by calling
the phone number for "TapeOle" or via another form of
communications, such as an electronic message. For purposes of
explanation, a phone call denoted by dashed line B is made to the
phone number for the proprietor 103 of "TapeOle" and the phone call
may be received on a communications and/or computing device of
proprietor 103 (e.g., device 113). The phone call may communicate a
message that a phone call from a potential customer is being
provided by an electronic exchange and may further communicate an
invitation for the proprietor to join the electronic exchange as
denoted by INV/MSG in platform 150. The MSG may further communicate
information the proprietor 103 may use to join the electronic
exchange, such as a phone number to call, an email address, a
twitter handle or a URL for a website, for example. As one
non-limiting example, the electronic exchange may be a merchant
electronic exchange or merchant electronic cooperative (COOP) where
a variety of merchants, business owners, proprietors, service
provides, shop owners and the like may join as members. Members may
rate customers they have done business with (e.g., using a star
rating system), may have access to demographic, personal
preferences, spending habits, financial status, and other
information on customers (e.g., travelers).
[0025] After communicating B the MSG and INV to join the electronic
exchange, the platform may connect the phone call from traveler 101
with the proprietor 103 as denoted by dashed lines C. Platform 150
may include a connect function configured to access one or more
Telephony functions for connecting the traveler's 101 phone call
with the destination phone number for "TapeOle".
[0026] As one example, "TapaOle" may be a restaurant 140 which may
be located in the vicinity of rental 120. Proprietor 103 may be the
actual owner, but need not be. For example, a hostess, receptionist
or other employee or agent of "TapaOle" may receive the INV/MSG and
subsequent phone call from traveler 101 as described above in
reference to dashed lines A-C. Device 110 may be a smartphone,
cellphone, tablet, pad, computer, laptop, or a hard line telephone
(e.g., plugged into a phone jack), for example.
[0027] Incentives for proprietors to join the electronic exchange
may include but are not limited to, gaining access to qualified
customers (e.g., travelers 101) that have been previously vouched
for or vetted by other proprietors who have had previous
experiences in doing business with the customer via the platform
150, access to leads for new customers who may become return
customers and/or promote the business to friends and/or associates
(e.g., via submitted customer reviews and/or word of mouth), access
to a pool of travelers 101, access to reviews from travelers 101
that may be used by other customers and travelers 101 to decide
whether or not to patronize the business, push messaging or other
forms of communications from the platform 150 that promote the
proprietor's 103 business, optimizing SEO terms to include the
proprietor's 103 business in searches by travelers 101 (e.g., when
travelers 101 search for restaurants and/or Tapas), etc., just to
name a few. The pool of travelers may be presently visiting the
locale of a proprietor's business (e.g., 103), may have visited the
locale of the proprietor's business in the past, or may visit the
locale of the proprietor's business at some future time.
Information associated with the pool of travelers, such as
demographic information, personal preferences, travel history,
activity history of events partaken in by travelers during past or
present travels, submitted reviews on events partaken in, spending
patterns, prior searches by travelers, click-through data from
prior searches by travelers, may be used to optimize SEO terms for
searches by traveler 101, to filter search results based on
experiences from the pool of travelers who were in the same locale,
for example. As one example, data representing past searches for
restaurants by those travelers in the pool of travelers (e.g., a
subset of travelers in the pool) that visited the same locale as
traveler 101 may be used to filter search results for a similar
search (e.g., r1-r5) made by traveler 101. The search results may
be further filtered by presenting search results that were selected
via a click-through (e.g., via phone call or sending of an
electronic message). In another example, restaurants having a star
rating of four or five stars as rated by travelers in the pool may
be suggested to traveler 101 with greater prominence in search
results presented to the traveler 101 (e.g., at a top of the list
of search results).
[0028] The Connect and Telephony functions of platform 150 may
communicate and exchange data operative to determine one or more
communication channels to use in order to receive and delay the
phone call (e.g., MSG/Delay) from traveler 101 as denoted by A, to
communicate the message and invitation to join the electronic
exchange (e.g., INV/MSG) as denoted by B, and to Connect the
traveler's 101 phone call with the proprietor 103 as denoted by
lines C. Platform 150 may use one or more combinations of
telephony/communications protocols, hardware or software to
implement the actions associated with dashed lines A-C as described
above, including but not limited to voice over IP (VoIP), plain old
telephone service (POTS), directed inward dial (DID), private
branch exchange (PBX), cellular networks (e.g., 2G, 3G, 4G, one or
more cellular towers/networks 177, etc.), public switched telephone
network (PSTN), WiFi (e.g., IEEE 802.x), WiMAX, LAN, WAN, etc.,
just to name a few. VoIP networks may include but are not limited
to Cloud-based VoIP providers, Internet-based VoIP providers,
Skype.TM., Viber.TM. RingCentral.TM., or others, for example.
Communications associated with dashed lines A-C may include voice,
images, video, audio, text, or other content and is not limited to
voice data (e.g., the MSG's and/or conversation between 101 and
103). Communications associated with dashed lines A-C may include a
server call to a server or other compute engine in platform 150 or
an external resource in communication with platform 150 (e.g.,
199).
[0029] As one example, the application 126 (APP) may receive data
representing the phone number associated with selected 101s icon
119p and transmit (191, 193) that data (e.g., 777-777-777) to
platform 150. APP 126 may be configured to prevent the phone number
from being connected through another communications network (e.g.,
cellular network 177) so that the call is not connected to the
proprietor's 103 business 140 before the platform 150 has
communicated the message and invitation (INV/MSG) denoted by dashed
line B. Platform 150 may receive (e.g., via COMS) the data
representing the phone number (e.g., 777-777-777) and communicate
the MSG associated with line A to traveler device 110 (e.g., " . .
. your call is being connected . . . ") and communicating the
message and invitation associated with line B to proprietor device
113 during the Delay in connecting the traveler 101 with the
proprietor 103. Platform may communicate the INV/MSG via POTS
(e.g., if the phone number 777-777-777 is for a land line phone),
VoIP, PBX, PSTN, Cellular network, WiFi or other network, for
example.
[0030] Subsequent to the platform completing the INV/MSG, the
platform 150 may Connect the devices (110, 113) of the traveler 101
and proprietor 103 using one or more of the above mentioned
communications technologies, such as POTS, PBX, PSTN, VoIP,
Cellular, WiFi or other. As one example, VoIP may be used to
Connect the devices (110, 113) using cellular network 177 to
communicate the data for the VoIP call. As another example,
communications between traveler device 110 and platform 150 for
lines A and C may be via VoIP using WiFi 130 or cellular 177 to
communicate data for the VoIP and platform may use POTS for
communication with proprietor device 113 for lines B and C, such
that the traveler 101 and proprietor 103 after being connected are
able to communicate (e.g., make and/or confirm a dinner
reservation) without necessarily perceiving that different
communications technologies are being used (e.g., POTS and
VoIP).
[0031] As another example, an actual phone number may not be used
for the data representing the phone number, such that selection of
an icon on screen 111 activates APP 126 to initiate a server call
or a VoIP call to platform 150. The selection of the icon does not
dial an actual phone number; instead, the platform 150 may
intercept or otherwise prevent a direct connection from device 110
to device 113. Platform 150 may have access to data indicating an
actual phone number for the icon selected by the traveler 110, and
may use that phone number to initiate sequence B and C. From a
perspective of the traveler 101, the selection of the icon has had
the effect of connecting the traveler 101 with proprietor 103 after
some period of delay (e.g., from about 3 seconds to about 10
seconds), without the traveler 101 knowing the phone call was
intercepted by platform 150 or that platform 150 after notifying
traveler 101 of the phone call being connected during sequence A is
contacting the proprietor during sequence B.
[0032] A traveler device 110 may be a wireless computing device
(e.g., a smartphone, tablet, pad, laptop, PDA, gaming device, etc.)
that may be in communication with other systems and/or resources,
such as the wireless 191 and/or the wired 193 communications links
or networks, external resource 199 (e.g., Internet, Cloud, etc.),
platform 150, wireless access point(s) 130, cellular communications
network 177, communication satellite 187 (e.g., a GPS satellite),
just to name a few. There may be more wireless computing devices
110 and travelers 101 as denoted by 128. Wireless computing device
110 will be referred hereinafter as a traveler device 110. There
may be more or fewer wireless access points 130, cellular
communications networks 177, and satellites 187 than depicted in
FIG. 1 as denoted by 135, 175 and 188 respectively. Data
communications between the traveler device 110 and the platform 150
may be direct (e.g., via 191 and/or 193) or may be routed through
one or more other portal computing devices, such as wireless access
points 130 and/or cellular communications network 140, for example.
Other computing devices, such as the computing device 113 of
proprietor 103 (e.g., an owner of a rental property, a business
owner, a merchant, etc.) may communicate (191, 193) with the
platform 150 and/or one or more other networks (e.g., 130, 177),
for example. As one example, proprietor 103 may be associated with
the business 140 in a geographic region or location that coincides
with a vacation stay of traveler 101 at a vacation rental property
120. As another example, vacation rental property 120 may be a
condo unit rented to traveler 101 by an owner or agent representing
an owner of rental property 120. Condo 120 may be adjacent to other
condo units, such as 121, for example. There may be more or fewer
devices 113, proprietors 103, and business 140 than depicted as
denoted by 143. A location of traveler 101 and/or a proprietor 103
need not be associated with a geographic region or location for a
vacation stay (e.g., not restricted to longitudes and latitudes at
or around a stay) and may be global in range. For example, a larger
region such as a country (e.g., India) or continent (e.g., Asia)
may be a location where a proprietor 103 and customer (e.g.,
traveler 101) may be located.
[0033] Traveler device 110 and proprietor device 113 may transmit
output data and may receive input data. Output data may include
location data and/or temporal data generated by or stored in device
110. Temporal data may be generated by an electronic system such as
a clock included in device 110. Location data may be generated by
radio frequency (RF) systems and/or sensors in device 110. Location
data may be received from other communications resources such as
from access points 130, cellular networks 177, and satellite 187,
for example. RF signals (e.g., 191) communicated between devices
110, 130, 177 may include location data and access points 130 and
cellular networks 177 may include a data store that logs or
otherwise tracks location data 177L associated with one or more
devices 110 in a geographic region or location. An application
(e.g., APP 126) on device 110 may access from device 110 and/or
external systems (e.g., external resource 199, access points 130,
cellular network 177, or others), location data (e.g., GPS,
geolocation or other locations based services) associated with
device 110. Location data 177L from computing devices (e.g., 130,
177) may be used in addition to or instead of location data from
device 110 to determine a location of traveler 101 via the traveler
device 110 in the geographic region or location. In some examples,
location data may include information on radio frequency (RF)
signals emitted by device 110, such as received signal strength
indicator (RSSI), RF signal strength, or data included in packets
or other data structures included in a RF transmission 191 from
device 110 (e.g., MAC Address, IP address, Bluetooth address,
etc.).
[0034] Wireless communications may include but is not limited to
WiFi, WiMAX, Bluetooth, near filed communications (NFC), and
cellular (e.g., 2G, 3G, 4G), for example. Wired communications may
include but is not limited to local area network (LAN), universal
serial bus (USB), FireWire, and Lightning, for example. An external
resource 199 may include and/or have access to computing resources
and data storage resources. Platform 150 may also include and/or
have access to networked resources, such as computing (PROC)
resources, data storage resources (DS), communications interface
(COMS), and an applications programming interface (API).
[0035] FIG. 2 illustrates an exemplary computer system 200 suitable
for use in one or more systems, devices, compute engines,
apparatus, traveler devices, owner devices, wireless devices,
wireless systems, backend systems, front end systems, networked
systems, platforms, data storage devices, data storage systems,
external resources, host devices or others described in reference
to FIGS. 1, and 3-6. In some examples, computer system 200 may be
used to implement computer programs, algorithms, an application
(APP), an application programming interface (API), telephony,
configurations, methods, processes, or other software to perform
the above-described techniques. Computer system 200 may include
circuitry, hardware, and other electronic systems to perform the
above-described techniques. Computer system 200 may include a bus
202 or other communication mechanism for communicating information,
which interconnects subsystems and devices, such as one or more
processors 204 (e.g., .mu.C, .mu.P, DSP, ASIC, FPGA, Baseband,
etc.), system memory 206 (e.g., RAM, SRAM, DRAM, Flash), storage
device 208 (e.g., Flash, ROM), disk drive 210 (e.g., magnetic,
optical, solid state), communication interface 212 (e.g., modem,
Ethernet, WiFi, Cellular), display 214 (e.g., CRT, LCD, LED, OLED,
touch screen), input device 216 (e.g., keyboard, stylus, touch
screen, mouse, track pad), and cursor control 218 (e.g., mouse,
trackball, stylus). Some of the elements depicted in computer
system 200 may be optional, such as elements 214-218, and one or
more clocks 240 which may provide temporal data, for example, one
or more sensors 230 which may provide location data, motion data
(e.g., rate of motion) and other data associated with movement
(e.g., of traveler 101), and computer system 200 need not include
all of the elements depicted. Display 214 may present a user
interface (UI), such as a graphical user interface (GUI) 214a.
Memory 206 may include computer executable programs and/or data
embodied in a non-transitory computer readable medium, such as an
operating system (OS) 206a, an application (APP) 206b, and
executable code (Ex-Code) 206c, for example. APP 206b may be an
application installed (e.g., from an APP store) or otherwise
present in a computing device, such as APP 126 in device 110 or APP
137 in device 113, for example. APP 137 may be installed in device
113 after proprietor 103 has opted to join the electronic exchange.
APP 137 and/or APP 126 may be configured to use VoIP calls for
future communications between callers and callee (e.g., traveler
101 and proprietor 103).
[0036] According to some examples, computer system 200 performs
specific operations by one or more processors 204 executing one or
more sequences of one or more instructions stored in system memory
206. Such instructions may be read into system memory 206 from
another non-transitory computer readable medium, such as storage
device 208 or disk drive 210 (e.g., a HDD or SSD). In some
examples, circuitry may be used in place of or in combination with
software instructions for implementation. The term "non-transitory
computer readable medium" refers to any tangible medium that
participates in providing instructions and/or data to processor(s)
204 for execution. Such a medium may take many forms, including but
not limited to, non-volatile media and volatile media. Non-volatile
media includes, for example, optical, magnetic, or solid state
disks, such as disk drive 210. Volatile media includes dynamic
memory, such as system memory 206. Common forms of non-transitory
computer readable media includes, for example, floppy disk,
flexible disk, hard disk, SSD, magnetic tape, any other magnetic
medium, CD-ROM, DVD-ROM, Blu-Ray ROM, USB thumb drive, SD Card, any
other optical medium, punch cards, paper tape, any other physical
medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any
other memory chip or cartridge, or any other medium from which a
computer may read.
[0037] Sensor(s) 230 may include but are not limited to one or more
inertial sensors (e.g., an accelerometer, a multi-axis
accelerometer, a gyroscope, a magnetometer, etc.), an altimeter,
and a barometer, for example. One or more sensors in sensor(s) 230
may be used to determine location data for a device that includes
computer system 200 and/or is in communication with computer system
200 (e.g., a client device, a traveler device, a proprietor device,
a smartphone, a merchant device, an owner device, a tablet, a pad,
a laptop, PC, a wireless device, a portal computing device, a
computing device, a networked computing device, a platform, a
backend service, etc.). One or more of the memory 206, storage
device 208, or disk drive 210 may be accessed as a data store for
location data from sensor(s) 230 or other systems in communication
(e.g., via communications interface 212) the computer system 200.
Location data may be communicated to/from the computer system 200
via one or more of the wireless transceivers 213. Sensors 230 may
include a GPS integrated circuit (IC) 233 configured to communicate
with one or more GPS satellites 187 and/or other sources of
geolocation data that may be used to calculate position of a
computing device (e.g., 110 and/or 113) and to calculate other
metrics such as distance traveled, ETA, etc., for example.
[0038] For example, radio frequency signal sources including but
not limited to GPS satellite signals (e.g., signals 191 from one or
more GPS satellites 187), terrestrial location transmitters (e.g.,
one or more cellular towers), WiFi signals, WiMAX signals, WiFi
routers, WiFi access points, Bluetooth signals (e.g., Bluetooth
beacons), near field communication signals, iBeacons, data from
external resource 199, and platform 150. Other signal and/or data
sources for location data may include but are not limited to audio
signals (e.g., ultrasonic signals) and signals and/or data
generated by location tracking software (e.g., internal to and/or
external to computer system 200), for example. In some examples,
location data and/or signals may be communicated wireless
communications link (e.g., 191) and/or a wired communications link
(e.g., 193). Location data accessed by computer system 200 may
include but is not limited to a location history data base (e.g.,
147) and location data 177, for example. The location data may be
updated, revised or otherwise change on a dynamic basis as the
guest device 110 moves around in areas around event or other
activity.
[0039] Instructions may further be transmitted or received using a
transmission medium. The term "transmission medium" may include any
tangible or intangible medium that is capable of storing, encoding
or carrying instructions for execution by the machine, and includes
digital or analog communications signals or other intangible medium
to facilitate communication of such instructions. Transmission
media may include coaxial cables, copper wire, and fiber optics,
including wires that comprise bus 202 for transmitting a computer
data signal or other signals (e.g., from hardware or circuitry). In
some examples, execution of the sequences of instructions may be
performed by a single computer system 200. According to some
examples, two or more computer systems 200 coupled by communication
link 220 (e.g., LAN, Ethernet, PSTN, USB, or wireless network) may
perform the sequence of instructions in coordination with one
another. Computer system 200 may transmit and receive messages,
data, and instructions, including programs, (i.e., application
code), through communication link 220 and communication interface
212. Received program code may be executed by processor 204 as it
is received, and/or stored in disk drive 210, or other non-volatile
storage for later execution. Computer system 200 may optionally
include a wireless transceiver 213 coupled with the communication
interface 212 and coupled 215 with an antenna 217 for receiving and
generating RF signals (191, 221), such as from a WiFi network,
WiMAX network, BT radio, Cellular network, networked computing
resources, external resource 199, client devices (e.g., 110), owner
devices (e.g., 113), near field communication (NFC), satellite
network, data storage network, or other wireless network and/or
wireless devices, for example. Examples of wireless devices (e.g.,
client devices) may include but is not limited to those depicted in
FIGS. 1, and 3-6. Communications interface 212 may be coupled 222
with data storage external to computer system 200. Communications
interface 212 may be coupled 193 with external resources and/or
systems, such as those depicted in FIGS. 1, and 3-6, for example.
Computer system 200 may be used to implement a computing device
(e.g., 110, 113), a portal computing device (e.g., 130, 177), a
networked computing device (e.g., 1053, 1055, 1059, 1080), the
platform 150, and external resource (e.g., 199), for example.
[0040] Processor(s) 204 may be coupled 202 with signals from
circuitry or other hardware systems of computer system 200. For
examples, signals from clock 240, sensors 230, GPS IC 233, and
communications interface (e.g., via wireless transceivers 213) may
be processed by processor 204 and/or other circuitry to calculate
an estimated time of arrival of the device 110 (e.g., due to motion
of traveler 101 carrying device 110) at an event in geographic
region or location associated with a stay at a vacation rental,
rental unit, or other events or activities. The ETA may be
calculated based on time data from clock 240 and one or more of
location data from GPS IC 233 or terrestrial sources such as
cellular networks 177 and/or wireless access points 130, speed data
(e.g., scalar data), or velocity data (e.g., vector data). Speed or
velocity data may be calculated from signals from sensors 230 and
changes in location data (e.g., from 130, 177, 233) as traveler 101
and their device 110 move relative to some event (e.g., a
restaurant) or other reference point. Rate of travel (e.g.,
distance traveled per unit of time) may be calculated using signals
from clock 240, sensors 230 and/or location data and/or signals
from one or more of GPS IC 233, cellular networks 177, or wireless
access points 130.
[0041] Moving now to FIG. 3 where an example 300 of a sequence
performed by a platform 150 to connect a call from a traveler
device 110 to a proprietor device 113 is depicted. In FIG. 3, upon
selection 101s of icon 119p, traveler device 110 may communicate
the phone number associated with "TapeOle" to platform 150 (e.g.,
via APP 126). Upon receiving data representing the phone call to
"TapaOle", platform 150 may perform a sequence denoted as 301A,
where sequence 301A communicates a message to the traveler 101 via
traveler device 110 that notifies the traveler 101 that the call to
"TapeOle" is being connected (e.g., the phone call to "TapeOle" has
been placed but not yet received by proprietor device 113) as
described above in reference to dashed line A in FIG. 1. Prior to
connecting the phone call, platform 150 may perform a sequence
denoted as 303B, where sequence 303B notifies the proprietor (or an
agent for proprietor 103) via proprietor device 113 that an
incoming call is from a potential customer, the call is being
provided by an electronic exchange, and invites the proprietor 103
to consider joining the electronic exchange as described above in
reference to dashed line B in FIG. 1.
[0042] Subsequent to communicating the message and invitation to
join, platform 150 may Connect the traveler 101 as caller with the
proprietor 103 as callee as described above in reference to dashed
line C in FIG. 1. For example, upon connection of the call,
proprietor 103 may answer the call (e.g., pick-up the call) as
denoted by 305C, traveler 101 may request a reservation as denoted
by 307C, proprietor 103 may confirm the reservation as denoted by
309C, and traveler 101 may conclude the conversation as denoted by
311C. The conversations, messages, and invitations depicted are
non-limiting examples and different conversations, messages, and
invitations may be used.
[0043] A delay (e.g., in units of time) between the traveler 101
placing the call (e.g., dashed line A) by activating 101s the icon
119p and the proprietor 103 being connected (e.g., dashed line C)
with the traveler's 101 call may be in a range from about 3 seconds
to about 15 seconds, for example. Therefore, function MSG/Delay in
platform 150 may delay connection of caller and callee by some
finite amount of time that may be dependent on the circumstances of
each phone call, such as network latency, network availability,
network traffic, time it takes for the callee to answer or pick-up
the call on the telephone or other device 113, or other factors.
One or more telephony functions may be implemented internal to
platform 150 as depicted in FIG. 1, may be implemented by an
external system (e.g., external resource 199 in FIG. 3) or both. As
one example, platform 150 may implement one or more of A-C using
VoIP functions provided by external system 199.
[0044] Turning now to FIG. 4 where another example 400 of a
sequence performed by a platform 150 to connect a call from a
traveler device 110 to a proprietor device 113 is depicted. In FIG.
4, a search key (e.g., a search string) entered in search field
111s may yield several hits for activities that match the search
key. One of the activities of interest to traveler 101 may be
selected 101s to expand the search result rN. Subsequent selection
101s by the traveler 101 of icon 119p may activate APP 126 to
communicate data representing the phone number associated with the
selected icon 119p and a phone number and/or other address
associated with traveler device 110 to platform 150. For example,
platform 150 may be configured to execute a telephony function 450
operative to: (a) use the data representing the phone number and/or
address of traveler device 110 to establish a connection between
platform 150 and traveler device 110 (e.g., dashed line A) to
communicate a message 401A "your call to . . . is being connected!"
to traveler 101 via device 110; (b) to use the data representing
the phone number associated with the selected icon 119p to
establish a connection between platform 150 and the proprietor
device 113 (e.g., dashed line B) to communicate a message 403B
"This call from a potential customer is being provided by an
Electronic Exchange--please consider joining the Electronic
Exchange!" to proprietor 103 via proprietor device 113; and (c) use
the data representing the phone number associated with the selected
icon 119p and the data representing the phone number and/or address
of traveler device 110 to establish a connection between platform
150 and the traveler and proprietor devices (110, 113) (e.g.,
dashed line C) where conversation 405C and 407C between the
traveler 101 and proprietor 103 may proceed (e.g., to make a
reservation, appointment, order goods or services, etc.). In the
example 400, the telephony function 450 may be a VoIP communication
between platform 150 and devices 110 and 113. The telephony
function 450 may be internal to platform 150, external to platform
150 or both. In addition to a unique phone number associated with
the traveler device 110 and/or proprietor device 113, a unique
address or ID, if any, for the traveler device 110, the proprietor
device 113 or both, may include but is not limited to a wireless
device address or ID, a MAC address, Bluetooth address, IP address,
SSID or other types of addresses assigned to a computing device,
for example. Other telephony functions or combinations of telephony
functions may be used to establish connections and communications
between the platform 150 and the devices 110 and 113, and the
present application is not limited to a VoIP implementation.
[0045] Referring now to FIG. 5 where examples 500 of information
associated with a message that may include an invitation
communicated to a proprietor device 113 are depicted. After
receiving the message and invitation 403B associated dashed line B,
traveler 103 may receive other messages and/or information from
platform 150 in connection with dashed line B or at some later time
after the traveler 110 and proprietor 103 have communicated with
each other (e.g., dashed line C). Communication 503B may provide
(e.g., via audio or images) an application (e.g., APP 137) that may
be installed on device 113 to learn more about the electronic
exchange and/or a web site (e.g., a URL) where the proprietor 103
may learn more about the electronic exchange. Communication 505B
may inform the proprietor 103 that the electronic exchange has
generated leads for businesses like that of the proprietor 103.
Communication 507B may inform the proprietor 103 that the
electronic exchange has generated leads for businesses in the
proprietor's 103 location (e.g., in vicinity of the geographic
region or location of the stay of traveler 101). Communication 509B
may inform the proprietor that the electronic exchange has useful
information (e.g., from a traveler data base) on the customer that
is calling the proprietor and other potential customers. The
electronic exchange may have access to data indicating a number
and/or concentration of travelers, in addition to traveler 101,
located in the geographic region or location of the proprietor's
business, for example. Location data from traveler devices (e.g.,
like device 110), location data from a location data base (e.g.,
177L) or other sources of geo-location data may be accessed and
processed by platform 150 to determine the number and/or
concentration of other travelers located in the geographic region
or location of the proprietor's business. Communication 511B may
inform the proprietor 103 that electronic exchange members may
receive merchant ratings on customers (e.g., traveler 101) that
call (e.g., dashed line A) the proprietor 103. Platform 150 may
maintain and/or have access to a data store that may include
customer ratings by merchants who conducted business with the
customers being rated. The merchant ratings may be used to vet,
vouch for or otherwise inform the proprietor 103 of the advantages
or disadvantages of doing business with the customer. Communication
511B may include data representing the merchant ratings on one or
more customers and that data may be used by the proprietor 103 to
determine what action to take in regards to a customer (e.g.,
refusing to accept a customer's call if the merchant ratings are
low--two stars or less). Communication 511B may include data
representing the merchant ratings on one or more customers that are
present in the region and/or location around a proprietors business
or who will be present at a future time in the region and/or
location around a proprietors business (e.g., based on data
representing stay data for a customer or traveler, such as check-in
and checkout times/dates). Information on customers included in
communications 511B may be used to give electronic exchange members
advance notice on potential customers and/or merchant ratings on
those potential customers. Advanced notice may be used by a
proprietor to pre-screen customers (e.g., based on merchant
ratings, demographic data, etc.) the proprietor is willing to
conduct business with and/or to send electronic messages (e.g.,
push messages, email, text, tweet, IM, SMS) to in order to solicit
their patronage.
[0046] Communication 513B may offer to generate access credentials
(e.g., user name and password) to the proprietor 103 in return for
joining the electronic exchange. The access credentials may be
generated by the platform 150 and may be temporary access
credentials that may later be changed by the proprietor 103. A
biometric device, such as a biometric finger print scanner 518 of
device 113 may be used as an access credential or as part of an
access credential that is accepted by platform 150 (e.g., to allow
data communications between platform 150 and its resources and
device 113). Communications 503B-513B may be communicated via audio
531 on a speaker 533 of device 113 or may be presented visually on
a screen 515 of device 113 or on a screen of another computing
device (e.g., a laptop computer).
[0047] APP 137, if installed by the proprietor 103 on a suitable
computing device (e.g., device 113) may present icons or other
images on a display 115 of the device 113. Initially, prior to the
proprietor 103 joining the electronic exchange, some of the icons
(e.g., 522-528) may be altered in appearance (e.g., grayed out) to
indicate they may not be selected or otherwise activated until the
proprietor 103 has taken action to become a member of the
electronic exchange, by selecting a "Join Electronic Exchange" icon
520, for example, and performing additional steps, if any, to
establish membership. In FIG. 5, the "Join Electronic Exchange"
icon 520 is depicted a in black outline, as opposed to the gray
outline of icons 522-528 to indicate icon 520 is selectable by the
proprietor 103 and may be activated by the proprietor 103 to join
the electronic exchange.
[0048] Subsequent to the proprietor 103 joining the electronic
exchange, icons 522-528 may become active for selection (e.g., via
a finger of a hand 103h of proprietor 103) by the proprietor 103.
As one example, selection of icon 526 may present information on
merchant ratings (e.g., based on a one-star to five-star rating
system) on a customer (e.g., a traveler) who is calling the
proprietor 103 (e.g., dashed line A). Selection of icon 524 may
provide the proprietor 103 with customer profile data (e.g.,
demographic data, spending pattern data, preferences for
activities, family members or others who typically travel with the
customer, preferences for food and drink, preferences for rental
accommodations, etc.). Proprietor 103 may interact 103i with device
113 (e.g., via display 115) to select one or more of the icons and
APP 137 may present information on display 115 in response to
selections by the proprietor 103. As another example, information
presented to the proprietor 103 may include an indication that a
customer is a past customer (e.g., from last summer) or a traveler
returning to the area for another vacation. That information may be
used by the proprietor in determining whether or not to accept a
call from the customer/traveler or to reach out in a proactive
manner to solicit the patronage of the customer/traveler via a
phone call, electronic message, or push notification, for
example.
[0049] One or more of APP 137, device 113 or platform 150 may
include a voice interface configured to convert speech by
proprietor 103 into text or other data. The voice interface may be
configured to provide the information described above for
503B-513B, for example. The voice interface may be configured to
convert speech by proprietor 103 into an action or actions, such as
selecting one of the icons presented on display 115 (e.g., a verbal
command or sentence by proprietor 103 to join the electronic
exchange).
[0050] Platform 150 may include a function "Lead Tally+" (e.g., a
counter implemented in circuitry) to count or otherwise tally the
number of leads generated by the platform 150 in regards to
activities in the geographic region or location of the stay for
traveler 101, other travelers (e.g., in the same geographic region
or location of traveler 101) or both. The lead tally may be
categorized in any number of ways, including but not limited to a
tally of leads for businesses like those of proprietor 103, a tally
of leads specifically for the proprietor's business 140, leads for
other businesses in the same geographic region or location as the
proprietor's 103 business 140, etc. just to name a few.
[0051] Attention is now directed to FIG. 6 where one example of a
flow diagram 600 for connection a phone call from a caller
computing device with a callee device using a platform is depicted.
At a stage 602, data representing a phone call to a callee device
(e.g., device 113) may be received from a caller computing device
(e.g., device 110). The data representing the phone call may be
processed by one or more processors that execute the APP 126 on the
traveler computing device 110, for example. APP 126 may format the
data representing the phone call into a format configured to be
received by platform 150, such as one or more data packets and
associated fields, for example. Circuitry in device 110 may convert
analog speech signals from traveler 101 (e.g., the traveler's
voice) into a digital format that is accessed by APP 126 for
communication to platform 150 (e.g., via a wireless system of
device 110). Selection 101s of icon 119p on display 111 of device
110 may activate transmission of the data representing the phone
call from the device 110 to platform 150 (e.g., via 191 or 193).
APP 126 may communicate the data representing the phone call (e.g.,
data for phone number 777-777-777) with one or more systems of
device 110 (e.g., a communication interface and/or processor) to
cause transmission of the data representing the phone call to the
platform 150 via one of the communications links (191, 193) of
device 110 (e.g., using WiFi or Cellular communications). APP 126
may communicate with platform 150 via the communications links
(191, 193) to determine that the data representing the phone call
from the device 110 has been received by the platform 150. APP 126
may access data representing the sequence 301A of FIG. 3 (e.g., a
digital audio recording) and use that data to playback the message
stating the call is being connected using one or more systems of
device 110, such as a speaker of device 110. A DSP and/or
digital-to-analog converter in device 110 may be accessed by APP
126 to convert the message from a digital domain to an analog
domain for playback on the speaker. Similarly, APP 126 may access
the DSP and/or an analog-to-digital converter in device 110 to
convert analog speech signals (e.g., captured by a microphone of
device 110) into digital signals (e.g., for VoIP communications)
that are communicated to platform 150. As one example, the message
for the sequence 301A may be stored in memory (e.g., non-volatile
memory) in device 110.
[0052] At a stage 604, data representing a message stating the
phone call to the callee is being connected may be transmitted to
the caller computing device (e.g., sequence A of FIGS. 1, 3 and 4).
The data representing the message may be an audio recording (e.g.,
a digital audio file) played back in the analog domain over a
speaker or other transducer on the caller computing device 110, for
example. In another example, the data representing the message may
be an image presented on a display 111 of device 110, such as an
icon, a text-based message, or the like. In yet another example,
the data representing the message may include one or more of audio,
video, and images. A communications interface of device 110 may
receive the data representing the message via one of the
communications links (191, 193) of device 110 (e.g., using WiFi or
Cellular communications).
[0053] At a stage 606 a communications link (191,193) may be
established with a callee device (e.g., device 113) using the data
representing the phone call (e.g., data for phone number
777-777-777). The telephony function of platform 150 may be
configured to determine which internal and/or external functions to
use to establish the communications link, such as VoIP or POTS, for
example. In some examples, the callee device may not be a computing
device (e.g., a wireless computing device) or may be a computing
device that may not be configured to receive directly or indirectly
a VoIP or other form of communications. Therefore, platform 150 may
select one or more appropriate telephony functions to effectuate
the establishment of the communications link, such as PBX or DID,
for example.
[0054] At stage 608 data representing a message stating that a call
from a callee (e.g., the traveler 101, a potential customer, etc.)
is being provided by an electronic exchange and making an offer for
the callee to join the electronic exchange may be communicated over
the communications link. The message and/or invitation to join may
be a audio data that is played back or data representing other
forms of content including but not limited to analog content,
digital content, multi-media content, audio content, image content,
and video content, for example.
[0055] At a stage 610 a communications link (e.g., 191, 193) may be
established between the callee device (e.g., 113) and the caller
computing device (e.g., 110) to connect the phone call that was
sent (e.g., transmitted) from the caller computing device to the
callee device. Different communications links may be used to
connect the caller computing device with the callee device. For
example, platform 150 may connect with caller computing device via
VoIP and connect with the callee device via POTS. As another
example, platform 150 may connect with caller computing device and
the callee device via VoIP. As yet another example, platform 150
may connect with caller computing device and the callee device via
a Cellular network (e.g., 177). One or more portal computing
devices (e.g., 177, 130) may be used to route or otherwise connect
the caller computing device with the callee device.
[0056] At a stage 612, data representing a conversation (e.g.,
between caller 101 and callee 103) may be transmitted over the
communications link established between the caller and callee
devices. The data representing the conversation may be in the
analog domain, the digital domain or both. Telephony function or
other circuitry accessed by platform 150 may convert data (e.g.,
conversation between caller and callee or messages sent to caller
and/or callee) from the analog domain to the digital domain or
vice-versa, for one or more of the stages 602-612, for example.
[0057] Moving now to FIG. 7 where one example of a flow diagram 700
for an application (e.g., APP 126) on a caller computing device
(e.g., device 110) that connects a phone call (e.g., sequence A)
from the caller computing device with a callee device (e.g., device
113) using a platform (e.g., 150). At a stage 702 data representing
a phone number to be called may be received from a computing device
(e.g., by APP 126 via display 111 of device 110). The data
representing the phone number to be called may be received from an
interface between a computing device and input system of the
computing device, such as a touch screen (e.g., a dial pad, an icon
or an image on display 111) or a voice interface (e.g., via speech
signals output by a microphone 133, see FIG. 1) that converts
signals from a microphone (e.g., from human speech) into text,
numbers or some other form of data. The data representing the phone
number to be called may be a number selected from a larger set of
phone numbers based on search results obtained from a search of a
data store including data on a pool of travelers. For example, the
pool of travelers may have a connection (e.g., from past and/or
present visits) with the region or location where the traveler 101
is located. The data on the pool of travelers may include searches
by travelers in the pool for activities specific to the region or
location (e.g., restaurants). Results from those searches may be
included in search results for searches by traveler 101. As one
example, the data on the pool of travelers may include search
results for activities that were rated at 4-stars or higher by
travelers in the pool. Accordingly, search results (e.g., r1-r5)
may include hits for activities that were rated highly (e.g.,
4-stars) by other travelers in the pool.
[0058] At a stage 704 a communications link (e.g., wired and/or
wireless) may be established between the computing device and the
platform using a communications interface circuit (e.g., a radio
frequency (RF) system) of the computing device (e.g., for wired or
wireless communication). For example, the communications link may
be a wireless link via a one or more wireless protocols, including
but not limited to WiFi (e.g., IEEE 802.x), a Bluetooth (BT), near
field communication (NFC), and cellular (e.g., 2G, 3G, 4G, etc.),
just to name a few. Wired communications links may include but are
not limited to universal serial bus (USB), IEEE 1394, and local
area network (LAN), for example.
[0059] At a stage 706 the data representing the phone number to be
called may be transmitted to the platform using the communications
link. An application or other hardware and/or software on the
computing device may format or convert the data representing the
phone number into one or more formats the platform is configured to
receive, such as in one or more data packets or other data
structures or formats, for example.
[0060] At a stage 708, data representing a message to a caller
(e.g., the traveler, user, customer, etc. that caused the phone
number to be called), the message stating the phone call is being
connected, may be transmitted by the platform and may be received
via the communications link. The actual content of the message
(e.g., audio content and/or visual content) may be application
dependent and is not limited to the examples described herein.
[0061] At a stage 710, optionally, the message received at the
stage 708 may be formatted for presentation on a hardware system
(e.g., display 111 and/or a speaker 131, see FIG. 1) of the
computing device (e.g., 110). In some examples, data for the
message may be in a digital format and may be converted into an
analog format, such as for driving an amplifier coupled with a
speaker in an audio system of the computing device. In other'
examples, data for the message may be in a digital format and may
be formatted into a different digital format, such as for display
on a display of the computing device.
[0062] At a stage 712, the formatted message may be presented on a
hardware system of the computing device (e.g., display 111 and/or
speaker 131 of device 110). The type of data of the formatted
message may determine (e.g., by a processor of the computing
device) which hardware system the formatted message is presented
on, such as a display system for image data, an audio system for
audio data, a Bluetooth system, or some combination of hardware
systems such as display system and an audio system or a display
system and a Bluetooth system, for example.
[0063] At a stage 714, data transmitted by the platform and
representing a conversation between the caller and a callee who
receives a phone call from the caller, may be received via the
communications link. The data representing the conversation may be
transmitted upon establishing a connection between the platform and
a callee device. The callee device may be a computing device (e.g.,
device 113). In other examples, the callee device may not be a
computing device (e.g., a land-line telephone).
[0064] At a stage 716, optionally, the data representing the
conversation may be formatted for presentation on a hardware system
of the computing device, such as was described above for the stage
710, for example. As was described above in reference to the stage
710, formatting of the data for the conversation may be optional,
and may be executed in those cases were the data being received is
in a format that is different than the format the hardware system
requires for presentation of data it receives (e.g., from a
processor or application in the computing device).
[0065] At a stage 718, the formatted data for the conversation may
be presented on a hardware system of the computing device, such as
was described above for the stage 712, for example.
[0066] Attention is now directed to FIG. 8 where one example of a
block diagram 800 for a telephony function of a platform is
depicted. A bus 801 or similar structure may couple one or more
systems, circuitry, or other functions of platform 150. Platform
150 may include (e.g., in COMS) an input/output (I/O) system
configured to transmit and receive data communications from
internal (e.g., internal to platform 150) and external systems
(e.g., devices 110, 113, 130, 177, and 199) via wired 193 and/or
wireless 191 communications links. A RF system 830 may include
circuitry for one or more radios coupled 831 with one or more
antenna. RF system 830 may be coupled 821 with I/O 820 to
communicate data 191 received and/or transmitted using the one or
more radios. For example, RF system may include a plurality of
radios that communicate using different protocols, such as WiFi,
Bluetooth, Cellular or NFC. One or more processors 810 (e.g., DSP,
.mu.C, .mu.P, ASIC, FPGA, etc.) may be coupled with other systems
via bus 801, such as memory 840, a call format converter 850, and a
connection manager 860. Memory 840 may include one or more
algorithms 841 and/or application program interfaces 843 that are
embodied in a non-transitory computer readable medium configured to
execute on processors 810 or other compute engines. Processors 810
may include one or more servers, laptop computers, or networked
computers that are accessed by platform 150 (e.g., see 1055, 1053
and 1059 in FIG. 10).
[0067] Connection manager 860 may include a connection selector 863
configured to receive a signal (e.g., from bus 801) and select a
sequence connection type between platform 150 and device 110 and/or
device 113 during sequences A-C. The sequence connection type for
sequence A is denoted as A 862, for sequence B is B 864 and for
sequence C is demoted as C' 866 and C'' 868. Sequence C may have
two different connections types due to differences in how devices
110 and 113 may communicate with platform 150. As one example,
during sequence C when the platform 150 connects the traveler's
device 110 with the proprietor's device 113, the sequence
connection type C' may represent a server call connection between
device 110 (e.g., via APP 126) with platform 150; whereas, the
sequence connection type C'' may represent a VoIP call connection
between proprietor device 113 and platform 150. Traveler 101 and
proprietor 103 may be unaware of the different connection
technologies being used to connect the call during sequence C. As
another example, the sequence connection type C' may represent a
VoIP call connection between device 110 (e.g., via APP 126) with
platform 150; whereas, the sequence connection type C'' may
represent a POTS call connection between proprietor device 113 and
platform 150. In some examples, C' and C'' may be the same
connection types, such as VoIP between the platform 150 and devices
(110, 113), for example.
[0068] During a sequence, connection selector 863 may connect the
data or signal from a device (110, 113) with the appropriate
telephony function of platform 150, such as VoIP, POTS, Cellular,
WiFi, PBX, etc. As one example, hardware and/or software that
implements VoIP may be connected with A 862 during sequence A when
communications between platform 150 and device 110 are VoIP based.
As another example, a server call from device 110 during sequence A
may connect a server or other compute engine of platform with
signal and/or data from A 862. As yet another example, connection
selector 863 may connect signals and/or data from device 113 during
sequence B 864 and during sequence C'' 868 with POTS hardware
accessed by platform 150; whereas, data and/or signals for device
110 may be connected with VoIP resources of platform 150 for
sequence A 862 and C' 866.
[0069] Call format converter 850 may include a caller converter 852
(e.g., for device 110 signals and/or data) and a callee converter
854 (e.g., for device 113 signals and/or data. Call format
converter 850 may include circuitry and/or software to convert
different caller and/or callee signals and/or data into a format
that may be received by a device. For example, if device 110
communicates with platform 150 via VoIP and device 113 communicates
with platform 150 using POTS, then caller converter 852 may convert
digital signals from device 110 to analog signals compatible with
device 113. On the other hand, callee converter 854 may convert
analog signals from device 113 to digital signals compatible with
device 110. Circuitry including but not limited to
analog-to-digital converters (ADC), digital-to-analog converters
(DAC), pulse-code-modulation converters (PCM), digital signal
processors (DSP), or the like may be used for caller and/or callee
converters (852, 854). Call format converter 850 and/or connection
manager 860 may be included in a telephony function and/or system
of platform 150.
[0070] FIG. 9 depicts one example of a flow diagram 900 for a
telephony function of platform 150. At a stage 902 a communications
link (e.g., via COMS or 1080) between the platform 150 and a device
(e.g., 110 and/or 113) may be established for communications
between the device and the platform 150. At a stage 904 a
determination may be made as to whether or not the device is a
caller device (e.g., 110). If the device is a caller device, then a
YES branch may be taken and flow 900 may transition to a stage 906.
On the other hand if the device is not a caller device, then a NO
branch may be taken and flow 900 may transition to a stage 903.
[0071] At the stage 906 a determination may be made as to whether
or not information being received at the platform 150 by the caller
device (e.g., data transmitted 191 or 193 by device 110) is
compatible with a format for a callee device (e.g., the device
specified by data in the phone number and/or associated with icon
119p). If a NO branch is taken, then flow 900 may transition to a
stage 908 where the caller information may be formatted to be
compatible with the format for the callee device (e.g., device
113). For example, call format converter 850 in FIG. 8 may convert
using caller converter 852, information from the caller device into
a format compatible with the callee device (e.g., convert digital
information to analog information). If a YES branch is taken from
the stage 906, then flow 900 may transition to a stage 910. At the
stage 910 a sequence connection type may be determined for the
caller device. For example, Connection manager 860 in FIG. 8 may
detect the sequence connection type for information being
communicated between platform 150 and the caller device, such as a
server call, a VoIP, etc. At a stage 912 a telephony system of
platform 150 may be selected based on the detected sequence
connection type. For example, if the caller device 110 is
communicating with platform 150 via a server call (e.g., from APP
126), then a computing resource of platform 150 may be selected as
the telephony system. As another example, if the caller device 110
is communicating with platform 150 using a VoIP protocol, then VoIP
telephony function (e.g., hardware and/or software of platform 150)
may be selected as the telephony system. At a stage 914 information
may be communicated between the platform 150 and the caller device
(e.g., sequence A in FIG. 1). At a stage 916 a determination may be
made as to whether or not to connect the caller device (e.g., 110)
and a callee device (e.g., 113) with each other.
[0072] If the NO branch was taken from the stage 904, then flow 900
may transition to a stage 903 where a determination may be made as
to whether or not the device is a callee device (e.g., 113). If a
NO branch is taken from the stage 903, then flow 900 may transition
to another stage, such as back to the stage 902, for example. If
the YES branch is taken from the stage 903, then flow 900 may
transition to a stage 905 where a determination may be made as to
whether callee information received at the platform is compatible
with a caller device information format. If a NO branch is taken
from the stage 905, then flow 900 may transition to a stage 907
where the format of the callee information may be formatted (e.g.,
via call format converter 850 of FIG. 8) to be compatible with the
information format of the caller device. If the YES branch is taken
from the stage 905, then flow 900 may transition to a stage 909. At
the stage 909 a sequence connection type may be determined for the
callee device. For example, Connection manager 860 in FIG. 8 may
detect the sequence connection type for information being
communicated between platform 150 and the callee device, such as a
server call, a VoIP, etc. At a stage 911 a telephony system of
platform 150 may be selected based on the detected sequence
connection type for the callee device (e.g., using connection
manager 860 of FIG. 8). At a stage 913, information may be
communicated between the platform 150 and the callee device (e.g.,
sequence B in FIG. 1).
[0073] At the stage 916 a determination may be made as to whether
or not to connect the caller and callee devices (e.g., for sequence
C of FIG. 1). If a NO branch is taken from the stage 916, then flow
900 may transition to another stage, such as the stage 902, for
example. If a YES branch is taken from the stage 916, then flow 900
may transition to another stage, such as the stage 920. At the
stage 920 the selected telephony systems for the caller and callee
devices may be connected and communications between the caller and
callee devices may proceed via the communications interface using
the appropriate information formats for the caller and callee
devices. The stage 920 may implement sequence C of FIG. 1, for
example. As one example, caller device 110 may communicate with
platform 150 using a server call and callee device 113 may
communicate with platform 150 using VoIP. The traveler 101 and
proprietor 103 may be unaware that their conversations during
sequence C are being handled or otherwise routed through different
telephony systems of platform 150 and/or may be unaware that the
platform 150 is handling communications between caller and callee
devices sans a direct connection between device 110 and 113 are a
result of traveler 101 selecting icon 119p to initiate the phone
call.
[0074] Reference is now made to FIG. 10 where one example of a
block diagram 150 for a platform is depicted. Platform 150 may be
configured to perform hardware and/or software functions of an
electronic exchange for proprietors 103 and other merchants,
business owners, etc. who are members of the electronic exchange or
may become members of the electronic exchange (e.g., by electing to
join 520 the electronic exchange). Platform 150 may be a platform
that includes a communications interface and data storage and
processing resources in communication with the communications
interface using wired 193 and/or wireless 191 communications links.
Platform 150 may be in wired 193 and/or wireless 191 communications
with other devices and systems, including but not limited to
external resource 199 and its associated resources (e.g., compute
and data storage resources), one or more traveler devices 110, one
or more proprietor devices 113, and other computing devices, just
to name a few. Platform 150 may include resources in communications
with one another, that may include but are not limited to an
application program interface (API) 1041, executable code 1042, one
or more laptop computers 1059, one or more servers 1053, a
communications interface 1080 that may include wireless 191 (e.g.,
a wireless 1081 access point), and wired 193 links, firewall 1057,
one or more server farms 1055, data storage 1060, location data
1030 which may include location history data from traveler device
110 (e.g., a location history data base), event/activities data
1065 (e.g., for events in a geographic region or location which may
include the rental unit 120), credential data 1064 (e.g., WiFi
access point network name and SSID for access point 130, credential
for proprietors of the electronic exchange), proprietor data 1063
(e.g., proprietor contact information, location data, business
type, service type), traveler data 1061 (e.g., traveler
preferences, demographics, spending habits, information on traveler
device(s) 110, contact information, email address, addresses for
other electronic media/accounts, etc.), stay data 1066 (e.g.,
beginning/ending dates and/or times for a stay, rental unit
location, etc.), rental unit data 1020 (e.g., geographic region or
location, wireless access point 130 information, service required
at the rental such as cleaning, laundry, snow shoveling, etc.), and
electronic messages 1070 (e.g., email, tweets, text messages, SMS,
IM, which may be used in addition to or in place of phone call
sequences A, B, C). In some examples, data storage 1060 may include
one or more of the other above described data storage categories.
In other examples, data storage resources accessed by platform 150
may be external to platform 150 (e.g., positioned in external
resource 199). Traveler data 1061 may include data on travelers
having a granularity that may range from a global granularity for
all travelers to a local granularity, such as a subset of data on a
pool of travelers associated with a specific geographic region or
location, such as a pool of travelers having a connection with
geographic region or location the traveler 101 is presently located
in, for example.
[0075] One or more of the flows depicted in FIGS. 1-7 and 9 may be
implemented using hardware, circuitry, executable code 1042 and/or
API 1041, for example. For purposes of explanation, a computing
resource (e.g., 1053, 1055, 1059) depicted in FIG. 10 may be
referred to as a networked computing device and a data storage
resources may be referred to as data storage or a data store. For
example, data 119 may be received by networked computing resource
1053 via communications interface 1080. In some examples, a
computing device that transmitted the data 119 may be referred to
as a traveler device (e.g., 110) or a portal computing device
(e.g., 130, 177). As another example, data 123 from proprietor
device 113 may be received by networked computing resource 1053 via
communications interface 1080. In some examples, the data 123 may
include credential data for the proprietor device 113, that upon
verification, allows data communications access to platform 150
(e.g., after a proprietor 103 has become a member of the electronic
exchange and has been assigned access credentials). In some
examples, data 119 and/or 123 may comprise data from one or more of
sequence A, B or C (e.g., VoIP data, digital data or other data for
the caller and/or callee).
[0076] One or more traveler devices 110 and/or proprietor devices
113 may communicate (191, 193) with platform 150 via a Web Site/Web
Page 1080 (e.g., using a browser or application on a laptop, PC,
wireless device, smartphone, pad, tablet, touch screen device,
etc.). Information (117, 119) from traveler device 110 and/or
information (121, 123) from proprietor device 113 may be viewed,
entered, transmitted, received, or otherwise communicated (191,
193) between platform 150 and another device (e.g., 110, 113, etc.)
using Web Site/Page 1080. Data associated with rental unit 120 or
other events/activities in a geographic region or location may be
communicated via Web Site/Page 1080. Platform 150 may require
access be granted to a device (e.g., 110, 113, etc.) prior to
allowing data communication with the platform 150 via Web Site/Page
1080. In other examples, the phone call sequences A-C depicted in
FIGS. 1-5 may not require access credentials for the traveler
device 110 and/or proprietor device 113. Traveler device 110 and/or
proprietor device 113 may include a biometric sensor (e.g., see
fingerprint scanner 518 in FIG. 5) to verify access credentials for
data communications between platform 150 and traveler device 110,
for example and/or between platform 150 and proprietor device 113,
for example.
[0077] Location data 1030 may include locations (e.g., GPS data
and/or other geo-location data) associated with events/activities
(e.g., restaurants, shops, coffee houses, etc.) in a geographic
region or location (e.g., a city, town, resort) in approximately
the same locale as a rental unit (e.g., 120), for example. Examples
of locations around a rental unit may include but are not limited
to a park across the street from the rental, a cafe of coffee shop
down the street from the rental, etc. Examples of proprietor
locations may include location data associated with use of the
owner device 113, such as location data from cellular networks
(e.g., in the city or state the owner or a rental property or other
types of events lives in), WiFi networks, WiMAX networks, known
geo-location data for business, etc.
[0078] Event/activity data 1065 may include data for the stay at
rental unit 120, an entertainment venue, a bar, a grocery store, a
bakery, goods, services, business, restaurants, etc. that may be
promoted for traveler 101 to partake in (e.g., via platform 150) or
may be associated with activities the traveler 101 will likely
partake in during his/her stay at the at the rental 120 (e.g.,
based on traveler history, demographics, preferences, etc.).
[0079] Location data 1030 may include a location history data base.
The location history data base may include location data tracked
and stored over time based on various locations visited by traveler
101 with traveler device 110 that includes or has access to
internal/external sources of location data, such as satellite 187,
access points 130, cellular networks 177, etc. Validation of
location of a traveler 101 may include accessing data in location
data 1030, the location history data base included in 1030, or
both. In some examples, a computing device that communicates the
data 119 (e.g., device 110) may include location history data base
(e.g., 147) which may include the same or different data than the
location history data base in 1030. In some examples location data
in one of the location history data bases may be used to update
and/or replace location data in another location history data
base.
[0080] Credential data 1064 (e.g., access credentials, user name,
email address, password, etc.) may be a data store where access
data is retained for members of the electronic exchange. As another
example, credential data 1064 may include credentials for WiFi
access points (e.g., 130) located in a rental unit and/or in a
proprietors 103 business. Other forms of credentials may be
included in credential data 1064, such as access credentials for
traveler devices 110 and/or proprietor devices 113, for example.
Electronic messages 1070 may be a data store for incoming and/or
outgoing electronic messages, such as emails, push notifications,
push events, and electronic messages generated by one or more of
platform 150, proprietor 103, or traveler 101, for example.
Electronic messages 1070 may include data in 117, 121, 119 and 123,
for example. Electronic messages 1070 may be presented on a display
of device 110, 113, or web site/page 195, for example. Electronic
messages may be used in place of or in addition to phone calls
(e.g., sequences A-C). For example, one or more of the sequences
A-C may be replaced with an electronic message.
[0081] Rental unit data 1020 may include information on a rental
unit (e.g., event 120) that may be accessed by platform 150 to
determine businesses and/or services that may be of interest to a
traveler 101. Platform 150 may use the rental unit data to match
goods/services that may be needed by traveler 101 with
goods/services offered by proprietors in the geographic region or
location of the rental unit 120, such as amenities, rental unit
policies, pet polices, parking polices, rental address information,
electronic devices in the rental unit, appliances in the rental
unit, maintenance contact information, rental owner information,
workout/exercise facilities at the rental, just to name a few.
[0082] Proprietor data 1063 may include data about proprietors 103,
such as address and contact information, email accounts, data on
proprietor devices 113 (e.g., MAC address or other forms of device
ID, etc.), ratings on proprietors from other travelers and/or other
sources for review data, for example.
[0083] Traveler data 1061 may include data about travelers (e.g.,
101), such as addresses and contact information, email accounts,
traveler demographics, traveler preferences, spending habits,
spending power, data on traveler devices 110 (e.g., MAC address or
other forms of device ID, etc.), financial accounts for deposits,
payments, refunds, etc. Stay data 1066 may include stay dates,
check-in/check-out times/dates for a rental unit or hotel, location
data for a rental unit, for example.
[0084] Data storage 1060 may be used as a data store that may be
accessed by other components internal to and/or external to
platform 150. Platform 150 may include more or fewer resources than
depicted in FIG. 10 as denoted by 1052.
[0085] Platform 150 may share data processing and/or data storage
with external devices, such as traveler devices 110, owner devices
113, external resource 199, for example. As one example, hardware
systems (e.g., see FIGS. 2 and 11) circuitry, sensors 230, clock
240) of traveler device 110 may perform calculations, signal
processing or other electronic functions and communicate data
(e.g., via 119) to platform 150. For example, location data
resources of device 110 in conjunction with circuitry that receives
signals from sensors 230 and/or clock 240 may be used to determine
a rate of speed and direction (e.g., velocity), of traveler device
110, and data from that determination may be communicated (e.g.,
via 191 and 119) to platform 150. The data may be used to calculate
whether or not a traveler 101 is heading toward an event/activity
or away from an event/activity in a geographic region or location
of one or more proprietors 103. The data may be used to determine
if the traveler 101 will arrive at an event within (e.g., the 7:00
pm dinner reservation of 309C) a specified time set for the
event.
[0086] Although the foregoing examples have been described in some
detail for purposes of clarity of understanding, the
above-described conceptual techniques are not limited to the
details provided. There are many alternative ways of implementing
the above-described conceptual techniques. The disclosed examples
are illustrative and not restrictive.
* * * * *