<?xml version="1.0"?>
<rss version="2.0"><channel><title>&#x41E;&#x431;&#x441;&#x443;&#x436;&#x434;&#x435;&#x43D;&#x438;&#x435; &#x43F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x445; &#x442;&#x435;&#x43C;</title><link>https://forum.aprelteam.by/meow/obsuzhdenie/?id=368</link><description>&#x41E;&#x431;&#x441;&#x443;&#x436;&#x434;&#x435;&#x43D;&#x438;&#x435; &#x43F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x445; &#x442;&#x435;&#x43C;</description><language>ru</language><item><title>ReYohoho</title><link>https://forum.aprelteam.by/mur/reyohoho/?id=898</link><description><![CDATA[
<h3>ReYohoho</h3>

<p>ReYohoho — расширение для быстрого перехода к специальной версии <abbr title="Aprel Kino — ресурс для просмотра фильмов и сериалов от Aprel Team, в советской стилистике.">Aprel Kino</abbr> (ReYohoho) из Кинопоиска и других ресурсов. Добавляет на страницы Кинопоиска, Shikimori и IMDb виджет. Один клик открывает <abbr title="Aprel Kino — ресурс для просмотра фильмов и сериалов от Aprel Team, в советской стилистике.">Aprel Kino</abbr>, без лишних поисков.<br><br><strong>Установка:<br></strong>&gt; Загрузить данный файл, открыть через <strong>браузер <abbr title="Opera — веб-браузер и пакет прикладных программ для работы в Интернете, выпускаемый компанией Opera Software. Разработан в 1994 году группой исследователей из норвежской компании Telenor.">Opera</abbr></strong> (или <strong><abbr title="Opera GX — веб-браузер, разработанный норвежской компанией Opera Software специально для геймеров.">Opera GX</abbr>, <abbr title="Opera Air — первый браузер, разработанный с акцентом на осознанность. Встроенные медитации, умные перерывы, бинауральные ритмы и упражнения помогут снизить стресс и улучшить концентрацию. Минималистичный дизайн, ИИ-помощник и блокировщик рекламы создают комфортный и безопасный веб-опыт.">Opera Air</abbr></strong>) и нажать кнопку <strong>«Установить»</strong>.<em><br><br></em><strong>Новые корректировки:</strong><br>&gt; Полный переезд на белорусский домен. Обновление других направлений.</p>

<div class="ipsRichTextBox ipsRichTextBox--alwaysopen">
    <div class="ipsRichTextBox__title">
        <p>Сводка</p>
    </div>
    <p>
        <strong><span data-ips-font-size="90">Добавил </span></strong> 
<a href='https://forum.aprelteam.by/%E2%98%AD1/' rel="nofollow" data-ipsHover data-ipsHover-width='370' data-ipsHover-target="https://forum.aprelteam.by/%E2%98%AD1/?do=hovercard&amp;referrer=https%253A%252F%252Fforum.aprelteam.by%252Ffiles%252Ffile%252F187-reyohoho%252F%253Fdo%253Dedit" title="Перейти в досье Oleg Aprel" class="ipsUsername" translate="no"><span style="color:#00FF00;font-weight:bold;"><i class="fa fa-code fa-spin"></i>Oleg Aprel</span></a>
    </p>
    <p>
        <strong><span data-ips-font-size="90">Добавлено </span></strong> 06/08/26
    </p>
    <p>
        <strong><span data-ips-font-size="90">Категория </span></strong> <a href="https://forum.aprelteam.by/files/category/5-%D1%80%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%B8%D1%8F-%D1%82%D0%B5%D0%BC%D1%8B/">Расширения, темы</a>
    </p>
    
</div>

<p>
    <a href='https://forum.aprelteam.by/files/file/187-reyohoho/'>Просмотр файла</a>
