Описание параметров программы MPCS
Файл mpcs.conf ### mpcs.conf ###
[global]
Nice = -20
#LogFile = log
#LogFile = /dev/tty
LogFile = stdout
ClientTimeout = 9
FallbackTimeout = 7
ClientMaxIdle = 99999
CacheDelay = 120
[serial]
Device = tuner@/dev/ttyS0?delay=2&timeout=1000
Всё что нам нужно для нормальной работы проги с ресивером это подобрать параметр timeout ClientTimeout FallbackTimeout
ClientTimeout - сколько ждать DW ключа. Максимальное время ожидания DW ключа от сервера в секундах, если за это время не будет ответа – влоге проги мы видим timeout.
По-умолчанию 9 сек
ClientMaxIdle - (период неактивности ресивера) - если ресивер за этот период не пришлет данных - то СОМ-порт закроется(это время неактивности тюнера - не идут с него запросы, например, смотрим FTA или ресивер просто выключен).
Смело ставьте максимальное значение и прога не будет закрывать СОМ-порт: 99999
FallbackTimeout - повтор запроса если нет ответа за это время. Время в секундах от момента ухода первого запроса на сервер по истечении которого будет повторный запрос. Время жизни этого второго запроса: ClientTimeout - FallbackTimeout.
Если наблюдаем в логе fallback called 2, и за ним found, то нужно слегка увеличить FallbackTimeout чтобы избежать повторных запросов.
Небольшое пояснение к ClientTimeout и FallbackTimeout, т.к. с этими настройками придеться возиться больше всего:
Время жизни DW ключа на пакете НТВ+ 10 секунд. Ресивер заблаговременно, обычно за 10 секунд до смены ключа отправляет запрос на получение нового ключа. Запрос уходит на сервер, если в течении 10 секунд ключ не приходит - то наблюдаем на экране "МАЛЕВИЧ".
Если появляется fallback 2 called и за ним found или cache2, то нужно слегка увеличить FallbackTimeout.
Например:
ClientTimeout - FallbackTimeout
6 - 3 (по умолчанию, обычно хорошо работает)
7 - 5
8 - 6
9 - 7
главное чтобы fallbackTimeout был меньше clientTimeout, поскольку время жизни второго запроса clientTimeout – fallbackTimeout.
CacheDelay – задержка перед отправкой DW в ресивер из кэша, некоторые ресиверы плохо переваривают слишком быстрый ответ.
Delay - задержка в миллисекундах перед отправкой каждого байта в ресивер. Если пишет found (но постоянные затыки или не показывает вообще), то пробуйте увеличить delay = от 1 и выше, если при этом будет на экране transmit error, send x of y bytes only, то увеличивайте timeout или снижайте.
Timeout – время в миллисекундах вычитывания данных с ресивера и отправки данных в ресивер (если часто появляются incomplete - то тоже можно увеличивать).
Файл mpcs.server
###mpcs.server###
[reader]
Label = Tricolor (36e)
Protocol = newcamd
Key = 0102030405060708091011121314
Device = serv,port
Account = ПАРОЛЬ,ЛОГИН
Fallback = 0
Group = 1
CAID = 4ae0
IDENT = 000000
ReconnectTimeout = 20
InactivityTimeOut = 15
Inactivity Timeout - это время в секундах, по истечении которого при неактивности происходит разрыв соединения с сервером.
ReconnectTimeout - это время в секундах, через которое происходит переконнект с сервером если запросы уходят, а ответов нет.
CAID = 4ae0
IDENT = 000000 это фильтрация.
В параметре CAID через запятую можно перечислить системы кодирования,
поддерживаемые этим сервером (по умолчанию разрешено все), например:
CAID = 0500,090F,4ae0
В параметре IDENT через запятую перечисляются провайдеры, поддерживаемые
этим сервером (аналогично по умолчанию все разрешено). Дополнительно можно
указать CAID для этого провайдера и последующих.
Примеры:
Разрешаем только идент 023700 для любых CAID:
IDENT = 023700
Разрешаем идент 023700 только для CAID 0500:
IDENT = 0500:023700
Разрешаем два идента одновременно.
IDENT = 020710,023700
Разрешаем два идента для кодировки 0500:
IDENT = 0500:020710,023700
Разрешаем два идента для 0500 и один нулевой идент для 090F:
IDENT = 0500:020710,023700;090F:0
Файл mpcs.user который нам сгенерировал биллинг.
###mpcs.user###
[account]
User = tuner
Pwd = tuner
#Uniq = 1
Group = 1
IDENT = 4ae0:000000
В двух словах - не зададите что именно шарить - не будет ничего.
Фильтр задается в параметре IDENT:
Нужно ОБЯЗАТЕЛЬНО задать и CAID-часть (4ae0) и IDENT (000000). По отдельности
они не работают. Можно перечислить несколько идентов через запятую
и несколько CAID через точку с запятой.
Это как пример и зависит от выбранного вами пакета для шаринга.
Пример настройки программы MPCS на работу с двумя ресиверами.
Например мы хотим смотреть два пакета Триколор на двух ресиверах (помните что это можно делать только на разных аккаунтах).
И так мы получили настройки в биллинге для двух пакетов Триколор на разные аккаунты, можно ещё при выборе сервака выбирать разные сервера, так у вас будет возможность при проблемах с сервером смотреть пакет через второй выбрынный вами сервак.
Всё что нам нужно это в файл mpcs.conf добавить строку инициализации ещё одного СОМ-порта и ресивера. Смотрим ниже.
### mpcs.conf ###
[global]
Nice = -20
#LogFile = log
#LogFile = /dev/tty
LogFile = stdout
ClientTimeout = 12
FallbackTimeout = 8
ClientMaxIdle = 99999
CacheDelay = 120
[serial]
Device = tuner1@/dev/ttyS0?delay=2&timeout=1000 это для ресивера номер один и СОМ-порта 1
Device = tuner2@/dev/ttyS1?delay=2&timeout=1000 это для ресивера номер два и СОМ-порта 2
В файле mpcs.server добавляем два ридера один с настройками для сервера 6 и второй для сервера номер 4 и соответственно логины и пароли тоже с этих серверов!!! И желательно разнести принадлежание ридеров в разные группы. Смотрим ниже.
###mpcs.server###
[reader]
Label = Tricolor (36e)
Protocol = newcamd
Key = 0102030405060708091011121314
Device = serv,port
Account = xxx,xxx
Fallback = 0
Group = 1
CAID = 4ae0
IDENT = 000000
ReconnectTimeout = 20
InactivityTimeOut = 15
[reader]
Label = Tricolor (36e)
Protocol = newcamd
Key = 0102030405060708091011121314
Device = serv,port
Account = xxx,xxx
Fallback = 0
Group = 2
CAID = 4ae0
IDENT = 000000
ReconnectTimeout = 20
InactivityTimeOut = 15
###end###
В файле mpcs.user тоже прописываем под два ресивера.
###mpcs.user###
[account]
User = tuner1
Pwd = tuner1
#Uniq = 1
Group = 1
IDENT = 4ae0:000000
[account]
User = tuner2
Pwd = tuner2
#Uniq = 1
Group = 2
IDENT = 4ae0:000000
###end###