<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:atom="http://www.w3.org/2005/Atom">

<channel>

<title>Блог Дмитрия Серженко: заметки с тегом боты</title>
<link>https://serzhenko.ru/tags/boty/</link>
<description>Всю сознательную жизнь работаю в образовании.

В настоящее время — открываю Лицей информационных технологий Приморского района Санкт-Петербурга.
Ранее (в т.ч. по совместительству): зам. директора и  руководитель центра цифрового образования «ИнфинITи» школы № 509, сотрудник СПбЦОКОиИТ и Инспекции Комитета по образованию Санкт-Петербурга, заведующий ЦИО ИМЦ Петродворцового района, сотрудник поддержки ВКонтакте, инженер ЦИО ИМЦ Красносельского района, педагог дополнительного образования УМЦ «ИНФОБ» и лицея № 395, переводчик, индивидуальный предприниматель и проч., проч., проч.…

Disclaimer. Вся информация, опубликованная в этом блоге, отражает персональное мнение частного лица, даже если затрагивает рабочие темы, и не представляет официальную позицию какой-либо организации или органа власти (хотя и может с таковой позицией совпадать… или не совпадать).</description>
<author></author>
<language>ru</language>
<generator>Aegea 11.3 (v4134)</generator>

<itunes:subtitle>Всю сознательную жизнь работаю в образовании.

В настоящее время — открываю Лицей информационных технологий Приморского района Санкт-Петербурга.
Ранее (в т.ч. по совместительству): зам. директора и  руководитель центра цифрового образования «ИнфинITи» школы № 509, сотрудник СПбЦОКОиИТ и Инспекции Комитета по образованию Санкт-Петербурга, заведующий ЦИО ИМЦ Петродворцового района, сотрудник поддержки ВКонтакте, инженер ЦИО ИМЦ Красносельского района, педагог дополнительного образования УМЦ «ИНФОБ» и лицея № 395, переводчик, индивидуальный предприниматель и проч., проч., проч.…

Disclaimer. Вся информация, опубликованная в этом блоге, отражает персональное мнение частного лица, даже если затрагивает рабочие темы, и не представляет официальную позицию какой-либо организации или органа власти (хотя и может с таковой позицией совпадать… или не совпадать).</itunes:subtitle>
<itunes:image href="" />
<itunes:explicit></itunes:explicit>

<item>
<title>Семинар «Цифровая трансформация образования: новые вызовы — новые умения»</title>
<guid isPermaLink="false">28</guid>
<link>https://serzhenko.ru/all/seminar-itns-2021/</link>
<pubDate>Wed, 24 Mar 2021 16:37:00 +0300</pubDate>
<author></author>
<comments>https://serzhenko.ru/all/seminar-itns-2021/</comments>
<description>
&lt;p&gt;24 марта 2021 года в &lt;a href="https://school509.spb.ru"&gt;школе № 509&lt;/a&gt; прошёл &lt;a href="https://itns2021.school509.spb.ru/"&gt;выездной онлайн-семинар «Цифровая трансформация образования: новые вызовы — новые умения»&lt;/a&gt; &lt;a href="https://conf.spbcokoit.ru/"&gt;XII Всероссийской конференции с международным участием «Информационные технологии для Новой школы»&lt;/a&gt;. Конференция проводится ежегодно в рамках &lt;a href="https://eduforum.spb.ru/"&gt;Петербургского международного образовательного форума&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;В рамках семинара представлено 14 видеодокладов суммарной продолжительностью более двух часов. Административная команда и педагогический коллектив ГБОУ № 509 представили новые подходы к развитию методической системы школы, поделились опытом трансформации отдельных сегментов образовательной среды и своими ноу-хау — в части проектирования и реализации новых инструментов, преобразующих образовательную среду в соответствии с формирующимся образом цифровой школы.&lt;/p&gt;
&lt;p&gt;С материалами семинара ознакомились более 150 посетителей из Санкт-Петербурга, Москвы, Ленинградской, Кемеровской, Вологодской, Нижегородской, Омской, Калининградской, Ярославской, Амурской, Кировской, Свердловской областей, республик Карелия, Башкортостан, Татарстан, Пермского края, а также из города Минск республики Беларусь.&lt;/p&gt;
&lt;p&gt;В форме обратной связи посетители семинара отметили «интересное, содержательное знакомство с опытом школы» и высоко оценили актуальность и доступность изложения представленных материалов.&lt;/p&gt;
&lt;p&gt;В нескольких докладах — одном пленарном и нескольких секционных — поучаствовал и я.&lt;/p&gt;
&lt;div class="e2-text-video"&gt;
&lt;iframe src="https://www.youtube.com/embed/Tc9gyrBzaUQ?enablejsapi=1" allow="autoplay" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;div class="e2-text-video"&gt;
&lt;iframe src="https://www.youtube.com/embed/vZtdeKHMTnQ?enablejsapi=1" allow="autoplay" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;div class="e2-text-video"&gt;
&lt;iframe src="https://www.youtube.com/embed/Xz8d0lFPFbs?enablejsapi=1" allow="autoplay" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;div class="e2-text-video"&gt;
&lt;iframe src="https://www.youtube.com/embed/ZUlTFV9EJ4g?enablejsapi=1" allow="autoplay" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;div class="e2-text-video"&gt;
&lt;iframe src="https://www.youtube.com/embed/s1ihVib-aPw?enablejsapi=1" allow="autoplay" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;p&gt;Все видеодоклады конференции постоянно доступны по ссылке: &lt;a href="https://itns2021.school509.spb.ru/"&gt;https://itns2021.school509.spb.ru/&lt;/a&gt;&lt;/p&gt;
</description>
</item>