</p>]]></description><guid isPermaLink="false">898</guid><pubDate>Mon, 08 Jun 2026 13:14:06 +0000</pubDate></item><item><title>TeleGroupBot (&#x441; &#x440;&#x443;&#x441;&#x441;&#x43A;&#x438;&#x43C; &#x44F;&#x437;&#x44B;&#x43A;&#x43E;&#x43C;)</title><link>https://forum.aprelteam.by/mur/telegroupbot-s-russkim-yazykom/?id=890</link><description><![CDATA[
<h3>TeleGroupBot (с русским языком)</h3>

<p style="text-align:center;">Telegram Group Management Software (<abbr title="SaaS (Software as a Service) — модель облачного программного обеспечения, при которой приложения предоставляются пользователям через интернет. Пользователи получают доступ к программам без необходимости установки и обслуживания, так как все управление и обновления выполняются провайдером. SaaS позволяет легко масштабировать использование, обеспечивает доступ с различных устройств и часто предлагает подписочную модель оплаты.">SaaS</abbr> Platform)<br>Программное обеспечение для управления группами Telegram (<abbr title="SaaS (Software as a Service) — модель облачного программного обеспечения, при которой приложения предоставляются пользователям через интернет. Пользователи получают доступ к программам без необходимости установки и обслуживания, так как все управление и обновления выполняются провайдером. SaaS позволяет легко масштабировать использование, обеспечивает доступ с различных устройств и часто предлагает подписочную модель оплаты.">SaaS</abbr>-платформа)<br><br>NULLED | КУПЛЕНО<br><br>DEMO сайт: <a rel="external nofollow" href="https://telegroupbot.xeroneitbd.net/login">https://telegroupbot.xeroneitbd.net/login</a><br>Документация: <a rel="external nofollow" href="https://telegroupbot.xeroneitbd.net/docs">https://telegroupbot.xeroneitbd.net/docs</a><br><span style="font-family: Helvetica, Arial, sans-serif;">Логин: </span><a rel="" href="mailto:admin@demo.com">admin@demo.com</a><br><span style="font-family: Helvetica, Arial, sans-serif;">Пароль: 123456</span></p><p style="text-align:center;"></p><p style="text-align:center;">Распаковать архив в корень сайта, подкорректировать файл <strong>.env</strong>. Указать домен сайта и данные от базы данных, которую нужно создать и импортировать в неё все данные из файла <strong>aprelteam.sql</strong>.<br>Всё. Сайт откроется.<br></p><p style="text-align:center;"><strong>Данные для админки:</strong><br><a rel="" href="mailto:aprelteam@aprelteam.ru">aprelteam@aprelteam.ru</a><br>aprelteam<br></p>

<div class="ipsRichTextBox ipsRichTextBox--alwaysopen">
    <div class="ipsRichTextBox__title">
        <p>Сводка</p>
    </div>
    <p>
        <strong><span data-ips-font-size="90">Добавил </span></strong> 
<a href='https://forum.aprelteam.by/%E2%98%AD1/' rel="nofollow" data-ipsHover data-ipsHover-width='370' data-ipsHover-target="https://forum.aprelteam.by/%E2%98%AD1/?do=hovercard&amp;referrer=https%253A%252F%252Fforum.aprelteam.by%252Ffiles%252Ffile%252F181-telegroupbot-s-russkim-yazykom%252F%253Fdo%253DnewVersion" title="Перейти в досье Oleg Aprel" class="ipsUsername" translate="no"><span style="color:#00FF00;font-weight:bold;"><i class="fa fa-code fa-spin"></i>Oleg Aprel</span></a>
    </p>
    <p>
        <strong><span data-ips-font-size="90">Добавлено </span></strong> 13.04.2026
    </p>
    <p>
        <strong><span data-ips-font-size="90">Категория </span></strong> <a href="https://forum.aprelteam.by/files/category/5-%D1%80%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%B8%D1%8F-%D1%82%D0%B5%D0%BC%D1%8B/">Расширения, темы</a>
    </p>
    
</div>

<p>
    <a href='https://forum.aprelteam.by/files/file/181-telegroupbot-s-russkim-yazykom/'>Просмотр файла</a>
</p>
<p><img class="ipsImage ipsImage_thumbnailed ipsRichText__align--block" data-fileid="1231" data-full-image="https://forum.aprelteam.by/uploads/monthly_2026_04/photo_2026-04-14_12-06-46.thumb.jpg.916014ae84276e1a6da468a015a52d91.jpg" src="https://forum.aprelteam.by/uploads/monthly_2026_04/photo_2026-04-14_12-06-46.thumb.jpg.916014ae84276e1a6da468a015a52d91.jpg" height="190" width="500" alt="TeleGroupBot (с русским языком)" loading='lazy'></p>]]></description><guid isPermaLink="false">890</guid><pubDate>Mon, 13 Apr 2026 19:46:16 +0000</pubDate></item><item><title>&#x421;&#x43A;&#x440;&#x438;&#x43F;&#x442; &#x43C;&#x443;&#x437;&#x44B;&#x43A;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x433;&#x43E; &#x441;&#x430;&#x439;&#x442;&#x430; VSeti Sound &#x441; &#x43F;&#x43E;&#x434;&#x434;&#x435;&#x440;&#x436;&#x43A;&#x43E;&#x439; PWA &#x43D;&#x430; &#x43E;&#x441;&#x43D;&#x43E;&#x432;&#x435; DeepSound | Nulled</title><link>https://forum.aprelteam.by/mur/skript-muzykalnogo-sajta-vseti-sound-s-podderzhkoj-pwa-na-osnove-deepsound-nulled/?id=544</link><description><![CDATA[<p style="text-align:center;"><img class="ipsImage ipsImage_thumbnailed ipsRichText__align--block" data-fileid="765" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.28cf0eec4858c74c8deaae013f5e814a.png" alt="image.png" title="image.png" width="640" height="314" data-full-image="https://forum.aprelteam.su/uploads/monthly_2025_08/image.png.93ffed241503ab0aea6e24fd173bb3cc.png" loading="lazy"><br><br><img class="ipsImage ipsImage_thumbnailed ipsRichText__align--block" data-fileid="763" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.e675018d54563e01b0fd057ca14637f6.png" alt="image.png" title="image.png" width="640" height="312" data-full-image="https://forum.aprelteam.su/uploads/monthly_2025_08/image.png.ea2dae8951c728b9e45c9173fc1073b5.png" loading="lazy"><br><br><img class="ipsImage ipsImage_thumbnailed ipsRichText__align--block" data-fileid="762" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.c6b24577bf75260cf57481dc47ed8187.png" alt="image.png" title="image.png" width="640" height="313" data-full-image="https://forum.aprelteam.su/uploads/monthly_2025_08/image.png.505e4cc10cca736c0877ac7e42e802ad.png" loading="lazy"><br><br><img class="ipsImage ipsImage_thumbnailed ipsRichText__align--block" data-fileid="761" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.da4a89d295b4f5245c38cf8d805f448a.png" alt="image.png" title="image.png" width="640" height="311" data-full-image="https://forum.aprelteam.su/uploads/monthly_2025_08/image.png.ab67259efdf804cbaa5015f03dbe8aea.png" loading="lazy"><br><br><img class="ipsImage ipsImage_thumbnailed ipsRichText__align--block" data-fileid="760" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.f1f7f7b78585ff0e03fd58a213a6f62a.png" alt="image.png" title="image.png" width="640" height="312" data-full-image="https://forum.aprelteam.su/uploads/monthly_2025_08/image.png.94375cdd05a7d386b7c3d59b7653abae.png" loading="lazy"><br><br><img class="ipsImage ipsImage_thumbnailed ipsRichText__align--block" data-fileid="759" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.681d5e3b218a8b3c9916113f4773f2db.png" alt="image.png" title="image.png" width="640" height="311" data-full-image="https://forum.aprelteam.su/uploads/monthly_2025_08/image.png.3dcd839d6c00076f6a7884557496467d.png" loading="lazy"><br><br>Обычный скрипт музыкального сайта на подобии SoundCloud, YouTube Music.<br>Купленный.<br><br><strong>Установка:</strong><br>1. Качаем архив. Закидываем на хостинг. Распаковываем. Будет 2 папки.<br><br><img class="ipsImage ipsRichText__align--block" data-fileid="766" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.a1cfeb0144d9f8aead26836590e24545.png" alt="image.png" title="image.png" width="522" height="223" loading="lazy"><br><br>Всё то, что в первой папке перемещаем в корень ресурса. Пустую папку можно убирать.<br><br>2. Создаём базу данных.<br><br><img class="ipsImage ipsRichText__align--block" data-fileid="767" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.e72b45c01acdde6df0b49bb33b1f1f8a.png" alt="image.png" title="image.png" width="640" height="620" loading="lazy"><br><br>3. Импортируем в созданную базу данных файл с папки Дамп базы данных.<br><br><img class="ipsImage ipsRichText__align--block" data-fileid="768" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.dc712b9b2cb40072c8ea97d7e23cefde.png" alt="image.png" title="image.png" width="464" height="260" loading="lazy"><br><br>4. Меняем данные базы данных и ссылку на свои сайт в файле /config.php.<br><br><img class="ipsImage ipsImage_thumbnailed ipsRichText__align--block" data-fileid="770" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.f7760aeaa6df110eab3c10ce1714c539.png" alt="image.png" title="image.png" width="640" height="498" data-full-image="https://forum.aprelteam.su/uploads/monthly_2025_08/image.png.97e2dca3ea50f5094145bb49a2393618.png" loading="lazy"><br><br>Всё.<br><br><span style="font-family: Arial, Helvetica, sans-serif;">Для работы требуется PHP 8.2 или выше.</span><br><br>Данные для входа в админку: <strong>nulled </strong>/ <strong>aprelteam</strong>.</p><details class="ipsRichTextBox ipsRichTextBox--expandable ipsRichText__no-index"><summary class="ipsRichTextBox__title"><p><strong>Загрузить</strong></p></summary><p style="text-align:center;"><strong>MEGA</strong><br><strong><i class="fa-solid fa-cloud-arrow-down" title="cloud-arrow-down"></i></strong><br><i class="fa-solid fa-angle-right" title="angle-right"></i> <a rel="external nofollow" href="https://mega.nz/file/2DRznTpY#ORlADJEE8zbJT43pLsOVjBfxT3_WsWgbzwrdk2o6kW0">VSeti Sound v1.5.2</a> <i class="fa-solid fa-angle-left" title="angle-left"></i></p></details>]]></description><guid isPermaLink="false">544</guid><pubDate>Sun, 31 Aug 2025 17:38:47 +0000</pubDate></item><item><title>&#x421;&#x43A;&#x440;&#x438;&#x43F;&#x442; &#x432;&#x438;&#x434;&#x435;&#x43E;&#x43F;&#x43B;&#x430;&#x442;&#x444;&#x43E;&#x440;&#x43C;&#x44B; VSeti Play &#x441; &#x43F;&#x43E;&#x434;&#x434;&#x435;&#x440;&#x436;&#x43A;&#x43E;&#x439; PWA &#x43D;&#x430; &#x43E;&#x441;&#x43D;&#x43E;&#x432;&#x435; PlayTube | Nulled</title><link>https://forum.aprelteam.by/mur/skript-videoplatformy-vseti-play-s-podderzhkoj-pwa-na-osnove-playtube-nulled/?id=528</link><description><![CDATA[<p style="text-align:center;"><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.ec517577300ee1055102daea8492d8ce.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="746" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="746" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.d9ae54e9e06147bd2a79425919d9423a.png" alt="image.png" width="640" height="314" loading="lazy"></a><br><br><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.ab60864a5842610a0bd426d6c3ea82e6.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="751" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="751" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.6aebc1defde029178287d449ed96a0e8.png" alt="image.png" width="640" height="312" loading="lazy"></a><br><br><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.a4f7ca2854af5a7fd48dd50d4d2c454c.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="748" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="748" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.e971b46ceb4a7d91efa7fc6bf3650d0b.png" alt="image.png" width="640" height="313" loading="lazy"></a><br><br><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.3d33a6ecf72357408864f083edbeb10d.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="749" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="749" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.5da62d299731195db92c72941b7c510e.png" alt="image.png" width="640" height="312" loading="lazy"></a><br><br><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.5750f226120e15bdc345cf4d180cb42c.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="750" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="750" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.2c594ee3a1b68287c2ecf1844033ec55.png" alt="image.png" width="640" height="312" loading="lazy"></a><br><br>Обычный скрипт видеохостинга на подобии YouTube, RuTube.<br>Купленный.<br><br><strong>Установка:</strong><br>1. Качаем архив. Закидываем на хостинг. Распаковываем. Будет 2 папки.<br><br><img class="ipsImage ipsRichText__align--block" data-fileid="754" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.2e259e9227e82ddb5bee2e12c18efd2c.png" alt="image.png" width="515" height="232" loading="lazy"><br><br>Всё то, что в первой папке перемещаем в корень ресурса. Пустую папку можно убирать.<br><br>2. Создаём базу данных.<br><br><img class="ipsImage ipsRichText__align--block" data-fileid="757" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.a2c5cc89613c81fdb45b7b7ea6763eb7.png" alt="image.png" width="640" height="620" loading="lazy"><br><br>3. Импортируем в созданную базу данных файл с папки Дамп базы данных.<br><br><img class="ipsImage ipsRichText__align--block" data-fileid="752" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.95f14d2411c3043adb6c8709543d520c.png" alt="image.png" width="464" height="260" loading="lazy"><br><br>4. Меняем данные базы данных и ссылку на свои сайт в файле /config.php.<br><br><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.39917174535617518fd4f6b1f16f2107.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="753" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="753" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.0dd3f0efeb781135cff65cbde7676f64.png" alt="image.png" width="640" height="493" loading="lazy"></a><br><br>Всё.<br><br><span style='font-family: "Arial", "Helvetica", sans-serif'>Для работы требуется PHP 8.2 или выше.</span><br><br>Данные для входа в админку: <strong>nulled </strong>/ <strong>aprelteam</strong>.</p><details class="ipsRichTextBox ipsRichTextBox--expandable"><summary class="ipsRichTextBox__title"><p><strong>Загрузить</strong></p></summary><p style="text-align:center;"><strong>MEGA</strong><br><strong><i class="fa-solid fa-cloud-arrow-down" title="cloud-arrow-down"></i></strong><br><i class="fa-solid fa-angle-right" title="angle-right"></i> <a rel="external nofollow" href="https://mega.nz/file/zTgViZaQ#H8KOjgczdQCZNH0D7pCB2QunfN_thaPku6f-2vyixAU">VSeti Play v3.1.1</a> <i class="fa-solid fa-angle-left" title="angle-left"></i></p></details>]]></description><guid isPermaLink="false">528</guid><pubDate>Fri, 29 Aug 2025 10:35:20 +0000</pubDate></item><item><title>&#x421;&#x43A;&#x440;&#x438;&#x43F;&#x442; &#x441;&#x43E;&#x446;&#x438;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x439; &#x441;&#x435;&#x442;&#x438; VSeti &#x441; &#x43F;&#x43E;&#x434;&#x434;&#x435;&#x440;&#x436;&#x43A;&#x43E;&#x439; PWA &#x43D;&#x430; &#x43E;&#x441;&#x43D;&#x43E;&#x432;&#x435; WoWonder | Nulled</title><link>https://forum.aprelteam.by/mur/skript-socialnoj-seti-vseti-s-podderzhkoj-pwa-na-osnove-wowonder-nulled/?id=398</link><description><![CDATA[<p style="text-align:center;"><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.a66873accf797f6acdc64fe9b98ee6f3.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="736" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="736" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.11b6587f44c9d67b19eea92c628f981a.png" alt="image.png" width="640" height="312" loading="lazy"></a><br><br><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.bf8a65d5a3d649d8ebfdeb7476d32d8d.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="734" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="734" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.98cae2d36dae69a669e85d5328dc85d1.png" alt="image.png" width="640" height="316" loading="lazy"></a><br><br><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.caa3c4908446e0feb67259326f0e5b7d.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="733" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="733" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.eb6f5d8f4af05d62982b4fd43dcdb809.png" alt="image.png" width="640" height="313" loading="lazy"></a></p><p style="text-align:center;"><br>Обычный скрипт социальной сети на подобии ВСети (именно этот движок используется там).<br>Купленный.<br><br>Сайт на данном движке &gt; <a rel="external nofollow" href="https://vseti.by/vseti">https://vseti.by/vseti</a><br><br><strong>Установка:</strong><br>1. Качаем архив. Закидываем на хостинг. Распаковываем. Будет 2 папки.<br><br><img class="ipsImage ipsRichText__align--block" data-fileid="740" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.21dbe6294db8c213b18bccabd0f53a3f.png" alt="image.png" width="519" height="255" loading="lazy"><br><br>Всё то, что в первой папке перемещаем в корень ресурса. Пустую папку можно убирать.<br><br>2. Создаём базу данных.<br><br><img class="ipsImage ipsRichText__align--block" data-fileid="739" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.34eef0a88df903067999432a3b40030c.png" alt="image.png" width="640" height="620" loading="lazy"><br><br>3. Импортируем в созданную базу данных файл с папки Дамп базы данных.<br><br><img class="ipsImage ipsRichText__align--block" data-fileid="738" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.4ffeeaa3bb2dbf2e5d6a27afbace2fb8.png" alt="image.png" width="464" height="260" loading="lazy"><br><br>4. Меняем данные базы данных и ссылку на свои сайт в файле /config.php.<br><br><img class="ipsImage ipsRichText__align--block" data-fileid="741" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.16ff37222008aca42c6ce9a714fda268.png" alt="image.png" width="640" height="484" loading="lazy"><br><br>Всё.<br><br><span style='font-family: "Arial", "Helvetica", sans-serif'>Для работы требуется PHP 8.2 или выше.</span><br><br>Данные для входа в админку: <strong>nulled </strong>/ <strong>aprelteam</strong>.</p><details class="ipsRichTextBox ipsRichTextBox--expandable"><summary class="ipsRichTextBox__title"><p><strong>Загрузить</strong></p></summary><p style="text-align:center;"><strong>MEGA</strong><br><strong><i class="fa-solid fa-cloud-arrow-down" title="cloud-arrow-down"></i></strong><br><i class="fa-solid fa-angle-right" title="angle-right"></i> <a rel="external nofollow" href="https://mega.nz/file/WboCDJCR#M2BMaTykLuIuHefb59G_jOFUsBj6srK9DyhApXsDFZs">VSeti v4.3.4</a> <i class="fa-solid fa-angle-left" title="angle-left"></i></p></details>]]></description><guid isPermaLink="false">398</guid><pubDate>Tue, 31 Dec 2024 12:27:59 +0000</pubDate></item><item><title>&#x421;&#x43A;&#x440;&#x438;&#x43F;&#x442; &#x441;&#x43E;&#x446;&#x438;&#x430;&#x43B;&#x44C;&#x43D;&#x43E;&#x439; &#x441;&#x435;&#x442;&#x438; VSeti Lite &#x441; &#x43F;&#x43E;&#x434;&#x434;&#x435;&#x440;&#x436;&#x43A;&#x43E;&#x439; PWA &#x43D;&#x430; &#x43E;&#x441;&#x43D;&#x43E;&#x432;&#x435; Sngine | Nulled</title><link>https://forum.aprelteam.by/mur/skript-socialnoj-seti-vseti-lite-s-podderzhkoj-pwa-na-osnove-sngine-nulled/?id=523</link><description><![CDATA[<p style="text-align:center;"><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.2c1b05c5a3642de4142ebeddaeff944f.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="725" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="725" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.611e8d77a170996ef700510cd0fe229d.png" alt="image.png" width="640" height="317" loading="lazy"></a><br><br><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.ae460a98d146a9626013eb0bd345aead.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="723" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="723" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.757ee55caab3e62aafcd0ce20293c0be.png" alt="image.png" width="640" height="318" loading="lazy"></a><br><br><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.d894ac7dade00fdf444e85b92e1bc3d4.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="722" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="722" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.864f25d0cc06c9127a629dd5168c5360.png" alt="image.png" width="640" height="315" loading="lazy"></a><br><br>Обычный скрипт социальной сети на подобии Twitter, ВСети и прочих сайтов.<br>Купленный.<br><br><strong>Установка:</strong><br>1. Качаем архив. Закидываем на хостинг. Распаковываем. Будет 2 папки.<br><br><img class="ipsImage ipsRichText__align--block" data-fileid="726" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.7bf2ce5a973e02ab16d70c345c8b0afd.png" alt="image.png" width="519" height="255" loading="lazy"><br><br>Всё то, что в первой папке перемещаем в корень ресурса. Пустую папку можно убирать.<br><br>2. Создаём базу данных.<br><br><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.bb5673a6a9cea7d660970135bcc6c469.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="727" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="727" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.f2ecc48e8ddba0a42e228467cdfdf553.png" alt="image.png" width="640" height="620" loading="lazy"></a><br><br>3. Импортируем в созданную базу данных файл с папки Дамп базы данных.<br><br><img class="ipsImage ipsRichText__align--block" data-fileid="728" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.94ce533df84ecb93eb30b77de1887593.png" alt="image.png" width="464" height="260" loading="lazy"><br><br>4. Меняем данные базы данных и ссылку на свои сайт в файле /includes/config.php.<br><br><a href="https://forum.aprelteam.by/uploads/monthly_2025_08/image.png.1ac64bcc9ff627a7a2a3e54e49412376.png" class="ipsAttachLink ipsAttachLink_image ipsRichText__align--block" data-fileid="729" data-fileext="png" rel=""><img class="ipsImage ipsImage_thumbnailed" data-fileid="729" src="https://forum.aprelteam.by/uploads/monthly_2025_08/image.thumb.png.7fc23efe17ccaaaefa32c8cb6837b244.png" alt="image.png" width="640" height="470" loading="lazy"></a><br><br>Всё.<br><br>Перевод на русский язык висит на хостинге, в папке /www/ваш_домен/content/languages/locale/ru_ru/.<br><span style='font-family: "Arial", "Helvetica", sans-serif'>Для работы требуется PHP 8.2 или выше.</span><br><br>Данные для входа в админку: <strong>nulled </strong>/ <strong>aprelteam</strong>.</p><details class="ipsRichTextBox ipsRichTextBox--expandable"><summary class="ipsRichTextBox__title"><p><strong>Загрузить</strong></p></summary><p style="text-align:center;"><strong>MEGA</strong><br><strong><i class="fa-solid fa-cloud-arrow-down" title="cloud-arrow-down"></i></strong><br><i class="fa-solid fa-angle-right" title="angle-right"></i> <a rel="external nofollow" href="https://mega.nz/file/iPplVBIJ#0MJfaxYamwcAZVyUZAzfKZjmnFNWSX6nmCZujAephSQ">VSeti Lite v4.0.6</a> <i class="fa-solid fa-angle-left" title="angle-left"></i></p></details>]]></description><guid isPermaLink="false">523</guid><pubDate>Sun, 24 Aug 2025 14:25:01 +0000</pubDate></item><item><title>&#x424;&#x43E;&#x440;&#x43C;&#x430; &#x43E;&#x431;&#x440;&#x430;&#x442;&#x43D;&#x43E;&#x439; &#x441;&#x432;&#x44F;&#x437;&#x438; &#x43D;&#x430; PHP</title><link>https://forum.aprelteam.by/mur/forma-obratnoj-svjazi-na-php/?id=304</link><description><![CDATA[<p>
	Формы обратной связи являются важным инструментом для взаимодействия с пользователями и собирания их комментариев и вопросов. 
