
プッシュプロキシゲートウェイは、モバイル端末にURL通知をプッシュ配信するWAPゲートウェイの構成要素です。通知には通常、MMS、メール、インスタントメッセージ、着信音のダウンロード、新しいデバイスファームウェアの通知などが含まれます。ほとんどの通知は、端末ユーザーに音声アラートを発します。通知は通常、URLリンクを含むテキスト文字列です。通知のみが端末にプッシュ配信されることに注意してください。端末は、通知に関連付けられたコンテンツをダウンロードまたは表示するために、通知に対して何らかの処理を行う必要があります。
プッシュメッセージは、HTTP POST としてプッシュプロキシゲートウェイに送信されます。POST はマルチパート XML ドキュメントで、最初のパートは PAP (プッシュアクセスプロトコル) セクション、2 番目のパートはサービス表示またはサービスロードのいずれかになります。
+---------------------------------------------+ | HTTP POST | \ +---------------------------------------------+ | WAP | PAP XML | | プッシュ +---------------------------------------------+ | フロー | サービス表示またはサービス負荷XML | / +---------------------------------------------+
POSTリクエストには、少なくとも送信先のURL(これはPPGベンダーによって標準が異なる)とコンテンツタイプが含まれます。
PPG POSTの例:
POST /somelocation HTTP / 1.1 Host : ppg.somecarrier.com Content-Type : multipart/related; boundary=someboundarymesg; type="application/xml"PAP XMLには、少なくとも<pap>要素、<push-message>要素、および<address>要素が含まれます。
PAP XMLの例:--someboundarymesg Content-Type: application/xml
<?xml version="1.0"?> <!DOCTYPE pap PUBLIC "-//WAPFORUM//DTD PAP 1.0//EN" "http://www.wapforum.org/DTD/pap_1.0.dtd"> <pap> <push-message push-id= "some_push_id" > <address address-value= "WAPPUSH=+12065551212/TYPE=PLMN@ppg.somecarrier.com" /> </push-message> </pap>このPAPメッセージの重要な部分は、アドレス値とタイプです。値は通常MSISDNであり、タイプはMSISDNに送信するか(一般的なケース)、IPアドレスに送信するかを示します。プッシュイニシエータ(PI)は通常、モバイルステーションのIPアドレス(一般的に動的)を知らないため、タイプはほぼ常にMSISDNです。IPアドレスの場合:TYPE=USER@abcd
PAPのその他の機能については、PAPに関する記事をご覧ください。
PUSHサービス指示(SI)には、少なくとも<si>要素と<indication>要素が含まれます。
サービス表示の例:
--境界メッセージ コンテンツタイプ: text/vnd.wap.si <?xml version="1.0"?> <!DOCTYPE si PUBLIC "-//WAPFORUM//DTD SI 1.0//EN" "http://www.wapforum.org/DTD/si.dtd"> <si> <indication si-id= 345532 href= "http://mmsc.somecarrier.com/CFJIOJF43F" > 新しいMMSを受信しました。ダウンロードしますか? </indication> </si>プッシュ発信元からプッシュメッセージを受信すると、PPGには配信方法が2つあります。モバイルステーションのIPアドレスがPPGに既知であれば、PPGはIPベアラを介してモバイルステーションに直接配信できます。これは「コネクション指向プッシュ」と呼ばれます。モバイルステーションのIPアドレスがPPGに既知でない場合、PPGはSMSベアラを介して配信します。SMSベアラを介した配信は「コネクションレスプッシュ」と呼ばれます。
コネクションレスプッシュでは、 PPGがプッシュメッセージを移動局に配信するためにSMSC BINDが必要です。通常、PPGはローカルで動作するSMSキューイングメカニズムを備えており、これにBINDし、さらにこのメカニズムがキャリアのSMSCにBINDします。このメカニズムにより、SMSインフラストラクチャの障害発生時にキューイングが可能になり、メッセージのスロットリングも実現されます。
WAPプッシュメッセージは単一のSMSメッセージに収まるサイズよりも大きくなる可能性があるため、プッシュメッセージはマルチパートSMSとして複数のSMSメッセージに分割される場合があります。
接続指向型プッシュ通知(デバイスが対応している場合)では、ゲートウェイがハンドセットのIPアドレスを認識していれば、 SMSC BINDは不要です。ゲートウェイがハンドセットのIPアドレスを特定できない場合、またはデバイスに接続できない場合は、プッシュ通知はエンコードされてSMSとして送信されます。
コネクション指向型プッシュは、コネクションレス型プッシュに比べて使用頻度が低い。その理由はいくつかある。
他にも多くの属性が存在し、それらはOpen Mobile Allianceやその他のサイトの仕様書に詳細に記載されています。
PPGのベンダーには、Nokia Siemens Networks、Ericsson、Gemini Mobile Technologies、Openwave、Acision、Huawei、Azetti、Alcatel、WIT Software、ZTE、およびオープンソースのKannelが含まれます。