Что такое CellCore, RIL и WAP

1. Что такое CellCore

Cellcore – это набор сервисов, ориентированных на работу через беспроводную сеть.

CellCore для платформы Windows Mobile включает следующие компоненты:

  • Radio Interface Layer (RIL)
  • Телефония (TAPI, Phone API)
  • Wireless Application Protocol API (WAP API)
  • SMS Service / EMS
  • SIM Manager

2. Что такое RIL

Radio Interface Layer – это ключевой компонент беспроводного интерфейса ОС Windows Mobile. Данная технология обеспечивает работу мобильного устройства с GSM/GPRS или CDMA2000 1X модемами. RIL является интерфейсом между CellCore библиотекой для работы с различными беспроводными сервисами и стеком протоколов, с которыми работает беспроводной модем. Производителям же беспроводных модемов RIL позволяет интегрироваться в ОС WM.

Архитектурно RIL разделяется на два уровня: RIL драйвер, обрабатывающий AT команды, и RIL proxy, который распределяет запросы от нескольких клиентов к одному RIL драйверу. За исключением PPP, все взаимодействия между Windows Mobile и стеком радио устройств осуществляется через RIL. Что касается PPP, то клиент сначала использует RIL, чтобы установить соединение, но затем в обход RIL работает напрямую с виртуальным Serial портом, назначенным модему. В сущности, RIL получает запросы верхнего уровня, например от TAPI, и конвертирует их в команды, которые поддерживаются и понимаются модемом. Однако RIL не взаимодействует с модемом напрямую, а делает это через драйвер модема (например, serial драйвер).


 

Для упрощения имплементации RIL, все вызовы к этому интерфейсу асинхронны. В том числе и вызовы функций. Когда модуль верхнего уровня (SIM, SMS,…) регистрируется в RIL интерфейсе, он объявляет две callback функции: обработчик нотификаций и обработчик возвращаемых значений.

Обработчик нотификаций вызывается при возникновении различных событий: входящий звонок, новая SMS и пр. Обработчик возвращаемых значений вызывается, когда готов результат работы функции. При этом в момент вызова функции возвращается уникальный идентификатор, который впоследствие используется для поиска соответствия для возвращаемого значения. Блокирующий вызов функций можно организовать через семафоры.

3. Что такое WAP API

WAP протокол является де-факто мировым стандартом для доставки и отображения информации по беспроводному интерфейсу, а также стандартом для организации сервисов на мобильных устройствах. WAP – это открытая спецификация, которая определяет как транспортный уровень, так и интерфейс для приложений. Он решает проблему доставки контента в беспроводной среде, делая возможным работу в интернете и доступными сервисы с мобильного устройства.
WAP базируется на существующих стандартах Internet, таких как IP, HTTP, XML и является протоколом верхнего уровня в сетях передачи данных CDMA, GSM и надстройкой над протоколом GPRS.

Перечень функций для работы с WAP:

  • WapOpen – получить дескриптор WAP сообщения
  • WapClose – закрыть WAP сообщение
  • WapRead – прочитать пакет
  • WapSend – отправить пакет
  • WapGetNextPrimitiveSize – получить размер следующего пакета, для чтения
  • WapPing – пинг клиента

Header: wap.h
Library: wap.lib

WAP Push – это механизм доставки контента через WAP, адрес к которому передается через SMS.
WAP Push доступен в Windows Mobile через интерфейс Push Router, который  отвечает за аутентификацию, получение и роутинг всех входящих WAP Push сообщений к клиентским приложениям, обрабатывающим Push сообщения.

У Push Router три задачи:

  • Принять push сообщение, аутентифицировать отправителя, используя Security Module, который является частью Push Router
  • Назначить уровень безопасности сообщению посредством Security manager, на основе данных об отправителе сообщения и методе аутентификации.
  • Отправить сообщение push клиенту

Push Router может принимать данные через беспроводные Push Proxy Gateway (PPG), GSM, CDMA и SMS.
Данная диаграмма показывает основные компоненты Push Router.
 

Перечень функций для работы с Push Router:

  • PushRouter_RegisterClient
  • PushRouter_UnRegisterClient
  • PushRouter_Open
  • PushRouter_Close
  • PushRouter_GetMessage
  • PushRouter_FreeMessage

Header: pushclient.h
Library: pushprxy.lib

4. Ссылки

CellCore/RIL:
http://msdn.microsoft.com/en-us/library/aa921520.aspx
http://msdn.microsoft.com/en-us/library/ms847089.aspx
http://msdn.microsoft.com/en-us/library/ms890075.aspx

WAP:
http://msdn.microsoft.com/en-us/library/aa920063.aspx

© Григорий Земсков


Спасибо за то, что вы добавили данный пост в

добавить в twitter.com livejournal.com

Ваши комментарии:

также вы можете зарегистрироваться
Подпишитесь на новые записи моего блога:
Добавить в закладки: (в том числе и в Twitter)

Читайте также:

  • Недокументированные трюки для Windows Mobile 6
  • Windows Mobile Power Manager
  • Error LNK2001: unresolved external symbol _CLSID_Application
  • Это смартфон или карманный ПК?
  • Как убрать анимацию при Tap-And-Hold