Маленькие хитрости и особенности IPTV ресиверов
У нас на работе используются ресиверы фирм ADI и PBI
Эта заметка - больше напоминания самому себе о маленьких хитростях, и рецепты "как сделать" (со временем очень многое к сожаленнию забывается)
У нас на работе используются ресиверы фирм ADI и PBI
Эта заметка - больше напоминания самому себе о маленьких хитростях, и рецепты "как сделать" (со временем очень многое к сожаленнию забывается)
Необходимо перегрузить удаленно ресивер, но нестандартным способом
ADI - зайти телнетом на ресивер, набрать волшебное словосочетание "enable adi", затем несколько раз нажать "Enter" - появится приглашение, затем можно набрать команду RESET_UNIT
g# telnet 192.168.0.201 Trying 192.168.0.201... Connected to 192.168.0.201. Escape character is '^]'. Magic Word: enable adi MX1>RESET_UNIT
PBI - Два способа
1. зайти телнетом. логин root, дефолтный пароль 12345. Ввести команду reboot
2. SNMP, например /usr/bin/snmpset -v1 -c private $pbi_ip 1.3.6.1.4.1.1070.3.1.1.23.0 i 1
Как получить уровень сигнала, битрейт потока и т.п. параметры для того чтобы, например, вставить их в mrtg
PBI
snmpget -v1 -Ofn -c private 192.168.15.242 1.3.6.1.4.1.1070.3.1.1.104.1.1.7.0 .1.3.6.1.4.1.1070.3.1.1.104.1.1.7.0 = INTEGER: 8
Выдается BER в следующем формате XYYZ или 8. Если XYYZ то это равно числу X.YY умножить на 10 в степени минус Z т.е. = X.YYe-Z, если 8 - то меньше 10 в степени минус 8, т.е. = 10-8
snmpget -v1 -Ofn -c private 192.168.15.233 1.3.6.1.4.1.1070.3.1.1.104.1.1.6.0 .1.3.6.1.4.1.1070.3.1.1.104.1.1.6.0 = INTEGER: 610
Выдает strength в dBm/10, в данном случае -61.0 dBm. Аналогично по этому .1.3.6.1.4.1.1070.3.1.1.104.1.1.8.0 оиду доступно число C/No умноженное на 10 и по оиду .1.3.6.1.4.1.1070.3.1.1.104.1.1.9.0 доступно число Eb/No умноженное на 10.
Оид .1.3.6.1.4.1.1070.3.1.1.104.1.1.3.0 отвечает за параметр который в HDMS называется "Input Total Bitrate", .1.3.6.1.4.1.1070.3.1.1.104.1.1.4.0 совпадает с параметром "Input Valid Bitrate". Это параметры для тюнеров dvb-s2. Для ASI-входов, соответствующие оиды это .1.3.6.1.4.1.1070.3.1.1.104.1.2.3.0 и .1.3.6.1.4.1.1070.3.1.1.104.1.2.4.0
ADI
здесь способ поинтересней. Заключаетяся в том что у ADI встроенный вебсервер отдает .xml файлы, надо только знать их название. Например по адресу http://receiver_ip/dvb-s2.1.xml - находится информация по первому тюнеру, аналогично dvb-s2.2.xml - второй тюнер, ipout.1.xml - настройки первого ип-оут, ipout.2.xml - настройки второго. Соответственно из этих файлов можно получить все полезную информацию, вот пример dvb-s2.1.xml
Download file dvb-s2.1.xml<?xml version="1.0" encoding="UTF-8" standalone="no"?> <adiCfg ver="1.0"> <dvbs2-in id="dvb-s2.1"> <info name="Lock Status" value="ON"/> <info name="Board Mode" value="DVBS"/> <ctrl name="Select Preset" value="Preset 2" constraints="Preset 1|Preset 2"/> <ctrl name="Redundancy" value="OFF" type="bool"/> <ctrl name="Acq Step" value="0"/> <ctrl name="Roll Off" value="AUTO" constraints="AUTO|0.35|0.25"/> <ctrl name="Spectral Inversion" value="AUTO" constraints="AUTO|No Inversion|Invert"/> <info name="Receive Level" value="-14. 0 dBm"/> <info name="Gain Margin" value=" 21.21 dB"/> <info name="BER After RS Decode" value="0 e-6"/> <info name="EB/NO" value=" 31. 0 dB"/> <info name="Scan Frequency" value="12055"/> <info name="Hardware ID" value="1"/> <ctrl name="Input Bit Rate" value="72 Mbs" constraints="Bypass|54 Mbs|72 Mbs|108 Mbs"/> <info name="Actual Bit Rate" value="72 Mbs"/> <preset id="1"> <info name="Mode" value="DVBS2"/> <ctrl name="Frequency" value="12207"/> <ctrl name="Lnb Frequency" value="10600"/> <ctrl name="Symbol Rate" value="27500"/> <ctrl name="Polarization" value="HORIZONTAL" constraints="VERTICAL|HORIZONTAL|NONE"/> <ctrl name="22KHz" value="ON" type="bool"/> <ctrl name="Modulation" value="QPSK" constraints="AUTO|QPSK|8PSK|16QAM"/> <ctrl name="FEC" value="AUTO" constraints="AUTO|NONE|1/2|2/3|3/4|4/5|5/6|6/7|7/8|8/9|9/10|1/4|1/3|2/5|3/5|ALL"/> <ctrl name="Pilot Detect" value="OFF" type="bool"/> </preset> <preset id="2"> <info name="Mode" value="DVBS"/> <ctrl name="Frequency" value="12054"/> <ctrl name="Lnb Frequency" value="10750"/> <ctrl name="Symbol Rate" value="27500"/> <ctrl name="Polarization" value="VERTICAL" constraints="VERTICAL|HORIZONTAL|NONE"/> <ctrl name="22KHz" value="ON" type="bool"/> <ctrl name="FEC" value="AUTO" constraints="AUTO|NONE|1/2|2/3|3/4|4/5|5/6|6/7|7/8|8/9|9/10|1/4|1/3|2/5|3/5|ALL"/> </preset> </dvbs2-in> </adiCfg>
пример ipout.1.xml
Download file ipout.1.xml<?xml version="1.0" encoding="UTF-8" standalone="no"?> <adiCfg> <ip-out id="ipout.1"> <ctrl name="Input" value="DVB-S2 1" constraints="DVB-S2 1"/> <info name="Linked to" value="DECODER 1"/> <ctrl name="State" value="ON"/> <info name="Accumulated Bit Rate" value="8014064" units="b/s"/> <ctrl name="Filtering Mode" value="Multiple sockets" constraints="Multiple sockets"/> <info name="Max Pids" value="(4 of 32)"/> <info name="Max Services" value="(4 of 10)"/> <socket name="Socket 1" id="1"> <info name="Bit Rate" value="4033728"/> <ctrl name="Mode" value="Service Filter" constraints="Blocked|Service Filter|BypassAll"/> <ctrl name="Ip" value="239.250.0.113"/> <ctrl name="Port" value="1234"/> <ctrl name="Check Sum" value="OFF"/> <ctrl name="CBR Enabled" value="OFF"/> <ctrl name="CBR Rate" value="0"/> <ctrl name="Services" value="2"/> </socket> <socket name="Socket 2" id="2"> <info name="Bit Rate" value="3980336"/> <ctrl name="Mode" value="Service Filter" constraints="Blocked|Service Filter|BypassAll"/> <ctrl name="Ip" value="239.250.2.31"/> <ctrl name="Port" value="1234"/> <ctrl name="Check Sum" value="OFF"/> <ctrl name="CBR Enabled" value="OFF"/> <ctrl name="CBR Rate" value="0"/> <ctrl name="Services" value="6"/> </socket> <socket name="Socket 3" id="3"> <info name="Bit Rate" value="0"/> <ctrl name="Mode" value="Blocked" constraints="Blocked|Service Filter|BypassAll"/> <ctrl name="Ip" value="239.0.0.1"/> <ctrl name="Port" value="1234"/> <ctrl name="Check Sum" value="OFF"/> <ctrl name="CBR Enabled" value="OFF"/> <ctrl name="CBR Rate" value="0"/> <ctrl name="Services" value="10812"/> </socket> .... <socket name="Socket 10" id="10"> <info name="Bit Rate" value="0"/> <ctrl name="Mode" value="Blocked" constraints="Blocked|Service Filter|BypassAll"/> <ctrl name="Ip" value="239.0.0.1"/> <ctrl name="Port" value="1234"/> <ctrl name="Check Sum" value="OFF"/> <ctrl name="CBR Enabled" value="OFF"/> <ctrl name="CBR Rate" value="0"/> <ctrl name="Services" value=""/> </socket> </ip-out> </adiCfg>