Обновить
7.05

Яндекс API *

Пишем под сервисы Яндекса

Сначала показывать
Период
Уровень сложности

Алиса помнит всё

Время на прочтение5 мин
Охват и читатели16K


Сегодня мы будем делать навык (приложение) для Алисы — своеобразную записную книжку (или стикер на холодильник): если во фразе пользователя (он же на профессиональном сленге юзер) есть слово "Запомни" — вся фраза сохраняется, и при следующем запуске навыка — будет любезно зачитана пользователю. Код приложения мы пишем на Node.js, для выполнения кода будем использовать Yandex Cloud Functions, а хранить данные — в Firebase Cloud Firestore. В результате у нас должен получиться точно такой же навык как "Запомни и Забудь", опубликованный в каталоге навыков Алисы.
Читать дальше →

Раз, Два, Три! Чат-бот из Google Таблицы на примере PvP-игры для Алисы

Время на прочтение9 мин
Охват и читатели19K

Появившись, Алиса увлекла пользователей неожиданно качественными синтезом речи и чат-ботом. Сегодня от неё ждут полезных навыков и интересных игр с бекендом, способным учитывать контекст пользователя и реализовывать широкий спектр сценариев. В этой статье рассматривается создание навыка на базе Google Таблицы, хорошо знакомого многим инструмента с большим потенциалом для небольших чат-ботов.

Играть с реальным человеком может быть интереснее, чем с виртуальным персонажем, поэтому в качестве примера разрабатывать будем многопользовательскую игру для Алисы.
Читать дальше →

Обработка голосовых запросов в Telegram с помощью Yandex SpeechKit Cloud

Время на прочтение5 мин
Охват и читатели31K

Как все начиналось


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

Читать дальше →

Визуализация геоданных сети референцных станций Санкт-Петербурга

Время на прочтение2 мин
Охват и читатели7.3K

Идея


В октябре 2014 года на Хабре была опубликована статья Яндекса о построении тепловых карт. Тепловая карта — наиполезнейший инструмент, когда требуется представить трехмерные данные на плоскости. В рамках работы над созданием веб-интерфейса по обслуживанию сети референцных станций Санкт-Петербурга возникла идея визуализировать данные, получаемые пользователями на геодезических работах. Также хотелось найти взаимосвязи между деятельностью изыскательных организаций и градостроительными процессами на территории Санкт-Петербурга.
Читать дальше →

YandexGPT API быстро и без труда с Python SDK. Делимся опытом интеграции

Уровень сложностиСредний
Время на прочтение25 мин
Охват и читатели27K

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

Читать далее

Алиса, Яндекс.Станция и Nigthscout

Время на прочтение4 мин
Охват и читатели4.9K

Родители детей с диабетом знают, как сложно убедить ребенка постоянно следить за уровнем глюкозы. Поэтому любой дополнительный интерфейс "лишним" не будет: виджет на телефоне, смарт-часы, уведомления в мобильном приложении.

Сервис Nightscout, представляющий собой веб-приложение с базой данных об уровне глюкозы и событиях терапии, позволяет обращаться к себе по API с запросом информации. А всем известная голосовая помощница и колонка с ней - позволяет разрабатывать для себя индивидуальные варианты диалогов "запрос" - "ответ".

Например, "скажи, какой уровень глюкозы у ... ?". а в ответ: "уровень такой-то, снижение/рост на столько-то, за последние Х минут снижение/рост умеренный/сильный на Y ммоль на литр." (немного легкой аналитики и выводов).

Итак, по шагам.

Читать далее

Голосовые навыки с нуля: как Алиса учила песни Цоя, не давала уснуть за рулем и принесла мне шесть наград от Яндекса

Время на прочтение10 мин
Охват и читатели9.5K
Необязательно посвящать годы изучению разговорных интерфейсов, чтобы у тебя получился крутой голосовой навык. Меня зовут Сергей Кул, и я считаю, что каждый навык – это маленький стартап: либо выстрелит, либо нет. Я создал первый голосовой скилл меньше года назад, ничего не зная о разработке ботов и голосовом UX. Теперь у меня пять Премий Алисы и специальный приз от Яндекса. Рассказываю, как так вышло и чему я научился, осваивая вместе с Алисой JavaScript, формулу Видмарка и песни «Кино».



Как создавать навыки без специальных навыков


1 июля 2019 года я начал активно искать какое-то новое направление для бизнеса в интернете. Работа в IT приелась, хотелось сменить деятельность. И вдруг наткнулся на статью, что для голосового ассистента Алисы сторонние разработчики могут делать свои навыки. Это было озарение! Понял, что хочу освоить такую разработку и закрепиться в этой нише. Что на тот момент я знал про голосовые интерфейсы или разработку ботов? НИЧЕГО! Совершенно! Но решил в течение одного месяца всё изучить и сделать первый навык.

Импорт в Я.Коннект из файла списка пользователей через API

Время на прочтение3 мин
Охват и читатели4.5K
Столкнулся с проблемой «ненахода» актуального скрипта для массового создания сотрудников.

