{"id":4188,"date":"2023-05-16T10:31:58","date_gmt":"2023-05-16T07:31:58","guid":{"rendered":"https:\/\/www.microimpuls.com\/docs\/releases\/smarty\/05-23-start-%d1%80%d0%b5%d0%b6%d0%b8%d1%81%d1%81%d1%91%d1%80%d1%8b"},"modified":"2026-01-23T11:04:06","modified_gmt":"2026-01-23T08:04:06","slug":"05-23-start-%d1%80%d0%b5%d0%b6%d0%b8%d1%81%d1%81%d1%91%d1%80%d1%8b","status":"publish","type":"docs","link":"https:\/\/microimpuls.com\/en\/docs\/releases\/smarty\/05-23-start-%d1%80%d0%b5%d0%b6%d0%b8%d1%81%d1%81%d1%91%d1%80%d1%8b","title":{"rendered":"05-23 | 1.94 START, directors, advertising"},"content":{"rendered":"<p>This release was short, because May was almost absent due to holidays, and a lot of April time we devoted to custom modifications, but nevertheless it included many important changes<\/p>\n\n\n\n<p>And this release marked for us a joyous event \u2014 <strong>support for Python Version 2.x<\/strong>. Why happy? For a long time, we supported both versions of the language at once and this doubled the time for testing new features, and also complicated the development of \u2014 therefore, abandoning the old version of the language will allow us to breathe more freely and increase the pace of the appearance of these features \ud83d\ude42<\/p>\n\n\n\n<p><strong>What do you do for those who haven\u2019t switched to Python 3.x?<\/strong> If your technical support tariff includes updates by our engineers, then just make a ticket and we will transfer you to the new version of the language together with the next update, if not, then contact your manager and we will figure out how best to carry out these works.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">External billing and START cinema<\/h3>\n\n\n\n<p id=\"block-23049865-fe46-4b74-b9a0-36af6edebf9c\">In this release, we redesigned our billing interaction mechanisms when purchasing START subscriptions to make the process of its implementation to the operator as transparent as possible.\nThe START module itself inside Smarty is configured in a few steps and does not require a special investment of time and effort, but many are interested in how to make friends with the operator infrastructure so that subscription to movies is bought from the application interface, and the event about this came to the external billing.\nTo answer this question, we have prepared <a href=\"https:\/\/github.com\/microimpuls\/smarty-api-lib\/tree\/master\/external-api\" data-type=\"URL\" data-id=\"https:\/\/github.com\/microimpuls\/smarty-api-lib\/tree\/master\/external-api\">demo<\/a> ExternalAPI integration in our public repository, following the example of which you can implement additional actions to address the external system in the subscription purchase scenario \u2014 for example, send an event to the billing operator about connecting the corresponding tariff plan.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Other changes in cinemas and video library<\/h3>\n\n\n\n<p id=\"block-23049865-fe46-4b74-b9a0-36af6edebf9c\">In addition, additional graphics \u2014 are now downloaded for START movies during import; a large-format advertising banner that is used in some of our application interfaces. The film import team <code>cinema_start_sync_content<\/code> i got a new parameter <code>--remove_outdated<\/code>The listing of which removes irrelevant films that are no longer in the catalog on the START side. Inside Smarty now, in addition to the actors, a new entity appeared \u00abDirector\u00bb, with the help of which the Sibseti interface has already implemented a tape \u00abOther films of this director\u00bb. And another revision for the video library \u2014 a new team has appeared to prepare a list of countries for which you can filter movies in the interface \u2014 <a href=\"https:\/\/micro.im\/docs\/smarty\/configuring-and-management\/management-commands#cache-video-country-list-\u2014-\u043a\u0435\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435-\u0441\u043f\u0438\u0441\u043a\u0430-\u0441\u0442\u0440\u0430\u043d-\u0441-\u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u043e\u0439-\u043f\u043e-\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0443-\u0444\u0438\u043b\u044c\u043c\u043e\u0432\" data-type=\"URL\" data-id=\"https:\/\/micro.im\/docs\/smarty\/configuring-and-management\/management-commands#cache-video-country-list-\u2014-\u043a\u0435\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435-\u0441\u043f\u0438\u0441\u043a\u0430-\u0441\u0442\u0440\u0430\u043d-\u0441-\u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u043e\u0439-\u043f\u043e-\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0443-\u0444\u0438\u043b\u044c\u043c\u043e\u0432\"><code>cache_video_country_list<\/code><\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Advertising<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Added truncated treatment <code>vast<\/code>non-returning field <code>width<\/code> for video files.<\/li><li>If there is no country for the account to target advertising, it is now taken from ip_location.<\/li><li>Broadcasting added for AdStream provider <code>User Agent, IP, X-Serial-Number and X-Hwid<\/code> client device.<\/li><li>Added a new type of advertising provider \u2014 Inetra.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">EPG<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Fixed the conversion of the age rating of transmissions when downloading them from the Epg source \u2014 now the parser takes into account \u00ab+\u00bb. <\/li><li>If there is no EPG category in the transmission source, it is assigned the transmission specified at the channel in the Smarty \u2014 admin; this allows you to distribute transmissions within the section \u00abArchive \u2014 even with a free Epg source with a limited amount of meta information.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">TVMW API<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>In response to methods <a href=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Customer-CustomerTariffList\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Customer-CustomerTariffList\"><code>Customer TariffList<\/code><\/a> and <a href=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Customer-CustomerInfo\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Customer-CustomerInfo\"><code>CustomerInfo<\/code><\/a> 2 new fields have been added for the tariff: <code>icon<\/code> and <code>icon<\/code>. <\/li><li>Method of confirming the phone number inside <a href=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Customer-CustomerInfoSet\"><code>CustomerInfoSet<\/code><\/a> now the default is the one specified in the Client settings. <\/li><li>In method <a href=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Selection-SelectionList\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Selection-SelectionList\"><code>SelectionList<\/code><\/a> new input parameters added <code>content_type<\/code>, <code>video_provider_id<\/code>, <code>order<\/code>, <code>limit<\/code>. <\/li><li>In method <a href=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Portal-NoAuthPortalClientChannelList\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Portal-NoAuthPortalClientChannelList\"><code>NoAuthportClientChannelList<\/code><\/a> added new response fields related to information about current channel transmission. <\/li><li>Method <a href=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Category-CategoryList\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Category-CategoryList\"><code>CategoryList<\/code><\/a> now they are returning the fields <code>icon_url<\/code> and <code>icon_tv_url<\/code>. <\/li><li>New method added <a href=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Device-DeviceExists\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Device-DeviceExists\"><code>No AuthDeviceExists<\/code><\/a> to check if such a device is already registered with Smarty. <\/li><li>Method <a href=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Authorization-Login\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Authorization-Login\"><code>Login<\/code><\/a> it always comes back <code>error=6<\/code>if an already registered telephone number has been transferred. <\/li><li>IN <a href=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Video-VideoDetail\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-tvmw-api-docs\/#api-Video-VideoDetail\"><code>VideoDetail<\/code><\/a> for the trailer, the field is now correctly given <code>duration<\/code>.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Content API<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>In the input parameters of methods <a href=\"https:\/\/microimpuls.github.io\/smarty-content-api-docs\/#api-Video-VideoCreate\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-content-api-docs\/#api-Video-VideoCreate\"><code>VideoCreate<\/code><\/a> and <a href=\"https:\/\/microimpuls.github.io\/smarty-content-api-docs\/#api-Video-VideoModify\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-content-api-docs\/#api-Video-VideoModify\"><code>VideoModify<\/code><\/a> fielded <code>is_season<\/code> and <code>is_announcement<\/code>. <\/li><li>In the input parameters of methods <a href=\"https:\/\/microimpuls.github.io\/smarty-content-api-docs\/#api-Camera-CameraCreate\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-content-api-docs\/#api-Camera-CameraCreate\"><code>CameraCreate<\/code><\/a> and <a href=\"https:\/\/microimpuls.github.io\/smarty-content-api-docs\/#api-Camera-CameraModify\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-content-api-docs\/#api-Camera-CameraModify\"><code>CameraModify<\/code><\/a> parameter <code>preview_url<\/code>. <\/li><li>In response to method <a href=\"https:\/\/microimpuls.github.io\/smarty-content-api-docs\/#api-Channel-ChannelList\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-content-api-docs\/#api-Channel-ChannelList\"><code>ChannelList<\/code><\/a> field <code>count<\/code>, and in the input parameters \u2014 <code>id_for_stream_service<\/code>.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">External &amp; Billing API<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Method <a href=\"https:\/\/microimpuls.github.io\/smarty-billing-api-docs\/#api-Account-AccountDeviceCreate\" data-type=\"URL\" data-id=\"https:\/\/microimpuls.github.io\/smarty-billing-api-docs\/#api-Account-AccountDeviceCreate\">AccountDeviceCreate<\/a> now he returns the correct error when he is wrong <code>system<\/code>. <\/li><li>TVMW Login method implements the possibility of authenticating an account by SMS through external billing using webhook <code>auth_by_phone<\/code>.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Adminka<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>Fixed display Online on the account list page. <\/li><li>Now, when downloading an actor, not the first from the list is taken, but the one who has the desired film in the filmography. Now you can search for an actor not only by name, but also by original name. <\/li><li>Corrected display dropdown-menu in the upper panel admin. <\/li><li>Filtering of accounts and subscribers by billing processor is added. <\/li><li>The camera has added the ability to prescribe an external URL before the admin preview \u2014 if you have a dynamic link to the latest camera screenshot from Live, then with this link you can see the always current state of the camera in the interface.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Other<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>A new option added <code>TVMW_UPDATE_IP_IN_REALTIME<\/code> c Smarty configuration, which includes IP updates and account geolocation for any API requests. <\/li><li>Fixed the problem with access to the camera through direct camera binding to the account. <\/li><li>Fixed option operation <code>TVWM_MULTILOGIN_CREATE_DEVICE<\/code>. <\/li><\/ul>","protected":false},"featured_media":0,"parent":3199,"menu_order":9,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_links_to":"","_links_to_target":""},"doc_tag":[],"class_list":["post-4188","docs","type-docs","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>05-23 | 1.94 START, \u0440\u0435\u0436\u0438\u0441\u0441\u0451\u0440\u044b, \u0440\u0435\u043a\u043b\u0430\u043c\u0430<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/microimpuls.com\/en\/docs\/releases\/smarty\/05-23-start-\u0440\u0435\u0436\u0438\u0441\u0441\u0451\u0440\u044b\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"05-23 | 1.94 START, \u0440\u0435\u0436\u0438\u0441\u0441\u0451\u0440\u044b, \u0440\u0435\u043a\u043b\u0430\u043c\u0430\" \/>\n<meta property=\"og:description\" content=\"\u042d\u0442\u043e\u0442 \u0440\u0435\u043b\u0438\u0437 \u0432\u044b\u0434\u0430\u043b\u0441\u044f \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u043c, \u0432\u0435\u0434\u044c \u043c\u0430\u044f \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u0431\u044b\u043b\u043e \u0438\u0437-\u0437\u0430 \u043f\u0440\u0430\u0437\u0434\u043d\u0438\u043a\u043e\u0432, \u0430 \u043c\u043d\u043e\u0433\u043e \u0430\u043f\u0440\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043c\u044b \u043f\u043e\u0441\u0432\u044f\u0442\u0438\u043b\u0438 \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u044b\u043c \u0434\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u043c, \u043d\u043e \u0442\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435 \u0432 \u043d\u0435\u0433\u043e \u0432\u043e\u0448\u043b\u043e \u043c\u043d\u043e\u0433\u043e \u0432\u0430\u0436\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \ud83d\ude42 \u0418 \u0435\u0449\u0451 \u044d\u0442\u043e\u0442 \u0440\u0435\u043b\u0438\u0437 \u043e\u0437\u043d\u0430\u043c\u0435\u043d\u043e\u0432\u0430\u043d \u0434\u043b\u044f \u043d\u0430\u0441 \u0440\u0430\u0434\u043e\u0441\u0442\u043d\u044b\u043c \u0441\u043e\u0431\u044b\u0442\u0438\u0435\u043c &#8212; \u043c\u044b \u043f\u0440\u0435\u043a\u0440\u0430\u0449\u0430\u0435\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 Python \u0432\u0435\u0440\u0441\u0438\u0439 2.x. \u041f\u043e\u0447\u0435\u043c\u0443 \u0440\u0430\u0434\u043e\u0441\u0442\u043d\u044b\u043c? \u0414\u043e\u043b\u0433\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043c\u044b \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u043b\u0438 \u0441\u0440\u0430\u0437\u0443 \u043e\u0431\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/microimpuls.com\/en\/docs\/releases\/smarty\/05-23-start-\u0440\u0435\u0436\u0438\u0441\u0441\u0451\u0440\u044b\/\" \/>\n<meta property=\"og:site_name\" content=\"Microimpuls\" \/>\n<meta property=\"article:modified_time\" content=\"2026-01-23T08:04:06+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/microimpuls.com\/docs\/releases\/smarty\/05-23-start-%d1%80%d0%b5%d0%b6%d0%b8%d1%81%d1%81%d1%91%d1%80%d1%8b\",\"url\":\"https:\/\/microimpuls.com\/docs\/releases\/smarty\/05-23-start-%d1%80%d0%b5%d0%b6%d0%b8%d1%81%d1%81%d1%91%d1%80%d1%8b\",\"name\":\"05-23 | 1.94 START, \u0440\u0435\u0436\u0438\u0441\u0441\u0451\u0440\u044b, \u0440\u0435\u043a\u043b\u0430\u043c\u0430\",\"isPartOf\":{\"@id\":\"https:\/\/micro.im\/#website\"},\"datePublished\":\"2023-05-16T07:31:58+00:00\",\"dateModified\":\"2026-01-23T08:04:06+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/microimpuls.com\/docs\/releases\/smarty\/05-23-start-%d1%80%d0%b5%d0%b6%d0%b8%d1%81%d1%81%d1%91%d1%80%d1%8b#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/microimpuls.com\/docs\/releases\/smarty\/05-23-start-%d1%80%d0%b5%d0%b6%d0%b8%d1%81%d1%81%d1%91%d1%80%d1%8b\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/microimpuls.com\/docs\/releases\/smarty\/05-23-start-%d1%80%d0%b5%d0%b6%d0%b8%d1%81%d1%81%d1%91%d1%80%d1%8b#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u0413\u043b\u0430\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\",\"item\":\"https:\/\/micro.im\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Releases\",\"item\":\"https:\/\/microimpuls.com\/docs\/releases\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Smarty\",\"item\":\"https:\/\/microimpuls.com\/docs\/releases\/smarty\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"05-23 | 1.94 START, \u0440\u0435\u0436\u0438\u0441\u0441\u0451\u0440\u044b, \u0440\u0435\u043a\u043b\u0430\u043c\u0430\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/micro.im\/#website\",\"url\":\"https:\/\/micro.im\/\",\"name\":\"Microimpuls\",\"description\":\"\u041a\u043e\u043c\u043f\u043b\u0435\u043a\u0441\u043d\u044b\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0434\u043b\u044f OTT \u0438 IPTV\",\"publisher\":{\"@id\":\"https:\/\/micro.im\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/micro.im\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/micro.im\/#organization\",\"name\":\"Microimpuls\",\"url\":\"https:\/\/micro.im\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/micro.im\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/microimpuls.com\/wp-content\/uploads\/2024\/12\/mi-logo-square-en-black.png\",\"contentUrl\":\"https:\/\/microimpuls.com\/wp-content\/uploads\/2024\/12\/mi-logo-square-en-black.png\",\"width\":208,\"height\":219,\"caption\":\"Microimpuls\"},\"image\":{\"@id\":\"https:\/\/micro.im\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"05-23 | 1.94 START, directors, advertising","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/microimpuls.com\/en\/docs\/releases\/smarty\/05-23-start-\u0440\u0435\u0436\u0438\u0441\u0441\u0451\u0440\u044b\/","og_locale":"en_US","og_type":"article","og_title":"05-23 | 1.94 START, \u0440\u0435\u0436\u0438\u0441\u0441\u0451\u0440\u044b, \u0440\u0435\u043a\u043b\u0430\u043c\u0430","og_description":"\u042d\u0442\u043e\u0442 \u0440\u0435\u043b\u0438\u0437 \u0432\u044b\u0434\u0430\u043b\u0441\u044f \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u043c, \u0432\u0435\u0434\u044c \u043c\u0430\u044f \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u0431\u044b\u043b\u043e \u0438\u0437-\u0437\u0430 \u043f\u0440\u0430\u0437\u0434\u043d\u0438\u043a\u043e\u0432, \u0430 \u043c\u043d\u043e\u0433\u043e \u0430\u043f\u0440\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043c\u044b \u043f\u043e\u0441\u0432\u044f\u0442\u0438\u043b\u0438 \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u044b\u043c \u0434\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u043c, \u043d\u043e \u0442\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435 \u0432 \u043d\u0435\u0433\u043e \u0432\u043e\u0448\u043b\u043e \u043c\u043d\u043e\u0433\u043e \u0432\u0430\u0436\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \ud83d\ude42 \u0418 \u0435\u0449\u0451 \u044d\u0442\u043e\u0442 \u0440\u0435\u043b\u0438\u0437 \u043e\u0437\u043d\u0430\u043c\u0435\u043d\u043e\u0432\u0430\u043d \u0434\u043b\u044f \u043d\u0430\u0441 \u0440\u0430\u0434\u043e\u0441\u0442\u043d\u044b\u043c \u0441\u043e\u0431\u044b\u0442\u0438\u0435\u043c &#8212; \u043c\u044b \u043f\u0440\u0435\u043a\u0440\u0430\u0449\u0430\u0435\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 Python \u0432\u0435\u0440\u0441\u0438\u0439 2.x. \u041f\u043e\u0447\u0435\u043c\u0443 \u0440\u0430\u0434\u043e\u0441\u0442\u043d\u044b\u043c? \u0414\u043e\u043b\u0433\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043c\u044b \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u043b\u0438 \u0441\u0440\u0430\u0437\u0443 \u043e\u0431\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 [&hellip;]","og_url":"https:\/\/microimpuls.com\/en\/docs\/releases\/smarty\/05-23-start-\u0440\u0435\u0436\u0438\u0441\u0441\u0451\u0440\u044b\/","og_site_name":"Microimpuls","article_modified_time":"2026-01-23T08:04:06+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/microimpuls.com\/docs\/releases\/smarty\/05-23-start-%d1%80%d0%b5%d0%b6%d0%b8%d1%81%d1%81%d1%91%d1%80%d1%8b","url":"https:\/\/microimpuls.com\/docs\/releases\/smarty\/05-23-start-%d1%80%d0%b5%d0%b6%d0%b8%d1%81%d1%81%d1%91%d1%80%d1%8b","name":"05-23 | 1.94 START, directors, advertising","isPartOf":{"@id":"https:\/\/micro.im\/#website"},"datePublished":"2023-05-16T07:31:58+00:00","dateModified":"2026-01-23T08:04:06+00:00","breadcrumb":{"@id":"https:\/\/microimpuls.com\/docs\/releases\/smarty\/05-23-start-%d1%80%d0%b5%d0%b6%d0%b8%d1%81%d1%81%d1%91%d1%80%d1%8b#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/microimpuls.com\/docs\/releases\/smarty\/05-23-start-%d1%80%d0%b5%d0%b6%d0%b8%d1%81%d1%81%d1%91%d1%80%d1%8b"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/microimpuls.com\/docs\/releases\/smarty\/05-23-start-%d1%80%d0%b5%d0%b6%d0%b8%d1%81%d1%81%d1%91%d1%80%d1%8b#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u0413\u043b\u0430\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430","item":"https:\/\/micro.im\/"},{"@type":"ListItem","position":2,"name":"Releases","item":"https:\/\/microimpuls.com\/docs\/releases"},{"@type":"ListItem","position":3,"name":"Smarty","item":"https:\/\/microimpuls.com\/docs\/releases\/smarty"},{"@type":"ListItem","position":4,"name":"05-23 | 1.94 START, \u0440\u0435\u0436\u0438\u0441\u0441\u0451\u0440\u044b, \u0440\u0435\u043a\u043b\u0430\u043c\u0430"}]},{"@type":"WebSite","@id":"https:\/\/micro.im\/#website","url":"https:\/\/micro.im\/","name":"Microimpulses","description":"Comprehensive solutions for OTT and IPTV","publisher":{"@id":"https:\/\/micro.im\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/micro.im\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/micro.im\/#organization","name":"Microimpulses","url":"https:\/\/micro.im\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/micro.im\/#\/schema\/logo\/image\/","url":"https:\/\/microimpuls.com\/wp-content\/uploads\/2024\/12\/mi-logo-square-en-black.png","contentUrl":"https:\/\/microimpuls.com\/wp-content\/uploads\/2024\/12\/mi-logo-square-en-black.png","width":208,"height":219,"caption":"Microimpuls"},"image":{"@id":"https:\/\/micro.im\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/microimpuls.com\/en\/wp-json\/wp\/v2\/docs\/4188","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/microimpuls.com\/en\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/microimpuls.com\/en\/wp-json\/wp\/v2\/types\/docs"}],"replies":[{"embeddable":true,"href":"https:\/\/microimpuls.com\/en\/wp-json\/wp\/v2\/comments?post=4188"}],"version-history":[{"count":43,"href":"https:\/\/microimpuls.com\/en\/wp-json\/wp\/v2\/docs\/4188\/revisions"}],"predecessor-version":[{"id":4407,"href":"https:\/\/microimpuls.com\/en\/wp-json\/wp\/v2\/docs\/4188\/revisions\/4407"}],"up":[{"embeddable":true,"href":"https:\/\/microimpuls.com\/en\/wp-json\/wp\/v2\/docs\/3199"}],"next":[{"title":"03-23 | 1.92 AdStream, MediaHills, Cameras","link":"https:\/\/microimpuls.com\/en\/docs\/releases\/smarty\/03-23-adstream-mediahills-cameras","href":"https:\/\/microimpuls.com\/en\/wp-json\/wp\/v2\/docs\/3934"}],"prev":[{"title":"09-23 | 1.96 Device types, EPG posters, cinemas","link":"https:\/\/microimpuls.com\/en\/docs\/releases\/smarty\/09-23-1-96","href":"https:\/\/microimpuls.com\/en\/wp-json\/wp\/v2\/docs\/4618"}],"wp:attachment":[{"href":"https:\/\/microimpuls.com\/en\/wp-json\/wp\/v2\/media?parent=4188"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/microimpuls.com\/en\/wp-json\/wp\/v2\/doc_tag?post=4188"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}