ПРОГРАММНАЯ ПЕРЕДАЧА ПРИЛОЖЕНИЙ МЕЖДУ ТЕЛЕФОННЫМИ ТРУБКАМИ НА ОСНОВЕ ЛИЦЕНЗИОННОЙ ИНФОРМАЦИИ
PROGRAM TRANSFER OF APPLICATIONS BETWEEN HANDSETS BASED ON LICENSE INFORMATION

Испрашивание приоритета согласно 35 U.S.C. §119
Настоящая заявка на патент испрашивает приоритет по предварительной заявке номер 60/870706, озаглавленной "METHODS, SYSTEMS, AND APPARATUS FOR CONTENT TRANSFER", поданной 19 декабря 2006, и переуступленной правопреемнику этого и этим явно включенной сюда по ссылке.
Уровень техники
Присутствующие аспекты относятся, в общем, к осуществлению связи, и, более конкретно, к сетям передачи данных, которые обеспечивают пользовательское оборудование прикладным исполнимым кодом.
Успехи в технологии дали результатом более маленькие и более мощные персональные вычислительные устройства. Например, в текущее время существует многообразие портативных персональных вычислительных устройств, включающих в себя беспроводные вычислительные устройства, такие как портативные беспроводные телефоны, персональные цифровые ассистенты (PDA) и пейджинговые устройства, каждое из которых является маленьким, легковесным, и может легко переноситься пользователями. С успехами в вычислительной технологии потребителям предлагают все больше типов электронных устройств ("пользовательского оборудования"), которые могут обеспечиваться множеством программных приложений. Разные функциональные возможности, такие как электронная почта, просмотр сети Интернет, игра в игры, адресная книга, календарь, медиапроигрыватели, просмотр электронных книг, передача речи, службы директорий и т.д., возрастающим образом являются приложениями с возможностью выбора, которые могут загружаться на многофункциональное устройство, такое как смартфон, портативный игровой пульт или ручной компьютер. Удобное приобретение требуемых приложений часто является доступным в связке при начальном приобретении или после приобретения аппаратного обеспечения. Такие отдельные предоставляемые программным обеспечением возможности имеют тенденцию быть индивидуально лицензированными, особенно когда приобретаются и загружаются отдельно от аппаратного обеспечения. Как таковое, конкретное пользовательское оборудование (UE) может иметь значительную остаточную стоимость, представленную такими лицензиями, также как субъективную стоимость при заданных времени и неудобстве, которые бы требовались, чтобы аналогичным образом сконфигурировать заменяющее устройство.
С улучшениями в технологии, улучшенной портативностью и уменьшением в стоимостях многих таких программно обеспеченных UE, увеличивается вероятность, что UE будет заменяться часто. Во-первых, может стать доступным улучшенное устройство, которое пользователь предпочитает использовать перманентно, отбрасывая или продавая предыдущее UE. Во-вторых, UE, которое является достаточно маленьким и портативным, может быть потеряно или повреждено при переноске. В-третьих, пользователь может иметь ассортимент устройств UE, которые выбираются для конкретного использования на основе размера, функциональных возможностей, прочности и эстетики способом, аналогичным выбору часов или кошелька. Однако приобретение дополнительных лицензий для этих сценариев является излишним в том, что пользователь будет только использовать одно устройство в один момент времени. Чтобы поощрять начальное приобретение и поддерживать потребительскую лояльность, поставщики программных приложений могут пожелать использовать лицензии, которые обеспечивают передачу без стоимости на другое устройство; однако экономическая целесообразность поставщиков программных приложений требует, чтобы такие лицензии было трудно обойти в других случаях, таких как когда никакого эквивалентного приложения, за исключением только более дорогого приложения, не доступно для конкретной вычислительной платформы нового UE. Очень маленькие приложения также могут иметь маленькое лицензионное роялти, которое является ощутимым, только если такие лицензионные транзакции и распределения могут осуществляться без неподобающей величины, или возможно любой потребительской поддержки для пользователя.
Каждое из этих рассмотрений является особенно подходящим для портативных беспроводных телефонов, например, которые дополнительно включают в себя сотовые телефоны, которые передают речь и пакеты данных через беспроводные сети. Дополнительно, многие такие сотовые телефоны производятся с относительно большими увеличениями в вычислительных способностях, и, как таковые, становятся равноценными маленьким персональным компьютерам и ручным PDA. Однако эти меньшие персональные вычислительные устройства могут быть сильно ограниченными в отношении ресурсов. Например, размер экрана, величина доступной памяти и пространство файловой системы, величина способностей ввода и вывода и способность обработки могут каждое быть ограниченным маленьким размером устройства. Из-за таких жестких ограничений в отношении ресурсов часто является желательным, например, поддерживать ограниченный размер и количество программных приложений и другой информации, находящихся на таких удаленных персональных вычислительных устройствах, например клиентских устройствах. Как таковые, вычислительные платформы для таких устройств часто оптимизированы для конкретного телефонного набора микросхем и аппаратного обеспечения пользовательского интерфейса. Лицензирование может предусматривать скорее загрузку короткой продолжительности и ограниченное количество использований, нежели парадигму покупки компьютерного программного обеспечения на CDROM, что загружается на персональный компьютер на, по существу, неограниченную продолжительность и является совместимым с большой совокупностью операционных систем.
Раскрытие изобретения
Последующее представляет упрощенное резюме, чтобы обеспечить базовое понимание некоторых аспектов раскрытых вариантов осуществления. Этот раздел не является обширным обзором и не предназначен, чтобы идентифицировать ключевые или критические элементы, или очерчивать объем таких вариантов осуществления. Его целью является представить некоторые понятия описанных вариантов осуществления в упрощенной форме как вступление к более подробному описанию, которое представлено позже.
В одном аспекте способ для осуществления транзакции и передачи машинно-реализованного приложения, относящегося к в текущее время лицензированному приложению, начинается с определения лицензионных прав, которые держатся пользователем для исходного приложения, исполняемого первым пользовательским устройством, имеющим первую конфигурацию, подходящую, чтобы исполнять приложение. Исходное приложение преобразуется посредством бизнес-правила преобразования в замещающее приложение, подходящее для исполнения на втором пользовательском устройстве, имеющем вторую конфигурацию. Определяющее цену бизнес-правило применяется, чтобы определять цену транзакции для лицензирования пользователя использовать замещающее приложение вместо использования исходного приложения. Затем транзакция завершается обеспечением второго пользовательского устройства замещающим приложением. Автоматизация выбора подходящего приложения замены и автоматизация определения цены для этой передачи лицензионных прав бесшовно обеспечивают для пользователей переключение между пользовательскими устройствами без неподобающей затраты или неудобства. В дополнение, сеть, которая поддерживает эти пользовательские устройства, не обременена затратами вычисления вручную стоимости для этих передач и побуждения распределения.
В других аспектах процессор, компьютерная программа и устройство имеют средство для выполнения вышеупомянутого способа для осуществления транзакции и передачи машинно-реализованного приложения в поддержку пользовательских устройств.
В еще другом аспекте устройство имеет компонент управления передачами, который определяет лицензионные права, которые держатся пользователем для исходного приложения, исполняемого первым пользовательским устройством, имеющим первую конфигурацию, подходящую, чтобы исполнять приложение. Каталог приложений преобразует в соответствии с бизнес-правилом преобразования исходное приложение в замещающее приложение, подходящее для исполнения на втором пользовательском устройстве, имеющем вторую конфигурацию. Машина правил применяет определяющее цену бизнес-правило, чтобы определять цену транзакции для лицензирования пользователя для использования замещающего приложения вместо использования исходного приложения. Компонент распределения завершает транзакцию обеспечением второго пользовательского устройства замещающим приложением.
В еще дополнительном аспекте способ для осуществления транзакции и передачи машинно-реализованного приложения, относящегося к в текущее время лицензированному приложению, начинается с запроса на определение лицензионных прав, которые держатся пользователем для исходного приложения, исполняемого первым пользовательским устройством, имеющим первую конфигурацию, подходящую, чтобы исполнять приложение.
Акцептируется преобразование исходного приложения в замещающее приложение, подходящее для исполнения на втором пользовательском устройстве, имеющем вторую конфигурацию, в соответствии с бизнес-правилом преобразования. Акцептируется цена транзакции, которая была определена применением определяющего цену бизнес-правила, чтобы определять цену транзакции для лицензирования пользователя для использования замещающего приложения вместо использования исходного приложения. Транзакция завершается приемом обеспечения второго пользовательского устройства замещающим приложением.
В дополнительных аспектах процессор, компьютерная программа и устройство имеют средство для выполнения вышеупомянутого способа для осуществления транзакции и передачи машинно-реализованного приложения в пользовательское устройство.
В еще другом аспекте устройство включает в себя компонент связи для запроса определения лицензионных прав, которые держатся пользователем для исходного приложения, исполняемого первым пользовательским устройством, имеющим первую конфигурацию, подходящую, чтобы исполнять приложение. Пользовательский интерфейс акцептирует преобразование в соответствии с бизнес-правилом преобразования исходного приложения в замещающее приложение, подходящее для исполнения на втором пользовательском устройстве, имеющем вторую конфигурацию и для акцептирования цены транзакции, которая была определена применением определяющего цену бизнес-правила, чтобы определять цену транзакции для лицензирования пользователя для использования замещающего приложения вместо использования исходного приложения. Компонент связи завершает транзакцию приемом обеспечения второго пользовательского устройства замещающим приложением.
Для достижения предшествующих и имеющих к ним отношение целей один или более вариантов осуществления содержат признаки, полностью описанные ниже и конкретно указанные в пунктах формулы изобретения. Последующее описание и присоединенные чертежи излагают подробно некоторые иллюстративные аспекты и показывают несколько различных способов, в которых принципы вариантов осуществления могут применяться. Другие преимущества и новые признаки станут видны из последующего подробного описания, когда рассматриваются в соединении с чертежами, и предполагается, что раскрытые варианты осуществления включают в себя все такие аспекты и их эквиваленты.
Краткое описание чертежей
Фиг. 1 - высокоуровневая системная диаграмма системы передачи согласно одному аспекту;
Фиг. 2 - способ для выполнения передачи приложений и других элементов, которые формируют динамическую учетную информацию пользовательского оборудования (UE) системы передачи на фиг. 1, согласно одному аспекту;
Фиг. 3 - способ для накладывания бизнес правил для обновления или перекрестной продажи приложений пользователям, передающим динамическую учетную информацию от одного UE в другое UE, согласно одному аспекту;
Фиг. 4 - иллюстративное UE для передач приложений в соответствии со способом на фиг. 2, согласно одному аспекту;
Фиг. 5 - иллюстративный сервер передачи для системы передачи на фиг. 1, согласно одному аспекту;
Фиг. 6 - иллюстративная структура данных для динамической учетной информации лицензированных приложений, поддерживаемых посредством UE на фиг. 1, согласно одному аспекту,
Фиг. 7 - иллюстративная структура данных для репозитория лицензированных транзакций в расчете на абонента, поддерживаемого системой передачи на фиг. 1, согласно одному аспекту;
Фиг. 8 - иллюстративная структура данных для каталога приложений, к которому осуществляется доступ системой передачи на фиг. 1, согласно одному аспекту;
Фиг. 9 - иллюстративная матрица, реализующая бизнес-правила, используемые системой передачи на фиг. 1, согласно одному аспекту;
Фиг. 10 - иллюстративная система связи, включающая в себя объекты, которые формируют распределенную систему передачи, согласно одному аспекту;
Фиг. 11 - диаграмма времени для исходящего UE, содержащего клиент передачи и динамическую учетную информацию, которая подлежит передаче с координацией среди других объектов распределенной системы передачи на фиг. 10, согласно одному аспекту;
Фиг. 12 - диаграмма времени для исходящего UE, которое является недоступным, но которое содержит лицензированные приложения, которые должны быть переданы на UE назначения, согласно одному аспекту;
Фиг. 13 - диаграмма времени распределенной системы передачи, загружающей лицензированные приложения в UE назначения, которые не содержат клиент передачи, согласно одному аспекту;
Фиг. 14 - диаграмма времени распределенной системы передачи, загружающей лицензированные приложения в UE назначения после того, как исходящее UE является недоступным, чтобы инициировать передачу, согласно одному аспекту;
Фиг. 15 - диаграмма времени распределенной системы передачи, загружающей лицензированное приложение в UE назначения, которое не включает в себя клиент передачи, согласно одному аспекту; и
Фиг. 16 - диаграмма системы связи, включающей в себя цифровой модуль блокировки для лицензированных приложений, согласно одному аспекту.
Подробное описание
Управление передачами лицензированных приложений от устройства исходного пользовательского оборудования (UE) в устройство UE назначения обеспечивается посредством сети связи, которая отслеживает учетную информацию программного приложения, которое было ранее лицензировано, и предлагает комплект эквивалентных приложений, обновленную версию, или соответствующую возможность перекрестной продажи для конфигурации (например, набора микросхем и операционной системы) устройства UE назначения (например, сотового телефона, способного исполнять приложения, такие как игры, медиапроигрыватели и персональные организаторы, и т.д.). Бизнес правила автоматизируют преобразование приложений и определение цены, соответствующие для предложенной конфигурации, чтобы автоматизировать и увеличивать удобство как для пользователя, так и поставщика. Как только акцептирован, соответствующий исполнимый код распределяется устройству UE назначения, инициируется соответствующее пропорциональное формирование счетов, и предыдущие лицензированные приложения либо заблокированы для последующей передачи назад с минимальным влиянием на ограниченный по пропускной способности канал связи, либо инструктированы для автоматического удаления, чтобы обеспечивать перманентную передачу, особенно для потерянного или похищенного исходного устройства UE.
Различные аспекты теперь описываются со ссылкой на чертежи. В последующем описании, в целях описания, многочисленные конкретные детали излагаются, чтобы обеспечивать полное понимание одного или более аспектов. Может быть очевидным, однако, что различные аспекты могут применяться на практике без этих конкретных деталей. В других случаях хорошо известные структуры и устройства показаны в форме блок-схем, чтобы кратко описать эти варианты осуществления.
В последующем описании слово "иллюстративный" используется, чтобы обозначать служащий в качестве примера, экземпляра или иллюстрации. Любой аспект или вариант осуществления, здесь описанный как "иллюстративный", не обязательно должен толковаться как предпочтительный или выгодный над другими аспектами или вариантами осуществления. Скорее использование слова иллюстративный предназначается, чтобы представлять понятия конкретным образом.
Устройство и способы особенно хорошо подходят для использования в беспроводных средах, но могут быть подходящими в любом типе сетевой среды, включающей в себя, но не ограниченной этим, сети связи, сети общего пользования, такие как сеть Интернет, частные сети, такие как виртуальные частные сети (VPN), локальные сети, глобальные сети, сети дальней связи или любой другой тип сети передачи данных.
Ссылаясь на фиг. 1, сеть 10 связи обеспечивает осведомленное о лицензиях распределение лицензированных приложений 12 в исходное устройство 14 с последующей автоматизированной передачей лицензии и распределение замещающего лицензированного приложения 16, подходящего для использования на устройстве 18 назначения. В настоящем описании термин "приложение" может также включать в себя файлы, имеющие исполнимый контент, такой как объектный код, сценарии, байтовый код, файлы языка, разметки и заплаты. В дополнение, "приложение", указываемое здесь, может также включать в себя файлы, которые не являются исполнимыми по природе, такие как документы, которые может быть необходимо открывать, или другие файлы данных, к которым должен быть осуществлен доступ.
Система 20 распределения, которая осуществляет связь с исходным устройством 14 и устройством 18 назначения, чтобы осуществлять распределение приложений 12 и 16, осуществляет координацию с системой 22 передачи, которая проверяет действительность существующих лицензионных прав исходящего устройства 14 в соответствии с базой 24 данных транзакций лицензий в репозитории 26. Для ясности, функциональные возможности защиты и другие функциональные возможности связи ассоциированы с системой 20 распределения и передачей приложений и лицензионных прав, изображаются как изолированные в системе 22 передачи, хотя такие функциональные возможности могут быть полностью интегрированы и не непосредственно различимыми. В иллюстративном варианте осуществления система 22 передачи является работоспособной, чтобы обеспечивать принятие решений и логику для управления лицензиями и определения цены, ассоциированные с распределением контента, который передается.
С этой целью система 22 передачи предлагает замещающие лицензированные приложения 16, взятые из каталога 28 приложений как эквивалентные, или соответствующее обновление или замену для лицензированных приложений 12. Система 22 передачи согласовывает предлагаемую цену с пользователем посредством системы распределения и пользовательского интерфейса 30 на исходящем устройстве 14 или пользовательском интерфейсе 32 на устройстве 18 назначения для замещающих лицензированных приложений 16 на основе существующих лицензионных прав и превалирующих бизнес-правил 34. Система 22 передачи обновляет базу 24 данных транзакций лицензий для доклада поставщикам приложений и будущих проверок действительности передач. Клиент 36 передачи на исходящем устройстве 14 способствует блокировке или удалению приложений 12 и клиент 38 передачи способствует установке и активации замещающих лицензированных приложений 16 на устройстве 18 назначения.
Система 40 веб-портала имеет пользовательский интерфейс 41, через который пользователь может инициировать передачу динамической учетной информации (например, приложений 12) на исходном устройстве 14, инициировать возврат кредита для приложений 12, которые подлежат деактивации на исходном устройстве 14 с отсутствующим непосредственным планом, чтобы передавать на устройство 18 назначения, или инициировать передачу на устройство 18 назначения. Система 40 веб-портала включает в себя клиент 42 веб-передачи, который обеспечивает должный протокол через сеть 43 (например, беспроводную по эфиру сеть), чтобы осуществлять связь с системой 22 передачи.
В иллюстративном аспекте система 22 передачи (например, сервер) включает в себя службу 44 передачи, которая включает в себя машину 45 правил, машину 46 управления передачами и машину 47 интерфейса. Согласно одному аспекту машина 45 правил, машина 46 управления передачами и машина 47 интерфейса системы 22 передачи пребывают в осуществлении связи. Машина 45 правил является выполненной с возможностью определять правила и логику для управления передачами контента и лицензий. В одном примере машина 45 правил работает, чтобы стоять изолированно в системе 22 передачи. В таком примере машина 45 правил может не быть в осуществлении связи с системой 20 распределения или исходящим устройством 14 и устройством 18 назначения.
Машина 46 управления передачами является выполненной с возможностью запрашивать систему 108 распределения так, чтобы определять предысторию покупок контента, который передается. Машина 46 управления передачами является дополнительно выполненной с возможностью запрашивать систему 20 распределения для предыстории использования контента исходящим устройством 14. В одном случае машина 46 управления передачами инициирует и управляет запросом системы 20 распределения так, чтобы определять лицензионную информацию для приложений 12. На основе полученной лицензионной информации и знания о приобретенных приложениях система 22 передачи является дополнительно выполненной с возможностью распределять приложения 16, которые передаются, в устройство 18 назначения. Машина 46 управления передачами является дополнительно выполненной с возможностью запрашивать систему 20 распределения определять использование ограниченного контента использования и регулировать использование ограниченного контента использования соответственно. В одном примере машина 46 управления передачами является дополнительно выполненной с возможностью добавлять дополнительные правила для распределения приложений. Машина 46 управления передачами может дополнительно запрашивать, чтобы исходящее устройство 14 удалило переданное приложение 12 из исходящего устройства 14.
Машина 47 интерфейса обеспечивает интерфейсы исходящего устройства 14 и устройства 18 назначения, так что конечный пользователь может видеть приложения 12 исходящего устройства. Машина 47 интерфейса дополнительно обеспечивает интерфейс администратору, чтобы видеть и определять правила для передачи приложения 12 из веб-портала 40. В одном примере в течение операции клиенты 36 и 38 передачи взаимодействуют с машиной 47 интерфейса.
Система 20 распределения включает в себя объект 48 формирования счетов и объект 49 доставки. Объект 49 доставки работает, чтобы доставлять переданный контент в устройство 18 назначения. В одном примере объект 48 формирования счетов пропускает сквозь информацию контента, приобретенного для целей формирования счетов. В одном примере контент, который передается, может быть ассоциирован с неограниченной лицензией. В таком сценарии лицензия, ассоциированная с переданным приложением 16, может быть ассоциирована с устройством 18 назначения.
В одном сценарии, в котором приложение, которое передается, ассоциировано с лицензией ограниченного использования, машина 46 управления передачами может работать так, чтобы запрашивать исходящее устройство 14 или объект 48 формирования счетов определить количество лицензий, еще доступных для использования. При определении количества доступных лицензий объект 49 доставки работает, чтобы передавать оставшиеся лицензии использования в устройство 18 назначения.
В одном примере машина 46 управления передачами осуществляет связь с объектом 48 формирования счетов и объектом 49 доставки. Машина 47 интерфейса осуществляет связь с исходящим устройством 14 и устройством 18 назначения через пользовательский интерфейс 30 устройства или веб-пользовательский интерфейс 41. Машина 47 интерфейса дополнительно осуществляет связь с администратором. В одном примере администратор осуществляет менеджмент и управляет операциями, администрированием и менеджментом системы, как, например, посредством веб-портала 40.
Таким способом, система 22 передачи является выполненной с возможностью осуществлять резервное копирование, восстанавливать и передавать приложения между устройствами 14 и 18, имеющими разные способности, каждое имеет разный исполнимый двоичный код. В качестве примера, исполнимый двоичный код для приложений 12 исходящего устройства может отличаться от исполнимого двоичного кода для устройства 18 назначения. В одном примере система 22 передачи выполнена с возможностью обеспечивать устройство 18 назначения исполнимым двоичным кодом, который может исполняться на устройстве 18 назначения, но является эквивалентным исполнимому двоичному коду приложений 12 для исходящего устройства 14.
Дополнительно, в одном случае, система 22 передачи выполнена с возможностью передавать приложения посредством использования информации на системе 20 распределения на основе предыстории и знания семейства приложений. Дополнительно, система 22 передачи выполнена с возможностью обеспечивать конфигурируемое основанное на правилах преобразование контента для целевых приложений на устройстве 18 назначения. Еще дополнительно, система 22 передачи выполнена с возможностью использовать набор правил, чтобы определять формат преобразования. Еще дополнительно, система 22 передачи выполнена с возможностью выполнять преобразование контента на основе предыстории покупок, преобразования семейства, ценовой информации и т.д.
Дополнительно, система 22 передачи выполнена с возможностью обеспечивать функциональную возможность автоматизированной передачи контента, которая запускается посредством регистрации нового устройства 18, по существу, без какого-либо пользовательского вмешательства. В одном аспекте, как только новое устройство 18 первоначально подсоединяется к сети 10, новое устройство 18 проходит через процесс регистрации так, чтобы установить соединение между устройством 18 и сетью 10. Таким способом, как только соединение нового устройства 18 подтверждается, приложения 16 могут передаваться от исходящего устройства 14 в устройство 18 назначения без какого-либо пользовательского взаимодействия или минимального пользовательского взаимодействия.
Более того, система 22 передачи работает, чтобы обеспечивать многоярусную поддержку определения цены для обновления контента, перекрестной продажи и дополнительной продажи в течение операции передачи контента. Дополнительно, система 22 передачи обеспечивает содержание подсчета использования для приложений ограниченного использования в операции передачи приложений. В одном примере подсчет использования может подсчитываться в течение преобразования контента.
Еще дополнительно, система 22 передачи обеспечивает автоматическое удаление переданных приложений 16. В одном аспекте, как только приложения были переданы в устройство 18 назначения, приложения 12 автоматически удаляются из исходящего устройства 14 без какого-либо пользовательского вмешательства. Еще дополнительно, система 22 передачи обеспечивает программное автоматическое обнаружение учетной информации приложений на основе как устройства 14, так и записей транзакций со стороны сервера (например, лицензий 24). В одном случае система 22 передачи программно определяет приложения 12, находящиеся на исходящем устройстве 12, лицензии, находящиеся на предыстории покупок (например, лицензии 24), и совмещает упомянутые два в один набор информации, чтобы определять преобразование приложений.
Следует принять во внимание с преимуществом настоящего раскрытия, что передача приложений 12 от исходящего устройства 14 в устройство 18 назначения может достигаться без копирования приложения 12, которое передается. Скорее, в одном аспекте, передача приложения 12 осуществляется с использованием лицензионной информации, ассоциированной с приложением 12 исходящего устройства 14. В этом сценарии пользователь исходящего устройства 14 инициирует передачу приложений 12 посредством передачи запроса на передачу контента от исходящего устройства 14 в устройство 18 назначения в систему 22 передачи посредством системы 20 распределения. Система 22 передачи получает лицензионную информацию 24, ассоциированную с приложениями 12. После приема лицензионной информации 24 система 22 передачи запрашивает, чтобы контент, который передается, был удален из исходящего устройства 14, посредством системы 20 распределения. Система 22 передачи также просит систему 20 распределения передать приложения 16 в устройство 18 назначения. После осуществления передачи пользователь может осуществлять доступ к переданным приложениям 16 на устройстве 18 назначения.
Некоторые или все из пользовательских интерфейсов 30, 38 и 41 на устройствах 14 и 18 или веб-портале 40 соответственно могут отображать цены обновлений для обновлений, преобразованных из приложений 12, и подтверждать передачу. Цены для эквивалентных приложений могут также изменяться со временем, гарантируя, что цена обновления будет отображаться для акцептирования на пользовательских интерфейсах 30, 38 и 41. Способ оплаты для переданных приложений может быть в терминах цены подписки, приобретений неограниченных лицензий или приобретений ограниченных лицензий с некоторыми ограничениями, которые подлежат отображению пользователю до акцептирования передачи. Эквивалентные приложения могут передаваться без промежуточного пользовательского отображения и этапа акцептирования в некоторых приложениях.
В одном примере эквивалентность контента приложения указывает на отображение доступного приложения 16, которое может предлагаться для замены существующего приложения 12. Аутентификация и авторизация для веб-доступа через веб-портал 40 могут содержаться для всех доступов к системе 22 передачи и службам 44 из веб конечными пользователями/администраторами/операторами с поставщиком приложений (не показан). В одном примере множественные уровни разрешений могут требоваться для администрирования и операций. Авторизация передачи операторами указывает на механизм авторизации для всех передач посредством операторов. Защищенная связь клиент/сервер для процесса передачи приложений может обеспечивать защищенный путь связи для клиентов 32, 38 и 41 передачи и соединений сервера передачи контента.
База 28 данных приложений может содержать каталог оператора, который обеспечивает интерфейс для операторов, чтобы определять устройства 18, где приложения 16 могут быть переданы. Машина 46 управления передачами может обеспечивать административный интерфейс, чтобы определять бизнес-правила передачи. Управляемая доставка приложений обеспечивает вариант выбора для операторов, чтобы управлять доставкой контента через пользовательский интерфейс UE осуществления покупок или процесс автоматической установки.
Система 22 передачи предпочтительно обеспечивает возможность пользователю приобретать новое устройство 18 или заменять потерянные/поврежденные устройства 14, кроме того быть кредитуемым для приложений 12 на старом устройстве 14. Дополнительно, система 22 передачи обеспечивает возможность пользователю приобретать устройство 18 по сети посредством веб-портала 40, кроме того иметь возможность передавать приложения 12 из старого устройства 14 в новое устройство 18 с использованием веб-портала 40. Еще дополнительно, система 22 передачи обеспечивает возможность пользователю периодически осуществлять резервное копирование приложений 16 устройства 14 пользователя для безопасного хранения или в виде области хранилища для будущего повторного использования. Дополнительно, операторы могут добавлять новые приложения 16 в новое устройство 18 с использованием системы 22 передачи.
Следует принять во внимание с преимуществом настоящего раскрытия, что такая бесшовная миграция лицензированного контента (например, прикладного исполнимого кода) может происходить в проводном или беспроводном сценарии, включая сюда беспроводную передачу пакетов данных, такую как IEEE 802.11, или передачи данных через телефонную сеть. Дополнительно, передача приложений может дополнительно содержать любой тип контента, как сгенерированный пользователем, так и приобретенный, из исходящего устройства 14 в устройство 18 назначения. Контент, который передается, может включать в себя приложения, данные приложений, контент управления цифровыми правами (DRM), и не-DRM контент. Без каких-либо ограничений иллюстративный контент, который может передаваться, может быть мелодиями звонка, фоновыми рисунками, музыкой, адресной книгой, изображениями, видео, службой коротких сообщений (SMS), метаданными приложений и т.д.
Следует принять во внимание, что передача, обеспечиваемая системой 22 передачи, может быть кодами активации или аналогичными активирующими передачами. Приложения в связке, уже установленные, но не активированные на устройстве 18 назначения, могут иметь дополнительные обеспечения защиты при требовании передачи или такое связывание может уменьшать нагрузки передачи на сеть 10 связи, увеличивать пользовательский опыт посредством уменьшения времени, требуемого, чтобы установить приложение, и/или способствовать быстрым изменениям в лицензионных правах от демонстрации ограниченных использований или ограниченных функциональных возможностей в течение использования до более неограниченной лицензии.
В иллюстративном варианте осуществления как исходящее устройство 14, так и устройство 18 назначения являются обеспеченными BREW. Программное обеспечение двоичной среды времени исполнения для Wireless (BREW), разработанное компанией Qualcomm Incorporated из San Diego, California, существует над операционной системой вычислительного устройства, такого как беспроводной сотовый телефон. BREW может обеспечивать набор интерфейсов для конкретных функциональных возможностей аппаратного обеспечения, найденных на вычислительных устройствах.
Следует принять во внимание, что сюда могут включаться дополнительные интерфейсы для верификации, что пользователи находятся в соответствии с лицензированными приложениями не посредством произведенного вручную обхода блокировок приложений или загрузки неавторизованных приложений и т.д. Функциональные возможности защиты могут обеспечиваться системой 22 передачи, как, например, обеспечение канала для новых приложений для сохранения в исполнимой форме, с перекрестной ссылкой на конфигурации существующих и новых устройств, поддерживаемые сетью 10 связи, и т.д.
На фиг. 2 способ 52 передачи динамической учетной информации между устройствами пользовательского оборудования (например, сотовыми телефонами, ручными интегрированными устройствами сообщений, персональными цифровыми ассистентами, ручными общего назначения компьютерами и т.д.) начинается на этапе 53 посредством учета лицензированного контента (например, прикладного исполнимого кода) на исходном устройстве. Лицензионные транзакции подтверждаются, чтобы устанавливать эти приложения на исходном устройстве как действительным образом лицензированные на этапе 54. В одном аспекте передача этих действительных приложений, которые пользователь является уполномоченным использовать, в устройство назначения, которое может быть построено на разной вычислительной платформе (например, наборе микросхем, операционной системе), требует преобразования исходных приложений в те, которые могут распределяться и которые будут работать на устройстве назначения. Таким образом, на этапе 55 делается перекрестная ссылка на каталог приложений, чтобы определять, может ли распределяться эквивалентная версия, версия обновления или альтернативное предложение в той же категории (например, игра, персональный организатор, медиапроигрыватель и т.д.). На этапе 56 бизнес правила применяются, чтобы автоматически предлагать конфигурацию, которая является подходящим образом сконфигурированной, чтобы передавать лицензированные приложения, возможно с эквивалентными, обновленными или альтернативными версиями. На этапе 57, если пользователь не акцептирует предложенную конфигурацию, то делается доступным альтернативное предложение, которое в иллюстративном варианте осуществления изображается как являющееся теми приложениями, которые могут распределяться при отсутствующей дополнительной стоимости над текущей стоимостью лицензированных приложений в исходном устройстве (этап 58), и обработка возвращается на этап 57. Следует принять во внимание, что в некоторых случаях такие преобразования могут иметь следствием предварительно одобренные бизнес-правила, так что пользователь согласился нести затраты для обновлений по мере того, как они становятся доступными. С предложенной динамической учетной информацией лицензированных приложений для устройства назначения, акцептированной на этапе 57, на этапе 59, эта динамическая учетная информация распределяется возможно в исполнимом формате для оптимизированной работы на устройстве назначения. База данных транзакций, которая подтверждает действительные лицензии, обновляется, чтобы отражать эту передачу на этапе 60. Цикл формирования счетов пропорционально рассчитывается на этапе 61, чтобы отражать дату передачи для тех лицензий, которые оплачены посредством идущей подписки и затрагиваются изменением в цене подписки. На этапе 62 делается определение в отношении того, предполагается ли эта передача временной (например, пользователь выбирает использовать одно из множества устройств для использования). Если так, приложение может предпочтительно блокироваться на исходном устройстве на этапе 63, чтобы уменьшать служебную информацию связи в будущем, чтобы передавать приложение назад в исходное устройство. Если считается перманентная передача на этапе 62, то приложение на исходном устройстве удаляется на этапе 64. Такое удаление может происходить как автоматизированная функциональность, которая может быть желательной в ситуациях, где пользователь более не находится в управлении исходным устройством (например, потеряно или украдено). Если исходное устройство не является работоспособным или не осуществляющим связь с сетью, такое ожидающее действие удаления может откладываться до тех пор, когда устройство восстановит связь или будет включено.
На фиг. 3 иллюстрируется способ 70 для передачи динамической учетной информации (например, приложений), когда возникают возможности для обновлений или перекрестной продажи, и, в частности, для процесса, выполняемого в фоновом режиме по отношению к пользователю. Когда определяется на этапе 72, что новая версия приложения является доступной, делается определение в отношении того, имеется ли преимущество для сети над предыдущей версией приложения (этап 74). Например, некоторые приложения могут накладывать бремя связи на часть поставщика всей сети, быть поддающимися к злонамеренному программному проникновению, которое не только повредит репутации разработчика приложения, но может также ухудшить производительность сети поставщика, быть причиной нарушений функционирования оборудования, что ухудшит репутацию исходного производителя оборудования (OEM), также вызывает общую неудовлетворенность сетевыми службами, если ошибочно обвиняются поставщик или оператор сети, и т.д. В качестве другого примера, более старая версия приложения может отправлять больше передач отчетов и обработки по сети, что с более поздними улучшениями в оборудованиях UE становится обрабатываемым распределенным способом, таким образом давая преимущество для сети. Следовательно, нежели ожидать, когда пользователь запросит замену такого предыдущего приложения, на этапе 78, может инициироваться автоматическое обновление для эквивалентных приложений, которые выставлены. В некоторых случаях новая версия может рассматриваться значительным обновлением и не просто эквивалентным приложением. Например, поставщик для нового приложения может не соглашаться на бесплатную установку для них с предыдущей версией. На этапе 80, так как сеть все еще получает нагрузку от пользователей, предпочитающих передавать приложение в текущее устройство, используются рекламные каналы, чтобы предлагать выбор пользователям, возможно с большой скидкой, для поощрения акцептирования. Затем новое приложение включается в каталоги перекрестной ссылки на этапе 82. Бизнес-правила, применимые к этому приложению, могут делать это приложение предпочтительным вариантом выбора, чтобы предлагать для будущих передач приложений, и дополнительно могут делать предыдущую версию недоступной для будущих приобретений для тех платформ, поддерживаемых новой версией. Если назад на этапе 74, новая версия не имеет преимущества для сети, то приложение добавляется к перекрестной ссылке доступных приложений со стандартным приложением бизнес-правил относительно ставок приобретения или подписки.
На фиг. 4 иллюстративный вариант осуществления системы связи 104 изображается согласно некоторым аспектам как любой тип компьютеризированного устройства, как, например, исходящее устройство или устройство 14 назначения на фиг. 1. Например, устройство 104 связи может содержать мобильное устройство связи, такое как беспроводной и/или сотовый телефон. Альтернативно, устройство 104 связи может содержать фиксированное устройство связи, такое как сервер функции управления вызовами/сеансами прокси (P-CSCF), сетевое устройство, сервер, компьютерную рабочую станцию и т.д. Следует понимать, что устройство 104 связи не ограничено такими описанными или проиллюстрированными устройствами, но может дополнительно включать в себя персональный цифровой ассистент (PDA), двусторонний текстовый пейджер, портативный компьютер, имеющий портал проводной или беспроводной связи, и любой тип компьютерной платформы, имеющей портал проводной и/или беспроводной связи. Дополнительно, устройство 104 связи может быть удаленным-подчиненным или другим аналогичным устройством, таким как удаленные датчики, удаленные серверы, диагностические инструменты, ретрансляторы данных и подобным, которое не имеет его конечного пользователя, но которое просто осуществляет передачу данных через беспроводную или проводную сеть. В альтернативных аспектах устройство 104 связи может быть проводным устройством связи, таким как телефон наземной линии, персональный компьютер, приставка к телевизору или подобное. Дополнительно, следует отметить, что любая комбинация любого количества устройств 104 связи единичного типа или множества вышеупомянутых типов может использоваться в сотовой системе связи (не показана). Поэтому настоящее устройство и способы могут соответственно выполняться на любой форме проводного или беспроводного устройства или компьютерного модуля, включая сюда портал проводной или беспроводной связи, включая сюда без ограничения беспроводные модемы, платы международной ассоциации карт памяти персонального компьютера (PCMCIA), терминалы доступа, персональные компьютеры, телефоны или любую комбинацию или подкомбинацию перечисленного.
Дополнительно, устройство 104 связи может включать в себя пользовательский интерфейс 106 в целях, таких как запрашивание, взаимодействие с и/или проигрывание медиаконтента 14. Этот пользовательский интерфейс 106 включает в себя устройство 108 ввода, выполненное с возможностью генерировать или принимать пользовательский ввод в устройство 104 связи, и устройство 110 вывода, выполненное с возможностью генерировать и/или представлять информацию для потребления пользователем устройства 104 связи. Например, устройство 106 ввода может включать в себя, по меньшей мере, одно устройство, такое как клавишная панель и/или клавиатура, мышь, дисплей сенсорного экрана, микрофон в ассоциации с модулем распознавания речи и т.д. В некоторых аспектах устройство 108 ввода может обеспечивать пользовательский ввод запроса на контент или пользовательский ввод запроса на дополнительную информацию. Дополнительно, например, устройство 110 вывода может включать в себя дисплей, аудиогромкоговоритель, тактильный механизм обратной связи и т.д. Устройство 110 вывода может генерировать графический пользовательский интерфейс, звук, ощущение, такое как вибрация, и т.д., и такие выходы могут быть ассоциированы, например, с использованием лицензированного приложения 111.
Дополнительно, устройство 104 связи может включать в себя компьютерную платформу 112, выполненную с возможностью исполнять приложения, чтобы обеспечивать функциональность устройству 104, и которая может дополнительно взаимодействовать с устройством 108 ввода и устройством 110 вывода. Компьютерная платформа 112 может включать в себя память, которая может содержать энергозависимую и энергонезависимую части памяти, такие как память только для чтения и/или произвольного доступа (RAM и ROM), стираемое программируемое постоянное запоминающее устройство (EPROM), электронно-перепрограммируемая постоянная память (EEPROM), флэш-память и/или любую память общую для компьютерных платформ. Дополнительно, память может включать в себя активную память и память хранения, включая сюда электронную файловую систему и любое вторичное и/или третичное запоминающее устройство, такие как магнитные носители, оптические носители, ленту, мягкий и/или жесткий диск, и компоненты съемной памяти. В иллюстративном варианте осуществления память изображается как RAM память 112 и компонент 116 энергонезависимого локального хранилища, оба каждый соединен с шиной 119 данных компьютерной платформы 112.
Дополнительно, компьютерная платформа 112 может также включать в себя процессор 120, который может быть связанным с конкретным приложением интегральной схемой (ASIC), или другим набором микросхем, процессором, логикой, схемой или другим устройством обработки данных. В некоторых аспектах, таких как, когда устройство 104 связи содержит сотовый телефон, процессор или другая логика, такая как связанная с конкретным приложением интегральная схема (ASIC) 122, может исполнять уровень 124 прикладного программного интерфейса (API), который осуществляет интерфейс с любыми находящимися программными компонентами, изображенными как другие приложения 125, которые могут быть активными в памяти 114 для других функций (например, управления вызовом связи, часов сигнала тревоги, текстовой передачи сообщений и т.д.). Следует принять во внимание с преимуществом настоящего раскрытия, что приложения, совместимые с аспектами настоящего изобретения, могут опускать другие приложения и/или опускать возможность принимать потоковый контент, такой как речевой вызов, вызов данных, и относящиеся к медиаприложению в памяти 114. API 124 устройств могут быть средой времени исполнения, исполняющейся на соответствующем устройстве связи. Одна такая среда времени исполнения API 124 - это BREW API 126, изображенная отдельно и разработанная компанией QUALCOMM Incorporated из San Diego, California. Могут использоваться другие среды времени исполнения, которые, например, работают, чтобы управлять исполнением приложений на беспроводных вычислительных устройствах.
Дополнительно, процессор 120 может включать в себя различные обрабатывающие подсистемы 128, осуществленные в аппаратном обеспечении, встроенном программном обеспечении, программном обеспечении и комбинациях перечисленного, которые обеспечивают функциональность устройства 104 связи и работоспособность устройства 104 связи в системе 100 связи. Например, обрабатывающие подсистемы 128 обеспечивают возможность для инициирования и поддержания связи, и обмена данными с другими сетевыми устройствами, так же как внутри и/или среди компонентов устройства 104 связи. В одном аспекте, как, например, в сотовом телефоне, процессор 120 может включать в себя одну или комбинацию обрабатывающих подсистем 128, как, например: звук, энергонезависимую память, файловую систему, передачу, прием, модуль поиска, уровень 1, уровень 2, уровень 3, главное управление, удаленную процедуру, телефонную трубку, управление питанием, диагностику, цифровой сигнальный процессор, вокодер, передачу сообщений, администратор вызовов, систему Bluetooth, Bluetooth LPOS, определение положения, машину положения, пользовательский интерфейс, режим ожидания, службы данных, защиту, аутентификацию, USIM/SIM (модуль универсальной абонентской идентификационной информации/модуль абонентской идентификационной информации), службы передачи речи, графику, USB (универсальную последовательную шину), мультимедиа, как, например, мультимедиа протокола MPEG (группа экспертов по движущимся изображениям), GPRS (пакетная радиосвязь общего назначения), SMS, службу короткой передачи речи (SVS™), веб-браузер и т.д. Для раскрытых аспектов обрабатывающие подсистемы 128 процессора 120 могут включать в себя любые компоненты подсистемы, которые взаимодействуют с приложениями, исполняющимися на компьютерной платформе 112.
Компьютерная платформа 112 может дополнительно включать в себя модуль 130 связи, который обеспечивает возможность связи среди различных компонентов устройства 104 связи, так же как является работоспособным для осуществления связи, относящейся к лицензированным приложениям 111. Модуль 130 связи может быть реализован в аппаратном обеспечении, встроенном программном обеспечении, программном обеспечении и/или комбинациях перечисленного, и может дополнительно включать в себя все протоколы для использования в осуществлении связи внутри устройств и между устройствами. Дополнительно, модуль 130 связи является работоспособным, чтобы передавать и/или принимать информацию, такую как запрашивание, и прием лицензированного приложения 111 в соответствии с устройством и способами, здесь описанными.
Некоторые из этих способностей устройства 104 связи могут обеспечиваться посредством кода, загруженного из локального хранилища 116, удерживаемого в памяти 114, и исполняемого процессором 120, как, например, операционная система (OS) 132. Модуль 134 пользовательского интерфейса способствует интерактивному управлению с пользовательским интерфейсом 106. В дополнение, динамическая учетная информация 140, которая обеспечивает потребительскую настройку функциональных возможностей устройства 104 связи, может включать в себя сохраненные копии 142 лицензированных приложений 112 (например, как лицензированный, так и нелицензированный, исполнимый и/или интерпретируемый код), сгенерированный приложением контент 144, защищенный контент 146 распределения и пользовательские данные 148. Без каких-либо ограничений примерами сгенерированного приложением контента 144 могут быть установки, сгенерированные приложением данные, установки пользовательского интерфейса, установки служб и т.д. Распределенный защищенный контент 146 может быть вызывными тональными сигналами, фоновым рисунком, темами, игровыми уровнями, очками, DRM защищенным контентом (например, музыкой, видео и т.д.), состоянием приложения, данными приложения и т.д. Пользовательские данные 148 могут включать в себя сгенерированный пользователем контент или базовый контент устройства (сгенерированный или иной). Сгенерированный пользователем контент 144 может включать в себя изображения, видео и т.д., в то время как базовый контент устройства может включать в себя контакты, календарь, установки телефона, ассоциации вызывного тонального сигнала, SMS (т.е. текстовые сообщения сотового телефона), сообщения, регистрации вызовов, сетевой установки и т.д.
BREW API 126 обеспечивают возможность для приложений вызывать интерфейсы API 124 устройств и другие функции без необходимости быть записанными специально для типа устройства 104 связи. Таким образом, лицензированное приложение 112 может работать идентично, или с незначительными модификациями, на некотором количестве разных типов конфигураций аппаратного обеспечения внутри рабочей среды, обеспеченной посредством BREW API 126, который абстрагирует некоторые аспекты аппаратного обеспечения. BREW расширение 150 добавляет дополнительную способность к программной платформе BREW API 126, как, например, предложение MP3 проигрывателей, виртуальные машины Java и т.д. Архитектура uiOne™, разработанная компанией QUALCOMM Incorporated как часть BREW, обеспечивает набор BREW расширений, которые обеспечивают возможность быстрой разработки богатых и настраиваемых под потребителя UI (т.е. активного контента, обновляемого по эфиру (OTA)), помогает развивать бизнес загрузок за пределами приложений, обеспечивает темы части или всего UI телефонной трубки, и использует BREW UI Widgets. Таким образом, BREW uiOne уменьшает время для вывода на рынок для телефонных трубок, потребительской настройки поставщика и потребительской персонализации. Чтобы делать это, BREW uiOne обеспечивает ясный набор абстракций, добавляя два новых уровня в стек разработки приложения для BREW. В иллюстративном варианте осуществления иллюстративный клиент 160 передачи устройства согласно одному аспекту включает в себя ссылочный/демо пользовательский интерфейс (UI) 162 актора, потребительский пользовательский интерфейс 164 и Widget (UIW) 166 пользовательского интерфейса. В одном примере пользовательский интерфейс 164 является пользовательским интерфейсом Widget BREW, расширением 168 передачи, IDownload 170 и IMutualAuth/IWeb 172. Как показано, расширение 168 передачи устройства является способным посылать данные в IDownload 170 и IMutualAuth/IWeb 172. Таким же образом IDownload 170 является способным посылать данные в IMutualAuth/IWeb 172.
Клиент 160 передачи инициирует повторное использование логики возврата кредита для приложения 112. Ссылочный/демо UI 162 актора посылает запрос передачи приложения в расширение 168 передачи. Расширение 168 передачи посылает запрос загрузки в IDownload 170, за которым следует IDownload 170, обеспечивающий количество оставшихся повторных использований в расширение 168 передачи. Расширение 168 передачи затем посылает сообщения в IDownload 170 и устройство взаимной аутентификации (MA)/веб (не показано), чтобы определять количество оставшихся загрузок, и дополнительно запрашивается удаление оставшихся загрузок в устройстве 104 связи. Клиент 160 после этого уведомляется.
Аналогично, клиент 160 передачи устройства 104 связи назначения инициируется, согласно одному примеру. Расширение 168 передачи принимает сообщение, чтобы показывать все приложения пользователя. Расширение 168 передачи посылает сообщение в MA/веб, запрашивая требуемую информацию. После приема списка приложений пользователя расширение 168 передачи посылает сообщение пользователю. При приеме элементов, выбранных для передачи пользователем, расширение 168 передачи посылает сообщение в MA/веб. После того как расширение 168 передачи было уведомлено, расширение 168 передачи посылает запрос в IDownload 170, чтобы инициировать загрузку выбранных элементов. IDownload 170, в свою очередь, осуществляет связь с MA/веб так, чтобы получить выбранные элементы. Как только элементы были загружены успешно, расширение 168 передачи уведомляется. Другие компоненты для передачи лицензированных приложений 112 обеспечиваются посредством других компонентов, находящихся в памяти 114 для исполнения процессором 120, включая сюда компонент 174 пользовательского интерфейса передачи для использования пользовательского интерфейса 160, чтобы взаимодействовать с пользователем. В дополнение, компонент 176 захвата контента и лицензий помогает в учете лицензированных приложений 112, сохраненных на устройстве 104 связи. Компонент 178 аутентификации и авторизации выполняет часть устройства взаимной аутентификации с другими компонентами сети 10 связи (фиг. 1). Механизм 180 удаления контента и квитирования отвечает на команды, чтобы удалять лицензированные приложения 112 после передачи в устройство 104 связи назначения. Протокол 182 интерфейса обеспечивает необходимые преобразования протокола между устройством 104 связи и другими компонентами сети 10 связи.
На фиг. 5 иллюстративный сервер 200 передачи, который выполняет функции системы 22 передачи на фиг. 1, согласно одному аспекту, включает в себя уровень 202 представления, уровень 204 интерфейса бизнес-логики, бизнес-уровень 206, уровень 208 доступа к данным, уровень 210 интеграции внешних систем, который осуществляет связь с внешними системами 212, и компонент 214 общих служб. В одном примере уровень 202 представления может использовать Java server faces, бизнес-уровень 206 использует Java 2, Enterprise Edition (J2EE), общие службы 214 используют J2EE, уровень 210 интеграции внешних систем использует чистый J2EE, и уровень 208 доступа к данным использует DAO или сгенерированный с помощью torque DAO.
Уровень 202 представления сервера 200 передачи может быть веб-ярусом и ярусом устройства. Уровень 202 представления обеспечивает интерфейсы для разных типов клиентов (например, мобильного устройства, браузера сети Интернет и т.д.). Уровень 202 представления включает в себя веб-интерфейс 216 абонента, соединенный с абонентским устройством 218 с поддержкой веб, администраторским веб-интерфейсом 220, соединенным с администраторской с поддержкой веб-системой 222, и интерфейсом 224 устройства. Абонентский веб-интерфейс 216 обеспечивает возможность пользователю осуществлять доступ к системе 22 передачи, как обеспечивается сервером 200 передачи с использованием веб-браузера 226. Администраторский веб-интерфейс 220 обеспечивает возможность конфигурирования и управления процессом передачи контента с использованием веб-браузера 228. Интерфейс 224 устройства обеспечивает возможность пользователю устройства осуществлять доступ к серверу 200 передачи с использованием устройства 230 пользователя посредством связи взаимной аутентификации через MA прокси 232. В одном примере интерфейс устройства может включать в себя генерирование Web-страниц, так же как интерпретацию пользовательских запросов.
Согласно одному примеру сервер 200 передачи обеспечивает стандартное/ссылочное представление, которое содержит простые Web-страницы. В одном примере уровень 202 представления реализован с использованием каркаса Java Server Faces. Согласно одному примеру поставщик (или поставщик контента) может реализовать собственную логику представления поставщика, которая может легко преобразовываться в бизнес-логику, включенную в бизнес-уровень 206.
Уровень 204 интерфейса бизнес-логики определяет интерфейсы, реализованные, чтобы отделять логику представления, внедренную в интерфейсы 216, 220 и 224, от бизнес-логики, внедренной в бизнес-уровень 206. Уровень 204 интерфейса бизнес-логики обеспечивает возможность серверу 200 передачи быть развернутым как изолированный сервер или быть реализованным как веб-службы. В одном случае интерфейсы 204 бизнес-логики могут группироваться на основе соответствующих функциональностей, таким образом делая развертывание системы 22 передачи более гибким.
Бизнес-уровень 236 включает в себя пользовательский администратор 236, который имеет API authenticateUser(uname, passcode), который проверяет действительность мандата пользователя (например, пользовательское имя и пароль). Пользовательский администратор 236 имеет API newRegistration(), который создает нового пользователя и имеет API mapUserIDToSid(), который преобразует пользовательский ID в абонентский ID. Пользовательский ID может быть мобильным номером директории (MDN), мобильным идентификационным номером (MIN) и т.д. Система 237 поставщика внешних систем 212 обеспечивает преобразование и осуществляет интерфейс с уровнем 210 интеграции внешних систем посредством интерфейса 239 поставщика. Администратор 238 истории покупок бизнес-уровня 206 имеет API getSIDPurchasedApplications(), который получает список приложений (или контента), приобретенных абонентом. Список состоит из приложений, которые в настоящее время установлены на устройстве, также как приложений, удаленных абонентом ранее. Администратор 240 правил (машина) бизнес-уровня 206 имеет API getApplicationMappings(appsList), который получает список приложений (или контента), которые могут быть переданы в новое устройство, после применения правила передачи (например, преобразования лицензированных приложений в замещающее приложение, идущее в назначение, или определения цены передачи). Администратор 240 правил (машина) также имеет API getDefaultPriceOptions(appid, pid), что, когда преобразованное приложение (или контент) имеет более чем один вариант выбора цены, тогда логика представления этой функции может определять устанавливаемый по умолчанию вариант выбора цены. Эта функция является полезной в течение MA регистрации. В одном примере, в течение MA регистрации, пользователь может не иметь варианта выбора, чтобы выбирать варианты выбора цены. Администратор 242 доставки бизнес-уровня 206 имеет API deliverApplications(appsList), который делает запрос альтернативной покупки для каждого приложения (или контента). Администратор 244 устройства бизнес-уровня 206 имеет API validateDeviceID(deviceID), который проверяет действительность того, принадлежит ли ID устройства сети поставщика. Администратор 244 устройства бизнес-уровня 206 имеет API ListgetAvailableDeviceID(), который получает список устройств, доступных с ассоциацией поставщика. Посредством использования этого API веб-интерфейс может отображать доступные ID устройства для абонента, так что абонент может выполнять проверочную передачу. Администратор 246 учетной информации устройства имеет API SetDeviceLicenseInformation (list), который хранит список приложений (или контента), извлеченный из абонентского устройства.
Бизнес-уровень 206 содержит логику передачи системы 22 передачи. В одном примере бизнес-уровень 206 может разрабатываться с использованием Java. В одном случае уровень 206 представления взаимодействует с уровнем 204 интерфейса бизнес-логики, шаблоном проектирования фасада (не показан) и администратором 248 передачи. Согласно одному примеру администратор 248 передачи обеспечивает единичную точку входа в бизнес-уровень 206. В одном случае уровень 202 представления может взаимодействовать с модулями в бизнес-уровне 206 с использованием хорошо определенных модулей.
Согласно одному примеру администратор 248 передачи реализует интерфейсы, определенные уровнем 204 интерфейса бизнес-логики. Администратор 248 передачи отвечает за интерпретации запросов от клиента, загрузку соответствующих обработчиков запросов и перенаправление вывода обработчиков запросов в должный класс ответа. Администратор 248 передачи работает, чтобы извлекать затребованный параметр со значением из запросов, и вручает список параметров обработчикам запросов.
Администратор 246 учетной информации устройства является ответственным за поддержку лицензионных данных для контента, представленного клиентом 160 передачи устройства (фиг. 3). Клиент 160 передачи устройства представляет лицензионные данные, когда операция передачи инициируется с использованием клиента 160 передачи устройства. В одном примере администратор 246 учетной информации устройства работает, чтобы сохранять временно лицензионные данные в памяти и обеспечивает API, чтобы извлекать лицензионные данные. В одном примере администратор 246 учетной информации устройства реализует DeviceInventoryInterface интерфейс. В другом примере администратор 246 учетной информации устройства может работать, чтобы получать лицензионные данные от устройства в веб инициированной передаче.
Администратор 238 истории покупок является ответственным за извлечение списка контента, приобретенного абонентом. В одном примере предыстория извлекается из системы 250 распределения внешних систем 212 с использованием интерфейса 252 службы уровня 210 интеграции внешних систем. Администратор 238 истории покупок работает, чтобы извлекать предысторию приобретения или транзакции абонента, извлекать приобретенный и удаленный контент абонента и обеспечивать API, необходимые, чтобы осуществлять доступ к предыстории. В одном случае администратор 238 истории покупок извлекает приобретенный еще удаленный контент с использованием интерфейса 252 службы. Согласно одному аспекту сервер 200 передачи может извлекать предысторию покупок, даже если клиент 160 передачи устройства не присутствует.
Администратор 254 совмещения является ответственным за поддержку единичного списка загруженного контента абонента. Сервер 200 передачи имеет два набора списков контента; один список содержит предысторию покупок и другой список содержит учетную информацию контента устройства. Администратор 254 совмещения объединяет упомянутые два списка контента в единичный список контента. Администратор 254 совмещения может сохранять совмещенный список контента в базе данных для будущего использования. Администратор 254 совмещения дополнительно обеспечивает API, чтобы извлекать сохраненный список контента. В одном примере администратор 254 совмещения сохраняет совмещенный список контента в локальной базе данных. Как только контент передается из сервера 200 передачи в устройство 18 назначения (фиг. 1), администратор 254 совмещения может удалять совмещенный список контента после определенного периода. В одном случае администратор 254 совмещения работает, чтобы представлять клиенту совмещенный список. В одном примере администратор 254 совмещения реализует API интерфейс ReconcileInterface.
Передача контента может зависеть от правила передачи (например, преобразования лицензированных приложений в замещающее приложение, идущее в назначение, или определения цены передачи). Администратор 240 правил (машина) реализует и исполняет правило в течение процесса передачи контента. В одном случае администратор 240 правил (машина) является ответственным за выбор целевого контента для каждого контента источника. Реализованные правила обеспечивают, что для каждого контента в списке единичный контент преобразуется в устройство 18 назначения. Администратор 240 правил (машина) дополнительно работает, чтобы определять наилучшим образом подходящий контент для целевого устройства 18 назначения посредством применения правила передачи.
Администратор 240 правил (машина) дополнительно обеспечивает возможность оператору устанавливать новые правила передачи. В одном примере, когда контент, выбранный для передачи, не является доступным в каталоге поставщика контента, оператор может дать полный кредит абоненту. Оператор может также дать частичный кредит абоненту на основе формулы (например, логики, доступной в контенте Creditback, и т.д.). В одном примере способ определения цены или основа определения цены может не быть представлена. Когда пользователь имеет оставшиеся лицензии или лицензии, которые никогда не были использованы, оператор может кредитовать оставшиеся лицензии, передать все лицензии или передать только оставшиеся лицензии. Могут иметься правила для новой версии, обновления или эквивалентности. В одном случае поставщик может решать, какой контент подлежит использованию вместо заданного контента. В одном примере машина правил реализует интерфейс AXMappingInterace.
После того как целевой контент был определен, следующий этап - это доставить контент в устройство назначения. В одном примере администратор доставки работает, чтобы доставлять переданный контент в устройство назначения. Фактическая загрузка целевого контента в устройство 18 назначения инициируется устройством 18 назначения, в одном примере. Администратор 242 доставки работает, чтобы создавать запрос альтернативной покупки (событие) для каждого переданного контента и представляет запрос альтернативной покупки в DS 250. В одном случае вариант выбора доставки - это элемент конфигурации. Контент может доставляться с использованием варианта выбора автоматической установки, может быть моментальным снимком, доставляемым в директорию myApps в устройстве 18 назначения, и т.д. В одном примере администратор 242 доставки реализует интерфейс API Delivery Interface.
Пользовательский администратор 236 работает, чтобы управлять пользовательской учетной записью сервера передачи. В одном примере сервер 200 передачи может поддерживать конечного пользователя, администратора и бизнес-пользователя. Конечный пользователь может передавать контент и использовать некоторые дополнительные службы. Администратор может выполнять каждодневную деятельность (например, передачу контента, добавление привилегий настроек нового пользователя для пользователя и т.д.), резервное копирование, генерировать доклады и использовать некоторые комплементарные службы. Бизнес-пользователь может передавать контент, генерировать доклад, устанавливать правило передачи и использовать некоторые комплементарные службы. В одном случае, согласно установке по умолчанию, сервер 200 передачи может иметь одного суперпользователя, который может выполнять все действия, перечисленные выше. Абонент должен зарегистрироваться в сервере 200 передачи. В одном примере пользовательский администратор 236 реализует API UserAccountInterface.
Уровень 208 доступа к данным обеспечивает абстракции для базы данных в API 258 базы данных (например, скрывает сложность лежащего в основе механизма базы данных). Уровень 208 доступа к данным работает, чтобы обеспечивать преобразование табличных записей в бизнес-объекты и наоборот. В одном примере уровень 208 доступа к данным может использовать каркас объектного преобразования torque. В одном случае, для каждой таблицы, могут определяться источник данных и DAO объект.
Уровень 210 интеграции внешних систем обеспечивает возможность бизнес-слою 206 взаимодействовать с внешними системами 212 с использованием хорошо определенных интерфейсов 237 и 250. Сервер 200 передачи может взаимодействовать с DS 250 с использованием интерфейса 252 службы. Уровень 210 интеграции внешних систем может обеспечивать абстракцию для интерфейсов API 252 интерфейса службы. Сервер 200 передачи может взаимодействовать с системой 237 поставщика для аутентификации пользователя или устройства. Уровень 210 интеграции внешних систем может обеспечивать доступ к MDN для преобразования абонентской идентификации (SID).
Уровень 214 общих служб сервера передачи содержит модули, к которым может осуществляться доступ напрямую некоторым количеством функциональных объектов (например, уровнем 202 представления, уровнем 204 интерфейса бизнес-логики, бизнес-уровнем 206, уровнем 208 доступа к данным, уровнем 210 интеграции внешних систем и т.д.). Общие службы 214 сервера передачи включают в себя администратор 264 сеансов, администратор 266 приложений, администратор 268 конфигурации, администратор 270 плагинов, администратор 272 исключений, администратор 274 регистрации, утилиты 276 и администратор 278 каталога.
Администратор 264 сеансов имеет API SessionID opcnTransfer(), который создает новый сеанс передачи и с API closeTransfer(SessionID), который закрывает сеанс, созданный функцией openTransfer(). Администратор 264 сеансов поддерживает сеанс для каждой передачи и обеспечивает API, чтобы сохранять переданные данные в сеанс.
Администратор 268 конфигурации обеспечивает возможность администратору устанавливать системную конфигурацию. Администратор 268 конфигурации дополнительно обеспечивает классы, которые могут использоваться другими модулями, чтобы осуществлять доступ к значениям конфигурационных параметров передачи. Конфигурационные данные могут сохраняться как документ XML.
Администратор 270 интерфейса (плагинов) является ответственным за создание и поддержание соединителей интеграции внешних систем. В течение запуска сервера 200 передачи администратор 270 интерфейса создает экземпляры соединителей внешних систем. Внешний интерфейс может быть реализован как набор плагинов.
Администратор 272 исключений имеет дело со случаями исключений системы или с внешней системой. Администратор 272 исключений работает, чтобы исправлять время исполнения посредством использования устанавливаемой по умолчанию установки, остановки системы 22 передачи корректным образом или предприятия других действий.
Администратор 274 регистрации обеспечивает API, чтобы создавать регистрационный файл. Упомянутый API обеспечивает возможность другим модулям добавлять регистрационные данные в регистрационный файл. В одном случае только администратор передачи бизнес пользователя может видеть различные регистрации. Администратор регистрации может использовать пакет с открытым исходным кодом log4j, чтобы управлять регистрациями передачи.
Модуль 276 утилит содержит различные классы утилит (например, строковую утилиту, утилиты числового форматирования, утилиты документа XML и т.д.). Администратор 276 утилит может содержать подмодуль планирования, который планирует доставку контента.
Администратор 266 приложений является ответственным за запуск и завершение работы сервера 200 передачи. Администратор 266 приложений работает, чтобы инициализировать различные модули в бизнес-уровне 206, и может быть ответственным за управление единичными экземплярами в бизнес-логике. В одном примере база данных может включать в себя таблицу передач, таблицу пользовательских учетных записей (необязательно), таблицу элементов и таблицу правил. Таблица передач регистрирует запросы приобретения, представленные в интерфейс 252 службы.
В одном аспекте сервер 200 передачи может реализовывать HTTPS, HTML, веб-службы (SOAP), XML, каскадную таблицу стилей и т.д. В одном примере преобразование MDN в SID обеспечивается системой 237 поставщика. Сервер 200 передачи может определять интерфейс 239. Сервер 200 передачи осуществляет связь с интерфейсом 252 службы, который в одном примере является BREWZone. В одном случае передача контента из сервера 200 передачи в устройство 230 происходит после того, как абонент проверил действительность устройства или выполнил регистрацию MA.
Передача лицензированных приложений автоматически способствует оценке, согласованию и формированию счетов, чтобы способствовать передаче. С этой целью бизнес-логика обращается к оценке существующих лицензионных прав и предложению соответствующей цены для передачи эквивалентных или обновленных лицензионных прав для другого устройства. Эти вычисления отражают изменения в цене, которые могут происходить, когда осуществляется разное количество контента или создается новое определение цены. Например, в способе цены приобретения (PM), значения цены списка поставщика (CLP) и цены приложения разработчика (DAP) равны нулю; следовательно, для абонента может не предъявляться счет. В способе цены подписки, так как рекуррентное формирование счетов генерируется на основе значений DAP и CLP, цена может быть такой же, как цена каталога. Поэтому, в одном примере, эффективная цена подписки может базироваться на цене каталога и новая цена подписки будет эффективной. Если формирование счетов подписки (SB) уже было сгенерировано для месяца, событие временной регулировки (TA) может генерироваться сервером 200 передачи (фиг. 5), чтобы кредитовать за восстановление события удаления (DL) сервера передачи, если, например, контент находится в таком же семействе. Если формирование счетов подписки не было сгенерировано для месяца, TA не должна генерироваться. DE (SE) находится на исходящем устройстве, в то время как DL (SB) находится на устройстве назначения. Для подписки ограниченной продолжительности значения CLP и DAP равны нулю, так как удаление контента подписки ограниченной продолжительности может не оканчивать формирование счетов подписки. В одном примере подписка может базироваться на комбинации идентификации программного обеспечения (SID)/идентификации аппаратного обеспечения (hwID). Устройство назначения может иметь разный hwID. Для способа цены демонстрации, согласно одному примеру, оставшиеся лицензии будут восстанавливаться независимо от того, находятся ли типы основы цены в соответствии с исходным PBT.
В одном случае, независимо от того, находятся ли типы основы цены в соответствии с исходным PBT, оставшиеся лицензии будут восстановлены. Согласно одному аспекту локальный описатель цены может использоваться с потребительским PM/PBT/PBV для альтернативной доставки с использованием BREWZone. В одном примере BREWZone обеспечивает доставку элементов с потребительским определением цены. BREWZone может дополнительно посылать событие TA в базу данных транзакций (TXN) посредством формирования счетов стоимости услуг (SVB). Когда лицензия прекращает срок действия, пользователь может купить другие типы лицензии PBT, даже когда PBT не подходит для устройства назначения. В одном примере TXN может не включать в себя какие-либо перекрестные ссылки на какие-либо реальные описатели цены. Дополнительно, согласно одному аспекту, никакие регулировки не могут делаться, так как CLP/DAP равна нулю. В одном случае subtype/SVB-State, равный двум, будет использоваться для доставки.
Альтернативно, в способе цены подписки, неограниченная подписка восстанавливается на устройстве назначения. Если цена изменилась, новая цена подписки может использоваться. Так как подписка ограниченной продолжительности уже была оплачена, подписка ограниченной продолжительности будет восстановлена таким же образом, как частичная лицензия, даже если удалена ранее. В одном примере дополнительное SB генерируется с нулевой CLP/DAP. Согласно одному примеру может использоваться sub-type/SVB State, эквивалентное двум (2) или трем (3). В одном случае доставка контента может быть посредством альтернативной покупки с использованием BREWZone.
В поддержку такой бизнес-регистрации, на фиг. 6, иллюстративная структура 300 данных устройства, используемая клиентом 160 передачи устройства на фиг. 4, выполняет динамическую учетную информацию лицензированных приложений. Каждая запись соответствует приложению в текущее время установленному и лицензированному, или удаленному, на устройстве 104 связи (фиг. 4). Каждое лицензированное приложение указывается посредством ссылки индекса каталога в столбце "#", посредством заголовка приложения в столбце, таким образом озаглавленном, посредством адреса физической памяти, посредством типа лицензии (например, свободная, демо, приобретения, подписки), посредством способа оплаты (например, цена в расчете на использование, цена по времени, приобретение для неограниченной продолжительности и т.д.). Дата транзакции обеспечивается для перекрестной ссылки на сетевые данные и для вычисления времени, оставшегося на ограниченных по продолжительности лицензиях.
На фиг. 7 иллюстративная структура 400 сетевых данных содержит информацию для проверки действительности лицензий приложений, учтенных на устройстве, для восстановления приложения, которое было удалено на устройстве с оставшейся лицензионной продолжительностью, и/или для определения местоположения эквивалентной или обновленной версии приложения, подходящего для передачи в устройство назначения. С этой целью иллюстративная структура 400 данных имеет отношение к одному пользовательскому ID, или одному ID устройства, с транзакциями, перечисленными посредством индекса каталога для приложения, заголовка приложения, типа платформы (например, типа программного обеспечения и/или типа аппаратного обеспечения) приложения, идентификации поставщика для осуществления доступа к конкретным структурам формирования счетов и цены, которые могут быть внешними для структуры 400 данных, способа цены для исходной транзакции, структуры оплаты, которая может использоваться, чтобы определять время или использования, оставшиеся на лицензии, и даты транзакции для сопоставления со структурой 300 данных устройства и для вычисления оставшегося значения в лицензии.
На фиг. 8 иллюстративная структура 500 данных каталога, используемая администратором передачи, обеспечивает перекрестную ссылку между ссылочными числами каталога для приложений, чтобы определять в текущее время предложенные лицензионные условия, включая сюда лицензионный тип и определение цены, доступны ли скидки для конкретных классов пользователей, и рассматривается ли конкретная версия приложения посредством платформы как эквивалент или обновление для исходного приложения, лицензированного пользователю. Бизнес-логика может показывать, что должна быть предложена обновленная версия, или может показывать, что эквивалент должен автоматически передаваться с версией обновления, что выбирается только тогда, когда является единственным вариантом выбора или когда вручную выбран пользователем.
На фиг. 9 матрица 600 бизнес-логики может служить как способ, чтобы преобразовывать текущие лицензионные права в исходном приложении предложенное замещение для предложенного устройства назначения. С этой целью для типа лицензии для "старого" приложения (например, демонстрация, оплата по использованию, оплата по времени, неограниченная продолжительность) может иметься перекрестная ссылка для доступных типов лицензии для замещающего приложения, расположенного в структуре 500 данных каталога. Примеры такой бизнес-логики включают в себя установку перекрестной продажи или другой тип будущего напоминания, чтобы выполнять передачу в более позднее время, если эквивалентная или обновленная версия еще не доступна для устройства назначения согласно каким-либо лицензионным условиям. Для демонстрационных версий бизнес логика может влечь за собой всегда обеспечение эквивалентной обновленной цены бесплатно. Бизнес-логика может включать в себя кредитование оплаты по использованию или оплаты по времени и эквивалентную величину с новой версией, независимо от того, эквивалент ли или обновление, но с будущими расширениями подписки при новой цене подписки.
Скидки могут предлагаться, такое обеспечение обновленных версий при половине разницы в лицензионной цене по сравнению с кем-нибудь, кто не обновляется.
На фиг. 10 система 700 связи способствует передаче контента, такого как лицензированное приложение, через сеть 702 между исходящим пользовательским оборудованием (UE) 704 и UE 706 назначения. Различные вычислительные и сетевые архитектуры могут применяться с различными функциональными элементами, как изображено. Система 708 поставщика обеспечивает услуги связи для исходящего UE 704 и UE 706 назначения для их иллюстративных целей как устройств связи, которые случается исполняют лицензированные приложения. Сервер 710 передачи осуществляет обработку со стороны сервера, необходимую для передачи лицензированного приложения посредством канала распределения, обеспеченного сервером доставки контента (CDS) 712. Когда нет аутентификации через клиент передачи устройства (не показан) в исходящем UE или UE назначения 702 и 704, веб-портал передачи 714 может взаимодействовать с сервером 710 передачи, чтобы обрабатывать пользовательские вводы, включая сюда аутентификацию UE 702 и 704 и пользователя посредством прокси 716 взаимной аутентификации (MA). UE 704 и 706 могут быть частью группы, идентифицированной в групповой базе 718 данных. Система 708 поставщика, которая обслуживает группу, может финансироваться службой доставки счетов (BDS) 720, которая использует данные из формирования счетов стоимости услуг (SVB) 722, чтобы определять ставки подписки и циклы формирования счетов для группы. Сервер 710 передачи может отслеживать передачи, делаемые посредством записей, держащихся в базе 724 данных передач, с проверкой действительности лицензий, сделанных предварительно, в соответствии с базой данных транзакций (TXN) 726. Некоторые административные услуги могут выполняться посредством базы 728 данных центра управления (MC), которая может включать в себя аутентификацию высокоуровневых авторизаций, чтобы видеть и модифицировать групповые и пользовательские данные, и т.д. К различным другим внешним объектам, таким как системы поставщика, может осуществляться доступ посредством интерфейса 730 службы. Репозиторий приложений (например, исполнимый код) может извлекаться из защищенной базы 732 данных приложений.
Компоновки архитектуры между некоторыми или всеми из этих объектов на фиг. 10 могут выбираться на основе типа системы 700 связи и других рассмотрений. В одном примере пользователь может использовать веб-портал 714 передачи, чтобы осуществлять связь с сервером 710 передачи с тем, чтобы инициировать передачу контента. Альтернативно, пользователь может инициировать передачу контента с использованием пользовательского интерфейса устройства, обеспеченного посредством UE 704, 706. При приеме запроса сервер 710 передачи осуществляет связь с объектом 720 формирования счетов посредством интерфейса 730 службы. Как только определяются формирование счетов и предыстория покупок, ассоциированные с контентом, подлежащим передаче, объект 720 формирования счетов осуществляет передачу такой информации в сервер 710 передачи. Сервер 710 передачи в свою очередь выполняет преобразование контента, за которым следует сервер 710 передачи, осуществляющий связь с объектом 712 доставки, с вызовом операции доставки для доставки переданного контента.
Согласно другому варианту осуществления связь между сервером 710 передачи и пользователем достигается посредством веб-портала 714 передачи посредством веб-соединения. Веб-портал 714 передачи может быть абонентским пользовательским интерфейсом устройства или абонентским веб пользовательским интерфейсом. Абонентский пользовательский интерфейс устройства может осуществлять связь с базой 732 данных приложений. Аналогично, администраторский веб-интерфейс (например, центр 728 управления) может осуществлять связь с сервером 710 передачи. Сервер 710 передачи может также осуществлять доступ к данным в базе 724 данных передач. Сервер 710 передачи может дополнительно осуществлять связь с базой 732 данных приложений с использованием аутентифицированной связи клиент-сервер передачи контента посредством прокси 716 взаимной аутентификации (MA). Передачи данных между сервером 710 передачи и группой 718, и формированием счетов стоимости услуг (SVB) 722 могут достигаться посредством интерфейса 730 службы. Например, сервер 710 передачи и группа 718 осуществляют связь, чтобы способствовать приобретению контента и доставке. В свою очередь, группа 718 может осуществлять связь с базой 732 данных приложений так, чтобы осуществлять доступ к необходимому контенту (например, лицензированным приложениям). Сервер 710 передачи осуществляет связь с SVB 722 для учетной информации контента и формирования счетов. SVB 722 и сервер 712 доставки контента могут также осуществлять связь с центром управления (MC) 728.
В одном примере со ссылкой на фиг. 4 и фиг. 10 каждое из UE 704 и 706 содержит интегрированный пользовательский интерфейс 164, включающий в себя расширение 168 клиента передачи и приложение 112. В одном примере интегрированный пользовательский интерфейс 164 является общим пользовательским интерфейсом для передачи приложений 112 и другого контента устройства. Расширение 168 клиента передачи находится в связи со службой передачи (взаимозаменяемо указываемой как клиент передачи, который находится в сети или размещается и изображается как процесс 734 службы передачи), определенной в системе доставки (например, CDS 712). В одном случае расширение 168 клиента передачи обеспечивает IDownload 170 и MA абстракцию 172 для пользовательского интерфейса 164 устройства передачи. Эти компоненты на фиг. 4 агрегируются, как изображено в 736 на фиг. 10 на UE 704 и в 738 на UE 706. Клиенты 736 передачи, 738 обеспечивают пользовательские интерфейсы устройства для операции передачи. Клиент передачи работает с расширением 168 клиента передачи, чтобы обрабатывать связи клиент-сервер.
Согласно одному аспекту приложение 112 реализуется разработчиком для унифицированного решения резервного копирования/передачи приложений и контента устройств. Приложение 112 устройства 704 находится в связи со службой управления контентом устройства (не показано), которая имеет постоянное хранилище данных. В одном примере служба управления контентом устройства ABC может обеспечивать резервное копирование контента устройства, восстановление и передачу для разработчика.
Защищенная связь между клиентом 160 передачи и сервером 710 передачи обеспечивается посредством клиента 160 передачи, IDownload 170, и IMutualAuth/IWeb 172 на стороне устройства, в то время как сервер 712 доставки контента включает в себя contentFac (или CI), MA, веб-сервер и SVC порт (не показано). Сервер 710 передачи включает в себя службу 734 передачи и порт службы (SVC). Устройство 704 может осуществлять связь с сервером 712 доставки контента как прокси 716 взаимной аутентификации (MA), который в свою очередь осуществляет связь с сервером 710 передачи и базой 724 данных передачи.
В одном аспекте клиент 160 передачи может использовать MA для аутентифицированной связи между устройством 704 и службой 734 передачи, в то время как клиент 160 передачи может использовать HTTP для всех неаутентифицированных осуществлений связи. Сервер доставки контента (CDS) 712 может использоваться как MA прокси 716, который завершается в MA, и передает далее оставшиеся данные в службу передачи. В одном примере аутентифицированная труба может создаваться между клиентом 160 передачи и службой передачи. MA прокси 716 является службой взаимной аутентификации для операции передачи. MA служба обеспечивает защищенное соединение между клиентом 160 передачи и CT сервером 710. В одном примере интерфейс поставщика (или поставщика контента) из CDS 712 может действовать как MA прокси 716 для службы передачи.
В другой системе связи UE 704 осуществляет связь с сервером 710 передачи и CDS 712. Сервер 710 передачи находится также в контакте с веб-порталом 714 передачи и осуществляет интерфейс с SVB 722 с использованием интерфейса 730 службы. CDS 712 находится в связи с MC 728 и группой 718.
В другой системе связи UE 704 осуществляет интерфейс с CDS 712 и сервером 710 передачи, который в свою очередь осуществляет связь с MC 728 посредством интерфейса 730 службы. Сервер 710 передачи является также соединенным с веб-порталом 714 передачи. Альтернативно, UE 704 находится в связи с сервером 710 передачи и CDS 712. MC 728 осуществляет связь с сервером 710 передачи посредством интерфейса 730 службы.
В одном примере хостовое имя CDS 712 автоматически вставляется посредством MA прокси 716 так, чтобы не допускать, чтобы клиенты 736 и 738 передачи имели какое-либо управление над хостом назначения (не показан). Дополнительно, CDS 712 может конфигурироваться так, чтобы обеспечивать необходимую функцию аутентификации/авторизации для устройства, и обеспечивать конфигурацию устройства (например, когда устройство было сконфигурировано некорректно).
На фиг. 11 изображается иллюстративный поток вызовов от исходящего UE 704 в службу 734 передачи системы 700 передачи, согласно одному примеру. В частности, исходящее UE 704 на этапе A, изображенном в 800, посылает запрос на информацию приложения/лицензии в CDS 712. На этапе B, изображенном в 802, CDS 712 выполняет аутентификацию/авторизацию и формирует интерфейс поставщика, и посылает сообщение передачи приложения в службу 734 передачи на этапе C, изображенном в 804. При приеме информации в службе 734 передачи, изображенном как ответ этапа D в 806 от службы 734 передачи в CDS 712 и сообщение успеха этапа E в 808 в исходящее UE 704, клиент 736 передачи удаляет все приложения на этапе F, изображенном в 810, и посылает квитирование удаления в CDS 712 на этапе G, изображенном в 812. Служба 734 передачи запрашивает TXN 726 на этапе H, изображенном в 814 (посредством интерфейса 730 службы на этапе I, изображенном в 816), для информации потребительских частей и обеспечивает, что информация, посланная клиентом передачи, не испорчена. TXN 726 посылает назад потребительскую лицензионную информацию на этапе J, изображенном в 818, в интерфейс 730 службы, который в свою очередь ретранслирует ответ на этапе K, изображенном в 820, в службу 734 передачи. Служба 734 передачи сохраняет лицензионную информацию для SID на этапе L, изображенном как обработка, изображено в 822. К приблизительно этому времени CDS 712 ретранслирует на этапе M удаление приложений в TXN 726 для сохранения.
Фиг. 12 иллюстрирует иллюстративную диаграмму потока вызовов из службы 734 передачи в UE 706 назначения в системе 700 связи, при этом UE 706 назначения включает в себя клиент 738 передачи, согласно одному примеру. Во время, когда эта последовательность начинается, исходящее UE 704 послало информацию контента/лицензии в службу 734 передачи и исходящее UE 704 деактивировано. На фиг. 12 UE 706 назначения посылает запрос на восстановление в службу 734 передачи и служба 734 передачи получает новый PID для SID и определяет приложения, которые могут быть восстановлены в PID назначения. В частности, на этапе A, изображенном в 840, UE 706 назначения посылает запрос на восстановление ("запрос приложений/лицензии") в CDS 712, который в ответ выполняет аутентификацию и авторизацию и интерфейс поставщика на этапе B, изображенном в 842. CDS 712 ретранслирует сообщение получения приложения/лицензии в службу 734 передачи на этапе C, изображенном в 844. Служба 734 передачи получает новую идентификацию платформы (PID) для абонентской идентификации (SID) и определяет приложения, которые могут быть восстановлены для PID назначения. На основе приложений оставшиеся лицензии восстанавливаются с использованием службы 730 интерфейса и группы 718. В частности, на этапе D, изображенном в 846, сообщение элемента альтернативной доставки приложения идет от службы 734 передачи в интерфейс 730 службы, который в свою очередь на этапе G ретранслирует сообщение групповой автоматической установки MyApp, изображено в 848, в группу 718. На этапе F группа 718 обеспечивает ответ, изображено в 850, в интерфейс 730 службы, который в свою очередь ретранслирует сообщение ответа на этапе G, изображенном в 852, в службу 734 передачи. Приложения автоматически устанавливаются вдоль с оставшимися лицензиями из исходного устройства. В частности, служба 734 передачи на этапе H, изображенном в 854, ретранслирует ответ в CDS 712, который в свою очередь докладывает на этапе I успех в клиент 738 передачи UE 706 назначения. UE 706 назначения отвечает с запросом "получения ADS.txt" на этапе J, изображенном в 856, в CDS сервер 712. CDS 712 посылает запрос, чтобы получить список действий на этапе K, изображенном в 858, в группу 718. Группа 718 на этапе L посылает элементы автоматической установки, изображено в 860, в CDS 712, который в свою очередь передает пакеты на этапе M, изображенном в 862, в UE 706 назначения. На этапе N, изображенном в 864, UE 706 назначения возвращает квитирование загрузки (DL) в CDS 712.
Фиг. 13, с другой стороны, иллюстрирует иллюстративную диаграмму потока вызовов из службы 734 передачи в UE 706 назначения в системе 700 связи, при этом UE 706 назначения не включает в себя клиент 738 передачи. Таким образом, в одном примере, служба 734 передачи обеспечивает передачу информации контента/лицензии из веб-портала 714 передачи с использованием веб-клиента 740 передачи (фиг. 10), а не из UE 706 назначения. Альтернативно, эта передача может быть продолжением из процесса передачи, начатого посредством исходящего UE 704, где клиент 736 передачи может реализовать MA и CDS интерфейсы, чтобы аутентифицировать и авторизовать передачу, согласно одному аспекту. В одном примере запрос передачи в сервер включает в себя веб-клиент 740 передачи, посылающий CT=Ack в службу 734 передачи с использованием логики. Клиент 736 передачи удаляет приложения и посылает событие удаления в CDS 712. В соответствии с одним аспектом, в запросе восстановления для устройства, восстанавливаемые элементы/лицензии могут быть доступны посредством групповых автоматических действий или Myapps на устройстве, в зависимости от устройства. CT служба может реализовывать машину CreditBack (возврата кредита), чтобы генерировать TA, если необходимо. Согласно одному примеру CT служба запрашивает потребительские части и лицензионную информацию для SID, чтобы генерировать истинный список передачи. Если CT клиент посылает больше элементов, которые присутствуют в потребительских частях, дополнительные элементы могут игнорироваться.
В частности, на этапе A, изображенном в 880, UE 706 назначения посылает сообщение MA регистрации в CDS 712. На этапе B, изображенном в 882, CDS 712 выполняет аутентификацию, авторизацию и интерфейс поставщика. На этапе C, изображенном в 884, CDS 712 запрашивает информацию SID/PID из службы 734 передачи, которая в свою очередь делает проверку, присутствует ли информация приложения/лицензии, на этапе D, изображенном в 886. Затем на этапе E, изображенном в 888, запрос на элемент альтернативной доставки приложения делается в интерфейс 730 службы, который в свою очередь ретранслирует запрос групповой автоматической установки/My App на этапе F, изображенном в 890, в группу 718. Группа 718 ретранслирует на этапе G сообщение успеха, изображено в 892, в интерфейс 730 службы, который в свою очередь на этапе H ретранслирует сообщение успеха, изображено в 894, в службу 734 передачи. На этапе I служба 734 передачи посылает сообщение ответа, изображено в 896, в CDS 712, который в свою очередь посылает на этапе J сообщение регистрации в UE 706 назначения, изображено в 898. UE 706 назначения отвечает с ADS.txt и списками действий на этапе K, изображенном в 900, в CDS 712, который в свою очередь посылает на этапе L запрос получения списков действий, изображено в 902, в группу 718. Группа 718 на этапе M, изображенном в 904, посылает элементы автоматической установки в CDS 712, который на этапе N, изображенном в 906, ретранслирует пакеты в UE 706 назначения, которое в свою очередь на этапе O, изображенном в 908, посылает квитирование загрузки (DL) назад в CDS 712.
Фиг. 14 изображает иллюстративную диаграмму потока вызовов из службы 734 передачи в UE 706 назначения в системе 700 связи, при этом никакая информация контента/лицензии не доступна и UE 706 назначения включает в себя клиент 738 передачи, согласно одному примеру. Например, если исходящее UE 704 является потерянным или поврежденным, информация контента/лицензии не может быть послана в службу 734 передачи. Таким образом, на этапе A, изображенном в 920, UE 706 назначения посылает запрос на сообщение приложения/лицензии в CDS 712. CDS 712 на этапе B, изображенном в 922, аутентифицирует и авторизует связь и устанавливает интерфейс поставщика, и затем на этапе C, изображенном в 924, запрашивает получение лицензии приложения от службы 734 передачи. Служба 734 передачи на этапе D, изображенном в 926, проверяет, чтобы видеть, присутствует ли информация приложения/лицензии. На этапе E, изображенном в 928, служба 734 передачи посылает запрос получения информации приложения/лицензии в интерфейс 730 службы при определении, что исходное UE 704 уже не послало такую информацию.
На этапе F, изображенном в 930, интерфейс 730 службы ретранслирует запрос на запрос потребительских частей в TXN 930, который отвечает на этапе G с информацией потребительских частей, изображено в 932. Интерфейс 730 службы ретранслирует информацию приложения/лицензии в службу передачи на этапе H, изображенном в 934. На основе бизнес-правил служба передачи на этапе I запрашивает элемент альтернативной доставки, изображено в 936, от интерфейса 730 службы, который в свою очередь ретранслирует запрос на этапе J, изображенном в 938, в группу 718. Группа 718 на этапе K отвечает с ответом успеха, изображено в 940, в интерфейс 730 службы, который в свою очередь на этапе L отвечает с ответом успеха, изображено в 942, в службу 734 передачи. На этапе M служба передачи посылает сообщение ответа, изображено в 944, в CDS 712, который в свою очередь возвращает сообщение успеха в клиент 738 передачи. На этапе O UE 706 назначения отвечает с сообщением получения ADS.txt в CDS 712, который на этапе P, изображенном в 950, посылает запрос получения My Apps в группу 718. На этапе Q группа 718 отвечает с категорией My Apps, изображено в 952, в CDS 712, который посылает My Apps на этапе R в UE 706 назначения, изображено в 954. Затем на этапе S UE 706 назначения квитирует загрузку, изображено в 956.
Фиг. 15 изображает иллюстративную диаграмму потока вызовов из службы 734 передачи в UE 706 назначения в системе 700 связи, при этом никакая информация контента/лицензии не доступна и UE 706 назначения не включает в себя клиент 738 передачи, согласно одному примеру. В проиллюстрированном примере, так как UE 706 назначения не включает в себя клиент 738 передачи, CDS 712 может реализовывать интерфейс поставщика (CI), чтобы осуществлять связь со службой 734 передачи, как только новое UE 706 назначения зарегистрировалось. В частности, на этапе A, изображенном в 970, UE 706 назначения посылает MA регистрацию в CDS 712. CDS 712 на этапе B выполняет аутентификацию, авторизацию и создает интерфейс поставщика, изображено в 972. На этапе C CDS 712 запрашивает информацию SID/PID от сервера 734 передачи, изображено в 974. На этапе D сервер 734 передачи проверяет присутствие информации приложения/лицензии, изображено в 976. На этапе E сервер 734 передачи посылает запрос, чтобы получить информацию приложения/лицензии, изображено в 978, от интерфейса 730 службы. На этапе F интерфейс 730 службы ретранслирует запрос на запрос потребительских частей в TXN 726, изображено в 980. На этапе G TXN 726 отвечает с информацией потребительских частей, изображено в 982, в интерфейс 730 службы. На этапе H, интерфейс 730 службы, информация приложения/лицензии ретранслируется в службу 734 передачи, изображено в 984. На этапе I служба 734 передачи посылает в интерфейс 734 службы запрос элемента альтернативной доставки BREWZone, изображено в 986, в интерфейс 730 службы. На этапе J интерфейс 730 службы посылает сообщение "группа: только в My Apps" в группу 718, изображено в 988. Группа 718 отвечает с сообщением успеха на этапе K, изображенном в 990. Интерфейс 730 службы ретранслирует сообщение успеха на этапе L, изображенном в 992, в службу 734 передачи. На этапе M служба 734 передачи посылает сообщение ответа, изображено в 994, в CDS 712. На этапе N CDS 712 посылает ответ регистрации в UE 706 назначения. На этапе O UE 706 назначения посылает сообщение ADS.txt... ItemList в CDS 712, изображено в 998. CDS 712 посылает сообщение "получения My Apps" в группу 718, изображено в 1000. На этапе Q группа 718 посылает категорию My Apps, изображено в 1002, в CDS 712, который в свою очередь посылает на этапе R My Apps, изображено в 1004, в UE 706 назначения, которое в свою очередь на этапе S отвечает с сообщением "получения Pkg", изображено в 1006, в CDS 712.
Фиг. 16 - это схематическая диаграмма иллюстративной архитектуры для системы 1100 связи для реализации цифрового модуля 1102 блокировки, согласно одному аспекту. Система 1100 включает в себя систему 1104 доставки, MA прокси 1106, службу 1108 передачи, цифровой модуль 1102 блокировки и TXN 1110. Система 1104 доставки включает в себя сервер распределения контента (CDS) 1112 и группу 1114. UE 1116 осуществляет интерфейс с CDS 1112 и MA прокси 1106 посредством соответствующих API 1118, 1120. Администраторская веб-система 1122 может взаимодействовать со службой 1108 передачи посредством API 1124 службы передачи. MA прокси 1106 осуществляет интерфейс со службой 11 передачи посредством API 1124 службы передачи. Служба 1108 передачи, в свою очередь, взаимодействует с цифровым модулем 1102 блокировки посредством API 1126 цифрового модуля блокировки. Служба 1108 передачи осуществляет интерфейс с группой 1114 и TXN 1110 посредством интерфейса 1128 службы. В одном аспекте функции (например, интерфейсы API) для цифрового модуля 1102 блокировки передачи - это Put (поместить), Get (получить), Update (обновить) и Remove (переместить). UE 1116 использует функцию Put, чтобы получать резервную лицензию передачи. Функция put проходит через MA прокси 1106, службу 1108 передачи в цифровой модуль 1102 блокировки, который ассоциирован с TXN 1110. Функции Get и Update могут использоваться веб-системой 1122, и функции Get, Update и Remove могут использоваться посредством 1116, чтобы восстанавливать приложения в системе 1100 передачи.
Согласно одному примеру цифровой модуль блокировки включает в себя абонентскую информацию (SID), контент (например, лицензии) и метаинформацию (например, информацию, ассоциированную с владельцем контента). Абонентская информация может являться SID или PID. Контент (например, лицензии) может представиться в форме объекта XML с предопределенным dtd. Метаинформация является информацией, ассоциированной с владельцем контента, которая обеспечивает возможность специальной логике владельца использоваться для контента. В одном примере логика может быть либо функцией цифрового модуля блокировки, либо функцией владельца (например, прекращением срока действия контента, состоянием контента и т.д.). Например, в одном примере, владелец контента может быть CT, TXN, потребительским порталом и т.д.
Различные иллюстративные логики, логические блоки, модули и схемы, описанные в соединении с вариантами осуществления, здесь раскрытыми, могут реализовываться или выполняться с процессором общего назначения, цифровым сигнальным процессором (DSP), специализированной интегральной схемой (ASIC), программируемой пользователем вентильной матрицей (FPGA) или другим программируемым логическим устройством, дискретным логическим элементом или транзисторной логикой, дискретными аппаратными компонентами или любой комбинацией перечисленного, спроектированной, чтобы выполнять функции, здесь описанные. Процессор общего назначения может быть микропроцессором, но, в альтернативе, процессор может быть любым стандартным процессором, контроллером, микроконтроллером или конечным автоматом. Процессор может также реализовываться как комбинация вычислительных устройств, например комбинация DSP и микропроцессора, множества микропроцессоров, одного или более микропроцессоров в соединении с ядром DSP, или любая другая такая конфигурация. Дополнительно, по меньшей мере, один процессор может содержать один или более модулей, работоспособных, чтобы выполнять один или более этапов и/или действий, описанных выше.
Дополнительно, этапы и/или действия способа или алгоритма, описанные в связи с аспектами, здесь раскрытыми, могут осуществляться напрямую в аппаратном обеспечении, в программном модуле, исполняемом процессором, или в комбинации упомянутых двух. Программный модуль может находиться в памяти RAM, флэш-памяти, памяти ROM, памяти EPROM, памяти EEPROM, регистрах, жестком диске, съемном диске, CD-ROM или любой другой форме запоминающего носителя, известного в данной области техники. Иллюстративный запоминающий носитель может быть соединен с процессором, так что процессор может считывать информацию из и записывать информацию на запоминающий носитель. В альтернативе, запоминающий носитель может быть объединенным с процессором. Дополнительно, в некоторых аспектах, процессор и запоминающий носитель могут находиться в ASIC. Дополнительно, ASIC может находиться в пользовательском терминале. В альтернативе, процессор и запоминающий носитель могут находиться как дискретные компоненты в пользовательском терминале. Дополнительно, в некоторых аспектах, этапы и/или действия способа или алгоритма могут находиться как одна или любая комбинация или набор кодов и/или инструкций на машиночитаемом носителе и/или читаемом компьютером носителе, который может быть включен в компьютерный программный продукт.
В то время как предшествующее раскрытие описывает иллюстративные аспекты и/или варианты осуществления, следует отметить, что различные изменения и модификации могут здесь делаться без отхода от объема описанных аспектов и/или вариантов осуществления, как определено приложенной формулой изобретения. Дополнительно, хотя элементы описанных аспектов и/или вариантов осуществления могут быть описаны или заявлены в единственном числе, множественное предполагается, если явно не заявлено ограничение до единственного. Дополнительно, все или часть любого аспекта и/или вариантов осуществления могут использоваться со всеми или частью любого другого аспекта и/или варианта осуществления, если не утверждается иначе.