1 / 17

CPL, Policies, Features, FET

CPL, Policies, Features, FET. Jacques Sincennes. Overview. Feature: service enhancement through subscription to added functionality. CPL allows users to customize the service via call setup instructions.

jake
Download Presentation

CPL, Policies, Features, FET

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CPL, Policies, Features, FET Jacques Sincennes

  2. Overview • Feature: service enhancement through subscription to added functionality. • CPL allows users to customize the service via call setup instructions. • FET target the specification of telephone systems, the definition of features, and user customization of the service on top.

  3. CPL in a nutshell • CPL permits to customize the SIP/Proxy server by instructing it how to react under specific circumstances, during call setup. • It is designed to minimize the risks of misbehaviors caused by erroneous scripts (e.g. by forbidding recursion) and claims to be intended for general users (as opposed to designers).

  4. CPL-Driven System User CPL SIP/Proxy Server Network

  5. CPL Mode of Operation • intercept INVITE message • incoming and outgoing • follow decision tree, based on message and/or environment values • address/time/priority/string switches • execute action • proxy/redirect/reject • optionally handle action response • proxy -> busy | no-answer

  6. CPL Locations CPL provides means of managing the list of target addresses through: • Static Location • statically specifying an address • Registration Lookup • fetch the current user's address • Source Lookup • (dynamically) obtain addresses

  7. Address- and Time-Switched Features • Speed Call (address proxying) • e.g. invite(12) -> invite(555-1212) • Outgoing Call Screening (address rejection) • e.g. invite(1-976-555-1212) -> reject • Incoming Call Screening (address rejection) • e.g. invite(1-800-salesman) -> reject • Do Not Disturb (timely rejection) • e.g. time(lunch) -> reject("Gone to Lunch") • Night Service (timely proxying) • e.g. time(day) -> invite(01) | time(night) -> invite(02)

  8. CPL Location Manipulations • Call Forward on Busy: • proxy -> busy -> location (ForwardToTel) -> proxy • Call Forward: • location (ForwardToTel) -> proxy • Hunt Groups: • location (SetOfNumbersToForwardTo) -> proxy (ordering=sequential, timeout) • Call Forking: • location (SetOfNumbersToForwardTo) -> proxy (ordering=parallel)

  9. CPL Caveats • Location • sensitive lookups, storage • Presence • location and availability switches • In-Call Processing • Administrative operations

  10. FET In a nutshell • FET are lower level than CPL: they aim at dealing with all system operations. Therefore, all of the current CPL functionality should be implementable by FET. • Not unlike CPL, FET permit to customize the SIP/Proxy server by instructing it how to react; this holds for call setup in particular, and for any other events in general.

  11. FET-Driven system FET are executed as (or by) agents, and would share a similar view of the system to that of CPL. User FET SIP/Proxy Server Network

  12. FET Mode of Operation • FET describe how the system reacts to the presence of events on the tuple-space • FET of Basic Service and Features are used to define user’s policies • User Agents implement the user's policies: • lookup the tuple-space for events related to user • execute the first FET that applies • repeat until no more event concerns user

  13. Feature Execution Tree Pre-Cdn Action Pre-Cdn Action Post-Cdn

  14. FET Format feature(Parameters, fet([Pre-Condition], [Action], [Post-Condition]) ). % caller goes off-hook (to initiate a call) and gets dial-tone basic( Self, fet( [status(Self, idle), action(Self, off_hook)], [status(Self, dial_tone)], [not(status(Self, idle)), not(action(Self, off_hook))] ) ).

  15. FET of Features call_Forward(Self, From, To, fet([event(invite(From, Redirector, Self))], [event(invite(From, Self, To))], [not(event(invite(From, Redirector, Self)))] )). call_Screening(Source, Destination, fet([event(invite(Source, Redirector, Destination))], [event(busy(Destination, Source))], [not(event(invite(Source, Redirector, Destination)))])).

  16. Policies using FET % time_period(0): ENTERPRISE forbids "luigi" to call "jack": policy(enterprise, FET) :- time_period(0), call_Screening(luigi, jack, FET). % time_period(1): "jack" forwards all incoming calls to "ruoshan": policy(jack, FET) :- time_period(1), call_Forward(jack, _From, ruoshan, FET).

  17. Other Actors The enterprise, group and other entities may exist in the system as user's agents do, with varied priorities. System data FET has access to system data and is not limited to static data provided in the user's policy. Furthermore, it can also store data for later use (e.g. redial, recall). FET Caveats Recursion Due to its mode of operation, FET is sensitive to loops.

More Related