СИСТЕМА И СПОСОБ, ПРЕДНАЗНАЧЕННЫЕ ДЛЯ КВИТИРОВАНИЯ МЕЖДУ БЕСПРОВОДНЫМИ УСТРОЙСТВАМИ И СЕРВЕРАМИ
SYSTEM AND METHOD FOR ACKNOWLEDGMENT BETWEEN WIRELESS DEVICES AND SERVERS

Область техники, к которой относится изобретение
Настоящее изобретение, в целом, относится к сетям и взаимодействию компьютерных устройств. Более конкретно, изобретение относится к протоколам интерфейсов компьютерных устройств и передаче данных после первоначального соединения связи и во время происходящей в текущий момент связи между компьютерными устройствами и беспроводной сетью.
Уровень техники
Беспроводные устройства, такие как сотовые телефоны, передают пакеты, включающие в себя речь и данные, через беспроводную сеть. В существующих беспроводных сетях после первоначального контакта между двумя компьютерными устройствами в беспроводной сети устройства будут обмениваться сводкой информации, что называется квитированием. Процесс квитирования дает возможность компьютерным устройствам первоначально синхронизировать маршрут данных и передать некоторые релевантные данные, необходимые для того, чтобы поддерживать удовлетворительное соединение между устройствами. Компьютерные устройства также могут участвовать в действиях квитирования после того, как был установлен первоначальный контакт, в то время как связь продолжается, для того чтобы поддерживать удовлетворительное соединение.
В аналоговых или цифровых беспроводных сотовых сетях имеется сеанс первоначального квитирования между сотовым устройством и базовой станцией. Обычно, когда устройство включают, коммутатор мобильной связи определяет идентичность устройства, например, посредством идентификационного номера мобильного устройства (MIN, ИНМУ), и какая ячейка будет вести любую передачу из этого устройства, и назначает свободный канал в этой ячейке, чтобы выполнять любую передачу речи или данных из устройства. Обмен элементарными данными также может происходить при начальной регистрации сотового устройства, такой как идентификация модели устройства. Происходящий в текущий момент обмен данными также происходит в сотовой сети, но обычно, чтобы только управлять передачами обслуживания или физическим перемещением устройства между ячейками. Базовая станция, обслуживающая происходящую в текущий момент связь, посылает запрос передачи обслуживания в коммутатор мобильной связи, после того как сигнал устройства уменьшается ниже порога передачи обслуживания.
Со сложными устройствами данные, необходимые для обмена во время первоначального контакта, могут быть значительными, для того чтобы установить надежную связь. Кроме того, если предпринимаются чрезвычайно сложные действия во время связи, такие как передача данных или приложения, передача значительного квитирования в это время могла бы прервать или разъединить соединение существующей связи. Таким образом, в первую очередь, настоящее изобретение направлено на усовершенствованную систему квитирования между компьютерными устройствами через беспроводную сеть.
Сущность изобретения
Настоящее изобретение является системой, способом и компьютерной программой, предназначенными для передачи данных, или квитирования, между беспроводными устройствами и серверами, такими как сервер загрузки приложений, в беспроводной сети. После связи беспроводного устройства с сервером загрузки приложений сервер получает данные из беспроводного устройства, указывающие на атрибуты беспроводного устройства, во время сеанса квитирования и определяет доступ к приложениям на основании атрибутов беспроводного устройства. Приложения могут находиться либо в сервере, либо в другом компьютерном устройстве в беспроводной сети.
Система взаимодействия включает в себя одно или более беспроводных устройств, находящихся на выборочной связи с помощью беспроводной сети с каждым беспроводным устройством, причем каждое беспроводное устройство имеет свои атрибуты и компьютерную платформу, предназначенную для последующего выборочного выполнения в ней компьютерных программ, и каждое беспроводное устройство дополнительно имеет конечного пользователя, который может осуществлять выборочный доступ к компьютерной платформе и одному или более серверам загрузки приложений, находящимся на выборочной связи с беспроводной сетью, причем каждый сервер загрузки приложений имеет, по меньшей мере, одно резидентное приложение, и выборочно загружает приложения в беспроводное устройство (устройства). Когда беспроводное устройство первоначально взаимодействует с сервером загрузки приложений через беспроводную сеть, сервер загрузки приложений получает данные из беспроводного устройства, указывающие на атрибуты беспроводного устройства, чтобы определить доступ беспроводного устройства к приложениям, находящимся в сервере загрузки приложений, или управляемым с помощью сервера загрузки приложений, таким как компьютерные программы, графика, меню и тому подобные.
Способ связи между беспроводным устройством и сервером загрузки приложений в беспроводной сети, в частности, включает в себя этапы, на которых передают данные из беспроводного устройства в сервер через беспроводную сеть, получают данные из беспроводного устройства, указывающие на атрибуты беспроводного устройства, и определяют доступ беспроводного устройства к приложениям, находящимся в сервере загрузки приложений, или управляемым с помощью сервера загрузки приложений, на основании атрибутов беспроводного устройства. Этап, на котором получают данные из беспроводного устройства, может быть этапом, на котором принимают атрибуты беспроводного устройства в сервере загрузки приложений, где находится приложение, которое желает загрузить беспроводное устройство. Кроме того, этап, на котором получают данные из беспроводного устройства, может происходить при первоначальном контакте сервера загрузки приложений с помощью беспроводного устройства или при попытке загрузки приложения с помощью беспроводного устройства во время происходящей в текущий момент связи.
Следовательно, настоящее изобретение дает возможность передачи данных, необходимых между сложным беспроводным устройством и сервером загрузки приложений, чтобы управлять доступом устройства к приложениям, доступным через беспроводную сеть. Посредством передачи данных атрибутов, таких как характеристики аппаратного обеспечения и программного обеспечения и идентичность абонента, минимизируется риск доступа устройства к неиспользуемому или неподходящему программному обеспечению. Кроме того, если предпринимаются чрезвычайно сложные действия во время связи между беспроводным устройством и сервером, может происходить дополнительное ненавязчивое квитирование, чтобы поддерживать управление доступом без прерывания существующего соединения.
Другие задачи, преимущества и признаки настоящего изобретения станут понятными после обзора приведенных далее краткого описания чертежей, подробного описания изобретения и формулы изобретения.
Краткое описание чертежей
Фиг.1 представляет иллюстративную схему беспроводной сети и беспроводных устройств, которые устанавливают связь с серверами и другими компьютерными устройствами через сеть.
Фиг.2 представляет блок-схему компонентов аппаратного обеспечения беспроводной сети, обеспечивающих связь между различными беспроводными устройствами и серверами загрузки приложений через сотовую телекоммуникационную сеть.
Фиг.3 представляет блок-схему компьютерной платформы беспроводного устройства, взаимодействующей с сервером загрузки приложений и выполняющей одно или более приложений в платформе беспроводного устройства.
Фиг.4 представляет блок-схему сервера загрузки приложений, взаимодействующего с беспроводным устройством через сервер балансировки нагрузки.
Фиг.5 представляет блок-схему последовательности операций процесса, выполняющего в сервере загрузки приложений прием попытки связи из беспроводного устройства и получения атрибутов беспроводного устройства, чтобы определить доступ к приложению.
Фиг.6 представляет блок-схему последовательности операций процесса, выполняющего в беспроводном устройстве попытку установить контакт с сервером загрузки приложений и выборочное предоставление атрибутов беспроводного устройства в сервер.
Подробное описание изобретения
Со ссылкой на чертежи, на которых одинаковые ссылочные позиции представляют одинаковые элементы по всем фигурам, фиг.1 иллюстрирует один вариант осуществления системы 10 настоящего изобретения, предназначенной для квитирования между одним или более беспроводными устройствами, такими как сотовые телефоны 12, находящимися на связи через беспроводную сеть 14, по меньшей мере, с одним сервером 16 загрузки приложений, который выборочно загружает приложения программного обеспечения или другие данные в беспроводные устройства через портал беспроводной связи или посредством другого способа доступа к данным в беспроводное устройство 14. Как изображено на фигуре, беспроводное устройство может быть сотовым телефоном 12 с графическим дисплеем 13, персональным цифровым ассистентом 18, пейджером с графическим дисплеем, который изображен на фигуре как двусторонний текстовый пейджер, или даже отдельной компьютерной платформой 22, которая имеет портал беспроводной связи, или может иметь проводное соединение 24 с сетью или Internet. Следовательно, система 10 может быть выполнена на любом типе удаленного компьютерного модуля, включающего в себя портал беспроводной связи, включая, без ограничения, беспроводные модемы, карты PCMCIA, терминалы доступа, персональные компьютеры, терминалы доступа, телефоны без дисплея или клавиатуры, или их любые комбинации или подкомбинации. Как используется в настоящем описании, понятие "приложение" охватывает выполняемые и невыполняемые файлы программного обеспечения, исходные данные, агрегированные данные, корректировки, графику, меню и другие сегменты программ. Приложения или сегменты программ могут находиться, выполняться и/или использоваться в беспроводном устройстве 12, 18, 20, 22 как "клиентское" программное обеспечение или могут быть основаны на web или распределенными приложениями, а не приложениями, основанными на клиентах.
В системе 10 одно или более беспроводных устройств 12, 18, 20, 22 находятся на выборочной связи с беспроводной сетью 14, причем каждое устройство имеет своего конечного пользователя, который обычно управляет соединением связи с беспроводной сетью 14, и конечный пользователь выполняет попытку загрузить приложение или данные из сервера 16 загрузки приложений через беспроводную сеть. Сервер 16 загрузки приложений обычно имеет, по меньшей мере, одно резидентное приложение и выборочно взаимодействует с одним или более беспроводными устройствами 12, 18, 20, 22 через сеть (такую как сотовая сеть, изображенная на фиг.2), и загружает в них приложения. Сервер 16 также управляет доступом беспроводных устройств 12, 18, 20, 22 к приложениям, находящимся в других хранилищах данных, таких как база 28 данных, второй сервер 30 загрузки приложений или автономный сервер 32. Система 10 облегчает процесс загрузки приложения через сервер 16 загрузки приложений, получающий данные из беспроводных устройств 12, 18, 20, 22, указывающие на атрибуты беспроводного устройства, а затем определяет доступ беспроводного устройства к приложениям, доступным через сервер 16 загрузки приложений, на основании этих атрибутов беспроводного устройства. Квитирование может передавать атрибуты устройства при первоначальном контакте или после попытки беспроводного устройства 12, 18, 20, 22 осуществить доступ к приложению во время происходящей в текущий момент связи.
Следовательно, система ориентирована на желание конечных пользователей иметь возможность выполнять приложения в своих беспроводных устройствах, таких как мобильные телефоны 3-го поколения, отличные от приложений, с которыми изготовлены телефоны. Система 10 фильтрует имеющиеся приложения в беспроводное устройство 12, 18, 20, 22, таким образом, чтобы это происходило прозрачно, т.е. без знания/осведомленности конечного пользователя. Например, беспроводное устройство 12, 18, 20, 22 может быть изготовлено с адресной книгой, которая является не очень дружелюбной к пользователю и/или не синхронизируется с адресной книгой, которую человек использует в отдельном персональном компьютере. Впоследствии конечный пользователь желал бы загрузить другую адресную книгу, которая является более дружелюбной к пользователю и которая имеет необходимые возможности синхронизации. Другими примерами программ являются игры, картографические приложения (приложения определения местоположения позиции) и дистанционные средства управления "Bluetooth". Так как конечный пользователь может платить за эфирное время, чтобы загрузить приложение, конечный пользователь желает иметь способ определения перед загрузкой приложения, действительно ли это приложение будет выполняться на этом беспроводном устройстве 12, 18, 20, 22 конечного пользователя. Без способа такого определения перед загрузкой приложения конечный пользователь мог бы платить за эфирное время, чтобы загрузить неиспользуемое приложение. Кроме того, если конечный пользователь не может выяснить, почему приложение не будет работать, конечный пользователь может потерять веру в свои силы, что приведет к вызовам службы абонента. Следовательно, когда конечный пользователь пытается загрузить приложение через интерфейс данных, используется квитирование, чтобы определить характеристики беспроводного устройства перед предоставлением возможности выполнения действительной загрузки. Если, и только если, квитирование определяет, что беспроводное устройство 12, 18, 20, 22 поддерживает все требования приложения, приложение будет загружено. Кроме того, могут иметь место другие результаты вместо отказа загрузить, такие как множество уровней результатов, например, "невозможно", "возможно", "не рекомендуется" и "дополнительные рекомендации".
Один или более серверов 16 загрузки приложений, такие как сервер 16 загрузки приложений, которые предоставляют приложения в беспроводные устройства 12, 18, 20, 22, изображены на чертеже в локальной сети 26 стороны сервера с другими компьютерными элементами, находящимися на связи с беспроводной сетью 14. База 28 данных хранимых приложений может содержать приложения программного обеспечения и данные, которые являются доступными и загружаемыми, чтобы быть выполняемыми в беспроводных устройствах 12, 18, 20, 22, либо непосредственно, либо через сервер 16 загрузки приложений. Также изображен автономный сервер 32, второй сервер 30 загрузки приложений, которые могут предоставлять приложения вместе с другими функциональными средствами в беспроводные устройства 12, 18, 20, 22. Все компоненты могут работать в тандеме, чтобы обеспечить доступ к приложению, как дополнительно описано ниже в настоящей заявке. Однако следует заметить, что все функции стороны сервера также могут быть выполнены в одном сервере, таком как сервер 16 загрузки приложений. Кроме того, любая компьютерная платформа или компьютерная платформа стороны сервера может предоставлять отдельные службы и процессы в беспроводные устройства 12, 18, 20, 22 через беспроводную сеть 14.
Фиг.2 представляет блок-схему, которая более подробно иллюстрирует компоненты беспроводной сети 15 и взаимосвязь элементов системы 10 в сотовой телекоммуникационной сети. Беспроводная сеть 14 является только примерной и может включать в себя любую систему, посредством которой дистанционные модули, такие как беспроводные устройства 12, 18, 20, 22, взаимодействуют через эфир между собой и/или с компонентами беспроводной сети, включая, без ограничений, операторов беспроводной сети и/или серверы. Ряд серверов 40 загрузки приложений (которые дополнительно описаны ниже) находятся на связи с рядом серверов 42 балансировки нагрузки, чтобы помогать в управлении потоком данных в ряд 42 серверов. Серверы 42 балансировки нагрузки находятся на связи с рядом маршрутизаторов 44, которые, в конечном счете, соединяют с коммуникационной сетью 46, которые могут быть маршрутизаторами виртуальной частной сети (VPT, ВЧС). Другие компоненты стороны сервера будут присутствовать в сотовой сети данных с любыми другими компонентами, которые необходимы, чтобы обеспечить сотовые телекоммуникационные службы. Следовательно, поддержка стороны сервера является без труда масштабируемой посредством увеличения компонентов.
Маршрутизаторы 44 взаимодействуют с коммуникационной сетью 46 через линию связи данных, такую как Internet, защищенные LAN, ЛС (локальная сеть), WAN, ГС (глобальная сеть) или другую сеть. Коммуникационная сеть 46 управляет сообщениями (обычно в виде пакетов данных), посланных в контроллер 48 службы сообщений ("MSC", КСС). Коммуникационная сеть 46 взаимодействует с КСС 48 с помощью сети. Internet и/или POTS, ПОТС ("простая обычная телефонная система"). Обычно сетевое соединение или Internet между коммуникационной сетью 46 и КСС 48 переносит данные, а ПОТС переносит речевую информацию. КСС 48 соединена с множеством базовых станций ("BTS", БС) 50. Подобным образом, как и коммуникационная сеть, КСС 48 обычно соединена с БС 50 как с помощью сети, так и/или с помощью Internet, для передачи данных, а ПОТС для речевой информации. БС 50, в конечном счете, передает широковещательным беспроводным способом сообщения в беспроводные устройства, такие как сотовый телефон 12, с помощью службы коротких соотщений ("SMS") или другими способами передачи через эфир, известными в данной области техники.
Со ссылкой на фиг.3 изображена блок-схема компьютерной платформы 60 беспроводного устройства, которая может принимать и выполнять одно или более приложений программного обеспечения на уровне 68 приложений, в котором приложения передают из сервера 16 загрузки приложений. Компьютерная платформа 60 включает в себя, помимо других компонентов, интегральную схему прикладной ориентации ("ASIC") 62 или другой процессор, микропроцессор, логическую схему, программируемую матрицу вентилей или другое устройство обработки данных. ASIC 62 установлена во время изготовления беспроводного устройства и обычно является необновляемой. ASIC 62 или другой процессор выполняет уровень 64 интерфейса программирования приложений ("API", ИПП), который взаимодействует с уровнем 66 работы устройства, который поддерживает выполнение любых резидентных программ в памяти беспроводного устройства 12, 18, 20, 22. Память может состоять из памяти, предназначенной только для чтения или памяти произвольного доступа (RAM и ROM), EPROM (электрически программируемое ПЗУ), EEPROM (электрически стираемое программируемое ПЗУ), флэш-карт или любой памяти, обычной для компьютерных платформ. Компьютерная платформа 60 также находится на связи с локальной базой данных, которая может хранить приложения программного обеспечения, неактивно используемые в памяти, такие как приложения программного обеспечения, загруженные из сервера 16 загрузки приложений. Локальная база данных обычно состоит из одной или более ячеек флэш-памяти, но может быть вторичным или третичным запоминающим устройством, как известно в данной области техники, таким как магнитный носитель, EPROM, EEPROM, оптический носитель, магнитная лента или мягкий или жесткий диск. Уровень 66 OS, ОС осуществлен как сопряжение с сервером 16 загрузки приложений через обмен HTTP/SSL по протоколам и TCP/IP, который происходит через коммуникационную сеть 46.
Фиг.4 иллюстрирует один вариант осуществления интерфейса данных, в котором сервер 16 загрузки приложений является "тонким" сервером, взаимодействующим с одним сервером 68 сопряжения балансировки нагрузки. Сервер балансировки нагрузки, в конечном счете, поддерживает соединение связи с беспроводными устройствами, такими как сотовый телефон 12. Следует заметить, что несмотря на то, что сервер 16 загрузки приложений изображен при выполнении соединения IP, через CDMA, МДКР (множественный доступ с кодовым разделением), система 10 может поддерживать выполнение других соединений через другие беспроводные интерфейсы, такие как интерфейсы, основанные на протоколах Bluetooth. Сервер 16 загрузки приложений включает в себя механизм сервлета JAVA, который включает в себя как порождаемые подпроцессы активного сервлета, так и порождаемые подпроцессы кэшированиях программ, и механизм JAVA через буфер 74 взаимодействует с web-сервером 76. Следовательно, можно видеть, что отдельные компьютерные устройства могут содержать сервер 16 загрузки приложений, если требуется. Web-сервер 76 взаимодействует с сервером 76 балансировки нагрузки через буфер 78 и систему 70 балансировки нагрузки, которая также может быть отдельными компьютерными устройствами. Сервер балансировки нагрузки, в конечном счете, взаимодействует с беспроводными устройствами 12, 18, 20, 22 таким образом, чтобы распределять нагрузку данных наиболее эффективным способом в ряд серверов загрузки приложений (40 на фиг.2).
В операции, когда приложение выбрано, чтобы быть загруженным, либо через первоначальное квитирование, либо квитирование во время попытки загрузки между беспроводным устройством 12, 18, 20, 22 и сервером 16 загрузки приложений, информацию относительно необходимости приложения сравнивают с имеющимися характеристиками беспроводного устройства. В одном варианте осуществления сервер 16 загрузки приложений содержит информационный файл, который излагает требования приложения, такие как признаки или классы, требуемые приложением. Например, картографическое приложение может требовать доступ к классам: позиция и местоположение для запроса устройства для его текущей широты и долготы, параметры дисплея для рисования битовых карт на дисплее устройства, возможности меню для создания падающих меню, возможности конечного пользователя и возможности организации сети, такие как соединения TCP/IP. Другим примером атрибута является доступ к библиотекам третьей стороны. В примере картографического приложения доступ к библиотеке или картам третьей стороны может быть необходим, для того чтобы правильно использовать картографическую программу. Информационный файл также может содержать требования конкретной файловой системы, а также запоминающего устройства RAM. Например, конкретный информационный файл мог бы указывать, что приложение составляет по объему 100 К, и, следовательно, беспроводное устройство должно иметь 100 К пространства файловой системы, чтобы запомнить загрузку, и 100 К RAM, чтобы загрузить приложение во время выполнения. Информационный файл также содержит другие требования аппаратного обеспечения, такие как количество цветов, необходимых на дисплее, размеры экрана, скорость процессора или другие критерии, которые могут влиять на успешную загрузку и выполнение приложения.
В одном варианте осуществления квитирование имеет содержание информационного файла, переданного из сервера 16 загрузки приложений в беспроводное устройство 12, 18, 20, 22. В таком варианте осуществления беспроводное устройство определяет, поддерживает ли оно или не поддерживает все требования, перечисленные в информационном файле. Если беспроводное устройство 12, 18, 20, 22 позволяло бы поддерживать эти признаки приложения, тогда загрузка приложения начинается после квитирования. В противном случае, если не все необходимые признаки поддерживаются, отображение сообщения, указывающего конечному пользователю, что приложение не может быть загружено, так как беспроводное устройство не отвечает конкретному требованию. Такое сообщение может быть сгенерировано автономно с помощью беспроводного устройства 12, 18, 20, 22, или сообщение может быть извлечено из сервера, такого как второй сервер 32 или другой сервер в беспроводной сети 14. При осуществлении, в котором такое сообщение об ошибке посылают из сервера 16, 30, 32, оператор сети может настроить сообщения с целью наблюдения потребителем.
Также следует заметить, что дополнительные этапы могут происходить в беспроводном устройстве 12, 18, 20, 22, чтобы исправить причину того, что приложение не может быть загружено. Например, если единственной причиной отказа загрузки является то, что определенные классы программного обеспечения или библиотеки, необходимые, чтобы поддерживать приложение, не находятся в платформе 60 беспроводного устройства, тогда беспроводное устройство 12, 18, 20, 22 может попытаться загрузить эти классы или библиотеки, вместо немедленной выдачи сообщения, что загрузка потерпела неудачу. Если загрузка этих классов/библиотек удалась, тогда приложение впоследствии может быть загружено.
В другом варианте осуществления вместо передачи информационного файла из сервера 16 загрузки приложений в беспроводное устройство 12, 18, 20, 22 беспроводное устройство передает в сервер 16 загрузки приложений определенные атрибуты беспроводного устройства. В качестве примера, беспроводное устройство передает в сервер загрузки приложений, что оно имеет доступные 400 К RAM, доступный 1 Мбайт флэш-памяти, экран 60х75 с цветным дисплеем 8 бит, и что оно имеет класс сети - класс Bluetooth. В таком случае приложение загружают только, если сервер 16 загрузки приложений определяет, что беспроводное устройство 12, 18, 20, 22 поддерживает все, что требует приложение. В противном случае сервер 16 загрузки приложений может вернуть ошибку в беспроводное устройство относительно произведенной попытки загрузки.
Фиг.5 представляет блок-схему последовательности операций одного варианта осуществления выполнения процесса в сервере 16 загрузки приложений, взаимодействующем с беспроводным устройством, таким как сотовый телефон 12. Сервер 16 загрузки приложений принимает попытку соединения из беспроводного устройства 12, 18, 20, 22, как изображено на этапе 80, и посылает запрос в беспроводное устройство, чтобы получить атрибуты беспроводного устройства, как изображено на этапе 82. В этом варианте осуществления сервер 16 загрузки приложений затем определяет, принял ли он разрешение от конечного пользователя беспроводного устройства 12, 18, 20, 22 получить атрибуты, как изображено на этапе 84 принятия решения, если нет, конечному пользователю возвращают ошибку, чтобы запретить запрошенный доступ, как изображено на этапе 86, а затем процесс возвращается, чтобы ждать попытку соединения на этапе 80. Если конечный пользователь беспроводного устройства 12, 18, 20, 22 дал разрешение, чтобы осуществить доступ к атрибутам беспроводного устройства на этапе 84 принятия решения, атрибуты беспроводного устройства получают из беспроводного устройства, как изображено с помощью этапа 90, что может происходить через обмен файлами между сервером 16 загрузки приложений и беспроводным устройством 12, 18, 20, 22, как описано выше. Следует заметить, что этап 84 принятия решения является только защитной мерой от нежелательного доступа к беспроводному устройству с помощью сервера 16 загрузки приложений и является необязательным, чтобы реализовать систему 10.
Когда атрибуты беспроводного устройства получены, выполняют определение относительно того, что может ли беспроводное устройство осуществить доступ к запрошенному приложению, как изображено на этапе 90 принятия решения. Если беспроводное устройство не может осуществить доступ к приложению из-за некоторой причины, такой как неадекватные характеристики аппаратного обеспечения или программного обеспечения, тогда конечному пользователю возвращают ошибку, как изображено на этапе 86, и в противном случаем процесс возвращается, чтобы ждать дополнительную попытку соединения из беспроводного устройства на этапе 80. Если беспроводное устройство 12, 18, 20, 22 может загрузить приложение, тогда выполняют определение, запросил ли конечный пользователь доступ к новому приложению, как изображено на этапе 100 принятия решения. Если конечный пользователь не запросил новое приложение, процесс входит в состояние ожидания на этапе 100 принятия решения относительно конкретного порожденного подпроцесса взаимодействия с беспроводным устройством. Иначе, если конечный пользователь запросил другое приложение, процесс выполняет цикл на этап 80 и обрабатывает запрос как новую попытку соединения.
Фиг.6 иллюстрирует параллельный процесс, происходящий в беспроводном устройстве 12, 18, 20, 22, которое взаимодействует с сервером 16 загрузки приложений на фиг.5. Беспроводное устройство пытается осуществить доступ к приложению, как изображено на этапе 102, и соединяется с любым сервером в беспроводной сети 14, который представляет, что он предоставляет доступ к запрошенному приложению. Затем беспроводное устройство выполняет определение относительно того, что послал ли сервер 16 загрузки приложений запрос, чтобы осуществить доступ к атрибутам беспроводного устройства, как изображено на этапе 104 принятия решения. Если запрос не был послан, тогда беспроводное устройство предполагает, что сравнение не требуется, и ждет доступа к приложению на этапе 114 принятия решения. Если разрешение, чтобы осуществить доступ к атрибутам беспроводного устройства, запрошено на этапе 104 принятия решения, тогда от конечного пользователя запрашивают разрешение, как изображено на этапе 106, а затем выполняют определение, дал ли конечный пользователь разрешение доступа к атрибутам, как изображено на этапе 108 принятия решения.
Если конечный пользователь не дал разрешения доступа к атрибутам на этапе принятия решения 108, тогда конечному пользователю возвращают ошибку, указывающую на невозможность доступа к запрошенному приложению, как изображено на этапе 110, порожденный подпроцесс выполнения процесса заканчивается. Иначе, если конечный пользователь дал разрешение доступа к атрибутам, атрибуты посылают в сервер 16 загрузки приложений, как изображено на этапе 112. Этап 112 является только одним вариантом осуществления процесса, и беспроводное устройство 12, 18, 20, 22 не должно посылать свои атрибуты, через файл или другие данные, в сервер 16 загрузки приложений, а может просто предоставить доступ к атрибутам агенту сервера, сделать атрибуты находимыми или посредством любого другого способа сбора данных, известного в данной области техники. После того, как атрибуты посланы на этапе 112, выполняют определение относительно того, что осуществило ли беспроводное устройство доступ к запрошенному приложению, как изображено на этапе 114 принятия решения, и, если нет, конечному пользователю возвращают ошибку на этапе 110, и порожденный подпроцесс доступа к приложению заканчивается. Иначе, если доступ предоставлен на этапе 114 принятия решения, тогда порожденный подпроцесс процесса просто заканчивается в беспроводном устройстве 12, 18, 20, 22. Процесс начнется снова на этапе 102 после желания конечного пользователя осуществить доступ к другому приложению через сеть.
Таким образом, система 10 предоставляет способ взаимодействия между беспроводным устройством 12, 18, 20, 22 и сервером 16 загрузки приложений в беспроводной сети 14, включающий в себя этапы, на которых передают данные из беспроводного устройства 12, 18, 20, 22 в сервер 16 загрузки приложений через беспроводную сеть, при этом беспроводное устройство имеет свои атрибуты и компьютерную платформу 60, предназначенную для выборочного выполнения в ней компьютерных программ, и беспроводное устройство дополнительно имеет конечного пользователя, который может выборочно осуществлять доступ к компьютерной платформе 60 и в сервер 16 загрузки приложений, имеющий, по меньшей мере, одно загружаемое приложение, находящееся в нем. Способ дополнительно включает в себя этап, на котором получают данные из беспроводного устройства 12, 18, 20, 22, указывающие на атрибуты беспроводного устройства, а затем этап, на котором определяют доступ беспроводного устройства 12, 18, 20, 22 к приложениям, доступным через сервер 16 загрузки приложений, на основании атрибутов беспроводного устройства. Этап, на котором получают данные из беспроводного устройства 12, 18, 20, 22, может быть этапом, на котором получают атрибуты беспроводного устройства, которые включают в себя данные относительно компьютерной платформы 60 и/или программного обеспечения, находящегося в компьютерной платформе 60 беспроводного устройства.
Этап, на котором получают данные из беспроводного устройства 12, 18, 20, 22, может быть этапом, на котором принимают атрибуты беспроводного устройства в сервере 16 загрузки приложений, где находится приложение, которое загружается беспроводным устройством 12, 18, 20, 22. Этап, на котором получают данные из беспроводного устройства 12, 18, 20, 22, может происходить при первоначальном контакте сервера 16 загрузки приложений с помощью беспроводного устройства или, в качестве альтернативного варианта, может происходить при попытке загрузки приложения с помощью беспроводного устройства. Способ также дополнительно включает в себя этапы, на которых при попытке загрузки приложения подсказывают конечному пользователю беспроводного устройства 12, 18, 20, 22, чтобы запросить доступ к атрибутам беспроводного устройства и после получения разрешения конечного пользователя передают атрибуты беспроводного устройства в сервер 16 загрузки приложений.
Если система 10 осуществлена таким образом, способ дополнительно может включать в себя этапы, на которых передают требования для запрошенного приложения, загружаемого в беспроводное устройство 12, 18, 20, 22, и указывают, возможна ли загрузка на основании принятых требований. В качестве альтернативного варианта, способ может включать в себя этап, на котором передают требования для запрошенного приложения, загружаемого в беспроводное устройство, на котором могут передавать требования из сервера 16 загрузки приложений, где находится приложение, а затем этап, на котором указывают, возможна ли загрузка, и передают данные из беспроводного устройства 12, 18, 20, 22 в сервере 16 загрузки приложений, чтобы указать, возможна ли загрузка.
После неудачи загрузки с помощью беспроводного устройства 12, 18, 20, 22 способ может включать в себя этап, на котором извещают конечного пользователя о неудаче загрузки.
В виду того, что способ является выполняемым в компьютерной платформе беспроводного устройства 12, 18, 20, 22, настоящее изобретение включает в себя программу, находящуюся на доступном для чтения с помощью компьютера носителе, где программа управляет сервером или другим компьютерным устройством, имеющим компьютерную платформу, чтобы выполнять этапы способа. Доступный для чтения с помощью компьютера носитель может быть памятью сервера 16 загрузки приложений или может быть в связанной базе данных, такой как база 28 данных. Кроме того, доступный для чтения с помощью компьютера носитель может быть на носителе вторичной памяти, который является загружаемым в компьютерную платформу беспроводного устройства, таком как магнитный диск или лента, оптический диск, жесткий диск, флэш-память или другой запоминающий носитель, как известно в данной области техники.
В контексте фиг.5 и 6 способ может быть реализован, например, с помощью операционной части (частей) беспроводной сети 14, чтобы выполнять последовательность доступных для чтения с помощью машины команд, такой как компьютерная платформа 60 беспроводного устройства, сервер 16 загрузки приложений и автономный сервер 32. Команды могут находиться на различных типах носителей, несущих сигнал, или первичных, вторичных или третичных носителях хранения данных. Носители могут содержать, например, RAM (не изображена), доступную с помощью компонентов беспроводной сети 14, или находящуюся в компонентах беспроводной сети 114. Содержатся ли в RAM, на дискете или на другом вторичном запоминающем носителе, команды могут быть запомнены на множестве доступных для чтения с помощью машины носителях запоминания данных, таких как устройство памяти DASD (ЗУ прямого доступа) (например, традиционный накопитель на жестком диске или массив RAID (избыточный массив независимых дисков), магнитная лента, электронная память, предназначенная только для чтения (например, ROM, EPROM или EEPROM), карты флэш-памяти, оптическое запоминающее устройство (например, CD-ROM, WORM (однократная запись/многократное считывание), DVD, цифровая оптическая лента), бумажные перфокарты или другие подходящие носители запоминания данных, включая цифровые и аналоговые носители передачи данных.
Несмотря на то, что предыдущее раскрытие изображает иллюстративные варианты осуществления изобретения, следует заметить, что различные изменения и модификации могли бы быть сделаны в них, не выходя за рамки объема изобретения, как определено с помощью прилагаемой формулы изобретения. Кроме того, несмотря на то, что элементы изобретения могут быть описаны или представлены в формуле изобретения в единственном числе, предполагается множественное число, до тех пор, пока явно не указано ограничение единственным числом.