Хабрахабр:
Неподготовленному человеку, который захочет написать самое простецкое голосовое меню с использованием языка VoiceXML на голосовом шлюзе от компании Cisco, предстоит наступить на множество граблей. Некоторые из них я отмечу в этой статье. Вполне возможно, что какой-нибудь Cisco-специалист фыркнет и скажет, что это всё элементарщина, но тем не менее, когда передо мной встала эта задача, я не знал с чего начать. Google не давал сколько-нибудь толковых примеров готовых IVR. Единственной более-менее хорошей исходной точкой послужила эта статья. Мой хабравопрос также не дал особых результатов. Но отбросим лирику и перейдем к делу. Предположим, что у нас есть голосовой шлюз Cisco, поддерживающий выполнение скриптов на языке VoiceXML (например, Cisco 3925). Будем разрабатывать голосовое меню, показанное на картинке. В рабочие часы будет воспроизводиться приветствие и звонок будет переводиться на заданный внутренний номер, в нерабочее и выходные ? специальное объявление, что, мол, звоните по будням. Читать дальше →
В этой статье мне бы хотелось рассказать о решении, которое позволяет организовать ограничение доступа к данным на уровне СУБД, причем в том случае, когда ограничиваемая таблица сама содержит данные влияющие на ограничение. Пример, который я приведу, сильно упрощен, но необходимые средства, используемые в решении, предоставлены исчерпывающе. Протестировано на Oracle 11g R2. Предположим, что пользователю SCOTT, потребовалось организовать ограничение доступа к данным некоторых таблиц, но критерии, по которым должен предоставляться доступ выглядят так, что требуется производить анализ данных ограничиваемой таблицы. Казалось бы, что может быть проще ? поехали. Читать дальше →
Более двух лет прошло после начала продаж iPhone 4 летом 2010 года, и за эти два года сайтостроители привыкли проверять джаваскриптом значение window.devicePixelRatio (или же использовать в CSS медиазапрос device-pixel-ratio) как простое и бесхитростное средство, позволяющее тотчас же выяснить, запущен ли сайт на сетчаточном дисплее (retina display) или нет. Если величина devicePixelRatio равна двойке, то перед нами сетчаточный дисплей (четвёртый iPhone, четвёртый iPod Touch, третий iPad, или более новые устройства, или портативный компьютер ?MacBook Pro with Retina Display?); если же величина devicePixelRatio равна единице (или не определена), то перед нами дисплей обычной чёткости. Чуть сложнее, по сравнению с эппловскими, бывает учёт устройств, работающих под Android: там приходится воспринимать дробные величины, не равные единице или двойке. Peter-Paul Koch сообщил во блогозаписи ?More about devicePixelRatio? о том, что (по его наблюдениям) в Nexus One величина devicePixelRatio равна 1,5, тогда как в Galaxy Nexus и в Galaxy Note она равна двум в WebKit и 2,25 в Opera Mobile. Но эти мелкие отличия не меняют картины в целом: все привыкли думать о значении величины devicePixelRatio как о таком свойстве устройства, которое на одном и том же мобильнике (или планшете, или ноутбуке) остаётся беспрерывно постоянным. В частности, именно на этом были основаны все, все рецепты из хабрахабровских блогозаписей ?Адаптируем графику под Retina экран?, ?Распознаём retina-дисплеи джаваскриптом?, ?Отображаем карты OpenStreetMap на iPhone 4 с учётом сетчаточного дисплея при помощи Leaflet?, ?Как отличить версию iPad в Safari?, ?Оптимизация графики для Retina-экранов?, ?Комплексная подготовка сайта к Retina? и им подобных. Но пришёл ноябрь 2012 года, и настаёт пора отказаться от этой привычки, настаёт пора критически пересмотреть прежние рецепты. Сейчас скажу почему. Читать дальше →
Не так давно, на мероприятии Evernote Trunk Conference в Сан-Франциско мы анонсировали новую функцию API NoteStore.findRelated, которую могут использовать независимые разработчики и партнеры. Как и следует из названия функции, она позволяет клиентам запрашивать заметки, блокноты и метки, так или иначе связанные по смыслу с исходными данными (такими данными на входе может быть как идентификатор другой заметки, так и простой текст). Идея в том, что Evernote станет полезнее, если будет своевременно подсказывать пользователю заметки из его аккаунта на актуальную в данный момент для него тему. Новая функция API упрощает поиск и представление такой информации. Давайте посмотрим, как эта функция работает. В Github вы можете найти пример приложения на Python, которое использует findRelated. Приведенный ниже код взят из этого приложения, так что, при желании, можете сразу перейти к нему. Читать дальше →
В этой статье не будет готового кода. Возможно, готового кода не будет вообще никогда. По большей части, я пишу эту статью, чтобы прочитать комментарии. Если эти комментарии подскажут мне возможности в Postgress, MySQL или любой другой СУБД, которые позволят мне решить задачу, не прибегая к разработке очередного велосипеда, я буду только рад. Если говорить коротко, у меня появилась задача, для решения которой такие возможности как детальный контроль доступа (FGAC), материализованные представления (Materialized View) и Partitioning были бы совсем не лишними. Для реализации этих возможностей, Oracle Enterprise Edition использует механизм переписывания SQL-запросов (Query Rewrite). Все это прекрасно работает, и говорить было бы совсем не о чем, если-бы одним из условий нового проекта не было использование бесплатного ПО. Поскольку мы не можем приобрести необходимый функционал, естественным образом, возникает идея реализовать его самостоятельно. Читать дальше →
Команда Mugen Power Batteries привествует вас в своем официальном блоге на Хабре! После того, как мы почитали здесь хорошие независимые обзоры нашей продукции, мы решили, что пришло время официально запустить блог и напрямую общаться с читателями Хабра. В нашей первой записи мы хотели бы представить вам нашу продукцию, рассказать, в чем ее необходимость, кому нужны аккумуляторы повышенной емкости, а так же, каким образом мы работаем с нашими клиентами в России. Аккумуляторы повышенной емкости от Mugen Power Batteries Наша компания занимается разработкой, производством и дистрибъюцией аккумуляторов повышенной емкости для мобильных устройств, и зарекомендовала себя как лидер в своей области, преимущественно за счет высокого качества продукции и поддержки клиентов по всему миру. Наш завод соответсвует стандартам качества CE и ISO 9001, а также RoHS и работает в индустрии аккумуляторов с 1979 года. Зачем нужны аккумуляторы повышенной емкости С тех пор, как Google представил миру свою новую мобильную OS Android, мы начали производить литий-ионные (Li-Ion) аккумуляторы повышенной емкости для телефонов-флагманов того времени, таких как HTC Desire A8181, HTC EVO, Samsung Galaxy S, Google Nexus One и других смартфонов, так как самым слабым звеном телефонов на Android было и остается время работы на одном заряде от штатного аккумулятора. Читать дальше →
Отписаться от этой рассылки