+ All Categories
Home > Documents > © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent...

© 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent...

Date post: 01-Jan-2016
Category:
Upload: emerald-watkins
View: 217 times
Download: 2 times
Share this document with a friend
13
2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan Avaya Labs Research Basking Ridge NJ
Transcript
Page 1: © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan.

© 2005 Avaya Inc. All rights reserved.

Using Context-Awareness and User Negotiation for Intelligent Dialing in

Enterprise Communications

Using Context-Awareness and User Negotiation for Intelligent Dialing in

Enterprise Communications

Amogh Kavimandan

Avaya Labs Research

Basking Ridge NJ

Page 2: © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan.

2© 2005 Avaya Inc. All rights reserved.

State-Of-The-Art in Establishing Phone Calls

Setting up a call between initiator and recipient is primitive, slow, and leads to decreased productivity

– Requires manually determining recipient’s presence and availability on various possible endpoints

– Gauging initiator’s intent relies on caller ID and known facts about initiator

• Scenario 1: While on a call, A does not accept important call from C because A thinks that C typically makes social calls

• Scenario 2: A interrupts important call to accept incoming call from C and finds out that C wants to talk about football

Scenario 1: C originates high priority, project related call

BAC

BAC

Scenario 2: C originates social call to discuss a football match

Page 3: © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan.

3© 2005 Avaya Inc. All rights reserved.

Our Approach: Intelligent Dialing (ID)Injects context-awareness into call path by leveraging context-aware communications middleware (Mercury)

– Evaluates user context to automatically determine currently best (voice) endpoint to reach recipient at

– Determines recipient interruptibility

Introduces negotiation mechanism to allow recipient to quickly gauge initiator’s call context (CallerID++) and instantly respond to itBenefits:

– reduces manual work, phone tag, unnecessary interruptions of ongoing calls

– Finds recipients wherever they are and interrupts them if necessary

BAC

<Call for A>

<Collect call context from C>

<Important Call from C, establish the call/listen to context briefly>

<Collect call context from C>

<Social Call from C, Continue with the current call with B>

<Park B while A and B are connected >

Intelligent Dialing

<Call for A> <Call A--B>

<Call A--B>

<Call A--B>

Page 4: © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan.

4© 2005 Avaya Inc. All rights reserved.

Challenges for ID in Enterprise Communications

In conjunction with an enterprise middleware, ID has to address following challenges:

– Injecting user context awareness and evaluation into call establishment

– Enabling user negotiation: ID may initiate dialogs with users. This entails support for:

• Collection of call context

– Based on user roles + characteristics. Depending on the initiator-recipient of a call, a questionnaire should be chosen

• Pushing call context to the recipient while she is in an active call

• Collecting recipient’s feedback during an ongoing call

– Usability: Maximize user convenience, minimize disruptions, intuitive to use

Page 5: © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan.

5© 2005 Avaya Inc. All rights reserved.

ArchitectureID Framework is built on top of Mercury and Asterisk PBX

Major modules:

– Context Reader: Populates queries for present call. Queries can be dynamically updated

– Context Evaluation and Presentation: Presents call context to recipient and collects response

– Context Collection: Provides a questionnaire to initiator, collects call context

System uses Asterisk Java (0.2) and Web Services interface to interact with Asterisk PBX and Mercury, respectively

<User Response>

Negotiation Framework

Figure 1. ID Framework

Context Collection

Mercury Enterprise Middleware

Asterisk PBX

Context Evaluation

Presentation

Initiator Entity Recipient

Entity

<Response to Context Queries>

<Request Negotiation Setup>

Context Reader

<Read Context Queries>

ID Framework

<Response and Presentation>

Page 6: © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan.

6© 2005 Avaya Inc. All rights reserved.

Context Evaluation

Context Evaluation keeps entity session information:

– Manager Interface: Provides administrative interface to Asterisk server. Stores session information

– Options: Reads CLI authentication information required later by Manager

– Active Calls: maintains

Presentation

Options

Active Calls

<Get Active Call>

Figure 3. Context Evaluation & Presentation

Manager Interface

<Read authentication information>

Context Evaluation & Presentation

Abstract Manager Interface

<implements>

Recipient Entity

<User Response>

Server

RMI Registry

<Bind Manager Interface>

