Объект Device/Методы/Result: различия между версиями

Материал из Call Office Wiki
Перейти к навигации Перейти к поиску
 
(не показана 1 промежуточная версия этого же участника)
Строка 5: Строка 5:
==Синтаксис==
==Синтаксис==
:<syntaxhighlight lang="c">
:<syntaxhighlight lang="c">
VARIANT Say (VARIANT Type)  
VARIANT Result (VARIANT Type)  
</syntaxhighlight>
</syntaxhighlight>
|style="width:10%;"|__TOC__
|style="width:10%;"|__TOC__
Строка 40: Строка 40:
|Data
|Data
|3
|3
| данные последней команды, например, для SendSMS это идентификатор отправленного сообщения
| данные последней команды, например, для [[Объект_Device/Методы/SendSMS|SendSMS]] это идентификатор отправленного сообщения
|}
|}



Текущая версия на 11:33, 1 октября 2015

Метод Result позволяет получить расширенную информацию об ошибке или работе последней функции.

Синтаксис

VARIANT Result (VARIANT Type)

Параметры

Type - номер/имя параметра, который нужно получить:.
Имя параметра Номер Описание
All получить все параметры в виде массива (по умолчанию)
Result 0 результат выполнения последней команды
Code 1 расширенный код выполнения последней команды
Description 2 расширенный текст ошибки
Data 3 данные последней команды, например, для SendSMS это идентификатор отправленного сообщения

Результат

Если не указан номер/тип получаемого параметра возвращает массив:
  • 0 - Результат выполнения последней команды;
  • 1 - Код ошибки (например для SIP, это код ответа SIP)
  • 2 - Описание ошибки (не всегда доступно)
  • 3 - Данные команды, например, идентификатор SMS-сообщения для функции SendSMS.

Описание

Метод позволяет получить расширенную информацию об ошибке. Например, при наборе номера через SIP, позволяет получить код ответа SIP сервера и описание ошибки. Пока доступен только для протокола SIP в функциях LogOn и Dial.

Примеры

Пример на JavaScript
var Device = new ActiveXObject ("CallOffice.Device");
Device.Open("SIP\\SIP");

var Domain    = prompt ("Имя или ip-адрес шлюза","sipnet.ru");
var Login     = prompt ("Введите имя пользователя","sipnet-login");
var Pass      = prompt ("Введите пароль","sipnet-password");
var LoginDial = prompt ("Введите имя или телефон, на который хотите позвонить","123@wentor.ru");

if (Device.LogOn(Login, Pass, Domain) == 0) {

   if (Device.Dial(LoginDial, 10) == 0) {
      Device.Say("CallOffice");
   }
   else {

      var Result = Device.Result ().toArray ();      

      alert ('Result: ' + Result[0] + "\r\n" + 
               'Code: ' + Result[1] + "\r\n" + 
        'Description: ' + Result[2]);     
   }

   Device.LogOff ();
}
Device.Close ();
Пример на VBScript
Dim Device
Set Device = CreateObject ("CallOffice.Device")

Device.Open "SIP\SIP"

Domain    = prompt ("Имя или ip-адрес шлюза","sipnet.ru")
Login     = prompt ("Введите имя пользователя","sipnet-login")
Pass      = prompt ("Введите пароль","sipnet-password")
LoginDial = prompt ("Введите имя или телефон, на который хотите позвонить","123@wentor.ru")

Result = Device.LogOn (Login, Pass, Domain)
if Result = 0 then

   Result = Device.Dial (LoginDial, 40)

   if Result = 0 then
      Device.Say "CallOffice"
   else
      Res = Device.Result ()
      MsgBox Res(2),  vbOkOnly + VbInformation, "Ошибка " + CStr (Res(0)) + ". Код ошибки: " + CStr(Res(1))  ' Выводим расширенную информацию об ошибке
   end if

   Device.LogOff
end if

Device.Close

Назад к методам объекта Device.