<item>
<title>Доклад про ботов</title>
<guid isPermaLink="false">26</guid>
<link>https://serzhenko.ru/all/doklad-pro-botov/</link>
<pubDate>Fri, 06 Nov 2020 20:12:33 +0300</pubDate>
<author></author>
<comments>https://serzhenko.ru/all/doklad-pro-botov/</comments>
<description>
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://serzhenko.ru/pictures/banner-SPO-2020.jpg" width="2013" height="819" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;29 октября 2020 года в &lt;a href="https://rcokoit.ru"&gt;Санкт-Петербургском центре оценки качества образования и информационных технологий (СПбЦОКОиИТ&lt;/a&gt;) состоялась &lt;a href="https://umr.rcokoit.ru/pages/events-it-in-education-free-soft-2020.html"&gt;XIII научно-практическая конференция «Проблемы и перспективы внедрения свободного программного обеспечения в образовательных организациях Санкт-Петербурга»&lt;/a&gt;. В этом году — в дистанционном формате.&lt;/p&gt;
&lt;p&gt;Одной из тематик секции «Свободно распространяемые системы управления и обучения» были «чат-боты в образовании».&lt;/p&gt;
&lt;p&gt;Представил в докладе и статье опыт применения чат-ботов ВКонтакте в воспитательно-образовательном процессе в нашей школы на примерах кейсов &lt;a href="https://serzhenko.ru/all/chgk-bot/"&gt;ЧГК-бота&lt;/a&gt; и &lt;a href="https://serzhenko.ru/all/bot-dlya-akcii-pomnim/"&gt;бота акции «Помним»&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Слайды:&lt;/p&gt;
&lt;script async class="speakerdeck-embed" data-id="c033d97aa42c49699f6247a1d5c51440" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"&gt;&lt;/script&gt;
</description>
</item>