Проблема связана с переходом Яндекса с PDD (Почта для домена), на Я.Коннект с новой версией API.

Скрипты которые мне попадались, были написаны только для «старой» версии API, и потому считаются нерабочими неактуальными.

Потому, вот актуальный простенький скрип на сегодня, для массового создания «Сотрудников» в организации.
Читать дальше →

Первый опыт работы с Яндекс Диалогами. Ждем нововведений

Время на прочтение3 мин
Охват и читатели6.1K
Созданием голосовых навыков я начал заниматься в начале 2017 года — устройства Echo от Amazon с ассистентом Alexa (Алекса). На тот момент инструменты для разработчиков были доступны уже полтора года, хотя не шли в сравнение с тем, что предлагают Amazon и Google сегодня. Открыв панель Яндекс Диалогов, я как раз вспомнил то начало и насколько все изменилось до сегодняшнего дня.

Хотелось бы поделиться с вами первым опытом и впечатлениями создания навыка на русском языке для Яндекс Алисы (Яндекс Диалогов) после опыта с Alexa Skills Kit и Amazon Lex.

image
Самая простая схема, как работает голосовой помощник.
Читать дальше →

Как капчи рассказали об уязвимости Яндекса

Время на прочтение2 мин
Охват и читатели12K

Привет, Хабр!


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


ВНИМАНИЕ! Информация, описанная ниже, написана исключительно в исследовательских целях и не предназначена для использования в корыстных целях!


Начну, пожалуй с предыстории. А именно, с разработки сетевого накопителя, сектора которого находятся в облаке. Суть данной технологии позволяла сделать из нескольких аккаунтов (ну около 100 или 1к аккаунтов) того же Яндекс.Диск по 10 Gb каждый (может измениться на момент прочтения) один большой диск, скажем на 10Tb. Вот...

Читать дальше →

Былина о том, как я Drupal и Яндекс.ПДД связывал

Время на прочтение10 мин
Охват и читатели10K
Некоторое время назад у меня была идея сделать городской сайт (естественно, очередной) для одного небольшого городка на базе Drupal. Как раз незадолго до этого Яндекс расширил функционал своей Почты для доменов и добавил возможность управлять ящиками через API. И в голове зародилась мысль: а почему бы и нет? Почему бы не предоставить пользователям возможность одновременно с регистрацией на городском портале получать почтовый ящик в городском домене? Сама по себе идея, конечно, не удивительна, однако готовых решений не было. Сайт я так и не запустил, а коду без дела лежать грех.

Как известно, Drupal позиционируется как CMS, ориентированная разработчиков и позволяющая благодаря обширной API разработать хоть систему для управления лунной базой. Я не буду вдаваться в своём посте в её восхваление и самые начальные основы разработки модулей под Drupal, однако начинающие Drupal-разработчики наверняка сочтут материал полезным, а опытным буду благодарен за советы и рекомендации.

Читать дальше →

Особенности загрузки объектов из карты формата KML на карту Яндекса

Время на прочтение2 мин
Охват и читатели18K
В API Яндекс.Карт есть средства для загрузки географических данных в формате XML. API поддерживает карты в двух форматах: YMapsML и KML. В документации по технологиям Яндекса есть пример, илюстрирующий работу с этим форматами.

Глядя на этот пример, можно предположить, что с точки зрения API оба формата эквивалентны, и работа с ними ничем не отличается. Тем более Яндекс предоставляет конструктор карт, в котором каждой карте автоматически назначаются ссылки на оба формата. Эти ссылки отличаются только суффиксом. Карта в формате YMapsML оканчивается на символ /, а адрес той же карты в формате KML на конце содержит символы ".kml".

Независимо от формата XML загрузка геообъектов будет выглядеть так:
var map = new ymaps.Map("map", {
    center: [-25.89, 135.32],
    zoom: 4,
    controls: ["zoomControl"]
});

var url = "http://maps.yandex.ru/export/usermaps/4c4r9MAwI8DLmJKv1H--R0_bvQmHNLDz/";

ymaps.geoXml.load(url).then(function (res) {
    map.geoObjects.add(res.geoObjects);
});


Но если нам понадобится что-то сделать с объектами при загрузке, то мы обнаружим, что формат имеет значение. Предположим, что мы хотим поменять цвет контура у объекта с определенным именем.

Пример загрузки YMapsML
var url = "http://maps.yandex.ru/export/usermaps/4c4r9MAwI8DLmJKv1H--R0_bvQmHNLDz/";

ymaps.geoXml.load(url).then(function (res) {
    res.geoObjects.each(function (obj) {
        if (obj.properties.get("name") == "Бассов пролив") {
            obj.options.set("strokeColor", "0066ffff");
        }
    });
    map.geoObjects.add(res.geoObjects);
});



Оказывается, что если мы заменим адрес на формат KML, то данный код работать не будет, потому что коллекция объектов, загруженная из формата KML отличается от той, что получается при загрузке YMapsML. При загрузке KML получается коллекция объектов, состоящая из одного геобъекта, который сам является коллекцией. И вот этот вложенный объект уже содержит геообъекты, нарисованные на карте.

