Перейти к основному содержимому
Подсказка

iRidium для CAME BPT

Настройка SIP-видеофонов CAME BPT для работы с iRidium

документация обновлена 01.01.2024

Протестированные устройства

CAME BPT
MTMV/IP
видеомодуль

Настройка видеофона CAME BPT

  1. Подключите питание к вызывной панели CAME BPT MTM
  2. Подключите вызывную панель в одну локальную сеть с вашей панелью управления
  3. Настройте вызывную панель в приложении PCS/XIP
  1. На панели управления в браузере перейдите по адресу http://192.168.1.5
  2. В поле Режим входа (LOGIN MODE) выберите INSTALLER . Пароль по умолчанию 112233
  1. Перейдите во вкладку Date and Time и установите дату, время и свой часовой пояс. После нажмите кнопку сохранить
  1. Активируйте созданный SIP аккаунт, для этого перейдите во вкладку Cedentials , далее в GENERIC SIP . Нажмите на иконку редактирования
  1. В поле State выберите Enabled , задайте пароль и нажмите сохранить

Работа в iRidium Studio

  1. Создайте панельный проект.
  2. Добавьте драйвер SIP и настройте его.

SIP1.png

  • Красным выделены самые важные настройки.
  • Host - необходимо ввести IP-адрес вызывной панели (по умолчанию 192.168.1.5)
  • Port - порт вызывной панели (по стандарту SIP всегда 5060)
  • SIP ID - username SIP аккаунта, активированного в п.7 данной инструкции
  • Password - password SIP аккаунта, активированного в п.7 данной инструкции
  • Use SIP TONE - true, генерировать SIP сообщения тонального набора
  • Use DTMF Tone - false, не генерировать обычные сообщения тонального набора
  • Codec PCMU - true, активация аудиокодека G.711μ
  • Codec PCMA - true, активация аудиокодека G.711a
  • Codec H264 - true, активация видеокодека H.264
    Остальные кодеки следует отключить (false)
  1. Добавьте графические элементы на экран панели и настройте их.
  1. Добавьте скрипт в проект:
outdoor_station_number = "0101010100"; // topological code of IPerVoice panel
var SIP = IR.GetDevice("SIP"); // name of SIP driver
var action = "CALL"; // default action
ButtonAction = IR.GetItem("Page 1").GetItem("Button_action");
LabelName = IR.GetItem("Page 1").GetItem("Label_name");
LabelNumber = IR.GetItem("Page 1").GetItem("Label_number");
SwitchVideo = IR.GetItem("Page 1").GetItem("Switch_video");

IR.AddListener(IR.EVENT_START,0,function()
{
// display the SIP video
IR.GetItem("Page 1").GetItem("Video").GetState(0).Image = "sip_image://";
});

IR.AddListener(IR.EVENT_TAG_CHANGE, SIP, function(name, value) {
if (name == "STATUS") {
var flagReady = (value == "On Hook..." || value == "Incoming Call...");
ButtonAction.Enable = flagReady;
var flagTalk = (value == "Talking...");
IR.GetItem("Page 1").GetItem("Button_door").Enable = flagTalk;
IR.GetItem("Page 1").GetItem("Button1").Enable = flagTalk;
IR.GetItem("Page 1").GetItem("Button2").Enable = flagTalk;
IR.GetItem("Page 1").GetItem("Button3").Enable = flagTalk;
IR.GetItem("Page 1").GetItem("Button4").Enable = flagTalk;
IR.GetItem("Page 1").GetItem("Button5").Enable = flagTalk;
IR.GetItem("Page 1").GetItem("Button6").Enable = flagTalk;
IR.GetItem("Page 1").GetItem("Button7").Enable = flagTalk;
IR.GetItem("Page 1").GetItem("Button8").Enable = flagTalk;
IR.GetItem("Page 1").GetItem("Button9").Enable = flagTalk;
IR.GetItem("Page 1").GetItem("Button0").Enable = flagTalk;
IR.GetItem("Page 1").GetItem("Button_asterisk").Enable = flagTalk;
IR.GetItem("Page 1").GetItem("Button_octothorp").Enable = flagTalk;
var flagConnect = (value == "Dialing..." || value == "Trying..." || value == "Ringing..." || value == "Talking..."
|| value == "Not Found..." || value == "Not Acceptable..." || value == "Not Available..." || value == "Service Unavailable...");
IR.GetItem("Page 1").GetItem("Button_cancel").Enable = flagConnect;
SwitchVideo.Enable = !flagConnect;
if (value == "Incoming Call...") {
action = "ANSWER";
LabelName.Text = SIP.GetFeedback("INCOMING CALL NAME");
LabelNumber.Text = SIP.GetFeedback("INCOMING CALL NUMBER");
}
if (value != "Incoming Call..." && value != "Talking...") {
action = "CALL";
LabelName.Text = "---";
LabelNumber.Text = outdoor_station_number;
}
var flagShow = (flagReady || flagConnect || flagTalk);
LabelName.Visible = flagShow;
LabelNumber.Visible = flagShow;
}
});

function Talk() {
SIP.SetFeedback("NUMBER", outdoor_station_number); // when calling number is required
SIP.Set(action, SwitchVideo.Value); // call or answer, audio or audio+video
}
  1. Настройте графические элементы для взаимодействия с драйвером SIP и скриптом.

Настройка кнопки для открытия двери

По нажатию кнопки на вызывной панели будет происходит вызов. Для открытия двери необходимо отправить цифровой код, который можно задать в настройках вызывной панели (по умолчанию “*50”)

  1. Создайте новый скрипт
  2. Добавьте в него следующее:
function SIPsendtone1(){
var SIPdevice1=IR.GetDevice("SIP");
SIPdevice1.Set("SEND TONE", 10); // отправка “*”
SIPdevice1.Set("SEND TONE", 5);// отправка “5”
SIPdevice1.Set("SEND TONE", 0);// отправка “0”
}
  1. Создайте кнопку и привяжите к ней вызов данного скрипта

Демо-проект

Скачайте демо-проект

В проекте для панели имеются:

  • дисплей, на котором в реальном времени отображается видео с видеокамеры панели,
  • клавиатура для набора номера,
  • кнопка вызова/ответа,
  • кнопка отмены,
  • кнопка открытия двери,
  • отображение текущего статуса,
  • отображение данных абонента (имя, номер),
  • настройки громкости динамика и микрофона панели i3 pro.