RU2421811C2 - Интерфейс поставщиков служб устройств - Google Patents

Интерфейс поставщиков служб устройств Download PDF

Info

Publication number
RU2421811C2
RU2421811C2 RU2005127418/08A RU2005127418A RU2421811C2 RU 2421811 C2 RU2421811 C2 RU 2421811C2 RU 2005127418/08 A RU2005127418/08 A RU 2005127418/08A RU 2005127418 A RU2005127418 A RU 2005127418A RU 2421811 C2 RU2421811 C2 RU 2421811C2
Authority
RU
Russia
Prior art keywords
component
rfid
interface
server
data
Prior art date
Application number
RU2005127418/08A
Other languages
English (en)
Other versions
RU2005127418A (ru
Inventor
Абхишек АГАРВАЛ (US)
Абхишек АГАРВАЛ
Ануш КУМАР (US)
Ануш КУМАР
Баласубраманиан СРИРАМ (US)
Баласубраманиан СРИРАМ
АХМЕД Факрудин АЛИ (US)
АХМЕД Факрудин АЛИ
Янаки Рам ГОТЕТИ (US)
Янаки Рам ГОТЕТИ
Вамшидхар Г.Р. РЕДДИ (US)
Вамшидхар Г.Р. РЕДДИ
Винод АНАНТХАРАМАН (US)
Винод АНАНТХАРАМАН
Original Assignee
Майкрософт Корпорейшн
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Майкрософт Корпорейшн filed Critical Майкрософт Корпорейшн
Publication of RU2005127418A publication Critical patent/RU2005127418A/ru
Application granted granted Critical
Publication of RU2421811C2 publication Critical patent/RU2421811C2/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • G06F21/35User authentication involving the use of external additional devices, e.g. dongles or smart cards communicating wirelessly
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders

Abstract

Изобретение относится к радиочастотной идентификации (RFID) и, более конкретно, к системе и/или способу, которые обеспечивают предоставление единообразного обмена данными и управления RFID. Техническим результатом является предоставление единого способа, чтобы распознавать, настраивать и передавать данные в устройства RFID относительно производителя и ассоциированных спецификаций. Настоящее изобретение предоставляет систему и/или способ, которые обеспечивают взаимодействие с компонентом устройств, чтобы предоставлять единообразный обмен данными, обнаружение и управление. Компонент интерфейса поставщиков служб устройств (DSPI) может обеспечить единообразный способ, чтобы обмениваться данными и/или управлять устройством радиочастотной идентификации (RFID). Компонент DSPI может включать в себя компонент-приемник, который принимает одного или более из данных серверов RFID и данных устройств RFID. Компонент DSPI может задавать интерфейс, который обеспечивает обмен одним или более из данных серверов RFID и данных устройств RFID между устройством RFID и сервером RFID единообразным способом. Может быть задан интерфейс для реализации управления обнаружением, конфигурированием, обменом данными и соединениями. 3 н. и 11 з.п. ф-лы, 14 ил., 4 табл.

Description

Перекрестная ссылка на родственные заявки
По данной заявке испрашивается приоритет Предварительной патентной заявки США серийный номер 60/606281, поданной 1 сентября 2004 года и озаглавленной "SYSTEM AND METHODS THAT FACILITATE RFID SERVER PROGRAMMING MODEL AND API'S", и Предварительной патентной заявки США серийный номер 60/606577, поданной 2 сентября 2004 года и озаглавленной "FACILITATE RFID SERVER PROGRAMMING MODEL AND API'S". Эта заявка также связана с находящимися одновременно на рассмотрении Патентными заявками США с серийными номерами _______, _______ поданными _______, _______ и _______ соответственно. Эти заявки полностью включены в данный документ посредством ссылки.
Область техники, к которой относится изобретение
Настоящее изобретение, в общем, относится к радиочастотной идентификации (RFID) и, более конкретно, к системе и/или способу, которые обеспечивают предоставление единообразного обмена данными и управления RFID.
Предшествующий уровень техники
Многие розничные, производственные и сбытовые организации применяют различные и инновационные способы функционирования, чтобы повышать эффективность работы. Эти организации могут отслеживать складские запасы, чтобы обеспечивать оптимизацию спроса и предложения в отношении потребителей. Один аспект максимизации прибыли тесно связан с надлежащим складированием запасов, так чтобы пополнение осуществлялось в связи с исчерпанием товаров и/или продуктов. Например, розничные магазины, продающие вычислительную машину (компьютер) и/или видеомагнитофон, должны иметь на складе вычислительную машину относительно ее продажи потребителям и видеомагнитофон относительно его продажи потребителям. Таким образом, если на вычислительную машину более высокий спрос (к примеру, продается больше единиц), чем на видеомагнитофон, розничный магазин может складировать вычислительную машину более часто, чтобы оптимизировать спрос, предложение и, в свою очередь, прибыль. Отслеживание складских запасов и ассоциированных продаж может быть сложной задачей, в которой активность продукта сравнима с черным ящиком, поскольку внутренние действия неизвестны; тем не менее, отслеживание продуктов является важнейшим элементом в эффективности работы с запасами/продуктами.
Одним типом системы мониторинга, относящейся к продуктам, является портативное устройство сбора изображений (к примеру, устройство считывания штрихкода), которое широко используется в сферах производства, обслуживания и/или поставок. Такие устройства позволяют выполнять множество действий по сбору данных на месте. Портативные устройства сбора данных часто включают в себя интегрированные устройства считывания форм данных в виде штрихкода, выполненные с возможностью считывания форм данных в виде штрихкода, прикрепленных к продуктам, упаковке продуктов и/или контейнерам на складах, в розничных магазинах, портах, для инвентаризации, отслеживания запасов, контроля и ускорения производства, поддержания качества и/или других целей.
Уникальный штрихкод может быть помещен на продукт, причем штрихкод может быть ассоциирован с информацией, относящейся к этому продукту. Сканер штрихкода может быть использован, чтобы сканировать штрихкод на продукте, и из него может быть извлечена относящаяся к продукту информация. Такое определение информации, тем не менее, эстетически некорректно, поскольку эта информация может создавать помехи для продукта. Более того, разрывы, пятна грязи, надписи или другие физические повреждения/изменения штрихкода могут делать подобные традиционные системы и/или методики, по существу, бесполезными. Если часть штрихкода оторвана от продукта, сканер штрихкода может не иметь возможности корректно считать штрихкод. Аналогично, пятно грязи на продукте может сделать этот штрихкод нечитаемым.
Системы и/или способы мониторинга, использующие устройства считывания штрихкода и всемирный код продукта (UPC), сталкивают пользователя (к примеру, розничного торговца, дистрибьютора, изготовителя и т.д.) с дополнительными сложностями. Устройства считывания штрихкода требуют луча обзора, чтобы надлежащим образом выполнять мониторинг продуктов. Например, типичная система штрихкода требует, чтобы сканер находился на расстоянии не более 4-8 дюймов от штрихкода и/или UPC, чтобы достичь корректного считывания. Система штрихкода требует не только луча обзора, необходимы и ручные сканирования по каждому отдельному продукту, чтобы определить продукт. Более того, один штрихкод и/или UPC должен представлять все экземпляры продукта (к примеру, бутылке кетчупа торговой марки Tomato назначен один UPC и/или штрихкод для представления продукта). Помимо этого, объем информации, ассоциированной с одним штрихкодом и/или UPC, ограничен. Таким образом, сканирование кетчупа торговой марки Tomato может предоставить идентификационные данные и цену продукта. Эта информация не только не важна, она не подходит для мониторинга продукта в реальном времени.
Технология автоматической идентификации и сбора данных (AIDC), а именно радиочастотная идентификация (RFID), была разработана на основе, по меньшей мере, необходимости исправлять вышеуказанные недостатки систем и/или методик мониторинга (к примеру, устройств считывания штрихкода, штрихкодов и/или кодов UPC). RFID - это методика удаленного сохранения и извлечения данных с помощью меток RFID. Поскольку системы RFID основаны на радиочастоте и ассоциированных сигналах, многочисленные выгоды и/или преимущества превосходят традиционные методики мониторинга продуктов. Технология RFID не требует луча обзора, чтобы отслеживать продукты и/или принимать сигналы от меток RFID. Таким образом, не требуется ручное сканирование, при котором сканер должен быть как можно ближе к цели (к примеру, продукту). Тем не менее, диапазон в RFID ограничен на основе радиочастоты, размера меток RFID и ассоциированного источника питания. Помимо этого, системы RFID позволяют несколько считываний за секунды, обеспечивая быстрое сканирование и идентификацию. Другими словами, система RFID дает возможность множеству меток быть считанными и/или определенными, когда метки находятся в диапазоне устройства считывания RFID. Возможность нескольких считываний в системе RFID дополнена возможностью предоставления информационных меток, которые содержат уникальный идентификационный код по каждому отдельному продукту. Поэтому в отличие от системы штрихкода каждая бутылка кетчупа, изготовленная под торговой маркой Tomato, будет иметь ассоциированный идентификационный код. Например, две бутылки кетчупа, изготовленные под торговой маркой Tomato, имеют два различных идентификационных кода в системе RFID, тогда как в системах штрихкода две бутылки кетчупа, изготовленные под торговой маркой Tomato, будут иметь одинаковый штрихкод и/или UPC. В другом примере системы и/или способы RFID могут быть реализованы в воде, например отслеживание и/или мониторинг подводного трубопровода, тогда как система отслеживания штрихкода представляет множество сложностей в таких условиях.
Более того, системы и/или методики RFID предоставляют данные в реальном времени, ассоциированные с помеченным элементом. Потоки данных в реальном времени дают возможность розничному продавцу, дистрибьютору и/или изготовителю точно отслеживать складские запасы и/или продукты. Использование RFID может дополнительно облегчить поставку продуктов для внешнего распространения (к примеру, от розничного продавца к потребителю) и внутреннего распространения (к примеру, от дистрибьютора/изготовителя розничному продавцу). Дистрибьюторы и/или производители могут отслеживать поставки товаров, качество, количество, время доставки и т.д. Помимо этого, розничные продавцы могут отслеживать количество требуемых складских запасов, размещение этих складских запасов, качество, срок хранения и т.д. Описанные преимущества демонстрируют гибкость технологии RFID, обеспечивая возможность функционирования в нескольких областях, например внешняя поставка, внутренняя поставка, цепочки распространения, производство, розничная продажа, автоматизация и т.д.
Система RFID состоит из, по меньшей мере, метки RFID и приемо-передающего устройства RFID. Метка RFID может содержать антенну, которая обеспечивает прием и/или передачу радиочастотных запросов от приемо-передающего устройства RFID. Меткой RFID может быть небольшой объект, например клейкая этикетка, гибкая наклейка и встроенная микросхема и т.д. В типичном случае существует четыре различные частоты, которые используют метки RFID: низкочастотные метки (125-134 кГц), высокочастотные метки (13,56 МГц), УВЧ-метки (868-956 МГц) и СВЧ-метки (2,45 ГГц).
В рамках различных частотных диапазонов метки RFID могут быть либо пассивными, либо активными. Пассивная метка RFID не включает в себя блок питания. Когда электрический ток вызывается в антенне посредством принятой радиочастоты от приемо-передающего устройства RFID, метке предоставляется достаточное количество энергии, чтобы отреагировать. Во многих случаях ответ пассивной метки RFID краток, состоя из идентификационного номера (к примеру, глобального уникального идентификатора (GUID)). GUID - это псевдослучайное число, которое уникально и может быть реализовано стандартным универсальным уникальным идентификатором (UUID) (к примеру, 16-байтное число, написанное в шестнадцатеричном формате). Тем не менее, системы и/или способы RFID сошлись на сохранении информации, например, в многоразрядном формате (к примеру, 64 бита или 96 бит), называемом электронным кодом продукта (EPC). Отсутствие блока питания в пассивной метке RFID дает возможность устройству быть небольшим и недорогим. Некоторые пассивные метки RFID, по измерениям, имеют размеры 0,4×0,4 мм, т.е. тоньше, чем лист бумаги. Тем не менее, отсутствие блока питания ограничивает практический диапазон считывания пассивной метки RFID от 10 мм до примерно 5 метров.
Активная метка RFID содержит источник питания, предоставляющий большие диапазоны считывания. Типичные активные метки RFID имеют размер примерно монеты американской валюты, и они предоставляют диапазоны считывания примерно десятки метров, поддерживая срок службы аккумуляторов до нескольких лет. Более того, в отношении активных меток RFID можно выполнять считывание и запись. Например, метки RFID могут обеспечить дополнительный уровень безопасности, чтобы не допускать кражи, посредством записи данных в активную метку RFID. Бит безопасности позволяет определять состояние безопасности на основе, по меньшей мере, приемо-передающего устройства RFID. В одной системе безопасности, например, активная метка RFID может иметь бит безопасности, установленный/записанный со значением один, что может означать, что продукт не очищен для того, чтобы оставить защитную область без инициирования оповещения/предупреждения. Когда соответствующие условия существуют, система и/или способ RFID позволяют записывать значение бита в метку равным нулю, что может указывать на то, что помеченный продукт очищен для того, чтобы оставить защитную область.
В целом, система RFID может включать в себя несколько компонентов: метки, устройства считывания меток (к примеру, приемо-передающие устройства меток), станции программирования меток, устройства считывания с циркуляцией кода, сортировальное оборудование, устройства считывания штрихкодов складских запасов на основе меток и т.д. Более того, различные марки, модели, типы и/или приложения могут быть ассоциированы с соответствующими компонентами (к примеру, метками, устройствами считывания меток, станциями программирования меток, устройствами считывания с циркуляцией кода, сортировальным оборудованием, устройствами считывания штрихкодов складских запасов на основе меток и т.д.), что может усложнить обнаружение, конфигурирование, настройку, обмен данными, обслуживание, безопасность и/или совместимость в системе RFID и с другими системами RFID. В свете вышесказанного существует необходимость предоставить единый способ, чтобы распознавать, конфигурировать, настраивать и передавать данные в устройства RFID относительно производителя и ассоциированных спецификаций.
Сущность изобретения
Далее представлено упрощенное изложение сущности изобретения, для того чтобы предоставить базовое понимание некоторых аспектов изобретения. Это изложение сущности не является всесторонним обзором изобретения. Оно не предназначено, чтобы определить ключевые/важнейшие элементы изобретения или определить объем изобретения. Его единственная цель - представить некоторые концепции изобретения в упрощенной форме в качестве вступления в более подробное описание, которое представлено далее.
Настоящее изобретение относится к системам и/или способам, которые обеспечивают взаимодействие с устройством радиочастотной идентификации (RFID) и/или другими системами генерирования событий в реальном времени (к примеру, датчиком, Web-службой и т.д.). Компонент интерфейса поставщиков служб устройств (DSPI) может предоставлять уровень абстрагирования, чтобы обмениваться данными и управлять устройством(ами) единообразным способом вне зависимости от типа и/или торговой марки устройства. В частности, компонент DSPI задает, по меньшей мере, один интерфейс для изготовителя устройства (к примеру, изготовителя устройства считывания), чтобы единообразно предоставлять услуги серверу RFID. Таким образом, компонент DSPI - это уровень между сервером и, по меньшей мере, одним устройством. Более того, компонент DSPI может задавать интерфейс для реализации управления обнаружением, конфигурированием, обменом данными и соединениями.
В соответствии с одним аспектом настоящего изобретения компонент DSPI может включать в себя компонент-приемик, который принимает одно или более из преобразования протоколов, которое относится к устройству, данных сервера RFID, данных устройства RFID и т.д. Компонент DSPI обеспечивает единообразный обмен данными с устройством и предоставление функциональных возможностей устройства независимо от изготовителя и стандарта протокола. Помимо этого, компонент-приемник может быть внешним и/или внутренним относительно компонента DSPI. Следует принимать во внимание, что устройством может быть, но не в ограничительном смысле, устройство считывания RFID, устройство записи RFID, приемо-передающее устройство RFID, устройство RFID, датчик, система генерирования в реальном времени, датчик реального времени, устройство с расширением в виде Web-службы и система генерирования событий в реальном времени и т.д.
В соответствии с другим аспектом настоящего изобретения компонент DSPI может включать в себя компонент ответа на запросы, который задает обмен сообщениями на уровне устройств. Следует принимать во внимание, что обмен сообщениями может быть асинхронным. Более того, обмен сообщениями может быть парой "запрос/ответ", уведомлением, командой и/или свойством. Обмен сообщениями используется компонентом ответа на запросы, при этом обмен сообщениями соответствует синтаксису языка разметки между сервером RFID и, по меньшей мере, одним устройством RFID. Языком разметки может быть, но не в ограничительном смысле, расширяемый язык разметки (XML), язык гипертекстовой разметки (HTML), стандартный обобщенный язык разметки (SGML) и расширяемый язык гипертекстовой разметки (XHTML).
Более того, компонент DSPI может включать в себя компонент интерфейса устройств, который задает уровень сообщений и/или транспортный уровень. Компонент интерфейса устройств обеспечивает управление обменом сообщениями и соединениями между сервером RFID и, по меньшей мере, одним устройством RFID. Компонент интерфейса устройств может использовать синтаксис языка разметки, чтобы отправлять и/или принимать сообщения (к примеру, уведомление, ответ, запрос и т.д.).
В еще одном аспекте настоящего изобретения компонент DSPI может включать в себя компонент интерфейса обнаружения устройств, который обнаруживает устройства RFID. Таким образом, компонент интерфейса обнаружения устройств может задавать интерфейс, который может информировать и/или сообщать о новом устройстве(ах) RFID. В целях эффективности компонент интерфейса обнаружения устройств может создавать экземпляр одного компонента на каждого поставщика. Более того, компонент DSPI может включать в себя компонент контейнера SPI (интерфейса поставщиков служб), который обеспечивает загрузку поставщика DSPI в сервер RFID. Компонент контейнера SPI сохраняет совместимость версий между сервером RFID и SPI. Более того, компонент контейнера SPI может регистрировать, по меньшей мере, один драйвер в сервере RFID.
Последующее описание и прилагаемые чертежи подробно излагают определенные иллюстративные аспекты изобретения. Эти аспекты, тем не менее, указывают только на некоторые из множества способов, которыми могут быть использованы принципы изобретения. Изобретение предназначено, чтобы включить в себя все такие аспекты и их эквиваленты. Другие преимущества и новые признаки изобретения станут явными из следующего подробного описания изобретения, если рассматривать их вместе с чертежами.
Перечень фигур чертежей
Фиг.1 - блок-схема типичной системы, которая обеспечивает взаимодействие с компонентом устройств.
Фиг.2 - блок-схема типичной системы, которая обеспечивает взаимодействие с устройством.
Фиг.3 - блок-схема типичной системы, которая обеспечивает взаимодействие с компонентом устройств в рамках системы радиочастотной идентификации.
Фиг.4 - блок-схема типичной системы, которая обеспечивает обмен данными с устройством.
Фиг.5 - блок-схема типичной системы, которая обеспечивает обмен данными с устройством.
Фиг.6 - блок-схема типичной системы, которая обеспечивает обмен данными с устройством.
Фиг.7 - блок-схема типичной системы, которая обеспечивает обмен данными с устройством.
Фиг.8 - блок-схема типичной системы, которая обеспечивает обмен данными с множеством устройств и ассоциированных поставщиков.
Фиг.9 - блок-схема типичной системы, которая обеспечивает взаимодействие с устройством.
Фиг.10 - блок-схема алгоритма типичной методики, которая обеспечивает предоставление единообразных услуг для устройства.
Фиг.11 - блок-схема алгоритма типичной методики, которая обеспечивает предоставление единообразных услуг для устройства.
Фиг.12 - блок-схема алгоритма типичной методики, которая обеспечивает предоставление единообразных услуг для устройства.
Фиг.13 - типичная сетевая среда, в которой могут быть использованы новые аспекты настоящего изобретения.
Фиг.14 - типичная операционная среда, в которой могут быть использованы новые аспекты настоящего изобретения.
Подробное описание изобретения
При использовании в данной заявке термины "компонент", "система" и т.п. означают связанную с вычислительной машиной объектную сущность: аппаратные средства, программное обеспечение (к примеру, в ходе исполнения) и/или микропрограммное обеспечение. Например, компонентом может быть процесс, запущенный на процессоре, процессор, объект, исполняемый файл, программа и/или вычислительная машина. В качестве иллюстрации, и приложение, запущенное на сервере, и сервер может быть компонентом. Один или более компонентов могут постоянно размещаться внутри процесса, и компонент может быть локализован на вычислительной машине и/или распределен между двумя и более вычислительными машинами.
Настоящее изобретение описано со ссылками на чертежи, на которых одинаковые номера ссылок используются для обозначения одинаковых элементов. В последующем описании, для целей пояснения, многие конкретные детали изложены, чтобы обеспечить полное понимание настоящего изобретения. Тем не менее, очевидно, что настоящее изобретение может быть применено на практике без этих конкретных деталей. В иных случаях, на модели блок-схемы показаны распространенные структуры и устройства, чтобы облегчить описание изобретения.
Основанные на искусственном интеллекте системы (к примеру, явно и/или неявно обучаемые классификаторы) могут быть использованы в связи с выполнением умозаключений, и/или вероятностных определений, и/или основанных на статистике определений, как описано в данном документе. При использовании в данном документе термин "умозаключение" обычно означает процесс рассуждения или обозначения состояний системы, окружения и/или пользователя из набора данных наблюдения, полученных посредством событий и/или данных. Умозаключение может быть использовано, чтобы определить конкретный контекст или действие, либо может генерировать распределение вероятностей, к примеру, по состояниям. Умозаключение может быть вероятностным, т.е. вычислением распределения вероятностей по интересующим состояниям на основе анализа данных и событий. Умозаключение также может означать методики, используемые для компоновки событий более высокого уровня из набора событий и/или данных. Такое умозаключение приводит к составлению новых событий или действий из набора наблюдаемых событий и/или сохраненных данных событий, независимо от того, коррелированы ли события в тесной временной близости и исходят ли события и данные из одного или нескольких источников событий и данных. Различные схемы и/или системы (к примеру, методы опорных векторов, нейронные сети, экспертные системы, сети байесовских представлений, нечеткая логика, ядра синтеза данных и т.д.) классификации могут быть использованы в связи с выполнением автоматического и/или возможного в качестве умозаключения вывода в связи с настоящим изобретением.
Теперь обращаясь к чертежам, фиг.1 иллюстрирует систему 100, которая обеспечивает взаимодействие с компонентом устройств, чтобы предоставлять единообразный обмен данными и/или управление. Система 100 может использовать компонент 102 интерфейса устройств, чтобы предоставлять уровень абстрагирования, который обменивается данными и управляет компонентом 104 устройств единообразным способом. Компонент 102 интерфейса устройств может выступать в качестве "посредника" между сервером 106 и, по меньшем мере, одним компонентом 104 устройств. Сервером может быть, например, сервер RFID, в котором, по меньшей мере, одна услуга (к примеру, публикация, подписка, запрос, опрос, управление, мониторинг, обновление и т.д.) и/или запрограммированный вычислительный процесс (к примеру, связанный с производством и/или поставками и т.д.) может быть предоставлен компоненту 104 устройств. Более того, компонент 102 интерфейса устройств может включать в себя компонент-приемник 108, который принимает данные от одного или более серверов, преобразование протоколов, которое относится к устройству, данные сервера RFID, данные устройства RFID и т.д. Следует принимать во внимание, что компонент 102 интерфейса устройств обеспечивает единообразный обмен данными с устройством и предоставление функциональных возможностей устройства независимо от изготовителя и стандарта протокола. Помимо этого, компонент-приемник 108 может быть внешним и/или внутренним относительно компонента 102 интерфейса устройств. Следует дополнительно принимать во внимание, что устройством может быть, но не в ограничительном смысле, устройство считывания RFID, устройство записи RFID, приемо-передающее устройство RFID, устройство RFID, устройство, датчик реального времени, датчик, устройство с расширением в виде Web-службы и система генерирования событий в реальном времени и т.д.
Изготовители устройств (к примеру, независимый поставщик оборудования (IHV), который специализируется в изготовлении аппаратных средств конкретного типа аппаратного устройства и ассоциированного программного драйвера) могут использовать компонент 102 интерфейса устройств, чтобы предоставлять обслуживание промежуточных программных продуктов на основе, по меньшей мере, частично множества устройств и ассоциированных наборов команд. Другими словами, одно устройство от изготовителя может использовать один набор команд, тогда как другое устройство может использовать, по существу, другой набор команд. Чтобы снизить остроту проблем, связанных с различными изготовителями и наборами команд, компонент 102 интерфейса устройств может задавать интерфейс для изготовителя устройства, который предоставляет обслуживание серверу 106 единообразным способом. Поэтому сервер 106 может использовать компонент 102 интерфейса устройств, чтобы взаимодействовать с компонентом 104 устройств с помощью единообразной методики, которая предоставляет гибкость для устройств. Более того, компонент 102 интерфейса устройств может предоставлять интерфейс и/или интерфейсы, чтобы делегировать управление обнаружением, конфигурированием, обменом данными и соединениями компонента 104 устройств. Следует принимать во внимание, что компонент 102 интерфейса устройств может взаимодействовать с множеством компонентов 104 устройств, при этом поставщики ассоциированы с каждым компонентом 104 устройств.
Например, различные наследуемые системы (к примеру, когда наследуемая система, в типичном случае, является устройством считывания и/или устройством, которое имеет охраняемые протоколы для обмена данными, которые устарели в свете новых стандартов) по определению используют устаревшие устройства и/или программное обеспечение. Эти наследуемые системы могут использовать компонент 102 интерфейса устройств, дающий возможность интерфейсу и/или интерфейсам обеспечивать нескольким наследуемым устройствам и поставщикам единообразное взаимодействие с сервером 106. Таким образом, компонент 104 наследуемых устройств и ассоциированный поставщик (не показан) могут быть использованы, чтобы предоставлять разнообразие услуг и/или процессов посредством компонента 102 интерфейса устройств и сервера 106.
В одном примере компонент 102 интерфейса устройств может быть использован, чтобы предоставлять единообразную методику взаимодействия между множеством компонентов 104 устройств и сервером 106. Компонентами 104 устройств могут быть, например, наследуемые системы, устройства автоматической идентификации, совместимые с EPC-Global устройства и т.д. Помимо этого, следует принимать во внимание, что каждый компонент 104 устройств может иметь ассоциированного поставщика (к примеру, совместимого с EPC-G поставщика, частного поставщика (поставщика, являющегося предметом собственности), наследуемого поставщика и т.д.). Таким образом, компонент 102 интерфейса устройств может предоставлять единообразное взаимодействие между несколькими поставщиками, использующими различные наборы команд для компонентов 104 устройств и сервера 106.
Компонент 102 интерфейса устройств может обеспечивать нормализацию между несколькими стандартами, представляющими множество компонентов 104 устройств, Web-службу и/или системы генерирования событий в реальном времени (не показаны). Таким образом, компонентами 104 устройств могут быть устройство RFID и/или сенсорное устройство. Более того, использование компонента 102 интерфейса устройств дает возможность новшествам в области аппаратных средств переходить на более высокий уровень. Компонент 102 интерфейса устройств может быть реализован поставщиком (не показан), которым может быть, например, независимый от процессора платформенный компоновочный блок. Поставщик может реализовать интерфейс и/или интерфейсы, заданные компонентом 102 интерфейса устройств. Посредством задания интерфейса для поставщика компонент 102 интерфейса устройств взаимодействует с компонентом 104 устройств посредством использования специфических для конкретного устройства команд. Таким образом, компонент 102 интерфейса устройств минимизирует специфические для конкретного устройства частности от сервера 106 RFID.
Фиг.2 иллюстрирует систему 200, которая дает общее представление новизны настоящего изобретения. Например, изготовителю устройств RFID необходим единообразный способ предоставления своих услуг уровню хоста, исполняющемуся на платформе операционной системы, поскольку каждое устройство поддерживает различный набор команд, протокол(ы) и/или поведение. Интерфейс поставщиков служб устройств (DSPI) - это уровень абстрагирования для платформы услуг RFID с целью единообразного обмена данными и управления устройствами RFID. Этот уровень предусматривает нормализацию между несколькими протоколами обмена данными, поддержку наследуемых устройств считывания и других устройств автоматической идентификации единообразным способом, а также предоставление возможности переноса ключевых новшеств в области аппаратных средств на более высокие уровни.
DSPI задает абстрактные классы (для реализации управления обнаружением, конфигурированием, обменом данными, устройствами и соединениями), которые изготовители устройств могут реализовывать, чтобы предоставлять услуги платформе услуг RFID в операционной системе единообразным способом. Поставщики могут функционировать в рамках хоста 202 услуг RFID в качестве управляемой объектной сущности и могут обмениваться данными с самим устройством 204 и/или устройствами 204 посредством, например, управляемого интерфейса прикладного программирования (API-интерфейса), неуправляемого кода, реализации модели компонентных объектов (COM) или посредством API-интерфейсов Win 32 на основе поддерживаемого механизма передачи, называемого машиной 206 узла.
В частности, прикладной домен 208 экземпляров процессов может содержать экземпляр 210 процесса, при этом прикладной домен 208 экземпляров процессов может взаимодействовать с, по меньшей мере, одним прикладным доменом 212 поставщиков устройств. Прикладной домен 212 поставщиков устройств может содержать реализацию 214 DSPI для устройства, при этом может быть множество устройств 216, ассоциированных с ней. Следует принимать во внимание, что может быть от 1 до N устройств, где N - это целое число, как показано на чертеже.
Поставщики служб устройств подпадают под, по меньшей мере, одну из следующих категорий: 1) чистая реализация управляемого кода, использующая один из стандартных протоколов (HTTP, TCP, SERIAL (к примеру, Samsys)); 2) реализация протокола управляемого кода, но вызывающая неуправляемый код (к примеру, USB-устройство считывания, посредник, подключаемый к процессу обработчика различных протоколов); 3) упаковщик управляемого кода для охраняемого протокола, реализованного в качестве драйвера устройства Windows (к примеру, чистых драйверов принтеров, таких как SATO).
Фиг.3 иллюстрирует систему 300, которая обеспечивает взаимодействие с устройством с целью обеспечения единообразных методик обмена данными и/или управления. Сервер 306 RFID может обмениваться данными с устройством 304 RFID посредством использования компонента 302 интерфейса поставщиков служб устройств (DSPI). Следует принимать во внимание, что сервер 306 RFID может обмениваться данными с датчиком (не показан), а также с любым устройством 304 RFID. Поставщик устройств RFID (не показан) может использовать компонент 302 DSPI, который может задавать, по меньшей мере, один компонент DSPI, который обеспечивает взаимодействие с сервером 306 RFID. Интерфейсы, заданные компонентом 302 DSPI, могут быть реализованы IHV-изготовителями для преобразования протоколов, чтобы предоставить функциональные возможности устройств компоненту 302 DSPI. Следует принимать во внимание, что компонент 302 DSPI предоставляет единообразное взаимодействие с сервером RFID и множеством устройств 304 RFID. Следует принимать во внимание, что устройством 304 RFID может быть, но не в ограничительном смысле, устройство считывания RFID, устройство записи RFID, приемо-передающее устройство RFID и т.д.
Компонент 302 DSPI может дополнительно включать в себя компонент 308 ответа на запросы, который обеспечивает обработку сообщений с помощью устройства 304 RFID. Компонент 308 ответа на запросы задает обмен сообщениями между сервером 306 RFID и устройством(ами) 304 RFID. Обмен сообщениями может соответствовать, например, парам сообщений (к примеру, когда первое сообщение может инициировать второе сообщение с помощью специфических для конкретного изготовителя команд), запрос, ответ, уведомление, сообщение, свойство, запрос, подтверждение, флаг и т.д. Следует принимать во внимание, что компонент 308 ответа на запросы задает, по меньшей мере, один обмен сообщениями, который является асинхронным и/или синхронным. Таким образом, обмен сообщениями от компонента 308 ответа на запросы, который является асинхронным, не инициирует немедленный ответ из запроса.
Например, наследуемое устройство и/или поставщик, являющийся предметом собственности, может реализовать компонент 302 DSPI, чтобы использовать единообразные технологии обмена данными. Следует принимать во внимание, что поставщиком, который реализует компонент DSPI, может быть, например, независимый от процессора платформенный компоновочный блок. Компонент 302 DSPI задает интерфейс, из которого компоновочный блок может реализовывать относительно устройства 304 RFID. Другими словами, компонент 302 DSPI использует единообразный набор команд, который могут использовать множество устройств и/или множество поставщиков, чтобы предоставлять услуги IHV-изготовителей серверу 306 RFID.
Более того, компонент 302 DSPI может включать в себя компонент 310 интерфейса устройств. Компонент 310 интерфейса устройств задает уровень сообщений и/или транспортный уровень. Уровень сообщений и/или транспортный уровень может быть реализован посредством языка разметки, например, но не в ограничительном смысле, расширяемым языком разметки (XML), языком гипертекстовой разметки (HTML), стандартным обобщенным языком разметки (SGML) и расширяемым языком гипертекстовой разметки (XHTML). Следует принимать во внимание, что транспортный уровень может быть независимым от уровня сообщений. Помимо этого, компонент 310 интерфейса сообщений делегирует управление сообщениями и соединениями. Чтобы постоянно поддерживать обмен данными и/или взаимодействие с сервером 306 RFID, компонент 310 интерфейса устройств может задать уровень сообщений и транспортный уровень. Совместно с компонентом 308 ответа на запросы компонент 310 интерфейса устройств управляет обменом сообщениями с устройством 304 RFID и сервером 306 RFID с помощью пар сообщений (к примеру, заданных компонентом 308 ответа на запросы) и уровнем сообщений/транспортным уровнем (к примеру, заданным компонентом 310 интерфейса устройств). Более того, управление соединением каждого устройства осуществляется (к примеру, осуществляется контроль, установление, определение, разрыв, мониторинг и т.д.) компонентом 310 интерфейса устройств посредством уровня сообщений/транспортного уровня.
Чтобы обеспечить распознавание устройства 304 RFID, компонент 302 DSPI может включать в себя компонент 312 интерфейса обнаружения устройств. Другими словами, компонент 312 интерфейса обнаружения устройств задает механизм(ы) обнаружения устройств. К этим механизмам распознавания может относиться, но не в ограничительном смысле, запуск обнаружения, остановка обнаружения, данные запросов соединений (к примеру, идентификатор устройства, имя поставщика и т.п.) и т.д. Следует принимать во внимание, что компонент 312 интерфейса обнаружения устройств эффективно создает экземпляр одного компонента DSPI на каждого поставщика, при этом в отношении устройств, ассоциированных с этим поставщиком, выполняется обработка (к примеру, контроль, управление, мониторинг и т.д.). Более того, следует принимать во внимание, что поставщик может реализовывать компонент 312 интерфейса обнаружения устройств.
Компонент 302 DSPI может дополнительно включать в себя компонент 314 контейнера SPI, который загружает поставщиков (не показаны) в сервер 306 RFID. Посредством загрузки поставщика в сервер 306 RFID конфигурирование и регистрация поставщика обрабатывается компонентом 314 контейнера SPI. Компонент 314 контейнера SPI предоставляет информацию о версии и идентификационную информацию, относящуюся к поставщикам. Помимо этого, компонент 314 контейнера SPI - это шлюз верхнего уровня для реализации поставщика. Поставщиками SPI могут быть, например, независимые от процессора платформенные компоновочные блоки. Следует принимать во внимание, что поставщик может использовать драйверы попеременно.
Например, поставщиками могут быть независимые от процессора программные компоновочные блоки, которые дают возможность создания и/или использования приложений, процессов и Web-сайтов языка разметки в качестве служб, которые могут совместно использовать и/или сочетать информацию и функциональные возможности друг с другом посредством проекта, или платформы, или интеллектуального устройства, чтобы обеспечивать специализированные решения. Посредством использования этих компоновочных блоков предоставляются различные выгоды и/или преимущества. Проблемы управления версиями драйверов могут быть решены с помощью управления версиями этих компоновочных блоков, поскольку различные версии драйвера могут использоваться на сервере одновременно. Таким образом, при переходе с одной версии на другую компоновочный блок дает возможность использования нескольких версий, при этом доступна корректная версия. Драйверы, написанные в таком формате компоновочного блока, не подвержены переполнению буфера, ошибкам и т.п. Исключительные ситуации из драйвера могут быть изолированы, так чтобы не затрагивалась стабильность сервера. Помимо этого, IHV-изготовители могут задавать цифровую подпись для драйверов, чтобы гарантировать подлинность и/или достоверность.
Фиг.4 иллюстрирует систему 400, которая обеспечивает взаимодействие с устройством, чтобы предоставлять единообразные методики обмена данными и/или управления. Компонент 308 ответа на запросы может включать в себя компонент 402 формирования пар, который обеспечивает пары обмена сообщениями, чтобы давать возможность обмениваться данными устройству (не показано) и серверу (не показан). Например, обмен сообщениями может быть задан как пары "запрос-ответ", которые являются асинхронными. Более того, обмен сообщениями приводится в соответствие (к примеру, посредством формирования пар) с помощью идентификации. Идентификацией может быть, например, идентификация сообщения, которая уникальна для конкретной соответствующей пары. Следует принимать во внимание, что компонент 402 формирования пар может поддерживать специфические для конкретного изготовителя команды (к примеру, пары обмена сообщениями, пары "запрос-ответ" и т.д.). Помимо этого, команда/процедура (к примеру, описываемая далее "SendMessage()") может быть использована, чтобы отправлять запросы на устройство.
Компонент 402 формирования пар может использовать устройство 404 хранения данных, в котором могут быть сохранены пары обмена сообщениями. Следует принимать во внимание, что устройство 404 хранения данных может быть базой данных в памяти в рамках DSPI (не показан) и/или удаленного сервера. Устройство 404 хранения данных может быть использовано, чтобы хранить пары "запрос-ответ", которые поддерживаются компонентом DSPI (не показан). Более того, устройством хранения данных может быть, например, либо энергозависимая, либо энергонезависимая память, либо оно может включать в себя как энергозависимую, так и энергонезависимую память. В качестве иллюстрации, но не ограничения, энергонезависимая память может включать в себя постоянное запоминающее устройство (ПЗУ, ROM), программируемое ПЗУ (ППЗУ, PROM), электрически программируемое ПЗУ (ЭППЗУ, EPROM), электрически стираемое программируемое ПЗУ (ЭСППЗУ, EEPROM) или флэш-память. Энергозависимая память может включать в себя оперативное запоминающее устройство (ОЗУ, RAM), которое выступает в качестве внешнего кэша. В качестве иллюстрации, но не ограничения, ОЗУ доступно во многих формах, например статическое ОЗУ (SRAM), динамическое ОЗУ (DRAM), синхронное DRAM (SDRAM), SDRAM с двойной скоростью передачи данных (DDR SDRAM), усовершенствованное SDRAM (ESDRAM), Rambus direct RAM (RDRAM), direct Rambus dynamic RAM (DRDRAM) и Rambus dynamic RAM (RDRAM). Подразумевается, что устройство 404 хранения данных, соответствующее настоящим системам и способам, содержит, но не в ограничительном смысле, эти и любые другие подходящие типы памяти.
Компонент 402 формирования пар поддерживает множество пар обмена сообщениями. Например, в следующей таблице (таблица 1) показан пример (и описание) подходящей пары "запрос-ответ", которая может быть использована, чтобы обмениваться данными между устройством и сервером.
Таблица 1
Команда Ответ Описание
WriteId (string id, string passCode) Код состояния и/или ошибка Записывает идентификатор в метку.
Id - идентификатор метки, чтобы записывать в качестве шестнадцатеричной закодированной строки.
passCode - необязательный пароль как шестнадцатеричная закодированная строка.
Если id - пустое значение (null), она эквивалентна команде writePassCode.
GetTagData (string id) Пользовательские данные как специфическая для конкретного поставщика строка Считывает данные конкретной метки (пользователя), заданного идентификатором метки.
Все пользовательские данные, содержащиеся в метке, возвращаются без какого-либо многослойного доступа.
WriteTagData(string id, string data) Код состояния и/или ошибка Записывает пользовательские данные в конкретную метку, заданную идентификатором метки.
Кодировка строки данных задается поставщиком.
GetTagIds() Перечень строк Считывает все метки и данные, доступные в момент вызова, и возвращает как коллекцию.
Этот вызов является вызовом в реальном времени, который возвращает все метки, доступные для устройства в данный момент времени от одной или более антенн.
GetTagList() Перечень меток Перечень считанных записей "идентификатор/источник" в перечне меток.
ClearTagList() Код состояния и/или ошибка Очищает перечень меток.
GetTagMetaData(string id) Сведения о теге Считывает подробные сведения о конкретной метке (тип, номер изготовителя, блоки и т.д.), заданной идентификатором метки.
LockTag(string id, string lockCode) Код состояния и/или ошибка Блокирует конкретную метку. lockCode необходим, если он был задан ранее.
Kill (string id, string killCode) Код состояния и/или ошибка Уничтожает метку.
killCode необходим, если он был задан ранее.
AddReadFilter (string bitMask, bool incExc) Код состояния и/или ошибка Добавляет простой фильтр побитового маскирования в устройство.
RemoveReadFilter( string bitMask, bool incExc) Код состояния и/или ошибка Удаляет заданный фильтр из устройства.
ClearReadFilters() Код состояния и/или ошибка Очищает все фильтры в устройстве.
Reboot() Код состояния и/или ошибка Перезапускает устройство.
Все подключения к устройству теряются и не устанавливаются заново.
WriteId (string id, string passCode) Код состояния и/или ошибка Записывает идентификатор в метку.
Id - идентификатор метки, чтобы записывать в качестве шестнадцатеричной закодированной строки.
passCode - дополнительный пароль как шестнадцатеричная закодированная строка.
Если id - пустое значение, она эквивалентна команде writePassCode.
Более того, компонент 402 формирования пар может предоставлять ответ и/или уведомление (к примеру, принятое посредством "CmdResponseEvent" и "NotificationEvent" соответственно). Например, событие уведомления "ReadTagEvent" может быть использовано в режиме событий и отправлено устройством, чтобы сообщить о событии считывания/распознавания метки.
Компонент 308 ответа на запросы может дополнительно включать в себя компонент 406 свойств, который может предоставлять пары свойств, заданные компонентом DSPI (не показан). Пары свойств могут, например, иметь во многом аналогичное поведение с парами обмена сообщениями. В частности, свойства могут быть "получены" или "заданы," что не инициирует исключительных ситуаций. Следует принимать во внимание, что свойства могут быть обработаны посредством стандартного механизма (к примеру, запросов, отправленных описанным ниже методом SendMessage()). Следует принимать во внимание, что стандартные свойства могут быть заданы компонентом DSPI (не показан), тогда как конкретный поставщик может задавать другие свойства. Поставщик может поддерживать свойство, называемое REQUEST-TIMEOUT (к примеру, в миллисекундах), для запроса на в отношении исчисления лимита времени ожидания. Следует принимать во внимание, что компонент 406 свойств может использовать устройство 404 хранения данных, чтобы сохранять свойства.
Компонент 406 свойств поддерживает множество пар свойств. Например, в следующей таблице (таблица 2) показаны различные пары свойств (и их описание), которые могут быть использованы для обмена данными между устройством и сервером.
Таблица 2
Команда Ответ Описание
GetProperty(string propertyGroupName, string propertyName) Объект свойства. NULL, если нет такого свойства. Получает заданное свойство.
SetProperty(Property property) Код состояния и/или ошибка Задает свойство.
ApplyPropertyProfile(Property[] propertyProfile) Код состояния и/или ошибка Множество свойств могут быть применены одновременно с помощью этого метода. Приведем сценарий, при котором эта функциональность будет полезна: набор свойств должен быть задан для оптимальных рабочих характеристик устройства. Все они могут быть заданы как профиль в конфигурации устройства. Они могут быть немедленно применены сервером.
GetProperty(string propertyGroupName, string propertyName) Объект свойства. NULL, если нет такого свойства. Получает указанное свойство.
SetProperty(Property property) Код состояния и/или ошибка Задает свойство.
Более того, компонент 406 свойств поддерживает множество стандартных свойств. Например, в следующей таблице (таблица 3) показано стандартное свойство, а именно считано или записано свойство, а также описание.
Таблица 3
Свойство Чтение/запись Обязательно Описание
REQUEST_TIMEOUT Ч/З Да Период времени ожидания (TIMEOUT) для сообщений запроса (в миллисекундах). Поставщик отправляет ответ на запрос на TIMEOUT после того, как этот период истечет.
Компонент 308 ответа на запросы может использовать программный код, чтобы использовать обмен сообщениями между устройством и сервером. Программным кодом может быть язык разметки, например, но не в ограничительном смысле, расширяемый язык разметки (XML), язык гипертекстовой разметки (HTML), стандартный обобщенный язык разметки (SGML) и расширяемый язык гипертекстовой разметки (XHTML). Например, язык разметки может быть использован, чтобы предоставить синтаксис для запроса, ответа и уведомлений. Следует принимать во внимание, что запрос, уведомление и т.д. могут быть представлены как запрограммированные объекты в компоненте DSPI (не показан), чтобы предоставлять строгий контроль типов.
Фиг.5 иллюстрирует систему 500, которая обеспечивает взаимодействие с устройством, чтобы предоставлять единообразные методики обмена данными и/или управления. Компонент 310 интерфейса устройств может включать в себя компонент 502 обмена данными, который обеспечивает задание уровня сообщений и транспортного уровня. Более того, компонент 310 интерфейса устройств дополнительно содержит методики для управления сообщениями и соединениями. Следует принимать во внимание, что компонент 502 обмена данными может содержать, по меньшей мере, один канал отправки и, по меньшей мере, один канал приема, чтобы реализовать уровень сообщений и транспортный уровень.
Например, компонент 502 обмена данными может включать в себя канал 504 отправки. Канал отправки может использовать "SendMessage()", чтобы отправлять информацию. Помимо этого, компонент 502 обмена данными может иметь первый канал 506 приема и второй канал 508 приема. Первый канал 506 приема может использовать "CmdResponseEvent" для ответов (к примеру, для запроса), тогда как второй канал 508 приема может использовать "NotificationEvent" для уведомлений. Событие ответа может быть для синхронных команд запроса-ответа, тогда как уведомления могут быть для асинхронных, при этом уведомлениями могут быть событие перечня меток, событие управления считывающим устройством и т.д. Следует принимать во внимание, что компонент 310 интерфейса устройств может использовать "ProviderException". "ProviderException" - это исключительная ситуация верхнего уровня для всех связанных с поставщиком исключительных ситуаций. Любая внутренняя исключительная ситуация может быть передана в качестве аргумента внутри этой исключительной ситуации. Например, следующий код может задавать класс ProviderException:
public class ProviderException : ApplicationException {
public ProviderException(string message) :base(message) {
}
public ProviderException(string message, Exception e):base(message, e) {
}
}
Компонент 502 обмена данными может отправлять сообщения устройству. Следующий код является примером реализации "SendMessage()", чтобы отправить сообщение:
void SendMessage (ICommand command);
Компонент 502 обмена данными также может инициировать исключительные ситуации, например, но не в ограничительном смысле, ConnectionDownException, SendFailedException, System.ArgumentException (к примеру, когда параметр сообщения недопустим) и т.д. Более того, компонент 502 обмена данными может использовать следующий код:
event ResponseEventHandler CmdResponseEvent;
Вышеприведенный код является событием, которое генерируется, когда принимается ответ на запрос. Следует принимать во внимание, что вышеприведенный код может быть предоставлен устройством, когда принят ответ на команду. Помимо этого, компонент 502 обмена данными может использовать следующий код:
event ResponseEventHandler NotificationEvent;
Вышеприведенное событие генерируется, когда событие уведомления принято устройством. Более того, вышеприведенный код может быть предоставлен устройством, когда принято асинхронное событие. Следует принимать во внимание, что компонент 310 интерфейса устройств может использовать другой код и/или события.
Нижеприведенный код может быть реализован компонентом 310 интерфейса устройств, чтобы открыть уровень сообщений для обмена данными. Следует принимать во внимание, что стандартные запросы на сообщения ML (SML) отправляются с помощью следующего кода:
public abstract class DeviceInterface
{
public abstract DeviceInformation DeviceInformation {get;}
public abstract event ResponseEventHandler CmdResponseEvent;
public abstract event NotificationEventHandler NotificationEvent;
public abstract void SendMessage(Command command);
public abstract bool SetupConnection();
public abstract void Close();
public abstract bool IsConnectionAlive();
public abstract HashTable GetSources();
}
public delegate void ResponseEvent(object source, ResponseEventArgs args);
public delegate void NotificationEvent(object source, NotificationEventArgs args);
public class ResponseEventArgs:EventArgs
{
private Command command;
public ResponseEventArgs(Command command) {...}
}
public class NotificationEventArgs:EventArgs
{
private Notification notification;
public NotificationEventArgs(string id, Notification.Notification notification) {...}
}
public class RfidProviderException : ApplicationException {...}
public class ConnectionDownException : RfidProviderException {...}
public class SendFailedException : RfidProviderException {...}
// управление соединениями
public class ConnectionFailedException : RfidProviderException {...}
"DeviceInformation DeviceInformation {get;}" предоставляет информацию об устройстве, относящуюся к этому экземпляру устройства. Он содержит всю информацию об этом устройстве. Информация об устройстве предоставляется во время распознавания в событии распознавания и от компонента 310 интерфейса устройств. Например, класс информации устройства может быть задан следующим образом:
public class DeviceInformation
{
private string deviceId;
private ConnectionInformation connectionInfo;
private object providerData;
}
"void SendMessage (ICommand command);" - это команда, используемая, чтобы отправлять все сообщения на уровне устройств. Следующие исключительные ситуации могут быть инициированы: ConnectionDownException (к примеру, либо устройство не подсоединено, либо соединение разорвано); SendFailedException (к примеру, соединение с устройством имеется, однако произошел сбой при отправке сообщения устройству); System.ArgumentException (к примеру, когда параметр сообщения недопустим); и т.д. Функция "event ResponseEventHandler CmdResponseEvent;" - это событие, которое генерируется каждый раз, когда приходит ответ на запрос, "event NotificationEventHandler NotificationEvent;" - это событие, которое генерируется каждый раз, когда асинхронное событие уведомления принимается от устройства.
Более того, следующий код может быть использован при обработке исключительных ситуаций, связанных с обменом данными:
public delegate void ResponseEvent(object source, ResponseEventArgs args);
public class ResponseEventArgs:EventArgs {
public readonly string id; // идентичен идентификатору сообщения
public readonly string data; // строка xml
public ResponseEventArgs(string id, string data) {...}
}
public class ReaderTimeoutException :Exception{
public readonly string messageId;
public ReaderTimeoutException(string messageId) {...}
}
Следует принимать во внимание, что вышеприведенный код может содержать методики для свойств и/или управления. Помимо этого, нижеприведенный код позволяет создавать классы, связанные с исключительными ситуациями, следующим образом:
public class ProviderException : ApplicationException {...}
public class ConnectionDownException : ProviderException {...}
public class SendFailedException : ProviderException {...}
public class ConnectionFailedException : ProviderException{...}
void SendMessage(string message);
Компонент 310 интерфейса устройств также может управлять соединением, поддерживаемым с устройством. Следует принимать во внимание, что управление этим соединением может осуществляться для множества устройств, ассоциированных с поставщиком. Соединение с устройством поддерживается с помощью различных функций (описано ниже). Следует принимать во внимание, что поставщик поддерживает соединение с устройством до тех пор, пока это соединение не будет закрыто с помощью функции "Close()". Управление соединением может быть осуществлено с помощью следующего кода:
bool SetupConnection();
void Close();
bool IsConnectionAlive();
HashTable GetSources();
"bool SetupConnection();" устанавливает соединение с устройством (к примеру, абстрагированному данным экземпляром DeviceInterface). Этот метод может использовать следующую исключительную ситуацию: ConnectionFailedException (к примеру, произошел сбой при соединении с устройством), "void Close();" может удалять состояния, связанные с устройством, из драйвера и/или закрывать соединение, "bool IsConnectionAlive();" возвращает значение "истина", если соединение с устройством (к примеру, абстрагированным этим классом DeviceInterface) имеется. "HashTable GetSources();" возвращает все источники (к примеру, антенну) в устройстве как имя по отношению к состоянию (к примеру, истинно, если источник подсоединен и активен).
Фиг.6 иллюстрирует систему 600, которая обеспечивает взаимодействие с устройством, чтобы предоставлять единообразные методики обмена данными и/или управления. Компонент 312 интерфейса обнаружения устройств может включать в себя компонент информирования 602, который информирует компонент DSPI (не показан) о том, что обнаружено новое устройство. Компонент 602 информирования очень эффективен в том плане, что создается экземпляр одного компонента на каждого поставщика, чтобы устройства могли быть обработаны. Следует принимать во внимание, что, поскольку сервер может не иметь контроля над ресурсами, поставщик реализует компонент 312 интерфейса обнаружения устройств. Тем не менее, поставщик может реализовать данный компонент 312 интерфейса обнаружения устройств и не только. Например, число потоков может зависеть от числа устройств конкретного типа. Более того, если потоки обнаружения сталкиваются с ошибкой в ходе приведения в исполнение, поставщик может обрабатывать эти ошибки, чтобы давать возможность потокам выполняться. Более того, компонент 312 интерфейса обнаружения устройств может задавать механизм обнаружения устройств посредством использования интерфейса, например, но не в ограничительном смысле, интерфейса DeviceListener.
Компонент 602 информирования может обеспечивать обнаружение новых распознанных устройств посредством использования следующего кода:
public abstract class DeviceListenerInterface
{
public abstract event DiscoveryEventHandler DiscoveryEvent;
public abstract void StartDiscovery();
public abstract void StopDiscovery();
}
public delegate void DiscoveryEventHandler(object source, DiscoveryEventArgs args);
public class DiscoveryEventArgs:EventArgs {
private DeviceInformation deviceInfo;
Начало и остановка обнаружения может инициировать исключительную ситуацию: "public class DiscoveryException : ApplicationException {...}". В частности, "DiscoveryEventHandler" - это обработчик обратного вызова для всех событий обнаружения (к примеру, поставщик отправляет событие обнаружения устройства в узел с помощью этого события); "StartDiscovery" - это функция, чтобы запускать обнаружение устройства; а "StopDiscovery" - это функция, чтобы останавливать обнаружение новых устройств. Помимо этого, вышеприведенный код использует объект информации об устройствах, который включает в себя информацию, связанную с обнаруженным устройством RFID.
Компонент 312 интерфейса обнаружения устройств дополнительно включает в себя компонент 604 соединения, который обеспечивает соединение с устройством. Например, компонент 604 соединения может использовать строку XML, такую как "deviceIdXml", которая заключает в себе информацию и/или данные, необходимые, чтобы подсоединиться к устройству. Компонентом 604 соединения может быть использована схема, которая включает в себя следующее: уникальный идентификатор устройства, имя поставщика, имя механизма транспортировки, стандартные механизмы транспортировки и т.д. Например, следующая схема может быть использована компонентом 604 соединения:
<xsd:element name="deviceInformation" type="DeviceInformation" />
<xsd:complexType name="DeviceInformation">
<xsd:sequence>
<xsd:element name="id" type="xsd:string" />
<xsd:element name="provider" type="xsd:string" />
<xsd:element name="transport" type="xsd:string" />
<xsd:element name="providerSpecific" type="xsd:anyType" />
</xsd:sequence>
</xsd:complexType>
<xsd:simpleType name="Transport">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="TCPIP"/>
<xsd:enumeration value="SERIAL"/>
<xsd:enumeration value="HTTP"/>
<xsd:enumeration value="WIRELESS"/>
</xsd:restriction>
</simpleType>
Класс информации устройства предоставляет информацию об устройстве RFID. Этот класс предоставляется поставщиком во время обнаружения в событии обнаружения и от компонента 310 интерфейса устройств на фиг.3.
Более того, класс информации соединения может быть использован для соединения с устройством RFID. Для устройств, которые поддерживают обнаружение, этот объект может быть получен из объекта DeviceInformation из DiscoveryEvent. Для устройств, которые не поддерживают обнаружение, этот объект может быть заполнен вручную перед вызовом на объекте GetDevice() ServiceProviderInterface. Класс информации соединения может быть задан следующим образом:
public class ConnectionInformation
{
private string providerId;
private Transport transport;
private ITransportSettings transportSettings;
}
public enum Transport
{
TcpIP,
Serial,
Http,
Wireless
}
Фиг.7 иллюстрирует систему 700, которая обеспечивает взаимодействие с устройством, чтобы предоставлять единообразные методики обмена данными и/или управления. Поставщиками SPI могут быть, например, компоновочные блоки, которые предоставляют множество преимуществ (к примеру, компоновочные блоки .NET). Следует принимать во внимание, что компонент 314 контейнера SPI сохраняет состояние драйвера на минимуме. Другими словами, количество обнаруженных и/или подсоединенных устройств не важно для компонента 314 SPI.
Компонент 314 контейнера SPI может включать в себя компонент 702 поставщиков служб, который реализует интерфейс поставщиков служб. Интерфейс поставщиков служб является входной точкой для компонента DSPI (не показан). Средство реализации DSPI требует интерфейса, чтобы использовать входную точку. Следует принимать во внимание, что методы в интерфейсе могут использовать ProviderException. Например, может быть использован следующий код:
public abstract class ServiceProviderInterface : DeviceListenerInterface
{
public abstract Provider Information ProviderInformation {get;};
public abstract DataEncoding UserDataEncoding {get;}
public abstract void Init(string hostId, string initXml);
public abstract void ShutDown();
public abstract DeviceInterface GetDevice(ConnectionInformation deviceConnectionInfo);
public abstract bool IsValidDevice(DeviceInformation deviceInfo);
public abstract string[] GetPropertyGroupNames();
public abstract Hashtable GetPropertyMetadata(string propertyGroupName, string propertyName);
public abstract PropertyProfile GetIdealReaderPropertyProfile();
public abstract PropertyProfile GetIdealWriterPropertyProfile();
}
Следует принимать во внимание, класс драйвера поддерживает созданный выше интерфейс. Более того, заданная ниже "ProviderException" может быть вызвана. "ProviderInformation ProviderInformation {get;};" предоставляет информацию о поставщике DSPI, которая может быть использована в информационных целях узлом(ами) DSPI. Класс информации поставщика может быть использован, чтобы предоставлять эту информацию. Например, следующее может быть использовано, чтобы задать класс информации поставщика:
public class ProviderInformation
{
private string id;
private string description;
private string version;
}
"Encoding UserDataEncoding {get;};" обеспечивает кодирование, ожидаемое поставщиком для пользовательских данных (к примеру, ASCII, Hex и т.д.). Функция "void Init(string hosted, string initXml);" - это конструктор поставщика. Хост инициализирует поставщика DSPI с помощью этого метода, "hostId" может быть использован в информационных целях поставщиком, тогда как "initXml" - это специфичный для конкретного поставщика XML (к примеру, чья схема конкретна для поставщика), который может быть использован поставщиком, чтобы инициализировать себя. Функция "void Shutdown()" может быть использована, когда устройства все еще подсоединены, при этом сервер отвечает за закрытие таких соединений. Функция останавливает поток обнаружения, очищает условия состояний и/или возвращает систему в исходное состояние. Таким образом, она является деструктором поставщика и завершает работу поставщика. "DeviceListenerInterface GetDeviceListener()" возвращает ссылку на объект, который поддерживает, как указано в коде, интерфейс DeviceInterface Listener (к примеру, компонент 310 интерфейса устройств), который используется для обнаружения. Более того, "DeviceInterface GetDevice(ConnectionInformation deviceConnectionInfo" реализует интерфейс ServiceProviderInterface, чтобы выступать в качестве производителя для интерфейса DeviceInterface. Интерфейс DeviceInterface абстрагирует устройство RFID, с которым хост может обмениваться данными. Следует также принимать во внимание, что код "bool IsValidDevice(DeviceInformation deviceInfo);" обеспечивает возврат значения "истина", если информация об устройстве представляет допустимое устройство, поддерживаемое данным устройством, и доступное для соединения либо уже подсоединенное. "string[] GetPropertyGroupNames();" возвращает имена групп свойств, поддерживаемых данным поставщиком. Глобальная группа свойств с именем "String.Empty" не возвращается этим методом. Функция "Hashtable GetpropertyMetadata(string propertyGroupName, string propertyName);" возвращает метаданные о свойствах как имя группы и карту метаданных свойств. Возвращаемое значение может быть задано следующей таблицей:
Имя свойства - NULL Имя свойства - NON NULL
Имя группы свойств - NULL Метаданные для всех глобальных свойств как пустая строка по отношению к метаданным свойств. Метаданные для именованного глобального свойства как пустая строка по отношению к метаданным свойств. Если не глобальное свойство, возвращает NULL.
Имя группы свойств - NON NULL Метаданные для всех свойств в данной группе как имя группы по отношению к метаданным свойств. Метаданные для именованного свойства в именованной группе как имя группы по отношению к метаданным свойств. Если это не свойство, принадлежащее данной группе, возвращает NULL.
Функция "PropertyProfile GetIdealReaderPropertyProfile();" возвращает оптимальный профиль свойств для устройства RFID, которое находится в роли устройства считывания (к примеру, которое находится в режиме уведомлений о метках) для данного поставщика. Она содержит набор свойств, которые, когда применяются, приводят к оптимальной работе устройства считывания. "PropertyProfile GetIdealWriterPropertyProfile();" возвращает оптимальное свойство для устройства RFID, которое находится в роли устройства записи (к примеру, режим синхронных команд) для данного поставщика. Она содержит набор свойств, которые, когда применяются, приводят к оптимальной работе устройства записи.
Компонент 314 контейнера SPI может включать в себя компонент 704 драйверов с целью обеспечения регистрации, по меньшей мере, одного драйвера в сервере. Компонент 704 драйверов обеспечивает регистрацию драйверов в сервере, чтобы разрешить проверенные и подлинные драйвера. Например, при регистрации драйверов могут использоваться цифровые подписи, которые обеспечивают защищенные и/или подлинные драйверы, которые гарантируют совместимость и функциональность. Например, интерфейс IDriverManager может быть реализован с помощью следующего кода:
interface IDriverManager {
string LoadDriver(string assemblyPath, string className);
void UnloadDriver (string identifier);
void StopReadersOfDriver(string identifier);
string ListLoadedDrivers();
}
Интерфейс IDriverManager может поддерживаться, например, ускорителем RFID. Более того, следует принимать во внимание, что клиент может использовать платформу .NET, чтобы удаленно подсоединяться к драйверам и управлять ими. Как говорилось выше, платформа .NET предоставляет множество преимуществ, связанных с использованием драйверов и универсальностью. Код "string LoadDriver (AssemblyQualifiedNamespace);" может быть реализован компонентом 704 драйверов. Путь может быть путем к компоновочному блоку, размещенному на локальной машине, при этом могут быть инициированы следующие исключительные ситуации: компоновочный блок не найден; версия драйвера в компоновочном блоке не поддерживается сервером; а также идентификатор компоновочного блока не уникален (к примеру, из загруженных драйверов), при этом идентификатор определяет драйвер после загрузки. Следует принимать во внимание, что "providerInstanceId" возвращается при корректной загрузке драйвера. Помимо этого, компонент 704 драйверов может использовать функцию "void UnloadDriver (string providerInstanceId);", которая обеспечивает удаление драйвера из конфигурации сервера. Драйвер, соответствующий ненайденному идентификатору, является исключительной ситуацией, которая может быть инициирована в связи с этой функцией.
Компонент 704 драйверов может реализовать код "string ListLoadedDrivers();", который обеспечивает управление драйверами. Следует принимать во внимание, что компонент 704 драйверов может обеспечивать управление, при этом строка, возвращенная из функции "string ListLoadedDrivers();", может быть строкой XML со следующим форматом:
<xsd:element name="drivers" type="Drivers" />
<xsd:complexType name="Drivers">
<xsd:sequence>
<xsd:element name="driver" type="Driver" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Driver">
<xsd:sequence>
<xsd:element name="name" type="xsd:string" />
<xsd:element name="assembly" type="xsd:string" />
<xsd:element name="version" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
Вышеприведенный код позволяет создать составной тип со ссылочным именем "Drivers". Более того, код содержит имя драйвера (к примеру, providerInstanceId), имя компоновочного блока драйвера и версию драйвера.
Фиг.8 иллюстрирует систему 800, которая обеспечивает использование компонента 802 интерфейса поставщиков служб устройств (DSPI), чтобы обеспечивать единообразный обмен данными и управление для множества устройств и ассоциированных поставщиков. Поставщики 804 могут включать в себя множество поставщиков, например совместимого с EPC-G поставщика 808, первого поставщика 810, являющегося предметом собственности, и второго поставщика 812, являющегося предметом собственности. Следует принимать во внимание, что поставщики 804 обеспечивают обслуживание ассоциированного устройства. Например, совместимый с EPC-G поставщик 808 может быть ассоциирован с устройством 814 EPC-Global, первый поставщик 810, являющийся предметом собственности, может быть ассоциирован с первым наследуемым устройством 816, а второй поставщик 812, являющийся предметом собственности, может быть ассоциирован со вторым наследуемым устройством 818. Следует принимать во внимание, что компонент 802 DSPI взаимодействует посредством одного из существующих поставщиков 804 для ассоциированного устройства (к примеру, устройства 814 EPC-Global, первого наследуемого устройства 816 и/или второго наследуемого устройства 818). Компонент 802 DSPI предоставляет единый способ, которым поставщики 804 предоставляют обслуживание промежуточных программных продуктов, поскольку каждое устройство поддерживает особый набор команд. Другими словами, компонент 802 DSPI задает интерфейсы для изготовителей устройств (к примеру, и ассоциированных устройств), чтобы единообразно предоставлять услуги серверу 806 RFID.
Следует принимать во внимание, что компонент 802 DSPI может поддерживать на уровне сообщений команды, специфические конкретно для, по меньшей мере, одного из поставщиков 804. Специфические для конкретного поставщика команды могут быть отправлены с помощью следующего командного объекта:
public class VendorDefined : Command
{
private string vendor;
private string command;
private ParameterCollection parameters;
private VendorDefinedResponse response;
}
public class VendorDefinedResponse : Response
{
private string reply;
private vendorData data;
}
Вышеприведенный объект содержит специфическую для конкретного поставщика команду в качестве строки. Дополнительные параметры могут быть переданы в ParameterCollection. Ответ на команду отправляется как строка с ответом, а все дополнительные данные помещаются в объект данных. Следует дополнительно принимать во внимание, что конкретное для поставщика уведомление может быть отправлено с помощью следующего событийного объекта:
public struct VendorDefinedEvent: IEvent
{
private string id;
private string vendor;
private string name;
private Data data;
}
Объект содержит идентификатор события, идентификатор изготовителя, специфическое для конкретного поставщика имя события и все специфические для конкретного поставщика данные по событию.
В соответствии с одним аспектом настоящего изобретения поставщик DSPI может реализовать функциональные возможности перечня меток. Перечень меток сохраняет метки, обнаруженные устройством (к примеру, до лимита буфера). Перечень меток исключает дублирования с помощью DUPLICATE_ELIMINATION_TIME и сохраняет их в перечне меток. Перечень меток используется, чтобы сохранять обнаруженные метки в устройстве, так чтобы хост не терял метки, даже если он не подсоединен к поставщику. Перечень меток содержит совокупность записей меток, которая задана ниже:
public struct Tag
{
private string tagId;
private string tagData;
private string tagType;
private DateTime time;
private string source;
...
}
Метка хранит идентификатор метки, необязательно данные метки, необязательно тип метки, необязательно время и необязательно источник. Источник хранится как простая специфическая для конкретного поставщика строка (к примеру, Antenna1). Следует принимать во внимание, что именами источников могут быть, но не в ограничительном смысле, Antenna1, Antenna2 и т.д.
В соответствии с еще одним аспектом настоящего изобретения фильтр побитового маскирования может быть применен к идентификаторам обнаруженных меток. Могут быть реализованы шаблоны фильтров, такие как, например, использование нулей, единиц и x-ов, при этом x представляет "оставить без внимания". Фильтр применяется к идентификатору метки только совпадающей длины. В одном примере фильтры применяются только к уведомлениям. Синхронные команды не применяют эти фильтры. BitMaskReadFilter может быть использован с помощью следующего:
public class BitMaskReadFilter
{
private string bitMask;
private bool inclusive;
}
В соответствии с еще одним аспектом настоящего изобретения, по меньшей мере, один из поставщиков 804 может предоставить, по меньшей мере, набор команд меток, которые поддерживают код-пропуск. Если пользователь задает код-пропуск с помощью команды "WriteID", он может применяться ко всем данным защищенным операциям. Если пользователь не имеет кода-пропуска, все они становятся обычными командами. Коды-пропуска специфичны для метки.
Фиг.9 иллюстрирует систему 900, которая обеспечивает использование компонента 902 интерфейса поставщиков служб устройств (DSPI) с целью обеспечения единообразного обмена данными и/или управления устройством. Компонент 902 DSPI обеспечивает обмен данными между сервером 906 RFID и устройством 904 RFID посредством предоставления единообразных методик для обмена данными и управления. Например, поставщик (не показан), ассоциированный с, по меньшей мере, одним устройством 904 RFID, может реализовывать компонент 902 DSPI. Поставщиком может быть независимый от процессора платформенный компоновочный блок, который реализует интерфейс(ы), заданный компонентом 902 DSPI.
Компонент 902 DSPI может использовать компонент 908 предыстории, который предоставляет журнал регистрации действий на основе, по меньшей мере, частично компонента 902 DSPI, сервера 906 RFID и/или устройства 904 RFID. Компонент предыстории может отслеживать и/или регистрировать информацию, такую как, например, списки поставщиков, устройства, ассоциированные с поставщиками, предыстория соединений, данные о соединениях, данные о сигналах, данные аутентификации и т.д. Более того, следует принимать во внимание, что журнал регистрации действий, созданный компонентом 908 предыстории, может быть потоком данных в реальном времени и/или сохраненными данными. Компонент 908 предыстории может использовать устройство 914 хранения данных, чтобы сохранять регистрируемые действия журнала и/или данные предыстории. Это устройство 914 хранения данных подробнее описано ниже.
Компонент 902 DSPI может взаимодействовать с компонентом 910 безопасности, чтобы обеспечивать дополнительную безопасность для системы 900. Компонент 910 безопасности может разрешать аутентификацию (к примеру, имя для логического входа в систему и/или пароль), проверку подлинности (к примеру, проверку подлинности этого имени для логического входа в систему и пароля), защищенное соединение (к примеру, на основе, по меньшей мере, частично проверки подлинности), уровни безопасности (к примеру, на основе имени пользователя и/или пароля), шифрование и т.д. Например, компонент 910 безопасности может обеспечивать защищенное соединение, при этом можно обмениваться информацией, которая дает возможность поставщикам взаимодействовать и/или использовать интерфейсы, заданные компонентом 902 DSPI. Более того, аутентификация и/или проверка подлинности системы 900 позволяет повысить доверие пользователей касательно предоставленных драйверов.
В соответствии с одним аспектом настоящего изобретения компонент 902 DSPI может использовать компонент 912 обучения, чтобы обеспечить установление обмена данными между сервером 906 RFID и устройством 904 RFID. Компонент 912 обучения может использовать методики обучения машины (к примеру, искусственного интеллекта), чтобы определять, например, действия/поведение поставщиков, действия/поведение устройств, тенденции безопасности и т.д. Компонент 912 обучения может анализировать информацию, ассоциированную с компонентом 908 предыстории, такую как, например, архивные данные и/или журналы действий, чтобы определять, может ли поставщик реализовать интерфейс, заданный компонентом 902 DSPI. Более того, при определении того, должно ли конкретное устройство быть подсоединено и/или обслужено, компонент 912 обучения может анализировать характеристики и/или шаблоны поведения, определенные, по меньшей мере, частично на основе методик искусственного интеллекта.
Следует принимать во внимание, что компонент 908 предыстории, компонент 910 безопасности и/или компонент 912 обучения может использовать устройство 914 хранения данных, чтобы сохранять данные. Устройство 914 хранения данных может быть размещено внутри компонента 902 DSPI и/или удаленного сервера. Более того, устройством 914 хранения данных может быть, например, либо энергозависимая, либо энергонезависимая память, либо оно может включать в себя энергозависимую и энергонезависимую память. В качестве иллюстрации, но не ограничения, энергонезависимая память может включать в себя постоянное запоминающее устройство (ПЗУ), программируемое ПЗУ (PROM), электрически программируемое ПЗУ (EPROM), электрически программируемое стираемое ПЗУ (EEPROM) или флэш-память. Энергозависимая память может включать в себя оперативное запоминающее устройство (ОЗУ), которое выступает в качестве внешнего кэша. В качестве иллюстрации, но не ограничения, ОЗУ доступно во многих формах, например статическое ОЗУ (SRAM), динамическое ОЗУ (DRAM), синхронное DRAM (SDRAM), SDRAM с двойной скоростью передачи данных (DDR SDRAM), усовершенствованное SDRAM (ESDRAM), Rambus direct RAM (RDRAM), direct Rambus dynamic RAM (DRDRAM) и Rambus dynamic RAM (RDRAM). Подразумевается, что устройство 914 хранения данных, соответствующее настоящим системам и способам, содержит, но не в ограничительном смысле, эти и любые другие подходящие типы памяти.
Фиг.10-12 иллюстрируют методики в соответствии с настоящим изобретением. Для упрощения пояснения методики изображены и описаны как последовательности действий. Следует понимать и принимать во внимание, что настоящее изобретение не ограничено проиллюстрированными действиями и/или последовательностью действий, например действия могут осуществляться в другой последовательности и/или параллельно и с другими действиями, не представленными и не описанными в настоящем документе. Более того, не все проиллюстрированные действия могут быть необходимы, чтобы реализовать методики в соответствии с настоящим изобретением. Помимо этого, специалисты в данной области техники поймут и примут во внимание, что методики могут быть альтернативно представлены как последовательности взаимосвязанных состояний или событий посредством схемы состояний или событий.
Фиг.10 иллюстрирует методику 1000, которая обеспечивает обмен данными с устройством посредством использования единообразного подхода к взаимодействию. На этапе 1002 поставщики могут быть загружены на сервер. В частности, контейнер SPI может загружать поставщика(ов) на сервер RFID. После загрузки поставщиков на сервер версия SPI может быть проверена на предмет совместимости с этим сервером. Более того, драйвер(ы) может быть зарегистрирован в сервере RFID, чтобы предоставлять совместимый драйвер(ы) (к примеру, цифровая проверка).
На этапе 1004 устройство обнаруживают и конфигурируют. При обнаружении действуют так, чтобы создавался экземпляр одного компонента на каждого поставщика, и устройства могли быть использованы. Более того, поставщик обрабатывает поток обнаружения в ходе процесса обнаружения. После обнаружения устройства строка может предоставлять информацию, необходимую, чтобы подсоединять и/или конфигурировать устройство. Например, строка может быть в формате языка разметки (к примеру, расширяемого языка разметки (XML), языка гипертекстовой разметки (HTML), стандартного обобщенного языка разметки (SGML) и расширяемого языка гипертекстовой разметки (XHTML) и т.д.), имеющего такую информацию, как, например, но не в ограничительном смысле, уникальный идентификатор устройства, имя поставщика, имя механизма транспортировки и т.д.
Далее на этапе 1006 интерфейс может быть задан и использован, чтобы обеспечить единообразное обслуживание устройства. После того как поставщик загружен в сервер RFID и устройство обнаружено и/или сконфигурировано, интерфейс(ы) может быть использован поставщиком, чтобы обмениваться данными с помощью единообразных методик. Различные интерфейсы могут обеспечивать обнаружение и конфигурирование новых устройств, а также дополнительно управление обменом данными и соединениями для всех устройств (к примеру, новыми и установленными). Посредством использования единообразной методики обеспечивается нормализация между множеством стандартов.
Фиг.11 иллюстрирует методику 1100, которая обеспечивает обмен данными с устройством. На этапе 1102 поставщик загружают на сервер RFID. После аутентификации поставщик загружают, при этом множество услуг может быть предоставлено единообразно посредством использования, по меньшей мере, одного интерфейса. На этапе 1104 задают уровень сообщений и/или транспортный уровень. Управление обменом сообщениями и/или соединениями предоставляется на уровне сообщений и/или транспортном уровне. Например, канал отправки может использовать "SendMessage()", чтобы осуществлять обмен сообщениями. Помимо этого, первый канал приема для ответов может реализовать "CmdResponseEvent," тогда как второй канал приема для уведомлений может использовать "NotificationEvent". Управление соединениями может быть обеспечено с помощью строки XML. Следует принимать во внимание, что поставщик может поддерживать соединение с устройством до тех пор, пока это соединение не закрыто с помощью функции "Close()".
На этапе 1106 устройство(а) может быть обнаружено и сконфигурировано посредством использования уровня сообщений и/или транспортного уровня. Обнаружение и конфигурирование устройства выполняется с помощью пар обмена сообщениями. Осуществляют обмен парами обмена сообщениями между сервером и устройством. Следует принимать во внимание, что пары обмена сообщениями являются асинхронными и могут быть сопоставлены с помощью идентификации сообщений. Как говорилось выше, "SendMessage()" может быть использована, чтобы отправлять запросы устройству, тогда как ответы и уведомления принимаются с помощью "CmdResponseEvent" и "NotificationEvent" соответственно. Более того, пары обмена сообщениями могут использовать свойства, чтобы конфигурировать устройство(а). Следует принимать во внимание, что стандартные свойства также могут быть заданы и реализованы посредством процесса конфигурирования и/или обнаружения.
Далее на этапе 1108 задают и используют интерфейс, чтобы обеспечивать единообразное обслуживание посредством сервера RFID обнаруженным и сконфигурированным устройствам. Пары обмена сообщениями могут предоставить единообразные методики, чтобы обмениваться данными с наследуемыми и/или новыми распознанными устройствами. Следует принимать во внимание, что множество интерфейсов может быть задано для управления обнаружением, конфигурированием, обменом данными и соединениями. В общем, способ 1100 может предоставлять уровень абстрагирования, чтобы обмениваться данными и управлять устройствами единообразно.
Фиг.12 иллюстрирует методику 1200, которая обеспечивает единообразный подход к обмену данными и/или управлению устройством. На этапе 1202 загружают поставщики RFID на сервер RFID, чтобы предоставлять услуги. Следует принимать во внимание, что новые поставщики обнаруживаются и загружаются соответственно после аутентификации и проверки подлинности. На этапе 1204 задают уровень сообщений и транспортный уровень, предоставляющие возможности обмена данными от компонента интерфейса поставщика служб устройств (DSPI) и устройства RFID. На этапе 1206 выполняют определение того, обнаружено ли новое устройство. Если новое устройство обнаружено, процесс переходит к этапу 1208, на котором устройство подсоединяют, аутентифицируют и конфигурируют надлежащим образом. Если новое устройство не обнаружено, процесс переходит к этапу 1210, на котором может быть задан и использован интерфейс, чтобы предоставлять единообразное обслуживание обнаруженным (к примеру, выявленным, проверенным и/или аутентифицированным) устройствам RFID.
Следует принимать во внимание, что процесс 1200 обеспечивает постоянный опрос и/или периодическое определение того, представлены ли новый поставщик и/или новые ассоциированные устройства в сервере RFID. Другими словами, при предоставлении единообразного обслуживания обнаруженным устройствам процесс может переходить к этапу 1202 после обнаружения нового поставщика, при этом поставщик может быть загружен, а ассоциированные устройства обнаружены, подсоединены и аутентифицированы. Более того, следует принимать во внимание, что новое устройство может быть определено на ранее используемом поставщике. Таким образом, процесс позволяет обнаруживать и конфигурировать это новое устройство надлежащим образом. По существу непрерывный опрос и/или периодическая проверка может использовать определение новых устройств и/или поставщиков.
Чтобы предоставить дополнительный контекст для реализации различных аспектов настоящего изобретения, фиг.13-14 и последующее обсуждение предназначены, чтобы предоставить краткое общее описание подходящей вычислительной среды, в которой могут быть реализованы различные аспекты настоящего изобретения. Хотя изобретение описано в общем контексте машиноисполняемых инструкций программы вычислительной машины (компьютера), которая запущена на локальной вычислительной машине и/или удаленной вычислительной машине, специалисты в данной области техники признают, что изобретение также может быть реализовано в сочетании с другими программными модулями. Программные модули обычно включают в себя процедуры, программы, компоненты, структуры данных и т.д., которые выполняют отдельные задачи и/или реализуют отдельные абстрактные типы данных.
Более того, специалисты в данной области техники примут во внимание, что способы согласно изобретению могут быть применены на практике с другими конфигурациями вычислительной системы, в том числе однопроцессорными или многопроцессорными вычислительными системами, миниЭВМ, мейнфреймами, а также персональными вычислительными машинами, "карманными" вычислительными устройствами, основанной на микропроцессорах и/или программируемой бытовой электронной аппаратурой и т.п., каждая из которых может оперативно обмениваться данными с одним или более ассоциированными устройствами. Проиллюстрированные аспекты изобретения также могут быть реализованы на практике в распределенных вычислительных средах, в которых определенные задачи выполняются удаленными обрабатывающими устройствами, которые связаны через сеть обмена данными. Тем не менее, некоторые, если не все аспекты изобретения могут быть применены на практике на автономных вычислительных машинах. В распределенной вычислительной среде программные модули могут быть размещены на локальных и/или удаленных устройствах хранения данных.
Фиг.13 - это блок-схема примера вычислительной среды 1300, с которой может взаимодействовать настоящее изобретение. Система 1300 включает в себя один или более клиентов 1310. Клиентом(ами) 1310 могут быть аппаратные средства и/или программное обеспечение (к примеру, потоки, процессы, вычислительные устройства). Система 1300 также включает в себя один или более серверов 1320. Сервером(ами) 1320 могут быть аппаратные средства и/или программное обеспечение (к примеру, потоки, процессы, вычислительные устройства). Серверы 1320 могут вмещать потоки, чтобы выполнять преобразования, например, посредством использования настоящего изобретения.
Один вероятный обмен данными между клиентом 1310 и сервером 1320 может быть в форме пакета данных, приспособленного для передачи между двумя или более процессами вычислительной машины. Система 1300 включает в себя структуру 1340 обмена данными, которая может быть использована, чтобы обеспечить обмен данными между клиентом(ами) 1310 и сервером(ами) 1320. Клиент(ы) 1310 в рабочем состоянии подсоединены к одному или более хранилищам 1350 данных клиента, которые могут быть использованы, чтобы сохранять информацию локально на клиенте(ах) 1310. Также, сервер(ы) 1320 в рабочем состоянии подсоединены к одному или более хранилищам 1330 данных сервера, которые могут быть использованы, чтобы сохранять информацию локально на серверах 1340.
Что касается фиг.14, иллюстративная среда 1400 для реализации различных аспектов изобретения включает в себя вычислительную машину 1412. Вычислительная машина 1412 включает в себя процессор 1414, системную память 1416 и системную шину 1418. Системная шина 1418 соединяет компоненты системы, в том числе, но не в ограничительном смысле, системную память 1416, с процессором 1414. Процессором 1414 может быть любой из различных доступных процессоров. Архитектуры с двумя микропроцессорами и другие многопроцессорные архитектуры также могут быть использованы в качестве процессора 1414.
Системная шина 1418 может быть любого из нескольких типов структур(ы) шин, в том числе шины памяти или контроллера памяти, периферийной шины или внешней шины и/или локальной шины, используя любую из множества архитектур шин, в том числе, но не в ограничительном смысле, 11-битную шину, шину промышленного стандарта (ISA), шину микроканальной архитектуры (MCA), расширенную шину ISA (EISA), встроенный интерфейс накопителей (IDE), локальную шину Ассоциации по стандартам в области видеоэлектроники (VLB), шину соединения периферийных компонентов (PCI), универсальную последовательную шину (USB), ускоренный графический порт (AGP), шину Международной ассоциации производителей плат памяти для персональных вычислительных машин (PCMCIA) и шину интерфейса малых вычислительных систем (SCSI).
Системная память 1416 включает в себя энергозависимую память 1420 и энергонезависимую память 1422. Базовая система ввода-вывода (BIOS), содержащая основные процедуры, чтобы передавать информацию между элементами в вычислительной машине 1412, например при загрузке, хранится в энергонезависимой памяти 1422. В качестве иллюстрации, но не ограничения, энергонезависимая память 1422 может включать в себя постоянное запоминающее устройство (ПЗУ), программируемое ПЗУ (PROM), электрически программируемое ПЗУ (EPROM), электрически стираемое программируемое ПЗУ (EEPROM) или флэш-память. Энергозависимая память 1420 включает в себя оперативное запоминающее устройство (ОЗУ), которое действует как внешний кэш. В качестве иллюстрации, но не ограничения, ОЗУ доступно во многих формах, например статическое ОЗУ (SRAM), динамическое ОЗУ (DRAM), синхронное DRAM (SDRAM), SDRAM с двойной скоростью передачи данных (DDR SDRAM), усовершенствованное SDRAM (ESDRAM), Rambus direct RAM (RDRAM), direct Rambus dynamic RAM (DRDRAM) и Rambus dynamic RAM (RDRAM).
Вычислительная машина 1412 также включает в себя сменный/стационарный, энергозависимый/энергонезависимый носитель данных вычислительной машины. Фиг.14 иллюстрирует, например, накопитель 1424 на дисках. Накопитель 1424 на дисках включает в себя, но не в ограничительном смысле, такие устройства, как накопитель на магнитных дисках, накопитель на гибких дисках, ленточный накопитель, накопитель Jaz, накопитель Zip, накопитель LS-100, карту флэш-памяти или карту Memory Stick. Помимо этого, накопитель 1424 на дисках может включать в себя носитель данных независимо или в сочетании с другим носителем данных, в том числе, но не в ограничительном смысле, накопитель на оптических дисках, например устройство чтения компакт-дисков (CD-ROM), накопитель на записываемых компакт-дисках (CD-R Drive), накопитель на перезаписываемых компакт-дисках (CD-RW Drive) или накопитель чтения универсальных цифровых дисков (DVD-ROM). Чтобы обеспечить подключение дисковых устройств 1424 к системной шине 1418, в типичном варианте используется интерфейс сменной или стационарной памяти, например интерфейс 1426.
Следует принимать во внимание, что фиг.14 описывает программное обеспечение, которое выступает в качестве посредника между пользователями и базовыми ресурсами вычислительной машины, описанными в подходящей операционной среде 1400. Такое программное обеспечение включает в себя операционную систему 1428. Операционная система 1428, которая может быть сохранена на накопителе 1424 на дисках, служит для того, чтобы контролировать и распределять ресурсы вычислительной системы 1412. Системные приложения 1430 используют преимущества управления ресурсами операционной системой 1428 посредством программных модулей 1432 и программных данных 1434, сохраненных либо в системной памяти 1416, либо на накопителе 1424 на дисках. Следует принимать во внимание, что изобретение может быть реализовано с различными операционными системами или сочетаниями операционных систем.
Пользователь вводит команды или информацию в вычислительную машину 1412 посредством устройств(а) 1436 ввода. Устройства 1436 ввода включают в себя, но не в ограничительном смысле, координатно-указательное устройство, такое как мышь, шаровой манипулятор, перо, сенсорную панель, клавиатуру, микрофон, джойстик, игровую панель, спутниковую антенну, сканер, плату ТВ-тюнера, цифровую камеру, цифровую видеокамеру, Web-камеру и т.п. Эти и другие устройства ввода подключаются к процессору 1414 через системную шину 1418 посредством интерфейсного порта(ов) 1438. Интерфейсный порт(ы) 1438 включает в себя, например, последовательный порт, параллельный порт, игровой порт и универсальную последовательную шину (USB). Устройство(а) 1440 вывода использует некоторые из тех же типов портов, что и устройство(а) 1436 ввода. Таким образом, например, порт USB может быть использован для обеспечения ввода в вычислительную машину 1412 и для обеспечения вывода информации из вычислительной машины 1412 на устройство 1440 вывода. Адаптер 1442 вывода предоставлен, чтобы проиллюстрировать, что существуют некоторые устройства 1440 вывода (такие, как мониторы, динамики и принтеры) среди прочих устройств 1440 вывода, которые требуют специальных адаптеров. Адаптеры 1442 вывода включают в себя, в качестве иллюстрации, но не ограничения, видео- и звуковые платы, которые обеспечивают средство соединения между устройством 1440 вывода и системной шиной 1418. Следует заметить, что другие устройства и/или системы устройств предоставляют возможности как ввода, так и вывода, такие как удаленная вычислительная машина(ы) 1444.
Вычислительная машина 1412 может работать в сетевой среде, используя логические соединения с одной или более удаленными вычислительными машинами, например удаленными вычислительными машинами 1444. Удаленной вычислительной машиной(ами) 1444 может быть персональная вычислительная машина, сервер, маршрутизатор, сетевая ПЭВМ, рабочая станция, устройство на базе микропроцессора, одноранговое устройство или другой стандартный сетевой узел и т.п. и в типичном случае включает в себя большинство или все из элементов, описанных относительно вычислительной машины 1412. В целях краткости, только запоминающее устройство 1446 проиллюстрировано с удаленной вычислительной машиной(ами) 1444. Удаленные вычислительные машины 1444 логически подсоединены к вычислительной машине 1412 посредством сетевого интерфейса 1448 и затем физически подсоединены через коммуникационное соединение 1450 связи. Сетевой интерфейс 1448 заключает в себе проводные и/или беспроводные сети обмена данными, такие как локальные сети (LAN) и глобальные сети (WAN). Технологии LAN включают в себя распределенный интерфейс передачи данных по волоконно-оптическим каналам (FDDI), распределенный проводной интерфейс передачи данных (CDDI), Ethernet, Token Ring и т.п. Технологии WAN включают в себя, но не в ограничительном смысле, двухточечные каналы связи, сети с коммутацией каналов, такие как цифровые сети с комплексными услугами (ISDN) и их разновидности, сети с коммутацией пакетов и цифровые абонентские линии (DSL).
Коммуникационное соединение(я) 1450 означает аппаратные средства/программное обеспечение, используемые, чтобы подключить сетевой интерфейс 1448 к шине 1418. Хотя коммуникационное соединение 1450 показано в целях иллюстративной ясности внутри вычислительной машины 1412, оно также может быть внешним по отношению к вычислительной машине 1412. Аппаратные средства/программное обеспечение, необходимые для подключения к сетевому интерфейсу 1448, включают в себя, исключительно в иллюстративных целях, внутренние и внешние технологии, например модемы, в том числе модемы на регулярных телефонных линиях, кабельные модемы и DSL-модемы, ISDN-адаптеры и платы Ethernet.
То, чтобы было описано выше, включает в себя примеры настоящего изобретения. Конечно, невозможно описать каждое вероятное сочетание компонентов или методик в целях описания настоящего изобретения, но обычный специалист в данной области техники может признать, что многие дополнительные сочетания и перестановки настоящего изобретения допустимы. Следовательно, подразумевается, что настоящее изобретение охватывает все подобные преобразования, модификации и разновидности, которые попадают в рамки объема, определяемого прилагаемой формулой изобретения.
В частности и относительно различных функций, выполняемых вышеописанными компонентами, устройствами, каналами, системам и т.п., подразумевается, что термины (в том числе ссылка на "средство"), используемые, чтобы описывать эти компоненты, соответствуют, если не указано иное, любому компоненту, который выполняет указанную функцию описанного компонента (к примеру, функциональный эквивалент), даже если он не эквивалентен структурно раскрытой структуре, которая выполняет функцию в проиллюстрированных в данном документе типичных аспектах изобретения. В этом смысле также следует принимать во внимание, что изобретение включает в себя систему, а также машиночитаемый носитель, имеющий машиноисполняемые инструкции для выполнения действий и/или событий различных способов согласно изобретению.
Помимо этого, хотя конкретный признак изобретения, возможно, был раскрыт относительно только одной из нескольких реализаций, этот признак может быть объединен с одним или более признаков других реализаций, что может быть требуемо и предпочтительно для любого данного или конкретного приложения. Более того, в тех рамках, в которых термины "включает в себя" и "в том числе" и их варианты используются либо в подробном описании, либо в формуле изобретения, эти термины должны быть включающими аналогично термину "содержит".

Claims (14)

1. Сервер для взаимодействия с одним или более устройствами радиочастотной идентификации (RFID), содержащий
один или более поставщиков, загруженных на сервер, причем каждый их этих одного или более поставщиков представляет собой машиноисполняемый объект, ассоциированный с по меньшей мере одним из упомянутых одного или более устройств RFID;
компонент интерфейса поставщиков служб устройств (DSPI), который задает интерфейс, который должен быть реализован каждым из упомянутых одного или более поставщиков для обеспечения обмена данными с ассоциированным по меньшей мере одним устройством RFID и преобразования протоколов для предоставления функциональных возможностей упомянутого устройства RFID серверу единообразным образом, независимо от изготовителя устройства и стандарта протокола; и компонент для анализа при установлении обмена данными между устройством RFID и сервером предварительно сохраненной информации о предыстории действий по меньшей мере некоторых из поставщиков и/или устройств RFID, чтобы определить, может ли ассоциированный поставщик реализовать упомянутый интерфейс.
2. Сервер по п.1, в котором по меньшей мере некоторые из поставщиков являются независимыми от процессора платформенными компоновочными блоками.
3. Сервер по п.1, в котором интерфейс содержит компонент ответа на запросы, который задает обмен сообщениями, который является объектом команды и ответа, причем команда и ответ являются асинхронными и сопоставляются с помощью идентификатора сообщения.
4. Сервер по п.3, в котором обмен сообщениями является парой запрос-ответ, которая является по меньшей мере одним из команды, свойства и уведомления.
5. Сервер по п.1, в котором интерфейс содержит компонент интерфейса устройств, который задает уровень, причем этот уровень представляет собой одно из уровня сообщений и транспортного уровня.
6. Сервер по п.1, в котором интерфейс содержит компонент интерфейса обнаружения устройств, который задает механизм обнаружения устройств с помощью заданной языком разметки строки, заключающей в себе данные по соединениям устройств, причем механизм обнаружения устройств подвергает обработке один компонент DSPI на каждого поставщика.
7. Сервер по п.1, в котором интерфейс содержит компонент контейнера интерфейса поставщиков служб (SPI), который обеспечивает одно из совместимой версии SPI, цифровой аутентификации драйвера и регистрации драйвера.
8. Сервер по п.1, в котором интерфейс использует компонент безопасности, который обеспечивает одно из защищенного соединения, аутентификации поставщика и проверки подлинности устройства RFID.
9. Реализуемый сервером способ обеспечения взаимодействия с одним или более устройствами радиочастотной идентификации (RFID), содержащий этапы, на которых
загружают один или более поставщиков на сервер, причем каждый из этих одного или более поставщиков представляет собой машиноисполняемый объект, ассоциированный с по меньшей мере одним из упомянутых одного или более устройств RFID;
задают интерфейс, который должен быть реализован каждым из упомянутых одного или более поставщиков для обеспечения обмена данными с ассоциированным по меньшей мере одним устройством RFID и преобразования протоколов для предоставления функциональных возможностей устройства RFID серверу единообразным образом, независимо от изготовителя устройства и стандарта протокола; и
при установлении обмена данными между устройством RFID и сервером выполняют анализ предварительно сохраненной информации о предыстории действий по меньшей мере некоторых из поставщиков и/или устройств RFID, чтобы определить, может ли ассоциированный поставщик реализовать упомянутый интерфейс.
10. Способ по п.9, дополнительно содержащий этапы, на которых задают уровень сообщений и транспортный уровень и обнаруживают и конфигурируют устройство RFID.
11. Способ по п.10, дополнительно содержащий пару обмена сообщениями, которая является асинхронной.
12. Способ по п.11, в котором пара обмена сообщениями представляет собой одно из следующего: запрос и ответ, запрос и реакция, запрос и уведомление и запрос и свойство.
13. Способ по п.9, дополнительно содержащий этап, на котором расширяют интерфейс до, по меньшей мере, стороннего производителя устройств, Web-службы и сенсорного устройства реального времени.
14. Считываемый компьютером носитель, на котором сохранены исполняемые компьютером команды для осуществления способа по п.9.
RU2005127418/08A 2004-09-01 2005-08-31 Интерфейс поставщиков служб устройств RU2421811C2 (ru)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US60628104P 2004-09-01 2004-09-01
US60/606,281 2004-09-01
US60657704P 2004-09-02 2004-09-02
US60/606,577 2004-09-02
US11/061,337 2005-02-18

Publications (2)

Publication Number Publication Date
RU2005127418A RU2005127418A (ru) 2007-03-10
RU2421811C2 true RU2421811C2 (ru) 2011-06-20

Family

ID=37992257

Family Applications (7)

Application Number Title Priority Date Filing Date
RU2005127421/08A RU2463650C2 (ru) 2004-09-01 2005-08-31 Архитектура, модель программирования и api
RU2005127417/08A RU2402069C2 (ru) 2004-09-01 2005-08-31 Внутренняя структура rfid-cepbepa
RU2011118882/08A RU2571611C2 (ru) 2004-09-01 2005-08-31 Фильтрация и предупреждение на основе правил
RU2005127416/08A RU2455683C2 (ru) 2004-09-01 2005-08-31 Информационные системы рчид, использующие коммерческое приложение
RU2005127424/09A RU2005127424A (ru) 2004-09-01 2005-08-31 Фильтрация и предупреждение на основе правил
RU2005127420/09A RU2398268C2 (ru) 2004-09-01 2005-08-31 Схема языка разметки приложения считывателя
RU2005127418/08A RU2421811C2 (ru) 2004-09-01 2005-08-31 Интерфейс поставщиков служб устройств

Family Applications Before (6)

Application Number Title Priority Date Filing Date
RU2005127421/08A RU2463650C2 (ru) 2004-09-01 2005-08-31 Архитектура, модель программирования и api
RU2005127417/08A RU2402069C2 (ru) 2004-09-01 2005-08-31 Внутренняя структура rfid-cepbepa
RU2011118882/08A RU2571611C2 (ru) 2004-09-01 2005-08-31 Фильтрация и предупреждение на основе правил
RU2005127416/08A RU2455683C2 (ru) 2004-09-01 2005-08-31 Информационные системы рчид, использующие коммерческое приложение
RU2005127424/09A RU2005127424A (ru) 2004-09-01 2005-08-31 Фильтрация и предупреждение на основе правил
RU2005127420/09A RU2398268C2 (ru) 2004-09-01 2005-08-31 Схема языка разметки приложения считывателя

Country Status (2)

Country Link
US (2) US7382260B2 (ru)
RU (7) RU2463650C2 (ru)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013192341A1 (en) * 2012-06-20 2013-12-27 Infotel Broadband Services, Ltd. Method and system for providing a service over a private network
RU2606565C2 (ru) * 2012-09-14 2017-01-10 Интел Корпорейшн Агент микропрограммного обеспечения
US9888044B2 (en) 2014-09-15 2018-02-06 Reliance Jio Infocomm Usa, Inc. Extending communication services to a consumption device using a proxy device
US10123360B2 (en) 2014-01-22 2018-11-06 Reliance Jio Infocomm Limited System and method for secure wireless communication
US10531358B2 (en) 2015-07-30 2020-01-07 Reliace Jio Infocomm Usa, Inc. Method and system for routing IP based messaging, voice and video calling based on the network parameters the device is connected to and the location

Families Citing this family (232)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2350971A (en) * 1999-06-07 2000-12-13 Nokia Mobile Phones Ltd Security Architecture
US8250357B2 (en) 2000-09-13 2012-08-21 Fortinet, Inc. Tunnel interface for securing traffic over a network
US7701341B2 (en) * 2004-09-01 2010-04-20 Microsoft Corporation Device service provider interface
US7204409B2 (en) * 2004-09-01 2007-04-17 Microsoft Corporation Reader application markup language schema
US7304586B2 (en) 2004-10-20 2007-12-04 Electro Industries / Gauge Tech On-line web accessed energy meter
US9080894B2 (en) 2004-10-20 2015-07-14 Electro Industries/Gauge Tech Intelligent electronic device for receiving and sending data at high speeds over a network
US7747733B2 (en) 2004-10-25 2010-06-29 Electro Industries/Gauge Tech Power meter having multiple ethernet ports
JP2006133038A (ja) * 2004-11-04 2006-05-25 Denso Corp ナビゲーション装置
US7551081B2 (en) 2004-11-10 2009-06-23 Rockwell Automation Technologies, Inc. Systems and methods that integrate radio frequency identification (RFID) technology with agent-based control systems
US7339476B2 (en) 2004-11-10 2008-03-04 Rockwell Automation Technologies, Inc. Systems and methods that integrate radio frequency identification (RFID) technology with industrial controllers
US8190381B2 (en) 2005-01-27 2012-05-29 Electro Industries/Gauge Tech Intelligent electronic device with enhanced power quality monitoring and communications capabilities
US8930153B2 (en) 2005-01-27 2015-01-06 Electro Industries/Gauge Tech Metering device with control functionality and method thereof
US8160824B2 (en) 2005-01-27 2012-04-17 Electro Industries/Gauge Tech Intelligent electronic device with enhanced power quality monitoring and communication capabilities
US8620608B2 (en) 2005-01-27 2013-12-31 Electro Industries/Gauge Tech Intelligent electronic device and method thereof
US20070006298A1 (en) * 2005-06-30 2007-01-04 Malone Christopher G Controlling access to a workstation system via wireless communication
US7607014B2 (en) * 2005-06-30 2009-10-20 Hewlett-Packard Development Company, L.P. Authenticating maintenance access to an electronics unit via wireless communication
US7733906B2 (en) * 2005-06-30 2010-06-08 Intel Corporation Methodology for network port security
US7788352B2 (en) * 2005-07-14 2010-08-31 Yahoo! Inc. System and method for servicing a user device
US20070014243A1 (en) * 2005-07-14 2007-01-18 Yahoo! Inc. System and method for provisioning a user device
US8112549B2 (en) * 2005-07-14 2012-02-07 Yahoo! Inc. Alert mechanism for notifying multiple user devices sharing a connected-data-set
US8417782B2 (en) * 2005-07-14 2013-04-09 Yahoo! Inc. Universal calendar event handling
US7388491B2 (en) * 2005-07-20 2008-06-17 Rockwell Automation Technologies, Inc. Mobile RFID reader with integrated location awareness for material tracking and management
US7764191B2 (en) 2005-07-26 2010-07-27 Rockwell Automation Technologies, Inc. RFID tag data affecting automation controller with internal database
US8260948B2 (en) 2005-08-10 2012-09-04 Rockwell Automation Technologies, Inc. Enhanced controller utilizing RFID technology
US7870090B2 (en) * 2005-08-22 2011-01-11 Trane International Inc. Building automation system date management
CA2620073C (en) * 2005-08-22 2017-08-01 Trane International Inc. Building automation system facilitating user customization
US8050801B2 (en) * 2005-08-22 2011-11-01 Trane International Inc. Dynamically extensible and automatically configurable building automation system and architecture
US8024054B2 (en) * 2005-08-22 2011-09-20 Trane International, Inc. Building automation system facilitating user customization
US7904186B2 (en) * 2005-08-22 2011-03-08 Trane International, Inc. Building automation system facilitating user customization
US8055387B2 (en) * 2005-08-22 2011-11-08 Trane International Inc. Building automation system data management
US7917232B2 (en) * 2005-08-22 2011-03-29 Trane International Inc. Building automation system data management
US8099178B2 (en) * 2005-08-22 2012-01-17 Trane International Inc. Building automation system facilitating user customization
WO2007024573A2 (en) * 2005-08-22 2007-03-01 Trane International Inc. Dynamically extensible and automatically configurable building automation system and architecture
US8055386B2 (en) * 2005-08-22 2011-11-08 Trane International Inc. Building automation system data management
US7510110B2 (en) * 2005-09-08 2009-03-31 Rockwell Automation Technologies, Inc. RFID architecture in an industrial controller environment
US7931197B2 (en) 2005-09-20 2011-04-26 Rockwell Automation Technologies, Inc. RFID-based product manufacturing and lifecycle management
US7446662B1 (en) 2005-09-26 2008-11-04 Rockwell Automation Technologies, Inc. Intelligent RFID tag for magnetic field mapping
US8025227B2 (en) 2005-09-30 2011-09-27 Rockwell Automation Technologies, Inc. Access to distributed databases via pointer stored in RFID tag
US8515348B2 (en) 2005-10-28 2013-08-20 Electro Industries/Gauge Tech Bluetooth-enable intelligent electronic device
US8639543B2 (en) * 2005-11-01 2014-01-28 International Business Machines Corporation Methods, systems, and media to improve employee productivity using radio frequency identification
DE502005003131D1 (de) * 2005-11-25 2008-04-17 Siemens Ag Automatisierungssystem mit einem angeschlossenen RFID-identifizierten Sensor oder Aktor
US7378966B2 (en) * 2006-01-04 2008-05-27 Microsoft Corporation RFID device groups
US8018322B2 (en) * 2006-01-31 2011-09-13 Oracle International Corporation Graphical interface for RFID edge server
US8373545B2 (en) * 2006-01-31 2013-02-12 Oracle International Corporation EPC provisioning system using business rules
US20070208832A1 (en) * 2006-01-31 2007-09-06 Bea Systems, Inc. RFID edge server allowing configuration updates without restart
JP2007249312A (ja) * 2006-03-14 2007-09-27 Yokogawa Electric Corp フィールド機器管理装置およびフィールド機器管理方法
US20080010535A1 (en) * 2006-06-09 2008-01-10 Microsoft Corporation Automated and configurable system for tests to be picked up and executed
US7956724B2 (en) * 2006-06-15 2011-06-07 Microsoft Corporation Support for reliable end to end messaging of tags in an RFID infrastructure
US8207822B2 (en) * 2006-06-15 2012-06-26 Microsoft Corporation Support for batching of events, and shredding of batched events in the RFID infrastructure platform
US20080001711A1 (en) * 2006-06-15 2008-01-03 Microsoft Corporation Reliability of execution for device provider implementations
US7868738B2 (en) * 2006-06-15 2011-01-11 Microsoft Corporation Device simulator framework for an RFID infrastructure
US7675418B2 (en) * 2006-06-15 2010-03-09 Microsoft Corporation Synchronous command model for RFID-enabling applications
US20080094177A1 (en) * 2006-06-16 2008-04-24 Visible Assets, Inc. Visible Assets Dot-Tag Visibility Network Architecture
US20080046567A1 (en) * 2006-08-18 2008-02-21 Microsoft Corporation Automatic detection and integration of network workloads
US20080065874A1 (en) * 2006-09-07 2008-03-13 Andrew Geissler System and method for dynamic determination of system topology in a multiple building block server system
US8116243B2 (en) 2006-10-05 2012-02-14 Electronics And Telecommunications Research Institute Wireless sensor network and adaptive method for monitoring the security thereof
US20080101400A1 (en) * 2006-10-30 2008-05-01 Nokia Corporation Managing attachment of a wireless terminal to local area networks
US8233040B2 (en) * 2006-12-01 2012-07-31 Accu-Sort Systems, Inc. Modular camera and camera system
RU2476039C2 (ru) * 2006-12-06 2013-02-20 Конинклейке Филипс Электроникс Н.В. Способ и устройство для замены устройства в сети
US20080140867A1 (en) * 2006-12-11 2008-06-12 Honeywell International Inc. Apparatus for non-disruptively disconnecting a peripheral device
US20080174404A1 (en) * 2007-01-23 2008-07-24 Microsoft Corporation Dynamic updates in rfid manager
US8245219B2 (en) * 2007-01-25 2012-08-14 Microsoft Corporation Standardized mechanism for firmware upgrades of RFID devices
KR100936218B1 (ko) * 2007-02-08 2010-01-11 엘지전자 주식회사 빌딩관리시스템의 디바이스 자동인식 방법
US8587949B2 (en) 2007-03-27 2013-11-19 Electro Industries/Gauge Tech Electronic meter having user-interface and central processing functionality on a single printed circuit board
US9989618B2 (en) 2007-04-03 2018-06-05 Electro Industries/Gaugetech Intelligent electronic device with constant calibration capabilities for high accuracy measurements
US20130275066A1 (en) 2007-04-03 2013-10-17 Electro Industries/Gaugetech Digital power metering system
US11307227B2 (en) 2007-04-03 2022-04-19 Electro Industries/Gauge Tech High speed digital transient waveform detection system and method for use in an intelligent electronic device
US10845399B2 (en) 2007-04-03 2020-11-24 Electro Industries/Gaugetech System and method for performing data transfers in an intelligent electronic device
US7991910B2 (en) 2008-11-17 2011-08-02 Amazon Technologies, Inc. Updating routing information based on client location
US8028090B2 (en) 2008-11-17 2011-09-27 Amazon Technologies, Inc. Request routing utilizing client location information
US20090085743A1 (en) * 2007-09-28 2009-04-02 Symbol Technologies, Inc. Methods and systems for controlling operations of a mobile radio frequency reader based on its location
EP2212827B1 (en) 2007-10-16 2019-09-11 Accu-Sort System, Inc. Dimensioning and barcode reading system
US8041859B2 (en) * 2007-11-05 2011-10-18 Honywell International Inc. Apparatus and method for connectivity in networks capable of non-disruptively disconnecting peripheral devices
US20090122725A1 (en) * 2007-11-09 2009-05-14 Honeywell International Inc. Robust networks for non-disruptively disconnecting peripheral devices
CN103271761B (zh) 2008-01-14 2015-10-28 康文图斯整形外科公司 用于骨折修补的装置和方法
GB2457062A (en) * 2008-02-01 2009-08-05 Iti Scotland Ltd Tag reader / writer process partitioned for execution between secure and non-secure processing environments
US8601090B1 (en) 2008-03-31 2013-12-03 Amazon Technologies, Inc. Network resource identification
US7962597B2 (en) 2008-03-31 2011-06-14 Amazon Technologies, Inc. Request routing based on class
US8447831B1 (en) 2008-03-31 2013-05-21 Amazon Technologies, Inc. Incentive driven content delivery
US8321568B2 (en) 2008-03-31 2012-11-27 Amazon Technologies, Inc. Content management
US7970820B1 (en) 2008-03-31 2011-06-28 Amazon Technologies, Inc. Locality based content distribution
US8533293B1 (en) 2008-03-31 2013-09-10 Amazon Technologies, Inc. Client side cache management
US8606996B2 (en) * 2008-03-31 2013-12-10 Amazon Technologies, Inc. Cache optimization
US8156243B2 (en) 2008-03-31 2012-04-10 Amazon Technologies, Inc. Request routing
US20130031201A1 (en) * 2008-04-03 2013-01-31 Electro Industries/Gauge Tech Intelligent electronic device communication solutions for network topologies
US9482555B2 (en) 2008-04-03 2016-11-01 Electro Industries/Gauge Tech. System and method for improved data transfer from an IED
US8878393B2 (en) * 2008-05-13 2014-11-04 Qualcomm Incorporated Wireless power transfer for vehicles
US20090284369A1 (en) * 2008-05-13 2009-11-19 Qualcomm Incorporated Transmit power control for a wireless charging system
US9407681B1 (en) 2010-09-28 2016-08-02 Amazon Technologies, Inc. Latency measurement in resource requests
US9912740B2 (en) 2008-06-30 2018-03-06 Amazon Technologies, Inc. Latency measurement in resource requests
US7925782B2 (en) 2008-06-30 2011-04-12 Amazon Technologies, Inc. Request routing using network computing components
US8316124B1 (en) 2008-09-29 2012-11-20 Amazon Technologies, Inc. Managing network data display
US8122124B1 (en) 2008-09-29 2012-02-21 Amazon Technologies, Inc. Monitoring performance and operation of data exchanges
US8117306B1 (en) 2008-09-29 2012-02-14 Amazon Technologies, Inc. Optimizing content management
US7930393B1 (en) 2008-09-29 2011-04-19 Amazon Technologies, Inc. Monitoring domain allocation performance
US7865594B1 (en) 2008-09-29 2011-01-04 Amazon Technologies, Inc. Managing resources consolidation configurations
US8286176B1 (en) 2008-09-29 2012-10-09 Amazon Technologies, Inc. Optimizing resource configurations
US8060616B1 (en) 2008-11-17 2011-11-15 Amazon Technologies, Inc. Managing CDN registration by a storage provider
US8521880B1 (en) 2008-11-17 2013-08-27 Amazon Technologies, Inc. Managing content delivery network service providers
US8732309B1 (en) 2008-11-17 2014-05-20 Amazon Technologies, Inc. Request routing utilizing cost information
US8122098B1 (en) 2008-11-17 2012-02-21 Amazon Technologies, Inc. Managing content delivery network service providers by a content broker
US8073940B1 (en) 2008-11-17 2011-12-06 Amazon Technologies, Inc. Managing content delivery network service providers
US8065417B1 (en) 2008-11-17 2011-11-22 Amazon Technologies, Inc. Service provider registration by a content broker
US20100201312A1 (en) 2009-02-10 2010-08-12 Qualcomm Incorporated Wireless power transfer for portable enclosures
US9312924B2 (en) 2009-02-10 2016-04-12 Qualcomm Incorporated Systems and methods relating to multi-dimensional wireless charging
US8854224B2 (en) * 2009-02-10 2014-10-07 Qualcomm Incorporated Conveying device information relating to wireless charging
US8180824B2 (en) 2009-02-23 2012-05-15 Trane International, Inc. Log collection data harvester for use in a building automation system
US20100225470A1 (en) * 2009-03-06 2010-09-09 Manish Marwah Entity identification and information retrieval with a mobile device
US7917618B1 (en) 2009-03-24 2011-03-29 Amazon Technologies, Inc. Monitoring web site content
US8412823B1 (en) 2009-03-27 2013-04-02 Amazon Technologies, Inc. Managing tracking information entries in resource cache components
US8756341B1 (en) 2009-03-27 2014-06-17 Amazon Technologies, Inc. Request routing utilizing popularity information
US8688837B1 (en) 2009-03-27 2014-04-01 Amazon Technologies, Inc. Dynamically translating resource identifiers for request routing using popularity information
US8521851B1 (en) 2009-03-27 2013-08-27 Amazon Technologies, Inc. DNS query processing using resource identifiers specifying an application broker
US8082303B2 (en) 2009-03-30 2011-12-20 Qualcomm Incorporated Methods and apparatus for combined peer to peer and wide area network based discovery
US8782236B1 (en) 2009-06-16 2014-07-15 Amazon Technologies, Inc. Managing resources using resource expiration data
US8397073B1 (en) 2009-09-04 2013-03-12 Amazon Technologies, Inc. Managing secure content in a content delivery network
US8433771B1 (en) 2009-10-02 2013-04-30 Amazon Technologies, Inc. Distribution network with forward resource propagation
DE102009048770A1 (de) * 2009-10-08 2011-04-14 Smiths Heimann Gmbh Transportwanne in einem Röntgenprüfsystem
US7908348B2 (en) * 2009-11-30 2011-03-15 General Electric Company Dynamic installation and uninstallation system of renewable energy farm hardware
DE102009058144B4 (de) 2009-12-12 2023-10-12 Volkswagen Ag Verfahren zur Darstellung einer Funktion eines Bedienelements einer Bedienvorrichtung eines Fahrzeugs sowie eine Bedienvorrichtung und ein Fahrzeug
US8331371B2 (en) 2009-12-17 2012-12-11 Amazon Technologies, Inc. Distributed routing architecture
US8331370B2 (en) 2009-12-17 2012-12-11 Amazon Technologies, Inc. Distributed routing architecture
RU2447487C2 (ru) * 2010-01-14 2012-04-10 Сергей Сергеевич Окладников Способ разработки последовательности машинных команд вычислительной машины
WO2011088172A1 (en) 2010-01-15 2011-07-21 Brenzel Michael P Rotary-rigid orthopaedic rod
EP2523616B1 (en) 2010-01-20 2019-04-17 Conventus Orthopaedics, Inc. Apparatus for bone access and cavity preparation
US9495338B1 (en) 2010-01-28 2016-11-15 Amazon Technologies, Inc. Content distribution network
US9258201B2 (en) * 2010-02-23 2016-02-09 Trane International Inc. Active device management for use in a building automation system
US8793022B2 (en) 2010-02-26 2014-07-29 Trane International, Inc. Automated air source and VAV box association
US8219660B2 (en) * 2010-02-26 2012-07-10 Trane International Inc. Simultaneous connectivity and management across multiple building automation system networks
CN103002824B (zh) 2010-03-08 2015-07-29 康文图斯整形外科公司 用于固定骨植入物的装置及方法
US8819283B2 (en) 2010-09-28 2014-08-26 Amazon Technologies, Inc. Request routing in a networked environment
US10958501B1 (en) 2010-09-28 2021-03-23 Amazon Technologies, Inc. Request routing information based on client IP groupings
US8924528B1 (en) 2010-09-28 2014-12-30 Amazon Technologies, Inc. Latency measurement in resource requests
US8930513B1 (en) 2010-09-28 2015-01-06 Amazon Technologies, Inc. Latency measurement in resource requests
US9003035B1 (en) 2010-09-28 2015-04-07 Amazon Technologies, Inc. Point of presence management in request routing
US8938526B1 (en) 2010-09-28 2015-01-20 Amazon Technologies, Inc. Request routing management based on network components
US10097398B1 (en) 2010-09-28 2018-10-09 Amazon Technologies, Inc. Point of presence management in request routing
US8468247B1 (en) 2010-09-28 2013-06-18 Amazon Technologies, Inc. Point of presence management in request routing
US9712484B1 (en) 2010-09-28 2017-07-18 Amazon Technologies, Inc. Managing request routing information utilizing client identifiers
US8577992B1 (en) 2010-09-28 2013-11-05 Amazon Technologies, Inc. Request routing management based on network components
US8452874B2 (en) 2010-11-22 2013-05-28 Amazon Technologies, Inc. Request routing processing
US9391949B1 (en) 2010-12-03 2016-07-12 Amazon Technologies, Inc. Request routing processing
US8626950B1 (en) 2010-12-03 2014-01-07 Amazon Technologies, Inc. Request routing processing
RU2454713C1 (ru) * 2011-03-09 2012-06-27 Курское открытое акционерное общество "Прибор" Малогабаритная система сбора и регистрации полетной информации
RU2469396C1 (ru) * 2011-03-31 2012-12-10 Игорь Владимирович Тимошенко Способ авторизации абонента в системе коллективного пользования
US10467042B1 (en) 2011-04-27 2019-11-05 Amazon Technologies, Inc. Optimized deployment based upon customer locality
US10275840B2 (en) 2011-10-04 2019-04-30 Electro Industries/Gauge Tech Systems and methods for collecting, analyzing, billing, and reporting data from intelligent electronic devices
US10862784B2 (en) 2011-10-04 2020-12-08 Electro Industries/Gauge Tech Systems and methods for processing meter information in a network of intelligent electronic devices
US10771532B2 (en) 2011-10-04 2020-09-08 Electro Industries/Gauge Tech Intelligent electronic devices, systems and methods for communicating messages over a network
US10303860B2 (en) 2011-10-04 2019-05-28 Electro Industries/Gauge Tech Security through layers in an intelligent electronic device
US8904009B1 (en) 2012-02-10 2014-12-02 Amazon Technologies, Inc. Dynamic content delivery
US10021179B1 (en) 2012-02-21 2018-07-10 Amazon Technologies, Inc. Local resource delivery network
US9172674B1 (en) 2012-03-21 2015-10-27 Amazon Technologies, Inc. Managing request routing information utilizing performance information
US10623408B1 (en) 2012-04-02 2020-04-14 Amazon Technologies, Inc. Context sensitive object management
US9154551B1 (en) 2012-06-11 2015-10-06 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
US9525659B1 (en) 2012-09-04 2016-12-20 Amazon Technologies, Inc. Request routing utilizing point of presence load information
US9135048B2 (en) 2012-09-20 2015-09-15 Amazon Technologies, Inc. Automated profiling of resource usage
US9323577B2 (en) 2012-09-20 2016-04-26 Amazon Technologies, Inc. Automated profiling of resource usage
US10205698B1 (en) 2012-12-19 2019-02-12 Amazon Technologies, Inc. Source-dependent address resolution
US11816465B2 (en) 2013-03-15 2023-11-14 Ei Electronics Llc Devices, systems and methods for tracking and upgrading firmware in intelligent electronic devices
US9294391B1 (en) 2013-06-04 2016-03-22 Amazon Technologies, Inc. Managing network computing components utilizing request routing
US9246935B2 (en) 2013-10-14 2016-01-26 Intuit Inc. Method and system for dynamic and comprehensive vulnerability management
US9313281B1 (en) 2013-11-13 2016-04-12 Intuit Inc. Method and system for creating and dynamically deploying resource specific discovery agents for determining the state of a cloud computing environment
US8989053B1 (en) 2013-11-29 2015-03-24 Fedex Corporate Services, Inc. Association management in a wireless node network
CN105939677A (zh) 2013-12-12 2016-09-14 康文图斯整形外科公司 组织移位工具和方法
US9501345B1 (en) 2013-12-23 2016-11-22 Intuit Inc. Method and system for creating enriched log data
US9323926B2 (en) 2013-12-30 2016-04-26 Intuit Inc. Method and system for intrusion and extrusion detection
US20150304343A1 (en) 2014-04-18 2015-10-22 Intuit Inc. Method and system for providing self-monitoring, self-reporting, and self-repairing virtual assets in a cloud computing environment
US9325726B2 (en) 2014-02-03 2016-04-26 Intuit Inc. Method and system for virtual asset assisted extrusion and intrusion detection in a cloud computing environment
US9866581B2 (en) 2014-06-30 2018-01-09 Intuit Inc. Method and system for secure delivery of information to computing environments
US10757133B2 (en) 2014-02-21 2020-08-25 Intuit Inc. Method and system for creating and deploying virtual assets
US9276945B2 (en) 2014-04-07 2016-03-01 Intuit Inc. Method and system for providing security aware applications
US9245117B2 (en) 2014-03-31 2016-01-26 Intuit Inc. Method and system for comparing different versions of a cloud based application in a production environment using segregated backend systems
US11294700B2 (en) 2014-04-18 2022-04-05 Intuit Inc. Method and system for enabling self-monitoring virtual assets to correlate external events with characteristic patterns associated with the virtual assets
US9374389B2 (en) 2014-04-25 2016-06-21 Intuit Inc. Method and system for ensuring an application conforms with security and regulatory controls prior to deployment
US9319415B2 (en) 2014-04-30 2016-04-19 Intuit Inc. Method and system for providing reference architecture pattern-based permissions management
US9900322B2 (en) 2014-04-30 2018-02-20 Intuit Inc. Method and system for providing permissions management
US9330263B2 (en) 2014-05-27 2016-05-03 Intuit Inc. Method and apparatus for automating the building of threat models for the public cloud
US10453023B2 (en) 2014-05-28 2019-10-22 Fedex Corporate Services, Inc. Methods and node apparatus for adaptive node communication within a wireless node network
US11734396B2 (en) 2014-06-17 2023-08-22 El Electronics Llc Security through layers in an intelligent electronic device
US10102082B2 (en) 2014-07-31 2018-10-16 Intuit Inc. Method and system for providing automated self-healing virtual assets
US9473481B2 (en) 2014-07-31 2016-10-18 Intuit Inc. Method and system for providing a virtual asset perimeter
US10033627B1 (en) 2014-12-18 2018-07-24 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10091096B1 (en) 2014-12-18 2018-10-02 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10097448B1 (en) 2014-12-18 2018-10-09 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US11238397B2 (en) 2015-02-09 2022-02-01 Fedex Corporate Services, Inc. Methods, apparatus, and systems for generating a corrective pickup notification for a shipped item using a mobile master node
US10048088B2 (en) 2015-02-27 2018-08-14 Electro Industries/Gauge Tech Wireless intelligent electronic device
US9897461B2 (en) 2015-02-27 2018-02-20 Electro Industries/Gauge Tech Intelligent electronic device with expandable functionality
US11009922B2 (en) 2015-02-27 2021-05-18 Electro Industries/Gaugetech Wireless intelligent electronic device
US10225326B1 (en) 2015-03-23 2019-03-05 Amazon Technologies, Inc. Point of presence based data uploading
US9887932B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US9819567B1 (en) 2015-03-30 2017-11-14 Amazon Technologies, Inc. Traffic surge management for points of presence
US9887931B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US9832141B1 (en) 2015-05-13 2017-11-28 Amazon Technologies, Inc. Routing based request correlation
AU2016267547B2 (en) 2015-05-25 2021-03-11 Wewewe Gmbh Insertion body, assembly of insertion bodies and method for inserting an insertion body
US10616179B1 (en) 2015-06-25 2020-04-07 Amazon Technologies, Inc. Selective routing of domain name system (DNS) requests
US10305744B2 (en) 2015-07-08 2019-05-28 Fedex Corporate Services, Inc. System, apparatus, and methods of event monitoring for an event candidate related to an ID node within a wireless node network
US10097566B1 (en) 2015-07-31 2018-10-09 Amazon Technologies, Inc. Identifying targets of network attacks
US9742795B1 (en) 2015-09-24 2017-08-22 Amazon Technologies, Inc. Mitigating network attacks
US9774619B1 (en) 2015-09-24 2017-09-26 Amazon Technologies, Inc. Mitigating network attacks
US9794281B1 (en) 2015-09-24 2017-10-17 Amazon Technologies, Inc. Identifying sources of network attacks
RU2015144655A (ru) 2015-10-16 2017-04-24 Кейденс Дизайн Системс, Инк. Процесс проверки достоверности ограничений
US10270878B1 (en) 2015-11-10 2019-04-23 Amazon Technologies, Inc. Routing for origin-facing points of presence
US10049051B1 (en) 2015-12-11 2018-08-14 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10257307B1 (en) 2015-12-11 2019-04-09 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10348639B2 (en) 2015-12-18 2019-07-09 Amazon Technologies, Inc. Use of virtual endpoints to improve data transmission rates
US10958435B2 (en) 2015-12-21 2021-03-23 Electro Industries/ Gauge Tech Providing security in an intelligent electronic device
US10430263B2 (en) 2016-02-01 2019-10-01 Electro Industries/Gauge Tech Devices, systems and methods for validating and upgrading firmware in intelligent electronic devices
CN108780538A (zh) 2016-03-23 2018-11-09 联邦快递服务公司 用于自调整无线节点网络中的节点的广播设定的系统、设备和方法
US10075551B1 (en) 2016-06-06 2018-09-11 Amazon Technologies, Inc. Request management for hierarchical cache
US10110694B1 (en) 2016-06-29 2018-10-23 Amazon Technologies, Inc. Adaptive transfer rate for retrieving content from a server
US9992086B1 (en) 2016-08-23 2018-06-05 Amazon Technologies, Inc. External health checking of virtual private cloud network environments
US10033691B1 (en) 2016-08-24 2018-07-24 Amazon Technologies, Inc. Adaptive resolution of domain name requests in virtual private cloud network environments
US10269235B2 (en) 2016-08-26 2019-04-23 Trane International Inc. System and method to assist building automation system end user based on alarm parameters
US10616250B2 (en) 2016-10-05 2020-04-07 Amazon Technologies, Inc. Network addresses with encoded DNS-level information
US10831549B1 (en) 2016-12-27 2020-11-10 Amazon Technologies, Inc. Multi-region request-driven code execution system
US10372499B1 (en) 2016-12-27 2019-08-06 Amazon Technologies, Inc. Efficient region selection system for executing request-driven code
US10387625B2 (en) * 2017-01-26 2019-08-20 Dexin Electronic Ltd. Input device and computer system
US10938884B1 (en) 2017-01-30 2021-03-02 Amazon Technologies, Inc. Origin server cloaking using virtual private cloud network environments
US10503613B1 (en) 2017-04-21 2019-12-10 Amazon Technologies, Inc. Efficient serving of resources during server unavailability
US11075987B1 (en) 2017-06-12 2021-07-27 Amazon Technologies, Inc. Load estimating content delivery network
US10447648B2 (en) 2017-06-19 2019-10-15 Amazon Technologies, Inc. Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP
US10918426B2 (en) 2017-07-04 2021-02-16 Conventus Orthopaedics, Inc. Apparatus and methods for treatment of a bone
US10742593B1 (en) 2017-09-25 2020-08-11 Amazon Technologies, Inc. Hybrid content request routing system
US11754997B2 (en) 2018-02-17 2023-09-12 Ei Electronics Llc Devices, systems and methods for predicting future consumption values of load(s) in power distribution systems
US11686594B2 (en) 2018-02-17 2023-06-27 Ei Electronics Llc Devices, systems and methods for a cloud-based meter management system
US11734704B2 (en) 2018-02-17 2023-08-22 Ei Electronics Llc Devices, systems and methods for the collection of meter data in a common, globally accessible, group of servers, to provide simpler configuration, collection, viewing, and analysis of the meter data
US10592578B1 (en) 2018-03-07 2020-03-17 Amazon Technologies, Inc. Predictive content push-enabled content delivery network
US10862852B1 (en) 2018-11-16 2020-12-08 Amazon Technologies, Inc. Resolution of domain name requests in heterogeneous network environments
US11025747B1 (en) 2018-12-12 2021-06-01 Amazon Technologies, Inc. Content request pattern-based routing system
US11863589B2 (en) 2019-06-07 2024-01-02 Ei Electronics Llc Enterprise security in meters
US11587026B2 (en) * 2019-06-28 2023-02-21 Allied Inventory Systems, Inc. RFID based inventory system and method

Family Cites Families (80)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4975865A (en) * 1989-05-31 1990-12-04 Mitech Corporation Method and apparatus for real-time control
US6044205A (en) * 1996-02-29 2000-03-28 Intermind Corporation Communications system for transferring information between memories according to processes transferred with the information
US5119470A (en) * 1990-04-27 1992-06-02 Ibm Corporation Computer based inference engine device and method thereof for integrating backward chaining and forward chaining reasoning
US5113344A (en) * 1990-07-27 1992-05-12 Raymond Corporation Material handling vehicle identification tag
US5423041A (en) * 1990-09-28 1995-06-06 Texas Instruments Incorporated Coupling rules to an object-oriented program
US5469363A (en) * 1994-05-19 1995-11-21 Saliga; Thomas V. Electronic tag with source certification capability
US5910776A (en) * 1994-10-24 1999-06-08 Id Technologies, Inc. Method and apparatus for identifying locating or monitoring equipment or other objects
US5862325A (en) * 1996-02-29 1999-01-19 Intermind Corporation Computer-based communication system and method using metadata defining a control structure
US5650768A (en) * 1996-03-04 1997-07-22 Eswaran; Kapali P. Baggage claiming method and apparatus
US6175860B1 (en) * 1997-11-26 2001-01-16 International Business Machines Corporation Method and apparatus for an automatic multi-rate wireless/wired computer network
US6618806B1 (en) * 1998-04-01 2003-09-09 Saflink Corporation System and method for authenticating users in a computer network
US5949335A (en) * 1998-04-14 1999-09-07 Sensormatic Electronics Corporation RFID tagging system for network assets
US7586398B2 (en) * 1998-07-23 2009-09-08 Universal Electronics, Inc. System and method for setting up a universal remote control
US6304973B1 (en) * 1998-08-06 2001-10-16 Cryptek Secure Communications, Llc Multi-level security network system
US6158010A (en) * 1998-10-28 2000-12-05 Crosslogix, Inc. System and method for maintaining security in a distributed computer network
US20040016796A1 (en) 1998-11-25 2004-01-29 Diebold, Incorporated Automated banking apparatus and method
AU763847B2 (en) * 1999-04-07 2003-07-31 Swisscom Mobile Ag Method and system for ordering, loading and using access tickets
RU2144221C1 (ru) * 1999-06-29 2000-01-10 Государственное унитарное предприятие Государственный научно-исследовательский институт авиационных систем Способ контроля перемещаемых объектов
US6677852B1 (en) * 1999-09-22 2004-01-13 Intermec Ip Corp. System and method for automatically controlling or configuring a device, such as an RFID reader
US6631363B1 (en) * 1999-10-11 2003-10-07 I2 Technologies Us, Inc. Rules-based notification system
US6784802B1 (en) * 1999-11-04 2004-08-31 Nordx/Cdt, Inc. Real time monitoring of cable patch panel
US20020004787A1 (en) * 2000-03-28 2002-01-10 Moshal David Clive Method for conducting an exchange over a network
US7171459B2 (en) * 2000-06-07 2007-01-30 Microsoft Corporation Method and apparatus for handling policies in an enterprise
US6873260B2 (en) * 2000-09-29 2005-03-29 Kenneth J. Lancos System and method for selectively allowing the passage of a guest through a region within a coverage area
US20020070865A1 (en) * 2000-09-29 2002-06-13 Lancos Kenneth J. System and method for creating a group of guests at a coverage area
US6883710B2 (en) * 2000-10-11 2005-04-26 Amerasia International Technology, Inc. Article tracking system and method
US20020183882A1 (en) 2000-10-20 2002-12-05 Michael Dearing RF point of sale and delivery method and system using communication with remote computer and having features to read a large number of RF tags
US20020143624A1 (en) 2001-03-31 2002-10-03 Koninklijke Philips Electronics N.V. Machine readable label for tokens and method of use
US6732923B2 (en) * 2001-04-04 2004-05-11 Ncr Corporation Radio frequency identification system and method
US6793127B2 (en) * 2001-04-04 2004-09-21 Koninklijke Philips Electronics N.V. Internet enabled resource constrained terminal for processing tags
US7503480B2 (en) * 2001-07-10 2009-03-17 American Express Travel Related Services Company, Inc. Method and system for tracking user performance
US20030155413A1 (en) * 2001-07-18 2003-08-21 Rozsa Kovesdi System and method for authoring and providing information relevant to a physical world
RU2199781C1 (ru) * 2001-07-20 2003-02-27 Ямилев Ильгиз Амирович Способ маркировки товара, или изделия, или конструкции с последующей идентификацией (варианты) и система проведения идентификации товара или изделия, или конструкции с указанной маркировкой (варианты)
US7756969B1 (en) * 2001-09-07 2010-07-13 Oracle America, Inc. Dynamic provisioning of identification services in a distributed system
US20030061062A1 (en) * 2001-09-26 2003-03-27 Tucker Timothy J. XML data switch
WO2003048190A2 (en) * 2001-12-04 2003-06-12 The Curators Of The University Of Missouri Acyclovir-peptide analogs
US6908034B2 (en) * 2001-12-17 2005-06-21 Zih Corp. XML system
US7969306B2 (en) * 2002-01-11 2011-06-28 Sap Aktiengesellschaft Context-aware and real-time item tracking system architecture and scenarios
US6843415B2 (en) 2002-01-11 2005-01-18 Sap Atkiengesellschaft Event-based communication in a distributed item tracking system
US7149753B2 (en) * 2002-01-11 2006-12-12 Sap Aktiengesellschaft Providing selective access to tracking information
US7290708B2 (en) * 2002-07-31 2007-11-06 Sap Aktiengesellschaft Integration framework
US7287053B2 (en) * 2002-01-15 2007-10-23 International Business Machines Corporation Ad hoc data sharing in virtual team rooms
DE60208325T2 (de) * 2002-01-21 2006-08-03 Hewlett-Packard Development Co., L.P., Houston Ortungsvorrichtung eines Daten-Netz-Geräts
US7406439B2 (en) * 2002-01-31 2008-07-29 International Business Machines Corporation Inventory controls with radio frequency identification
US7640547B2 (en) * 2002-02-08 2009-12-29 Jpmorgan Chase & Co. System and method for allocating computing resources of a distributed computing system
US7424744B1 (en) * 2002-03-05 2008-09-09 Mcafee, Inc. Signature based network intrusion detection system and method
US20030225928A1 (en) * 2002-05-28 2003-12-04 Sun Microsystems, Inc. Method, system, and program for managing access to a device by device specific components and operating system specific components
US20040046642A1 (en) * 2002-09-05 2004-03-11 Honeywell International Inc. Protocol for addressing groups of RFID tags
US20040102994A1 (en) * 2002-11-19 2004-05-27 Prasad Boppana Method and system for processing sales process information
US7333001B2 (en) * 2002-11-23 2008-02-19 Kathleen Lane Secure personal RFID documents and method of use
US20040111335A1 (en) * 2002-12-04 2004-06-10 Black Charles Ronald RFID space monitoring and asset inventory system
US20040133484A1 (en) 2003-01-08 2004-07-08 Kreiner Barrett M. Radio-frequency tags for sorting post-consumption items
US7426484B2 (en) * 2003-02-04 2008-09-16 United Parcel Service Of America, Inc. Consolidated shipping and distribution of multiple orders with returns
US7123149B2 (en) 2003-02-21 2006-10-17 Zachry Construction Corporation Tagging and tracking system for assets and personnel of a commercial enterprise
US7603291B2 (en) * 2003-03-14 2009-10-13 Sap Aktiengesellschaft Multi-modal sales applications
CA2521390C (en) 2003-04-07 2012-01-03 Silverbrook Research Pty Ltd Sensing device for coded data
US8103753B2 (en) * 2003-04-22 2012-01-24 Microsoft Corporation Distributing membership information for multi-party application layer sessions
US7380125B2 (en) 2003-05-22 2008-05-27 International Business Machines Corporation Smart card data transaction system and methods for providing high levels of storage and transmission security
JP2004355306A (ja) 2003-05-29 2004-12-16 Hitachi Ltd 端末装置、サービス提供サーバ及びrfタグシート
US20050062603A1 (en) * 2003-08-06 2005-03-24 Oren Fuerst Secure, networked and wireless access, storage and retrival system and method utilizing tags and modular nodes
US20050068190A1 (en) * 2003-09-30 2005-03-31 Robert Krause Personal retail tool and server system
US7148803B2 (en) * 2003-10-24 2006-12-12 Symbol Technologies, Inc. Radio frequency identification (RFID) based sensor networks
US7267275B2 (en) * 2003-11-04 2007-09-11 Captech Ventures, Inc. System and method for RFID system integration
US7155305B2 (en) 2003-11-04 2006-12-26 Universal Electronics Inc. System and methods for home appliance identification and control in a networked environment
US7237194B2 (en) 2003-11-18 2007-06-26 Microsoft Corporation System and method for generating optimized binary representation of an object tree
US7444314B2 (en) * 2003-12-01 2008-10-28 International Business Machines Corporation Methods and apparatus for business rules authoring and operation employing a customizable vocabulary
US20050138402A1 (en) * 2003-12-23 2005-06-23 Yoon Jeonghee M. Methods and apparatus for hierarchical system validation
GB2453477A (en) 2004-02-06 2009-04-08 Zih Corp Identifying a plurality of transponders
JP2005279008A (ja) * 2004-03-30 2005-10-13 Brother Ind Ltd 刺繍データ作成装置、刺繍データ作成方法、刺繍データ作成制御プログラム及び刺繍方法
US7071825B2 (en) * 2004-04-26 2006-07-04 Microsoft Corporation Self-monitored active rack
US7640574B1 (en) * 2004-06-02 2009-12-29 Sun Microsystems, Inc. Method and system for resource based authentication
US7257108B2 (en) * 2004-07-28 2007-08-14 Lenovo (Singapore) Pte. Ltd. Determining the physical location of resources on and proximate to a network
US7701341B2 (en) 2004-09-01 2010-04-20 Microsoft Corporation Device service provider interface
US8217756B2 (en) * 2004-09-01 2012-07-10 Microsoft Corporation Rule-based filtering and alerting
US7204409B2 (en) * 2004-09-01 2007-04-17 Microsoft Corporation Reader application markup language schema
KR100723830B1 (ko) * 2004-10-29 2007-05-31 한국전자통신연구원 Rfid 기술을 이용한 온라인 및 오프라인 문서 관리방법 및 장치
US7493083B2 (en) * 2004-11-30 2009-02-17 Symbol Technologies, Inc. Mobility device assistant
US7389921B2 (en) * 2005-02-28 2008-06-24 Sap Aktiengesellschaft Dynamic component management
US7764191B2 (en) * 2005-07-26 2010-07-27 Rockwell Automation Technologies, Inc. RFID tag data affecting automation controller with internal database
US8777737B2 (en) * 2006-04-13 2014-07-15 Igt Method and apparatus for integrating remotely-hosted and locally rendered content on a gaming device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ENRIQUE ORTIZ С. An Introduction to Java Card Technology. Part 1, 29.05.2003,найденная по адресу URL: http://java.sun.com/javacard/reference/techart/javacardl, разделы "Introduction" - "The Java Card API". ZHIQUN CHEN et al. Understanding Java Card 2.0, 03.01.1998, найденная по адресу URL: http://www.javaworld/com/javaworld/jw-03-1998/jw-03-javadev.html, разделы "What is a smart card?" - "How things work together inside a Java Card". *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10666745B2 (en) 2012-06-20 2020-05-26 Reliance Jio Infocomm Usa, Inc. Method and procedure for dynamic services orchestration that runs within an on-device software container
US9264304B2 (en) 2012-06-20 2016-02-16 Reliance Jio Infocomm Usa, Inc. Method and procedure for dynamic services orchestration that runs within an on device software container
US9628572B2 (en) 2012-06-20 2017-04-18 Reliance Jio Infocomm Usa, Inc. Method and procedure for dynamic services orchestration that runs within an on-device software container
US11140230B2 (en) 2012-06-20 2021-10-05 Reliance Jio Infocomm Usa, Inc. Method and procedure for dynamic services orchestration that runs within an on-device software container
WO2013192341A1 (en) * 2012-06-20 2013-12-27 Infotel Broadband Services, Ltd. Method and system for providing a service over a private network
RU2606565C2 (ru) * 2012-09-14 2017-01-10 Интел Корпорейшн Агент микропрограммного обеспечения
US9678732B2 (en) 2012-09-14 2017-06-13 Intel Corporation Firmware agent
US10123360B2 (en) 2014-01-22 2018-11-06 Reliance Jio Infocomm Limited System and method for secure wireless communication
US10855729B2 (en) 2014-09-15 2020-12-01 Reliance Jio Infocomm Usa, Inc. Extending communication services to a consumption device using a proxy device
US9888044B2 (en) 2014-09-15 2018-02-06 Reliance Jio Infocomm Usa, Inc. Extending communication services to a consumption device using a proxy device
US10531358B2 (en) 2015-07-30 2020-01-07 Reliace Jio Infocomm Usa, Inc. Method and system for routing IP based messaging, voice and video calling based on the network parameters the device is connected to and the location
US10819754B2 (en) 2015-07-30 2020-10-27 Reliance Jio Infocomm Usa, Inc. Method and system for routing IP based messaging, voice and video calling based on the network parameters the device is connected to and the location
US11431760B2 (en) 2015-07-30 2022-08-30 Reliance Jio Infocomm Usa, Inc. Method and system for routing IP based messaging, voice and video calling based on the network parameters the device is connected to and the location

Also Published As

Publication number Publication date
RU2005127418A (ru) 2007-03-10
RU2005127421A (ru) 2007-03-10
US7944355B2 (en) 2011-05-17
RU2005127416A (ru) 2007-03-10
RU2011118882A (ru) 2012-11-20
RU2005127420A (ru) 2007-03-10
RU2398268C2 (ru) 2010-08-27
US7382260B2 (en) 2008-06-03
RU2455683C2 (ru) 2012-07-10
US20060047787A1 (en) 2006-03-02
US20060055508A1 (en) 2006-03-16
RU2463650C2 (ru) 2012-10-10
RU2005127424A (ru) 2007-03-10
RU2005127417A (ru) 2007-03-10
RU2402069C2 (ru) 2010-10-20
RU2571611C2 (ru) 2015-12-20

Similar Documents

Publication Publication Date Title
RU2421811C2 (ru) Интерфейс поставщиков служб устройств
CA2517860C (en) Device service provider interface
US8098158B2 (en) RFID server internals design
US7274291B2 (en) Dynamic and hybrid RFID
US7204409B2 (en) Reader application markup language schema
US8035490B2 (en) Communication and filtering of events among peer controllers in the same spatial region of a sensor network
US7295116B2 (en) Architecture, programming model and API&#39;S
CN1667645B (zh) 与识别标签通信的方法和系统
US7322523B2 (en) Methods and devices for uniquely provisioning RFID devices
ZA200506980B (en) Device service provider interface
EP1761881A2 (en) Methods and devices for assigning rfid device personality
WO2008118595A1 (en) Strong typing of components in rfid business processes
WO2022113130A1 (en) Monitoring system and process in the management of commercial processes

Legal Events

Date Code Title Description
PC41 Official registration of the transfer of exclusive right

Effective date: 20150526

MM4A The patent is invalid due to non-payment of fees

Effective date: 20200901