Call-Processing Language

Call-Processing Language (CPL) – язык описания правил обработки вызовов. Вызовом может быть, например, телефонный звонок или иной коммуникационный сервис.

Язык CPL является скриптовым языком на базе XML и использует соответствующий синтаксис. CPL используется для описания поведения компьютерных систем при обработке поступившего вызова. Например, можно создать расписание в котором все звонки после 18.00 переводятся на мобильный номер абонента, а после 22.00 на голосовую почту. Или, например, можно запрограммировать загрузку почтовой программы и отправку соответствующего электронного письма по шаблону при звонке определенного абонента. Таким образом CPL позволяет создавать довольно интеллектуальные компьютерные системы, которые в автоматическом режиме обрабатывают входящие звонки и сообщения.

Язык CPL не привязан ни к какой платформе и ни к какому конкретному сетевому протоколу. Наиболее активное применение нашел в системах SIP-телефонии.

Скрипты языка CPL хранятся и выполняются на так называемом сигнальном сервере. Для систем SIP это proxy-server или redirect-server. Все скрипты храняться в единой базе скриптов CPL сервера. При поступление вызова сервер активизирует скрипт CPL в соответствии с условиями описанными в скрипте.

Пример скрипта на языке CPL


   <?xml version="1.0" ?>

   <!DOCTYPE cpl PUBLIC "-//IETF//DTD RFC3880 CPL 1.0//EN" "cpl.dtd">

   <cpl>

     <subaction id="voicemail">

       <location url="sIP:jones@voicemail.example.com">

         <redirect />

       </location>

     </subaction>

     <incoming>

       <address-switch field="origin" subfield="host">

         <address subdomain-of="example.com">

           <location url="sIP:jones@example.com">

             <proxy timeout="10">

               <busy> <sub ref="voicemail" /> </busy>

               <noanswer> <sub ref="voicemail" /> </noanswer>

               <failure> <sub ref="voicemail" /> </failure>

             </proxy>

           </location>

         </address>

         <otherwise>

           <sub ref="voicemail" />

         </otherwise>

       </address-switch>

     </incoming>

   </cpl>

 

Новые материалы:


» Skype будет куплен Cisco?
» Account Receivables (AR) Analyst (Oracle Applications)
» Customer Facing Output (CFO) Analyst (Oracle BI Publisher)
» Администратор SharePoint Server
» Руководитель группы администрирования базы данных
» Диспетчер тех. поддержки