телефоны yealink t46 и их возможности

есть у меня такая тема -мониторить барахолку на предмет телефонов и станций и вот иногда бывает там нахаляву отдают старые ип телефоны в рабочем состоянии и не особо ушатанные, только почистить их и можно продавать

вот и набрал я штук 15 этих ялинков, они еще бывают залоченые на операторов, но там легко это снимается, хотя мне это стоило нескольких дней, пока я разобрался как это сделать

на них еще есть кастомные прошивки для софтовой атс 3сх, но вроде она стала совсем платной и только на платном хостинге, так что я больше не интересовался ей

все телефоны имеют такую штуку как автокофигурация и у всех телефонов она работает боле менее одинаково

есть общий файл для всех телефонов ялинк y000000000000.boot
в нем можно указать, какие файлы являются для какой модели

если такого файла нет, то телефон ищет файл специфичный для своей модели y000000000028.cfg
для какой модели какое имя файла - указывается в мануале по автоконфигурации

если и такого файла нет, то телефон ищет последний файл - персонально для него 001565ba352c.cfg
такой файл имеет имя, состоящее из мак адреса

если и его нет, то телефон грузится в дефолтный режим и если у него там есть настройки, то они используются

обычно в персональном конфиге содержится инфа по акаунту на атс, чтобы этот телефон смог авторизироваться, а в общем файле содержатся общие настройки

телефоны ялинк интересны своей прошивкой, где можно всяких плюшек есть, которые позволяют из платы сделать домофон или интерком, или систему оповещения, к такому телефону можно прикрутить реакции на кнопки справа и слева от экрана

так же телефон поддерживает удаленное управление путем посылки гет запросов на его внутренний веб сервер, т.е. можно делать например автоматический звонок

можно перезагрузить или дать команду считать конфиг

мне попались телефоны с довольно старой прошивкой и там нельзя было так просто на последнюю обновить и надо было еще 2 прошивки промежуточные залить и какие иеменно - я долго это тестировал

в конце концов я написал конфиги и скрипты для автоматизации этого гимра
вам нужен будет tftpd64 by ph. jounin, довольно известный дхцп и тфтп сервер

файлы прошивок
T46-28.82.0.30.rom
T46-28.83.0.120.rom
T46-28.83.0.160.rom

файл с настройками y000000000028.cfg

#!version:1.0.0.1
## the file header "#!version:1.0.0.1" can not be edited or deleted. ##

#1
#firmware.url = tftp://192.168.178.100/T46-28.82.0.30.rom

#2 ok
#firmware.url = tftp://192.168.178.100/T46-28.83.0.120.rom

#3 ok
#firmware.url = tftp://192.168.178.100/T46-28.83.0.160.rom
#**623 sip, **610 dect
account.1.enable = 1
account.1.label = aaa
account.1.display_name = aaa
account.1.user_name = test1234
account.1.auth_name = test1234
account.1.sip_server.1.address = 192.168.178.1
account.1.password = aaaAAA123!@#
linekey.1.label = aaa

# выключить запись логов
static.local_log.enable = 0

# сервер с автонастройками 
auto_provision.server.url = tftp://192.168.178.100/ 

# разрешить выполнение команд на телефоне с любого ип адреса
features.action_uri_limit_ip = any 

# разрешить выполнение команд на телефоне
features.action_uri.enable = 1

# не запрашивать подтверждение команды на экране телефона
features.show_action_uri_option = 0

тут 3 этапа обновления прошивки и надо раскомментировать нужную строчку #firmware.url по этапам

так же потребуется прога curl.exe для выполнения хттп запросов

надо настроить дхцп сервер, чтобы он выдавал адреса из определенного диапазона и они бы не менялись достаточно долго

потом создаем файл reboot.cmd

for /l %%x in (101, 1, 120) do "D:\Program files\tiny tools\tools\curl\curl.exe" --connect-timeout 0.1 http://admin:admin@192.168.178.%%x/servlet?key=Reboot

батник в цикле проходить адреса с 101 до 120 и делает хттп запросы на все телефоны

второй файл вызывает считывание конфига и выполнение действий (апдейт прошивки)
autop.cmd

for /l %%x in (101, 1, 120) do "D:\Program files\tiny tools\tools\curl\curl.exe" --connect-timeout 0.3 http://admin:admin@192.168.178.%%x/servlet?key=AutoP

тут можно посмотреть команды и параметры по удаленному управлению телефоном и как сам телефон может вызывать гет запросы на вашем вебсервере и оповещать о событиях

вот на работе пригодилась моя же тема со скриптом, только тут надо не последовательность адресов друг за другом, а конкретные адреса, т.е. надо создать массив

тогда скрипт будет выглядеть так

set list=10 11 20 22
for %%x in (%list%) do "C:\Users\Dummy\Downloads\plink.exe" -v -batch -pw "aaa" admin@192.168.178.%%x

после for надо убрать /l, а то не будет выполняться
(да, скриптовые языки для осей еще тот ужас с точки зрения современненого кодера)

да, plink это типа ссх клиент для выполнения команд на хосте, мне тут надо ребутить точки доступа, а то они вроде как перегреваются при жаре и глючат