Mitel Agent Framework: Architecture and Applications - PowerPoint PPT Presentation

About This Presentation
Title:

Mitel Agent Framework: Architecture and Applications

Description:

A reusable software component that provides controlled access to ... Precedence. rules. CFB CW. CFB TC. CW TC. Conflict set {TC, CFB, CW} Result set {CFB} ... – PowerPoint PPT presentation

Number of Views:46
Avg rating:3.0/5.0
Slides: 39
Provided by: michae578
Category:

less

Transcript and Presenter's Notes

Title: Mitel Agent Framework: Architecture and Applications


1
Mitel Agent Framework Architecture and
Applications
  • Michael Weiss
  • Nov 16, 1999

2
Contents
  • Motivation
  • Objectives and issues
  • Architecture
  • Enabling technologies
  • Agent architecture and support environment
  • Case Studies
  • Feature interaction
  • Automatic route selection
  • Big Picture
  • Agent-based design
  • Call Processing Language

3
Motivation
4
Convergent Paradigm
Broadband Backbone
5
Objectives
  • Main objective
  • Rapid creation and customization of services
  • Support transparency
  • Service (who)
  • Technology (what)
  • Location (where)
  • Meet reliability and real-time constraints
  • Unexpected contingencies
  • Quality of service guarantees for services

6
Issues
  • Service and resource discovery
  • Communication
  • Ontology
  • Coordination
  • Integration with legacy systems
  • Configuration
  • Visualization and monitoring

7
Architecture
8
Agents - Our Definition
  • A reusable software component that provides
    controlled access to services.
  • A printer agent provides printing services
    schedules requests to a shared printer.
  • Basic building blocks for applications organized
    as networks of collaborating agents.
  • A desktop agent "recruits" the services of a
    trunk and a set resource agent.
  • Behavior constrained by policies set by
    higher-level agents (security, user prefs etc).
  • 60 of the calls routed over one trunk agent are
    reserved for a specific user agent.

9
Enabling Technologies
10
Layered Agent
11
Network Layer
12
Service Layer
13
Resource Layer
14
Agent Application
Super- visor
Agent
Service
Feature
Feature
Sub- ordinate
Feature
Feature
owns
owns
owns
owns
uses
uses
uses
uses
Resource adapters
Resource
Features (device independent)
Contracts
uses/owns
15
Support Environment
deployment and configuration
ADE
AEE
notifications
16
Case Studies
17
Feature Interaction
  • System Applications Resources
  • Application Services
  • Service Basic service Features

18
Causes of Feature Interaction
  • Conflicts
  • Indeterminacy
  • Assumption violation
  • Resource contention
  • Design by others (integration)
  • Design evolution (impact of changes)
  • Fault management

19
Example
  • MCA BasicCallApp Phone, CallDB
  • BasicCallApp BasicCallSvc, BillingSvc
  • BasicCallSvc TermCall (TC), OrigCall (OC)
    CallForwardBusy (CFB), CallWaiting (CW)
  • BillingSvc CallLogging (CL)

BillingSvc
BasicCallSvc
TC
CL
OC
CFB
CallDB
CW
BasicCallApp
Phone
20
Hypothetical Call Center
CallCenter
Desktop Group
Set Group
Trunk Group
TC
OC
Trunk
Trunk
Set
Set
Desktop
Desktop
CFB
CW
uses
uses
uses
uses
Resource adapters
Features (device independent)
21
State Machines for Features
22
Conflict Resolution
Conflict set TC, CFB, CW
Precedence rules CFB gt CW CFB gt TC CW gt TC
Result set CFB
23
Multi-Party Interaction
  • Consider the example of the interaction of CFB
    and OCS. The problem is typically stated as