Поэтому для обработки коллекции, загруженной из KML надо написать вот такой код:

Пример загрузки KML
var url = "http://maps.yandex.ru/export/usermaps/4c4r9MAwI8DLmJKv1H--R0_bvQmHNLDz.kml";

ymaps.geoXml.load(url).then(function (res) {
    res.geoObjects.each(function (obj) {
        obj.each(function (nested) {
            if (nested.properties.get("name") == "Бассов пролив") {
                nested.options.set("strokeColor", "0066ffff");
            }
        });
    });
    map.geoObjects.add(res.geoObjects);
});


Читать дальше →

Создание сводной таблицы посещаемости нескольких сайтов с помощью Яндекс.Метрики

Время на прочтение3 мин
Охват и читатели8.1K
Была задача — создать систему учёта посетителей для пары десятков сайтов. Сайты принадлежат игровым объединениям (кланам) одного игрового сообщества. Так сказать, нужна сводная таблица, в которой сразу будет видно какой сайт более популярен. Заказчик одобрил подсчёт уникальных посетителей.

Так как у заказчика не было никакой цельной идеи — что и как, то мне можно было делать всё что угодно (техзадания не было тоже). Написал систему учёта (PHP, MySQL). Уникальные хосты идентифицировались по IP, записи в кукисах и записи в DOM-хранилище. По сути это был эксперимент, который не был доведён до конца. Новый вариант системы учёта должен был использовать счётчики какой-либо готовой системы, таких как Яндекс.Метрика, Google Analytics, LiveInternet и подобных. Выбрал Яндекс, ибо там есть API и толковая справка. Пример использования подглядел на хабре. Для работы с API метрики нужен OAuth-токен. Описывать процедуру его получения не буду, всё есть в справке.
Читать дальше →

Ближайшие события

Создание пользовательского контрола карты с помощью API Яндекс.Карт 2.0

Время на прочтение3 мин
Охват и читатели11K

Есть у карт Рамблера одно интересное дизайнерское решение, отсутствующее в других картах. Это контрол центра карты, благодаря которому показывается на что направлен текущий центр карты. Именно на примере этой функциональности я бы хотел рассказать вам о том, как сделать свой контрол для карт на своем сайте.
Читать дальше →

Яндекс 360 для бизнеса. Заблокировал учетку сотрудника и спишь спокойно?

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели5.8K

Однажды давным давно, кажется в прошлую пятницу, меня позвал директор и сообщил, что сотрудник N, пару месяцев как уволенный, получает наши внутренние рассылки.

Я удивился осведомлённости директора и пошел разбираться, вскоре выяснив, что нажать на аккаунте Я360 для бизнеса кнопку "ЗАБЛОКИРОВАТЬ" 

Оказалось недостаточно

Разработка .NET Web приложения на Yandex Cloud Functions

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели7.8K

Яндекс Облако предоставляет возможность публикации .NET приложений разными способами, типичным из которых является docker контейнер, развернутый на созданных вычислительных ресурсах, что подразумевают оплату за выделенные процессоры и оперативную память. Более экономный вариант предоставляют serverless сервисы Cloud Functions и Serverless Containers, где оплата идет по фактически потребленным ресурсам, масштабирование осуществляется самим облаком. Контейнеры хороший вариант разработки, но более простым и легковесным является Cloud Functions.

Читать далее

Парсинг Яндекс Карт или как найти целевую аудиторию

Время на прочтение3 мин
Охват и читатели40K

Как написать парсер Яндекс Карт? А также аналитика данных организаций. Поиск целевой аудитории

Читать далее

Terraform за 15 дней (AWS/Yandex cloud). День 3: data source и outputs

Время на прочтение7 мин
Охват и читатели14K

Сегодня мы познакомимся с понятиями data source и output; посмотрим, как применяются изменения в уже существующей инфраструктуре.

Читать далее

Карты, деньги, два букета. Как мы пришли к собственному сервису доставки

Время на прочтение9 мин
Охват и читатели4.9K

Привет, Хабр. Меня зовут Андрей, я бэкенд-разработчик в команде Flowwow. 

Я довольно давно работаю в компании и хочу рассказать об истории создания  собственного сервиса доставки (не без боли) и интеграциях с крупными игроками, которые нам удалось реализовать. 

Приходит тот день, когда бизнес задает себе философский вопрос «что дальше?», в нашем случае это «куда расти маркетплейсу?». Такой вопрос касается всей команды, включая ИТ. Увидев бэкенд в моей роли, вы наверняка ожидаете техническую мясорубку. Не без этого, но во многом хочу рассказать про сам путь. 

Читать далее

Прямое и обратное геокодирование – тестирование популярных решений

Время на прочтение10 мин
Охват и читатели72K
В современном мире огромное количество разнообразных сервисов обрабатывают геоданные.
Задачи прямого и обратного геокодирования встречаются повсеместно – когда ваш пользователь вводит свой адрес, а вы на карте отображаете точку, где он находится. Или наоборот – ваш пользователь указывает точку на карте, а вы преобразуете эту точку в понятный адрес.

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


Читать дальше →

Вклад авторов