<item>
<title>Бот для акции «Помним»</title>
<guid isPermaLink="false">25</guid>
<link>https://serzhenko.ru/all/bot-dlya-akcii-pomnim/</link>
<pubDate>Thu, 07 May 2020 12:51:45 +0300</pubDate>
<author></author>
<comments>https://serzhenko.ru/all/bot-dlya-akcii-pomnim/</comments>
<description>
&lt;p&gt;В преддверии Дня Победы ежегодно и повсеместно проходят акции в формате &lt;a href="https://www.moypolk.ru/" class="nu"&gt;«&lt;u&gt;Бессмертного полка&lt;/u&gt;»&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;В этом году, в связи с известными коронавирусными обстоятельствами, бо́льшая часть акций перешла в онлайн-формат. В частности «Российское движение школьников» &lt;a href="https://vk.com/wall-122623791_193161"&gt;запустило акцию «Помним»&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Участникам акции предлагается:&lt;/p&gt;
&lt;ol start="1"&gt;
&lt;li&gt;Скачать файл с рамкой;&lt;/li&gt;
&lt;li&gt;Наложить слой с рамкой на слой с фото в нужном порядке (да, рамка должна быть на переднем слое, т. к. у неё есть «уголочки», которые должны быть на фотографии, а не под);&lt;/li&gt;
&lt;li&gt;Добавить подписи (желательно — уместным шрифтом);&lt;/li&gt;
&lt;li&gt;Сохранить фото.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Очевидно, что для многих потенциальных участников акции выполнение алгоритма станет не такой уж тривиальной задачей: требуются навыки работы с графическими редакторами или хотя бы онлайн-сервисами аналогичного назначения. Либо &lt;a href="https://vk.com/@rms_spb-kak-sdelat-fotografiu-bessmertnogo-polka"&gt;использования «костылей» вроде PowerPoint’а&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Для того, чтобы повысить потенциальную вовлечённость наших обучающихся и их родителей в акцию, мы решили поэкспериментировать и максимально оптимизировать  процесс подготовки фото в рамке для публикации в школьной онлайн-колонне  «Бессмертного полка».&lt;/p&gt;
&lt;div id="vk_post_-194939024_5"&gt;&lt;/div&gt;&lt;script type="text/javascript" src="https://vk.com/js/api/openapi.js?168"&gt;&lt;/script&gt;
&lt;script type="text/javascript"&gt;
  (function() {
    VK.Widgets.Post("vk_post_-194939024_5", -194939024, 5, 'Y45j8dVxdCE5SxHgfw_WoQ');
  }());
&lt;/script&gt;
&lt;p&gt;Был реализован следующий пользовательский сценарий:&lt;/p&gt;
&lt;ol start="1"&gt;
&lt;li&gt;Бот в сети ВКонтакте принимает в качестве входных данных фотографию, ФИО и (опционально) звание героя.&lt;/li&gt;
&lt;li&gt;Подготавливает изображение, присылает его пользователю.&lt;/li&gt;
&lt;li&gt;Предлагает пользователю выполнить публикацию в сообществе.&lt;/li&gt;
&lt;li&gt;Если пользователь соглашается, фото загружается в альбом сообщества и публикуется на стене с заранее заготовленным набором соответствующих хэштегов. Получившийся пост отправляется пользователю, который может принять решение о лайке, репосте (или каком-либо другом действии в рамках стандартного взаимодействия с соцсетью).&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Важно, что без прямого на то намерения пользователя ничего никуда не публикуется и, пока пользователь не примет такого решения, никакие данные не выходят за пределы диалога «пользователь — бот».&lt;/p&gt;
&lt;p&gt;По сути сейчас нет никакой технической фильтрации ни текстового, ни графического контента, которые подаются на вход боту (кроме, разве что, «загрузите, пожалуйста, вертикальное фото»). Поэтому в целях предупреждения потенциального вандализма была организована команда модераторов, состоящая из педагогов и ребят-активистов, готовых оперативно устранять последствия актов вандализма, если таковые будут иметь место.&lt;/p&gt;
&lt;p&gt;Вот что получилось:&lt;/p&gt;
&lt;!-- VK Widget --&gt;&lt;div id="vk_groups"&gt;&lt;/div&gt;&lt;script type="text/javascript"&gt;
VK.Widgets.Group("vk_groups", {mode: 4, wide: 1, height: "600", width: "auto", no_cover: 1}, 194939024);
&lt;/script&gt;
&lt;p&gt;&lt;hr&gt;&lt;/p&gt;
&lt;p&gt;Дальше — чуть-чуть технических подробностей разработки. Можете смело пропустить два следующих абзаца, если вас пугают слова и аббревиатуры PHP, API, SDK, NoSQL, «токен» или «standalone» :)&lt;/p&gt;
&lt;p&gt;Технически взаимодействие с пользователем осуществляется через &lt;a href="https://vk.com/dev/bots_docs"&gt;чат-бота VK&lt;/a&gt;, серверной частью которого является PHP-приложение, написанное с использованием &lt;a href="https://github.com/VKCOM/vk-php-sdk"&gt;официального SDK VK&lt;/a&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Для генерации изображений используются библиотеки-обёртки над &lt;a href="https://www.php.net/manual/ru/book.image.php"&gt;GD&lt;/a&gt;: &lt;a href="https://github.com/Treinetic/ImageArtist"&gt;ImageArtist&lt;/a&gt; и &lt;a href="https://github.com/stil/gd-text"&gt;gd-text&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Для хранения состояния сессии взаимодействия с пользователем используется NoSQL-хранилище &lt;a href="https://redis.io/"&gt;Redis&lt;/a&gt; и его &lt;a href="https://github.com/nrk/predis"&gt;PHP-клиент Predis&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;В целом архитектура проекта такова, что при желании можно изменить (или расширить) платформы взаимодействия с ботом на другие соцсети и/или мессенджеры, используя их API.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Взаимодействие с пользователем осуществляется от имени специально созданного сообщества, однако в процессе разработки я столкнулся с одним логически неочевидным ограничением (однако прямо оговорённым в документации): токен доступа сообщества не позволяет загружать фотографии в альбомы сообщества и создавать записи на его стене. Это возможно только с ключом доступа пользователя, обладающего правами на такие действия в конкретном сообществе. Из этой ситуации был найден следующий выход: создано техническое standalone-приложение, для которого был получен токен пользователя-администратора сообщества с неограниченным сроком действия.&lt;/p&gt;
</description>
</item>

