Pull to refresh
7
0
Александр @aenikitin

Ведущий инженер

Send message

Стейты, БД и логи — разбираем шаблон диалогового Телеграм бота

Level of difficultyMedium
Reading time16 min
Views8.6K

В предыдущих статьях я рассказала, как быстро создать инфраструктуру для диалогового бота на основе Yandex Serverless Functions и базы данных YDB, а также показала, как реализовать новые команды, добавив код в шаблон. В качестве примера использовался примитивный бот, реализованный в моём репозитории ydb_serverless_telegram_bot.

В обеих статьях я обещала рассказать подробности про структуру шаблона, которая делает создание бота простым и удобным. Наконец, момент настал! В этой статье обсудим реализацию фильтров по пользовательским стейтам для обработки контекста сообщения, корректную работу с базой данных и удобное логирование. Я по-прежнему буду говорить о боте в специфичной инфраструктуре, однако идеи можно легко перенести и на другие реализации.

/start
Total votes 6: ↑4 and ↓2+2
Comments1

Основы Ansible, без которых ваши плейбуки — комок слипшихся макарон

Reading time12 min
Views138K

Я делаю много ревью для чужого кода на Ансибл и много пишу сам. В ходе анализа ошибок (как чужих, так и своих), а так же некоторого количества собеседований, я понял основную ошибку, которую допускают пользователи Ансибла — они лезут в сложное, не освоив базового.


Для исправления этой вселенской несправедливости я решил написать введение в Ансибл для тех, кто его уже знает. Предупреждаю, это не пересказ манов, это лонгрид в котором много букв и нет картинок.


Ожидаемый уровень читателя — уже написано несколько тысяч строк ямла, уже что-то в продакшене, но "как-то всё криво".

Читать дальше →
Total votes 88: ↑86 and ↓2+108
Comments67

Hello, Bot! Чат-боты – следующее поколение приложений?

Reading time6 min
Views71K
Недавно прошла конференция //BUILD, на которой Майкрософт традиционно представляет новые технологии для разработчиков. В ключевом докладе первого дня была высказана одна очень важная мысль – по мере того, как общение с компьютерами становится всё более естественным, возрастает роль диалогового общения на естественном языке. Речь здесь не только о том, что мы сможем просить голосовой помощник Cortana просить поставить нам будильник, но и что множество других задач (заказать пиццу, забронировать гостиницу, купить билеты и т.д.) может быть решено с помощью диалога. Более того, это может быть не только диалог между пользователем и компьютером: в более сложном случае человек может попросить Cortana спланировать путешествие, и затем Cortana будет сама общаться с другими ботами, совершая заказ гостиницы и билетов.



Здесь интересно то, что само “общение” может происходить а различных местах: на десктопе с помощью клиента Cortana, но также и в других традиционно используемых для чата каналах: в Skype, Telegram, Slack и т.д. Личность и память нашего персонального ассистента не зависит от канала общения, а располагается где-то в облаке, готовая пообщаться с нами на любом из так называемых “conversational canvases”.

Для создания ботов была представлена предварительная версия Microsoft Bot Framework и соответствующие API, о которых мы поговорим ниже. Мы также покажем, как можно создать своего простейшего бота, поддерживающего беседу с пользователем на английском языке.
Читать дальше →
Total votes 36: ↑31 and ↓5+26
Comments53

Различия Azure Resource Manager и Azure Service Manager — взгляд разработчика

Reading time7 min
Views5K
Выражаем благодарность за подготовку статьи Михаилу Тряхову (@PerseptronYar) из компании Akvelon (Ярославль) за помощь в написании данной статьи. Михаил работает в команде разработчиков Microsoft Azure CLI (Command Line Interface) со специализацией на Networking Services.

Всем привет!

C 2008 года те из нас, кто работал с Azure, возможно, сами того не зная, использовали так называемый режим ASM (Azure Service Manager), который теперь называется классическим. Платформа Azure меж тем росла, развивалась, породила множество полезных сервисов, поддержку новых платформ и много еще чего хорошего. С ростом поддерживаемых и все более усложняющихся архитектур компонентов назрел целый ряд изменений, который решено было вынести в отдельный комплекс — ARM (Azure Resource Manager). В данной статье я поделюсь некоторыми моментами, с которыми сталкиваешься, осваивая данную платформу. Но сначала вспомним, что же такого серьезно нового оно нам несет.