</p>

<p>
	<span style="font-size:20px;">Шаг 1: Создание HTML-формы</span><br />
	<br />
	Для начала нам нужно создать HTML-форму, в которой пользователи будут вводить свои комментарии и вопросы. 
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted"><span class="tag">&lt;formmethod</span><span class="pun">=</span><span class="atv">"post"</span><span class="atn">action</span><span class="pun">=</span><span class="atv">"process.php"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;labelfor</span><span class="pun">=</span><span class="atv">"name"</span><span class="tag">&gt;</span><span class="pln">Имя:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
  </span><span class="tag">&lt;inputtype</span><span class="pun">=</span><span class="atv">"text"</span><span class="atn">name</span><span class="pun">=</span><span class="atv">"name"</span><span class="atn">id</span><span class="pun">=</span><span class="atv">"name"</span><span class="atn">required</span><span class="tag">&gt;</span><span class="pln">

  </span><span class="tag">&lt;labelfor</span><span class="pun">=</span><span class="atv">"email"</span><span class="tag">&gt;</span><span class="pln">Email:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
  </span><span class="tag">&lt;inputtype</span><span class="pun">=</span><span class="atv">"email"</span><span class="atn">name</span><span class="pun">=</span><span class="atv">"email"</span><span class="atn">id</span><span class="pun">=</span><span class="atv">"email"</span><span class="atn">required</span><span class="tag">&gt;</span><span class="pln">

  </span><span class="tag">&lt;labelfor</span><span class="pun">=</span><span class="atv">"message"</span><span class="tag">&gt;</span><span class="pln">Сообщение:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
  </span><span class="tag">&lt;textareaname</span><span class="pun">=</span><span class="atv">"message"</span><span class="atn">id</span><span class="pun">=</span><span class="atv">"message"</span><span class="atn">required</span><span class="tag">&gt;&lt;/textarea&gt;</span><span class="pln">

  </span><span class="tag">&lt;inputtype</span><span class="pun">=</span><span class="atv">"submit"</span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Отправить"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;/form&gt;</span></pre>

<p>
	<span style="font-size:20px;">Шаг 2: Создание скрипта на PHP для обработки формы</span><br />
	<br />
	Теперь нам нужно создать PHP-скрипт, который будет обрабатывать данные, отправленные из формы. Создайте файл с именем "process.php" и разместите следующий код внутри него:
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="pun">&lt;?</span><span class="pln">php
</span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">$_SERVER</span><span class="pun">[</span><span class="str">"REQUEST_METHOD"</span><span class="pun">]</span><span class="pln"> </span><span class="pun">===</span><span class="pln"> </span><span class="str">"POST"</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
  </span><span class="com">// Получение и фильтрация данных из формы</span><span class="pln">
  $name </span><span class="pun">=</span><span class="pln"> filter_input</span><span class="pun">(</span><span class="pln">INPUT_POST</span><span class="pun">,</span><span class="pln"> </span><span class="str">'name'</span><span class="pun">,</span><span class="pln"> FILTER_SANITIZE_STRING</span><span class="pun">);</span><span class="pln">
  $email </span><span class="pun">=</span><span class="pln"> filter_input</span><span class="pun">(</span><span class="pln">INPUT_POST</span><span class="pun">,</span><span class="pln"> </span><span class="str">'email'</span><span class="pun">,</span><span class="pln"> FILTER_VALIDATE_EMAIL</span><span class="pun">);</span><span class="pln">
  $message </span><span class="pun">=</span><span class="pln"> filter_input</span><span class="pun">(</span><span class="pln">INPUT_POST</span><span class="pun">,</span><span class="pln"> </span><span class="str">'message'</span><span class="pun">,</span><span class="pln"> FILTER_SANITIZE_STRING</span><span class="pun">);</span><span class="pln">
  </span><span class="com">// Проверка, были ли заполнены все обязательные поля</span><span class="pln">
  </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">empty</span><span class="pun">(</span><span class="pln">$name</span><span class="pun">)</span><span class="pln"> </span><span class="pun">||</span><span class="pln"> empty</span><span class="pun">(</span><span class="pln">$email</span><span class="pun">)</span><span class="pln"> </span><span class="pun">||</span><span class="pln"> empty</span><span class="pun">(</span><span class="pln">$message</span><span class="pun">))</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    echo </span><span class="str">"Заполните все поля формы."</span><span class="pun">;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">else</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    </span><span class="com">// Настройка данных для отправки по электронной почте</span><span class="pln">
    $to </span><span class="pun">=</span><span class="pln"> </span><span class="str">"ваш_email@example.com"</span><span class="pun">;</span><span class="pln"> </span><span class="com">// Замените на свой адрес электронной почты</span><span class="pln">
    $subject </span><span class="pun">=</span><span class="pln"> </span><span class="str">"Новое сообщение через форму обратной связи"</span><span class="pun">;</span><span class="pln">
    $headers </span><span class="pun">=</span><span class="pln"> </span><span class="str">"From: $email\r\n"</span><span class="pun">;</span><span class="pln">
    
    </span><span class="com">// Дополнительные заголовки для обеспечения безопасности</span><span class="pln">
    $headers </span><span class="pun">.=</span><span class="pln"> </span><span class="str">"MIME-Version: 1.0\r\n"</span><span class="pun">;</span><span class="pln">
    $headers </span><span class="pun">.=</span><span class="pln"> </span><span class="str">"Content-Type: text/plain; charset=UTF-8\r\n"</span><span class="pun">;</span><span class="pln">
    $headers </span><span class="pun">.=</span><span class="pln"> </span><span class="str">"Content-Transfer-Encoding: 8bit\r\n"</span><span class="pun">;</span><span class="pln">
    </span><span class="com">// Формирование текста сообщения</span><span class="pln">
    $message </span><span class="pun">=</span><span class="pln"> </span><span class="str">"Имя: $name\nСообщение: $message"</span><span class="pun">;</span><span class="pln">
    </span><span class="com">// Попытка отправки электронного письма с использованием mail()</span><span class="pln">
    </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln">mail</span><span class="pun">(</span><span class="pln">$to</span><span class="pun">,</span><span class="pln"> $subject</span><span class="pun">,</span><span class="pln"> $message</span><span class="pun">,</span><span class="pln"> $headers</span><span class="pun">))</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      echo </span><span class="str">"Сообщение успешно отправлено!"</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">else</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      echo </span><span class="str">"Что-то пошло не так. Пожалуйста, попробуйте еще раз."</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