<item>
<title>ЧГК-бот</title>
<guid isPermaLink="false">23</guid>
<link>https://serzhenko.ru/all/chgk-bot/</link>
<pubDate>Thu, 23 Jan 2020 12:57:02 +0300</pubDate>
<author></author>
<comments>https://serzhenko.ru/all/chgk-bot/</comments>
<description>
&lt;p&gt;С начала 2019 года я тренирую школьную команду по интеллектуальным играм.&lt;/p&gt;
&lt;p&gt;С этого учебного года она разрослась до школьного &lt;a href="https://vk.com/iq509"&gt;Клуба интеллектуальных игр&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Для координации встреч и «онлайн-тренировок» была создана беседа ВКонтакте, где время от времени мы с ребятами практиковались «раскручивать» вопросы из &lt;a href="https://db.chgk.info"&gt;Базы вопросов ЧГК&lt;/a&gt;. Во время каникул возникло острое желание, насколько это возможно, автоматизировать работу по выбору вопроса из базы и «зачёту» верного ответа.&lt;/p&gt;
&lt;p&gt;Так родился бот школьного клуба интеллектуальных игр.&lt;/p&gt;
&lt;p&gt;Методом гугления в ЖЖ-сообществе «Спортивное ЧГК» был обнаружен &lt;a href="https://ru-chgk.livejournal.com/982237.html"&gt;пост&lt;/a&gt;, описывающий XML API базы вопросов. Из этого поста можно было сделать сразу два вывода, один внезапнее другого:&lt;/p&gt;
&lt;ol start="1"&gt;
&lt;li&gt;ЖЖ жив (о_0)&lt;/li&gt;
&lt;li&gt;У Базы API всё же есть.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;В результате дня изучения (вспоминания давно забытого) VK API был набросан proof-of-concept бота, который умеет:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;получать случайный вопрос из базы;&lt;/li&gt;
&lt;li&gt;писать его в чат с примитивной защитой от гугления;&lt;/li&gt;
&lt;li&gt;повторять его;&lt;/li&gt;
&lt;li&gt;выводить ответ на этот вопрос, если игроки сдаются («сливают» вопрос);&lt;/li&gt;
&lt;li&gt;читать ответы из чата;&lt;/li&gt;
&lt;li&gt;засчитывать правильные ответы и то, что похоже на правильные ответы (с точностью до е/ё, кавычек и знаков препинания);&lt;/li&gt;
&lt;li&gt;вести рейтинг игроков.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="e2-text-picture"&gt;
&lt;div class="fotorama" data-width="568" data-ratio="0.81844380403458"&gt;
&lt;img src="https://serzhenko.ru/pictures/2020-01-23_11-18-56.png" width="568" height="694" alt="" /&gt;
&lt;img src="https://serzhenko.ru/pictures/2020-01-23_11-20-01.png" width="410" height="343" alt="" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;В перспективе планирую сделать командный режим игры с ботом и хочу научить бота читать ответы в других падежах, с предлогами и т. п. — т. е. научить анализировать русский текст.&lt;/p&gt;
&lt;p&gt;P.S. Приходите в &lt;a href="https://vk.com/iq509"&gt;Клуб&lt;/a&gt;, попадайте в беседу, испытывайте свой интеллект на прочность! :-)&lt;/p&gt;
</description>
</item>


</channel>
</rss>