Читать дальше →
Total votes 16: ↑15 and ↓1+14
Comments0

TOP (10) бесплатных плагинов для SSMS

Reading time3 min
Views51K


До того, как начать работать с SQL Server я толком то и баз данных в лицо не видел… Помню, что мне установили SQL Server Management Studio 2005 и дали задание активно «крутить педали». По прошествии пары недель, как бы так сказать, моя производительность по написанию запросов была явно в районе плинтуса…

Более опытный коллега с недоумением на меня посмотрел и посоветовал поставить пару плагинов для SSMS… после этого работать стало явно веселее.

В данном посте я хочу поделиться моим топ списком бесплатных плагинов для SSMS, которыми чаще всего пользовался.
Подробнее
Total votes 24: ↑20 and ↓4+16
Comments12

Полезные сниппеты для Nginx конфигов

Reading time5 min
Views121K


Доброго времени суток, уважаемые хабравчане! В Elasticweb мы негласно ратуем за Nginx и, наверное, мы одни из немногих хостингов, которые не поддерживают Apache и .htaccess соответственно. В связи с этим, большое количество обращений в тех. поддержку связано с оказанием помощи в написании конфигурационного файла для Nginx. Поэтому мы решили собрать коллекцию полезных сниппетов и коллекцию готовых Nging конфигов для наиболее популярных CMS/CMF/Фреймворков на PHP.

Читать дальше →
Total votes 94: ↑91 and ↓3+88
Comments44