</span><span class="pun">}</span><span class="pln">
</span><span class="pun">?&gt;</span></pre>

<p>
	<br />
	<span style="font-size:20px;">Шаг 3: Настройка получателя</span><br />
	<br />
	В коде выше вам необходимо заменить "<strong>ваш_email@example.com</strong>" на ваш реальный адрес электронной почты. Это адрес, на который будут отправляться сообщения от пользователей.
</p>

<p>
	<span style="font-size:20px;">Шаг 4: Дополнительная обработка и защита данных</span><br />
	<br />
	В этом примере мы использовали самое простое решение для отправки электронной почты, используя функцию mail() в PHP. Однако, учтите, что этот метод может иметь ограничения и требовать настройки сервера. Дополнительно вы можете добавить проверки на валидность email и фильтрацию данных, чтобы уберечься от потенциальных атак.
</p>

<p>
	Это всё! Теперь у вас есть работающая форма обратной связи на PHP. Вы можете опубликовать её на своем веб-сайте и начать получать комментарии и вопросы от ваших пользователей.
</p>
]]></description><guid isPermaLink="false">304</guid><pubDate>Tue, 19 Mar 2024 23:04:29 +0000</pubDate></item><item><title>&#x421;&#x43F;&#x43E;&#x441;&#x43E;&#x431;&#x44B; &#x443;&#x432;&#x435;&#x43B;&#x438;&#x447;&#x435;&#x43D;&#x438;&#x44F; &#x441;&#x43A;&#x43E;&#x440;&#x43E;&#x441;&#x442;&#x438; &#x437;&#x430;&#x433;&#x440;&#x443;&#x437;&#x43A;&#x438; &#x441;&#x430;&#x439;&#x442;&#x430;</title><link>https://forum.aprelteam.by/mur/sposoby-uvelichenija-skorosti-zagruzki-sajta/?id=303</link><description><![CDATA[<p>
	1. Оптимизация изображений: Крупные размеры изображений являются одной из основных причин медленной загрузки страниц. Перед загрузкой на сайт, проверьте размеры и форматы изображений. Вы можете использовать инструменты для сжатия изображений без значительной потери качества. Убедитесь, что ваш сайт использует сжатие и кэширование изображений для быстрой загрузки.
</p>

<p>
	2. Минификация кода: Лишние пробелы, комментарии и переносы строк в коде страницы могут замедлить ее загрузку. Минификация кода, посредством удаления ненужных символов и пробелов, поможет уменьшить размер файлов и улучшить время загрузки.
</p>

<p>
	3. Кэширование: Кэширование позволяет сохранять копии вашего сайта на компьютере пользователя после первой загрузки. Это позволяет ускорить последующие посещения, так как браузер может получить данные напрямую с кэша, минуя долгую загрузку с сервера. Обратите внимание на настройки кэширования на вашем сервере или используйте специальные плагины для управления кэшем.
</p>

<p>
	4. Использование CDN: CDN (Content Delivery Network) позволяет размещать копии вашего сайта на серверах распределенных по всему миру. Когда пользователь запрашивает доступ к вашему сайту, содержимое будет доставлено с сервера, находящегося ближе к его географическому местоположению. В результате, время загрузки сокращается, так как данные могут быть получены с более близкого сервера.
</p>

<p>
	5. Улучшение хостинга: Ваш хостинг-провайдер также может повлиять на скорость загрузки вашего сайта. Исследуйте возможности обновления хостинга или перехода на более производительный сервер, чтобы обеспечить оптимальную производительность вашего сайта.
</p>

<p>
	6. Удаление ненужных плагинов и скриптов: Плагины и скрипты могут значительно замедлить загрузку страницы, особенно если они не используются или являются устаревшими. Проведите аудит и удалите все ненужные плагины и скрипты, чтобы уменьшить время загрузки страницы.
</p>

<p>
	7. Регулярное тестирование: Не забывайте периодически проверять скорость загрузки вашего сайта с помощью специальных инструментов или онлайн-сервисов. Это поможет вам выявить проблемные области и принять меры для их улучшения.
</p>
]]></description><guid isPermaLink="false">303</guid><pubDate>Tue, 19 Mar 2024 23:01:21 +0000</pubDate></item><item><title>&#x421;&#x43A;&#x440;&#x438;&#x43F;&#x442; &#x434;&#x43B;&#x44F; &#x441;&#x43A;&#x430;&#x447;&#x438;&#x432;&#x430;&#x43D;&#x438;&#x44F; &#x432;&#x438;&#x434;&#x435;&#x43E; &#x441; YouTube &#x43D;&#x430; PHP</title><link>https://forum.aprelteam.by/mur/skript-dlja-skachivanija-video-s-youtube-na-php/?id=300</link><description><![CDATA[<p>
	Вероятно, многие из пытавшихся реализовать скачивание видосов с ютуба уже натыкались на get_video_info. И, к большому сожалению, рабочим этот вариант не оказывался (на сегодняшний день). Поэтому в этой статье поделюсь одной из найденных альтернатив.
</p>

<p>
	Итак, создаём php-файл и сразу начинаем писать код. Добавим переменную <strong>$link</strong>, запишем в неё ссылку на любое видео с ютуба:
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="pun">&lt;?</span><span class="pln">php

$link </span><span class="pun">=</span><span class="pln"> </span><span class="str">'https://www.youtube.com/watch?v=x4sWD5qiZT4'</span><span class="pun">;</span></pre>

