Компания Иридиум — автор и разработчик инновационных систем управления iRidium — провела тестирование своей платформы iRidium pro с IP-домофонами Fanvil и предоставила обзор по итогам. Используемое окружение: SIP-сервер 3CX, SIP-клиент iRidium на устройстве iPhone 7. Сравнение качества звука производилось с SIP-панелью 2N Helios. Версия i3Pro 1.3.26.0.24027.
Протестированные устройства:
Настройка IP-домофонов Fanvil
В зависимости от модели и версии прошивки видеофонов настройки могут незначительно отличаться.
Модель Fanvil i31S
Данная модель оснащена встроенными динамиком, микрофоном, фронтальной камерой. Камера 2 Мп с инфракрасной подсветкой и режимом ночного видения обеспечивает достаточное качество передачи видео для идентификации посетителя. Видео передается в качестве 720p при помощи кодека H264.
Для передачи звука был использован аудиокодек G722. В домофоне нет встроенного эхоподавления, данная модель поддерживает только шумоподавление. Собеседник слышит пользователя четко, но тихо. При повышении чувствительности громкости микрофона появляются посторонние шумы.
Настройка панели (версия прошивки 2.6.1.6726):
1. Войдите в web-интерфейс, введите логин и пароль (по умолчанию admin и admin).
2. Настройте IP-адрес так, как требуется для сети вашей SIP-системы.
3. Задайте аудиокодеки (проверено на G722).
4. Настройте громкость:
5. Задайте параметры доступа к внешнему SIP-серверу.
Данные SIP-клиента, для подключения к серверу:
Данные сервера:
6. Настройте параметры DTMF-тонов:
Нажмите кнопку Apply. При успешном подключении к SIP-серверу должен отобразиться статус аккаунта Registered.
7. Помимо номерного набора данная модель поддерживает вызов с кнопки. Для вызова с клавиатуры необходимо набрать: звездочка (*), номер абонента, звездочка (*).
Настройте вызов абонента при помощи кнопки:
8. Настройте код для DTMF-тонов:
Подробные отчеты по тестированию и настройке других устройств можно изучить на iRidium Wiki. Там же можно посмотреть сравнительные видео качества динамиков и микрофона панели по отношению к планшетам iPad Air 2 и iPad Pro.
Для более качественной работы устройств необходимо через web-интерфейс настроить громкость микрофона и динамика устройства, стандартные значения задаются в диапазоне (1-9). Рекомендуемое значение для i31S, i33V, i20S, i32V — 5. Для моделей i10, i12-01P, i16V рекомендуются значения 6-7.
1. Создайте панельный проект.
2. Добавьте драйвер SIP и настройте его.
На скриншоте выше красным выделены самые важные настройки:
Остальные кодеки следует отключить (false).
3. Добавьте графические элементы на экран панели и настройте их.
4. Добавьте скрипт в проект:
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
}
5. Настройте графические элементы для взаимодействия с драйвером 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”
}
3. Создайте кнопку и привяжите к ней вызов данного скрипта.
Скачать демо-проект можно на iRidium Wiki.
В проекте для панели имеются:
Подробную техническую консультацию можно получить в компаниях АйПиМатика и Иридиум.
Протестированные устройства:
- уличный SIP-видеодомофон i31S
- уличный SIP-видеодомофон i16V
- уличный SIP-видеодомофон i32V
- уличный SIP-аудиодомофон i12-01P
- уличный SIP-видеодомофон i33V
- внутренний SIP-аудиодомофон i10
- внутренний SIP-аудиодомофон i20S
Настройка IP-домофонов Fanvil
В зависимости от модели и версии прошивки видеофонов настройки могут незначительно отличаться.
Модель Fanvil i31S
Данная модель оснащена встроенными динамиком, микрофоном, фронтальной камерой. Камера 2 Мп с инфракрасной подсветкой и режимом ночного видения обеспечивает достаточное качество передачи видео для идентификации посетителя. Видео передается в качестве 720p при помощи кодека H264.
Для передачи звука был использован аудиокодек G722. В домофоне нет встроенного эхоподавления, данная модель поддерживает только шумоподавление. Собеседник слышит пользователя четко, но тихо. При повышении чувствительности громкости микрофона появляются посторонние шумы.
Настройка панели (версия прошивки 2.6.1.6726):
1. Войдите в web-интерфейс, введите логин и пароль (по умолчанию admin и admin).
2. Настройте IP-адрес так, как требуется для сети вашей SIP-системы.
3. Задайте аудиокодеки (проверено на G722).
4. Настройте громкость:
- Speakerphone Volume — громкость динамика;
- Speakerphone Ring Volume — громкость звонка;
- Broadcast Output Volume — чувствительность микрофона.
5. Задайте параметры доступа к внешнему SIP-серверу.
Данные SIP-клиента, для подключения к серверу:
- Phone number — имя пользователя;
- Display name — имя, отображаемое при звонке;
- Authentication Name — имя пользователя для регистрации на SIP-сервере;
- Authentication Password — пароль пользователя для регистрации на сервере;
- Activate — включить / отключить SIP-профиль.
Данные сервера:
- SIP Proxy Server Address — IP-адрес сервера;
- SIP Proxy Server Port — порт.
6. Настройте параметры DTMF-тонов:
- DTMF Type — тип DTMF-тона;
- DTMF SIP INFO Mode — тип обработки кнопок — звездочка (*) и решетка (#).
Нажмите кнопку Apply. При успешном подключении к SIP-серверу должен отобразиться статус аккаунта Registered.
7. Помимо номерного набора данная модель поддерживает вызов с кнопки. Для вызова с клавиатуры необходимо набрать: звездочка (*), номер абонента, звездочка (*).
Настройте вызов абонента при помощи кнопки:
- Hot Key — режим набора заранее заданного абонента (панель с клиентом i3Pro);
- Value 1 — основной номер;
- Value 2 — резервный номер;
- Line — линия SIP.
8. Настройте код для DTMF-тонов:
- Calling Password — код для активации реле через SIP-клиент iRidium.
Подробные отчеты по тестированию и настройке других устройств можно изучить на iRidium Wiki. Там же можно посмотреть сравнительные видео качества динамиков и микрофона панели по отношению к планшетам iPad Air 2 и iPad Pro.
Примечание
Для более качественной работы устройств необходимо через web-интерфейс настроить громкость микрофона и динамика устройства, стандартные значения задаются в диапазоне (1-9). Рекомендуемое значение для i31S, i33V, i20S, i32V — 5. Для моделей i10, i12-01P, i16V рекомендуются значения 6-7.
Работа в iRidium Studio
1. Создайте панельный проект.
2. Добавьте драйвер SIP и настройте его.
На скриншоте выше красным выделены самые важные настройки:
- Host — необходимо ввести IP-адрес вызывной панели (по умолчанию 192.168.1.5);
- Port — порт вызывной панели (по стандарту SIP всегда 5060);
- SIP ID — username SIP-аккаунта;
- Password — password SIP аккаунта;
- 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).
3. Добавьте графические элементы на экран панели и настройте их.
4. Добавьте скрипт в проект:
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
}
5. Настройте графические элементы для взаимодействия с драйвером 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”
}
3. Создайте кнопку и привяжите к ней вызов данного скрипта.
Демо-проект
Скачать демо-проект можно на iRidium Wiki.
В проекте для панели имеются:
- дисплей, на котором в реальном времени отображается видео с видеокамеры панели,
- клавиатура для набора номера,
- кнопка вызова/ответа,
- кнопка отмены,
- кнопка открытия двери,
- отображение текущего статуса,
- отображение данных абонента (имя, номер),
- настройки громкости динамика и микрофона панели i3 pro.
Подробную техническую консультацию можно получить в компаниях АйПиМатика и Иридиум.