Чистим домашний интернет от очень назойливой рекламы (Ad's blocker для OpenWRT)

Reading time2 min
Views121K


Дело было вечером, делать было нечего... © С. В. Михалков
Навеяно публикацией «Как я bind`ом вирусы искал…», а конкретно этой веткой комментариев. Надеюсь, не поздно размещаю.

Сидел я и думал, телевизор Samsung, WinPhone, (а впоследствии может кофеварка и пылесос) показывают суперназойливую рекламу, надо с этим чтото делать, и раз в WinPhone и телевизор(кофеварку, пылесос) плагина AdBlock нету, то он должен быть там где ходит их трафик, на роутере.
Читать дальше →
Total votes 42: ↑41 and ↓1+40
Comments49

Безымянная книга

Reading time5 min
Views16K
Привет, Хабр!
Скоро в типографию отправится очень интересная (и весьма неформальная) книга, которую написал Игорь Савчук, а мы все никак не можем выбрать название. Похоже, мы зашли в тупик и без вашей помощи не обойтись…
Читать дальше →
Total votes 17: ↑12 and ↓5+7
Comments41

Настройка службы IPAM шаг за шагом

Reading time7 min
Views59K
Неотъемлемой частью администрирования сетью является управление IP адресами. До выхода Windows Server 2012 системным администраторам для комплексного управления всем пространством IP адресов, а также службами DNS и DHCP, приходилось использовать таблицы, различные сторонние инструменты, писать пользовательские скрипты. С выходом Windows Server 2012 ситуация изменилась – появился IPAM (IP Address Management). Тому, что из себя представляет IPAM, а также о том, как настроить эту службу в вашей сети и будет эта статья.


Читать дальше →
Total votes 23: ↑22 and ↓1+21
Comments6

Мониторинг серверов теперь стал проще с WinLogViewer.com

Reading time4 min
Views11K
image

Привет Хабр! Несколько лет назад мы столкнулись с проблемой знакомой пожалуй большинству компаний ведущих бизнес в интернете — как эффективно мониторить сервера и максимально исключить неожиданные выходы их из строя?

Сервера под управлением Windows Server имеют очень эффективный источник информации о работе системы, журналы событий (Window Event Logs). Там можно найти практически все, отчеты о проблемах чтения/записи жестких дисков до попыток подбора паролей через внешние сервисы. Однако интерфейс журналов событий не предоставляет удобные возможности подключения к ним удаленно. Большинству системных администраторов приходится заходить на каждый сервер по отдельности и рыться в тысячах событий которые генерируются системой каждые несколько часов.

Программные решения которые немного облегчают труд системного администратора и собирают все необходимые данные на одном экране весьма дороги. К примеру набор инструментов для мониторинга логов от Solarwinds.com стоит от 2500$.

Пару лет назад мы разработали для нашего внутреннего пользования небольшой сервис который собирал данные их журналов событий и посылал все в единую базу данных. Оттуда все это выводилось на административную страничку и обзор того что произошло с момента последней проверки стал занимать всего несколько минут в день.
Быстро обнаружилось что сервис надо доработать, добавить фильтры чтобы скрыть события которые не являются важными и создать сервис оповещений чтобы иметь возможность быстро сообщить администраторам когда в логе начали появляться критические события.

Так родился наш проект — WinLogViewer.com. Бесплатный сервис для мониторинга журналов событий на Windows серверах.

Читать дальше →
Total votes 8: ↑5 and ↓3+2
Comments15

58 признаков хорошего интерфейса

Reading time16 min
Views380K
У хорошего интерфейса пользователя высокая конверсия и его просто использовать. То есть, он хорош и для бизнеса, и для использующих его людей. Вот список опробованных нами идей.

1 Один столбец вместо нескольких


Один столбец точнее отражает то, что вы хотите донести. Пользователи проходят сверху вниз по более предсказуемому пути. В дизайне с несколькими колонками есть риск отвлечения пользователя от основной задачи страницы.

image
Читать дальше →
Total votes 226: ↑182 and ↓44+138
Comments102

Администрируем сервера через единую консоль

Reading time4 min
Views34K
Всем привет!

Давно собирался написать на Хабре, но все как-то откладывал. Но вот недавно прочитал пару статей (раз, два) и понял, что надо взять себя в руки. Это мой первый пост на Хабре, надеюсь, что он будет удачный.

Logo

Начало


Начнем с того, что я работаю системным администратором и немного далек от программирования, но часто пишу всякие скрипты, которые облегчают повседневную работу. Часто приходится решать однотипные задачи на серверах, например, открыть порт для списка ip на всех серверах или проверить состояния службы, проверить, на каких серверах разрешен вход для конкретного пользователя и т.д. Список однотипных задач велик, и я думаю, что многие администраторы знакомы с ними.

Проба пера


Как только количество серверов перевалило за критическую отметку, у меня возник вопрос: как всем этим управлять и не тратить много времени на это. Понятно, что заходить на сервера по RDP\SSH и выполнять там одинаковые команды — это не по фэншую.
Читать дальше →
Total votes 24: ↑16 and ↓8+8
Comments37

Сети для самых маленьких. Часть десятая. Базовый MPLS

Reading time45 min
Views384K
Сеть нашей воображаемой компании linkmeup растёт. У неё есть уже магистральные линии в различных городах, клиентская база и отличный штат инженеров, выросших на цикле СДСМ.
Но всё им мало. Услуги ШПД — это хорошо и нужно, но есть ещё огромный потенциальный рынок корпоративных клиентов, которым нужен VPN.
Думали ребята над этим, ломали голову и пришли к выводу, что никак тут не обойтись без MPLS.

Если мультикаст был первой темой, которая требовала некоторого перестроения понимания IP-сетей, то, изучая MPLS, вам точно придётся забыть почти всё, что вы знали раньше — это особенный мир со своими правилами.



Сегодня в выпуске:


А начнём мы с вопроса: «Что не так с IP?»

Читать дальше →
Total votes 72: ↑72 and ↓0+72
Comments49

Установка Lync 2013 в ресурсном лесе

Reading time6 min
Views32K
Иногда развертывание Microsoft Lync 2013 требует наличие ресурсного домена. Ресурсный домен — это такое место, где живет только непосредственно сам сервер Lync 2013. Пользователи живут в другом домене – пользовательском. Как их подружить между собой, будет рассказано ниже. Кому интересно, добро пожаловать под кат. Будет интересно (и много всяких картинок).
Читать дальше →
Total votes 7: ↑6 and ↓1+5
Comments20

Sony NEX-5. Фотокамера для продвинутого «чайника»

Reading time4 min
Views55K
Сразу оговорюсь: я в фотографии даже не любитель. Так, чайник. Все четыре цифровика, которые последовательно появлялись у меня, начиная с 2002 года – мыльницы среднего класса. Поэтому «продвинутым любителям», а также полупрофи- и профи- фотографам читать этот пост противопоказано.

Кроме того, здесь не будет ничего про unpacking, а также не планируются образцы фотографий (последним просто стыдно было бы хвастаться – см. первый абзац). Все это можно увидеть на специализированных сайтах и в специализированных отчетах. От себя скажу только одно – Sony NEX-5 делает снимки радикально лучшего качества, чем то, что мне удавалось получить ранее (в общем-то, и неудивительно — матрица APS-C «чуточку» больше, чем то, что стоит в компактах).

image

Поделиться же в этом посте я бы хотел ощущениями от использования – что нравится, чего не хватает. Мне, как человеку, впервые купившему хороший цифровой аппарат. Именно на меня и таких как я рассчитан в первую очередь Sony NEX-5 (дальше трафик).

Читать дальше →
Total votes 63: ↑49 and ↓14+35
Comments115

Краткое введение в SIM-карты

Reading time6 min
Views226K
Когда на вопрос «кем вы работаете?» я отвечал «разработчиком ПО для SIM-карт», даже технически подкованные люди частенько удивлялись. Многие думают, что SIM-карта это «что-то типа флешки».

В этой статье я постараюсь кратко рассказать что такое SIM-карта (и смарт-карты в общем), зачем она нужна и что у нее внутри.

На самом деле SIM-карта — это частный случай контактной смарт-карты с микропроцессором. По сути, представляет из себя достаточно защищенный микрокомпьютер с CPU, ROM (опционально), RAM и NVRAM (которая выступает в качестве аналога жесткого диска в PC), с аппаратными генераторами случайных чисел и аппаратной реализацией крипто-алгоритмов.

В некотором приближении архитектуру микропроцессорной смарт-карты можно представить так:
Архитектура смарт-карты

Читать дальше →
Total votes 474: ↑470 and ↓4+466
Comments180

Создание документации ИС

Reading time9 min
Views48K

Вступление…


Решился продолжить статьи
«История одной инфраструктуры. Решения MS. Часть 1»
«История одной инфраструктуры. Решения MS. Часть 2»
«История одной инфраструктуры. Решения MS. Часть 3»
и более подробно рассмотреть вопрос создания документации информационной системы (ИС) предприятия. Сразу оговорюсь, что не претендую на истину, всего лишь, мой подход и мои соображения по данному вопросу. Надеюсь, что смогу помочь начинающим разработчикам документации в этом нелегком деле.
Читать дальше →
Total votes 18: ↑11 and ↓7+4
Comments9

Решаем практические задачи на батниках

Reading time3 min
Views17K
Батники это не мощный язык программирования, но, в то же время, на нем можно решить много рутинных задач. Цель статьи не просто рассказать о возможностях Windows-консоли, а показать их, решая практические задачи с которыми мне приходилось сталкиваться.
Читать дальше →
Total votes 33: ↑30 and ↓3+27
Comments29

C# + WPF + сторонние сборки -> один .exe-шник

Reading time3 min
Views25K
Бывает приходится разработать маленькое приложение на C# и WPF, однако в следствие использования сторонних сборок(например SharpZipLib, Unity) — получается так что на выходе у нас кроме нашего маленького .exe-шника получается ещё и куча .dll-ок, а нам нужно чтобы был именно один .exe-шник.
Читать дальше →
Total votes 18: ↑14 and ↓4+10
Comments12

Руководство по созданию пользовательских интерфейсов для Windows 7

Reading time1 min
Views3.4K
image

Microsoft выпустила официальное руководство, в котором подробно описываются принципы построения пользовательских приложений и интерфейсов для Windows 7. Руководство очень большое – 882 страницы, на которых приводятся советы, рассматриваются конкретные примеры, даются рекомендации.

Всего руководство разделено на 10 больших разделов:

— принципы дизайна;
— элементы управления;
— команды (горячие клавиши, меню и прочее);
— текст и его стили;
— сообщения: предупреждения, об ошибках, уведомления;
— взаимодействие пользователя: клавиатура, мыши, сенсоры, доступ для людей с ограничениями;
— окна;
— визуальные элементы: иконки, компоновка, шрифты, цвета и другое;
— пользовательский опыт;
— окружение Windows.

Загрузить Windows User Experience Interaction Guidelines в формате .pdf можно по этой ссылке.
Total votes 70: ↑44 and ↓26+18
Comments18

Information

Rating
Does not participate
Location
Санкт-Петербург и область, Россия
Works in
Date of birth
Registered
Activity

Specialization

System Administration
Lead
Vmware vSphere
VMware
PowerShell
Ansible