Smarty (старые релизы)



  • smarty - серверная часть платформы Microimpuls IPTV/OTT Middleware.

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

    Полезное:



  • release:
    smarty v. 1.10.3

    changelist:

    • Новый механизм получения жанров передач из источника EPG и их ассоциации к локально заданным жанрам
    • Новый метод TVMW API, позволяющий получить список жанров EPG и отфильтровать телеканалы по жанру
    • Возможность поиска по номеру абонемента в списке клиентов
    • В ответ TVMW API /login теперь отдается поле abonement


  • release:
    smarty v. 1.11.27

    changelist:

    • Оптимизация метода TVMW API /api/channel/list
    • Переход на Django 1.9
    • Оптимизация метода проверки баланса абонентов в модуле Billing
    • Удален django_redis, переход на cacheops
    • Исправление ошибки возвращения флага родительского контроля в API функционала "ТВ по интересам"
    • Улучшение верстки админ.панели в разделе "Финансовые операции", возможность экспорта таблицы
    • Добавлено поле abonement в TVMW API /api/login для возможности узнать логин при использовании авторизации по UID устройства
    • Возможность поиска по номеру абонемента в разделе "Клиенты"
    • Добавлено понятие "Жанр" в EPG, возможность ассоциации жанров телепрограмм из источника EPG внутренним жанрам Smarty
    • Новые методы TVMW API для реализации функционала фильтрации по жанрам в разделе "ТВ по интересам"
    • Minor fixes

    Внимание!
    В связи с переходом на Django 1.9 для корректной работы системы необходимо особым образом произвести миграцию схемы БД после установки обновления. Для этого после установки нужно выполнить:

    $ cd /usr/share/nginx/html/microimpuls/smarty
    $ pip install --upgrade -r requirements.txt
    $ python manage.py migrate contenttypes --settings=settings.<your settings name>
    $ python manage.py migrate captcha --fake --settings=settings.<your settings name>
    $ python manage.py migrate users --fake-initial --settings=settings.<your settings name>
    $ python manage.py migrate --settings=settings.<your settings name>
    


  • release:
    smarty v. 1.12.3

    changelist:

    • Ускорение выборки EPG в запросах /channel/list за счет оптимизации ORDER BY
    • Новое поле next_programs в TVMW API запросе /channel/list теперь позволяет получить необходимое количество следующих передач после текущей, определяется параметром programs_limit. Соответствующие изменения в проекте mw_portals в совокупности дают большой прирост производительности
    • Метод /message/pop объявлен deprecated, необходимо использовать /account/status


  • Рекомендуемое обновление!

    release:
    smarty v. 1.14.16

    changelist:

    • Улучшен механизм кеширования для TVMW API
    • Исправлена ошибка в машрутизации видеосервисов при использовании сложной логики и сдвига вещания Timeshift
    • Исправлена ошибка редактирования аккаунта, возникающая при определенных условиях
    • Значительно увеличена производительность модуля TV Middleware при большом количестве одновременных онлайн-сессий
    • Добавлен метод TVMW API /account/register с токен-авторизацией дополнительно к соответствующему методу Billing API
    • Стандартные конфигурационные файлы nginx и uwsgi дополнены основными настройками для highload
    • Добавлен метод TVMW API /channel/programs (beta)
    • Исправлена ошибка, из-за которой иногда могла возвращаться некорректная текущая EPG для канала
    • Исправлена ошибка некорректной сортировки жанров в VOD


  • release:
    smarty v. 1.16.8

    changelist:

    • Исправлена ошибка с двойной регистрацией аккаунтов через Billing API
    • Поддержка API для платформы MediaHills
    • Исправлена ошибка с подсчетом количества устройства оператора на странице "Устройства" при использовании мультипровайдера
    • Добавлен универсальный парсер EPG из формата XMLTV, в т.ч. из файла
    • Возвращена поддержка старых версий приложений для Samsung Smart TV при использовании HLS
    • Minor fixes


  • release:
    smarty v. 1.17

    changelist:

    • В виджете "Личный кабинет для сайта" отключена проверка заполненности паспортных данных при оплате
    • В методах API "ТВ по интересам" добавлена возможность отображения категории "Все каналы"
    • Добавлено поле "Серийный номер" для модели "Устройство аккаунта".
    • В список ответа TVMW API метода login добавлено поле contract_number
    • Появилась возможность сохранять несколько категорий для EPG-передач, а также форсировать присвоение определенной категории всем передачам определенного канала
    • Добавлен флаг для типа устройства "Базовое" или "Дополнительное"
    • Добавлен флаг "Родительский контроль" для фильмов
    • Исправлена ошибка с отображением иконок в списке каналов в панели администратора
    • Начата разработка модуля Megogo
    • Начата разработка модуля Videoservices для более плотной интеграции с видео-серверами Microimpuls
    • Начата разработка модуля логирования
    • Minor fixes


  • release:
    smarty v. 1.22

    Внимание!
    Обновление требует установки пакета redis-server, запуска в постоянном режиме демона redis и добавления в crontab операции обновления кеша:

    */3 * * * *  python /usr/share/nginx/html/microimpuls/smarty/manage.py cache_channel_list --settings=settings.<название вашей конфигурации>
    

    Внимание #2!

    Данное обновление вводит понятие "Базового" и "Дополнительного" устройства, и по-умолчанию после миграции все устройства станут "Базовыми". Чтобы сохранить прежнюю логику работу функции "Мультиабонемент", требуется вручную в системной панели администратора обновить тип для всех устройств на "Дополнительный".

    changelist:

    • Redis стал обязательным компонентом системы
    • Механизм логирования действий в панели администратора Smarty - начальная реализация для страницы редактирования аккаунтов
    • Исправление мелких ошибок инвалидации кеша, связанных с видео-сервисами
    • Механизм логирования запросов получения доступа к контенту Live TV
    • Механизм логирования необработанных исключений в ядре системы
    • Механизм логирования рассылки сообщений
    • Исправление мелких ошибок в модуле Reports
    • Механизм логирования фоновых операций планировщика - epg_import, check_accounts, check_streams, check_events, send_activation_expires_messages, clean_old_messages, resend_sms
    • Добавлен механизм распределенного выполнения фоновых операций планировщика через очередь RQ (Redis Queue)
    • Обновленная логика кеширования списка телеканалов и ассоциированного EPG для повышения быстродействия
    • В запрос TVMW API /channel/list добавлен параметр program_id
    • Исправление ошибки формирования URL к иконкам телеканалов в виджете для сайта "Список телеканалов"
    • Добавлено разделение устройств на типы "Базовое устройство" и "Дополнительное устройство", изменена логика работы функции "Мультиабонемент": теперь для дополнительных устройств действует отдельное ограничение количества сессий по тарифному плану, а для базовых - отдельное, при этом при попытке авторизации дополнительного устройства сверх установленного лимита происходит отключение первого подключенного по принципу "карусели", а при попытке авторизации базового устройства возвращается ошибка авторизации, таким образом система позволяет одновременно использовать только установленное по тарифному плану количество базовых устройств.
    • Добавлена возможность отключения проверки IP-адреса для функции "Мультиабонемент"
    • Добавлена возможность отключения проверки IP-адреса при авторизации абонентского устройства при обращении к видео-сервису HTTP Streamer
    • Улучшение внешнего вида и удобства главного меню панели администратора Smarty
    • Понятие "Клиент" в смысле Customer переименовано в понятие "Абонент"
    • Исправление ошибки добавления файла для фильма при использовании СУБД Oracle
    • Исправление ошибки задержки запуска сервера приложений при отключенном сервере MongoDB для модуля Reports
    • TVMW API: поле parent_control переименовано в is_parent_control
    • Исправлена ошибка, из-за которой при нескольких одновременных подключениях в течении одной секунды мог генерироваться одинаковый ключ сессии в TVMW API
    • Добавлена новая логика формирования списка телеканалов в TVMW API: если у абонента согласно подключенным тарифным планам и настройкам системы для какого-либо телеканала не найдено ни одного доступного видео-сервиса, то этот канал не попадает в список
    • Добавлен метод TVMW API /api/health/check/ - проверка доступности сервера приложений для использования HTTP-балансировщика (например, alteon или nginx)
    • В модель "Аккаунт" добавлено поле "Описание статуса", а также в соответствующие методы API поле status_reason. Может быть использовано для интеграции с биллингом и изменения логики приложения в зависимости от статуса аккаунта.
    • Исправлена ошибка страницы редактирования параметров виджета


  • smarty v. 1.24

    changelist:

    • Исправление ошибки, связанной с автоматическим подключением тарифных планов с флагом "по-умолчанию" при регистрации через API
    • Оптимизирована работа механизмов кеширования
    • Добавлено логирование действий пользователей в панели администратора
    • Добавлено логирование запросов к контенту
    • Изменения в виджете для сайта "EPG" - выделение каналов с пустой программой, выделение прошедших передач, текущей и будущих, исправлена ошибка выборки по дате
    • Alpha-версия нового модуля - videoservices, для управления видео-серверами Microimpuls
    • Исправлена ошибка при скачивании картинок EPG в ситуации, когда сервер EPG недоступен
    • Исправлена ошибка экспорта в CSV на странице транзакций
    • Исправлены ошибки в модуле Monitoring, связанных с выборкой по дате и отображении дат в графиках
    • Добавлен скрипт ротации логов Smarty через logrotate.d
    • Удалены deprecated-механизмы кеширования и API views
    • В метод TVMW API /channel/list добавлено поле next_program, поле next_programs удалено
    • В парсер EPGService добавлена автоматическая проверка на день недели и запрос EPG на последующую неделю
    • Исправлена ошибка проверки IP-адреса для функции "Мультиабонемент"
    • Исправлена ошибка, связанная с вызовом distinct для NCLOB при работе с Oracle для API группы "ТВ по интересам"
    • Для TVMW API program/category/channel/list добавлено поле program_preview_url
    • Исправлена ошибка авторизации MongoDB для модуля Reports
    • В панели администратора теперь при попытке перехода на страницу редактирования недоступного объекта вместо страницы с ошибкой пользователь перенаправляется на страницу списка


  • release:
    smarty v. 1.40

    Внимание! Новая документация Billing API: https://microimpuls.github.io/smarty-billing-api-docs/

    Внимание #2! Новый обязательный модуль - videoservices. Не забудьте установить его и прописать в конфиге в INSTALLED_APPS.

    Внимание #3! В настройках инстанса не забудьте добавить новый параметр MEDIA_BASE_URL, можно сделать его равным SMARTY_URL.

    changelist:

    • Понятие "Видео-сервис" переименовано в "Стриминг-сервис" (логический объект маршрутизации стриминга), добавлено понятие "Видео-сервер" (физический сервер или инстанс видео-сервера)
    • В модуле videoservices (видео-серверы) реализована интеграция с MicroPVR и Micromanager (конфигуратор, мониторинг потоков, мониторинг состояния, инжестирование контента VOD)
    • Добавлена возможность привязки стриминг-сервиса к видео-серверу для интеграции и автоматического вызова некоторых функций через API (включение и мониторинг записи каналов, получение мета-информации ассетов VOD, авторизация потоков)
    • В Billing API добавлены новые методы: AccountTariffAssign, AccountTariffRemove, CustomerModify, AccountModify, AccountInfo, CustomerDelete, AccountDeviceCreate, AccountDeviceDelete, AccountMessageCreate
    • В Billing API в методе CustomerInfo в ответ добавлено поле tariffs
    • В Billing API в методе TransactionCreate поле id переименовано в ext_id
    • Изменены коды ошибок в Billing API
    • Исправлена ошибка включения модуля reports в настройках устройства
    • Улучшено удобство панели администратора на страницах настройки стриминг-сервисов, фильмов и ассетов VOD
    • Добавлен новый тип виджета Site-Widgets API - платёжная форма
    • Исправлена работа функции импорта описания фильма с сервиса Кинопоиск, добавлены недостающие поля
    • Исправлена ошибка, из-за которой не работала кнопка "Назад к списку" в форме создания платежа
    • Для объекта "Радиостанция" добавились поля: иконка и описание
    • Улучшено удобства панели администратора: на страницах списков телеканалов, абонентов, аккаунтов, устройств, фильмов, тарифных планов и т.д. добавлены фильтры по полям с возможность мультивыбора, экспорт данных в CSV
    • В модуле reports исправлена ошибка с графиком рейтинга передач, если название передачи - пустая строка
    • В модуле reports исправлена ошибка, приводящая к некорректному подсчету длительности телесмотрения для аккаунтов с несколькими тарифами и стриминг-сервисами
    • Для нелинейных сервисов в URL добавлен параметр endless=1 для устройств Samsung и Android STB (для возможности включения на видео-сервере режима "бесконечного" вещания записывающегося файла без проверки на Content-Length - функция поддерживается сервером MicroPVR)
    • Возможность привязки тарифных планов к аккаунтам (ранее только к абонентам)
    • Оптимизация алгоритмов привязки и выборки тарифных планов к аккаунтам и абонентам
    • Кластерный механизм выполнения задач планировщика (импорт EPG, проверка баланса, рассылка сообщений и т.д.)
    • Для фильмов добавлены понятия "Период публикации", "Рейтинг Кинопоиска", "Рейтинг IMDB"
    • Оптимизация механизма кеширования EPG - убрана лишняя метаинформация для уменьшения размера кеша
    • Механизм проверки доступности стриминг-сервисов с помощью Ping, TCP connect, API call, HTTP GET для возможности автоматической балансировки
    • Исправление ошибки проверки сессий при авторизации с устройств типа "Базовое устройство"
    • Добавлен модуль external_api - механизм исходящих запросов к API внешних систем с возможностью наследования под конкретную систему оператора, например фунция запроса баланса, покупки контента и др. в биллинговой системе оператора
    • Функция сохранения прерванной позиции просмотра архивной передачи и VOD
    • Возможность привязки стриминг-сервиса к IP подсетям
    • Возможность подключения внешнего Javascript-скрипта к виджету Site-Widgets
    • Исправлена ошибка удаления некоторых объектов из панели администратора
    • В настройки Smarty добавлена новая опция MEDIA_BASE_URL - базовая часть URL для подстановки к относительному URL иконки или обложки контента
    • Исправлена ошибка, из-за которой могла пропасть дата в поле редактирования объекта
    • Добавлен механизм сохранения напоминаний EPG и их выдачи при запросе ссылок на контент
    • Сообщения теперь привязываются к аккаунту, а не к абоненту
    • Новые возможности сообщений - срочные сообщения и неудаляемые сообщения (требуется поддержка в портале)
    • Возможность скачивания и оптимизации обложки на сервере Smarty с Кинопоиска
    • Возможность отображения в портале раздела "Новинки" для VOD (добавлен параметр в метод TVMW API VideoList)
    • Для ассетов VOD добавлен признак "Трейлер"
    • Возможность создания тематических пакетов фильмов для VOD
    • В методы TVMW API ChannelList и ProgramCategoryChannelList добавлено поле rating (возрастной рейтинг контента)
    • Реализовано логирование для всех модулей и действий в панели администратора
    • Исправлена ошибка фильтрации стриминг-сервисов по типу устройства, если тип устройства не передан, которая могла возникать при использовании сторонних приложений
    • Исправлена ошибка, из-за которой при создании аккаунта через Billing API для аккаунта не присваивался ПИН-код
    • В парсер EPG xmltv_common добавлена поддержка таймзон виде +0500
    • Возможность просмотра состояния кеш-серверов Redis в панели администратора
    • Поле max_archive_duration в методе TVMW API ChannelList и ProgramCategoryChannelList
    • Для стриминг-сервисов добавлена возможность задания приоритета: в ситуации, когда для контента найдено несколько доступных стриминг-сервисов, предпочтение будет отдано сервису с большим приоритетом
    • Возможность поиска каналов, передач, радиостанций и фильмов в TVMW API
    • Исправлена ошибка, из-за которой в панели администратора при создании транзакции она могла быть неверно привязана к абоненту


  • release:
    smarty v. 1.41

    changelist:

    • Возможность выбора тарифных планов для аккаунта в форме редактирования аккаунта (функция пока не документирована)
    • Рефакторинг TVMW API
    • Исправлена ошибка с форматом дат в формах редактирования аккаунта, абонента, фильма
    • Исправлена ошибка работы с EPG кешем в случае, если EPG устарела
    • Небольшие исправления в модуле external_api
    • Скачивание логотипа канала с источника epgservice в случае, если для программы не задана обложка
    • Установка класса для body в виджете для сайта "Платежная форма" в случае успешной и неуспешной оплаты
    • Импорт возрастного рейтинга фильма с сервиса Кинопоиск
    • В разделе "Абоненты" добавлен поиск по всем номерам телефона по вхождению
    • В разделе "Аккаунты" поиск по ФИО исправлен на поиск по вхождению
    • Исправление ошибки с избыточными подключениями к MongoDB, уменьшение таймаутов подключения


  • Это сообщение удалено!


  • release:
    smarty v. 1.42

    Заметки к релизу:

    Если в БД уже создана таблица sms_sms и при выполнении миграции возникает ошибка:

    django.db.utils.OperationalError: (1050, "Table 'sms_sms' already exists")
    

    то необходимо добавить параметр --fake-initial:

    python manage.py migrate --fake-initial --settings=<settings.smth>
    

    changelist:

    • Исправлена ошибка экспорта данных в CSV.
    • Добавлен парсер EPG "dummy_source" для генерации 15-минутных интервалов EPG. Может быть использован для каналов без EPG для возможности их удобного просмотра в режиме архива.
    • Расширение API ProgramCategoryChannelList
    • В метод ProgramListSearch добавлен параметр skip_unavailable для скрытия из выборки программ, недоступных для просмотра
    • Исправлена ошибка поиска по UID устройства
    • Расширение Site-Widgets API - возможность показа содержимого виджета на сайте по прямому URL без iframe
    • Исправлена ошибка миграции - в некоторых случаях при первичной установке не создавались таблицы для модуля sms
    • Поиск по полям "Фамилия" и "Имя" теперь осуществляется через общее поле на странице "Абоненты"


  • release:
    smarty v. 1.43

    changelist:

    • Исправлена ошибка навигации по страницам в разделе панели администратора "Фильмы"
    • Исправлена ошибка в сохранении данных метода Billing API AccountModify
    • Исправлена ошибка смены базового тарифа через виджет "Личный кабинет"
    • Добавлена поддержка CORS через файл конфигурации Smarty, опция CORS_ORIGIN_WHITELIST
    • Исправлена ошибка навигации по страницам в разделе панели администратора "Телепрограмма"
    • Исправлена ошибка, возникающая при редактировании аккаунта с пустым паролем
    • Исправлена ошибка, связанная с обновлением списка элементов в панели администратора при изменении количества отображаемых элементов
    • В метод Billing API AccountInfo добавлено поле customer_id
    • Исправлена ошибка, из-за которой сбрасывалась фильтрация данных при переходе по страницам в разделе панели администратора "Аккаунты"
    • В опции подключения к Mongo DB (модуль Reports) добавлены таймауты socketTimeoutWS и waitQueueTimeoutMS для стабилизации работы при перегруженном сервере Mongo
    • Улучшение верстки раздела "Отчеты" (beta)
    • Поле "Номер паспорта" расширено до 15 символов
    • Исправлена ошибка в механизме авторизации базовых и дополнительных устройств
    • Опция аккаунта "Разрешить авторизацию по UID устройства" теперь включена по-умолчанию
    • В методы TVMW API Login и AccountStatus добавлено поле status_reason
    • Возможность фильтрации и улучшение UI страницы "Радиостанции" в панели администратора
    • Добавлена поддержка метода IsAlive для видео-сервиса Microstreamer
    • Исправление ошибки в парсере EPG walla.py, из-за которой иногда создавались передачи с неправильным временем
    • В парсере информации о фильме с Кинопоиска исправлен адрес главного постера на основной на странице фильма
    • В модуле Videoservices обновлена схема файла конфигурации Micromanager v. 1.4.5
    • Исправлена ошибка, из-за которой в панели администратора не сохранялись тарифные планы аккаунта
    • Возможность проверки доступности видео-сервисов, используя несколько методов проверки одновременно
    • Улучшение UI раздела "Отчеты" в панели администратора, возможность экспорта данных в CSV
    • Исправлена ошибка генерации authkey, возникающая при авторизации устройств в некоторых случаях
    • Для фильмов добавлен параметр "Длительность", используемый для отображения в портале
    • Увеличено количество отображаемых ассетов на странице ассетов фильма
    • Исправлена ошибка проверки csrf token на страницах "Аккаунты" и "Каналы", приводящая к невозможности удалить данные
    • Исправление ошибки автоматической привязки канала к EPG, если в БД есть несколько подходящих EPG-каналов
    • Поле "Категория" для канала теперь необязательное


  • release:
    smarty v. 1.44

    changelist:

    • Поиск по полю Device UID в панели администратора теперь работает по неполному вхождению подстроки
    • В панели администратора в редактор конфигурации видео-серверов Microimpuls добавлена кнопка Properties
    • Возможность экспорта в CSV для страницы "Радиостанции" в панели администратора
    • В разделе панели администратора "Видео-сервисы" добавлен конфигуратора для Microporter
    • Метод TVMW API PortalSettingsList теперь возвращает поле backend_version с версией Smarty
    • Добавлена недостающая локализация для некоторых полей панели администратора
    • Возможность создания пользователей без доступа в служебную панель администратора, но с возможностью переключения между разными операторами (Client ID)
    • Поле "Возрастной рейтинг" при сохранении фильма теперь не обязательно
    • В модуле "External API" добавлен параметр "tariffs"
    • Исправлена ошибка сохранения неподтвержденных транзакций при покупке фильма с использованием встроенного биллинга
    • Исправление мелких ошибок в Billing API


  • Это сообщение удалено!


  • release:
    smarty v. 1.47

    Внимание! После установки обновления необходимо вручную удалить папку /usr/share/nginx/html/microimpuls/smarty/core/logging, если она существует.

    Внимание #2! Теперь Smarty распространяется в виде единого установочного пакета smarty-base*.deb. Для избежания конфликтов при установке нового пакета необходимо удалить старые пакеты, предварительно сделав резервную копию:

    dpkg -r smarty-ads smarty-billing smarty-docs smarty-monitoring smarty-reports smarty-sms smarty-tvmiddleware smarty-videoservices smarty-widgets
    

    changelist:

    Список изменений включает также изменения промежуточных версий 1.45 и 1.46.

    • При установке пакета теперь устанавливаются права www-data:www-data для директории логов и web-директории
    • Dev-версии пакета Smarty больше не собираются
    • Исправления в работе клиента redis для кластерного режима
    • Интеграция СМС-шлюза mobipace (http://mi-smarty-docs.readthedocs.io/ru/latest/installation_and_configuration.html#mobipace-com)
    • Интеграция с онлайн-кинотеатром Megogo (http://mi-smarty-docs.readthedocs.io/ru/latest/integration.html#megogo)
    • Улучшение формата логов Smarty
    • Добавлена возможность разблокировки аккаунта с помощью передачи флага reset_block_status_reason в метод TVMW API Login
    • Доработка логики авторизации: если дополнительный статус аккаунта "Неактивен", то для аккаунта авторизация запрещена
    • Доработка логики авторизации: аккаунты в статусе "Ожидание активации" при авторизации теперь переходят в статус "Активен"
    • Доработка логики авторизации: при авторизации аккаунта с опцией "Мультилогин" теперь не осуществляется привязка устройства
    • В запросы к MicroPVR-стримеру теперь добавляется Account ID в аргументе aid
    • Внутренний рефакторинг общей функциональности модулей Smarty
    • Все проверки Device UID (MAC-адреса устройств) теперь проводятся без учета регистра (для решения возможных ошибок при миграции данных из сторонних систем)
    • Множественное редактирование в панели администратора для разделов "Фильмы" и "Каналы"
    • Исправление ошибки миграции при недоступном сервере MongoDB
    • Доработка отображения статуса инжестирования и дистрибуции VOD в модуле "Видеосервисы"
    • Оптимизация индекса при выборке данных EPG, ускорение работы TVMW API ProgramList и связанных с ним
    • Исправление ошибки страницы списка аккаунтов на Oracle "inconsistent datatypes: expected - got NCLOB"
    • Доработка метода проверки доступности стриминг-сервисов Microimpuls с помощью вызова метода IsAlive
    • Добавлено логирование management-команды check_accounts
    • Функциональность дочерних Client ID для возможности хостинга бекенда Smarty для мета-виджетов (мультипровайдерных приложений с возможностью автоматического определения оператора по IP либо ручного выбора оператора абонентом)
    • Возможность отключения функциональности мультилогинов на системном уровне
    • Исправление ошибки генерации правильных URL для PVR и VOD сервисов при использовании HLS для старых Samsung Smart TV
    • Возможность добавления нескольких ассетов по маске имени в VOD
    • Обновление JSON-схем конфигурации для серверов micromanager 1.7.0, micropvr 1.8.0 в модуле "Видеосервисы"
    • Добавлена management-команда delete_authkeys для удаления всех сессий для заданного Client ID
    • Возможность установки ограничения на аккаунт на авторизацию только в рамках указанного IP-адреса или подсети
    • Проверка совместимости версии MongoDB для модуля Reports
    • Добавлена возможность удалять сессии аккаунта из панели администратора
    • Настройка времени жизни сохраненных позиций просмотра контентов теперь отдельная для VOD и PVR
    • Исправлены ошибки скрытого удаления дочерних объектов при удалении родительских в Smarty
    • Размер поля "Название компании" для абонента увеличен до 256 символов
    • Размер поля "ПИН-код" для аккаунта увеличен до 16 символов
    • Добавлены новые типы внешних приложений "Android settings" и "Android apps"
    • Добавлен новый раздел в панели администратора - "Покупки контента"
    • В CSV-экспорт со страницы фильмов и каналов добавлены недостающие поля
    • Исправлена ошибка на страница списка абонентов "TypeError django.db.models.fields.related in get_lookup error Related Field got invalid lookup: device_type"
    • Добавлен параметр exclude_service_id в метод TVMW API VideoUrl для возможности перебора стриминг-сервисов на устройстве (возможность реализации отказоустойчивости на клиенте)
    • В модуле "Видеосервисы" добавлены страницы мониторинга и конфигурации ПО microporter и microstreamer
    • Исправлены имена полей в фильтрах на странице списка устройств
    • Добавлено ограничение на допустимые значения в фильтрах для полей ввода чисел в панели администратора
    • Исправление ошибки, из-за которой не работала сортировка объектов стрелками в списке
    • Исправлена ошибка в редакторе конфигураций видео-серверов Microimpuls (модуль "Видеосервисы")
    • Добавлена возможность обновления EPG только для заданного телеканала (management-команда epg_import)
    • Исправлена ошибка авторизации абонента с базового устройства, но с отсутствующими тарифными планами
    • Возможность удаления старых сессий, которые не были онлайн в течение длительного количества времени (опция TVMIDDLEWARE_CLEAN_OLD_SESSIONS_DAYS, по умолчанию 3650 дней)
    • Добавлена возможность выгрузки статистических данных в службу statsd
    • Исправлена ошибка "account_device_error: ValueError: Cannot assign None: "AccountDevice.device" does not allow null values."
    • Добавлена функциональность сохранения выбранного PVR стриминг-сервиса в рамках одной сессии аккаунта
    • Исправлена ошибка, из-за которой могли не отправляться запросы к серверу PVR на создание/отмену задач записи при создании нескольких стриминг-сервисов, указывающих на один и тот же PVR-сервер
    • Исправлена ошибка, из-за которой в ответе Billing API TariffList возвращались отключенные каналы
    • Добавлено логирование выбора и маршрутизации стриминг-сервисов
    • Метод Billing API CreateTransaction теперь позволяет создавать транзакции покупки контента
    • Оптимизация алгоритма поиска EPG
    • Флаг "Устройство является базовым" перенесен на уровень Client ID и редактируется теперь в настройках устройств оператора (добавлена соответствующая миграция, которая переносит существующие настройки на уровень всех Client ID)
    • Добавлено логирование кластерного выполнения management-команд (RQ)
    • Добавлено логирование отправки email
    • Исправлена ошибка при запросе метода TVMW API VideoDetail "UnicodeEncodeError tvmiddleware.api in get error 'ascii' codec can't encode characters in position 0-8: ordinal not in range(128)"
    • Исправлена ошибка при запросе метода TVMW API SettingsSave "AttributeError core.cache.backends in invalidate_obj error 'NoneType' object has no attribute '_meta'"
    • Добавлен интерфейс StreamService API и метод проверки токена StreamServiceTokenCheck для интеграции авторизации с внешними видео-серверами (пример: http://mi-smarty-docs.readthedocs.io/ru/latest/integration.html#astra)
    • Реализовано сохранение серийного номера устройства в момент авторизации и привязки устройства к аккаунту
    • В балансировщике стриминг-сервисов реализован алгоритм учета сетевого расстояния по заданным IP-подсетям
    • В методе TVMW API ProgramListSearch (поиск EPG) теперь возвращаются и будущие передачи (для возможности установки напоминаний в абонентском приложении)
    • Для каналов в качестве названия передач теперь возвращается пустое значение, если передача не найдена (ранее возвращалось название канала)
    • Удалена опция TVMIDDLEWARE_API_NEXT_PROGRAMS_COUNT
    • В методе TVMW API AccountStatus теперь возвращается флаг channel_list_changed, означающий, что для аккаунта произошли изменения в списке каналов и необходимо обновить список целиком (ранее список обновлялся по таймауту и могли быть "лишние" вызовы полного списка каналов с сервера)
    • В настройках стриминг-сервиса добавлена возможность отключить проверку IP-адреса клиента (рекомендуется отключать эту проверку, если возможны ситуации, что запрос от устройства к Smarty и к видео-серверу может прийти разными маршрутами и с разных белых IP-адресов)
    • Метод TVMW API Login при ошибке теперь возвращает поле abonement со значением "-1"
    • Добавлена обработка ошибок при передаче пустого client_id в запросы TVMW API ("invalid literal for int() with base 10: ''")
    • Исправлена ошибка сброса пароля аккаунта при передаче пустого пароля в методах Billing API
    • Исправлена ошибка, из-за которой в модуле "Видеосервисы" в группах могли отображаться группы других Client ID
    • Изменение логики работы методов Billing API *Modify - не переданные значения теперь принимают текущие значения редактируемого объекта, а не значения по умолчанию
    • Максимальное время ожидания подключения к MongoDB (модуль Reports) изменено на 2000 мс
    • Добавлено поле "Rating offset" для объекта EPGSource - возможность при импорте изменения возрастного рейтинга на нужный оффсет
    • Исправлена ошибка, из-за которой на мобильные устройства могли возвращаться Multicast-каналы
    • Объекты Client теперь сортируются по имени в выпадающем списке
    • Исправлена ошибка привязки передач телеканала к определенной EPG-категории при явном указании категории в настройках объекта EPGChannel


  • release:
    smarty v. 1.48

    changelist:

    • Megogo: исправлена ошибка воспроизведения фильмов на Samsung Orsay старых моделей
    • Megogo: добавлена поддержка приставки TVIP
    • Добавлена возможность запрета авторизации на базовых или запрета авторизации на дополнительных устройствах, а также возможность установки неограниченного количества сессий для мультиабонементов
    • Исправлено отображение названий тарифных пакетов в виджете "Личный кабинет"
    • Добавлены новые роли для прав доступа пользователей
    • Актуализирована схема API для ПО Microimpuls для модуля "Видео-серверы"
    • Испралена ошибка, из-за которой невозможно было получить информацию об ассете, если в имени был пробел
    • Доработано логирование действий пользователей в панели администора
    • Оптимизирован алгоритм определения текущего количества онлайн аккаунтов и устройств
    • Исправлена ошибка при сохранении абонента в случае конфликта номера договора
    • Исправлена ошибка, из-за которой при логауте абонента из интерфейса на устройстве удалялись сесиии базовых устройств на сервере Smarty
    • В лог-файлы добавлена ошибка авторизации "account_does_not_exists" и "wrong_password" при ситуациях ввода неправильного логина или пароля соответственно
    • Улучшен формат логов "accounts_login", "billing_out" и других
    • Megogo: исправлена ошибка "Internal Server Error: /api/tvmiddleware/api/video/url/"
    • Исправлена ошибка сброса пользовательской сортировки каналов
    • Категория каналов "Рекомендуемые" перенесена в начало списка
    • Метод Billing API TransactionCreate в поле video_available_until теперь принимает дату и время
    • Добавлено ограничение по валютам для платежных систем. Платежные системы, не поддерживающие прием валюты пользователя, не показываются в списке доступных при оплате через личный кабинет
    • Добавлена поддержка платежного шлюза Paymentgate (arca.am)
    • Исправлена ошибка Error 500 при редактировании параметров виджета для сайта
    • В список файлов, ожидающих инжестирование, добавлена возможность перехода по страницам
    • Оптимизирован модуль reports - тяжелые выборки не выполняются, пока не уточнены фильтры
    • Добавлен лог-файл "smarty_api_requests", в который логируются все запросы к TV-Middleware API
    • В метод Billing API CustomerInfo добавлены новые поля - находится ли аккаунт в пробном периоде (on_trial_period) и количество платежей (payments_count)
    • Исправлена ошибка, из-за которой на странице редактирования прав пользователя дублировалось поле "Can delete messages"
    • Megogo: добавлена поддержка коллекций фильмов Advod и Fvod
    • Megogo: исправлена ошибка, возникающая при покупке подписки на фильм в некоторых ситуациях
    • Отключено логирование в лог "smarty_accounts" при изменении поля last_active у аккаунта из-за регулярного вызова метода AccountStatus
    • Добавлены типы стриминг-сервисов для более удобной поддержки RTSP-протокола с автоматическим формированием корректных RTSP ссылок для видео-сервера Microimpuls
    • Опция проверки IP-адреса при авторизации мультиабонемента по умолчанию теперь отключена
    • Значение количества дней для ротации логов Smarty в конфиге logrotate.d по умолчанию теперь 45 дней
    • Рефакторинг и улучшение верстки и удобства раздела "Тарифные пакеты" в панели администратора Smarty
    • Исправлена ошибка, из-за которой в некоторых случаях не срабатывала возможность авторизации аккаунтов с подключенными тарифными пакетами с опцией "Доступен для неактивных аккаунтов", позволяющей создать пакет услуг для должников
    • Исправлена ошибка, из-за которой для Tizen формировалась неправильная ссылка на PVR, что приводило к ошибкам воспроизведения "бесконечных" потоков из отложенного просмотра с некорректным content size
    • Исправлены некоторые ошибки в локализации

Войдите чтобы оставить сообщение