Stalking social media users to maximize the likelihood of immediate

Stalking social media users to maximize the likelihood of immediate
US 20110125826Al
(19) United States
(12) Patent Application Publication (10) Pub. No.: US 2011/0125826 A1
(43) Pub. Date:
ERHART et al.
(54)
STALKING SOCIAL MEDIA USERS TO
MAXIMIZE THE LIKELIHOOD OF
IMMEDIATE ENGAGEMENT
(75) Inventors:
(73) Assignee:
Publication Classi?cation
George ERHART, Loveland, CO
(US); David SKIBA, Golden, CO
(US); Valentine C. MATULA,
Granville, OH (US)
AVAYA INC., Basking Ridge, NJ
(Us)
(21) Appl. No.:
(22)
Filed:
12/7 06,942
(51)
Int. Cl.
G06F 15/16
(52)
us. c1. ....................................... .. 709/202;709/206
(57)
(2006.01)
ABSTRACT
Methods and the systems alloW a contact center to determine
the presence, in near real time, of a user on a social media
network. The contact center can receive an identity for a user
and associate the user identity With one or more other identi
ties, such as, a screen name, an email, or some other identity
that may be used on social media networks. The contact
center may then revieW posts to several social media net
Feb. 17, 2010
Works, by several people, to determine one of the posts
Related US. Application Data
includes an identity of the user. If one of the posts does
include the identity of the user, then the contact center may
quickly introduce a human agent to the user on that social
(63) Continuation-in-part of application No. 12/704,244,
(60)
May 26, 2011
?led on Feb. 11, 2010.
media netWork. As such, by “stalking” the social media user,
Provisional application No. 61/263,013, ?led on Nov.
the contact center is able to engage the customer in near real
time or real time communications over the social media net
20, 2009.
Work.
600 K
User Computer!
User Computer/
User Computer/
Communication
Device
Communication
Device
Communication
Device
E!
El
-
|
Web Server
|
-
—
D
U.
625
635
Patent Application Publication
May 26, 2011 Sheet 1 0f 9
US 2011/0125826 A1
1001‘
:
l
Contact Center y 104
'
Dialog System
|
|
A
i
'
l
:
|
106
v
tj
Social Media Gateway
\
|
110K
108
Communication
Device
112
)116
Social Media
Network 1
Social Media
Network 2
Social Media
Network 3
118
Fig. 1
Patent Application Publication
E50O8E2w w:m{95 2
P
IQTL
May 26, 2011 Sheet 2 0f 9
q|l
_E5E980
2_$m83o26w0
x
M
_
w
5
2
o
0
w
H.:
oNoN
8R
wow
ovow
‘r
5
nvom
2%
£8Jr
|lI _EmE250 IH
US 2011/0125826 A1
2o6Em50u3w2?m‘E
>
1:@E0P20965
1I
_5EEQEQ
H
mM
NoN
H--
Mi
Moor
<N.5
Patent Application Publication
May 26, 2011 Sheet 4 0f 9
US 2011/0125826 A1
95&65w Em w
{8 woim Em ow
Jam
.5
m
05
com
25New
5:95: :ENcmw mw
Patent Application Publication
May 26, 2011 Sheet 5 0f 9
US 2011/0125826 A1
402
\(
404 K
Start
A)’ 400
i
"
Receive message
for
social network site
V
Process message
408 K
V
Determine identity of user
V
Search for dialog data
structure with identity
412
Determine
if user is being
stalked?
414K
NO
Read dialog script from
dialog data structure
418
416
‘V
\l B I
Fig. 4A
V
Patent Application Publication
May 26, 2011 Sheet 6 0f 9
US 2011/0125826 A1
400
k
418
420 K
416
\l B l
422 K
v
Send invitation
\l A I
ii
Schedule agent
426 K
424
Determine
if response
received?
428
K Direct communication
between user and agent
430
i, i
NO
Release agent
'
V
Patent Application Publication
May 26, 2011 Sheet 7 0f 9
Start
V
505 k Receive identity for user
subject to stalking
506
‘Y
K Find other identities of user
for social media networks
508
V
Receive invitation
510
"
K
Receive agent
communication protocol
512
‘V
Receive parameters for
stalking the user
515
v
k Store identities, invitation, and
protocol in dialog data structure
516
END
Fig. 5
US 2011/0125826 A1
j
Patent Application Publication
May 26, 2011 Sheet 8 0f 9
US 2011/0125826 A1
600 K
User Computer/
User Computer/
User Computer/
Communication
Device
Communication
Device
Communication
Device
E1:
-
605
610
615
Network
Web Server
#H?
620
Server
Database
.
635
Fig. 6
1n. I
Patent Application Publication
May 26, 2011 Sheet 9 0f 9
US 2011/0125826 A1
J 700
)‘705 )‘710 i715
CPLKS)
5 725
)- 720
Computer
Input
Ouitput
Storage
Readamelstorage
Dev|ce(s)
Dev|ce(s)
Dev|ce(s)
Media Reader
_ _ _ l_ _ __
'
Communication
Systems
\ 755
|
I
Processing
|
I
Acceleration
|
|____ ____1
X
730
735
.
Workmg
Memory
Operating
System
\1
Other Code
745
(Programs) \\
\-
750
740
Fig. 7
May 26, 2011
US 2011/0125826 A1
STALKING SOCIAL MEDIA USERS TO
MAXIMIZE THE LIKELIHOOD OF
IMMEDIATE ENGAGEMENT
CLAIM OF PRIORITY
[0001] This application claims priority to US. Provisional
Application Ser. No. 61/ 263,013, ?led Nov. 20, 2009, entitled
“GEO POD SYSTEM”, and is a continuation-in-part appli
cation ofU.S. application Ser. No. 12/704,244, ?led Feb. 11,
2010, entitled “SOCIAL MEDIA CONTACT CENTER
DIALOG SYSTEM”, Which are both incorporated herein by
reference in their entirety.
BACKGROUND
[0002] Unlike phone calls, social media communications
are not generally real time communications. For example, a
social media user may post information to a social media
netWork and then receive a response at a later time. The
responses are not necessary sent immediately to the social
media user but may be delayed by some period of time, e. g. an
hour, a day, etc.
[0003] Contact centers interact With customers to address
questions or concerns of the customer. A contact center may
Want to engage a customer or user that is using a social media
[0006]
The system can monitor the social media netWorks
being used by the target customer and Wait for them to “post”
a message to a channel. The system can then immediately or
in real time post an invitation to communicate via the same
social media netWork, if there is a human agent in the contact
center available to take over the “conversation” With that user.
By Watching for a user post, the system can determine that the
user is currently looking at the social media netWork, and the
user is likely to be available to respond to the invitation and,
thus, engage With the contact center human agent. As
explained above, by stalking the user on the social media
netWorks, the contact center system can optimiZe the chances
that the user being contacted Will engage in a tWo-Way dialog.
[0007]
As an example, a bank can start an outbound cam
paign for all customers Who might be eligible for a mortgage
re?nance. The list of potential outbound contacts (i.e., the
customers) is generated from the bank contact database. The
contact center system runs through the list of potential can
didates Who have available social media contact information.
The system then starts the stalking process on each candidate.
When the system has determined that a user is “active” in a
social media channel or netWork and an agent is available, the
automated response (i.e., the invitation) is sent to the cus
tomer to solicit the customer. Since the likelihood of a
agent needs to be able to engage in real time communications
response is good When the customer is active in the social
media channel, the agent Will be ready to engage the cus
tomer, if the customer responds to the request. Once the
connection is made, through the social media channel, or
possibly escalating to chat or even phone contact, the normal
sales process can continue. The system repeats the process for
i.e., communications With short delays betWeen responses.
For reasons explained above, it is dif?cult and problematic for
multiple agents and multiple simultaneous automated stalk
ing processes.
human agents to communicate in real time With a user of a
social media networks. Thus, there exists a problem in alloW
[0008] In some embodiments, the outreach to the customer
via the social channel has a timeout value associated With the
ing human agents in a contact center to engage social media
users in a communication that optimiZes the effectiveness of
the contact and the availability of the resources of the contact
invitation. If the timeout expires Without response from the
user, the agent can be placed back into the available state for
network. Further, the contact center needs to maintain the
ef?ciency of the human agents that Work Within the contact
center. To maintain e?iciency, the human agents cannot Wait
for responses or communications from a customer. Thus, the
center.
SUMMARY
[0004]
It is With respect to the above issues and other prob
lems that the embodiments presented herein Were contem
plated. Embodiments of the methods and the systems pre
sented herein alloW a contact center to determine the
presence, in near real time, of a user on a social media net
Work. The contact center can receive an identity for a user and
associate the user identity With one or more other identities,
such as, a screen name, an email, or some other identity that
may be used on social media netWorks. The contact center
may then revieW posts to several social media netWorks by
several people, to determine one of the posts includes an
identity of the user. If one of the posts does include the
identity of the user, then the contact center may quickly
introduce a human agent to the user on that social media
netWork. As such, by “stalking” the social media user, the
contact center is able to engage the customer in near real time
or real time communications over the social media netWork.
[0005]
The embodiments described herein provide a social
media gateWay that can be used to gather information on
social netWork users. In the cases Where the social media
assignment to other Work.
[0009] If the social channel includes geo-location informa
tion With the user social media message post (as TWitter is
doing), then that location information may be used to tie the
social media user to a possible physical address. If the contact
center has a list of physical addresses and phone numbers for
the user (from enterprise data), then the outreach can be done
via a traditional phone call instead of using the social media
netWork. In this embodiment, the social media communica
tion acts as a presence detector that can stimulate the out
bound contact and provides the bene?t of knoWing that the
user is at the location With the phone at the time of the call.
[0010] The phrases “at least one”, “one or more”, and “and/
or” are open-ended expressions that are both conjunctive and
disjunctive in operation. For example, each of the expressions
“at least one ofA, B and C”, “at least one ofA, B, or C”, “one
or more of A, B, and C”, “one or more of A, B, or C” and “A,
B, and/ or C” means A alone, B alone, C alone, A and B
together, A and C together, B and C together, or A, B and C
together.
[0011] The term “stalking” means the process of determin
ing a person is presently using a social media netWork and can
be contacted on that social media netWork in real time.
[0012]
The term “a” or “an” entity refers to one or more of
netWork user has a prior relationship With the enterprise,
enterprise data may be consulted to ?nd Which social media
that entity. As such, the terms “a” (or “an”), “one or more” and
netWorks this user Was a member of and the necessary access
be noted that the terms “comprising”, “including”, and “hav
ing” can be used interchangeably.
information.
“at least one” can be used interchangeably herein. It is also to
May 26, 2011
US 2011/0125826 A1
[0013] The term “automatic” and variations thereof, as
used herein, refers to any process or operation done Without
material human input When the process or operation is per
formed. However, a process or operation can be automatic,
even though performance of the process or operation uses
material or immaterial human input, if the input is received
[0023] FIG. 5 is a ?oW diagram of an embodiment of a
process for generating a dialog data structure related to stalk
before performance of the process or operation. Human input
is deemed to be material if such input in?uences hoW the
process or operation Will be performed. Human input that
computing system.
consents to the performance of the process or operation is not
deemed to be “material”.
[0014] The term “computer-readable medium” as used
herein refers to any tangible storage that participates in pro
viding instructions to a processor for execution. Such a
medium may take many forms, including but not limited to,
non-volatile media, volatile media, and transmission media.
Non-volatile media includes, for example, NVRAM, or mag
netic or optical disks. Volatile media includes dynamic
memory, such as main memory. Common forms of computer
readable media include, for example, a ?oppy disk, a ?exible
disk, hard disk, magnetic tape, or any other magnetic
medium, magneto-optical medium, a CD-ROM, any other
optical medium, punch cards, paper tape, any other physical
medium With patterns of holes, a RAM, a PROM, and
EPROM, a FLASH-EPROM, a solid state medium like a
memory card, any other memory chip or cartridge, or any
other medium from Which a computer can read. When the
computer-readable media is con?gured as a database, it is to
be understood that the database may be any type of database,
such as relational, hierarchical, object-oriented, and/or the
like. Accordingly, the invention is considered to include a
ing social media user;
[0024]
FIG. 6 is a block diagram of an embodiment of a
computing environment;
[0025]
[0026]
FIG. 7 is a block diagram of an embodiment of a
In the appended ?gures, similar components and/or
features may have the same reference label. Further, various
components of the same type may be distinguished by fol
loWing the reference label by a letter that distinguishes among
the similar components. If only the ?rst reference label is used
in the speci?cation, the description is applicable to any one of
the similar components having the same ?rst reference label
irrespective of the second reference label.
DETAILED DESCRIPTION
[0027] The ensuing description provides embodiments
only, and is not intended to limit the scope, applicability, or
con?guration of the claims. Rather, the ensuing description
Will provide those skilled in the art With an enabling descrip
tion for implementing the embodiments. It being understood
that various changes may be made in the function and
arrangement of elements Without departing from the spirit
and scope of the appended claims.
[0028] A communication system 100, for interacting With
persons using social media is shoWn in FIG. 1. The commu
nication system 100 can include a contact center 102, a net
Work 108, and one or more types of social media netWorks or
systems, such as social media netWork 1 112, social media
of the present invention are stored.
netWork 2 114, and social media netWork 3 116. Social media
netWorks 1 112, 2 114, and/or 3 116 can be any social media
including, but not limited to, netWorks, Websites, or computer
enabled systems. For example, a social media netWork may
[0015]
be MySpace, Facebook, TWitter, Linked-In, Spoke, or other
tangible storage medium and prior art-recogniZed equivalents
and successor media, in Which the softWare implementations
The terms “determine”, “calculate”, and “compute,”
and variations thereof, as used herein, are used interchange
similar computer enabled systems or Websites. The commu
ably and include any type of methodology, process, math
ematical operation or technique.
nication system 100 can communicate With more or feWer
[0016]
FIG. 1, as represented by ellipses 118.
The term “module” as used herein refers to any
knoWn or later developed hardWare, softWare, ?rmware, arti
?cial intelligence, fuZZy logic, or combination of hardWare
and softWare that is capable of performing the functionality
social media netWorks 112, 114, and/or 116 than those shoWn
[0029] The netWork 108 can be any netWork or system
operable to alloW communication betWeen the contact center
102 and the one or more social media netWorks 112, 114,
and/or 116. The netWork 108 can represent any communica
associated With that element. Also, While the invention is
described in terms of exemplary embodiments, it should be
appreciated that individual aspects of the invention can be
tion system, Whether Wired or Wireless, using any protocol
and/or format. The netWork 108 provides communication
separately claimed.
capability for the contact center 102 to communicate With
sites corresponding to the one or more social media netWorks
BRIEF DESCRIPTION OF THE DRAWINGS
112, 114, and/or 116. HoWever, the netWork 108 can repre
sent tWo or more netWorks, Where each netWork is a different
[0017]
The present disclosure is described in conjunction
With the appended ?gures:
[0018]
FIG. 1 is a block diagram of an embodiment of a
communication system operable to interact With persons
using social media netWorks;
[0019]
FIG. 2A is a block diagram of an embodiment ofa
social media gateWay;
[0020]
FIG. 2B is a block diagram of an embodiment of a
communication system using different communication pro
tocols and/or formats and/ or different hardWare and softWare.
For example, netWork 108 can be a Wide area netWork, local
area netWork, the Internet, a cellular telephone netWork, or
some other type of communication system. The netWork may
be as described in conjunction With FIGS. 6 and 7.
[0030] A contact center 102 can be a system that can com
municate With one or more persons that use social media
dialog system;
netWorking sites. The contact center 102 can be hardWare,
softWare, or a combination of hardWare and softWare. The
[0021]
contact center 102 can be executed by one or more servers or
FIG. 3 is a block diagram of an embodiment of a
dialog data structure;
computer systems, as described in conjunction With FIGS. 6
[0022]
ment of a process for engaging a social media user in a
and 7. The contact center 102 can include all systems,
Whether hardWare or softWare, that alloWs the contact center
communication after responding to a post in near real time;
102 to receive, service, and respond to directed contacts. For
FIGS. 4A and 4B are ?oW diagrams of an embodi
May 26, 2011
US 2011/0125826 A1
example the contact center 102 can include the telephone or
Works, as some social media netWorks may have different
email system, the interface to human agents, systems to alloW
human agents to service and respond to received contacts, and
one or more systems operable to analyZe and improve the
function of agent interaction.
[0031] The contact center 102 may include a dialog system
104 and a social media gateWay 106. While the dialog system
types of messages or postings than other types of social media
netWorks.
[0036] While the content ?lter 202 is shoWn as part of the
social media gateWay 106, it is to be appreciated that the
content ?lter 202 may be a part of the social media netWork
API 204. The content ?lter 202 may correspond to the query
terms used by the social media netWorkAPl 204. The content
104 and the social media gateWay 106 are shoWn as being a
part of the contact system 102, in other embodiments, the
dialog system 104 and/or the social media gateWay 106 are
separate systems or functions executed separately from the
contact center 102 and/ or executed by a third party. The
dialog system 104 may process and receive messages. The
?lter 202 or query terms are an argument to the social media
netWork API 204 call. The social media netWork API 204 can
be an application that the social media netWork 112, 114,
and/or 116 provides to access the site. Thus, the social media
netWork API 204 is called and connects the social media
gateWay 106 to the social media netWork 112, 114, and/or
social media gateWay 106 can receive and translate messages
from the one or more social media netWorks 112, 114, and/or
include content of source, address ?eld, destination or recipi
116. An embodiment of the dialog system 104 is described in
conjunction With FIG. 2B. An embodiment of the social
media gateWay 106 is described in conjunction With FIG. 2A.
[0032] The contact center 102 may also communicate With
message body ?eld. For example, an obvious searchable con
tent is the name of the business enterprise running the contact
center 102 and/or products or services of the enterprises.
116. Any suitable ?lter criteria may be employed. Examples
ent address ?elds, time stamp ?eld, subject matter ?eld, and
phone, email system, personal digital assistant, laptop com
[0037] The social media gateWay 106 can include one or
more social media netWork API 204. As shoWn in FIG. 2A,
the social media gateWay 106 may include a social media
puter, or other device that alloWs the contact center 102 to
interact With the customer. The contact center 102 can modify
a non-direct contact, from a social media netWork 112, 114,
netWork API 204 for each social media netWork 112, 114,
and/or 116. As such, the social media gateWay 106 can inter
act With each social media netWork 112, 114, and/or 116 in
one or more communication devices 110. The communica
tion devices 110 can represent a customer’s or user’s cell
and/or 116, into a directed contact by sending a response
message directly to a customer’s communication device 110.
[0033]
An embodiment of the social media gateWay 106 is
the particular (often unique) format or protocol used by the
social media netWork 112, 114, and/or 116. Further, When
neW social media networks are created, the social media
gateWay 106 can easily be expanded to interact With those
shoWn in FIG. 2A. The social media gateWay 106 can include
social media netWorks by adding another social media net
one or more components Which may include hardWare, soft
Ware, or combination of hardWare and softWare. The social
Work API 204. Where social media netWorks 112 are more
standardiZed, or use substantially similar formats or proto
media gateWay 106 can be executed by a computer system
such as those in conjunction With FIGS. 6 and 7. HoWever, in
cols, a single social media netWork API can be shared by
multiple such social media netWorks 112-116.
other embodiments, the components described in conjunction
[0038]
With FIG. 2A are logic circuits or other specially-designed
hardWare that are embodied in a ?eld programmable gate
sages from and send messages corresponding to the social
media netWork 112, 114, and/or 116. The social media net
The social media netWorkAPl 204 can receive mes
array (FPGA).
Work API 204 can translate a message received from a social
[0034]
Herein, the social media gateWay 106 can include
media netWork 112, 114, and/or 116 and send the translated
one or more content ?lters 202a, 202b, and/or 2020. A content
?lter 202 can receive all of the messages for the contact center
message to a message ?lter 206. The social media netWork
API 204 can translate the received message into a standard
102 from a social media netWork 112, 114, and/or 116 and
formatted ?le. For example, the translated message may be
eliminate or delete those messages that do not require a
response. For example, a message betWeen tWo friends on a
Facebook page, if not pertaining to a product or a service of
represented by an extensible mark-up language @(ML) ?le or
other ?le having a general format. As such, each speci?c and
interface (API) 1 204a, social media netWork API 2 204b,
particular social media netWork message can be translated
into a standard format for use by the dialog system 104.
Further, the social media netWork API 204 can receive a
generally or standard format response message, from the
dialog system 104 and translate that response into a particu
larly or speci?cally formatted response message that can be
and/or social media netWork API 3 2040. With the content
posted to the corresponding social media netWork 112, 114,
?lter 202, the social media netWork API 204 only needs to
translate those messages that should be received by the dialog
and/or 116.
[0039] Messages to the contact center 102 are addressed to
the contact center 102. For example, a customer may become
the company operating the contact center 102, may not need
a response. As such, the content ?lter 202 can ?lter out or
delete that non-suitable message from the messages that are
received by social media netWork application programming
system 104. Translation typically requires the conversion of
the message into a different format.
[0035] The content ?lter 202 is provided With one or more
a “friend” of the contact center 102 on a social media netWork
heuristics for ?lter rules from a ?lter database (not shoWn).
message to the contact center 102 on Facebook. This non
These ?lter rules can be created by the external customer or
direct contact is a message that is not sent directly to the
contact center 102 but to the contact center’s Facebook page.
In other embodiments, the contact center 102 receives mes
sages not addressed to the contact center 102. For example,
the contact center 102 can receive tWeets from TWitter that are
“broadcast” rather than addressed to the contact center 102.
internal user (e.g. agent or administrator) of the communica
tion system 100. Thus, the user or customer of the communi
cation system 100 can customiZe the ?ltering of messages
from social media netWorks 112, 114, and/or 116. Further,
different rules may be applied to different social media net
114, such as Facebook. The customer may then address a
May 26, 2011
US 2011/0125826 A1
The contact center 102 may also search for message or con
social media netWork 112, 114, and/or 116 Without sending
tent on the social media network 112, 114, and/or 116. Exem
plary search criteria include customer name, customer pro
the response to the social media gateWay 106.
fession, customer home address, customer business address,
in FIG. 2B. The dialog system 104 can include one or more
customer employer name, customer educational or profes
components Which may hardWare, softWare, or combination
of hardWare and softWare. The dialog system 104 can be
executed by a computer system such as those described in
conjunction With FIGS. 6 and 7. HoWever, in other embodi
ments, the components described in conjunction With FIG.
2B, are logic circuits or other specially-designed hardWare
that are embodied in a ?eld programmable gate array (FPGA)
sional background, customer hobby, personal or business
interests, customer family pro?le, and the like. Thus, the
social media gateway 106 of the contact center 102 can query,
gather, or connect to a live feed of data from a social media
netWork 112, 114, and/or 116 and then apply a ?lter to the
indirect information.
[0040] The translated messages from the social media net
Work API 204 can be received by a message ?lter 206. A
message ?lter 206 can perform some or all of the functions of
the content ?lter 202 and eliminate messages before being
sent to the dialog system 104. HoWever, in other embodi
ments, the message ?lter 206 eliminates information from
[0043]
An embodiment of the dialog system 104 is shoWn
or application speci?c integrated circuit (ASIC). The compo
nents contained Within the dialog system 104 can include a
dialog core 210 that is communication With a message history
database 222, an agent interface 224, and a heuristic rules and
dialogs database 218. Further, the heuristic rules and dialogs
database 218 can be in communication With a dialog creator
220.
Within the messages before the trimmed messages are sent to
[0044]
the dialog system 104. For example, a message from a social
media netWork 112 may have three or four interactions
betWeen tWo parties not associated With the contact center
102. Only one of the several postings may be pertinent to the
dialog system 104. As such, the message ?lter 206 can elimi
components. For example, the dialog core 210 includes a
nate or delete at least a portion of the other messages for the
dialog system 104. Thus, the dialog system 104 receives a
message Where some of the content of the message has been
deleted. The message ?lter 206 can retrieve heuristics or ?lter
rules from a ?lter database (not shoWn), similar to the content
?lter 202. A substantial difference betWeen the content and
message ?lters 202 and 206 is that the content ?lter 202 is
speci?c to a particular message format associated With a
corresponding social media netWork 112-116, While the mes
The dialog core 210 can include one or more sub
trend analysis component 212, a text processing component
214, and an analysis tools component 216. These compo
nents, similar to the components for the dialog system 104,
can be hardWare, softWare, or combination of hardWare and
softWare. The dialog core 210 steps through the states of a
dialog data structure. A dialog is a set of inputs and associated
actions that can be taken Which alloW for the automatic and
structured response to social media requests or messages. For
example, if a user asks for a manual, the input of the text Word
“manual” can cause the dialog system 104 to send informa
tion about one or more manuals. In turn, the receiver of the
response may respond, in kind, With the selection of a certain
user manual. In Which case, the dialog data structure may then
sage ?lter 206 is applied to a standardized or universal format
and is therefore common to multiple social media netWorks
112-116. One skilled in the art Will understand the type of
rules that may be used to ?lter information from messages
the interaction betWeen the contact center 102 and a person.
such that only pertinent questions, facts, requests, or infor
This automation eliminates the need for agent involvement, in
mation is sent to the dialog system 104.
[0041] A message aggregator 208 may also be included
With the social media gateWay 106.A message aggregator 208
cient and more effective. Further, the automation expands the
can, in contrast to the message ?lter 206, combine tWo or
more messages into a packet or grouping that is sent to the
dialog system 104. Therefore, the message aggregator 208
can inter-relate or combine messages based on different infor
automatically send the user to a Website Where the user can
retrieve an electronic version of the manual. As such, the
dialog data structure alloWs the dialog core 210 to automate
some situations, and makes the contact center 102 more el?
contact center’s ability to ansWer numerous messages from
the plethora of postings on the numerous social media net
Works 112,114,and/or 116.
[0045] The dialog creator 220 Will create a dialog data
structure 300 that steps through various states for each social
mation Within the messages. For example, tWo messages may
be combined based on any of the message ?elds referenced
above, such as the person that posted the message, the subject,
the request or question asked, the person the message Was sent
to, or other information that may be pertinent to the dialog
media message that comes into the contact center 102. The
system 104. Thus, the dialog system 104 may be able to
base 232 (to ?nd out if this user has an existing order).A CRM
?rst step might be to send the social media message to the
trend analysis component 212, then to the text processing
component 214, and then execute a query of a Customer
Relationship Management (CRM) system and a CRM data
respond concurrently to tWo or more messages based on a
database 232 can store information about customers or other
grouping provided by the message aggregator 208. If the
data related to customer relations. Finally the dialog data
structure might decide that the social media message should
messages are aggregated or not aggregated, each message can
be sent from the social media gateWay 106 to the dialog
system 104.
[0042] The social media gateWay 106 can also send
responses back to the social media netWorks 112, 114, and/or
be sent to a human agent 228 for processing. The states or
node transitions are in the dialog core 210 and make use of
116. A response from an agent in the contact center 102 can be
messages. The dialog core 210 can make use of the trend
sent to the social media gateWay 106. The response may be in
a general format and translated. The translated response may
analysis component 212, text processing component 214, or
then be posted to the appropriate social media netWork 112,
114, and/or 116 by the social media gateWay 106. In other
embodiments, the agent may post the response directly to the
CRM system and/or CRM database 232, external databases,
social media user information (e.g., folloWers, friends, post
history, etc. from the social media site), or other systems.
many different components that the dialog creator 220 com
bines in any Way the user desires to handle the social media
other systems. The dialog core 210 may also interface With a
US 2011/0125826 A1
[0046]
The trend analysis component 212 is operable to
May 26, 2011
analyze trends that occur betWeen tWo or more messages
The analysis tools component 216 can revieW the response
and determine if it Was similar to the response provided by the
received by the social media netWorks 112, 114, and/or 116.
dialog data structure 300. Thus, the analysis tools component
The tWo messages can be from different social media net
216 can provide information to the dialog core 210 or the
Works, so that the trend analysis component 212 can identify
trends across several different social media netWorks 112,
dialog creator 220 to improve the dialog data structures 300
(FIG. 3) that are included in the heuristic rules and dialogs
114, and/or 116. Trends can include multiple occurrences of
database 218.
[0050] The message history database 222 can be any data
base or data storage system as described in conjunction With
FIGS. 6 and 7. Thus, the message history database 222 can
store data in data ?elds, objects, or other data structures to
alloW other systems to retrieve that information at a later time.
The message history database 222 can store previous mes
sages or information about previous messages. Thus, for
the same Word or phrase, multiple occurrences of a customer
identity, product name or service, or multiple occurrences of
some other information that might indicate a trend. Further,
the trend analysis component 212 may be able to identify
escalations in the occurrences of particular text, or identities,
or other information, or may identify multiple occurrences
over a period of time. The trend analysis component 212 may
also be able to apply one or more different algorithms to
occurrences of information Within the social media netWorks.
example, if the trend analysis component 212 is analyZing
number of occurrences of a phrase or Word over a period of
several messages over a period of time, the trend analysis
component 212 can retrieve information about previous mes
sages associated With the current analysis from the message
time and apply analysis to determine if the occurrences are
history database 222. As such, the trend analysis component
increasing or decreasing over the period of time.
[0047] The text processing component 214 is operable to
212 can better detect trends occurring at the social media
netWorks 112, 114, and/or 116. The data stored by the mes
For example, the trend analysis component 212 can match the
analyZe text of one or more messages from social media
sage history database 222 can include the entire message or
netWorks 112, 114, or 116. Some possible methods for text
only a portion of the message, and in some circumstances,
include metadata about the message(s).
[0051] The heuristic rules and dialogs database 218 can be
any type of database or data storage system as described in
conjunction With FIGS. 6 and 7. The heuristic rules and
dialogs database 218 can store information and data ?elds,
processing can include Regular Expression, Latent Semantic
Indexing (LSI), text part of speech tagging, text clustering,
N-Gram document analysis, etc. In addition, for possibly
longer documents, (such as, blogs or emails), the text pro
cessing component 214 may execute one or more methods of
document summariZation. The summariZation may occur if
the social media message Will be sent an agent 228 of the
contact center 102; the summariZation can reduce the amount
of information that the agent may manage. The text process
ing rules or models may be stored in and/ or retrieved from a
text processing rules database 230. The text processing rules
database 230 can be a database as described in conjunction
With FIGS. 6 and 7 that stores rules or models used by the text
processing component 214.
data objects, and/or any other data structures. An example of
information stored Within the heuristic rules and dialogs data
base 218 is described in conjunction With FIG. 3. The heuris
tic rules and dialogs database 218 stores rules and dialogs that
automate responses to received social media messages. The
dialogs control the interaction betWeen the dialog core 210
and the social media netWork 112, 114, and/or 116. The
dialogs or heuristic rules can be created by a dialog creator
220. Thus, the dialog creator 220 can interface With the user
The text processing component 214 can identify one
input 226 to receive information about dialogs. The user input
or more occurrences of a particular text, such as using one or
226 is then used to form the states and responses for a dialog.
[0052] An agent interface 224 is a communication system
operable to send action items to contact center agents, in the
[0048]
more of the message ?elds referenced above, in order to
associate that social media message With one or more dialogs
data structures in the heuristic rules and dialog database 218.
For example, the text processing component can look for the
Word “manual,” in the social media message. If the Word
“manual” is found, the text processing component 214 may
retrieve a dialog from the heuristic rules and dialogs database
contact center 102. An agent can be a person or other system
that is operable to respond to certain questions or requests
from a customer. For example, the agent can be a person that
has specialiZed expertise in a topic area, such as technical
support. The agent interface 224 can format the social mes
218, Which communicates With the customer about one or
sage into an action item and forWard that message to one or
more oWner’s manuals, repair manuals, or other types of
manuals. In another example, if the social media message
more agents 228. The agent interface 224 can also receive
includes the Words, “buy”, “sell”, “price, “discount” or other
response(s) back from the agents 228. The information pro
vided by the agent may be used by the dialog core 210 to
types of Words that may indicate the user or customer Wishes
complete a response to the social media message. For
to buy a product, the text processing component 214 can
example, the information may classify the social media mes
retrieve one or more dialogs from the heuristic rules and
sage (e.g., sales, service, etc.). In other embodiments, the
dialogs database 218 that can assist the customer in purchas
response is a complete response to the social media message
that can be posted to the social media netWork 112, 114,
and/or 116.
[0053] An embodiment of a dialog data structure 300 is
shoWn in FIG. 3. The dialog data structure 300 can be stored
in several different forms of databases, such as relational
ing products or services from the enterprise.
[0049] The analysis tools component 216 is operable to
analyZe response messages received back from an agent inter
face 224. In analyZing the agent’s responses, the analysis
tools component 216 can determine if the dialog data struc
tures 300 (FIG. 3) originally retrieved by the text processing
databases, ?at ?les, object-oriented databases, etc. Thus,
component 214 met the needs of the customer. In the analysis,
While the term “data ?eld” or “segment” is used, the data may
the agent may enter one or more items of information, for the
be stored in an object, an attribute of an object, or some other
analysis tools component 216, about the response and about
form of data structure. Further, the dialog data structure 300
can be stored, retrieved, sent, or received during the process
hoW the response matched With the dialog data structures 3 00.
May 26, 2011
US 2011/0125826 A1
ing of dialogs by the dialog core 210 or the dialog creator 220.
The dialog data structure 300 stores one or more items of
information in one or more data ?elds. The numeric identi?
ers (eg 302, 304, etc.) shoWn in FIG. 3 can identify, in one or
more ?elds or segments, either the data ?eld or segment or the
data stored in the data ?eld or segment.
[0054] The dialog data structure 300 can include one or
more input segments, such as, input segment 1 302 and input
segment 2 304, a rules segment 306, and/or a dialog script
segment 308. Input segments 302 and 304 each include one or
more ?elds comprising the one or more inputs that may be
required to associate a social media message With the dialog
data structure 300. The inputs segments 302 and 304 may
include a customer identity, a respective customer type, a text
segments 308, and direct the dialog core 210 to complete tWo
dialog script segments on the social media message. Also,
dialog script segments 308 may not be associated With a
response but direct the dialog core 210 to complete other
actions, such as populating databases or gathering informa
tion.
[0058] An embodiment of a process or method 400 for
engaging a social media user in a communication is shoWn in
FIGS. 4A and 4B. Generally, the method 400 begins With a
start operation 402 and terminates With an end operation 430.
While a general order for the steps of the method 400 are
shoWn in FIGS. 4A and 4B, the method 400 can include more
or feWer steps or arrange the order of the steps differently than
those shoWn in FIGS. 4A and 4B. The method 400 can be
executed as a set of computer-executable instructions
executed by a computer system and encoded or stored on a
Word, a phrase, or other information that indicates that the
dialog data structure 300 is associated With the social media
messages. The input segments 302 and 304 may also include
certain trends that the trend analysis component 212 can
identify. As such, if a trend is identi?ed and associated With
computer readable medium. Hereinafter, the method 400
shall be explained With reference to the systems, components,
modules, softWare, data structures, etc. described in conjunc
the inputs in input segments 1 302 and/or 2 304, the dialog
tion With FIGS. 1-3.
data structure 300 can be retrieved and used by the dialog core
210. While there are only tWo input segments 1 302 and 2 304
shoWn in FIG. 3, there may be more or feWer input segments
sage from a social media netWork 112, in step 404. The social
media gateWay 106 of the contact center 102 can receive the
associated With the dialog data structure 300, as indicated by
[0059]
A contact center 102 receives a social media mes
ellipses 310.
message. A content ?lter 202a passes the social media mes
sage through to a social media netWork API 204. The social
[0055]
The rules segment 306 can include one or more
media message may then be passed through a message ?lter
heuristic rules that either help With the association of the
respective dialog data structure 300 With the social media
message or control the interaction betWeen the dialog core
210 and the social media customer. For example, the rule 306
can state that the dialog data structure 300 applies only if the
social media message includes input segment 1 302 but not
input segment 2 304. One skilled in the art Will be able to
identify other types of rules that may govern the association
206 and a message aggregator 208 to be sent to a dialog
system 104.
[0060] The dialog system 104 can process the social media
message, in step 406. The dialog core 210, of the dialog
system 104, can process the message to determine if the user
that posted the social media message is being stalked. To
determine if the user is being stalked, the dialog core 210 ?rst
determines the identity of the user, in step 408. The dialog
of the dialog data structure 300 With the social media mes
sage. In other embodiments, the rules segment 306 states that
if the social media message includes inputs 1 302 and/or 2
304, then the dialog core 210 should respond With a certain
ponent 214 to extract the identity of the user from the social
media message. For example, the identity of the user may be
type of action.
[0056] Generally, a dialog script segment 308 includes a
Within the social media message. This identifying informa
tion may be parsed and extracted from the social media mes
script of actions or responses that direct one or more other
sage.
components, such as the dialog core 210 (FIG. 2B), to con
duct the actions or send the responses. The dialog script
[0061] Once the identity of the user is determined from the
social media message, the text processing component 214 can
search a message history database 222, CRM database 232 or
segment 308 can include the one or more responses required
core 210 processes the message With a text processing com
a user name, email, or some other identifying information
by the dialog core 210. If the dialog script segment 308
applies (that is, if the social media message is requesting a
certain type of information), the dialog script segment 308
may be associated With the identity extracted from the social
may include the one or more responses that the dialog core
media message, such as “Big Dog 26”, the text processing
210 should communicate to respond to that social media
message. The dialog script segment 308 can also include a
response and a pointer to another dialog script segment 308 or
actual name of the user, such as “Bill Smith.”
another dialog data structure 300. Further, the dialog script
mined, the text processing component 214 may then search
one or more other sources to determine other identities Which
media message. For example, if a username is used in a social
component may relate the “Big Dog 26” user name With an
[0062]
After the possible identities of the user are deter
segment 308 may have one or more actions that may be taken
one or more dialog data structures 300 stored in a heuristic
by another component after a secondary response is received
by a customer. Thus, the dialog script segment 308 can alloW
rules and dialogs database 218 for the identities, in step 410.
In searching the dialog data structures 300, the text process
an interaction to continue With a social media user over a
ing component 214 analyZes input segment 1 302, input seg
period of time and several interactions betWeen the user and
ment 2 304, and one or more other input segments to locate a
user name that is the same as the identity extracted from the
social media message or an identity that is related to the
the contact center 102.
[0057]
It should be noted that the dialog script segment 308
can reference one or more other dialog data structures 300.
Thus, the dialog script segment 308 can direct the dialog core
210 to reference at least one other dialog data structure 300 to
further act on the social media message. Further, the social
media message can be subject of tWo or more dialog script
identity in the social media message. The text processing
component 214, of the dialog core 210, then determines if the
user is being stalked, in step 412. To determine if the user is
being stalked, the text processing component 214 determines
if one of the user identities is located in the dialog data
May 26, 2011
US 2011/0125826 A1
structure 300. If the user identity is in an input segment 1 302,
input segment 2 304, or one or more other input segments,
then the text processing component 214 understands that the
user is subject to stalking. If the user is being stalked, the
determination step 412 ?oWs “YES” to step 414. If the user is
not being stalked, the step 412 ?oWs “NO” to off-page con
[0066] After the invitation is sent, the dialog core 210 deter
mines if a response to the invitation is received, in step 424. In
order to engage the user in a communication, the dialog core
210 needs to receive a response that the user is interested in
the communication. This positive response can be a subse
quent post in the social media netWork 112 or a positive
nector A 416.
response over a communication device 110 or other commu
[0063]
segment 308 from the dialog data structure 300, in step 414.
The dialog script includes the information that is sent to the
nication media. If the social media gateWay 106 or dialog
system 104 receives a positive response, then step 424 pro
ceeds “YES” to step 428. HoWever, if no response is received,
then step 424 proceeds “NO’ to step 426. Or, if a negative
user as an invitation and What actions the dialog core 210 Will
response is received because the user does not desire to con
complete if the user is being stalked. The method 400 ?oWs
through off-page connector B 418 to FIG. 4B. The dialog
script then directs the text processing component 214 to send
duct a communication, step 424 ?oWs “NO” to step 426. In
embodiments, a timer is set for a pre-determined amount of
If the user is being stalked, the text processing com
ponent 214 reads the dialog script from the dialog script
an invitation to the user on the social media netWork 112, or
by another communication media, to interact With an agent, in
step 420. Thus, the dialog script can contain the Wording and
information required for the invitation in Which the text pro
cessing component 214 can compose for the dialog core 210
to send to the social media gateWay 106. The invitation can be
sent through the social media netWork API 204 to the social
media netWork 112. As such, the user may receive an invita
tion in response to the posted mes sage in real time or near real
time. It should be noted that real near time or real time means
that the invitation arrives at the social media netWork soon
after When the user posts the message. For example, the
invitation should arrive Within a pre-determined period of
time. The time limit for the pre-determined period of time
may be set and listed in the dialog script. Regardless, the
pre-determined period of time With Which the invitation
should arrive should be Within seconds or minutes of the
posting of the social media message. Therefore, the contact
center 102 can quickly contact the user on the social media
netWork 112 and then quickly engage the user in a commu
nication.
[0064] Further, the text processing component 214 can be
directed by the dialog script to schedule a human agent to
conduct a communication, in step 422. The text processing
component 214 may send a request to the agent interface 224
for a human agent to be scheduled for the communication.
The agent interface 224 may then schedule an agent 228 to
conduct the communication. In scheduling the agent, the
agent interface 224 may have an agent 228 set aside for the
communication, such that, if the invitation is returned posi
time as prescribed by the dialog script 308 to Wait for the
response to an invitation. For example, the dialog core 210
may need to Wait 5 minutes for a response before it deter
mines no response is received. As such, the dialog core 210
stops trying to engage the user or sends another invitation
after the timer has expired.
[0067]
If no response is received to the invitation or the
response is negative, the dialog core 210 releases the agent
228, in step 426. As explained in step 422, an agent 228 is
scheduled to conduct the communication in real time or near
real time. Thus, there is little gap in receiving the response to
the invitation and the agent 228 engaging in the communica
tion. Thus, if no response is received or if the response is
negative, the agent 228 must be released. As such, the text
processing component 214 can send a message through the
agent 228 interface 224 to the agent that releases the agent
228 from needing to communicate With the user. As such, the
agent 228 can then conduct other actions or receive other
messages or phone calls.
[0068] If a response is received and the response is positive,
the dialog core 210 directs a communication betWeen the user
and the agent 228, in step 428. In embodiments, the invitation
response is sent through the agent interface 224 to the agent
228 to begin the communication. The agent 228 may then
begin the communication, and the dialog system 104 is
released from further action With the social media message.
[0069] An embodiment of a method 500 for creating a
dialog data structure for staking social media user(s) is shoWn
in FIG. 5. Generally, the method 500 begins With a start
operation 502 and terminates With an end operation 516.
While a general order for the steps of the method 500 are
tively from the user, the agent 228 can quickly engage the user
in the communication.
shoWn in FIG. 5, the method 500 can include more or feWer
[0065] Beyond sending the invitation through the social
shoWn in FIG. 5. The method 500 can be executed as a set of
media netWork API 204 to the social media netWork 112, it
may be possible for the dialog core 210 to send an invitation
and schedule an agent for a different type of communication
media. For example, some social media messages include
computer-executable instructions executed by a computer
presence or location information. For example, a TWeet on
TWitter can include the current location of the user. Thus, if
steps or arrange the order of the steps differently than those
system and encoded or stored on a computer readable
medium. Hereinafter, the method 500 shall be explained With
reference to the systems, components, modules, softWare,
data structures, etc. described in conjunction With FIGS. 1-3.
[0070]
The dialog creator 220 receives an identity for a user
the user is TWeeting from their home, the text processing
that is subject to stalking, in step 506. The identity may be the
component 214 can use that location information in the TWeet
name of the user, a user name, an email address, or some other
to retrieve a phone number associated With the location, from
a CRM database 232.As such, the text processing component
214 can create an invitation for the phone that is sent not to the
social media netWork 112 but to the telephone of the user. The
invitation is sent through the dialog core 210 to communica
tion device 110. Thus, the dialog core 210 is able to engage
the user in other mediums of communication beyond just the
social media netWork 112.
identifying information. The dialog creator 220 may look for
other identities of the user for other social media netWorks 1
112,2 114, or 3 116, in step 506. The dialog creator 220 can
send the received identity for the user to the dialog core 210 to
search the message history database 222 and/or CRM data
base 232 for other identities associated With the user. In other
embodiments, dialog creator 220 can search one or more
social media netWorks 1 112, 2 114, and/or 3 116 to search for
May 26, 2011
US 2011/0125826 Al
the user identity and then locate other identities. After the
identities are determined, or received, the dialog creator 220
can receive an invitation, in step 508. The invitation includes
the text or information that is used in an invitation sent to the
user to engage in a communication. The invitation may be text
and then converted to a voice invitation for other communi
cation media.
[0071] In still other embodiments, the invitation may be
voice communicated or translated into text for social media
netWorks 112, 114, or 116.
[0072] The dialog creator 220 can then receive an agent
communication protocol, in step 510. The agent communica
tion protocol includes the actions or steps required to sched
ule an agent for communication. The actions may include
Which agent 228 to schedule, When to schedule the agent
based on When the invitation is sent or When a social media
message is received, or may include other information for
hoW to engage an agent 228 in a communication With a social
media user.
[0073] The dialog creator 220 may then receive parameters
for the stalking of the user, in step 512. The parameters may
include When to send the invitation based on the receipt of the
thin-client computer, Intemet-enabled mobile telephone,
and/or personal digital assistant, capable of communicating
via a netWork 620 and/or displaying and navigating Web
pages or other types of electronic documents. Although the
exemplary system 800 is shoWn With three user computers,
any number of user computers may be supported.
[0076] System 600 further includes a netWork 620. The
netWork 620 may can be any type of netWork familiar to those
skilled in the art that can support data communications using
any of a variety of commercially-available protocols, includ
ing Without limitation SIP, TCP/IP, SNA, IPX, AppleTalk,
and the like. Merely by Way of example, the netWork 620
maybe a local area netWork (“LAN”), such as an Ethernet
netWork, a Token-Ring netWork and/or the like; a Wide-area
netWork; a virtual netWork, including Without limitation a
virtual private netWork (“VPN”); the Internet; an intranet; an
extranet; a public sWitched telephone netWork (“PSTN”); an
infra-red netWork; a Wireless netWork (e.g., a netWork oper
ating under any of the IEEE 602.11 suite of protocols, the
BluetoothTM protocol knoWn in the art, and/ or any other Wire
less protocol); and/ or any combination of these and/or other
netWorks. The netWork 620 may be the same or similar to
social media post, may include a time limit for the stalking, or
may include other information on hoW to conduct the stalk
netWork 106.
ing. The parameters for the stalking can be incorporated in the
rules segment 306 of the data dialog structure 300. Thus, the
computers 625, 630. One server may be a Web server 625,
Which may be used to process requests for Web pages or other
parameters dictate hoW the dialog core 210 Will conduct the
electronic documents from user computers 605, 610, and 620.
The Web server can be running an operating system including
any of those discussed above, as Well as any commercially
stalking.
[0074] The information received including the identity
received, the identities determined, the invitation, the proto
col, and the parameters can be stored in a dialog data structure
300, in step 516. Thus, the dialog creator 220 can create a
dialog data structure 300. The one or more identities of the
user can be stored in the input segment 1 302 and/or 2 304.
The parameters for stalking the user can be stored in the rules
segment 306. The agent communication protocol and invita
tion information may be incorporated in a dialog script in a
dialog script segment 308. As such, the dialog creator 220 can
create a data dialog structure 300 operable to direct the stalk
ing of a user. The dialog creator 220 can then store the dialog
data structure 300 in the heuristic rules and dialogs database
218. The dialog creator 220 can receive tWo or more of the
identities for tWo or more users of social media netWorks 1
112, 2 114, or 3 116 and store different dialog data structures
300 in the heuristic rules and dialog database 218. As such,
the dialog core 210 can stalk tWo or more users concurrently
and conduct communications With those users concurrently if
[0077]
The system may also include one or more server
available server operating systems. The Web server 625 can
also run a variety of server applications, including SIP serv
ers, HTTP servers, FTP servers, CGI servers, database serv
ers, Java servers, and the like. In some instances, the Web
server 625 may publish operations available operations as one
or more Web services.
[0078] The system 600 may also include one or more ?le
and or/application servers 630, Which can, in addition to an
operating system, include one or more applications acces
sible by a client running on one or more of the user computers
605, 610, 615. The server(s) 630 may be one or more general
purpose computers capable of executing programs or scripts
in response to the user computers 605, 610 and 615. As one
example, the server may execute one or more Web applica
tions. The Web application may be implemented as one or
more scripts or programs Written in any programming lan
guage, such as JavaTM, C, C#TM, or C++, and/ or any scripting
language, such as Perl, Python, or TCL, as Well as combina
both users are submitting social media messages at the same
time or at approximately the same time.
tions of any programming/ scripting languages. The applica
[0075]
ing Without limitation those commercially available from
Oracle, Microsoft, SybaseTM, IBMTM and the like, Which can
FIG. 6 illustrates a block diagram ofa system 600
tion server(s) 630 may also include database servers, includ
that may function as servers, computers, or other systems
provided herein. The system 600 includes one or more user
process requests from database clients running on a user
computers 605, 610, and 615. The user computers 605, 610,
and 615 may be general purpose personal computers (includ
computer 605.
[0079] The Web pages created by the Web application
ing, merely by Way of example, personal computers, and/or
server 630 may be forWarded to a user computer 605 via a Web
laptop computers running various versions of Microsoft
Corp.’s WindoWsTM and/ or Apple Corp.’s MacintoshTM oper
ating systems) and/or Workstation computers running any of
receive Web page requests, Web services invocations, and/or
a variety of commercially-available UNIXTM or UNIX-like
page requests and/or input data to the Web application server
operating systems. These user computers 605, 610, 615 may
also have any of a variety of applications, including for
830. In further embodiments, the server 630 may function as
a ?le server. Although for ease of description, FIG. 6 illus
trates a separate Web server 625 and ?le/application server
example, database client and/ or server applications, and Web
broWser applications. Alternatively, the user computers 605,
610, and 615 may be any other electronic device, such as a
server 625. Similarly, the Web server 625 may be able to
input data from a user computer 805 and can forWard the Web
630, those skilled in the art Will recogniZe that the functions
described With respect to servers 625, 630 may be performed
May 26, 2011
US 2011/0125826 A1
by a single server and/or a plurality of specialized servers,
depending on implementation-speci?c needs and parameters.
The computer systems 605, 610, and 615, ?le server 625
and/or application server 830 may function as the system,
devices, or components described in FIGS. 1-3.
[0080] The system 600 may also include a database 635.
The database 635 may reside in a variety of locations. By Way
of example, database 635 may reside on a storage medium
local to (and/or resident in) one or more of the computers 605,
610, 615, 625, 630. Alternatively, it may be remote from any
or all ofthe computers 605, 610, 615, 625, 630, and in com
munication (e.g., via the netWork 620) With one or more of
these. In a particular set of embodiments, the database 635
may reside in a storage-area netWork (“SA ”) familiar to
those skilled in the art. Similarly, any necessary ?les for
performing the functions attributed to the computers 605,
610, 615, 625, 630 may be stored locally on the respective
computer and/or remotely, as appropriate. In one set of
embodiments, the database 635 may be a relational database,
such as Oracle IOiTM, that is adapted to store, update, and
retrieve data in response to SOL-formatted commands.
[0081] FIG. 7 illustrates one embodiment of a computer
system 700 upon Which the servers, computers, or other sys
tems or components described herein may be deployed or
executed. The computer system 700 is shoWn comprising
hardWare elements that may be electrically coupled via a bus
and/or other code 750, such as program code implementing
the ancillary server 300. It should be appreciated that alter
nate embodiments of a computer system 700 may have
numerous variations from that described above. For example,
customiZed hardWare might also be used and/or particular
elements might be implemented in hardWare, softWare (in
cluding portable softWare, such as applets), or both. Further,
connection to other computing devices such as netWork input/
output devices may be employed.
[0085] In the foregoing description, for the purposes of
illustration, methods Were described in a particular order. It
should be appreciated that in alternate embodiments, the
methods may be performed in a different order than that
described. It should also be appreciated that the methods
described above may be performed by hardWare components
or may be embodied in sequences of machine-executable
instructions, Which may be used to cause a machine, such as
a general-purpose or special-purpose processor or logic cir
cuits programmed With the instructions to perform the meth
ods. These machine-executable instructions may be stored on
one or more machine readable mediums, such as CD-ROMs
or other type of optical disks, ?oppy diskettes, ROMs, RAMs,
EPROMs, EEPROMs, magnetic or optical cards, ?ash
memory, or other types of machine-readable mediums suit
able for storing electronic instructions. Alternatively, the
processing units (CPUs) 705; one or more input devices 710
methods may be performed by a combination of hardWare and
softWare.
[0086] Speci?c details Were given in the description to pro
755. The hardWare elements may include one or more central
(e.g., a mouse, a keyboard, etc.); and one or more output
vide a thorough understanding of the embodiments. However,
devices 715 (e.g., a display device, a printer, etc.). The com
it Will be understood by one of ordinary skill in the art that the
puter system 700 may also include one or more storage
embodiments may be practiced Without these speci?c details.
For example, circuits may be shoWn in block diagrams in
devices 720. By Way of example, storage device(s) 720 may
be disk drives, optical storage devices, solid-state storage
devices such as a random access memory (“RAM”) and/ or a
read-only memory (“ROM”), Which can be programmable,
?ash-updateable and/or the like.
[0082] The computer system 700 may additionally include
a computer-readable storage media reader 725; a communi
cations system 730 (e.g., a modem, a netWork card (Wireless
or Wired), an infra-red communication device, etc.); and
Working memory 740, Which may include RAM and ROM
devices as described above. In some embodiments, the com
puter system 700 may also include a processing acceleration
unit 735, Which can include a DSP, a special-purpose proces
sor, and/or the like.
[0083]
The computer-readable storage media reader 725
order not to obscure the embodiments in unnecessary detail.
In other instances, Well-knoWn circuits, processes, algo
rithms, structures, and techniques may be shoWn Without
unnecessary detail in order to avoid obscuring the embodi
ments.
[0087]
Also, it is noted that the embodiments Were
described as a process Which is depicted as a ?oWchart, a ?oW
diagram, a data ?oW diagram, a structure diagram, or a block
diagram. Although a ?oWchart may describe the operations as
a sequential process, many of the operations can be per
formed in parallel or concurrently. In addition, the order of the
operations may be re-arranged. A process is terminated When
its operations are completed, but could have additional steps
age device(s) 720) comprehensively representing remote,
not included in the ?gure. A process may correspond to a
method, a function, a procedure, a subroutine, a subprogram,
etc. When a process corresponds to a function, its termination
corresponds to a return of the function to the calling function
local, ?xed, and/or removable storage devices plus storage
or the main function.
media for temporarily and/ or more permanently containing
[0088] Furthermore, embodiments may be implemented by
hardWare, softWare, ?rmWare, middleWare, microcode, hard
can further be connected to a computer-readable storage
medium, together (and, optionally, in combination With stor
computer-readable information. The communications system
730 may permit data to be exchanged With the netWork 720
Ware description languages, or any combination thereof.
and/ or any other computer described above With respect to the
system 700. Moreover, as disclosed herein, the term “storage
When implemented in softWare, ?rmWare, middleWare or
microcode, the program code or code segments to perform the
medium” may represent one or more devices for storing data,
necessary tasks may be stored in a machine readable medium
including read only memory (ROM), random access memory
(RAM), magnetic RAM, core memory, magnetic disk storage
such as storage medium. A processor(s) may perform the
necessary tasks. A code segment may represent a procedure,
mediums, optical storage mediums, ?ash memory devices
a function, a subprogram, a program, a routine, a subroutine,
a module, a softWare package, a class, or any combination of
instructions, data structures, or program statements. A code
and/ or other machine readable mediums for storing informa
tion.
[0084]
The computer system 700 may also comprise soft
segment may be coupled to another code segment or a hard
Ware elements, shoWn as being currently located Within a
Ware circuit by passing and/or receiving information, data,
Working memory 740, including an operating system 745
arguments, parameters, or memory contents. Information,
May 26, 2011
US 2011/0125826 A1
arguments, parameters, data, etc. may be passed, forwarded,
the processor scheduling, according to the dialog script, a
or transmitted via any suitable means including memory shar
contact center agent to communicate With the user;
if the user does desire to engage in the communication, the
ing, message passing, token passing, network transmission,
etc.
[0089] While illustrative embodiments of the invention
have been described in detail herein, it is to be understood that
the inventive concepts may be otherWise variously embodied
and employed, and that the appended claims are intended to
be construed to include such variations, except as limited by
the prior art.
What is claimed is:
processor directing, according to the dialog script, a
contact center agent to begin communicating With the
user; and
if the user does not desire to engage in the communication,
the processor freeing, according to the dialog script, the
contact center agent from communicating With the user.
10. The method as de?ned in claim 1, Wherein the invita
tion is sent in real time.
1. A method for conducting a near real-time interaction
11. A computer readable medium having stored thereon
betWeen a user on a social media netWork and a contact
instructions that cause a computing system to execute a
method for conducting an interaction betWeen a user on a
center, the method comprising:
a processor receiving a ?rst message from the social media
network;
social media netWork and a contact center, the instructions
comprising:
the processor determining an identity for the user from the
?rst message;
instructions to receive a ?rst message from a user posting a
the processor determining if the identity of the user is being
instructions to determine a ?rst identity for the user from
the ?rst message;
instructions to determine if the ?rst identity of the user is
stalked; and
if the identity of the user is being stalked, the processor
sending an invitation to engage in a communication.
2. The method as de?ned in claim 1, further comprising:
the processor Waiting for a response to the invitation;
if the response is received, determining if the user desires to
engage in the communication,
if the user does desire to engage in the communication,
directing a contact center agent to begin communicating
With the user;
if the user does not desire to engage in the communication,
freeing the contact center agent from communicating
With the user.
?rst message to the social media netWork;
being stalked according to a dialog data structure;
instructions to schedule, according to a dialog script in the
dialog data structure, the contact center agent to com
municate With the user; and
instructions to send, according to the dialog script and in
near real time, an invitation to engage in the communi
cation With a contact center agent.
12. The method as de?ned in claim 11, further comprising:
instructions to determine if the user desires to engage in the
communication;
if the user does desire to engage in the communication,
3. The method as de?ned in claim 2, Wherein the contact
center agent communicates With the user over the social
instructions to direct, according to the dialog script, the
media netWork Which the user posted the ?rst message.
4. The method as de?ned in claim 2, Wherein the contact
user; and
if the user does not desire to engage in the communication,
center agent communicates With the user over a second com
contact center agent to begin communicating With the
instructions to free, according to the dialog script, the
munication medium different from the social media netWork
Which the user posted the ?rst message.
5. The method as de?ned in claim 4, Wherein the second
contact center agent from communicating With the user.
13. The method as de?ned in claim 12, Wherein determin
ing if the user desires to engage in the communication com
communication medium is a telephone, email, or a text mes
prises:
sage.
6. The method as de?ned in claim 4, Wherein the ?rst
message includes presence information and Wherein the sec
ond communication medium is determined based on the sec
ond communication medium being in proximity With a loca
tion of the user based on the presence information.
7. The method as de?ned in claim 1, Wherein determining
if the identity of the user is being stalked according to a dialog
script comprises: the processor searching for a dialog data
structure in a heuristic rules and dialogs database that
includes the identity of the user in an input segment of the
dialog data structure.
8. The method as de?ned in claim 6, further comprising:
the processor retrieving the dialog data structure from the
heuristic rules and dialogs database that includes the
identity of the user in the input segment of the dialog
data structure; and
the processor reading the invitation from the dialog script
of the dialog data structure.
9. The method as de?ned in claim 8, further comprising:
the processor Waiting for a response to the invitation;
if the response is received, the processor determining if the
user desires to engage in the communication;
instructions to Wait, according to the dialog script, for a
response to the invitation for a predetermined amount of
time;
if the response is received, instructions to determine,
according to the dialog script, if the response agrees to
engage in the communication;
if the response agrees to engage in the communication,
instructions to begin, according to the dialog script, the
communication;
if the response does not agree to engage in the communi
cation, instructions to free, according to the dialog
script, the contact center agent from communicating
With the user
if no response is received during the predetermined amount
of time, instructions to generate, according to the dialog
script, a time out; and
When a time out is generated, instructions to free, accord
ing to the dialog script, the contact center agent from
communicating With the user.
14. The method as de?ned in claim 11, further comprising:
instructions to receive a second message from a second
user posting a second message to the social media net
Work;
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement