(57)【要約】  モバイル電子通信装置は、ハウジングにより支持された、コントローラ、メモリ、無線トランシーバー、および出力装置を含む。コントローラは、メモリに記憶された命令を有するプログラムを実行し、そのプログラムの実行を中断する。コントローラは、無線トランシーバーで通知メッセージを受信したことに応じて、無線トランシーバーでオンラインデータ記憶サービスから通信メッセージを取得するよう、プログラムの実行を再開する。コントローラは、通信メッセージを取得するためにプログラムを実行し、出力装置で通信メッセージを出力する。モバイル電子通信装置は、メッセージを出力し、通信メッセージの送信と通信メッセージの出力との間での遅延は減少する。
2015520957.tif 000002
【特許請求の範囲】
【請求項１】
モバイル電子通信装置において、
ハウジングと、
前記ハウジングにより支持され、データを無線通信ネットワークと送受信するように設定された、無線トランシーバーと、
前記ハウジングにより支持された出力装置と、
前記ハウジングにより支持され、プログラム命令を記憶するように設定された、メモリと、
前記ハウジングにより支持され、前記メモリ、前記出力装置、および前記無線トランシーバーに動作可能に接続されたコントローラと、
を含み、前記コントローラは、
前記メモリに記憶されたメッセージプログラムのプログラム命令を実行し、
前記メッセージプログラムの前記プログラム命令の実行を中断し、
前記無線トランシーバーが前記メッセージプログラムに対応する識別子を含む通知メッセージをメッセージングサービスから受信したことに応じて、前記無線トランシーバーでオンラインデータ記憶サービスから通信メッセージを取得するように、前記メッセージプログラムの前記プログラム命令の実行を再開し、
前記出力装置で前記通信メッセージに対応する出力を生成する、
ように設定される、モバイル電子通信装置。
【請求項２】
請求項１に記載のモバイル電子通信装置において、
前記コントローラは、前記通信メッセージの取得に応じて、前記無線トランシーバーで前記メッセージングサービスに送達受領メッセージを送信するようにさらに設定される、モバイル電子通信装置。
【請求項３】
請求項１に記載のモバイル電子通信装置において、
前記メッセージングサービスは、前記オンラインデータ記憶サービスとは異なる、モバイル電子通信装置。
【請求項４】
請求項１に記載のモバイル電子通信装置において、
前記コントローラは、前記メッセージプログラムの実行が中断される間、低電力モードで動作するようにさらに設定される、モバイル電子通信装置。
【請求項５】
請求項４に記載のモバイル電子通信装置において、
前記コントローラは、前記無線トランシーバーでの前記通知メッセージの受信を聞くために前記メモリに記憶された別のプログラムのプログラム命令を実行するようにさらに設定され、前記別のプログラムは、前記プロセッサが前記低電力モードで動作している間に実行される、モバイル電子通信装置。
【請求項６】
ネットワーク通信システムにおいて、
オンラインデータ記憶サービスと、
データネットワークを通じて前記データ記憶サービスに通信可能に連結されたモバイル電子通信装置と、
サーバーであって、前記サーバーに動作可能に接続されたメモリに記憶されたプログラム命令を実行する、サーバーと、
を含み、
前記サーバーは、前記データネットワークを通じて前記オンラインデータ記憶サービスおよび前記モバイル電子通信装置に通信可能に接続され、
前記サーバーは、
前記モバイル電子通信装置に送達されるよう意図された第１の通信メッセージを受信し、
前記第１の通信メッセージを前記オンラインデータ記憶サービスに記憶させ、
前記第１の通信メッセージが前記オンラインデータ記憶サービスに記憶されたことに応じて、第１の通知メッセージを前記モバイル電子通信装置に送信する、ように設定される、ネットワーク通信システム。
【請求項７】
請求項６に記載のネットワーク通信システムにおいて、
前記第１の通知メッセージは、セッション開始プロトコル（ＳＩＰ）で送信され、前記モバイル通信装置が、低電力モードで動作する間に前記第１の通知メッセージを受信し、また、メモリに記憶されたプログラム命令を実行して、前記第１の通信メッセージを前記オンラインデータ記憶サービスから取得することを可能にする、ネットワーク通信システム。
【請求項８】
請求項６に記載のネットワーク通信システムにおいて、
前記サーバーは、
前記モバイル電子通信装置が前記第１の通信メッセージを取得したことを示す送達受領メッセージを前記モバイル電子通信装置から受信し、
前記第１の通信メッセージと関連して、応答データベースに、前記送達受領メッセージに対応するデータを記憶させるように、さらに設定される、ネットワーク通信システム。
【請求項９】
請求項８に記載のネットワーク通信システムにおいて、
前記サーバーは、前記送達受領メッセージを前記モバイル電子通信装置から受信し損ねたことに応じて、前記第１の通知メッセージの送信から第１の所定のタイムアウトが終了した後で前記モバイル電子通信装置に第２の通知メッセージを送信するように、さらに設定される、ネットワーク通信システム。
【請求項１０】
請求項９に記載のネットワーク通信システムにおいて、
前記サーバーは、前記送達受領メッセージを前記モバイル電子通信装置から受信し損ねたことに応じて、前記第２の通知メッセージの送信から第２の所定のタイムアウトが終了した後で前記モバイル電子通信装置に第３の通知メッセージを送信するように、さら設定され、
前記第２の所定のタイムアウトは、前記第１の所定のタイムアウトよりも短い、ネットワーク通信システム。
【請求項１１】
請求項６に記載のネットワーク通信システムにおいて、
前記サーバーは、
前記モバイル電子通信装置のユーザーが前記第１の通信メッセージの受信を確認したことに応じて送信される応答メッセージを、前記モバイル電子通信装置から受信し、
前記第１の通信メッセージに関連して、応答データベースに、前記応答メッセージに対応するデータを記憶させるように、さらに設定される、ネットワーク通信システム。
【請求項１２】
請求項６に記載のネットワーク通信システムにおいて、
前記データネットワークを通じて前記データ記憶サービスに通信可能に連結された複数のモバイル電子通信装置をさらに含み、
前記サーバーは、前記複数のモバイル電子通信装置のうちの第１のモバイル電子通信装置のネットワークアドレスに対応するアイデンティティと役割との間の関連性、および前記役割に対応するデータを記憶するデータベースをさらに含み、
前記サーバーは、
前記複数のモバイル電子通信装置のうちの前記第１のモバイル電子通信装置に対応する識別情報を含まない、前記役割に送達されることが意図された第２の通信メッセージを受信し、
前記第２の通信メッセージを前記オンラインデータ記憶サービスに記憶させ、
前記データベースを参照して、前記複数のモバイル電子通信装置のうちの前記第１のモバイル電子通信装置の前記ネットワークアドレスを識別し、
前記第２の通信メッセージが前記オンラインデータ記憶サービスに記憶されたことに応じて、前記複数のモバイル電子通信装置のうちの前記第１のモバイル電子通信装置の識別された前記ネットワークアドレスを参照して、前記複数のモバイル電子通信装置のうちの前記第１のモバイル電子通信装置に通知メッセージを送信するように、さらに設定される、ネットワーク通信システム。
【請求項１３】
請求項１２に記載のネットワーク通信システムにおいて、
前記サーバーは、
前記複数のモバイル電子通信装置のうちの前記第１のモバイル電子通信装置と関連する前記アイデンティティの前記役割を取り消すために、前記データベースから前記役割と前記アイデンティティとの間の前記関連性に対応する前記データを除去し、
前記役割の取り消しを示すメッセージを、前記複数のモバイル電子通信装置のうちの前記第１のモバイル電子通信装置に送信するように、さらに設定される、ネットワーク通信システム。
【請求項１４】
請求項１３に記載のネットワーク通信システムにおいて、
前記第１のモバイル電子通信装置は、
前記第１の通信メッセージを記憶するように設定されたメモリと、
前記メモリに動作可能に接続されたプロセッサと、をさらに含み、
前記プロセッサは、前記サーバーからの前記役割の取り消しを示す前記メッセージの受信に応じて、前記メモリから前記第１の通信メッセージを削除するように設定される、ネットワーク通信システム。
【請求項１５】
請求項１３に記載のネットワーク通信システムにおいて、
前記サーバーは、
前記複数のモバイル電子通信装置のうちの第２のモバイル電子通信装置のネットワークアドレスと関連する、前記役割と別のアイデンティティとの間の別の関連性に対応するデータを、前記データベースに記憶させ、
前記複数のモバイル電子通信装置のうちの前記第２のモバイル電子通信装置に対応する識別情報を含まない、前記役割に送達されることが意図された第３の通信メッセージを受信し、
前記第３の通信メッセージを前記オンラインデータ記憶サービスに記憶させ、
前記データベースを参照して前記複数のモバイル電子通信装置のうちの前記第２のモバイル電子通信装置の前記ネットワークアドレスを識別し、
前記別の通信メッセージが前記オンラインデータ記憶サービスに記憶されたことに応じて、前記複数のモバイル電子通信装置のうちの前記第２のモバイル電子通信装置の識別された前記ネットワークアドレスを参照して前記複数のモバイル電子通信装置のうちの前記第２のモバイル電子通信装置に通知メッセージを送信するように、さらに設定される、ネットワーク通信システム。
【発明の詳細な説明】
【開示の内容】
【０００１】
〔優先権の主張〕
本出願は、「Reduced Latency Messaging For Mobile Communication Devices」の名称で、２０１２年４月１３日に出願された、米国仮特許出願第６１／６２４，０５５号の優先権を主張するものである。
【０００２】
〔技術分野〕
この文書は、無線通信システムに関し、さらに具体的には、モバイル電子通信装置への通信メッセージの送達を制御することに関する。
【０００３】
〔背景〕
近年、携帯用の電子装置が、幅広い商業的成功を収めている。モバイル電子通信装置（ＭＥＣＤ）は、ＭＥＣＤが多くの場所でデータネットワークに接続されたままでいることを可能にする、典型的には１つまたは複数の形態の無線データネットワークを用いた、無線通信装置を含む。インターネットアクセス、テキスト、音声、および画像通信を可能にする、高性能のソフトウェアを備えた、いわゆる「スマートフォン」およびタブレット型コンピューターを含む、広範なハンドヘルドＭＥＣＤは、専門家および他の個人が同僚および他の協力者と交流をとり続けることを可能にしている。
【０００４】
モバイル電子通信装置は、しばしば、強力な電子機器を含み、これは、スマートフォンの場合にはポケットに入れて容易に運べる小型パッケージの中、または、より大きなスクリーンを有するタブレット型コンピューターおよび装置の場合は小さいケースの中にある、シングルコアまたはマルチコアの中央処理装置（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）、マルチバンドの無線トランシーバー、カメラ、スピーカー、およびタッチスクリーンディスプレイを含む。モバイル操作を可能にするため、バッテリーまたは他のエネルギー貯蔵装置が、典型的には、ＭＥＣＤ内部に収容される。ＭＥＣＤの小型フォームファクターに存在するサイズおよび重量の制約は、バッテリーが、ＭＥＣＤのハウジング内で利用可能な物理的空間内部に嵌まるために、幾分小さい容量を有することを、しばしば意味している。ＭＥＣＤは、使い切ったバッテリーを再充電するために電源に接続される。バッテリー貯蔵容量が改善を続け、燃料電池など、他のエネルギー貯蔵テクノロジーが将来のＭＥＣＤで一般的になり得る一方で、ＭＥＣＤの構成要素はまた、動作中に熱を生成する。ＭＥＣＤが長いバッテリー作動寿命を有していても、ＭＥＣＤの温度は、装置内の電子部品が重い負荷の下で動作する場合には、許容できないレベルまで上昇し得る。
【０００５】
ＭＥＣＤは、しばしば、充電の合間の時間間隔を最大化し、かつＭＥＣＤの温度を快適なレベルに保つために、ＭＥＣＤの電力使用量を減少させるように特に設定された、ハードウェアおよびソフトウェアを含む。例えば、多くのＭＥＣＤは、ディスプレイスクリーンおよび他の構成要素を非アクティブ化し、ＣＰＵを低電力または「スリープ」モードで動作させる。スリープモードでは、大部分のソフトウェア活動（most software activity）が中断され、ＭＥＣＤの電力消費量が落ちる。一部のＭＥＣＤ装置は、ＭＥＣＤがスリープ状態でない場合であっても、ソフトウェアアプリケーションをやはり中断する。例えば、ＭＥＣＤは、ユーザーが「フォアグラウンド」のウェブブラウザアプリケーションと相互作用している間、「バックグラウンド」のＥメールおよびインスタント・メッセージ・アプリケーションを中断することができる。ＭＥＣＤは、バッテリー消費量を減らすため、また、より多くのハードウェアリソースがフォアグラウンドアプリケーションにとって利用可能となるのを確実にするために、バックグラウンドアプリケーションを中断する。
【０００６】
いわゆる「プッシュ」技術も、無線ネットワークを通じて第三者から送信される通信を受信した場合に、ＭＥＣＤの電力使用量を減らすのを助ける。「プッシュ」スキームでは、ネットワークサービスは、ＭＥＣＤに直接メッセージを送り、通信メッセージの存在についてＭＥＣＤに警告する。市販されている１つの例は、Apple Push Notification Service（ＡＰＮＳ）であり、これは、通知メッセージをあるＭＥＣＤに送信して、視聴覚的警報を通じてユーザーの関心を新たな通信に引き付ける。次にＭＥＣＤのユーザーは、ＭＥＣＤ上の適切なソフトウェアアプリケーション（口語体で「ａｐｐ」と呼ぶ）をアクティブ化し、ＭＥＣＤとの無線ネットワークを用いてその通信からデータをダウンロードする。例えば、ＡＰＮＳシステムは、ＭＥＣＤのユーザーが新たな電子メールメッセージを受け取ったという通知をＭＥＣＤに送ることができる。そのユーザーは、ＭＥＣＤにおいて生成される視聴覚的および／または触覚的警報を通じて、通知メッセージを受け取り、その後、電子メールアプリケーションをアクティブ化し、このアプリケーションが、この後、新たなメッセージをダウンロードし表示する。
【０００７】
プッシュ技術は、場合によっては、ＭＥＣＤの電力消費量を減らすことができる。これは、ＭＥＣＤは、新たな通信メッセージをチェックまたは「ポーリングする」ために定期的にＥメールサーバーまたは他のオンラインサービスとの通信を開始する必要がないためである。各「ポーリング」は、いくつかのＣＰＵの使用、ならびに無線トランシーバーを用いた伝送を必要とするので、多くの「ポーリング」作業の累積的影響は、バッテリー寿命に悪影響を与える場合がある。それに反して、「プッシュ」動作は、ＭＥＣＤにおけるＣＰＵおよび無線トランシーバーの使用を軽減する。例えば、ＭＥＣＤは、代わりに新しいＥメールメッセージが利用可能となったことをプッシュ警報（push alert）が信号伝達できる場合、新しいＥメールメッセージについて毎分Ｅメールサーバーにポーリングする必要がない。多くのＭＥＣＤユーザーが、電子メール、インスタント・メッセージ、およびソーシャルネットワーキングを含む、複数の通信アプリケーションを使用するので、プッシュ技術は、多くの個々のサービスにポーリングする必要性を軽減または排除し、かつ、バッテリー寿命を改善するのを助けることができる。
【０００８】
前述のとおり、中断したソフトウェアアプリケーション、およびプッシュ通信を含む、スリープモードは、ＭＥＣＤの電力消費量を減らすのを助ける。しかしながら、既存のＭＥＣＤネットワーク通信システムは、ＭＥＣＤに対する警報メッセージの迅速で信頼できる送達を必要とする警報またはページングシステムの必要性を満たすようには設計されていない。このような警報またはページングシステムは、医療業務、消防／救助業務、警察業務、および建設業務を含む、幅広い職業に用いられる。伝統的には、専用ハードウェア、例えばページャユニットおよび専門のページャ伝送ネットワークは、１つまたは複数のページャユニットに、優先度が高い警報およびメッセージを送るのに使用されてきた。大部分の専門家が既にスマートフォン、タブレット型コンピューター、または他のＭＥＣＤを持っていても、別個のハードウェアページャが必要とされる。これは、ＭＥＣＤによって、専門家がページおよび他のタイム・クリティカルな通信を確実に受信することはできないためである。既存のＭＥＣＤは、優先度が高いメッセージを全く受信できないか、または、長期遅延した後で優先度が高いメッセージを受信できるに過ぎず、これは、多くの職業において許容できない。
【０００９】
ＭＥＣＤにタイム・クリティカルなメッセージを送達することの１つの問題は、既存のプッシュ技術が「ベストエフォート」アプローチに依存していることであり、このアプローチでは、プッシュサービスが、プッシュメッセージをＭＥＣＤに送ろうと試みるが、ＭＥＣＤが実際にメッセージを受信したかどうかを確認しない。ＭＥＣＤがスリープモードにあるか、または一時的に無線データネットワークから切り離されている場合、ＭＥＣＤは、ユーザーに通知を送達しない。ＭＥＣＤがプッシュメッセージを受信しても、優先度が高い警報を送達する対応のアプリケーションが、バックグラウンドで中断され得る。ＭＥＣＤは、ユーザーが手動でメッセージングアプリケーションをアクティブ化するまで、優先度が高いメッセージを受信および表示せず、これにより、メッセージの送達がさらに遅れる。したがって、既存の通信方法は、ＭＥＣＤへの優先度が高いメッセージの送達において、また、ＭＥＣＤユーザーへの優先度が高いメッセージの表示において、大きな待ち時間または遅延をしばしば経験する。
【００１０】
通信の待ち時間を低減する１つの解決策は、ＭＥＣＤのすべてのアプリケーションを常にかつ同時に動作させ、遅れを最小にしたメッセージ送達を可能にすることであろう。しかしながら、ＭＥＣＤのバッテリー寿命および熱出力は、このような設定に苦しむ。したがって、通信メッセージの送達の待ち時間を低減すると共に、ＭＥＣＤが低電力モードで動作するのを可能にする改善が有益である。
【００１１】
〔概要〕
一実施形態では、待ち時間を低減させて優先度が高いメッセージを受信するモバイル電子通信装置が開発されている。モバイル電子通信装置は、ハウジングと、ハウジングにより支持され、無線通信ネットワークでデータを送受信するように設定された無線トランシーバーと、ハウジングにより支持された出力装置と、ハウジングにより支持され、プログラム命令を記憶するように設定されたメモリと、ハウジングにより支持され、メモリ、出力装置、および無線トランシーバーに動作可能に接続されたコントローラと、を含む。コントローラは、メモリに記憶されたメッセージプログラムのプログラム命令を実行し、メッセージプログラムのプログラム命令の実行を中断し、無線トランシーバーがメッセージサービスから、メッセージプログラムに対応する識別子を含む通知メッセージを受け取ったことに反応して、無線トランシーバーでオンラインデータ記憶サービスから通信メッセージを取得するためにメッセージプログラムのプログラム命令の実行を再開し、また、出力装置により通信メッセージに対応する出力を生成するように、設定される。
【００１２】
別の実施形態では、優先度が高いメッセージをモバイル電子通信装置に送達するネットワーク通信システムが開発されている。このネットワーク通信システムは、オンラインデータ記憶サービスと、データネットワークを通じてデータ記憶サービスに通信可能に連結されたモバイル電子通信装置と、サーバーと、を含み、サーバーは、このサーバーに動作可能に接続されたメモリに記憶されたプログラム命令を実行する。サーバーは、データネットワークを通じてオンラインデータ記憶サービスおよびモバイル電子通信装置に通信可能に接続される。サーバーは、モバイル電子通信装置に送達されることが意図される通信メッセージを受信し、その通信メッセージをオンラインデータ記憶サービスに記憶させ、通信メッセージがオンラインデータ記憶サービスに記憶されたことに応じて、通知メッセージをモバイル電子通信装置に送信するように設定される。
【００１３】
〔詳細な説明〕
本明細書に開示する実施形態の原理の理解を促進する目的で、図面と、以下の明細書中の説明とをこれから参照する。用語「モバイル電子通信装置」（ＭＥＣＤ）は、データネットワークを通じてデータまたは音声信号を送信することで通信を促進する、ハンドヘルドの、または別様に持ち運びできるいくつかの電子装置のうちの任意のものを指す。一般的な例としては、無線ネットワークを用いてデータを送受信する、携帯電話または「スマートフォン」、タブレット型コンピューター、携帯情報端末（ＰＤＡ）、および携帯型メディアプレーヤーが含まれるが、これらに限定されない。
【００１４】
本明細書で使用される用語「コントローラ」は、典型的にはマイクロプロセッサを含む、電子制御ユニットを指すが、ＡＳＩＣ、ＦＰＧＡ、汎用ＣＰＵ、例えばＡＲＭファミリーまたはｘ８６ファミリーのＣＰＵ、またはデータを送受信し、かつＭＥＣＤの動作を制御するように構成された任意のデータ処理装置などの、任意のそのような制御対応装置（control capable device）を含む。コントローラは、視覚表示装置を通じてグラフィック出力を駆動するための、１つまたは複数のグラフィック処理ユニット（ＧＰＵ）も含み得る。用語「データ記憶装置」は、コントローラにより使用され得る形で、デジタル情報を記憶および取得することができる任意の装置を指す。一般的な例としては、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）、およびスタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）が含まれるが、これらに限定されない。この用語は、電力がコントローラまたはメモリのいずれかから取り除かれた場合にデジタル情報を保持することのできる、任意の不揮発性データ記憶装置も含む。このような装置は、磁気ハードドライブ、ＮＡＮＤもしくはＮＯＲフラッシュメモリを含むソリッドステートの記憶装置、光学式データ記憶装置、または電源がない場合にデジタルデータを保持することができる任意の装置を含む。コントローラは、ＭＥＣＤのデータ記憶装置から読み取られる１つまたは複数のソフトウェアプログラムに従ってＭＥＣＤを動作させる。
【００１５】
本明細書で使用される場合、用語「設定する（configure）」とは、揮発性もしくは不揮発性メモリ、ハードドライブ、ソリッドステートドライブなどといったコンピューター可読媒体にプログラム命令および／またはパラメータデータを記憶させることと共に、モバイル電子通信装置を含むコンピューティング装置の電子部品を配列および接続することを指す。これらのプログラム命令は、モバイル電子通信装置のコントローラ、および機能もしくはタスクを実行するように電子部品を動作させるサーバー内の１つまたは複数のプロセッサを含む、さまざまなプロセッサにより実行される。設定データ（configuration data）とも呼ばれる、パラメータデータは、コンピューティング装置の設定により可能になった機能およびタスクの実行中にプログラム命令が参照するか、または別様に計算のために使用する、任意の記憶されたデータを含む。この例には、ユーザー認証データ、ディレクトリー情報、および無線アクセスポイントのリストが含まれるが、これらに限定されない。設定済みのコンピューティング装置は、記憶されたプログラム命令を実行し、このプログラム命令は、その命令の実行中に、記憶されたパラメータデータを参照することができる。
【００１６】
本明細書で使用される場合、用語「アイデンティティ」は、呼称（designation）を指し、これは、通信システムの一人または複数の登録ユーザーに割り当てられ、通信システムのメモリ内部に記憶されて、そのアイデンティティと関連付けられたユーザーへの通知メッセージおよび通信メッセージの送受信を管理するものである。例えば、アイデンティティは、ユーザー名、被雇用者のＩＤ番号、または、システムの登録ユーザーを識別する他の情報として記憶される。アイデンティティ情報は、オプションとして、例えばハードウェア特有の識別子、例えば、メディアアクセス制御（ＭＡＣ）アドレス、またはＭＥＣＤのメモリ内に記憶される暗号識別トークン（cryptographic identification tokens）で、登録ユーザーが使用するＭＥＣＤを識別する。いくつかの実施形態では、単一のＭＥＣＤが、異なる通信システムの複数のアイデンティティと関連付けられる。例えば、複数の独立した病院で働く医師は、それらの病院に関連する通信ネットワークそれぞれについて、別々のアイデンティティを割り当てられており、ＭＥＣＤの単一のメッセージングアプリケーションは、病院それぞれにおいてネットワークと通信するように設定される。その医師が、第１の病院で働くのをやめた場合、第１の病院におけるその医師のユーザーアカウントおよびアイデンティティは、停止または削除され得るが、その医師は、間断なく、第２のアイデンティティで第２の病院の通信システムを使用し続ける。
【００１７】
本明細書で使用される場合、用語「役割」は、通信システムの一人または複数の登録ユーザーに割り当てられ、通信システムのメモリ内部に記憶されて、その役割と関連付けられたユーザーアイデンティティに対する通知メッセージおよび通信メッセージの送受信を管理する、呼称を指す。例えばメッセージングシステムの管理者は、病院での業務シフト中に、登録ユーザー名のアイデンティティ「Ａ」を、「待機中の医師（ON-CALL PHYSICIAN）」の役割と関連付ける。そのアイデンティティに対して送信される通信メッセージは、ユーザーアカウント「Ａ」と関連する受信者アドレスに送信者が直接メッセージを送らなくても、ユーザーアカウント「Ａ」と関連するＭＥＣＤに宛てられる。システム管理者は、１つまたは複数のユーザーアカウントの役割を設定し、ある役割が特定のユーザーのアイデンティティとの関連から外れた場合、通信システムは、オプションとして、対応するＭＥＣＤに通知メッセージを送信し、そのＭＥＣＤは、その役割と関連する、記憶された通信メッセージおよび他のデータを削除する。
【００１８】
モバイル電子通信装置は、典型的には無線トランシーバーを含み、「無線トランシーバー」は、伝搬のために物理的ケーブルまたは接続を必要としない電磁信号を介して、情報を送受信することができる任意の装置である。一般的な例としては、無線（radio）トランシーバー、マイクロ波トランシーバー、赤外線トランシーバー、レーザートランシーバー、および光学トランシーバーが含まれる。本明細書で使用される場合、用語「無線ネットワーク」は、少なくとも１つの装置がデータを送受信するのに無線トランシーバーを用いる、データの送受信が可能な２つまたは３つ以上の電子装置の任意の構成を説明するものである。広大な地理的領域にわたりしばしば使用される無線テクノロジーの一般的な例としては、セルラーネットワーク、３Ｇ、４Ｇ、および他の無線広域ネットワーク（ＷＷＡＮ）テクノロジーが含まれる。より狭い地理的領域内で使用される無線ネットワークの他の例は、無線ローカルエリアネットワーク（ＷＬＡＮ）を含む。ＷＬＡＮテクノロジーは、「Ｗｉ−Ｆｉ」ブランドの装置、ブルートゥースを介してリンクされる装置、または光学もしくは赤外線信号伝達を用いて情報を交換する装置を含む、ＩＥＥＥ  ８０２．１１シリーズのプロトコルを用いる装置を含む。
【００１９】
「通信メッセージ」および「通知メッセージ」を含め、さまざまなタイプのメッセージが、ＷＷＡＮまたはＷＬＡＮを用いて送信され得る。本明細書で使用される場合、用語「通信メッセージ」は、別個のメッセージとしてＭＥＣＤ間で送信され得る、任意の形態のデジタルデータを指す。通信メッセージは、フォントおよび色のメタデータなどの、フォーマット化をもたらすオプションのメタデータを含むテキストメッセージ、写真、音声メッセージ、動画メッセージ、および番号ページ（numeric pages）を含むが、これらに限定されない。通信メッセージは、メッセージの送信者および受信者の識別情報（identification）、メッセージが送信および受信された時間、優先度情報、メッセージに応答する際に受信者が送信し得る１つまたは複数の所定の応答、およびメッセージが読まれたかどうかを示すステータス情報を含む、さまざまなメタデータも有し得る。いくつかの通信メッセージフォーマットは、メッセージデータおよびメタデータを所定の構造に組織化し、これには、拡張マークアップ言語（ＸＭＬ）などの構造化されたフォーマットにおいてメッセージデータおよびメタデータを識別することが含まれる。
【００２０】
通信メッセージは、通信メッセージが表示された際に所定の機能を行うために、メッセージプログラムにより解釈される、実行可能なプログラム命令または構造化データをオプションとして含み得る。例えば、通信メッセージは、応答を要求し、所定の応答リストを備えた構造化データを含む。ＭＥＣＤは、受信者に対してメッセージを表示し、受信者を促して所定の応答のうちの１つを入力させる。次に、ＭＥＣＤは、メッセージングシステムの送信者および他の当事者によりレビューされるように、メッセージングシステムに応答を送信する。
【００２１】
本明細書で使用される場合、用語「優先度が高い」通信メッセージは、メッセージングシステムが、メッセージの送信と、受信装置によるメッセージの受信との間の遅延を最小化する、通信メッセージの分類を指す。優先度が高いメッセージは、タイム・クリティカルな内容を含み、そのメッセージの価値は、受信者がメッセージを迅速に受信しない場合に大きく下がる。さらに、優先度が高いメッセージの送信者、またはメッセージングシステムの他のユーザーは、優先度が高いメッセージのステータスをモニターし、メッセージが実際にＭＥＣＤにより受信されたかどうか、および、ＭＥＣＤのユーザーがメッセージに応答したかどうか、を判定する。
【００２２】
用語「通知メッセージ」は、オンラインデータ記憶サービスに記憶された通信メッセージの存在についてＭＥＣＤに警告する、無線ネットワークを通じて受信されるメッセージを指す。ＭＥＣＤ上で実行されるメッセージングソフトウェアアプリケーションは、ＭＥＣＤが通知メッセージを受信した後で迅速に通信データを取得する。通知メッセージは、通知メッセージが、一般にはスリープ状態と呼ばれる低電力動作モードからＭＥＣＤを目覚めさせ、かつメッセージングアプリケーションの実行を再開することを可能にするネットワークプロトコルを用いて、メッセージングサービスからＭＥＣＤに送信される。メッセージングアプリケーションはその後、オンラインデータ記憶サービスから１つまたは複数の通信メッセージをダウンロードし、最小限の遅延で、少なくとも１つのメッセージを表示する。通知メッセージは、プロトコルを用いてネットワークを通じて送信された任意のメッセージを含み、これは、ＭＥＣＤにより受け取られ、最小限の遅延で通信メッセージをダウンロードおよび表示するようにＭＥＣＤにおける取得動作を誘発するソフトウェアアプリケーションに渡される。一実施形態では、ＭＥＣＤが低電力モードで動作している場合を含め、ＭＥＣＤがアクティブ化されるときはいつでも、通知アプリケーションが、バックグラウンドプロセスとして動作する。通知アプリケーションは、通知メッセージを受信し、必要ならばＭＥＣＤをスリープ状態から目覚めさせ、通信メッセージの取得および表示を開始する。別の実施形態では、オンラインメッセージングサービスが、セッション開始プロトコル（ＳＩＰ）メッセージをＭＥＣＤに送信する。ＭＥＣＤは、ＭＥＣＤが低電力モードで動作している場合であってもＳＩＰメッセージを聞くソフトウェアサービスを含む。ＳＩＰメッセージは、メッセージングアプリケーションに対応する独自の識別子を含み、リスナーサービス（listener service）は、ＳＩＰメッセージの受信に応じて、中断されたメッセージングアプリケーションの操作を再開する。
【００２３】
本明細書で互換的に使用される場合、用語「ゲートウェイ」および「ポータル」は、しばしば「バックエンド」コンピューティング装置と呼ばれるコンピューティング装置およびネットワークに動作可能に接続されるコンピューティングサーバーを指す。ゲートウェイは、バックエンドコンピューティング装置にアクセスするためにネットワークに動作可能に接続された１つまたは複数のクライアントコンピューティング装置を有効にする翻訳サービス（translation service）を提供する。ウェブゲートウェイまたはウェブポータルは、ウェブブラウザを用いてバックエンドサービスにアクセスするためにクライアントコンピューティング装置を有効にするゲートウェイの一例である。代替的なゲートウェイは、Ｅメール、シンプル・メッセージング・サービス（ＳＭＳ）、セキュア・シェル（ＳＳＨ）、テルネット、ウェブサービスなどといった、種々の通信方法を用いてクライアントを有効にして、バックエンドコンピューティング装置にアクセスする。ゲートウェイおよびポータルは、クライアントが、バックエンドコンピューティング装置を制御するためのコマンドを送信できるように、かつバックエンドコンピューティング装置からデータを受信できるように、設定され得る。
【００２４】
用語「送達受領メッセージ（delivery receipt message）」は、作動中に通信メッセージを首尾よく取得した後でＭＥＣＤから送信されるメッセージを指す。送達受領メッセージは、その送達受領メッセージを、元の通信メッセージと関連付ける識別子を含む。メッセージングシステムがＭＥＣＤから送達受領メッセージを受信すると、メッセージングシステムは、ＭＥＣＤがメッセージを首尾よく取得したことを示すステータスインジケータを、通信メッセージの送信者または管理者に対し表示することができる。一実施形態では、ＭＥＣＤは、通信メッセージを取得した後、およびＭＥＣＤのユーザーが通信メッセージに対する応答を入力する前に、自動的に送達受領メッセージを送信する。よって、送達受領メッセージは、ＭＥＣＤが通信メッセージを取得したことを示すことができるが、ＭＥＣＤのユーザーが通信メッセージ読んだこと、または通信メッセージに応答して任意の他の行動をとったこと、を示すことはできない。
【００２５】
図１は、メッセージングシステム１００を描いており、これは、ＭＥＣＤがスリープモードにある場合またはＭＥＣＤがメッセージングアプリケーションの実行を中断している場合であっても優先度が高い通信メッセージを受信するために、改善されたメッセージングアプリケーションプログラムを実行するように再設定された既存のＭＥＣＤを有効にするものである。メッセージングシステム１００は、図１のＭＥＣＤ１４０Ａ〜１４０Ｄにより例示される複数のＭＥＣＤと通信するメッセージングサービス１０４を含む。メッセージングサービス１０４およびＭＥＣＤ１４０は、通信メッセージ、通知メッセージ、および送達受領メッセージを含むデータを、インターネットまたは他のデータネットワークなどのデータネットワーク１２４を通じて、送受信する。ＭＥＣＤ１４０Ａ〜１４０Ｄは、１つまたは複数の無線ネットワーク１３６を使用するように設定される。無線ネットワーク１３６は、ＷＬＡＮおよびＷＷＡＮネットワークの双方を含む。いくつかのＭＥＣＤは、ＷＬＡＮおよびＷＷＡＮネットワーク１３６の双方にアクセスし、動作中にネットワークを動的に切り替える、無線トランシーバーを含む。
【００２６】
図１では、メッセージングサービス１０４は、メッセージ応答データベース１０８と、受信者データベース１１２と、メッセージ分配サーバー１１６と、メッセージ応答ゲートウェイ１２０と、役割およびアイデンティティデータベース１２２と、を含む。メッセージ応答データベースは、ＭＥＣＤが通信メッセージを受信した際にＭＥＣＤ１４０Ａ〜１４０Ｄから受け取った応答に対応する情報を含む。受信者データベース１１２は、メッセージングサービス１０４のユーザー、およびユーザーそれぞれに登録された少なくとも１つのＭＥＣＤに対応する登録情報を含む。受信者データベースは、登録されたＭＥＣＤのみがメッセージングシステム１００において通信メッセージを送受信できることを確実にするために、認証証明書データを含み得る。受信者データベースはまた、ＭＥＣＤへの通知メッセージの送達を可能にするために、ＭＥＣＤのネットワークアドレス、例えばインターネットプロトコル（ＩＰ）アドレスで更新され得る。メッセージングサービス１０４では、メッセージ応答データベース１０８、受信者データベース１１２、ならびにアイデンティティおよび役割データベース１２２は、例示目的で、別々のデータベースとして描かれているが、代替的な実施形態では、データベース１０８、１１２、１２２は、例えばデータ取得のために索引が付けられた１つまたは複数の表を有する単一のデータベース、１つまたは複数のコンピューティング装置上に分配された複数のデータベース、あるいは、任意の他の適切な設定へと組織化される。
【００２７】
アイデンティティおよび役割データベース１２２は、種々のアイデンティティ、およびアイデンティティと登録ユーザーに割り当てられた１つまたは複数の役割との間の関係に関する情報を含む。アイデンティティおよび役割データベース１２２内の役割は、受信者データベース１１２の、単一の受信者アドレスまたは受信者アドレス群に対応する。例えば、図１のアイデンティティおよび役割データベース１２２の実施形態は、アイデンティティに関連する認証および許可証明書、ならびに役割と、その役割に割り当てられた登録ユーザーの１つまたは複数のアイデンティティとの間の関連性を含む、登録ユーザーのアイデンティティおよび割り当てられた役割についての、機械読み取り可能かつ人間読み取り可能な情報を含む。人間読み取り可能な役割識別データは、システム１００の使用中に人間ユーザーがアイデンティティを識別することを可能にする、例えば、「待機中の医師」などのテキスト文字列、または図示記号などの他のデータを含む。認証および許可証明書は、例えば、公開鍵および秘密鍵、パスワード、または他の証明書データを含み、これらは、通知メッセージを受信し、オンラインデータ記憶サービス１２８から通信メッセージを取得し、割り当てられた役割に送信された通信メッセージのための応答メッセージを送信するためにアイデンティティに割り当てられたユーザーのＭＥＣＤを有効にする。作動中、いくつかの通信メッセージは、システム１００におけるユーザーのＭＥＣＤと直接関連するアドレスに送信されるのではなく、役割に対応する受信者アドレスに送信される。メッセージングサービス１０４は、役割に割り当てられたアイデンティティに対応する受信者データベース１１２中の一人または複数の受信者を識別するために、アイデンティティおよび役割データベース１２２を用いて役割に送信される通信について受信者を識別する。
【００２８】
メッセージングサービス１０４では、メッセージ分配サービス１１６は、ＭＥＣＤ１４０Ａ〜１４０Ｄから、また管理用端末１３２を通じてメッセージングサービス１０４の管理者もしくは他のユーザーから、入ってくる通信メッセージを受信する。図１では、ＭＥＣＤ１４０Ｄは、メッセージングシステム１００を使用して他のＭＥＣＤのための新しいメッセージを作るためにメッセージングアプリケーションを実行しているのが描かれており、メッセージング端末１３２は、ＭＥＣＤ１４０Ａ〜１４０Ｄのためのメッセージを作るためにメッセージングソフトウェアを実行することもできる。メッセージ分配サーバー１１６は、通信メッセージを受信し、受信者に対応するＭＥＣＤのネットワークアドレスを識別し、通信メッセージをオンラインデータ記憶サービス１２８に記憶させる。メッセージ分配サーバー１１６は、メッセージ受信者のＭＥＣＤそれぞれに通知メッセージを送信し、新しい通信メッセージの存在についてＭＥＣＤに警告する。ＭＥＣＤは、通知メッセージの受信に応じて送達受領メッセージをメッセージ分配サーバー１１６に送信することができ、メッセージ分配サーバーは、送達受領メッセージをメッセージ応答データベース１０８に記憶させる。
【００２９】
メッセージングサービス１０４は、データネットワーク１２４を通じてオンラインデータ記憶サービス１２８に通信可能に接続される。メッセージ分配サーバー１１６は、各通信メッセージの受信者に関連して、通信メッセージをオンライン記憶サービス１２８に記憶させる。メッセージングシステム１００は、別個のオンライン記憶サービス１２８を含むが、別の実施形態は、メッセージングサービス１０４に統合されたメッセージ記憶システムを含む。
【００３０】
例示的な一実施形態では、データ記憶サービス１２８は、Amazon Simple Queue Serviceなどのオンラインメッセージキューサービスである。オンラインデータ記憶サービス１２８は、１つまたは複数のＭＥＣＤからの、通信メッセージを含むデータの要求に応じるように設定される。メッセージングシステム１００では、登録ユーザーそれぞれが、各ユーザーに送信された通信メッセージの取得のために、オンライン記憶サービス１２８に個人アカウントを有する。いったん通信メッセージがメッセージキューから首尾よく取得されたら、ＭＥＣＤは、取得したメッセージを削除するよう、オンラインデータ記憶サービス１２８に要求を送る。メッセージングシステム１００では、メッセージングサービス１０４は、通信メッセージが取得されたかどうかを識別するために、各登録ユーザーのキュー内のメッセージ数をモニターすることができる。オンラインデータ記憶サービス１２８のさまざまな代替的な実施形態は、電子メールサーバー、インスタント・メッセージ・サーバー、通信メッセージデータを記憶するウェブサーバー、またはメッセージングサービス１０４がＭＥＣＤ１４０Ａ〜１４０Ｄによる取得のためにメッセージデータを記憶できるようにする任意の他のデータ記憶サービスを含む。
【００３１】
メッセージ応答ゲートウェイ１２０は、ＭＥＣＤが通信メッセージを取得した後でＭＥＣＤ１４０Ａ〜１４０Ｄから応答を受信するように、また、通信メッセージの送信者およびメッセージングシステム１００の他のユーザーが通信メッセージへの応答をレビューするためのインターフェースを提供するように、設定される。一実施形態では、メッセージ応答ゲートウェイ１２０は、エクステンシブル・メッセージング・アンド・プレゼンス・プロトコル（Extensible Messaging and Presence Protocol）（ＸＭＰＰ）などの構造化メッセージングプロトコルを用いてＭＥＣＤ１４０Ａ〜１４０Ｄから応答メッセージを受信するサーバーを含む。メッセージ応答ゲートウェイ１２０は、応答と関連付けられる元の通信メッセージに関連して、メッセージ応答データベース１０８に応答データを記憶させる。メッセージ応答ゲートウェイ１２０はまた、メッセージ応答データベース１０８に記憶された通信メッセージへの応答のステータスをレビューするために、ＭＥＣＤ１４０Ａ〜１４０Ｄおよび管理用端末１３２を有効にするウェブサーバーインターフェースを提供することができる。以下でさらに詳細に説明するように、送信者またはメッセージングシステム１００の他のユーザーは、通信メッセージに対する応答をレビューするか、ＭＥＣＤのユーザーがメッセージを受信しているがそのメッセージに応答していないかどうかを判定するか、または、ＭＥＣＤが通信メッセージを受信することができなかった可能性があるかどうかを判定することができる。
【００３２】
メッセージングサービス１０４は、１つまたは複数のサーバーコンピューティング装置を用いて実装され得る。例示的な１つの設定は、プログラム命令データを記憶するための複数の処理コア、揮発性ＲＡＭメモリおよび不揮発性記憶装置と、メッセージ応答データベース１０８および受信者データベース１１２にデータを記憶させるレイド（redundant array of independent disks）（ＲＡＩＤ）と、メッセージ分配サーバー１１６およびメッセージ応答ゲートウェイ１２０がオンラインデータ記憶サービス１２８、管理用端末１３２、およびＭＥＣＤ１４０Ａ〜１４０Ｂと通信できるようにする１つまたは複数のハードウェアネットワークインターフェース装置と、を含む、サーバーを含む。メッセージ応答データベース１０８、受信者データベース１１２、およびアイデンティティデータベース１２２は、構造化照会言語（ＳＱＬ）データベース、階層的データベース、キーバリューストア、またはメッセージ応答およびメッセージ受信者情報へのアクセスを提供する任意の他の構造化データ記憶構成を用いて、実装され得る。メッセージ分配サーバー１１６およびメッセージ応答ゲートウェイ１２０は、メッセージングサービス１０４の１つまたは複数のコンピューターで実行されるソフトウェアの別々の部品として実装されてよく、あるいは、単一のコンピューター上で実行される単一のソフトウェアプログラムは、メッセージ分配サーバー１１６およびメッセージ応答ゲートウェイ１２０双方の機能性を実装することができる。
【００３３】
図１のＭＥＣＤは、種々の製造業者からのさまざまな異なる装置フォームファクターを含み、また、種々のタイプのシステムソフトウェアを含む。例えば、ＭＥＣＤ１４０Ａは、タブレット型コンピューターであり、ＭＥＣＤ１４０Ｂ〜１４０Ｄは、異なるモバイルオペレーティングシステムを動作させ得る、異なる製造業者からのスマートフォンである。ＭＥＣＤ１４０Ａ〜１４０Ｄはそれぞれ、ＭＥＣＤが通知メッセージを受信し、優先度が高い通信メッセージを取得できるようにするメッセージングソフトウェアアプリケーションを実行するように設定される。メッセージングシステム１００が、優先度が高いメッセージを送信すると、ＭＥＣＤ１４０は、広範なモードで動作することができる。例えば、ＭＥＣＤ１４０Ａは、フォアグラウンドでアプリケーションプログラムを実行していて、メッセージングアプリケーションは中断され、ＭＥＣＤ１４０Ｂは、バッテリー電力を節約するためにスリープモードにあり、ＭＥＣＤ１４０Ｃは、新しいメッセージを確認するためにオンラインデータ記憶サービス１２８にポーリングしており、ＭＥＣＤ１４０Ｄは、新しい通信メッセージを作るために使用されている。以下でさらに詳細に説明するように、ＭＥＣＤ１４０Ａ〜１４０Ｄは、ＭＥＣＤが低電力スリープモードにあるか、またはメッセージングアプリケーションが中断している場合であっても、メッセージングアプリケーションをアクティブ化して通信メッセージを迅速に取得するために、メッセージングシステム１００と共に使用されるように再設定される。
【００３４】
例示的な先行技術のＭＥＣＤ２００の概略的ブロック図が図２に描かれている。ＭＥＣＤ２００は、いくつかのスマートフォン、ＰＤＡ、タブレットなどのいずれかで一般的に使用される構成要素を含む。以下でさらに詳細に説明するように、先行技術のＭＥＣＤ２００は、オンラインのメッセージングサービス１００を用いて、待ち時間を減らして優先度が高いメッセージを受信することができるように、この文書で説明したように再設定され得る。ＭＥＣＤの構成要素は、ハウジング２０２内に保持されており、このハウジング２０２は、動作中に片手または両手で保持される、典型的には軽量のハウジングである。ＭＥＣＤ２００の構成要素は、作動中に電力を消費し、バッテリー２６０から電力を受け取る。バッテリー２６０は、典型的には、リチウムイオンバッテリーまたは他の市販のバッテリーであるが、燃料電池、またはＭＥＣＤ２００と共に使用するのに適した任意の他のエネルギー貯蔵装置であってもよい。
【００３５】
コントローラ２０４が、ディスプレイ２０８、１つまたは複数の入力装置２１２、１つまたは複数の無線トランシーバー２１６、データを読み書きするための入力／出力（Ｉ／Ｏ）インターフェース２２８、スピーカー２５２、ヘッドホンジャック２４８、および振動機構２４４に通信可能に接続される。ディスプレイ２０８は、典型的には、ハンドヘルドのモバイル電子通信装置内に収容されるのに十分小さいスクリーンであり、一般的な例は、液晶ディスプレイ（ＬＣＤ）または有機発光ダイオード（ＯＬＥＤ）パネルを用いている。ディスプレイ２０８は、テキストおよびグラフィックをカラーおよびモノクロで出力し、装置周囲の周辺光が少ないかまたは全くない場合にディスプレイの内容を見ることができるように、光を発するよう設定され得る。ディスプレイ２０８は、コントローラ２０４により生成された信号に応じて、テキストまたはグラフィックデータを出力する。
【００３６】
ＭＥＣＤ２００内部の少なくとも１つの入力装置２１２は、ユーザーがコントローラ２０４と通信し、またコントローラ２０４にコマンドを送ることを可能にする。一実施形態では、入力装置２１２は、ディスプレイ２０８と一体化されたタッチスクリーンセンサーを含む。ＭＥＣＤは、ディスプレイ２０８上に、ボタン、仮想キー、および他の入力グラフィックなどの入力制御手段を提示しており、ユーザーは、ディスプレイ２０８の表面に触れて、タッチスクリーン入力装置を通じてデータを入力し、かつ機能を選択する。入力装置２１２はまた、数字キーパッドまたはＱＷＥＲＴＹ配列のキーボードなどの、物理的キー入力装置を含み得る。他の入力装置は、タッチパッド、ジョイスティック装置、およびトラックボールを含む。さらに別の入力装置は、カメラを使用して、ジェスチャーおよび他の視覚的情報を入力として記録する。口頭のコマンドを記録するためのマイクロホンを含む、聴覚的入力装置も使用され得る。任意の互換性のある入力装置が、コントローラ２０４により解読されることのできる電子形式で、入力データをエンコードする。さまざまなカスタマイゼーション設定により、ＭＥＣＤ２００のユーザーは、ディスプレイ２０８に示されるメッセージの外観を変化させ、また、ＭＥＣＤ２００の動作をカスタマイズすることができる。このようなカスタマイゼーションは、ディスプレイ２０８に示される通信メッセージのフォントの色およびサイズを変えること、グラフィックディスプレイのさまざまな要素のテーマを選択すること、ならびに、代替的な警告音を選択すること、を含む。
【００３７】
コントローラ２０４は、無線トランシーバー２１６にも接続され、無線トランシーバー２１６は、１つまたは複数の無線信号プロトコルおよびデータネットワークを用いてデータを送受信することができる。無線トランシーバー２１６は、コントローラ２０４が、異なる無線ネットワークを通じてデータを送受信し、無線ネットワークのうちの１つに接続された別の装置またはサーバーから送信されたコマンドメッセージを受信することを可能にする。
【００３８】
さまざまな実施形態では、ＭＥＣＤは、２つまたは３つ以上の無線トランシーバーモジュールを含んでよく、各モジュールは、別個の通信プロトコルを使用するように設定される。これらのプロトコルは、異なる動作周波数および変調方式を使用し得る。無線トランシーバー２１６は、ＩＥＥＥ８０２．１１ファミリーのプロトコルを採用するＷＬＡＮネットワークと通信する１つのトランシーバーモジュール２１８と、３Ｇもしくは４Ｇネットワークなど、ＷＷＡＮネットワークと通信する別のトランシーバーモジュール２２０と、を含む。３Ｇデータネットワークの例にはＥｖＤＯおよびＵＭＴＳが含まれ、４Ｇデータネットワークの例にはＬＴＥおよびＷｉＭＡＸが含まれる。ＷＬＡＮまたはＷＷＡＮのいずれかとの接続を確立したら、ネットワーク内のコンピューターは、コントローラにネットワークアドレスを割り当て、このネットワークアドレスは、典型的には、ＩＰ標準のバージョン４（ＩＰｖ４）またはバージョン６（ＩＰｖ６）いずれかで生成されたインターネットプロトコル（ＩＰ）アドレスである。無線トランシーバー２１６の代替的な実施形態は、ソフトウェア無線システムを使用して、単一の物理的トランシーバーが、異なる信号プロトコルを用いて異なる周波数帯で動作することを可能にする。例えば、トランシーバー内のプロセッサでソフトウェアを実行している単一の物理的トランシーバーは、コントローラ２０４から送られたコマンドに応じて、８０２．１１モードまたはＷＷＡＮモードで動作を切り替えることができる。無線トランシーバー２１６は、アンテナ２２４に電気的に接続される。ＭＥＣＤ２００内の空間を節約するために、単一のアンテナ２２４が、８０２．１１トランシーバー２１８およびＷＷＡＮトランシーバー１２０の双方と互換性があるように設定され得る。しかしながら、代替的な装置は、１つまたは複数のトランシーバーと共に使用されるように構成された複数のアンテナを採用する。アンテナ２２４は、電磁スペクトルの赤外線または光学部分で動作する代替的なトランシーバー用の発光素子およびレンズに置きかえられることができる。
【００３９】
引き続き図２を参照すると、コントローラ２０４は、データ入力−出力（ＩＯ）インターフェース２２８に通信可能に連結される。ＭＥＣＤ２００では、Ｉ／Ｏインターフェース２２８は、コントローラ２０４をランダムアクセスメモリ（ＲＡＭ）２３２、動作ソフトウェアを保持するデータ記憶装置２３６、メッセージおよびユーザーデータを保持するデジタル記憶装置２４０に動作可能に接続する、共通の電子バスである。代替的なＩ／Ｏインターフェースは、コントローラ２０４と１つまたは複数のメモリおよび記憶装置との間の通信を促進するために、２地点間またはスイッチ型Ｉ／Ｏスキームを含む。ＲＡＭ２３２は、通常の動作中にコントローラ２０４により使用されるコマンド命令および動作データを保持する。ＲＡＭ２３２は、典型的には揮発性であり、これは、電力が装置から無くなった場合、ＲＡＭ内に保持されるデータの内容が消去されることを意味する。システム記憶装置２３６は、ＭＥＣＤ２００のさまざまな動作を実行するのに使用される命令を受信するためにコントローラ２０４が読み取る、１つまたは複数のプログラムのための記憶された機械読み取り可能な命令を保持している。いくつかの実施形態では、システム記憶装置２３６は、無線トランシーバー２１６を含む他のシステム構成要素を設定するのに使用される動作命令も保持する。システム記憶装置２３６は、典型的には、ＮＡＮＤまたはＮＯＲフラッシュデバイスなどの不揮発性記憶装置に記憶されて、電力がＭＥＣＤ２００から取り除かれた後で、システム記憶装置２３６に保持される命令コードが再び読み取られることを可能にする。システム記憶装置２３６のデータ内容は、通常の動作中に変更されないと考えられているので、「ファームウェア」と呼ばれてよいが、定期的に更新されて、ＭＥＣＤ２００で使用される動作コマンドに対する更新が可能となり得る。
【００４０】
データ記憶装置２４０は、送受信された通信メッセージ、およびＭＥＣＤ２００が使用する他のユーザー情報を記憶する。ユーザー情報は、図２の実施形態ではＸＭＬデータ記録形式で記憶されるユーザーのカスタマイゼーション設定を含む。データ記憶装置２４０は、先に受信した通信メッセージを、無線ネットワークを通じて再伝送する必要なしに、それらにアクセスすることを可能にする。システム記憶装置２３６と同様、データ記憶装置２４０は、典型的には、ユーザーデータの長期保持のための不揮発性装置である。しかしながら、データ記憶装置２４０は、ＭＥＣＤ２００の通常の使用中に、記憶されたデータをコントローラ２０４で読み取り、書き込み、かつ消去するように設定される。データ記憶装置２４０およびシステム記憶装置２３６は、オプションとして、単一の物理的装置の論理的に分離したエリアに置かれる。
【００４１】
コントローラ２０４は、オプションとして、１つまたは複数の音声、視覚、または振動インジケータ装置に接続される。これらの装置は、音を発し、振動を生じ、視覚的キューを提供して、装置の状態についてフィードバックをユーザーに与える。内蔵式スピーカー２５２およびヘッドホン出力部２４８を含む音声出力装置は、新しいメッセージを受信した際に可聴警報を与えることができ、また、音声メッセージを再生するように設定され得る。音声出力装置は、コントローラ２０４が送信する制御信号に応じて変更され得る、調節可能な音量レベルを有する。振動機構２４４は、一部の設定で鳴り響く可聴警報に加えて、またはその代わりに、振動する。一般的な振動機構は、小さい電気モーターを使用しており、回転する心棒は、その心棒の回転軸の中心を外れてシフトした重りに接続される。また、１つまたは複数のインジケータライト２５６が、装置の状態を通信し、通信メッセージの到着を示すパターンで、作動または点滅することもできる。異なる色を有する複数のライトが、さらなる情報を提供するために使用されることもできる。例えば、赤色のライトは、優先度が高いメッセージの受信を示すことができ、緑色のライトは、優先度の低いメッセージが受信されたことを示すことができる。
【００４２】
図２は、ＭＥＣＤの機能的構成要素を描いているが、さまざまな代替的なＭＥＣＤ設定が、無線データネットワークを通じて優先度が高いメッセージを送受信するために使用され得る。コントローラ２０４、無線トランシーバー２１６、ＲＡＭ２３２、システム記憶装置２３６、およびデータ記憶装置２４０を含む、ＭＥＣＤの構成要素のうちのいくつかが、システム・オン・チップ（ＳｏＣ）装置に統合される。
【００４３】
図３Ａは、フォアグラウンドソフトウェアアプリケーションがアクティブ化した際に、図２のＭＥＣＤ２００などのＭＥＣＤのプロセッサによるソフトウェアの実行により生じる、ＭＥＣＤ動作の表示である。図３Ａは、オペレーティング・システム（ＯＳ）３０４、ネットワーク・リスナー・サービス３０８、フォアグラウンドアプリケーション３１２、中断したメッセージング・バックグラウンド・アプリケーション３１６、およびオプションの、中断したバックグラウンドアプリケーション３２０を描いている。オペレーティング・システム（ＯＳ）層３０４は、アプリケーション・レベル・プログラムの実行を監視し、装置のドライバを通じてＭＥＣＤ２００のさまざまなハードウェア構成要素にソフトウェアインターフェースを提供する。コントローラ２０４およびＭＥＣＤ２００の他のハードウェア構成要素は、オペレーティング・システム３０４のソフトウェア命令に応じた動作を行う。例えば、オペレーティング・システムは、無線トランシーバー２１６でのデータパケットの送受信を制御するためにハードウェアとソフトウェアとの組み合わせを用いてネットワーク・スタックを実装する。ネットワーク・スタックの一例は、あるバージョンのインターネットプロトコル（ＩＰ）および伝送制御プロトコル（ＴＣＰ）またはユーザーデータグラムプロトコル（ＵＤＰ）を実装する。ネットワーク・スタックは、ＭＥＣＤが、ＳＩＰメッセージ、およびＭＥＣＤにより使用される他のプロトコルに対応するデータパケットを処理するのを可能にする。ソフトウェア無線を実装するいくつかのＭＥＣＤ装置では、オペレーティング・システム層３０４はまた、コントローラ２０４により実行されるソフトウェア命令として、無線トランシーバー２１６の機能性のいくつかを実装している。ＯＳ３０４は、ＭＥＣＤ上で実行される他のソフトウェアアプリケーションの機能を制御し、それらのアプリケーションとＭＥＣＤ内のハードウェアとの間の仲介物として作用して、ＭＥＣＤの信頼性のある保証された動作を確実にする。既存のＭＥＣＤ装置で使用されるオペレーティング・システムの例は、リナックス（Linux）およびリナックスの派生物、例えばアンドロイド（Android）、アップルｉＯＳ（Apple iOS）、マイクロソフト・ウィンドウズの携帯型変形体（mobile variants）、およびＭＥＣＤ上で使用されるのに適した任意の他のオペレーティング・システムを含む。
【００４４】
ネットワーク・リスナー・サービス３０８は、デーモンと呼ばれることもある、バックグラウンドサービスであり、無線データネットワークにＭＥＣＤがアクセスしたことに応じてＭＥＣＤ２００がアクティブ化した際に実行される。いくつかの実施形態では、ネットワーク・リスナー・サービス３０８は、ＯＳ３０４の一部として実装されるが、他の実施形態では、オペレーティング・システム３０４は、ＭＥＣＤがアクティブ化されると自動的にネットワーク・リスナー・サービス３０８を実行する。ＭＥＣＤ２００では、ネットワーク・リスナー・サービス３０８は、無線トランシーバー２１６で受信された、入ってくるメッセージ中のＳＩＰメッセージを聞く。本明細書で使用される場合、用語「聞く（listen）」は、ソフトウェアアプリケーションに対して使用された場合、そのソフトウェアアプリケーションが、所定のパラメータを含むＳＩＰメッセージを形成する１つまたは複数のネットワークパケットを有するメッセージを識別するまで、入ってくるデータパケットを処理することを意味する。例えば、ネットワーク・リスナー・サービス３０８は、ＴＣＰのＳＩＰメッセージ用のポート５０６０およびＵＤＰのＳＩＰメッセージ用のポート５０６１など、ＳＩＰプロトコルに対応するポート番号を使用して、ＯＳ３０４のネットワーク・スタックと共にネットワークソケットを開き、中断したメッセージング・バックグラウンド・アプリケーション３１６に対応するＳＩＰ招待メッセージを識別することができる。
【００４５】
フォアグラウンドアプリケーション３１２は、ＭＥＣＤのユーザーがＭＥＣＤの１つまたは複数の入力および出力装置を通じて手動で実行し制御する、ソフトウェアアプリケーションである。フォアグラウンドアプリケーションは、ウェブブラウザ、メディアアプリケーション、通信アプリケーション、ゲーム、地図作成およびナビゲーションアプリケーション、ユーティリティーなどを含む、ＭＥＣＤで実行される広範なソフトウェアプログラムのうちの任意のものであってよい。ＭＥＣＤのユーザーは、フォアグラウンドアプリケーション３１２と直接相互作用し、フォアグラウンドアプリケーション３１２は、典型的には、視覚的または可聴出力を生成する。フォアグラウンドアプリケーション３１２は、ＯＳ３０４を通じて提供されるサービスと相互作用する動作を実行する。例えば、フォアグラウンドアプリケーション３１２は、ＯＳ３０４により提供されるソフトウェアインターフェースにアクセスすることによって、メモリからデータを読み書きし、不揮発性データ記憶装置にファイルし、グラフィックを表示し、また、無線トランシーバーを用いてデータを送受信する。
【００４６】
フォアグラウンドアプリケーションを実行する間、１つまたは複数のバックグラウンド・ソフトウェア・アプリケーション３２０は中断される。中断したアプリケーションに対応するプログラムデータは、依然としてＭＥＣＤのメモリに記憶されているが、ＯＳ３０４は、中断したアプリケーションがＭＥＣＤの相当量のリソースを使用してフォアグラウンドアプリケーション３１２の実行に便宜を図るのを防ぐ。ＭＥＣＤのユーザーは、実行中のアプリケーションを手動で切り替え、中断したアプリケーションを３２０のうちの１つは、フォアグラウンドアプリケーション３１２となり得、先のフォアグラウンドアプリケーション３１２は中断される。
【００４７】
図３Ａでは、中断したバックグラウンドアプリケーションのうちの１つは、メッセージングアプリケーション３１６である。メッセージングアプリケーション３１６は、メッセージングサービス１０４に対応する、入ってくるＳＩＰメッセージのパラメータと関連して、ネットワーク・リスナー・サービス３０８に登録される。例えば、各ＳＩＰメッセージのヘッダーは、ＳＩＰメッセージの送信者に対応する、統一資源識別子（ＵＲＩ）文字列を含む。メッセージングアプリケーション３１６は、ＵＲＩを、ネットワーク・リスナー・サービス３０８に登録し、ネットワーク・リスナー・サービス３０８が、対応するＵＲＩを含むＳＩＰメッセージを受信すると、ネットワーク・リスナー・サービス３０８は、別のアプリケーション３１２がフォアグラウンドにあっても、メッセージングアプリケーション３１６の動作を再開する。
【００４８】
図３Ｂは、ＭＥＣＤが低電力「スリープ」モードで動作している場合に、図２のＭＥＣＤ２００などのＭＥＣＤ上で実行されるソフトウェアの表示である。低電力モードでは、オペレーティング・システム３０４は、コントローラ２０４およびディスプレイ２０８のＧＰＵなど、ＭＥＣＤのさまざまな構成要素を非アクティブ化し、コントローラ２０４および無線トランシーバー２１６のＣＰＵなど、他の構成要素を、低い電力のモードで作動させる。オペレーティング・システム３０４は、実行し続けるが、ＭＥＣＤが電力使用量を減らす低電力モードである場合、いくつかの動作をオプションとして中断することができる。ネットワーク・リスナー・サービス３０８は、無線トランシーバー２１６を通じて受信される、入ってくるＳＩＰメッセージを聞くように動作し続ける。
【００４９】
無線トランシーバー２１６が無線ネットワークを通じてＳＩＰメッセージを受信すると、ネットワーク・リスナー・サービス３０８は、ＳＩＰメッセージがメッセージングアプリケーション３１６に対応しているかどうかを識別する。無線トランシーバー２１６は、さまざまなプロトコルに対応する複数のデータメッセージを受信でき、メッセージングアプリケーション用に意図されていないＳＩＰメッセージも受信することができる。ネットワーク・リスナー・サービス３０８がＳＩＰメッセージを、メッセージングアプリケーション３１６に宛てられたものであるとして識別すると、ネットワーク・リスナー・サービス３０８は、ＭＥＣＤをスリープ状態から目覚めさせるように、ＯＳ３０４への要求を生成する。ＯＳ３０４は、ＭＥＣＤをスリープ状態から目覚めさせ、メッセージングアプリケーション３１６がそれまで中断されていた場合はメッセージングアプリケーション３１６をアクティブ化させる。その後、メッセージングアプリケーション３１６は、１つまたは複数の通信メッセージをダウンロードし、ＭＥＣＤは、メッセージを表示し、また、新しいメッセージについてユーザーに警告する。
【００５０】
図３Ａおよび図３Ｂは、ＭＥＣＤの２つの動作モードを描いているが、いくつかのＭＥＣＤの実施形態は、電力の消費量を制御するために複数の動作モードを含む。例えば、代替的な１つの設定では、ＭＥＣＤは、図３Ｂのスリープモードから中間動作モードへ戻り、メッセージングアプリケーション３１６をアクティブ化して、通信メッセージを取得する。ＭＥＣＤの出力装置は、ＭＥＣＤが可聴警報を生成し、ユーザーがメッセージを見るためにディスプレイを手動でアクティブ化するまで、アクティブ化されない。
【００５１】
図４は、メッセージングサービスから優先度が高いメッセージを受信すると共に、バッテリー寿命を改善するために低電力モードで動作するように、ＭＥＣＤ１４０Ａ〜１４０Ｄのうちの１つなどのＭＥＣＤを動作させるプロセス４００を描いている。以下の議論では、機能または動作を実行するプロセスへの言及は、ＭＥＣＤ２００のコントローラ２０４などのコントローラを参照し、このコントローラは、メモリに記憶されたプログラム命令を実行して、その機能または動作を実行するように１つまたは複数の構成要素を操作するものである。プロセス４００は、例示目的で、図１のメッセージングシステム１００および図２のＭＥＣＤ２００を参照して説明する。
【００５２】
ＭＥＣＤで実行されているメッセージングアプリケーションが新しい通信メッセージについてオンラインデータ記憶サービスにポーリングすると（ブロック４０４）、プロセス４００が始まる。ＭＥＣＤ２００では、メッセージングアプリケーションは、コントローラ２０４がメッセージングアプリケーションの実行を開始すると、新しいメッセージについてポーリングするように設定される。メッセージングアプリケーションは、ＭＥＣＤ２００がアクティブ化されるか、切断された後で無線データネットワークに接続されると、ＭＥＣＤ２００に宛てられたメッセージについてポーリングする。新しいメッセージが利用可能である場合（ブロック４０８）、ＭＥＣＤ２００は、次に、オンラインデータ記憶サービスからそのメッセージを取得する（ブロック４１２）。図１の実施例では、ＭＥＣＤは、適切なプロトコルを使用して、オンラインデータ記憶サービス１２８から通信データをダウンロードする。ＭＥＣＤは、オプションとして、首尾よくメッセージを取得した後で通信メッセージを削除するために、オンラインデータ記憶サービス１２８に削除メッセージを送ることができる。ＭＥＣＤ２００とオンラインデータ記憶サービス１２８との間の通信チャネル、ならびに通信メッセージの内容のいずれかまたは双方が暗号化されて、通信メッセージの内容の傍受を防ぐことができる。
【００５３】
いったん通信メッセージが取得されると、ＭＥＣＤは、１つまたは複数の送達受領メッセージをメッセージングサービスに送り、ＭＥＣＤが通信メッセージを取得したことを確認する（ブロック４１４）。ＭＥＣＤは、通信メッセージが首尾よく取得されると、自動的に、メッセージングサービス１０４のメッセージ分配サーバー１１６に送達受領メッセージを送信する。送達受領メッセージは、ＭＥＣＤが通信メッセージを首尾よくダウンロードしたことを示すために送信されるが、ＭＥＣＤのユーザーがそのメッセージをの受け取りを確認し、それに応答したことは、必ずしも示さない。
【００５４】
送達受領メッセージは、取得した通信メッセージに対応する識別子を含む。例えば、各通信メッセージは、メッセージングサービス１０４が送達受領メッセージを通信メッセージと関連付けることができるように、送達受領メッセージにコピーされた独自の識別子番号を含み得る。別の設定では、メッセージングサービス１０４および受信者のＭＥＣＤは双方、通信メッセージの内容に対応する数字のハッシュ値を生成する。メッセージングサービス１０４は、そのハッシュ値をメッセージ応答データベース１０８に記憶し、送達受領メッセージは、ＭＥＣＤに通信メッセージが首尾よく送達されたことを示すよう、同じハッシュ値を含む。１つの設定では、ＭＥＣＤは、送達された通信メッセージそれぞれについて、送達応答メッセージを生成および送信する。別の設定では、ＭＥＣＤは、複数の通信メッセージのための識別子を含む単一の送達受領メッセージを送信する。ＭＥＣＤが短期間でオンライン記憶サービス１２８から複数の通信メッセージを取得した場合、単一の送達受領メッセージは、それらの通信メッセージそれぞれのための識別子を含み得る。
【００５５】
ＭＥＣＤは、各メッセージに割り当てられた優先度を参照して、取得した通信メッセージのうちの１つまたは複数を表示する（ブロック４１６）。各通信メッセージのメタデータは、割り当てられた優先値を含み、これは、通信メッセージの重要性を示す、テキスト値、数値、または任意の他の値であってよい。例えば、メッセージは、「低い」、「通常の」、「高い」優先度を有することができる。ＭＥＣＤのメッセージングアプリケーションは、優先度レベルに基づいてメッセージの表示を制御する。１つの設定は、ユーザーがメッセージングアプリケーションを手動で選択し、メッセージを見る場合に、メッセージリストの一部として、優先度の低いメッセージを表示する。ＭＥＣＤは、通常の優先度のメッセージを受信したことに応じて、通知を表示するか、または単一の可聴警報を生成して、新しいメッセージの存在についてユーザーに警告する。ユーザーは次に、ＭＥＣＤアプリケーションをアクティブ化し、そのメッセージを見る。優先度が高いもの（high priority）をＭＥＣＤが受信すると、メッセージを受信したときにユーザーが異なるフォアグラウンドアプリケーションを使用していても、ＭＥＣＤは、すぐにメッセージングアプリケーションをアクティブ化し、優先度が高いメッセージを表示する。さらに、ＭＥＣＤは、ユーザーに優先度が高いメッセージについて警告するために可聴および振動の警告を連続して作動させることができる。
【００５６】
プロセス４００では、ＭＥＣＤが、優先度レベルの異なる複数のメッセージをダウンロードすると、メッセージングアプリケーションは、メッセージの優先度に基づいて出力を選択する。例えば、メッセージングアプリケーションが、優先度の低い２つのメッセージをダウンロードし、その後、優先度が高いメッセージをダウンロードした場合、優先度が高いメッセージに対する応答をユーザーが入力するまで、優先度が高いメッセージの表示が、優先度の低いメッセージの表示に優先する。
【００５７】
通信メッセージの取得後、ＭＥＣＤは、応答メッセージをメッセージングサービスに送る（ブロック４２０）。メッセージングシステム１００では、オンラインデータ記憶サービス１２８から通信メッセージを取得したＭＥＣＤ１４０Ａ〜１４０Ｄが、応答メッセージをメッセージングサービス１０４に送る。応答メッセージは、元の通信メッセージの内容に基づいて、異なる応答データを含み得る。例えば、応答メッセージは、単に、ＭＥＣＤが通信メッセージを取得したこと、およびＭＥＣＤのユーザーがメッセージの受信を確認するために、画面上のボタンを押すか、または何らかの他の行動をとったこと、を確認することができる。他の通信メッセージは、通信メッセージ中において、ユーザーに、質問、例えばイエスかノーで答えさせる質問、または質問に対する多肢選択の回答（multiple-choice responses to questions）を提示する。応答メッセージは、ユーザーが質問に対して入力する回答を含む。メッセージングサービス１０４は、元の通信メッセージに関連して、応答メッセージを応答メッセージデータベース１０８に記憶させる。メッセージングサービスの管理者、および通信メッセージを送信した当事者は、メッセージ応答ゲートウェイ１２０を通じて、メッセージの受信者からの応答をレビューする。
【００５８】
プロセス４００では、ＭＥＣＤは、オンラインデータ記憶サービスにポーリングすることができるが、新しい通信メッセージは受信しない（ブロック４０８）。メッセージングアプリケーションは、メッセージが存在しない場合は、メッセージングサービスの次のポーリングを遅らせる。ＭＥＣＤは、ポーリングの回数が所定のリトライ閾値未満である間は、間隔を広げてポーリングを続ける（ブロック４２４）。その後の各ポーリングでは、メッセージングアプリケーションは、新しいメッセージについてオンラインデータ記憶サービスにポーリングする前に、遅延を増やし、待機する（ブロック４２８）。例えば、１つの設定では、メッセージングアプリケーションは、利用可能な新しい通信メッセージがない場合に、オンラインデータ記憶サービス１２８にポーリングする前に１５秒間待機する。２回目のポーリング要求後に利用可能な新しい通信メッセージがない場合、遅延は３０秒まで増大する。遅延は、ブロック４２４のリトライ閾値を超えるまで、後続の各ポーリング要求の間で倍加する。
【００５９】
いったんリトライ閾値を超えたら（ブロック４２４）、メッセージングアプリケーションは、オンラインデータ記憶サービスのポーリングを中断する（ブロック４２８）。オンラインメッセージングサービスのポーリングは、ＣＰＵリソースおよび無線トランシーバーの双方を使用するので、メッセージングアプリケーションは、ＭＥＣＤの電力消費量を減らすために、ポーリングプロセスを中断する。ＭＥＣＤのＯＳはまた、ユーザーが他のフォアグラウンドアプリケーションを実行する間、メッセージングアプリケーションを中断するか、またはスリープモードに入って電力消費量をさらに減らすこともできる。
【００６０】
図３Ａおよび図３Ｂに描かれるように、ネットワーク・リスナー・サービス３０８は、新しい通信メッセージがオンラインデータ記憶サービス１２８において利用可能であることを示す、ＳＩＰ招待メッセージなど、入ってくる通知メッセージを、メッセージングサービス１０４から聞き続ける。プロセス４００において、ＭＥＣＤは、ネットワーク・リスナー・サービスが適切なＳＩＰメッセージを受信するまで（ブロック４４０）、メッセージングアプリケーションのポーリング作業を中断し、入ってくるＳＩＰメッセージを聞く（ブロック４３６）。いったん通知メッセージが受信されたら、ＭＥＣＤのＯＳは、メッセージングアプリケーションの動作を再開し（ブロック４４８）、ＭＥＣＤは、新しい通信メッセージについてオンラインデータ記憶サービス１２８にポーリングする（ブロック４５２）。プロセス４００はその後、ブロック４１２に戻って、前述したように、新しいメッセージを取得および表示する。
【００６１】
プロセス４００では、ＭＥＣＤは、通信メッセージデータを取得するためにポーリング技術を使用するが、新しい通信メッセージが利用可能でない場合はポーリングを停止して、ＭＥＣＤの電力使用量を減らす。従来的ＭＥＣＤでは、メッセージングアプリケーションが、追加メッセージについて連続してポーリングしなければならず、さらに電力を消費することになるか、または、アプリケーションが、ユーザーが新しいメッセージについて手動でポーリングするのを待たなければならず、これにより、優先度が高いメッセージをユーザーが受信する前に長い遅延が生じ得ることになるか、のいずれかである。既存の「プッシュ」通知サービス、例えばＡＰＮＳは、ユーザーが新しいメッセージについて手動でポーリングするためにメッセージングアプリケーションを手動でアクティブ化することを要求する、画面上の表示を生成するにすぎない。プッシュ通知の送達は、ＭＥＣＤがスリープ状態であるときにはしばしば信頼できないが、プロセス４００に記載される通知メッセージは、ＭＥＣＤが低電力モードで動いている場合であっても、確実に送達される。したがって、プロセス４００は、ＭＥＣＤが、最小限の遅延で優先度が高い通信メッセージを受信するのを可能にすると共に、ＭＥＣＤが、低電力モードで動作してバッテリー寿命を延ばすことも可能にする。
【００６２】
プロセス４００は、メッセージングシステム１００におけるＭＥＣＤの動作を説明している。図５は、タイム・クリティカルなメッセージのＭＥＣＤへの送達を可能にするため、ＭＥＣＤと共にメッセージングサービスを作動させるためのプロセス５００を描いている。以下の議論では、機能または動作を行うプロセスへの言及は、その機能または動作を行うように１つまたは複数の構成要素を操作するためにメモリに記憶されたプログラム命令を実行する、コントローラまたはプロセッサ、例えばメッセージングサービス１０４の１つまたは複数のプロセッサを参照する。プロセス５００は、例示目的で、図１のメッセージングシステム１００および図２のＭＥＣＤ２００を参照して説明する。
【００６３】
メッセージングシステム１００のユーザーまたは管理者が、一人または複数の受信者を対象とした通信メッセージを送信すると（ブロック５０４）、プロセス５００が始まる。システム１００では、ユーザーは、ＭＥＣＤのメッセージングアプリケーションを用いて新しい通信メッセージを生成する。例えば、図１は、インターフェースを備えたＭＥＣＤ１４０Ｄを描いており、このインターフェースは、ユーザーがメッセージの受信者を選択し、メッセージを入力することを可能にするものである。受信者リストは、個々の受信者の識別子、および、メッセージングサービス１０４が受信者データベース１１２内に記憶している所定の受信者群の識別子を含むことができる。メッセージは、テキスト、グラフィック、音声、および動画を含むことができる。さらに、メッセージは、受信者の自動応答を含み得る。例えば、会議告知メッセージは、受信者がその会議に出席するかどうかについて、「はい」または「いいえ」で答えるよう受信者を促す。送信者、例えばＭＥＣＤを使用していない管理者は、コンピューター端末１３２を使用して通信メッセージを送信することもできる。通信メッセージおよび受信者のリストは、データネットワーク１２４などのデータネットワークを通じて、ＭＥＣＤ１４０Ｄまたはコンピューティング端末１３２から、メッセージングサービス１０４に送られる。
【００６４】
メッセージングサービス１０４は、メッセージを受信し、受信者のＭＥＣＤにアクセス可能なオンライン記憶サービスに、そのメッセージの内容を記憶させる（ブロック５０８）。メッセージングシステム１００では、メッセージングサービス１０４は、通信メッセージをオンラインデータ記憶サービス１２８に転送する。図１の設定では、オンラインデータ記憶サービス１２８は、メッセージングサービス１０４とは別個のデータサービスである。一実施形態では、メッセージの受信者はそれぞれ、オンラインデータ記憶サービス１２８で、以前に設定されたアカウントを有している。メッセージングサービス１０４のメッセージ分配サーバー１１６は、通信メッセージを、メッセージ受信者それぞれのメッセージキューまたは他のデータ記憶アカウントにコピーする。
【００６５】
プロセス５００では、オンラインデータ記憶サービス１２８に記憶されたメッセージは、ＭＥＣＤ１４０Ａ〜１４０Ｄによる取得に利用可能である。オンラインデータ記憶サービス１２８にアクティブにポーリングしているＭＥＣＤ、例えばＭＥＣＤ１４０Ｃは、新しいメッセージが利用可能になると、新しいメッセージを取得および表示する。他のＭＥＣＤ装置、例えばＭＥＣＤ１４０Ａおよび１４０Ｂは、別のフォアグラウンドアプリケーションを実行しているか、または、メッセージングアプリケーションが中断されるスリープモードにある。受信者それぞれに対応するＭＥＣＤが、記憶された通信メッセージを迅速に取得することを確実にするため、メッセージ分配サーバー１１６は、メッセージ受信者それぞれのＭＥＣＤに通知メッセージを送信する（ブロック５１２）。
【００６６】
前述したように、あるタイプの通知メッセージは、ＳＩＰメッセージ、例えばＳＩＰ招待メッセージである。メッセージ分配サーバー１１６は、受信者データベース１１２に記憶されたアドレス情報を参照して、または、動作中に頻繁にネットワークアドレスを変更するＭＥＣＤ装置のためのモバイルドメインネームサービス（ＤＮＳ）などの、ネームサービスを参照して、ＭＥＣＤそれぞれの、ネットワークアドレス、例えばＩＰアドレスを識別する。通知メッセージを受信するＭＥＣＤは、スリープモードから動作を再開するか、または、中断したメッセージングアプリケーションをアクティブ化して、プロセス４００に記載されるように迅速に通信メッセージを取得する。ＭＥＣＤは、通信メッセージを首尾よく取得したことに応じて、送達受領メッセージをメッセージ分配サーバー１１６に送信する。
【００６７】
メッセージ分配サーバー１１６が所定のタイムアウト期間の後で送達受領メッセージを受信しない場合（ブロック５１６）、メッセージ分配サーバー１１６は、通知メッセージを再送信することができる（ブロック５２０）。優先度が高いメッセージについては、分配サーバー１１６は、ＭＥＣＤが首尾よく通信メッセージを取得するまで、または、通信メッセージに関連するタイムスタンプが切れるまで、一定の間隔で通知メッセージをＭＥＣＤに送信する。例えば、優先度が高い通信メッセージは、通信メッセージの最初の伝送から１時間の満了期間（expiration time）を有し得る。メッセージ分配サーバー１１６は、ＭＥＣＤが通信メッセージを取得しない場合に１時間の期間が満了するまで、通知メッセージをＭＥＣＤに送信する。例えば、分配サーバー１１６は、ＭＥＣＤが通知メッセージを取得して、送達受領メッセージをメッセージ分配サーバー１１６に首尾よく送信して通知が首尾よく送達されたことを示すまで、通知メッセージを３０秒間隔で送信する。別の実施形態では、メッセージ分配サーバー１１６は、受領メッセージがＭＥＣＤから受信されるまで、ますます頻繁に通知メッセージを送信する。一実施形態では、メッセージ分配サーバー１１６は、第１の通知メッセージを送信し、３００秒の所定のタイムアウトにわたり待機する。第１のタイムアウトが切れる前に受領メッセージが受信されない場合、メッセージ分配サーバー１１６は、例えば１５０秒の、より短いタイムアウトの第２の通知メッセージを送信する。メッセージ分配サーバー１１６は、分配サーバー１１６が所定の最小間隔（例えば１８．７５秒）に達するまで、次第に短くなる間隔で追加の通知メッセージを送信し、その所定の最小間隔で通知メッセージを送信し続ける。メッセージ分配サーバー１１６は、ＭＥＣＤが通知メッセージのうちの１つに対し送達受領メッセージで応答するまで、または、最大数の通知メッセージが送信され、メッセージングサービス１０４がメッセージ送達の失敗を識別するまで、通知メッセージを送り続ける。優先度の低いメッセージについては、メッセージ分配サーバー１１６は、ＭＥＣＤにただ１つの通知メッセージを送信するように設定され得る。ＭＥＣＤがアクティブ化されて無線ネットワーク１３６に接続されると、ＭＥＣＤは、優先度の低いメッセージを迅速に取得するが、ＭＥＣＤが通知メッセージを受信しそこなった場合、ＭＥＣＤは、しばらく経って優先度の低いメッセージを取得することもできる。
【００６８】
システム１００では、メッセージングサービス１０４は、通知メッセージで特定されたＭＥＣＤから送達受領メッセージを受信するまで、繰り返して通知メッセージを送信する。通知メッセージは、典型的には、通知メッセージの受領を保証せず、かつ送達の失敗を示すためにメッセージングサービス１０４に直接的なフィードバックを提供しない、ネットワークプロトコルを用いて、送信される。例えば、メッセージ分配サーバー１１６は、ＭＥＣＤがＳＩＰ招待メッセージを受信したという直接的確認を受信しない。タイムアウトが切れた際の通知メッセージの再伝送により、メッセージングサービス１０４が通信メッセージのより確実な送達をもたらすことができるか、または、ＭＥＣＤが長期間にわたり通知メッセージを受信できない場合にシステム１００の管理者もしくは他のユーザーに警告することができる。
【００６９】
メッセージングシステム１００では、メッセージングサービス１０４は、オプションとして、オンラインデータ記憶サービス１２８における通信メッセージの状態を確認することができる。通信メッセージは、ＭＥＣＤが首尾よくメッセージを取得すると、削除される。したがって、通信メッセージがオンラインデータ記憶サービスから削除されている場合、メッセージングサービス１０４は、例えばメッセージングサービス１０４とＭＥＣＤ１４０Ａ〜１４０Ｄのうちの１つまたは複数との間での断続的ネットワーク故障により、メッセージングサービス１０４が送達受領メッセージを受信しなかった場合であっても、通信メッセージの送達を示すために、メッセージ応答データベース１０８を更新することができる。別の実施形態では、通知メッセージを受け取った直後ではなく、通信メッセージがオンラインデータ記憶サービス１２８から首尾よく取得された後で、ＭＥＣＤは送達受領メッセージを送信する。受領メッセージは、オプションとして、受領メッセージ中に、取得された通信メッセージを識別するメッセージ要約または他の識別データを含む。
【００７０】
送達受領メッセージがＭＥＣＤから受信されずに、通知メッセージが１回または複数回伝送された後で、メッセージ分配サーバー１１６は、ＭＥＣＤが送達受領メッセージを送信していないことを示すために、メッセージ応答データベース１０８を更新する（ブロック５２２）。例えば、ＭＥＣＤが非アクティブ化されるか、または、任意の無線ネットワークの範囲外にある場合、メッセージングサービスは、受信者が通信メッセージを受信できない可能性が高いことを送信者に知らせるために、応答データベースを更新する。
【００７１】
ＭＥＣＤが通信メッセージを取得して、適切な送達受領メッセージをメッセージングサービス１０４に送ると、メッセージ分配サーバー１１６は、通信メッセージが首尾よく送達されたことを示すために、メッセージ応答データベース１０８を更新する（ブロック５２４）。メッセージ受信者のＭＥＣＤのための通知を生成した後、メッセージングサービス１０４は、受信者からの応答を待つ（ブロック５２８）。ＭＥＣＤは、プロセス４００を参照して前述したように、オンラインデータサービス１２８から通信メッセージを取得し、メッセージを受信ユーザーに対して表示する。ユーザーは、通信メッセージで要求される任意の応答を入力し、ＭＥＣＤは、応答メッセージをメッセージ応答ゲートウェイ１２０に送信する。メッセージ応答ゲートウェイ１２０は、メッセージ応答データベースにその応答を記憶させる（ブロック５３２）。
【００７２】
メッセージングサービス１０４が通信メッセージに対する応答を受信すると、メッセージ応答ゲートウェイ１２０は、その応答の内容、および受信状態を、送信者に提示する（ブロック５３６）。１つの設定では、メッセージ応答ゲートウェイ１２０は、通信メッセージに対する応答をウェブページとして送信者に提示する、ウェブサーバーを含む。別の実施形態では、メッセージ応答ゲートウェイ１２０は、通信メッセージを送信したＭＥＣＤに対応するアカウントにおけるオンラインデータ記憶サービス１２８に応答を転送する。応答、および応答の状態は、ユーザーが通信メッセージに対して応答すると、動的に更新される。送信者は、通信メッセージを取得しておらず送達受領メッセージを送信しなかったＭＥＣＤを識別することができ、このことは、それらのＭＥＣＤが一時的に通信メッセージを受信できないことを示し得る。送信者または管理者は、ＭＥＣＤが通信メッセージを取得し受領メッセージを送信したが、ＭＥＣＤユーザーがまだ通信メッセージに応答していない、ＭＥＣＤを識別することもできる。したがって、プロセス５００は、通信メッセージの受信者が通信メッセージを受信しているか、または通信メッセージを受信していないかを、送信者が確認し、通信メッセージへの応答をレビューすることを可能にする。図６は、３つの独立したメッセージングシステム６０２Ａ、６０２Ｂ、６０２Ｃを含む通信システム６００を描いており、これらのメッセージングシステムはそれぞれ、単一のＭＥＣＤ６４０とメッセージを送受信するように設定される。システム６００では、メッセージングシステム６０２Ａは、ネットワーク１２４を通じてＭＥＣＤ６４０に通信可能に連結された、メッセージングサービス６０４Ａ、オンラインデータ記憶サービス６２８Ａ、および管理用端末６３２Ａを実装する、１つまたは複数のコンピューティング装置を含む。メッセージングサービス６０４Ａ、オンラインデータ記憶サービス６２８Ａ、管理用端末６３２Ａはそれぞれ、システム１００のメッセージングサービス１０４、オンラインデータ記憶サービス１２８、管理用端末１３２をそれぞれ参照して前述したのと同じように設定される。
【００７３】
図６では、ＭＥＣＤ６４０は、システム１００で前記したような、スマートフォン、タブレット、ＰＤＡ、または他の携帯用電子装置である。図６の設定では、ＭＥＣＤ６４０は、ＭＥＣＤ６４０のユーザーに割り当てられた複数のアイデンティティ６５２、６５４、６５６で、通知メッセージを受信し、通信メッセージを取得し、通信メッセージを送信するように設定される。図６の実施例では、ユーザーは、通信システム６０２Ａについてアイデンティティ「Ａ」６５２を、通信システム６０２Ｂについてアイデンティティ「Ｂ」６５４を、通信システム６０２Ｃについてアイデンティティ「Ｃ」を割り当てられる。アイデンティティデータ６５２〜６５６は、通信システム６０２Ａ〜６０２Ｃそれぞれの登録ユーザーと関連付けられた受信者アドレスに宛てられた通信メッセージを取得するのに使用される認証情報を含む。ＭＥＣＤ６４０では、データ記憶メモリ２４０が、役割とアイデンティティとの間の関係６４４、６４６、６４８、６５０に対応するデータを記憶する。各組の役割−アイデンティティデータは、対応する役割に関連してＭＥＣＤに送信された通知および通信メッセージを含む。いくつかの実施形態では、役割−アイデンティティデータは、登録ユーザーのアイデンティティの認証情報に加えて、割り当てられた役割に送信された通信メッセージをＭＥＣＤ６４０が取得できるように、追加の認証情報を含む。役割データは、オプションとして、ＭＥＣＤ６４０のユーザーが、同じ役割を共有する他のユーザーのＭＥＣＤにメッセージを送信できるように、同じ役割に割り当てられた他のユーザーの連絡先を含むアドレス帳データを含む。
【００７４】
各アイデンティティは、独立した通信システム６０２Ａ〜６０２Ｂのうちの１つに対応するが、単一のユーザーは、オプションとして、単一の通信システムにおいて複数のアイデンティティを割り当てられる。例えば、図６のＭＥＣＤ６４０は、２つのユーザーの役割−アイデンティティ関係６４４、６４６と共に描かれている。これらの役割−アイデンティティ関係６４４、６４６の双方が、通信システム６０２Ａに登録されたアイデンティティ「Ａ」６５２を示す。役割およびアイデンティティデータの組６４４、６４６は、通信システム６０２Ａのユーザーアイデンティティ「Ａ」の異なる役割に対応する、「Ａ１」、「Ａ２」とそれぞれ示された役割をさらに含む。図６には明確に描かれていないが、単一のユーザーは、オプションとして、単一の通信システムについて複数のアイデンティティを割り当てられる。例えば、ＭＥＣＤ６４０のユーザーは、通信６０２Ａの標準ユーザーに対応するアイデンティティと、通信システム６０２Ａの管理者に対応する別のアイデンティティと、を割り当てられる。ユーザーは、２つのアイデンティティのいずれかを用いて通信システム６０２Ａにアクセスするのに別々の認証動作を実行する。役割−アイデンティティデータ６４８は、通信システム６０８Ｂに関連するアイデンティティ「Ｂ」および役割「Ｂ１」に対応し、役割−アイデンティティデータ６５０は、通信システム６０８Ｃに関連するアイデンティティ「Ｃ」および役割「Ｃ１」に対応する。
【００７５】
動作中、通信システム６０２Ａ〜６０２Ｃそれぞれの管理者は、アイデンティティおよび役割をＭＥＣＤ６４０のユーザーに割り当てる。例えば、通信システム６０２Ａでは、管理者は、管理用端末６３２Ａを使用し、メッセージングサービス６０４Ａの受信者データベース１１２とアイデンティティおよび役割データベース１２２とを更新して、選択されたアイデンティティおよび役割データ６４４、６４６を、ＭＥＣＤ６４０のユーザーアカウントおよび対応するネットワークアドレスと関連付ける。ＭＥＣＤ６４０は、メッセージングサービス６０４Ａから通知メッセージを受信して、新しいアイデンティティもしくは役割の追加、またはＭＥＣＤの既存のアイデンティティもしくは役割の除去を示す。いくつかの実施形態では、ＭＥＣＤ６４０が新しい役割もしくはアイデンティティに対応する通知メッセージを受信すると、ＭＥＣＤ６４０は、その役割もしくはアイデンティティに対応するこれまでの通信メッセージの履歴を取得する。例えば、ＭＥＣＤ６４０は、ＭＥＣＤが役割Ａ１を有するという通知メッセージを受信したことに応じて、オンラインデータ記憶サービス６２８Ａから、役割−アイデンティティデータ６４４の役割Ａ１に対応する通信メッセージのバックログを取得する。
【００７６】
通信システム６００では、メッセージングシステム６０２Ａ〜６０２Ｃは、単一のユーザーに対応する単一のＭＥＣＤと通信する異なる組織的存在により動作されるメッセージングシステムを描いている。例えば、一部の医師および他の医療専門家は、複数の医療機関に勤務している。図６の実施形態では、３つの異なる医療機関が、メッセージングシステム６０２Ａ〜６０２Ｃを独立して動作させる。ユーザーは、医師または他の専門家であり、役割−アイデンティティ関係６４４〜６５０により特定された対応するアイデンティティ６５２〜６５６および役割を用いてメッセージングシステム６０２Ａ〜６０２Ｃそれぞれと通信するように、ＭＥＣＤ６４０における単一のソフトウェアアプリケーションの実行のみを必要とする統合ユーザーインターフェースで、メッセージングシステム６０２Ａ〜６０２Ｃそれぞれからの通知および通信メッセージを提示するように設定された単一のＭＥＣＤ６４０を用いてメッセージングシステム６０２Ａ〜６０２Ｃのそれぞれとメッセージを送受信する。よって、システム６００により、ユーザーは、独立した通信システム６０２Ａ〜６０２Ｃと相互作用するために複数のＭＥＣＤを使用したり、複数のソフトウェアアプリケーションを使用したりする必要なしに、複数の通信システムと相互作用することができる。ＭＥＣＤ６４０は、ユーザーおよびそのユーザーのＭＥＣＤ６４０に割り当てられた１つまたは複数のアイデンティティおよび役割と関連する、通知メッセージおよび通信メッセージを受信する。
【００７７】
システム６００では、ＭＥＣＤは、オプションとして１つまたは複数の別個のメッセージングシステムと関連する、１つまたは複数のアイデンティティおよび役割を有するものとして描かれる。図７は、ＭＥＣＤと関連するアイデンティティおよび役割を管理するためのプロセス７００を描いている。以下の議論では、機能または動作を実行するプロセスへの言及は、その機能または動作を実行するように１つまたは複数の構成要素を動作させるためにメモリに記憶されたプログラム命令を実行するコントローラを参照する。プロセス７００は、例示目的で、図１のメッセージングシステム１００および図６のシステム６００を参照して説明する。
【００７８】
プロセス７００は、ユーザーアカウントと関連するＭＥＣＤのアイデンティティに関して、役割の割り当てから始まる（ブロック７０４）。システム１００の実施形態では、管理用端末１３２は、アイデンティティおよび役割データベース１２２におけるアイデンティティおよび役割のリストを含むユーザーインターフェース表示を提示する。アイデンティティは、通信システムの登録ユーザーの加入プロセス中に生成される。アイデンティティおよび役割は、受信者データベース１１２のＭＥＣＤネットワークアドレスおよび関連するユーザー情報と関連付けられる。管理者は、選択されたユーザーアカウントのアイデンティティについて、選択された役割を割り当てる。前述したように、管理者は、操作上、複数の役割を単一のアイデンティティに割り当て、異なるユーザーアカウントの複数のアイデンティティは、オプションとして、単一の役割と関連付けられる。
【００７９】
プロセス７００は、メッセージングサービスが、その役割に割り当てられたユーザーのアイデンティティと関連するＭＥＣＤに１つまたは複数の通知メッセージを送信すると、継続される（ブロック７０８）。例えば、通信システム６００では、メッセージングサービス６０４Ａは、通知メッセージをＭＥＣＤ６４０に送信し、役割−アイデンティティデータ６４６に描かれるように、役割「Ａ２」が、ＭＥＣＤ６４０のアイデンティティ「Ａ」に割り当てられたことを、ＭＥＣＤに知らせる。一実施形態では、ＭＥＣＤ６４０は、受領メッセージをメッセージングサービス６０４Ａに送信して、ＭＥＣＤ６４０が役割およびアイデンティティ関係を入手したことを確認する。最初の通知メッセージは、オプションとして、証明書情報を含み、これにより、ＭＥＣＤ６４０は、追加の通知メッセージを受信し、オンラインデータ記憶サービス６２８Ａから役割「Ａ２」６４６に宛てられた通信メッセージを取得することができる。
【００８０】
ＭＥＣＤ６４０は、オンラインデータ記憶サービス６２８Ａからアイデンティティおよび役割データ６４６に宛てられた通信メッセージを取得する（ブロック７１２）。ＭＥＣＤ６４０は、指定のアイデンティティおよび役割に割り当てられたままであるが、ＭＥＣＤは、指定の役割−アイデンティティ関係６４６の通信メッセージを識別する、追加の通知メッセージをメッセージングサービス６０４Ａから受信し続ける。ＭＥＣＤ６４０は、通信メッセージをオンラインデータ記憶サービス６２８Ａから取得し、受領メッセージを送信して、通信メッセージを受け取ったことを確認し、また、ＭＥＣＤ６４０のユーザーからのフィードバックをメッセージングサービス６０４に提供する。
【００８１】
メッセージングサービス６０２Ａ〜６０２ＣおよびＭＥＣＤ６４０は、プロセス４００および５００で前述したのと同じように、役割−アイデンティティ関係６４４〜６５０それぞれについてメッセージを送受信する。個別の受信者アドレスまたは受信者アドレス群に対応するアイデンティティにではなく、役割に通信メッセージを送信するために、送信装置は、その役割の表示名を通信メッセージの受信者として選択する。例えば、役割「Ａ２」６４６は、「待機中の医師」という人間が読み取り可能なタイトルを含む。メッセージングシステム６０２Ａのユーザーは、待機中の医師の役割のメンバー用のデフォルトの受信者アドレスを入力する必要なしに、通信メッセージの受信者を、待機中の医師の役割として選択する。メッセージサービス６０４Ａは、アイデンティティおよび役割データベース１２２の役割および対応するアイデンティティと関連する、受信者データベース中の適切な受信者アドレスを識別し、メッセージングサービス６０４は、通知メッセージを、ＭＥＣＤ６４０、およびその役割と関連する他のＭＥＣＤに送信する。
【００８２】
プロセス７００中、ＭＥＣＤのユーザーと関連するアイデンティティおよび役割のうちの１つまたは複数が、取り消され得る（ブロック７１６）。例えば、通信システム６００では、管理者は、管理用端末６３２Ａを使用して、アイデンティティおよび役割データベース１２２において、役割「Ａ１」および「Ａ２」のいずれかまたは双方と、アイデンティティ「Ａ」との間の関連性を取り除く。メッセージングシステム６０２Ｂおよび６０２Ｃの管理者は、役割−アイデンティティデータの組６４８、６５０それぞれにおいて、役割−アイデンティティの関連性「Ｂ１」−「Ｂ」および「Ｃ１」−「Ｃ」を取り消すように、メッセージサービス６０４Ｂおよび６０４Ｃを同様に設定する。役割とアイデンティティとの間の関係は、いくつかの理由で取り消され得る。例えば、ＭＥＣＤ６４０のユーザーが限られた期間、メッセージングシステム６０２Ｂに対応する施設で働いている場合、メッセージングシステム６０２Ｂの管理者は、ユーザーがその施設を退職した際にアイデンティティ「Ｂ」の役割「Ｂ１」を取り消す。さらに、管理者は、オプションとして、アイデンティティ「Ｂ」全体をシステムから削除して、ユーザーが通信システム６０２Ｂを用いて何らかの通信メッセージを送信または受信することを妨げる。
【００８３】
別の設定では、役割は、定期的に、アイデンティティに割り当てられ、かつアイデンティティから取り消される。例えば、メッセージングシステム６０２Ａでは、ＭＥＣＤ６４０のユーザーは、ユーザーがメッセージを受信するために待機していて手が空いている（available on-call）、施設でのシフト中に、役割−アイデンティティデータ６４６のアイデンティティ「Ａ」と関連付けられた「待機中の医師」、役割「Ａ２」に割り当てられる。シフトの最後に、メッセージングサービス６０４Ａは、ＭＥＣＤ６４０の役割−アイデンティティ関係６４６を取り消し、次のシフトで待機中の医師となる異なるＭＥＣＤユーザーのアイデンティティにその役割を割り当てる。一実施形態では、管理者は、ＭＥＣＤと関連付けられるユーザーの所定のスケジュールに従って定期的に、役割−アイデンティティ関係を割り当て、かつ取り消すように、メッセージングサービス６０４Ａを設定する。役割がアイデンティティから取り消された後は、そのアイデンティティを持つユーザーのＭＥＣＤ、例えばＭＥＣＤ６４０は、その役割に送信された通信メッセージに対応する追加の通知メッセージを受信しない。アイデンティティが取り消された後、新しい通信メッセージがその取り消されたアイデンティティに送信された場合にメッセージングサービス６０４Ａは、さらなる通知メッセージをＭＥＣＤ６４０に送信せず、メッセージングサービス６０４Ａは、受信者アドレスが取り消されたアイデンティティに対応する場合、通信メッセージをオンラインデータサービス６２８Ａに転送しない。
【００８４】
プロセス７００の間、ＭＥＣＤは、対応するメッセージングシステムにおいてアイデンティティまたは先に割り当てられた役割が取り消されたことに応じて、そのアイデンティティまたは役割に関連するあらゆるデータを、データ記憶メモリ２４０から削除する（ブロック７２０）。一実施形態では、メッセージングサービスは、アイデンティティまたは役割と関連するメッセージデータおよび他のデータを削除するようにという指示を有するコマンドメッセージをＭＥＣＤに送信する。例えば、管理者がメッセージングシステム６０２Ａにおいて役割−アイデンティティ関係６４６を取り消すと、メッセージングサービス６０４Ａは、アイデンティティ６４６の取り消しを示すコマンドメッセージをＭＥＣＤ６４０に送信する。ＭＥＣＤ６４０のメッセージングアプリケーションは、役割−アイデンティティ関係６４６と関連する、記憶されたあらゆるデータを削除し、ＭＥＣＤ６４０は、オプションとして、アイデンティティデータの削除を確認するために確認メッセージをメッセージングサービス６０４Ａに送信する。同様に、アイデンティティ、例えばアイデンティティ６５２が取り消された場合、ＭＥＣＤ６４０は、そのアイデンティティと関連するデータ、ならびに、通信メッセージ、認証データ、およびアドレス帳データを含め、そのアイデンティティと関係のあるあらゆる役割と関連するデータを削除する。ＭＥＣＤ６４０がアイデンティティまたは役割−アイデンティティ関係のデータを消去する間、対応するメッセージングサービス、例えばメッセージングサービス６０４Ａは、オプションとして、通信メッセージをアーカイブに入れて、後でレビューできるようにする。例えば、医療産業などの一部の産業では、メッセージングサービス６０４Ａは、確実な医療データの保持を目的として規制上の要件に従うように、通信メッセージをアーカイブに入れる。しかしながら、通信メッセージは、通信メッセージ中で言及された患者のプライバシーを保護するために、使用後は、ＭＥＣＤ６４０から削除される。
【００８５】
図７の例示的実施形態では、プロセス７００は、単一のＭＥＣＤのアイデンティティの管理を説明している。図６で前述したように、単一のメッセージングシステムは、ＭＥＣＤについて、１つまたは複数のアイデンティティおよび役割−アイデンティティ関係を割り当て、かつ取り消す。さらに、複数のメッセージングシステムは、オプションとして、単一のＭＥＣＤに対して、アイデンティティおよび役割−アイデンティティ関係を割り当て、かつ取り消す。メッセージングシステムがＭＥＣＤからアイデンティティまたは役割−アイデンティティ関係を取り消すと、そのアイデンティティまたは役割−アイデンティティと関連するメッセージデータがＭＥＣＤから削除される。しかしながら、１つのアイデンティティがＭＥＣＤから取り消された場合、ＭＥＣＤは、ユーザーが、そのユーザーの他のアイデンティティと関連する通信メッセージを送受信することを依然として可能としている。
【００８６】
装置制御のためのシステムおよび方法が、例示的なプロセスおよびシステム構成要素の説明により例示され、また、さまざまなプロセスおよび構成要素がかなり詳細に記載されたが、出願人は、請求項の範囲を、そのような詳細に制限したり、多少なりとも限定したりすることは、意図していない。例えば、前述した実施形態は、例示目的で、健康管理サービスと共に使用されることに向けられているが、前述した実施形態およびそれらの変形体は、ＭＥＣＤ間でのメッセージ送受信を利用するあらゆる分野で使用されることもできる。さらなる利点および改変も、当業者には容易に分かるであろう。したがって、最も広い見方で前述したシステムおよび方法は、図示し説明した、特定の詳細、実装、または例示的実施例に限定されるものではない。よって、出願人が開示したシステムおよび方法の趣旨または範囲を逸脱せずに、このような詳細から発展（departures）を行うことができる。
【００８７】
〔実施の態様〕
（１）  モバイル電子通信装置において、
ハウジングと、
前記ハウジングにより支持され、データを無線通信ネットワークと送受信するように設定された、無線トランシーバーと、
前記ハウジングにより支持された出力装置と、
前記ハウジングにより支持され、プログラム命令を記憶するように設定された、メモリと、
前記ハウジングにより支持され、前記メモリ、前記出力装置、および前記無線トランシーバーに動作可能に接続されたコントローラと、
を含み、前記コントローラは、
前記メモリに記憶されたメッセージプログラムのプログラム命令を実行し、
前記メッセージプログラムの前記プログラム命令の実行を中断し、
前記無線トランシーバーが前記メッセージプログラムに対応する識別子を含む通知メッセージをメッセージングサービスから受信したことに応じて、前記無線トランシーバーでオンラインデータ記憶サービスから通信メッセージを取得するように、前記メッセージプログラムの前記プログラム命令の実行を再開し、
前記出力装置で前記通信メッセージに対応する出力を生成する、
ように設定される、モバイル電子通信装置。
（２）  実施態様１に記載のモバイル電子通信装置において、
前記通知メッセージは、セッション開始プロトコル（ＳＩＰ）メッセージである、モバイル電子通信装置。
（３）  実施態様１に記載のモバイル電子通信装置において、
前記コントローラは、前記通信メッセージの取得に応じて、前記無線トランシーバーで前記メッセージングサービスに送達受領メッセージを送信するようにさらに設定される、モバイル電子通信装置。
（４）  実施態様１に記載のモバイル電子通信装置において、
前記オンラインデータ記憶サービスは、メッセージキューサービスである、モバイル電子通信装置。
（５）  実施態様１に記載のモバイル電子通信装置において、
前記オンラインデータ記憶サービスは、電子メールサーバーである、モバイル電子通信装置。
（６）  実施態様１に記載のモバイル電子通信装置において、
前記オンラインデータ記憶サービスは、インスタント・メッセージ・サーバーである、モバイル電子通信装置。
（７）  実施態様１に記載のモバイル電子通信装置において、
前記ハウジングにより支持され、前記コントローラに動作可能に接続された入力装置をさらに含み、
前記コントローラは、
前記通信メッセージの取得に応じて前記出力装置によりユーザー入力のプロンプトを生成し、
前記入力装置により生成されたデータを参照して応答メッセージを生成し、
前記無線トランシーバーで前記応答メッセージを前記メッセージングサービスに送信するように、さらに設定される、モバイル電子通信装置。
（８）  実施態様１に記載のモバイル電子通信装置において、
前記メッセージングサービスは、前記オンラインデータ記憶サービスとは異なる、モバイル電子通信装置。
（９）  実施態様１に記載のモバイル電子通信装置において、
前記コントローラは、前記メッセージプログラムの実行が中断される間、低電力モードで動作するようにさらに設定される、モバイル電子通信装置。
（１０）  実施態様９に記載のモバイル電子通信装置において、
前記コントローラは、前記無線トランシーバーでの前記通知メッセージの受信を聞くために前記メモリに記憶された別のプログラムのプログラム命令を実行するようにさらに設定され、前記別のプログラムは、前記プロセッサが前記低電力モードで動作している間に実行される、モバイル電子通信装置。
（１１）  実施態様１に記載のモバイル電子通信装置において、
前記コントローラは、前記メッセージプログラムが中断されている間に前記メモリに記憶された別のプログラムのプログラム命令を実行するようにさらに設定され、前記別のプログラムは、前記出力装置で出力を生成する、モバイル電子通信装置。
（１２）  ネットワーク通信システムにおいて、
オンラインデータ記憶サービスと、
データネットワークを通じて前記データ記憶サービスに通信可能に連結されたモバイル電子通信装置と、
サーバーであって、前記サーバーに動作可能に接続されたメモリに記憶されたプログラム命令を実行する、サーバーと、
を含み、
前記サーバーは、前記データネットワークを通じて前記オンラインデータ記憶サービスおよび前記モバイル電子通信装置に通信可能に接続され、
前記サーバーは、
前記モバイル電子通信装置に送達されるよう意図された第１の通信メッセージを受信し、
前記第１の通信メッセージを前記オンラインデータ記憶サービスに記憶させ、
前記第１の通信メッセージが前記オンラインデータ記憶サービスに記憶されたことに応じて、第１の通知メッセージを前記モバイル電子通信装置に送信する、ように設定される、ネットワーク通信システム。
（１３）  実施態様１２に記載のネットワーク通信システムにおいて、
前記第１の通知メッセージは、セッション開始プロトコル（ＳＩＰ）で送信され、前記モバイル通信装置が、低電力モードで動作する間に前記第１の通知メッセージを受信し、また、メモリに記憶されたプログラム命令を実行して、前記第１の通信メッセージを前記オンラインデータ記憶サービスから取得することを可能にする、ネットワーク通信システム。
（１４）  実施態様１２に記載のネットワーク通信システムにおいて、
前記サーバーは、前記第１の通信メッセージを別のモバイル電子通信装置から受信するように設定される、ネットワーク通信システム。
（１５）  実施態様１２に記載のネットワーク通信システムにおいて、
前記サーバーは、前記第１の通信メッセージを記憶するために、前記データネットワークを通じて前記オンラインデータ記憶サービスに前記第１の通信メッセージを送信するように設定される、ネットワーク通信システム。
（１６）  実施態様１２に記載のネットワーク通信システムにおいて、
前記サーバーは、
前記モバイル電子通信装置が前記第１の通信メッセージを取得したことを示す送達受領メッセージを前記モバイル電子通信装置から受信し、
前記第１の通信メッセージと関連して、応答データベースに、前記送達受領メッセージに対応するデータを記憶させるように、さらに設定される、ネットワーク通信システム。
（１７）  実施態様１６に記載のネットワーク通信システムにおいて、
前記サーバーは、前記送達受領メッセージを前記モバイル電子通信装置から受信し損ねたことに応じて、前記第１の通知メッセージの送信から第１の所定のタイムアウトが終了した後で前記モバイル電子通信装置に第２の通知メッセージを送信するように、さらに設定される、ネットワーク通信システム。
（１８）  実施態様１７に記載のネットワーク通信システムにおいて、
前記サーバーは、前記送達受領メッセージを前記モバイル電子通信装置から受信し損ねたことに応じて、前記第２の通知メッセージの送信から第２の所定のタイムアウトが終了した後で前記モバイル電子通信装置に第３の通知メッセージを送信するように、さら設定され、
前記第２の所定のタイムアウトは、前記第１の所定のタイムアウトよりも短い、ネットワーク通信システム。
（１９）  実施態様１２に記載のネットワーク通信システムにおいて、
前記サーバーは、
前記モバイル電子通信装置のユーザーが前記第１の通信メッセージの受信を確認したことに応じて送信される応答メッセージを、前記モバイル電子通信装置から受信し、
前記第１の通信メッセージに関連して、応答データベースに、前記応答メッセージに対応するデータを記憶させるように、さらに設定される、ネットワーク通信システム。
（２０）  実施態様１２に記載のネットワーク通信システムにおいて、
前記データネットワークを通じて前記データ記憶サービスに通信可能に連結された複数のモバイル電子通信装置をさらに含み、
前記サーバーは、前記複数のモバイル電子通信装置のうちの第１のモバイル電子通信装置のネットワークアドレスに対応するアイデンティティと役割との間の関連性、および前記役割に対応するデータを記憶するデータベースをさらに含み、
前記サーバーは、
前記複数のモバイル電子通信装置のうちの前記第１のモバイル電子通信装置に対応する識別情報を含まない、前記役割に送達されることが意図された第２の通信メッセージを受信し、
前記第２の通信メッセージを前記オンラインデータ記憶サービスに記憶させ、
前記データベースを参照して、前記複数のモバイル電子通信装置のうちの前記第１のモバイル電子通信装置の前記ネットワークアドレスを識別し、
前記第２の通信メッセージが前記オンラインデータ記憶サービスに記憶されたことに応じて、前記複数のモバイル電子通信装置のうちの前記第１のモバイル電子通信装置の識別された前記ネットワークアドレスを参照して、前記複数のモバイル電子通信装置のうちの前記第１のモバイル電子通信装置に通知メッセージを送信するように、さらに設定される、ネットワーク通信システム。
（２１）  実施態様２０に記載のネットワーク通信システムにおいて、
前記サーバーは、
前記複数のモバイル電子通信装置のうちの前記第１のモバイル電子通信装置と関連する前記アイデンティティの前記役割を取り消すために、前記データベースから前記役割と前記アイデンティティとの間の前記関連性に対応する前記データを除去し、
前記役割の取り消しを示すメッセージを、前記複数のモバイル電子通信装置のうちの前記第１のモバイル電子通信装置に送信するように、さらに設定される、ネットワーク通信システム。
（２２）  実施態様２１に記載のネットワーク通信システムにおいて、
前記第１のモバイル電子通信装置は、
前記第１の通信メッセージを記憶するように設定されたメモリと、
前記メモリに動作可能に接続されたプロセッサと、をさらに含み、
前記プロセッサは、前記サーバーからの前記役割の取り消しを示す前記メッセージの受信に応じて、前記メモリから前記第１の通信メッセージを削除するように設定される、ネットワーク通信システム。
（２３）  実施態様２１に記載のネットワーク通信システムにおいて、
前記サーバーは、
前記複数のモバイル電子通信装置のうちの第２のモバイル電子通信装置のネットワークアドレスと関連する、前記役割と別のアイデンティティとの間の別の関連性に対応するデータを、前記データベースに記憶させ、
前記複数のモバイル電子通信装置のうちの前記第２のモバイル電子通信装置に対応する識別情報を含まない、前記役割に送達されることが意図された第３の通信メッセージを受信し、
前記第３の通信メッセージを前記オンラインデータ記憶サービスに記憶させ、
前記データベースを参照して前記複数のモバイル電子通信装置のうちの前記第２のモバイル電子通信装置の前記ネットワークアドレスを識別し、
前記別の通信メッセージが前記オンラインデータ記憶サービスに記憶されたことに応じて、前記複数のモバイル電子通信装置のうちの前記第２のモバイル電子通信装置の識別された前記ネットワークアドレスを参照して前記複数のモバイル電子通信装置のうちの前記第２のモバイル電子通信装置に通知メッセージを送信するように、さらに設定される、ネットワーク通信システム。
【図面の簡単な説明】
【００８８】
【図１】優先度が高いメッセージをモバイル電子通信装置に送達するメッセージングシステムの図である。
【図２】図１のメッセージングシステムと共に動作するように再設定され得る先行技術のモバイル電子通信装置の概略図である。
【図３Ａ】メッセージングアプリケーションプログラムを含むモバイル電子通信装置上で実行されるソフトウェアプログラムの描写である。
【図３Ｂ】低電力動作モードにあるモバイル電子通信装置上で実行されるソフトウェアプログラムの描写である。
【図４】待ち時間を減らして優先度が高い通信メッセージを受信するためにモバイル電子通信装置を動作させるためのプロセスのブロック図である。
【図５】優先度が高いメッセージを１つまたは複数のモバイル通信装置に送信するためにメッセージングシステムを動作させるためのプロセスのブロック図である。
【図６】異なるメッセージングシステムとの通信を可能にするためにモバイル電子通信装置に複数のアイデンティティおよび役割を割り当てるシステムの概略図である。
【図７】メッセージングシステムと通信するモバイル電子通信装置のアイデンティティおよび役割を管理するためのプロセスのブロック図である。
【図１】
2015520957.tif 000003
【図２】
2015520957.tif 000004
【図３Ａ】
2015520957.tif 000005
【図３Ｂ】
2015520957.tif 000006
【図４】
2015520957.tif 000007
【図５】
2015520957.tif 000008
【図６】
2015520957.tif 000009
【図７】
2015520957.tif 000010
【国際調査報告】
2015520957.tif 000011
2015520957.tif 000012