<p>
	GET-параметр <strong>v</strong> - это идентификатор нашего видео. Его из общей ссылки необходимо как-то вычленить. Да, можно было бы сделать всё вручную и в <strong>$link</strong> вставлять уже вырезанный <strong>ID</strong>, но всё же лениться не будем и сделаем небольшой задел на будущее (например, для реализации какого-то интерфейса или интеграции скрипта в бота):
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="pln">parse_str</span><span class="pun">(</span><span class="pln"> parse_url</span><span class="pun">(</span><span class="pln"> $link</span><span class="pun">,</span><span class="pln"> PHP_URL_QUERY </span><span class="pun">),</span><span class="pln"> $params </span><span class="pun">);</span><span class="pln">
$video_id </span><span class="pun">=</span><span class="pln"> $params</span><span class="pun">[</span><span class="str">'v'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">??</span><span class="pln"> </span><span class="kwd">exit</span><span class="pun">;</span></pre>

<p>
	Далее формируем POST-запрос к конечной точке <strong>youtubei/v1/player</strong>:
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="pln">$arr </span><span class="pun">=</span><span class="pln"> </span><span class="pun">[</span><span class="pln">
    </span><span class="str">'context'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="pun">[</span><span class="pln">
        </span><span class="str">'client'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="pun">[</span><span class="pln">
            </span><span class="str">'hl'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="str">'en'</span><span class="pun">,</span><span class="pln">
            </span><span class="str">'clientName'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="str">'WEB'</span><span class="pun">,</span><span class="pln">
            </span><span class="str">'clientVersion'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="str">'2.20210721.00.00'</span><span class="pun">,</span><span class="pln">
            </span><span class="str">'mainAppWebInfo'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="pun">[</span><span class="pln">
                </span><span class="str">'graftUrl'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="str">'/watch?v='</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> $video_id
            </span><span class="pun">]</span><span class="pln">
        </span><span class="pun">]</span><span class="pln">
    </span><span class="pun">],</span><span class="pln">
    </span><span class="str">'videoId'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> $video_id
</span><span class="pun">];</span><span class="pln">


$curl </span><span class="pun">=</span><span class="pln"> curl_init</span><span class="pun">();</span><span class="pln">

curl_setopt</span><span class="pun">(</span><span class="pln"> $curl</span><span class="pun">,</span><span class="pln"> CURLOPT_URL</span><span class="pun">,</span><span class="pln"> </span><span class="str">'https://www.youtube.com/youtubei/v1/player?key=AIzaSyAO_FJ2SlqU8Q4STEHLGCilw_Y9_11qcW8'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
curl_setopt</span><span class="pun">(</span><span class="pln"> $curl</span><span class="pun">,</span><span class="pln"> CURLOPT_HTTPHEADER</span><span class="pun">,</span><span class="pln"> </span><span class="pun">[</span><span class="pln"> </span><span class="str">'Content-Type:application/json'</span><span class="pln"> </span><span class="pun">]</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
curl_setopt</span><span class="pun">(</span><span class="pln"> $curl</span><span class="pun">,</span><span class="pln"> CURLOPT_RETURNTRANSFER</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">true</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
curl_setopt</span><span class="pun">(</span><span class="pln"> $curl</span><span class="pun">,</span><span class="pln"> CURLOPT_POST</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">true</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
curl_setopt</span><span class="pun">(</span><span class="pln"> $curl</span><span class="pun">,</span><span class="pln"> CURLOPT_POSTFIELDS</span><span class="pun">,</span><span class="pln"> json_encode</span><span class="pun">(</span><span class="pln"> $arr </span><span class="pun">)</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
curl_setopt</span><span class="pun">(</span><span class="pln"> $curl</span><span class="pun">,</span><span class="pln"> CURLOPT_ENCODING</span><span class="pun">,</span><span class="pln"> </span><span class="str">'gzip, deflate'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">

$result </span><span class="pun">=</span><span class="pln"> json_decode</span><span class="pun">(</span><span class="pln"> curl_exec</span><span class="pun">(</span><span class="pln"> $curl </span><span class="pun">),</span><span class="pln"> JSON_UNESCAPED_UNICODE </span><span class="pun">|</span><span class="pln"> JSON_PRETTY_PRINT </span><span class="pun">|</span><span class="pln"> JSON_UNESCAPED_SLASHES </span><span class="pun">);</span><span class="pln">
curl_close</span><span class="pun">(</span><span class="pln"> $curl </span><span class="pun">);</span></pre>

<p>
	На данный момент в переменной <strong>$result</strong> хранится огромной массив полученных данных, некоторые из которых нам придётся вытащить и использовать для дальнейшей работы:
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="pln">$video_details </span><span class="pun">=</span><span class="pln"> $result</span><span class="pun">[</span><span class="str">'videoDetails'</span><span class="pun">];</span><span class="pln">
$streaming_data </span><span class="pun">=</span><span class="pln"> $result</span><span class="pun">[</span><span class="str">'streamingData'</span><span class="pun">];</span><span class="pln">
$formats </span><span class="pun">=</span><span class="pln"> $streaming_data</span><span class="pun">[</span><span class="str">'formats'</span><span class="pun">];</span><span class="pln">
$video_name </span><span class="pun">=</span><span class="pln"> $video_details</span><span class="pun">[</span><span class="str">'title'</span><span class="pun">];</span><span class="pln">

$video </span><span class="pun">=</span><span class="pln"> </span><span class="pun">[];</span><span class="pln">

</span><span class="kwd">foreach</span><span class="pln"> </span><span class="pun">(</span><span class="pln"> $formats </span><span class="kwd">as</span><span class="pln"> $key </span><span class="pun">)</span><span class="pln">
</span><span class="pun">{</span><span class="pln">
    $data </span><span class="pun">=</span><span class="pln"> $key</span><span class="pun">;</span><span class="pln">

    $mime_type </span><span class="pun">=</span><span class="pln"> explode</span><span class="pun">(</span><span class="pln"> </span><span class="str">';'</span><span class="pun">,</span><span class="pln"> $data</span><span class="pun">[</span><span class="str">'mimeType'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
    $data</span><span class="pun">[</span><span class="str">'mime'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> $mime_type</span><span class="pun">[</span><span class="lit">0</span><span class="pun">];</span><span class="pln">
    $data</span><span class="pun">[</span><span class="str">'format'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> ltrim</span><span class="pun">(</span><span class="pln"> substr</span><span class="pun">(</span><span class="pln"> $mime_type</span><span class="pun">[</span><span class="lit">0</span><span class="pun">],</span><span class="pln"> stripos</span><span class="pun">(</span><span class="pln"> $mime_type</span><span class="pun">[</span><span class="lit">0</span><span class="pun">],</span><span class="pln"> </span><span class="str">'/'</span><span class="pln"> </span><span class="pun">)</span><span class="pln"> </span><span class="pun">),</span><span class="pln"> </span><span class="str">'/'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">

    $video</span><span class="pun">[]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> $data</span><span class="pun">;</span><span class="pln">
</span><span class="pun">}</span><span class="pln">

$video_file_name </span><span class="pun">=</span><span class="pln"> strtolower</span><span class="pun">(</span><span class="pln"> str_replace</span><span class="pun">(</span><span class="pln"> </span><span class="str">' '</span><span class="pun">,</span><span class="pln"> </span><span class="str">'_'</span><span class="pun">,</span><span class="pln"> $video_name </span><span class="pun">)</span><span class="pln"> </span><span class="pun">)</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> </span><span class="str">'.'</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> $video</span><span class="pun">[</span><span class="lit">0</span><span class="pun">][</span><span class="str">'format'</span><span class="pun">];</span><span class="pln">
$download_url </span><span class="pun">=</span><span class="pln"> $video</span><span class="pun">[</span><span class="lit">0</span><span class="pun">][</span><span class="str">'url'</span><span class="pun">];</span><span class="pln">
$file_name </span><span class="pun">=</span><span class="pln"> preg_replace</span><span class="pun">(</span><span class="pln"> </span><span class="str">'/[^A-Za-z0-9.\_\-]/'</span><span class="pun">,</span><span class="pln"> </span><span class="str">''</span><span class="pun">,</span><span class="pln"> basename</span><span class="pun">(</span><span class="pln"> $video_file_name </span><span class="pun">)</span><span class="pln"> </span><span class="pun">);</span></pre>

<p>
	Дальше проверяем переменную <strong>$download</strong> на пустоту:
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln"> $download_url </span><span class="pun">)</span><span class="pln">
</span><span class="pun">{</span><span class="pln">
    header</span><span class="pun">(</span><span class="pln"> </span><span class="str">'Cache-Control: public'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
    header</span><span class="pun">(</span><span class="pln"> </span><span class="str">'Content-Description: File Transfer'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
    header</span><span class="pun">(</span><span class="pln"> </span><span class="str">'Content-Disposition: attachment; filename='</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> $file_name </span><span class="pun">);</span><span class="pln">
    header</span><span class="pun">(</span><span class="pln"> </span><span class="str">'Content-Type: application/zip'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
    header</span><span class="pun">(</span><span class="pln"> </span><span class="str">'Content-Transfer-Encoding: binary'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">

    readfile</span><span class="pun">(</span><span class="pln"> $download_url </span><span class="pun">);</span><span class="pln">
</span><span class="pun">}</span></pre>

<p>
	Если всё окей - начнётся загрузка видео. В этот раз я не стал делать интерфейс, поэтому для тестирования достаточно открыть файл со скриптом в браузере.
</p>

<p>
	Весь код:
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="pun">&lt;?</span><span class="pln">php

$link </span><span class="pun">=</span><span class="pln"> </span><span class="str">'https://www.youtube.com/watch?v=y2YUJ186Ke4'</span><span class="pun">;</span><span class="pln">

parse_str</span><span class="pun">(</span><span class="pln"> parse_url</span><span class="pun">(</span><span class="pln"> $link</span><span class="pun">,</span><span class="pln"> PHP_URL_QUERY </span><span class="pun">),</span><span class="pln"> $params </span><span class="pun">);</span><span class="pln">
$video_id </span><span class="pun">=</span><span class="pln"> $params</span><span class="pun">[</span><span class="str">'v'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">??</span><span class="pln"> </span><span class="kwd">exit</span><span class="pun">;</span><span class="pln">

$arr </span><span class="pun">=</span><span class="pln"> </span><span class="pun">[</span><span class="pln">
    </span><span class="str">'context'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="pun">[</span><span class="pln">
        </span><span class="str">'client'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="pun">[</span><span class="pln">
            </span><span class="str">'hl'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="str">'en'</span><span class="pun">,</span><span class="pln">
            </span><span class="str">'clientName'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="str">'WEB'</span><span class="pun">,</span><span class="pln">
            </span><span class="str">'clientVersion'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="str">'2.20210721.00.00'</span><span class="pun">,</span><span class="pln">
            </span><span class="str">'mainAppWebInfo'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="pun">[</span><span class="pln">
                </span><span class="str">'graftUrl'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> </span><span class="str">'/watch?v='</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> $video_id
            </span><span class="pun">]</span><span class="pln">
        </span><span class="pun">]</span><span class="pln">
    </span><span class="pun">],</span><span class="pln">
    </span><span class="str">'videoId'</span><span class="pln"> </span><span class="pun">=&gt;</span><span class="pln"> $video_id
</span><span class="pun">];</span><span class="pln">


$curl </span><span class="pun">=</span><span class="pln"> curl_init</span><span class="pun">();</span><span class="pln">

curl_setopt</span><span class="pun">(</span><span class="pln"> $curl</span><span class="pun">,</span><span class="pln"> CURLOPT_URL</span><span class="pun">,</span><span class="pln"> </span><span class="str">'https://www.youtube.com/youtubei/v1/player?key=AIzaSyAO_FJ2SlqU8Q4STEHLGCilw_Y9_11qcW8'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
curl_setopt</span><span class="pun">(</span><span class="pln"> $curl</span><span class="pun">,</span><span class="pln"> CURLOPT_HTTPHEADER</span><span class="pun">,</span><span class="pln"> </span><span class="pun">[</span><span class="pln"> </span><span class="str">'Content-Type:application/json'</span><span class="pln"> </span><span class="pun">]</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
curl_setopt</span><span class="pun">(</span><span class="pln"> $curl</span><span class="pun">,</span><span class="pln"> CURLOPT_RETURNTRANSFER</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">true</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
curl_setopt</span><span class="pun">(</span><span class="pln"> $curl</span><span class="pun">,</span><span class="pln"> CURLOPT_POST</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">true</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
curl_setopt</span><span class="pun">(</span><span class="pln"> $curl</span><span class="pun">,</span><span class="pln"> CURLOPT_POSTFIELDS</span><span class="pun">,</span><span class="pln"> json_encode</span><span class="pun">(</span><span class="pln"> $arr </span><span class="pun">)</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
curl_setopt</span><span class="pun">(</span><span class="pln"> $curl</span><span class="pun">,</span><span class="pln"> CURLOPT_ENCODING</span><span class="pun">,</span><span class="pln"> </span><span class="str">'gzip, deflate'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">

$result </span><span class="pun">=</span><span class="pln"> json_decode</span><span class="pun">(</span><span class="pln"> curl_exec</span><span class="pun">(</span><span class="pln"> $curl </span><span class="pun">),</span><span class="pln"> JSON_UNESCAPED_UNICODE </span><span class="pun">|</span><span class="pln"> JSON_PRETTY_PRINT </span><span class="pun">|</span><span class="pln"> JSON_UNESCAPED_SLASHES </span><span class="pun">);</span><span class="pln">
curl_close</span><span class="pun">(</span><span class="pln"> $curl </span><span class="pun">);</span><span class="pln">


$video_details </span><span class="pun">=</span><span class="pln"> $result</span><span class="pun">[</span><span class="str">'videoDetails'</span><span class="pun">];</span><span class="pln">
$streaming_data </span><span class="pun">=</span><span class="pln"> $result</span><span class="pun">[</span><span class="str">'streamingData'</span><span class="pun">];</span><span class="pln">
$formats </span><span class="pun">=</span><span class="pln"> $streaming_data</span><span class="pun">[</span><span class="str">'formats'</span><span class="pun">];</span><span class="pln">
$video_name </span><span class="pun">=</span><span class="pln"> $video_details</span><span class="pun">[</span><span class="str">'title'</span><span class="pun">];</span><span class="pln">

$video </span><span class="pun">=</span><span class="pln"> </span><span class="pun">[];</span><span class="pln">

</span><span class="kwd">foreach</span><span class="pln"> </span><span class="pun">(</span><span class="pln"> $formats </span><span class="kwd">as</span><span class="pln"> $key </span><span class="pun">)</span><span class="pln">
</span><span class="pun">{</span><span class="pln">
    $data </span><span class="pun">=</span><span class="pln"> $key</span><span class="pun">;</span><span class="pln">

    $mime_type </span><span class="pun">=</span><span class="pln"> explode</span><span class="pun">(</span><span class="pln"> </span><span class="str">';'</span><span class="pun">,</span><span class="pln"> $data</span><span class="pun">[</span><span class="str">'mimeType'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
    $data</span><span class="pun">[</span><span class="str">'mime'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> $mime_type</span><span class="pun">[</span><span class="lit">0</span><span class="pun">];</span><span class="pln">
    $data</span><span class="pun">[</span><span class="str">'format'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> ltrim</span><span class="pun">(</span><span class="pln"> substr</span><span class="pun">(</span><span class="pln"> $mime_type</span><span class="pun">[</span><span class="lit">0</span><span class="pun">],</span><span class="pln"> stripos</span><span class="pun">(</span><span class="pln"> $mime_type</span><span class="pun">[</span><span class="lit">0</span><span class="pun">],</span><span class="pln"> </span><span class="str">'/'</span><span class="pln"> </span><span class="pun">)</span><span class="pln"> </span><span class="pun">),</span><span class="pln"> </span><span class="str">'/'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">

    $video</span><span class="pun">[]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> $data</span><span class="pun">;</span><span class="pln">
</span><span class="pun">}</span><span class="pln">

$video_file_name </span><span class="pun">=</span><span class="pln"> strtolower</span><span class="pun">(</span><span class="pln"> str_replace</span><span class="pun">(</span><span class="pln"> </span><span class="str">' '</span><span class="pun">,</span><span class="pln"> </span><span class="str">'_'</span><span class="pun">,</span><span class="pln"> $video_name </span><span class="pun">)</span><span class="pln"> </span><span class="pun">)</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> </span><span class="str">'.'</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> $video</span><span class="pun">[</span><span class="lit">0</span><span class="pun">][</span><span class="str">'format'</span><span class="pun">];</span><span class="pln">
$download_url </span><span class="pun">=</span><span class="pln"> $video</span><span class="pun">[</span><span class="lit">0</span><span class="pun">][</span><span class="str">'url'</span><span class="pun">];</span><span class="pln">
$file_name </span><span class="pun">=</span><span class="pln"> preg_replace</span><span class="pun">(</span><span class="pln"> </span><span class="str">'/[^A-Za-z0-9.\_\-]/'</span><span class="pun">,</span><span class="pln"> </span><span class="str">''</span><span class="pun">,</span><span class="pln"> basename</span><span class="pun">(</span><span class="pln"> $video_file_name </span><span class="pun">)</span><span class="pln"> </span><span class="pun">);</span><span class="pln">


</span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(</span><span class="pln"> $download_url </span><span class="pun">)</span><span class="pln">
</span><span class="pun">{</span><span class="pln">
    header</span><span class="pun">(</span><span class="pln"> </span><span class="str">'Cache-Control: public'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
    header</span><span class="pun">(</span><span class="pln"> </span><span class="str">'Content-Description: File Transfer'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
    header</span><span class="pun">(</span><span class="pln"> </span><span class="str">'Content-Disposition: attachment; filename='</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> $file_name </span><span class="pun">);</span><span class="pln">
    header</span><span class="pun">(</span><span class="pln"> </span><span class="str">'Content-Type: application/zip'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
    header</span><span class="pun">(</span><span class="pln"> </span><span class="str">'Content-Transfer-Encoding: binary'</span><span class="pln"> </span><span class="pun">);</span><span class="pln">

    readfile</span><span class="pun">(</span><span class="pln"> $download_url </span><span class="pun">);</span><span class="pln">
</span><span class="pun">}</span></pre>

<p>
	 
</p>
]]></description><guid isPermaLink="false">300</guid><pubDate>Tue, 19 Mar 2024 22:29:51 +0000</pubDate></item><item><title>&#x41A;&#x430;&#x43A; &#x441;&#x43E;&#x437;&#x434;&#x430;&#x442;&#x44C; Whois &#x441;&#x435;&#x440;&#x432;&#x438;&#x441;?</title><link>https://forum.aprelteam.by/mur/kak-sozdat-whois-servis/?id=299</link><description><![CDATA[<p>
	WHOIS (произносится как «Кто есть») — это протокол запросов и ответов, который обычно используется для поиска деталей интернет-ресурсов, таких как доменное имя, блок IP-адресов или автономная система, а также другой важной информации. База данных сервера протокола WHOIS хранит и возвращает информацию в удобочитаемом формате. Информация о текущем регистраторе домена, информации о регистранте, дате истечения срока действия и т. д.
</p>

<p>
	Поскольку в этом руководстве мы рассмотрим живой пример создания сценария поиска домена WHOIS с помощью PHP, основные файлы для этого примера приведены ниже.
</p>

<ul>
	<li>
		index.php
	</li>
	<li>
		functions.php
	</li>
</ul>

<p>
	<br />
	<span style="font-size:20px;">Шаг 1. Разработка HTML-формы поиска Whois</span>
</p>

<p>
	Сначала мы создадим файл index.php и разработаем HTML-форму с полем для ввода доменного имени и кнопкой поиска, чтобы получить информацию WHOIS домена при отправке формы.
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"container"</span><span class="tag">&gt;</span><span class="pln">    
    </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"text-info"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="pun">&lt;?</span><span class="pln">php </span><span class="kwd">if</span><span class="pun">(</span><span class="pln">$message</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="pun">?&gt;</span><span class="pln">
        </span><span class="tag">&lt;span</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"text-danger"</span><span class="tag">&gt;&lt;strong&gt;</span><span class="pun">&lt;?</span><span class="pln">php echo $message</span><span class="pun">;</span><span class="pln"> </span><span class="pun">?&gt;</span><span class="tag">&lt;/strong&gt;&lt;/span&gt;</span><span class="pln">
    </span><span class="pun">&lt;?</span><span class="pln">php </span><span class="pun">}</span><span class="pln"> </span><span class="pun">?&gt;</span><span class="pln">    
    </span><span class="tag">&lt;/label&gt;</span><span class="pln">                    
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"row"</span><span class="tag">&gt;</span><span class="pln">                    
        &lt;form name="form" class="form" 
action="</span><span class="pun">&lt;?</span><span class="pln">php echo $_SERVER</span><span class="pun">[</span><span class="str">'PHP_SELF'</span><span class="pun">];</span><span class="pln"> </span><span class="pun">?&gt;</span><span class="pln">" method="post"&gt;                    
            </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"col-md-6"</span><span class="tag">&gt;</span><span class="pln">                
                </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"form-group"</span><span class="tag">&gt;</span><span class="pln">                            
                    &lt;input type="text" 
name="domain"
 id="domain" class="form-control" value="</span><span class="pun">&lt;?</span><span class="pln">php echo $domain</span><span class="pun">;</span><span class="pln"> </span><span class="pun">?&gt;</span><span class="pln">"
 placeholder="Enter domain name"&gt;
                </span><span class="tag">&lt;/div&gt;</span><span class="pln">    
            </span><span class="tag">&lt;/div&gt;</span><span class="pln">
            </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"col-md-4"</span><span class="tag">&gt;</span><span class="pln">                                
                </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"form-group"</span><span class="tag">&gt;</span><span class="pln">                    
                    </span><span class="tag">&lt;button</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"submit"</span><span class="pln"> 
</span><span class="atn">class</span><span class="pun">=</span><span class="atv">"btn btn-info btn-md"</span><span class="tag">&gt;&lt;i</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"fa fa-search"</span><span class="tag">&gt;&lt;/i&gt;</span><span class="pln"> WHOIS</span><span class="tag">&lt;/button&gt;</span><span class="pln">                    
                </span><span class="tag">&lt;/div&gt;</span><span class="pln">    
            </span><span class="tag">&lt;/div&gt;</span><span class="pln">                    
        </span><span class="tag">&lt;/form&gt;</span><span class="pln">                
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">    
</span><span class="tag">&lt;/div&gt;</span></pre>

<p>
	<span style="font-size:20px;">Шаг 2. Отображение информации WHOIS домена.</span>
</p>

<p>
	После ввода доменного имени и отправки формы мы получим доменное имя без http или www и перейдем к функции validateDomain() для проверки действительного доменного имени. Затем мы вызовем функцию LookUpDomain() , чтобы получить информацию WHOIS домена, и сохраним ее в переменной $result для ее отображения.
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="kwd">if</span><span class="pun">(</span><span class="pln">isset</span><span class="pun">(</span><span class="pln">$_POST</span><span class="pun">[</span><span class="str">'domain'</span><span class="pun">])){</span><span class="pln"> 
    $domain </span><span class="pun">=</span><span class="pln"> $_POST</span><span class="pun">[</span><span class="str">'domain'</span><span class="pun">];</span><span class="pln">    
    $domain </span><span class="pun">=</span><span class="pln"> trim</span><span class="pun">(</span><span class="pln">$domain</span><span class="pun">);</span><span class="pln">
    </span><span class="kwd">if</span><span class="pun">(</span><span class="pln">substr</span><span class="pun">(</span><span class="pln">strtolower</span><span class="pun">(</span><span class="pln">$domain</span><span class="pun">),</span><span class="pln"> </span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="lit">7</span><span class="pun">)</span><span class="pln"> </span><span class="pun">==</span><span class="pln"> </span><span class="str">"http://"</span><span class="pun">)</span><span class="pln"> $domain </span><span class="pun">=</span><span class="pln"> substr</span><span class="pun">(</span><span class="pln">$domain</span><span class="pun">,</span><span class="pln"> </span><span class="lit">7</span><span class="pun">);</span><span class="pln">
    </span><span class="kwd">if</span><span class="pun">(</span><span class="pln">substr</span><span class="pun">(</span><span class="pln">strtolower</span><span class="pun">(</span><span class="pln">$domain</span><span class="pun">),</span><span class="pln"> </span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="lit">8</span><span class="pun">)</span><span class="pln"> </span><span class="pun">==</span><span class="pln"> </span><span class="str">"https://"</span><span class="pun">)</span><span class="pln"> $domain </span><span class="pun">=</span><span class="pln"> substr</span><span class="pun">(</span><span class="pln">$domain</span><span class="pun">,</span><span class="pln"> </span><span class="lit">8</span><span class="pun">);</span><span class="pln">
    </span><span class="kwd">if</span><span class="pun">(</span><span class="pln">substr</span><span class="pun">(</span><span class="pln">strtolower</span><span class="pun">(</span><span class="pln">$domain</span><span class="pun">),</span><span class="pln"> </span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="lit">4</span><span class="pun">)</span><span class="pln"> </span><span class="pun">==</span><span class="pln"> </span><span class="str">"www."</span><span class="pun">)</span><span class="pln"> $domain </span><span class="pun">=</span><span class="pln"> substr</span><span class="pun">(</span><span class="pln">$domain</span><span class="pun">,</span><span class="pln"> </span><span class="lit">4</span><span class="pun">);</span><span class="pln">
    </span><span class="kwd">if</span><span class="pun">(</span><span class="pln">validateDomain</span><span class="pun">(</span><span class="pln">$domain</span><span class="pun">))</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
        $result </span><span class="pun">=</span><span class="pln"> lookUpDomain</span><span class="pun">(</span><span class="pln">$domain</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">else</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
        $message </span><span class="pun">=</span><span class="pln"> </span><span class="str">"Invalid Input!"</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
</span><span class="pun">}</span></pre>

<p>
	Мы будем отображать информацию WHOIS домена, используя переменную результата.
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="pun">&lt;?</span><span class="pln">php
</span><span class="kwd">if</span><span class="pun">(</span><span class="pln">$result</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    echo </span><span class="str">"&lt;pre&gt;\n"</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> $result </span><span class="pun">.</span><span class="pln"> </span><span class="str">"\n&lt;/pre&gt;\n"</span><span class="pun">;</span><span class="pln">
</span><span class="pun">}</span><span class="pln">
</span><span class="pun">?&gt;</span></pre>

<p>
	<span style="font-size:20px;">Шаг 3. Получите информацию WHOIS домена.</span>
</p>

<p>
	Мы создадим функцию LookUpDomain() и проверим наличие сервера WHOIS домена, используя массив $ whoIsServers , в котором хранится имя сервера WHOIS. Если сервер WHOIS домена существует, мы вызываем функцию getWhoisServerDetails() , чтобы отправить запрос серверу WHOIS для получения сведений о домене.
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="kwd">function</span><span class="pln"> lookUpDomain</span><span class="pun">(</span><span class="pln">$domain</span><span class="pun">){</span><span class="pln">
    </span><span class="kwd">global</span><span class="pln"> $whoIsServers</span><span class="pun">;</span><span class="pln">
    $domainParts </span><span class="pun">=</span><span class="pln"> explode</span><span class="pun">(</span><span class="str">"."</span><span class="pun">,</span><span class="pln"> $domain</span><span class="pun">);</span><span class="pln">
    $tld </span><span class="pun">=</span><span class="pln"> strtolower</span><span class="pun">(</span><span class="pln">array_pop</span><span class="pun">(</span><span class="pln">$domainParts</span><span class="pun">));</span><span class="pln">
    $whoIsServer </span><span class="pun">=</span><span class="pln"> $whoIsServers</span><span class="pun">[</span><span class="pln">$tld</span><span class="pun">];</span><span class="pln">
    </span><span class="kwd">if</span><span class="pun">(!</span><span class="pln">$whoIsServer</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
        </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"Error: No appropriate Whois server found for $domain domain!"</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    $whoIsResult </span><span class="pun">=</span><span class="pln"> getWhoisServerDetails</span><span class="pun">(</span><span class="pln">$whoIsServer</span><span class="pun">,</span><span class="pln"> $domain</span><span class="pun">);</span><span class="pln">
    </span><span class="kwd">if</span><span class="pun">(!</span><span class="pln">$whoIsResult</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
        </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"Error: No results retrieved from $whoIsServer server for $domain domain!"</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">else</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
        </span><span class="kwd">while</span><span class="pun">(</span><span class="pln">strpos</span><span class="pun">(</span><span class="pln">$whoIsResult</span><span class="pun">,</span><span class="pln"> </span><span class="str">"Whois Server:"</span><span class="pun">)</span><span class="pln"> </span><span class="pun">!==</span><span class="pln"> FALSE</span><span class="pun">){</span><span class="pln">
            preg_match</span><span class="pun">(</span><span class="str">"/Whois Server: (.*)/"</span><span class="pun">,</span><span class="pln"> $whoIsResult</span><span class="pun">,</span><span class="pln"> $matches</span><span class="pun">);</span><span class="pln">
            $secondary </span><span class="pun">=</span><span class="pln"> $matches</span><span class="pun">[</span><span class="lit">1</span><span class="pun">];</span><span class="pln">
            </span><span class="kwd">if</span><span class="pun">(</span><span class="pln">$secondary</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
                $whoIsResult </span><span class="pun">=</span><span class="pln"> getWhoisServerDetails</span><span class="pun">(</span><span class="pln">$secondary</span><span class="pun">,</span><span class="pln"> $domain</span><span class="pun">);</span><span class="pln">
                $whoIsServer </span><span class="pun">=</span><span class="pln"> $secondary</span><span class="pun">;</span><span class="pln">
            </span><span class="pun">}</span><span class="pln">
        </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="kwd">return</span><span class="pln"> </span><span class="str">"$domain domain lookup results from $whoIsServer server:\n\n"</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> $whoIsResult</span><span class="pun">;</span><span class="pln">
</span><span class="pun">}</span></pre>

<p>
	<span style="font-size:20px;">Шаг 4. Сделайте запрос к WHOIS-серверу домена.</span>
</p>

<p>
	В файле function.php мы создадим функцию getWhoisServerDetails() , чтобы сделать запрос к WHOIS-серверу и получить информацию WHOIS.
</p>

<pre class="ipsCode prettyprint lang-php prettyprinted"><span class="kwd">function</span><span class="pln"> getWhoisServerDetails</span><span class="pun">(</span><span class="pln">$whoIsServer</span><span class="pun">,</span><span class="pln"> $domain</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    $port </span><span class="pun">=</span><span class="pln"> </span><span class="lit">43</span><span class="pun">;</span><span class="pln">
    $timeout </span><span class="pun">=</span><span class="pln"> </span><span class="lit">10</span><span class="pun">;</span><span class="pln">
    $whoIsInfo </span><span class="pun">=</span><span class="pln"> </span><span class="lit">@fsockopen</span><span class="pun">(</span><span class="pln">$whoIsServer</span><span class="pun">,</span><span class="pln"> $port</span><span class="pun">,</span><span class="pln"> $errno</span><span class="pun">,</span><span class="pln"> $errstr</span><span class="pun">,</span><span class="pln"> $timeout</span><span class="pun">)</span><span class="pln"> </span><span class="kwd">or</span><span class="pln"> 
</span><span class="kwd">die</span><span class="pun">(</span><span class="str">"Socket Error "</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> $errno </span><span class="pun">.</span><span class="pln"> </span><span class="str">" - "</span><span class="pln"> </span><span class="pun">.</span><span class="pln"> $errstr</span><span class="pun">);</span><span class="pln">    
    fputs</span><span class="pun">(</span><span class="pln">$whoIsInfo</span><span class="pun">,</span><span class="pln"> $domain </span><span class="pun">.</span><span class="pln"> </span><span class="str">"\r\n"</span><span class="pun">);</span><span class="pln">
    $output </span><span class="pun">=</span><span class="pln"> </span><span class="str">""</span><span class="pun">;</span><span class="pln">
    </span><span class="kwd">while</span><span class="pun">(!</span><span class="pln">feof</span><span class="pun">(</span><span class="pln">$whoIsInfo</span><span class="pun">)){</span><span class="pln">
        $output </span><span class="pun">.=</span><span class="pln"> fgets</span><span class="pun">(</span><span class="pln">$whoIsInfo</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    fclose</span><span class="pun">(</span><span class="pln">$whoIsInfo</span><span class="pun">);</span><span class="pln">
    $whosIsResults </span><span class="pun">=</span><span class="pln"> </span><span class="str">""</span><span class="pun">;</span><span class="pln">
    </span><span class="kwd">if</span><span class="pun">((</span><span class="pln">strpos</span><span class="pun">(</span><span class="pln">strtolower</span><span class="pun">(</span><span class="pln">$output</span><span class="pun">),</span><span class="pln"> </span><span class="str">"error"</span><span class="pun">)</span><span class="pln"> </span><span class="pun">===</span><span class="pln"> FALSE</span><span class="pun">)</span><span class="pln"> 
</span><span class="pun">&amp;&amp;</span><span class="pln"> </span><span class="pun">(</span><span class="pln">strpos</span><span class="pun">(</span><span class="pln">strtolower</span><span class="pun">(</span><span class="pln">$output</span><span class="pun">),</span><span class="pln"> </span><span class="str">"not allocated"</span><span class="pun">)</span><span class="pln"> </span><span class="pun">===</span><span class="pln"> FALSE</span><span class="pun">))</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
        $whoIsRecords </span><span class="pun">=</span><span class="pln"> explode</span><span class="pun">(</span><span class="str">"\n"</span><span class="pun">,</span><span class="pln"> $output</span><span class="pun">);</span><span class="pln">
        </span><span class="kwd">foreach</span><span class="pun">(</span><span class="pln">$whoIsRecords </span><span class="kwd">as</span><span class="pln"> $whoIsRecord</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
            $whoIsRecord </span><span class="pun">=</span><span class="pln"> trim</span><span class="pun">(</span><span class="pln">$whoIsRecord</span><span class="pun">);</span><span class="pln">
            </span><span class="kwd">if</span><span class="pun">((</span><span class="pln">$whoIsRecord </span><span class="pun">!=</span><span class="pln"> </span><span class="str">''</span><span class="pun">)</span><span class="pln"> </span><span class="pun">&amp;&amp;</span><span class="pln"> </span><span class="pun">(</span><span class="pln">$whoIsRecord</span><span class="pun">{</span><span class="lit">0</span><span class="pun">}</span><span class="pln"> </span><span class="pun">!=</span><span class="pln"> </span><span class="str">'#'</span><span class="pun">)</span><span class="pln"> </span><span class="pun">&amp;&amp;</span><span class="pln"> </span><span class="pun">(</span><span class="pln">$whoIsRecord</span><span class="pun">{</span><span class="lit">0</span><span class="pun">}</span><span class="pln"> </span><span class="pun">!=</span><span class="pln"> </span><span class="str">'%'</span><span class="pun">))</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
                $whosIsResults </span><span class="pun">.=</span><span class="pln"> $whoIsRecord</span><span class="pun">.</span><span class="str">"\n"</span><span class="pun">;</span><span class="pln">
            </span><span class="pun">}</span><span class="pln">
        </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="kwd">return</span><span class="pln"> $whosIsResults</span><span class="pun">;</span><span class="pln">
</span><span class="pun">}</span></pre>
]]></description><guid isPermaLink="false">299</guid><pubDate>Tue, 19 Mar 2024 21:57:12 +0000</pubDate></item><item><title>ChatGPT &#x2014; &#x420;&#x435;&#x433;&#x438;&#x441;&#x442;&#x440;&#x430;&#x446;&#x438;&#x44F; &#x438; &#x438;&#x441;&#x43F;&#x43E;&#x43B;&#x44C;&#x437;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x435; &#x432; &#x420;&#x43E;&#x441;&#x441;&#x438;&#x438;</title><link>https://forum.aprelteam.by/mur/chatgpt-registracija-i-ispolzovanie-v-rossii/?id=298</link><description><![CDATA[<p>
	<strong>Краткая инструкция по регистрации на сайте openai.com в России и использованию ChatGPT!</strong><br />
	<br />
	<strong>Шаг 1: Окно в Европу (ОВЕ)</strong>
</p>

<p>
	Включать Окно в Европу придётся при каждом входе на сайт openai, поэтому первым делом устанавливаем его себе. Я использовал первый попавшийся бесплатный браузерный, найти можно как правило в расширениях. Заходить на openai до регистрации без ОВЕ не рекомендую.
</p>

<p>
	<strong>Шаг 2: Начало регистрации</strong>
</p>

<p>
	Переходим на сайт openai.com, жмём кнопку «Try ChatGPT».<br />
	Начинаем регаться. Проще всего это сделать через свой Google-аккаунт. Далее предстоит преодолеть самый геморройный момент.
</p>

<p>
	<strong>Шаг 3: Аренда виртуального номера.</strong>
</p>

<p>
	После подтверждения почты или Google/Microsoft-аккаунта потребуют ввести номер телефона и подтвердить его. Соответственно, понадобится виртуальный номер. Для этого временно выключаем ОВЕ и переходим на сайт sms-activate.org. Регистрируемся, потом кладём на счёт рублей 30-50. Самые дешёвые для аренды номера стоят 12 рублей, но личный горький опыт показал, что код подтверждения на них не приходит. Так что лучше закидывать с маленьким запасом, дабы потом не тратиться повторно на комиссию, и арендовать номер рублей за ~40.
</p>

<p>
	После пополнения баланса уже можно арендовать номер.
</p>

<p>
	<strong>Шаг 4: Подтверждение номера</strong>
</p>

<p>
	После того, как арендовали номер, можно его копировать и вставлять на сайте openai. Ввели - теперь ждём, когда придёт код подтверждения на sms-activate. Если код не приходит - попробуйте отменить аренду номера (благо в течение 20-ти минут сделать это можно бесплатно) и поменять провайдера.
</p>

<p>
	Если код пришёл - ура! Теперь можно пользоваться ChatGPT. Кстати, есть ещё и плагин для VS Code (называется CODEGPT), но опять же, исходя из личного опыта использования, могу сказать, что комфортнее юзать чат на сайте. Там и время ожидания меньше, и в форме диалога легче доносить свои задачи.
</p>

<p>
	Теперь пару слов и личное мнение о самом ChatGPT. Общие задачи и вопросы он понимает и интерпретирует очень точно. Причём не только в сфере программирования, но и в любой другой сфере из мною испробованных. Пробовал скормить ему весьма куцое ТЗ, по которому сам когда-то делал проект, и получил вполне внятный ответ с чёткими инструкциями и даже примерами SQL-запросов:
</p>

<p>
	Что касается конкретных задач - уже чутка послабее. Например, я пробовал получить способ проверки прав доступа к сайту у неавторизованных пользователей при использовании RBAC Yii2. В конечном итоге ИИ зашёл в тупик и по очереди скидывал два неправильных способа решения:
</p>

<p>
	Вердикт: ЧатЖПТ - хороший помощник разработчика для небольших задач, может помочь найти ошибку, подсказать общий способ решения, написать пример кода. Но стоит заметить, что без навыков в выбранном языке программирования добиться чего-то от бота навряд ли получится. Ибо зачастую приходится самостоятельно разжёвывать способ решения, и только после этого он предложит верный код. 
</p>
]]></description><guid isPermaLink="false">298</guid><pubDate>Tue, 19 Mar 2024 17:25:24 +0000</pubDate></item><item><title>&#x41A;&#x430;&#x43A; &#x43F;&#x43E;&#x434;&#x43A;&#x43B;&#x44E;&#x447;&#x438;&#x442;&#x44C; ChatGPT &#x447;&#x435;&#x440;&#x435;&#x437; API?</title><link>https://forum.aprelteam.by/mur/kak-podkljuchit-chatgpt-cherez-api/?id=297</link><description><![CDATA[<ol>
	<li>
		Получите API-ключ OpenAI: Первым шагом является получение API-ключа OpenAI. Для этого вам нужно создать аккаунт на платформе OpenAI и получить доступ к OpenAI API. Следуйте инструкциям на официальном сайте OpenAI, чтобы получить свой API-ключ.
	</li>
	<li>
		Установите необходимые библиотеки: После получения ключа необходимо установить необходимые библиотеки для работы с API. Вы можете использовать библиотеку OpenAI Python, которая предоставляет удобный способ взаимодействия с моделью ChatGPT.
	</li>
	<li>
		Подключитесь к API с использованием ключа: Используйте свой API-ключ, чтобы установить соединение с сервисом OpenAI. Это обеспечит вам доступ к функциям генерации текста модели ChatGPT.
	</li>
	<li>
		Определите параметры для запроса: Определите параметры запроса, такие как количество возвращаемых ответов, максимальную длину текста и начальную фразу или контекст для генерации ответа. Эти параметры помогут вам настроить поведение ChatGPT в соответствии с вашими потребностями.
	</li>
	<li>
		Отправьте запрос модели: Теперь, когда все готово, можно отправить запрос к модели ChatGPT с использованием библиотеки OpenAI Python. Передайте параметры запроса и получите ответ от модели.
	</li>
	<li>
		Обработайте и отобразите результат: Полученный ответ от модели может потребовать дополнительной обработки и форматирования перед отображением пользователю. Вы можете использовать свою собственную логику обработки результатов, чтобы предоставить наилучший опыт для ваших пользователей.
	</li>
</ol>
]]></description><guid isPermaLink="false">297</guid><pubDate>Tue, 19 Mar 2024 17:21:14 +0000</pubDate></item><item><title>&#x414;&#x435;&#x43B;&#x430;&#x435;&#x43C; &#x441;&#x432;&#x43E;&#x435;&#x433;&#x43E; &#x431;&#x43E;&#x442;&#x430; &#x441; &#x421;hatGPT-4 &#x431;&#x435;&#x441;&#x43F;&#x43B;&#x430;&#x442;&#x43D;&#x43E;!</title><link>https://forum.aprelteam.by/mur/delaem-svoego-bota-s-shatgpt-4-besplatno/?id=295</link><description><![CDATA[<p>
	Для начала заходим на <strong><a href="https://coze.com/sign" rel="external nofollow">https://coze.com/sign</a></strong> и создаём там аккаунт через Google.
</p>

<p>
	<strong>Устанавливаем юзернейм:</strong><br>
	<br>
	<img alt="image.png.b750fa7fd3edc7f0eee1903949f7fa48.png" class="ipsImage ipsImage_thumbnailed" data-fileid="170" style="height:auto;" width="588" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.b750fa7fd3edc7f0eee1903949f7fa48.png" loading="lazy" height="352.8"><br>
	<br>
	Нажимаем <strong>Create bot</strong>:<br>
	<br>
	<img alt="image.png.4deaca2cbe233f2dcc8b12d505121013.png" class="ipsImage ipsImage_thumbnailed" data-fileid="157" style="height:auto;" width="294" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.4deaca2cbe233f2dcc8b12d505121013.png" loading="lazy" height="196.98"><br>
	<br>
	Добавляем боту имя и описание, загружаем аватарку:<br>
	<br>
	<img alt="image.png.8c90efd87cef9689c43b04f71f06cf85.png" class="ipsImage ipsImage_thumbnailed" data-fileid="171" style="height:auto;" width="539" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.8c90efd87cef9689c43b04f71f06cf85.png" loading="lazy" height="625.24"><br>
	<br>
	Далее мы попадаем в окно настройки бота:<br>
	<br>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="172" href="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.694dca13fe4969c261043bb4acbb0929.png" rel=""><img alt="image.thumb.png.d7f14394f0f90652175eaa69cc7f81d3.png" class="ipsImage ipsImage_thumbnailed" data-fileid="172" style="height:auto;" width="640" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.thumb.png.d7f14394f0f90652175eaa69cc7f81d3.png" loading="lazy" height="320"></a><br>
	<br>
	По умолчанию у бота уже выбран GPT-4, но для больших возможностей (поиск в интернете, генерация изображений и т.д.) лучше добавить плагины:<br>
	<br>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="160" href="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.3cb6cdc40165994f36b44bc9d2e0e0a7.png" rel=""><img alt="image.thumb.png.5472ffbe7308833fcbec61e068e16220.png" class="ipsImage ipsImage_thumbnailed" data-fileid="160" style="height:auto;" width="640" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.thumb.png.5472ffbe7308833fcbec61e068e16220.png" loading="lazy" height="108.8"></a>
</p>

<p>
	<strong>Для своего бота я добавил:</strong><br>
	1. Google Web Search.<br>
	2. Google Images Search.<br>
	3. GitHub.<br>
	4. X.<br>
	5. DALLE 3 - для генерации изображений.<br>
	6. YouTube.<br>
	7. Wikipedia.<br>
	8. WebPilot - бот сможет получать информацию с сайтов по ссылке.
</p>

<p>
	Слева по желанию можно добавить кастомный промпт боту, рассказать ему, от чьего имени он будет отвечать:<br>
	<br>
	<img alt="image.png.20b0a02fb579bc0f2e379c5eb963a19f.png" class="ipsImage ipsImage_thumbnailed" data-fileid="161" style="height:auto;" width="606" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.20b0a02fb579bc0f2e379c5eb963a19f.png" loading="lazy" height="127.26"><br>
	<br>
	Также можно добавить <strong>Knowledge </strong>- заранее подготовленные ответы на вопросы пользователей, рассказать ему о чём-то малоизвестном. Базу данных знаний можно добавить в виде Word-документа, ссылки на сайт:<br>
	<br>
	<img alt="image.png.0377a8f5bc6c4e4e107cce232fd19afd.png" class="ipsImage ipsImage_thumbnailed" data-fileid="162" style="height:auto;" width="596" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.0377a8f5bc6c4e4e107cce232fd19afd.png" loading="lazy" height="143.04"><br>
	<br>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="163" href="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.9c2336a1b76fe2cb9be533bdb4d320c9.png" rel=""><img alt="image.thumb.png.4f72923baf514e8d37df930514dec814.png" class="ipsImage ipsImage_thumbnailed" data-fileid="163" style="height:auto;" width="640" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.thumb.png.4f72923baf514e8d37df930514dec814.png" loading="lazy" height="537.6"></a><br>
	<br>
	Тут всё целиком на ваших фантазиях. Перейдём наконец к созданию Telegram и Discord ботов. Для этого справа вверху тыкаем <strong>Publish</strong>:<br>
	<br>
	<img alt="image.png.261b017aa28fef6b166b729c668e8d4e.png" class="ipsImage ipsImage_thumbnailed" data-fileid="164" style="height:auto;" width="236" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.261b017aa28fef6b166b729c668e8d4e.png" loading="lazy" height="80.24"><br>
	<br>
	У нужных нам платформ выбираем <strong>Configure</strong>:<br>
	<br>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="165" href="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.be0586a983c8e30a3553010fd5c73016.png" rel=""><img alt="image.thumb.png.8676f98aa2adf342aa864b8a9cdcf0b5.png" class="ipsImage ipsImage_thumbnailed" data-fileid="165" style="height:auto;" width="640" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.thumb.png.8676f98aa2adf342aa864b8a9cdcf0b5.png" loading="lazy" height="153.6"></a><br>
	<br>
	Для Telegram и Discord нужно ввести только токен. Если у вас ошибка "<strong>Please check whether the discord bot intents is correct</strong>" при вводе Discord токена, значит вы не включили эти настройки на странице настроек <strong>Discord бота:</strong><br>
	<br>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="166" href="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.9197b5c7bc69d593ca0ebb683283a177.png" rel=""><img alt="image.thumb.png.5d980b6fe8b4aa8fb41084d3296cad9c.png" class="ipsImage ipsImage_thumbnailed" data-fileid="166" style="height:auto;" width="640" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.thumb.png.5d980b6fe8b4aa8fb41084d3296cad9c.png" loading="lazy" height="249.6"></a><br>
	<br>
	<strong>Ставим галочки у Telegram, Discord, остальные убираем:</strong><br>
	<br>
	<img alt="image.png.494a4a9160c18339de3183997fb52e9b.png" class="ipsImage ipsImage_thumbnailed" data-fileid="167" style="height:auto;" width="421" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.494a4a9160c18339de3183997fb52e9b.png" loading="lazy" height="311.54"><br>
	<br>
	И, наконец, тыкаем справа сверху <strong>Publish</strong>!<br>
	<br>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="168" href="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.d690964cd522b2a048459b889f5c809e.png" rel=""><img alt="image.thumb.png.5f1358bee14167e56d916fb6526ced0a.png" class="ipsImage ipsImage_thumbnailed" data-fileid="168" style="height:auto;" width="640" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.thumb.png.5f1358bee14167e56d916fb6526ced0a.png" loading="lazy" height="268.8"></a><br>
	<br>
	<strong>Здесь мы можем открыть бота на этих платформах!</strong>
</p>

<p>
	Можно также использовать своего GPT-4 онлайн, на странице настроек в разделе Preview, для этого не обязательно добавлять Telegram и Discord.<br>
	<br>
	<strong>Результат работы:</strong><br>
	<a class="ipsAttachLink ipsAttachLink_image" data-fileext="png" data-fileid="169" href="https://forum.aprelteam.by/uploads/monthly_2024_03/image.png.00d44e060b5dd206938f91e377f9ddf0.png" rel=""><img alt="image.thumb.png.c3e413bef78fb5bd03e8ede77257cc41.png" class="ipsImage ipsImage_thumbnailed" data-fileid="169" style="height:auto;" width="416" src="https://forum.aprelteam.by/uploads/monthly_2024_03/image.thumb.png.c3e413bef78fb5bd03e8ede77257cc41.png" loading="lazy" height="636.48"></a>,
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">295</guid><pubDate>Mon, 18 Mar 2024 11:40:59 +0000</pubDate></item></channel></rss>