a list of channels involved in a call and is useful in quickly determining the channels to be transferred

Page 7: © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan.

7© 2005 Avaya Inc. All rights reserved.

Context Collection (1/2)Context Collection constructs context of new call:

– Options: Contains CLI options (format, name of audio file, output file name, location on server, etc.) required by other modules

– Context Collection: Read queries from reader, convert to speech if required

– Text To Speech: Converts queries into WAV files (which is the questionnaire used by User Interaction)

– User Interaction: Queries user to construct call context, provides error checking. Stores user response on Asterisk server

Context Collection

Options

Text To Speech

Initiator Entity

<Response to Context Queries>

<Generate WAV queries>

Context Reader

<Read Context Queries>

Figure 2. Context Collection

User Interaction

<Originate>

<Read CLI options>

Context Collection

Page 8: © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan.

8© 2005 Avaya Inc. All rights reserved.

Context Collection (2/2) Context Reader returns latest queries configured for the current type of call/initiator properties

Audio files are generated if they are not already present on Asterisk server or if queries have been updated recently

Context Collection is run as AGI script, after determining that call context has to be collected for ensuing call

Converting textual queries to audio files is done by Text To Speech, which uses Java Speech Synthesizer (1.2.1) API

User Response depends on queries, typical response may consist of 1. User Name 2. Call type (social, business etc.) 3. Priority 4. Expected call duration (“Just one question”,…, “Long call”) 5. Set to retry for later, etc.

Page 9: © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan.

9© 2005 Avaya Inc. All rights reserved.

Presentation (1/2)

Presents context collected earlier as a whisper to recipient. Also collects user response, provides error checking. Runs as AGI script and reports user response to Manager Interface

Manager Interface and Presentation each run in separate virtual machines. To facilitate easy access of Manager by Presentation (and its other clients) a Server publishes Manager object to RMI registry

Whispering a call context involves moving recipient’s active channel temporarily into a conference and pushing context as WAV file

Page 10: © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan.

10© 2005 Avaya Inc. All rights reserved.

Presentation (2/2)

<Meet Me>

A B

C

Evaluation & Presentation

<Can Call B?>

<Call A-B>

<Can Call A?>

<Call A-B (Meet Me)>

<Call C-Asterisk >

<Call A-B>

Figure 4. Sample Call Flow

Since the recipient is determined to be busy with another call, that call (involving 2+ channels) is moved into a conference

Recipient is given a choice to continue with the current call, or leave it and join the new call initiator <Whisper to A>

Page 11: © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan.

11© 2005 Avaya Inc. All rights reserved.

Call Establishment scenario supported by ID

<Call Alice-Bob>

<Bob @3001>

<Call A

lice@1900>

<Cary@2500>

<Alice@2000>

<ID D

ialog>

<ID D

ialog

(whisper)>

Cary originated a call to Alice@1900. Since Alice is known to be available @2000, the call is diverted to this extension

Call Context is collected from Cary, since she wants to reach Alice (even when she is busy with Bob)

Call context is injected (to Alice’s call leg) appropriately even when Alice is talking with Bob. She decides, based on the context, to continue with the current call, and not take Cary’s call

Figure 5. Call Establishment with ID

Page 12: © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan.

12© 2005 Avaya Inc. All rights reserved.

Acknowledgement

We would like to thank Dr. Jay Stiles and Dr. A. S. Krishnakumar for numerous helpful discussions on Asterisk PBX, sharing their code with us and giving useful insights on writing applications using Asterisk Gateway Interface, during the course of this project

Page 13: © 2005 Avaya Inc. All rights reserved. Using Context-Awareness and User Negotiation for Intelligent Dialing in Enterprise Communications Amogh Kavimandan.

13© 2005 Avaya Inc. All rights reserved.

Conclusion and Future Work

We presented the notion of Intelligent Dialing (ID) using context-awareness and user negotiation

– ID automatically finds the most likely voice endpoint that a call recipient is available on

– If the call recipient is already on a call but interruptible, ID collects a call context (CallerID++) from the call initiator, pushes this context, and allows the recipient to instantaneously respond with an action (stay in/drop current call, etc.)

We plan to investigate the usability of the application by carrying out several user studies

We also plan to extend this application to other phone systems (for example, Avaya one-XTM Quick Edition)


Recommended