We’ve already rolled out some major carrier services to Python 3.9, so as part of the update for this release, we suggest you think about it too (we plan to stop supporting Python 2.7 soon). It is better to move with the help of our engineers within the framework of technical support.
New Advertising Integration from AdStream
This release revamped the integration with AdStream — now, ads from this partner come to both channels and movies.
More about how to set up advertising, you can see in our documentationFor contacts and commercial terms on AdStream, you can contact your manager 🙂
The old type of integration has been renamed AdStream (old) and has been left for compatibility.
Updated integration with MediaHills
In this release, the integration with MediaHills, which was previously carried out in 2016, was revived 🙂
Instructions on how to take advantage of integration here.
Files of Archival Records for External Integrations
In some media platform integrations, it is sometimes necessary to be able to give so-called feeds — meta information about the service content. In this release, we have added special ways to obtain feeds from archival records.
In order for feeds to appear on the right url, you need to do a few simple steps:
- Configure the return of feeds on instruction
- Get the feeds at the address
http://smarty.example.com/tvmiddleware/record/feed/<client_id>
Adminka
- On the page «Selections of content» added a new filter « Type of content» — with it you can quickly find the right selections when filling the dashboard with tapes.
- On the page «Accounts» added a filter by its deactivation date.
- Added a separate set of rights to manage access to the tab «Virtual rates».
- Added the possibility of mass editing of the depth of the archive recording for channels.
New options for registration and authorization
- A new option added
TVMW_UPDATE_PHONE_NUMBER_ON_REGISTER, which when you try to register an account on a device already registered with Smarty, does not create a new account, but adds the specified phone number to the current account. - Added option
TVWM_MULTILOGIN_CREATE_DEVICEto create devices when logging in from multilogin accounts. TVWM_REBIND_DEVICE_ON_LOGIN— when you put this option in True, the authorization method does not return the error that the device is already linked to another account, but instead unties the device from the old account and binds to the new one.
In addition, when authorizing by IP address in Smarty, tied devices are now created.
Full documentation on options here.
Security
- In the admin in the section « General settings Client» there is a new option « Check IP address in TVMW API requests with AuthKey» which includes additional verification of IP address when processing requests with authorization — if authorization was made from one IP address, and further calls of methods — from another, subsequent requests from the old IP address will return 403.
- Added limit when creating payment transactions — no more than 3 transactions in 10 minutes.
- Added generation of a separate token for
preview_urlintoProgramUrl.
Improvement of integrations with START and Premier
Now integration with START additionally produces the import of photos of actors, as well as refined the import of images for series and screenshots.
As part of the integration with Premier, the import of additional genres for films and TV series was added.
TVMW API
- Methods
ChannelIconListandNoAuthportClientChannelListinput parameters addedicon_widthandicon-height. - In method
CameraListresponse fields addedis_favoritedandpreview_url, as well as the ability to filter cameras based on selectivity using the parameterfavorited_only. - New method added
CameraSettingsSetto add a camera to your favorites. - In method
VideoRatingSetmodified scale for estimation of c1-5before1-10#careful compatibility - In method
VideoActionremoved from the answer unused fieldresult#careful compatibility - In method
PortalDashboard VideoListadded the ability to retrieve elements for the tape «Recently watched movies» and added new response fields:position,position_asset_id,duration,preview_url - Methods
VideoListandNo AuthVideoListadded a new type of sorting « According to the number of ratings», the ability to filter films by time range using parametersyearandyearand a new parametergenre, which forms a list of films on the principle of combining, rather than intersection of genres - In method
CustomerTariffSubscribefieldtry_activatefor forced activation of the account when connecting the tariff, as well as new response fields signaling the need for payment. - In methods
VideoEpisodeDetailandVideo EpisodeListnow in case the episode is not specifiedpreview_url, returns preview of the first associated asset - For programs from the method
PortalDashboardProgramListintopreview16:9 is given if it is in the original Epg - In method
AccountStatusfield of responseis_active(Shows checkbox status «Active» regardless of connected tariff plans) - In response to method
SelectionDetailadded the position of the program, which stopped when viewing it - Episodes in the method
Video EpisodeListare now sorted according to the fieldsort - Methods
Customer TariffListandCustomerTariffSubscriptionCostnow return the full cost of the tariff in case the number of days before the next extension of the account is longer than the tariff period - Method
ChannelListLastnow does not return channels if the user no longer has access to stream services - Added fields
iconandiconmethodicallyGenreListandGenreListNoAuth
Billing API
- In response to method
AccountCreatefieldaccount - In response to method
AccountInfofieldedidandabonement - In response to method
AccountLista field has been added for each accountabonement - In method
AccountModifyadd-onallowed_device_groups - Changing tariffs using the Billing API methods is now fixed in the list of actions of subscribers
Content API
- New method added
VideoListget a list of videos - New method added
ChannelListget a list of channels
16:9 broadcast posters from EpgService
The 4:3 posters age the look of the app interface, so in this release we’ve added an additional 16:9 — parsing of the program posters; they’ll soon be available in the dashboard of the Futuristic template.

Other
- Fix the PayPal payment gateway to Python3.
- For the localization string
payment_comment_with_idargumentationamount,amount_units,ext_id(Stripe payment gateway). - Added sending messages to the user when creating a subscriber through the dealer.
- Fixed the mechanism of linking the camera to the account for a situation when the subscriber is not connected tariff with the desired streaming service.