If a caller X who subscribes to feature
Originating Call Screening calls person Y, and
if Y forwards all of their calls to a number Z on
Xs list of forbidden numbers, then X can reach
a forbidden number by calling Y.
call(Y)
forward(Z)
X isCallerScreened(Z)
Y forwardTo(Z)
Z
24
Negotiation
25
Automatic Route Selection
  • Equal access allows a company to route their
    calls through multiple carriers.
  • Conventional LCR selects route only on time of
    day and requires route tables to be precoded.
  • Our approach uses intelligent bidding between
    agents representing the carriers.
  • In this approach the agents interpret the service
    plans directly (no precoding of route tables).

26
User/Task/Mediator Pattern
  • Context
  • You want to use agents to facilitate between
    people and information sources, and people to
    people.
  • Problem
  • To encapsulate information about people, queries,
    and information sources.
  • Forces
  • Agents don't have extensive domain knowledge.
  • Since users may play multiple roles at the same
    time you must keep role-specific information
    separate.
  • Queries may be long-lived (e.g. days or weeks).
  • User feedback should be used to make
    recommendations to other users in the community.

27
User/Task/Mediator Pattern
  • Solution
  • User agents form the interface between the user
    and the other agents. They receive the user's
    queries and feedback, and present information
    tailored to the user.
  • Task agents are created for each user query. They
    propagate the query to all available sources. The
    task agents collect the results returned and sort
    them.
  • Task agents may be long-lived (e.g. days or
    weeks) and permanently represent a user in a
    given role.
  • Mediator agents mediate between task agents
  • Recommender agents store the users evaluations
    of recommendations. They apply both content-based
    and collaborative filtering before recommending
    items.
  • Search agents forward a user query to a
    user-specified search engine. The search agent
    extracts the search results from the pages
    provided by the search engine.

28
User/Task/Mediator Pattern
29
Application to ARS
30
Message Flow
Task Agent
Router Agent
Customer Agent
Carrier Agent
Trunk Agent
Trunk Agent
Carrier Agent
ask-route
ask-route
ask-bid
propose-bid
ask-bid
propose-bid
accept-bid
reject-bid
tell-route
tell-route
ask-trunk
tell-trunk
31
Visualization
32
Big Picture
33
Agent-Based Design
Non-functional requirements
Performance
Use case maps
Agents
Test cases
34
Call Processing Language
35
End
36
OPI
  • Deontic logic model
  • Obligation O(P)
  • Interdiction O(P)
  • Waiver O(P)
  • Permission O(P)
  • Examples
  • O(Originate)
  • O(Terminate) I(Forward)
  • O(Redirect) dn4578
  • O(Terminate) P(Display)

37
Originate
(Perform (O Originate) (I Redirect))
Redirect
Process Call
Acquire Destination ID
Connect Voice Path
Offer Call to Destination
Connect
Collect ID
Verify Destination Availability
Verify Destination ID
Wait Originator On Hook
Wait Destination On Hook
Wait Answer
Call Forward
Terminate
Identify Redirection ID
Redirect
Establish Connection
Verify User Availability
Indicate Call
Wait Originator On Hook
Wait Own On Hook
Connect Voice Path
38
OPI-XML
  • ltsequence name"processCallOrigination"gt
  • ltsequence name"acquireDestinationId"gt
  • ltcommand name"collectDestinationId"
    timeout"5s"gt
  • lttimeoutgt
  • ltfail action"applyReorder"/gt
  • lt/timeoutgt
  • lt/commandgt
  • ltcommand name"verifyDestinationId"gt
  • ltinvalidgt
  • ltfail action"applyReorder"/gt
  • lt/invalidgt
  • lt/commandgt
  • lt/sequencegt
  • ltsequence name"offerCallToDestination"gt
  • ltproposegt
  • ltassertion aspect"oblige"
    value"terminate"/gt
  • lt/proposegt
  • ltcommand name"verifyDestinationAvailability"
    timeout"10s"gt ...
  • ltcommand name"waitForAnswer"gt ...
Write a Comment
User Comments (0)
About PowerShow.com