U.S. patent application number 14/105010 was filed with the patent office on 2014-05-01 for system and method for providing text messaging confirmation.
This patent application is currently assigned to ShowingTime. The applicant listed for this patent is ShowingTime. Invention is credited to William Kellogg, Andrew Ofisher, Robert Overman, Timothy Perry, Scott Woodard.
Application Number | 20140122154 14/105010 |
Document ID | / |
Family ID | 50032793 |
Filed Date | 2014-05-01 |
United States Patent
Application |
20140122154 |
Kind Code |
A1 |
Kellogg; William ; et
al. |
May 1, 2014 |
SYSTEM AND METHOD FOR PROVIDING TEXT MESSAGING CONFIRMATION
Abstract
A method for providing confirmation of a request for a target
communicated using text messaging includes receiving, by a sending
system, a request for a target. The method further includes
selecting, by the sending system, a telephone number from a list of
telephone numbers, wherein a mapping is created between the
request, the selected telephone number, the target, and a target
contact. Additionally, the method includes sending, by the sending
system to the target contact using the selected telephone number, a
text message indicating the request for the target. Moreover, the
method includes receiving a reply message from the target contact
using the selected telephone number, and determining that the reply
message comprises a reply to the request for the target by
comparing the target contact and the selected telephone number for
the reply message to the mapping.
Inventors: |
Kellogg; William; (Austin,
TX) ; Ofisher; Andrew; (Chicago, IL) ; Perry;
Timothy; (Aurora, IL) ; Overman; Robert;
(Naperville, IL) ; Woodard; Scott; (Clarendon
Hills, IL) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
ShowingTime |
Chicago |
IL |
US |
|
|
Assignee: |
ShowingTime
Chicago
IL
|
Family ID: |
50032793 |
Appl. No.: |
14/105010 |
Filed: |
December 12, 2013 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
13492816 |
Jun 9, 2012 |
8649486 |
|
|
14105010 |
|
|
|
|
Current U.S.
Class: |
705/7.19 ;
455/466 |
Current CPC
Class: |
H04L 51/14 20130101;
H04W 4/12 20130101; G06Q 50/16 20130101; G06Q 10/1095 20130101 |
Class at
Publication: |
705/7.19 ;
455/466 |
International
Class: |
G06Q 10/10 20060101
G06Q010/10; G06Q 50/16 20060101 G06Q050/16; H04W 4/12 20060101
H04W004/12 |
Claims
1-23. (canceled)
24. A system for providing confirmation of a request for a target
communicated using text messaging, the system comprising: i) a
server including a processing device, a network interface coupled
to the processing device and adaptively coupled to a database, and
a server software application operating on the processing device;
ii) a first communication device adapted to connect the server over
a first network; iii) a second communication device adapted to send
and receive text messages and used by a target contact; iv) the
server software application adapted to: (1) receive a request for a
target from the first communication device over the network
interface; (2) select a telephone number from a list of telephone
numbers; (3) create a mapping between the request, the selected
telephone number, the target, and the target contact; (4) send to
the second communication device using the selected telephone
number, a text message indicating the request for the target over
the network interface; (5) receive a reply message from the second
communication device using the selected telephone number over the
network interface; and (6) determine that the reply message
comprises a reply to the request for the target by comparing the
target contact and the selected telephone number for the reply
message to the mapping.
25. The system of claim 24 wherein the request for the target is a
showing request for a real estate listing, and the target contact
comprises a listing contact.
26. The system of claim 24 wherein the request for the target is a
buyer lead for a real estate listing, and the target contact
comprises a buyer lead recipient.
27. The system of claim 24 wherein the request for the target
comprises an offer or a request for a different time for a showing
of a real estate listing.
28. The system of claim 24 wherein the server software application
is further adapted to determine a type of the reply message based
on content of the reply message.
29. The system of claim 28 wherein the server software application
is further adapted to determine that the type of the reply message
is a confirmation of the request for the target.
30. The system of claim 28 wherein the request for the target
comprises an inquiry for a status of a showing of a real estate
listing.
31. The system of claim 28 wherein the server software application
is further adapted to send at least one of an e-mail, a voice
message, a telephone call, or a separate text message to the second
communication device indicating that the request for the target is
confirmed.
32. The system of claim 24 wherein the reply message comprises a
reply text message.
33. The system of claim 24 wherein the reply message comprises a
reply telephone call made to the selected telephone number.
34. The system of claim 33 wherein the server software application
is further adapted to direct the telephone call to a call center,
wherein the call center determines that the reply message comprises
the reply to the request for the target.
35. The system of claim 24 wherein the list of telephone numbers
comprises a prioritized list of telephone numbers; and the server
software application selects by determining a highest priority
available telephone number on the prioritized list of telephone
numbers.
36. The system of claim 35 wherein the prioritized list of
telephone numbers comprises a numerically ordered list of telephone
numbers.
37. The system of claim 24 wherein the mapping comprises an end
time, and the server software application is further adapted to
expire the mapping after a fixed amount of time from the end
time.
38. The system of claim 24 wherein the mapping comprises an end
time, and the server software application is further adapted to
expire the mapping before the end time.
39. The system of claim 38 wherein the server software application
is further adapted to: i) receive a subsequent request for the
target from the first communication device over the network
interface; ii) determine that there is an absence of available
telephone numbers in the list of telephone numbers to select a
telephone number; iii) determine that the mapping has an oldest
request time, and select the telephone number of the mapping,
wherein the mapping is expired before the end time and a new
mapping is created between the subsequent request, the selected
telephone number, the target, and the target contact; and iv) send,
to second communication device using the selected telephone number,
a text message indicating the subsequent request for the target
over the network interface.
40. The system of claim 24 further comprising a real estate showing
appointment scheduling system wherein the real estate showing
appointment scheduling system includes the server.
41. A confirmation system for providing confirmation of a request
for a target communicated using text messaging, the confirmation
system comprising: v) a real estate showing appointment scheduling
system including a server and a database, wherein the server
includes a processing device, a network interface coupled to the
processing device and adaptively coupled to the database, and a
real estate showing appointment scheduling server software
application operating on the processing device; vi) a first
communication device adapted to connect the server over a first
network; vii) a second communication device adapted to send and
receive text messages; viii) the server software application
adapted to: (1) receive a showing request for a real estate listing
from the first communication device over the network interface; (2)
determine a listing contact for the real estate listing, wherein
the second communication device is adapted to be used by the
listing contact; (3) select a text messaging number from a list of
text messaging numbers; (4) create a mapping between the showing
request, the selected text messaging number, the real estate
listing, and the listing contact; (5) send to the second
communication device using the selected text messaging number, a
text message indicating the showing request over the network
interface; (6) receive a reply message from the second
communication device using the selected text messaging number over
the network interface; and (7) compare the listing contact and the
selected text messaging number for the reply message to the mapping
to match the reply message to the showing request for the real
estate listing.
42. The confirmation system of claim 41 wherein the reply message
comprises one of a reply text message or a reply telephone call
made to the selected text messaging number.
43. The confirmation system of claim 42 wherein the text messaging
number comprises a telephone number.
44. The confirmation system of claim 41 wherein the server software
application is further adapted to determine, based on content of
the reply message, that the reply message comprises a confirmation
of the showing request for the real estate listing.
45. The confirmation system of claim 44 wherein the server software
application is further adapted to send at least one of an e-mail, a
voice message, a telephone call, or a separate text message to the
second communication device indicating the confirmation of the
showing request for the real estate listing over the network
interface.
46. The confirmation system of claim 41 wherein the server software
application is further adapted to: ix) determine that there is a
lack of available text messaging numbers in the list of text
messaging numbers; x) determine a mapping having an oldest
appointment time, the text messaging number is selected by
selecting a text messaging number associated with the mapping
having the oldest appointment time; and xi) expire the mapping
having the oldest appointment time prior to an end time.
47. The confirmation system of claim 41 wherein the list of text
messaging numbers comprises a prioritized list of text messaging
numbers, and the text messaging number is selected by determining a
highest priority available text messaging number on the prioritized
list of text messaging numbers.
Description
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation application of co-pending
U.S. patent application Ser. No. 13/492,816, entitled "METHOD FOR
PROVIDING TEXT MESSAGING CONFIRMATION," filed Jun. 9, 2012,
assigned to ShowingTime of Chicago, Ill., and which is hereby
incorporated by reference in its entirety to provide continuity of
disclosure.
FIELD OF THE DISCLOSURE
[0002] The present disclosure relates generally to text messaging
and, in particular, to a method for providing text messaging
confirmation.
BACKGROUND
[0003] Text messaging technologies, such as the widely used Short
Message Service (SMS), enable exchange of brief text messages
between communication devices. For example, smartphones generally
have the capability to exchange SMS messages with another mobile
telephone, a portable device, or a fixed system. Text messaging is
widely used for both private and commercial purposes. For instance,
text messaging is used to deliver digital content, such as
notifications, requests, news alerts, financial information,
etc.
[0004] In commercial settings, text messaging is often used by a
sending system to send text messages to multiple smartphones or
other types of portable devices. Additionally, the text messages
often have different content and need to be responded to with reply
text messages. For example, a real estate showing appointment
scheduling system sends, to real estate property listing agents or
real estate property owners, text messages requesting confirmation
of showing appointment requests. The showing appointments generally
differ in real estate property, showing appointment time, and/or
showing appointment requestor. A recipient of a text message
pertaining to a showing appointment request (also referred to
herein as a showing appointment request text message or a request
text message) responds to the request contained within the text
message by sending a reply text message to the real estate showing
appointment scheduling system.
[0005] A reply text message from a smartphone usually indicates two
text messaging numbers (e.g., telephone numbers)--one for the
replier and one for the sender of the request text message (i.e.,
the text message for which the reply text message is intended).
However, the reply text message from the smartphone does not
include the content of the request text message. In the absence of
such content, the sending system of the request test message cannot
uniquely match the reply text message to the request text message,
and thereby cannot automatically confirm showing appointment
requests, where the sending system sends out multiple text messages
using the same text messaging number.
[0006] Accordingly, there is a need for a method for providing text
messaging confirmation such that reply text messages are matched to
request text messages.
BRIEF DESCRIPTION OF THE DRAWINGS
[0007] The accompanying figures, where like reference numerals
refer to identical or functionally similar elements throughout the
separate views, together with the detailed description below, are
incorporated and form part of the specification and serve to
further illustrate various embodiments of concepts that include the
claimed invention, and to explain various principles and advantages
of those embodiments.
[0008] FIG. 1 illustrates a block diagram of a communication system
having a text message sending system implementing some embodiments
of the present teachings.
[0009] FIG. 2 is a logical flowchart illustrating a method for
providing text messaging confirmation in accordance with some
embodiments.
[0010] FIG. 3 is a logical flowchart illustrating a method for
providing text messaging confirmation in accordance with some
embodiments.
[0011] FIG. 4 is a logical flowchart illustrating a method for
selecting a telephone number to facilitate providing text messaging
confirmation in accordance with some embodiments.
[0012] FIG. 5 is a logical flowchart illustrating a method for
providing text messaging confirmation in accordance with some
embodiments.
[0013] FIG. 6 is a text message content layout diagram illustrating
a request text message and a reply text message in accordance with
some embodiments.
[0014] Skilled artisans will appreciate that elements in the
figures are illustrated for simplicity and clarity and have not
necessarily been drawn to scale. For example, the dimensions of
some of the elements in the figures may be exaggerated relative to
other elements to help improve understanding of various
embodiments. In addition, the description and drawings do not
necessarily require the order illustrated. It will be further
appreciated that certain actions and/or steps may be described or
depicted in a particular order of occurrence while those skilled in
the art will understand that such specificity with respect to
sequence is not actually required. Moreover, the content of certain
messages (e.g., text messages, e-mails, telephone calls, etc.) may
be expressed in particular words and/or phrases while those skilled
in the art will understand that such specificity with respect to
expression is not actually required.
[0015] Apparatus and method components have been represented where
appropriate by conventional symbols in the drawings, showing only
those specific details that are pertinent to understanding the
various embodiments so as not to obscure the disclosure with
details that will be readily apparent to those of ordinary skill in
the art having the benefit of the description herein. Thus, it will
be appreciated that for simplicity and clarity of illustration,
common and well-understood elements that are useful or necessary in
a commercially feasible embodiment may not be depicted in order to
facilitate a less obstructed view of these various embodiments.
DETAILED DESCRIPTION
[0016] Generally speaking, pursuant to the various embodiments, the
present disclosure provides a method for providing confirmation of
a request for a target communicated using text messaging. In
accordance with the present teachings, a method includes receiving,
by a sending system, a request for a target. The method further
includes selecting, by the sending system, a telephone number from
a list of telephone numbers, wherein a mapping is created between
the request, the selected telephone number, the target, and a
target contact. Additionally, the method includes sending, by the
sending system to the target contact using the selected telephone
number, a text message indicating the request for the target.
Moreover, the method includes receiving a reply message from the
target contact using the selected telephone number, and determining
that the reply message comprises a reply to the request for the
target by comparing the target contact and the selected telephone
number for the reply message to the mapping.
[0017] Further in accordance with the present teachings is a method
for providing confirmation of a showing request communicated using
text messaging. The method includes receiving, by a real estate
showing appointment scheduling system, a showing request for a real
estate listing. The method further includes determining, by the
real estate showing appointment scheduling system, a listing
contact for the real estate listing. Additionally, the method
includes selecting, by the real estate showing appointment
scheduling system, a text messaging number from a list of text
messaging numbers, wherein a mapping is created between the showing
request, the selected text messaging number, the real estate
listing, and the listing contact. Moreover, the method includes
sending, by the real estate showing appointment scheduling system
to the listing contact using the selected text messaging number, a
text message indicating the showing request. Furthermore, the
method includes receiving a reply message from the listing contact
using the selected text messaging number, and comparing the listing
contact and the selected text messaging number for the reply
message to the mapping to match the reply message to the showing
request for the real estate listing.
[0018] Referring now to the drawings, and in particular FIG. 1, an
illustrative communication system having a text messaging sending
system implementing embodiments in accordance with the present
teachings is shown and indicated generally at 100. In one
illustrative embodiment, system 100 comprises a real estate showing
appointment scheduling system (also interchangeably referred to
herein as a sending system, a scheduling system, or a real estate
showing management system) 102, a real estate showing appointment
database 104, two communication devices 106 and 108, two wired
networks 112 and 114, and a wireless network 110 (wherein, in an
embodiment, one or more of the networks 110, 112, or 114 is or
includes a telephone network). Only a limited number of system
elements 102 to 114 are shown for ease of illustration; but
additional such elements may be included in the system 100.
Moreover, other components needed for a commercial embodiment of
the system 100 are omitted from the drawing for clarity in
describing the enclosed embodiments.
[0019] The scheduling system 102 is configured to perform methods
in accordance with the present teachings to provide text messaging
confirmation, such as methods illustrated and described below by
reference to FIGS. 2-6. The scheduling system 102 comprises one or
more servers (not shown) that host real estate showing appointment
scheduling and management applications, such as ShowingTime.RTM.'s
ShowingDesk.TM. software or ShowingTime.RTM.'s Appointment
Service.TM.. A showing appointment scheduling application may be
physically housed in a single server or distributed across multiple
servers within the scheduling system 102. Moreover, the scheduling
system 102 integrates with or connects to one or more listing
services (not shown) to update a database 104 of real estate
property listings.
[0020] Showing agents, listing agents, and property owners (all
considered listing contacts for purposes of the present teachings)
access the scheduling system 102 using communication devices, such
as communication devices 106 and 108. The device 106 connects to
the scheduling system 102 over a network (wired or wireless) 112,
while the device 108 connects to the scheduling system 102 over a
wireless network (such as a public cellular network) 110 and a
network 114 (wired or wireless). The devices 106 and 108 can be any
type of communication device such as mobile phones, smartphones,
mobile data terminals, Personal Digital Assistants (PDAs), laptops,
etc. In a particular embodiment of the system 100, the device 106
is laptop running ShowingDesk.TM. client software and connecting to
the scheduling system 102 over an Internet connection, while the
device 108 is a smartphone receiving from and sending to the
scheduling system 102 text messages concerning showing
appointments.
[0021] In general, as used herein, the communication devices 106
and 108 and components of the scheduling system 102 or their
hardware being "configured" or "adapted" means that such elements
are implemented using one or more (although not shown) memory
devices, network interfaces, and/or processing devices that are
operatively coupled, and which, when programmed, form the means for
these system elements to implement their desired functionality, for
example, as illustrated by reference to the methods shown in FIGS.
2-6. The network interfaces are used for passing signaling also
referred to herein as messaging (e.g., messages, packets,
datagrams, frames, superframes, and the like) containing control
information, voice or non-voice media (e.g., text) between the
elements of the system 100. The implementation of the network
interface in any particular element depends on the particular type
of network, i.e., wired and/or wireless, to which the element is
connected.
[0022] Where the network supports wireless communications, the
network interfaces comprise elements including processing,
modulating, and transceiver elements that are operable in
accordance with any one or more standard or proprietary wireless
interfaces, wherein some of the functionality of the processing,
modulating, and transceiver elements may be performed by means of
the processing device through programmed logic such as software
applications or firmware stored on the memory device of the system
element or through hardware. Examples of wireless interfaces
include IEEE 802.11, Fourth Generation (4G) cellular interfaces,
etc.
[0023] The processing devices utilized by the elements of system
100 may be partially implemented in hardware and, thereby,
programmed with software or firmware logic or code for performing
functionality described by reference to FIGS. 2-6; and/or the
processing devices may be completely implemented in hardware, for
example, as a state machine or ASIC (application specific
integrated circuit). The memory implemented by these system
elements can include short-term and/or long-term storage of various
information needed for the functioning of the respective elements.
The memory may further store software or firmware for programming
the processing device with the logic or code needed to perform its
functionality.
[0024] We now turn to a detailed description of the functionality
of the system 100 elements in accordance with the teachings herein
and by reference to the remaining figures. FIG. 2 illustrates a
logical flow diagram showing a general method 200 performed by a
sending system (such as the scheduling system 102) for providing
text messaging confirmation. The scheduling system 102 manages and
processes real estate property listings (also referred to herein
simply as listings) stored in the database 104. A listing is a real
estate property that has been put up for sale, for instance by a
property owner. In the scheduling system 102 and database 104, a
listing is a logical representation of a real estate property, and
often comprises identification and contact information (such as a
mobile telephone number and an e-mail address) of the owner and one
or more listing agents of the underlying real estate property. As
mentioned above, the listing agents, showing agents and owners are
also collectively referred to herein as listing contacts. Listing
contacts of a listing may include other interested parties, such as
a listing office of the listing, a tenant of the underlying real
estate property, a bank, or a mortgage company. Additionally, a
listing includes a detailed description, such as an address and
features, of the underlying real estate property.
[0025] The scheduling system 102 also manages showings of listings.
A showing of a listing is a scheduled visit of the underlying real
estate by a showing agent (such as a real estate agent for a
prospective buyer), the prospect buyer or another party (e.g., a
professional inspector). A showing request (also referred to herein
as a showing appointment request, a request for a showing, or a
request for a showing appointment) is a request that concerns or is
regarding the showing of a real estate listing. To schedule a
showing, a showing agent, for instance, accesses (e.g., using the
device 106) the scheduling system 102 to request a showing
appointment on a selected listing. The showing appointment is made
on the calendar of a listing contact (such as a listing, which is a
real estate agent for the seller). Listing contacts access (e.g.,
using the device 106) the scheduling system 102 to manage their
calendars. For example, a listing agent marks some time slots where
he accepts showing appointments and indicates some other time slots
where he does not accept showing appointments. For each showing
appointment request made by a showing agent, the scheduling system
102 oftentimes notifies (through e-mail, telephone, text messaging,
etc.) the listing contact for confirmation of the showing
appointment request. Responsive to the listing contact's acceptance
or decline of the showing appointment request, the scheduling
system 102 notifies (through e-mail, telephone, text messaging,
etc.) the showing agent of the listing contact's confirmation or
decline.
[0026] The scheduling system 102 further provides for other
functionalities. For example, the scheduling system 102 allows
showing agents, listing agents, and owners to specify and modify
their profiles, notification preference, etc. In another example, a
listing agent accesses the scheduling system 102 to edit his
listings' showing information. Profiles, preferences, listings,
calendars of the listing contacts, and showing appointments are
stored in the database 104.
[0027] Turning now to FIG. 2 and the particulars of a method 200,
performed by a sending system comprising any suitable system
infrastructure having text message sending and reply message
receiving capabilities, for providing text message confirmation in
accordance with an embodiment of the present teachings. At 202, a
sending system receives a request for a target. In this
illustrative embodiment, the scheduling system 102 is the sending
system, the request is a request for a showing appointment, the
target is a listing, and a target contact is a listing contact.
Accordingly, it can be said that, in the illustrative embodiment,
receiving the request for the target comprises receiving a showing
request for a real estate listing.
[0028] In one example implementation, a showing agent, using the
device 106, accesses the calendar of a listing contact (e.g., the
owner or listing agent) of the selected listing and selects a time
slot, in order to request a showing appointment. Alternatively, the
request can be any other type of request, such as a request for a
conversation or for acceptance of a sales lead (also
interchangeably referred to herein as buyer lead), while the target
can be a listing contact or any other interested party.
[0029] For instance in one alternate embodiment, the target is a
showing agent, while the request seeks or offers a different time
(meaning different day or different time on a same day) for a given
showing appointment. For example, due to personal reasons, the home
owner of a real estate listing needs to have possession of his
property during the requested time for a showing and intends to
reschedule the showing. Accordingly, the home owner sends, to the
showing agent of the showing, a text message seeking or proposing a
different time for the showing appointment. In this case, the
request for the target (i.e., the showing agent) comprises an offer
or a request for a different time for a showing of a real estate
listing.
[0030] In another alternate embodiment, the target is a showing
agent, and the request inquires about the status of his showing,
such as whether the showing agent (for a given showing appointment)
has finished his showing of a real estate listing. For instance, at
or shortly after the end time of the given showing appointment, the
scheduling system 102 sends the showing agent a text message
requesting for status (e.g., done or done in fifteen minutes) of
the showing appointment. Where the showing agent has completed his
showing, the scheduling system then notifies listing contacts of
completion of the showing. For example, after a showing has been
completed, homeowners or tenants of the underlying listing of the
showing are notified by the scheduling system that their property
is ready for access. Accordingly, it can be said that, in this
alternate embodiment, the request for the target comprises an
inquiry for a status of a showing of a real estate listing.
[0031] In yet another alternate embodiment, a buyer lead for a real
estate listing is generated in some manner, such as from an office
visit, telephone call, or inquiry on a web site of a scheduling
system. The buyer lead is then communicated to one or more real
estate agents using text messages. In order to get the buyer lead,
a real estate agent needs to confirm his reception of one such text
message and desire to receive the lead. In one example
implementation, the first responding real estate agent gets the
buyer lead. In this alternate embodiment, receiving the request for
the target comprises receiving a buyer lead for a real estate
listing, and the target contact comprises a lead recipient. In the
embodiments discussed above where the request concerns a showing
appointment (e.g., seeking a different time for a given showing
appointment, inquiry as to whether a showing is complete,
communicating a buyer lead to an agent, etc.), the request provides
an example of a "showing request for a real estate listing",
regardless of whether the request is initiated by a listing agent,
the scheduling system, or some other entity. Moreover, a scheduling
or sending system "receiving" a request includes requests generated
internally by the system or input by a system operator.
[0032] When the sending system receives the request for the target,
the sending system oftentimes communicates with a target contact to
confirm the request. For example, when a showing agent requests a
showing appointment for a listing, the scheduling system 102
contacts a listing contact to confirm the showing appointment. In
such a case, the scheduling system 102 accepts or declines the
showing appointment request based on a reply to the showing
appointment request (for instance in a reply message) from the
listing contact. The scheduling system 102 communicates with the
listing contact by e-mail, telephone, text messaging (e.g., SMS
messaging), etc. In recent years, text messaging has evolved to be
a prompt, convenient, and popular means to send notifications and
requests. Therefore, many real estate property listing agents and
owners opt to use text messaging for showing appointment
confirmation.
[0033] At 204, the sending system selects a text messaging number
from a list of text messaging numbers that it maintains. A text
messaging number is a number or code used for sending and receiving
text messages. In one embodiment, the text messaging number is a
"full" or "normal" telephone number, such that, at 204, the sending
system selects a telephone number from a list of telephone numbers
that it maintains. A full or normal "telephone number", as the term
is used herein, is a string of numerical digits (for example in a
format compliant with the E.164 standard) that, if dialed by one
device, can be used to connect to another device over a telephone
network to exchange voice communications. In one illustrative
implementation, the list of telephone numbers comprises fifty
telephone numbers, which may be consecutive telephone numbers.
Moreover, the scheduling system 102 may prioritize the list of
telephone numbers (e.g., the priority descends from the first to
the last telephone number on a numerically ordered list of
telephone numbers), and select the highest priority available
telephone number in the list. In alternative implementations, the
text messaging number is a different number or code such as a
modified telephone number (e.g., a number generated by adding
digits to or extracting digits from a normal telephone number) or a
short code, which has fewer digits than a normal telephone
number.
[0034] Additionally, at 204, the sending system creates a mapping
between the request (e.g., a showing appointment request), the
selected telephone number, the target (e.g., the listing), and a
target contact (e.g., a listing agent). The mapping comprises an
end time (e.g., the end time of a showing appointment), and, in an
illustrative implementation, the sending system expires the mapping
after a fixed amount of time from the end time, wherein the fixed
amount of time is configurable as desired for a particular
implementation scenario. In one embodiment, the fixed amount of
time from the end time is twenty four hours; and the fixed amount
of time is set to zero hours in another embodiment. Moreover, in at
least one illustrative context, the sending system expires the
mapping before the end time, such as when there are no available
telephone numbers in the list of telephone numbers to create a
mapping for a given request.
[0035] At 206, the sending system sends, to the target contact
using the selected telephone number, a text message indicating the
request for the target. The text message indicating the request for
the target is also referred to herein as a request text message.
The selected telephone number is a source or originating number of
the text message, while the text message number of the target
contact is a destination number of the text message. In the
illustrative embodiment of the system 100, the scheduling system
102 sends a text message to the device 108 over the networks 114
and 110 for confirmation of a showing appointment request. Upon
receiving the request text message, the listing contact sends, to
the scheduling system 102, using the device 108 over the networks
110 and 114, a reply text message. However, unlike e-mail, text
messaging technologies do not insert, within the reply text
message, the content of the request text message. Accordingly, the
reply text message includes text content generated by the target
contact, but not content of the request text message. The reply
text message also includes a destination number (i.e., the source
number of the request text message), and a source number (i.e., the
destination number of the request text message).
[0036] At 208, the sending system receives the reply message from
the target contact using the selected telephone number. In one
embodiment, the reply message comprises a reply telephone call made
to the selected telephone number by a listing contact using the
device 108 over the networks 110 and 114. In another embodiment,
the reply message comprises a reply text message sent to the
selected telephone number by the listing contact using the device
108 over the networks 110 and 114. Accordingly, it can be said that
the reply message comprises one of a reply text message or a reply
telephone call made to a selected text messaging number, where the
text messaging number comprises a telephone number. At 210, the
sending system compares the target contact and the selected
telephone number for the reply message to the mapping created at
204. Based on the result of this comparison, the sending system
determines that the reply message comprises a reply to the request
for the target. In one embodiment, the scheduling system 102
matches a reply text message to a request text message, for
instance to confirm a showing appointment, by comparing the
destination and source numbers of the reply text message to
(contents of) the mapping.
[0037] Referring now to FIGS. 3 and 5, each shows a logical
flowchart illustrating a method for providing text messaging
confirmation in accordance with two different embodiments of the
present disclosure. Methods 300 and 500 are each performed by the
real estate showing appointment scheduling system 102 in this
illustrative implementation. However, the methods 300 and 500 are
implementable within other systems having infrastructure for
sending request text messages and receiving corresponding reply
messages. Moreover, in the embodiment described, the text messaging
numbers that are used are telephone numbers. However, in
alternative embodiments, different numbers or codes can function as
text messaging numbers.
[0038] Turning first to the method 300, at 302, the scheduling
system 102 receives a showing request (i.e., a request for or
regarding a showing appointment) for a real estate listing, for
instance, when a showing agent accesses the scheduling system 102
and attempts to make a showing appointment on the listing. The
showing request generally indicates the listing and a time in the
future when the showing agent (or other interested parties, such as
an inspector) intends to see the underlying property. Based on the
showing request, at 304, the scheduling system 102 determines a
listing contact for the real estate listing by examining the
listing and its associated settings that are stored in the database
104. For example, a setting indicates that the listing agent
prefers to be notified by text messages for showing requests, while
another setting indicates the listing agent's mobile telephone
number. In the illustrative embodiment, the listing contact has a
text messaging number (e.g., a telephone number).
[0039] At 306, the scheduling system 102 selects an originating
telephone number from a list of telephone numbers for sending a
request text message to the listing contact for a showing request
confirmation. More generally stated, the scheduling system 102, at
306, selects a text messaging number from a list of text messaging
numbers. Selection of the originating telephone number is further
illustrated by reference to a method 400 shown as a flowchart in
FIG. 4.
[0040] Turning now to FIG. 4, at 402, the scheduling system 102
prioritizes a list of telephone numbers for a listing. As a result
of the prioritization, the list of telephone numbers comprises a
prioritized list of telephone numbers. In one embodiment, the
priorities of the list of telephone numbers descend from the first
number in the list to the last number in the list. Furthermore, the
order of the telephone numbers in the list is the order of the
priorities of the telephone numbers. In another embodiment, the
prioritized list of telephone numbers comprises a numerically
ordered list of telephone numbers, wherein the priorities descend
from the first number on the list to the last number on the list.
Any other suitable priority mechanism can be used, such as one
based on most used telephone number or least used telephone number
for a particular listing or listing agent, for example. One benefit
of the prioritization of the list of telephone numbers is that a
small set of telephone number are more frequently used than other
telephone numbers. Accordingly, the more frequently used telephone
numbers become more readily identifiable, and can be added as
caller IDs mapping to a name by text message recipients.
[0041] At 404, the scheduling system 102 determines, by examining
SMS sessions in memory or in the database 104, reserved SMS
sessions for a selected listing contact, wherein a SMS session is a
specific example of and comprises a logical representation of a
mapping for a given showing request, selected text messaging number
(e.g., originating telephone number), real estate listing, and
listing contact. Accordingly, a mapping is interchangeably referred
to herein as a SMS session. Moreover, a SMS session comprises an
end time which, for example, is a showing appointment time.
Reserved SMS sessions for a listing contact are defined as SMS
sessions that have been created, but have not yet expired, for the
listing contact.
[0042] The scheduling system 102 performs 404 when it receives a
showing request at 302. In one illustrative implementation, the
scheduling system 102 processes showing requests one by one.
Assuming a given showing request for a particular target (e.g.,
listing), every other showing request received after that given
showing request is termed herein as a subsequent showing request
for the particular target.
[0043] At 406, the scheduling system 102 checks whether the
reserved SMS sessions use all the telephone numbers in the list of
telephone numbers. If the reserved SMS sessions do not use all the
telephone numbers in the list, there are some telephone numbers in
the list that are available for selection. Accordingly, at 408, the
scheduling system 102 determines a highest priority available
telephone number on the prioritized list of telephone numbers, and
selects the highest priority available telephone number. For
example, where only the last forty two telephone numbers in a list
of fifty telephone numbers are available, and the priorities of the
list of telephone number descend from the first to the last
telephone numbers, the ninth telephone number in the list will be
selected in the list as the highest priority available telephone
number. At 410, the scheduling system 102 returns the selected
telephone number as an originating telephone number for sending
text messages.
[0044] Turning back to 406, the scheduling system 102 may determine
that the reserved SMS sessions have used all the telephone numbers
in the list of telephone numbers. In other words, the scheduling
system 102, at 406, determines that there is an absence of
available telephone numbers in the list of telephone numbers to
select a telephone number. Accordingly, the scheduling system 102
functions pursuant to the "yes" decision branch of 406 to determine
an originating telephone number.
[0045] At 412, the scheduling system 102 determines the reserved
SMS session that has an oldest appointment time from a current
time. As used herein, the oldest appointment time from the current
time is a showing appointment time, among the showing appointment
times of all the reserved SMS sessions for the selected listing
contact, which is farthest in the future from the current time. A
more general term for the oldest appointment time is an oldest
request time. At 414, the scheduling system 102 expires the
reserved SMS session with the oldest appointment time. In other
words, the reserved SMS session with the oldest appointment time is
terminated and resources, such as the selected telephone number,
associated with this reserved SMS session are made available. At
416, the released telephone number is selected, and at 410, the
scheduling system 102 returns the selected telephone number as an
originating telephone number for sending text messages.
[0046] Accordingly, in general, it can be said that, at 412, the
scheduling system 102 determines that the mapping has an oldest
request time and selects (416) the telephone number of the mapping.
Additionally, at 414, the mapping is expired before the end time
and a new mapping is created between the subsequent request
(received at 302), the selected telephone number, the target
(meaning the listing), and the target contact (meaning the listing
contact).
[0047] Turning back now to FIG. 3, at 308, the scheduling system
102 creates a SMS session (representing a mapping) for the showing
request, the listing, the selected originating telephone number,
and the listing contact. In the illustrative embodiment, the end
time of the SMS session and mapping is the end time of the showing
appointment request. Additionally, the scheduling system 102
automatically expires the SMS session and mapping after a fixed
amount of time (such as zero hours or twenty four hours) from the
end time of the SMS session. At 310, the scheduling system 102
sends a text message to the listing contact using the selected
originating telephone number, requesting confirmation of the
showing appointment request.
[0048] An example text message requesting confirmation of a showing
appointment request is illustrated by reference to a text message
602 shown in FIG. 6. The text message 602 includes information or
content such as the type of the text message (e.g., a showing
request), address of the listing, and time of the showing
appointment. The text message 602 further indicates to the listing
contact that he should reply with the letter "Y" to confirm or
accept the showing request, and reply with the letter "N" to
decline the showing request.
[0049] Responsive to the request text message, the listing contact
sends the scheduling system 102 a reply text message. Accordingly,
the scheduling system 102, at 312, receives the reply text message
using the originating telephone number. Thus, in this example
implementation, the scheduling system 102, at 312, receives a reply
message that comprises a reply text message. An example reply text
message to a showing request text message is illustrated by
reference to a text message 604 shown in FIG. 6. In this example
reply text message, the listing contact accepts and confirms the
showing request, indicated by the request text message 602, by
typing the letter "Y" in the text message body. Alternatively, the
listing contact can decline the showing request by typing the
letter "N" in the text message body. In a further implementation of
the present teachings, the listing contact may ask to reschedule
the showing request to a different time by typing the letter "R" in
the text message body of 604.
[0050] At 314, the scheduling system 102 matches the source number
of the reply text message to the listing contact. Additionally, at
314, the scheduling system 102 matches, using the SMS session
created at 308, the listing contact and the originating telephone
number to the showing request. Furthermore, at 314, the scheduling
system 102 determines a type of the reply message based on the
content of the reply message. For example, the type of reply text
message 604, is a reply message confirming and accepting the
showing appointment request (e.g., an appointment confirmation and
acceptance text message), a reply message denying the showing
appointment request (e.g., an appointment denial text message), or
a text message suggesting an alternative appointment showing time
(e.g., an appointment modification text message).
[0051] Based on the example reply text message 604, at 314, the
scheduling system 102 determines that the reply message confirms
the showing request for the target (which in this illustration is
the listing contact), and, as such, determines that the type of the
reply message is a confirmation and acceptance of the showing
request for the listing contact. Stated another way, the scheduling
system 102 determines, based on content of the reply message, that
the reply message comprises a confirmation of the showing request
for the real estate listing. In accordance with an optional
embodiment, at 316, the scheduling system 102 sends an e-mail to
the listing contact to specify which showing request is confirmed
by the reply text message.
[0052] Alternatively, the scheduling system 102, at 316, sends a
voice message (e.g., a prerecorded voice message), a different text
message to the listing contact, or a telephone call (e.g., between
a system operator and the listing contact) to specify which showing
request is confirmed by the reply text message. An example text
message indicating that the showing request is confirmed by the
reply text message is illustrated by reference to a text message
606. The text message 606 includes information or content such as
the type of the text message (e.g., an indication of confirmation
of a showing request), address of the listing, status of the
confirmation of the showing request, and time of the showing
appointment. Furthermore, the text message 606 indicates to the
listing contact additional information about the confirmation.
Accordingly, it can be said that the scheduling system 102 sends at
least one of an e-mail, a voice message, a telephone call, or a
separate text message to the target (the listing contact)
indicating that the request (the showing request) for the target
(the real estate listing) is confirmed.
[0053] Turning now to FIG. 5, the functionality performed by the
appointment scheduling system 102 at 502 to 510 is substantially
the same as the functionality performed by the appointment
scheduling system at 302 to 310. Therefore, the detail of such
functionality is not repeated here for the sake of brevity.
However, a brief description of the functionality at 502 to 510 is
provided for completeness. Accordingly, at 502, the scheduling
system 102 receives a showing request for a listing. The scheduling
system 102, at 504, determines a listing contact (e.g., listing
agent or owner) for the showing request. At 506, the scheduling
system 102 selects an originating telephone number for sending a
text message. Selection of the originating telephone number is
further illustrated by reference to FIG. 4, for instance. The
scheduling system 102, at 508, creates a SMS session for the
listing, the showing request, the originating telephone number, and
the listing contact. Using the originating telephone number, the
scheduling system 102, at 510, sends a text message (e.g., the text
message 602) to the listing contact.
[0054] In response to the text message, in this particular
embodiment, instead of sending a reply text message (as illustrated
by reference to FIG. 3) the listing contact calls the originating
telephone number to accept or decline the showing request. At 512,
the scheduling system 102 receives this telephone call from the
listing contact using the originating telephone number.
Accordingly, it can be said that the scheduling system 102, at 512,
receives a reply message, and the reply message comprises a reply
telephone call made to the selected telephone number. At 514, the
scheduling system 102 directs the telephone call to an appointment
center call queue.
[0055] An appointment center is a call center where receptionists
or operators receive and respond to telephone calls. Before a
telephone call is handled, it is put into a call queue. Generally,
the call queue is a list of unhandled telephone calls which are
handled in order they are received. An operator at the appointment
center may manually match the reply message to the showing request.
Therefore, it can be said that the call center determines that the
reply message (the telephone call) comprises the reply to the
request (the request text message) for the target listing contact.
Alternatively, an operator accesses the scheduling system 102 to
perform such matching. Accordingly, at 516, the scheduling system
102 matches the listing contact and the originating telephone
number associated with the reply message to the showing request
using the SMS session created at 508. In accordance with an
optional embodiment, at 518, the scheduling system 102 sends an
e-mail to the listing contact to specify which showing request is
confirmed by the telephone call. Alternatively, the scheduling
system 102, at 518, sends a voice message, a telephone call, or a
different text message to the listing contact to specify which
showing request is confirmed by the telephone call.
[0056] In the foregoing specification, specific embodiments have
been described. However, one of ordinary skill in the art
appreciates that various modifications and changes can be made
without departing from the scope of the invention as set forth in
the claims below. Accordingly, the specification and figures are to
be regarded in an illustrative rather than a restrictive sense, and
all such modifications are intended to be included within the scope
of present teachings. The benefits, advantages, solutions to
problems, and any element(s) that may cause any benefit, advantage,
or solution to occur or become more pronounced are not to be
construed as a critical, required, or essential features or
elements of any or all the claims. The invention is defined solely
by the appended claims including any amendments made during the
pendency of this application and all equivalents of those claims as
issued.
[0057] Moreover in this document, relational terms such as first
and second, top and bottom, and the like may be used solely to
distinguish one entity or action from another entity or action
without necessarily requiring or implying any actual such
relationship or order between such entities or actions. The terms
"comprises," "comprising," "has", "having," "includes",
"including," "contains", "containing" or any other variation
thereof, are intended to cover a non-exclusive inclusion, such that
a process, method, article, or apparatus that comprises, has,
includes, contains a list of elements does not include only those
elements but may include other elements not expressly listed or
inherent to such process, method, article, or apparatus. An element
proceeded by "comprises . . . a", "has . . . a", "includes . . .
a", "contains . . . a" does not, without more constraints, preclude
the existence of additional identical elements in the process,
method, article, or apparatus that comprises, has, includes,
contains the element. The terms "a" and "an" are defined as one or
more unless explicitly stated otherwise herein. The terms
"substantially", "essentially", "approximately", "about" or any
other version thereof, are defined as being close to as understood
by one of ordinary skill in the art, and in one non-limiting
embodiment the term is defined to be within 10%, in another
embodiment within 5%, in another embodiment within 1% and in
another embodiment within 0.5%. The term "coupled" as used herein
is defined as connected, although not necessarily directly and not
necessarily mechanically. A device or structure that is
"configured" in a certain way is configured in at least that way,
but may also be configured in ways that are not listed.
[0058] It will be appreciated that some embodiments may be
comprised of one or more generic or specialized processors (or
"processing devices") such as microprocessors, digital signal
processors, customized processors and field programmable gate
arrays (FPGAs) and unique stored program instructions (including
both software and firmware) that control the one or more processors
to implement, in conjunction with certain non-processor circuits,
some, most, or all of the functions of the method for providing
confirmation of a request for a target communicated using text
messaging as described herein. The non-processor circuits may
include, but are not limited to, a radio receiver, a radio
transmitter, signal drivers, clock circuits, power source circuits,
and user input devices. As such, these functions may be interpreted
as steps of a method to perform the providing confirmation of a
request for a target communicated using text messaging described
herein. Alternatively, some or all functions could be implemented
by a state machine that has no stored program instructions, or in
one or more application specific integrated circuits (ASICs), in
which each function or some combinations of certain of the
functions are implemented as custom logic. Of course, a combination
of the two approaches could be used. Both the state machine and
ASIC are considered herein as a "processing device" for purposes of
the foregoing discussion and claim language.
[0059] Moreover, an embodiment can be implemented as a
non-transient computer-readable storage element or medium having
computer readable code stored thereon for programming a computer
(e.g., comprising a processing device) to perform a method as
described and claimed herein. Examples of such computer-readable
storage elements include, but are not limited to, a hard disk, a
CD-ROM, an optical storage device, a magnetic storage device, a ROM
(Read Only Memory), a PROM (Programmable Read Only Memory), an
EPROM (Erasable Programmable Read Only Memory), an EEPROM
(Electrically Erasable Programmable Read Only Memory) and a Flash
memory. Further, it is expected that one of ordinary skill,
notwithstanding possibly significant effort and many design choices
motivated by, for example, available time, current technology, and
economic considerations, when guided by the concepts and principles
disclosed herein will be readily capable of generating such
software instructions and programs and ICs with minimal
experimentation.
[0060] The Abstract of the Disclosure is provided to allow the
reader to quickly ascertain the nature of the technical disclosure.
It is submitted with the understanding that it will not be used to
interpret or limit the scope or meaning of the claims. In addition,
in the foregoing Detailed Description, it can be seen that various
features are grouped together in various embodiments for the
purpose of streamlining the disclosure. This method of disclosure
is not to be interpreted as reflecting an intention that the
claimed embodiments require more features than are expressly
recited in each claim. Rather, as the following claims reflect,
inventive subject matter lies in less than all features of a single
disclosed embodiment. Thus the following claims are hereby
incorporated into the Detailed Description, with each claim
standing on its own as a separately claimed subject matter.
* * * * *