JP2015520957A - モバイル通信装置のための、待ち時間を削減したメッセージ送受信 - Google Patents

モバイル通信装置のための、待ち時間を削減したメッセージ送受信 Download PDF

Info

Publication number
JP2015520957A
JP2015520957A JP2015505955A JP2015505955A JP2015520957A JP 2015520957 A JP2015520957 A JP 2015520957A JP 2015505955 A JP2015505955 A JP 2015505955A JP 2015505955 A JP2015505955 A JP 2015505955A JP 2015520957 A JP2015520957 A JP 2015520957A
Authority
JP
Japan
Prior art keywords
message
mobile electronic
mecd
electronic communication
communication device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015505955A
Other languages
English (en)
Inventor
マトソン・ウィリアム
ボールドウィン・ゲーリー
アパム・ジョーダン
スクワイヤーズ・クリストファー
エリス・ジョセフ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zipit Wireless Inc
Original Assignee
Zipit Wireless Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zipit Wireless Inc filed Critical Zipit Wireless Inc
Publication of JP2015520957A publication Critical patent/JP2015520957A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/224Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/23Reliability checks, e.g. acknowledgments or fault reporting

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)
  • Telephone Function (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

モバイル電子通信装置は、ハウジングにより支持された、コントローラ、メモリ、無線トランシーバー、および出力装置を含む。コントローラは、メモリに記憶された命令を有するプログラムを実行し、そのプログラムの実行を中断する。コントローラは、無線トランシーバーで通知メッセージを受信したことに応じて、無線トランシーバーでオンラインデータ記憶サービスから通信メッセージを取得するよう、プログラムの実行を再開する。コントローラは、通信メッセージを取得するためにプログラムを実行し、出力装置で通信メッセージを出力する。モバイル電子通信装置は、メッセージを出力し、通信メッセージの送信と通信メッセージの出力との間での遅延は減少する。

Description

開示の内容
〔優先権の主張〕
本出願は、「Reduced Latency Messaging For Mobile Communication Devices」の名称で、2012年4月13日に出願された、米国仮特許出願第61/624,055号の優先権を主張するものである。
〔技術分野〕
この文書は、無線通信システムに関し、さらに具体的には、モバイル電子通信装置への通信メッセージの送達を制御することに関する。
〔背景〕
近年、携帯用の電子装置が、幅広い商業的成功を収めている。モバイル電子通信装置(MECD)は、MECDが多くの場所でデータネットワークに接続されたままでいることを可能にする、典型的には1つまたは複数の形態の無線データネットワークを用いた、無線通信装置を含む。インターネットアクセス、テキスト、音声、および画像通信を可能にする、高性能のソフトウェアを備えた、いわゆる「スマートフォン」およびタブレット型コンピューターを含む、広範なハンドヘルドMECDは、専門家および他の個人が同僚および他の協力者と交流をとり続けることを可能にしている。
モバイル電子通信装置は、しばしば、強力な電子機器を含み、これは、スマートフォンの場合にはポケットに入れて容易に運べる小型パッケージの中、または、より大きなスクリーンを有するタブレット型コンピューターおよび装置の場合は小さいケースの中にある、シングルコアまたはマルチコアの中央処理装置(CPU)、グラフィック処理ユニット(GPU)、マルチバンドの無線トランシーバー、カメラ、スピーカー、およびタッチスクリーンディスプレイを含む。モバイル操作を可能にするため、バッテリーまたは他のエネルギー貯蔵装置が、典型的には、MECD内部に収容される。MECDの小型フォームファクターに存在するサイズおよび重量の制約は、バッテリーが、MECDのハウジング内で利用可能な物理的空間内部に嵌まるために、幾分小さい容量を有することを、しばしば意味している。MECDは、使い切ったバッテリーを再充電するために電源に接続される。バッテリー貯蔵容量が改善を続け、燃料電池など、他のエネルギー貯蔵テクノロジーが将来のMECDで一般的になり得る一方で、MECDの構成要素はまた、動作中に熱を生成する。MECDが長いバッテリー作動寿命を有していても、MECDの温度は、装置内の電子部品が重い負荷の下で動作する場合には、許容できないレベルまで上昇し得る。
MECDは、しばしば、充電の合間の時間間隔を最大化し、かつMECDの温度を快適なレベルに保つために、MECDの電力使用量を減少させるように特に設定された、ハードウェアおよびソフトウェアを含む。例えば、多くのMECDは、ディスプレイスクリーンおよび他の構成要素を非アクティブ化し、CPUを低電力または「スリープ」モードで動作させる。スリープモードでは、大部分のソフトウェア活動(most software activity)が中断され、MECDの電力消費量が落ちる。一部のMECD装置は、MECDがスリープ状態でない場合であっても、ソフトウェアアプリケーションをやはり中断する。例えば、MECDは、ユーザーが「フォアグラウンド」のウェブブラウザアプリケーションと相互作用している間、「バックグラウンド」のEメールおよびインスタント・メッセージ・アプリケーションを中断することができる。MECDは、バッテリー消費量を減らすため、また、より多くのハードウェアリソースがフォアグラウンドアプリケーションにとって利用可能となるのを確実にするために、バックグラウンドアプリケーションを中断する。
いわゆる「プッシュ」技術も、無線ネットワークを通じて第三者から送信される通信を受信した場合に、MECDの電力使用量を減らすのを助ける。「プッシュ」スキームでは、ネットワークサービスは、MECDに直接メッセージを送り、通信メッセージの存在についてMECDに警告する。市販されている1つの例は、Apple Push Notification Service(APNS)であり、これは、通知メッセージをあるMECDに送信して、視聴覚的警報を通じてユーザーの関心を新たな通信に引き付ける。次にMECDのユーザーは、MECD上の適切なソフトウェアアプリケーション(口語体で「app」と呼ぶ)をアクティブ化し、MECDとの無線ネットワークを用いてその通信からデータをダウンロードする。例えば、APNSシステムは、MECDのユーザーが新たな電子メールメッセージを受け取ったという通知をMECDに送ることができる。そのユーザーは、MECDにおいて生成される視聴覚的および/または触覚的警報を通じて、通知メッセージを受け取り、その後、電子メールアプリケーションをアクティブ化し、このアプリケーションが、この後、新たなメッセージをダウンロードし表示する。
プッシュ技術は、場合によっては、MECDの電力消費量を減らすことができる。これは、MECDは、新たな通信メッセージをチェックまたは「ポーリングする」ために定期的にEメールサーバーまたは他のオンラインサービスとの通信を開始する必要がないためである。各「ポーリング」は、いくつかのCPUの使用、ならびに無線トランシーバーを用いた伝送を必要とするので、多くの「ポーリング」作業の累積的影響は、バッテリー寿命に悪影響を与える場合がある。それに反して、「プッシュ」動作は、MECDにおけるCPUおよび無線トランシーバーの使用を軽減する。例えば、MECDは、代わりに新しいEメールメッセージが利用可能となったことをプッシュ警報(push alert)が信号伝達できる場合、新しいEメールメッセージについて毎分Eメールサーバーにポーリングする必要がない。多くのMECDユーザーが、電子メール、インスタント・メッセージ、およびソーシャルネットワーキングを含む、複数の通信アプリケーションを使用するので、プッシュ技術は、多くの個々のサービスにポーリングする必要性を軽減または排除し、かつ、バッテリー寿命を改善するのを助けることができる。
前述のとおり、中断したソフトウェアアプリケーション、およびプッシュ通信を含む、スリープモードは、MECDの電力消費量を減らすのを助ける。しかしながら、既存のMECDネットワーク通信システムは、MECDに対する警報メッセージの迅速で信頼できる送達を必要とする警報またはページングシステムの必要性を満たすようには設計されていない。このような警報またはページングシステムは、医療業務、消防/救助業務、警察業務、および建設業務を含む、幅広い職業に用いられる。伝統的には、専用ハードウェア、例えばページャユニットおよび専門のページャ伝送ネットワークは、1つまたは複数のページャユニットに、優先度が高い警報およびメッセージを送るのに使用されてきた。大部分の専門家が既にスマートフォン、タブレット型コンピューター、または他のMECDを持っていても、別個のハードウェアページャが必要とされる。これは、MECDによって、専門家がページおよび他のタイム・クリティカルな通信を確実に受信することはできないためである。既存のMECDは、優先度が高いメッセージを全く受信できないか、または、長期遅延した後で優先度が高いメッセージを受信できるに過ぎず、これは、多くの職業において許容できない。
MECDにタイム・クリティカルなメッセージを送達することの1つの問題は、既存のプッシュ技術が「ベストエフォート」アプローチに依存していることであり、このアプローチでは、プッシュサービスが、プッシュメッセージをMECDに送ろうと試みるが、MECDが実際にメッセージを受信したかどうかを確認しない。MECDがスリープモードにあるか、または一時的に無線データネットワークから切り離されている場合、MECDは、ユーザーに通知を送達しない。MECDがプッシュメッセージを受信しても、優先度が高い警報を送達する対応のアプリケーションが、バックグラウンドで中断され得る。MECDは、ユーザーが手動でメッセージングアプリケーションをアクティブ化するまで、優先度が高いメッセージを受信および表示せず、これにより、メッセージの送達がさらに遅れる。したがって、既存の通信方法は、MECDへの優先度が高いメッセージの送達において、また、MECDユーザーへの優先度が高いメッセージの表示において、大きな待ち時間または遅延をしばしば経験する。
通信の待ち時間を低減する1つの解決策は、MECDのすべてのアプリケーションを常にかつ同時に動作させ、遅れを最小にしたメッセージ送達を可能にすることであろう。しかしながら、MECDのバッテリー寿命および熱出力は、このような設定に苦しむ。したがって、通信メッセージの送達の待ち時間を低減すると共に、MECDが低電力モードで動作するのを可能にする改善が有益である。
〔概要〕
一実施形態では、待ち時間を低減させて優先度が高いメッセージを受信するモバイル電子通信装置が開発されている。モバイル電子通信装置は、ハウジングと、ハウジングにより支持され、無線通信ネットワークでデータを送受信するように設定された無線トランシーバーと、ハウジングにより支持された出力装置と、ハウジングにより支持され、プログラム命令を記憶するように設定されたメモリと、ハウジングにより支持され、メモリ、出力装置、および無線トランシーバーに動作可能に接続されたコントローラと、を含む。コントローラは、メモリに記憶されたメッセージプログラムのプログラム命令を実行し、メッセージプログラムのプログラム命令の実行を中断し、無線トランシーバーがメッセージサービスから、メッセージプログラムに対応する識別子を含む通知メッセージを受け取ったことに反応して、無線トランシーバーでオンラインデータ記憶サービスから通信メッセージを取得するためにメッセージプログラムのプログラム命令の実行を再開し、また、出力装置により通信メッセージに対応する出力を生成するように、設定される。
別の実施形態では、優先度が高いメッセージをモバイル電子通信装置に送達するネットワーク通信システムが開発されている。このネットワーク通信システムは、オンラインデータ記憶サービスと、データネットワークを通じてデータ記憶サービスに通信可能に連結されたモバイル電子通信装置と、サーバーと、を含み、サーバーは、このサーバーに動作可能に接続されたメモリに記憶されたプログラム命令を実行する。サーバーは、データネットワークを通じてオンラインデータ記憶サービスおよびモバイル電子通信装置に通信可能に接続される。サーバーは、モバイル電子通信装置に送達されることが意図される通信メッセージを受信し、その通信メッセージをオンラインデータ記憶サービスに記憶させ、通信メッセージがオンラインデータ記憶サービスに記憶されたことに応じて、通知メッセージをモバイル電子通信装置に送信するように設定される。
〔詳細な説明〕
本明細書に開示する実施形態の原理の理解を促進する目的で、図面と、以下の明細書中の説明とをこれから参照する。用語「モバイル電子通信装置」(MECD)は、データネットワークを通じてデータまたは音声信号を送信することで通信を促進する、ハンドヘルドの、または別様に持ち運びできるいくつかの電子装置のうちの任意のものを指す。一般的な例としては、無線ネットワークを用いてデータを送受信する、携帯電話または「スマートフォン」、タブレット型コンピューター、携帯情報端末(PDA)、および携帯型メディアプレーヤーが含まれるが、これらに限定されない。
本明細書で使用される用語「コントローラ」は、典型的にはマイクロプロセッサを含む、電子制御ユニットを指すが、ASIC、FPGA、汎用CPU、例えばARMファミリーまたはx86ファミリーのCPU、またはデータを送受信し、かつMECDの動作を制御するように構成された任意のデータ処理装置などの、任意のそのような制御対応装置(control capable device)を含む。コントローラは、視覚表示装置を通じてグラフィック出力を駆動するための、1つまたは複数のグラフィック処理ユニット(GPU)も含み得る。用語「データ記憶装置」は、コントローラにより使用され得る形で、デジタル情報を記憶および取得することができる任意の装置を指す。一般的な例としては、ダイナミック・ランダム・アクセス・メモリ(DRAM)、およびスタティック・ランダム・アクセス・メモリ(SRAM)が含まれるが、これらに限定されない。この用語は、電力がコントローラまたはメモリのいずれかから取り除かれた場合にデジタル情報を保持することのできる、任意の不揮発性データ記憶装置も含む。このような装置は、磁気ハードドライブ、NANDもしくはNORフラッシュメモリを含むソリッドステートの記憶装置、光学式データ記憶装置、または電源がない場合にデジタルデータを保持することができる任意の装置を含む。コントローラは、MECDのデータ記憶装置から読み取られる1つまたは複数のソフトウェアプログラムに従ってMECDを動作させる。
本明細書で使用される場合、用語「設定する(configure)」とは、揮発性もしくは不揮発性メモリ、ハードドライブ、ソリッドステートドライブなどといったコンピューター可読媒体にプログラム命令および/またはパラメータデータを記憶させることと共に、モバイル電子通信装置を含むコンピューティング装置の電子部品を配列および接続することを指す。これらのプログラム命令は、モバイル電子通信装置のコントローラ、および機能もしくはタスクを実行するように電子部品を動作させるサーバー内の1つまたは複数のプロセッサを含む、さまざまなプロセッサにより実行される。設定データ(configuration data)とも呼ばれる、パラメータデータは、コンピューティング装置の設定により可能になった機能およびタスクの実行中にプログラム命令が参照するか、または別様に計算のために使用する、任意の記憶されたデータを含む。この例には、ユーザー認証データ、ディレクトリー情報、および無線アクセスポイントのリストが含まれるが、これらに限定されない。設定済みのコンピューティング装置は、記憶されたプログラム命令を実行し、このプログラム命令は、その命令の実行中に、記憶されたパラメータデータを参照することができる。
本明細書で使用される場合、用語「アイデンティティ」は、呼称(designation)を指し、これは、通信システムの一人または複数の登録ユーザーに割り当てられ、通信システムのメモリ内部に記憶されて、そのアイデンティティと関連付けられたユーザーへの通知メッセージおよび通信メッセージの送受信を管理するものである。例えば、アイデンティティは、ユーザー名、被雇用者のID番号、または、システムの登録ユーザーを識別する他の情報として記憶される。アイデンティティ情報は、オプションとして、例えばハードウェア特有の識別子、例えば、メディアアクセス制御(MAC)アドレス、またはMECDのメモリ内に記憶される暗号識別トークン(cryptographic identification tokens)で、登録ユーザーが使用するMECDを識別する。いくつかの実施形態では、単一のMECDが、異なる通信システムの複数のアイデンティティと関連付けられる。例えば、複数の独立した病院で働く医師は、それらの病院に関連する通信ネットワークそれぞれについて、別々のアイデンティティを割り当てられており、MECDの単一のメッセージングアプリケーションは、病院それぞれにおいてネットワークと通信するように設定される。その医師が、第1の病院で働くのをやめた場合、第1の病院におけるその医師のユーザーアカウントおよびアイデンティティは、停止または削除され得るが、その医師は、間断なく、第2のアイデンティティで第2の病院の通信システムを使用し続ける。
本明細書で使用される場合、用語「役割」は、通信システムの一人または複数の登録ユーザーに割り当てられ、通信システムのメモリ内部に記憶されて、その役割と関連付けられたユーザーアイデンティティに対する通知メッセージおよび通信メッセージの送受信を管理する、呼称を指す。例えばメッセージングシステムの管理者は、病院での業務シフト中に、登録ユーザー名のアイデンティティ「A」を、「待機中の医師(ON-CALL PHYSICIAN)」の役割と関連付ける。そのアイデンティティに対して送信される通信メッセージは、ユーザーアカウント「A」と関連する受信者アドレスに送信者が直接メッセージを送らなくても、ユーザーアカウント「A」と関連するMECDに宛てられる。システム管理者は、1つまたは複数のユーザーアカウントの役割を設定し、ある役割が特定のユーザーのアイデンティティとの関連から外れた場合、通信システムは、オプションとして、対応するMECDに通知メッセージを送信し、そのMECDは、その役割と関連する、記憶された通信メッセージおよび他のデータを削除する。
モバイル電子通信装置は、典型的には無線トランシーバーを含み、「無線トランシーバー」は、伝搬のために物理的ケーブルまたは接続を必要としない電磁信号を介して、情報を送受信することができる任意の装置である。一般的な例としては、無線(radio)トランシーバー、マイクロ波トランシーバー、赤外線トランシーバー、レーザートランシーバー、および光学トランシーバーが含まれる。本明細書で使用される場合、用語「無線ネットワーク」は、少なくとも1つの装置がデータを送受信するのに無線トランシーバーを用いる、データの送受信が可能な2つまたは3つ以上の電子装置の任意の構成を説明するものである。広大な地理的領域にわたりしばしば使用される無線テクノロジーの一般的な例としては、セルラーネットワーク、3G、4G、および他の無線広域ネットワーク(WWAN)テクノロジーが含まれる。より狭い地理的領域内で使用される無線ネットワークの他の例は、無線ローカルエリアネットワーク(WLAN)を含む。WLANテクノロジーは、「Wi−Fi」ブランドの装置、ブルートゥースを介してリンクされる装置、または光学もしくは赤外線信号伝達を用いて情報を交換する装置を含む、IEEE 802.11シリーズのプロトコルを用いる装置を含む。
「通信メッセージ」および「通知メッセージ」を含め、さまざまなタイプのメッセージが、WWANまたはWLANを用いて送信され得る。本明細書で使用される場合、用語「通信メッセージ」は、別個のメッセージとしてMECD間で送信され得る、任意の形態のデジタルデータを指す。通信メッセージは、フォントおよび色のメタデータなどの、フォーマット化をもたらすオプションのメタデータを含むテキストメッセージ、写真、音声メッセージ、動画メッセージ、および番号ページ(numeric pages)を含むが、これらに限定されない。通信メッセージは、メッセージの送信者および受信者の識別情報(identification)、メッセージが送信および受信された時間、優先度情報、メッセージに応答する際に受信者が送信し得る1つまたは複数の所定の応答、およびメッセージが読まれたかどうかを示すステータス情報を含む、さまざまなメタデータも有し得る。いくつかの通信メッセージフォーマットは、メッセージデータおよびメタデータを所定の構造に組織化し、これには、拡張マークアップ言語(XML)などの構造化されたフォーマットにおいてメッセージデータおよびメタデータを識別することが含まれる。
通信メッセージは、通信メッセージが表示された際に所定の機能を行うために、メッセージプログラムにより解釈される、実行可能なプログラム命令または構造化データをオプションとして含み得る。例えば、通信メッセージは、応答を要求し、所定の応答リストを備えた構造化データを含む。MECDは、受信者に対してメッセージを表示し、受信者を促して所定の応答のうちの1つを入力させる。次に、MECDは、メッセージングシステムの送信者および他の当事者によりレビューされるように、メッセージングシステムに応答を送信する。
本明細書で使用される場合、用語「優先度が高い」通信メッセージは、メッセージングシステムが、メッセージの送信と、受信装置によるメッセージの受信との間の遅延を最小化する、通信メッセージの分類を指す。優先度が高いメッセージは、タイム・クリティカルな内容を含み、そのメッセージの価値は、受信者がメッセージを迅速に受信しない場合に大きく下がる。さらに、優先度が高いメッセージの送信者、またはメッセージングシステムの他のユーザーは、優先度が高いメッセージのステータスをモニターし、メッセージが実際にMECDにより受信されたかどうか、および、MECDのユーザーがメッセージに応答したかどうか、を判定する。
用語「通知メッセージ」は、オンラインデータ記憶サービスに記憶された通信メッセージの存在についてMECDに警告する、無線ネットワークを通じて受信されるメッセージを指す。MECD上で実行されるメッセージングソフトウェアアプリケーションは、MECDが通知メッセージを受信した後で迅速に通信データを取得する。通知メッセージは、通知メッセージが、一般にはスリープ状態と呼ばれる低電力動作モードからMECDを目覚めさせ、かつメッセージングアプリケーションの実行を再開することを可能にするネットワークプロトコルを用いて、メッセージングサービスからMECDに送信される。メッセージングアプリケーションはその後、オンラインデータ記憶サービスから1つまたは複数の通信メッセージをダウンロードし、最小限の遅延で、少なくとも1つのメッセージを表示する。通知メッセージは、プロトコルを用いてネットワークを通じて送信された任意のメッセージを含み、これは、MECDにより受け取られ、最小限の遅延で通信メッセージをダウンロードおよび表示するようにMECDにおける取得動作を誘発するソフトウェアアプリケーションに渡される。一実施形態では、MECDが低電力モードで動作している場合を含め、MECDがアクティブ化されるときはいつでも、通知アプリケーションが、バックグラウンドプロセスとして動作する。通知アプリケーションは、通知メッセージを受信し、必要ならばMECDをスリープ状態から目覚めさせ、通信メッセージの取得および表示を開始する。別の実施形態では、オンラインメッセージングサービスが、セッション開始プロトコル(SIP)メッセージをMECDに送信する。MECDは、MECDが低電力モードで動作している場合であってもSIPメッセージを聞くソフトウェアサービスを含む。SIPメッセージは、メッセージングアプリケーションに対応する独自の識別子を含み、リスナーサービス(listener service)は、SIPメッセージの受信に応じて、中断されたメッセージングアプリケーションの操作を再開する。
本明細書で互換的に使用される場合、用語「ゲートウェイ」および「ポータル」は、しばしば「バックエンド」コンピューティング装置と呼ばれるコンピューティング装置およびネットワークに動作可能に接続されるコンピューティングサーバーを指す。ゲートウェイは、バックエンドコンピューティング装置にアクセスするためにネットワークに動作可能に接続された1つまたは複数のクライアントコンピューティング装置を有効にする翻訳サービス(translation service)を提供する。ウェブゲートウェイまたはウェブポータルは、ウェブブラウザを用いてバックエンドサービスにアクセスするためにクライアントコンピューティング装置を有効にするゲートウェイの一例である。代替的なゲートウェイは、Eメール、シンプル・メッセージング・サービス(SMS)、セキュア・シェル(SSH)、テルネット、ウェブサービスなどといった、種々の通信方法を用いてクライアントを有効にして、バックエンドコンピューティング装置にアクセスする。ゲートウェイおよびポータルは、クライアントが、バックエンドコンピューティング装置を制御するためのコマンドを送信できるように、かつバックエンドコンピューティング装置からデータを受信できるように、設定され得る。
用語「送達受領メッセージ(delivery receipt message)」は、作動中に通信メッセージを首尾よく取得した後でMECDから送信されるメッセージを指す。送達受領メッセージは、その送達受領メッセージを、元の通信メッセージと関連付ける識別子を含む。メッセージングシステムがMECDから送達受領メッセージを受信すると、メッセージングシステムは、MECDがメッセージを首尾よく取得したことを示すステータスインジケータを、通信メッセージの送信者または管理者に対し表示することができる。一実施形態では、MECDは、通信メッセージを取得した後、およびMECDのユーザーが通信メッセージに対する応答を入力する前に、自動的に送達受領メッセージを送信する。よって、送達受領メッセージは、MECDが通信メッセージを取得したことを示すことができるが、MECDのユーザーが通信メッセージ読んだこと、または通信メッセージに応答して任意の他の行動をとったこと、を示すことはできない。
図1は、メッセージングシステム100を描いており、これは、MECDがスリープモードにある場合またはMECDがメッセージングアプリケーションの実行を中断している場合であっても優先度が高い通信メッセージを受信するために、改善されたメッセージングアプリケーションプログラムを実行するように再設定された既存のMECDを有効にするものである。メッセージングシステム100は、図1のMECD140A〜140Dにより例示される複数のMECDと通信するメッセージングサービス104を含む。メッセージングサービス104およびMECD140は、通信メッセージ、通知メッセージ、および送達受領メッセージを含むデータを、インターネットまたは他のデータネットワークなどのデータネットワーク124を通じて、送受信する。MECD140A〜140Dは、1つまたは複数の無線ネットワーク136を使用するように設定される。無線ネットワーク136は、WLANおよびWWANネットワークの双方を含む。いくつかのMECDは、WLANおよびWWANネットワーク136の双方にアクセスし、動作中にネットワークを動的に切り替える、無線トランシーバーを含む。
図1では、メッセージングサービス104は、メッセージ応答データベース108と、受信者データベース112と、メッセージ分配サーバー116と、メッセージ応答ゲートウェイ120と、役割およびアイデンティティデータベース122と、を含む。メッセージ応答データベースは、MECDが通信メッセージを受信した際にMECD140A〜140Dから受け取った応答に対応する情報を含む。受信者データベース112は、メッセージングサービス104のユーザー、およびユーザーそれぞれに登録された少なくとも1つのMECDに対応する登録情報を含む。受信者データベースは、登録されたMECDのみがメッセージングシステム100において通信メッセージを送受信できることを確実にするために、認証証明書データを含み得る。受信者データベースはまた、MECDへの通知メッセージの送達を可能にするために、MECDのネットワークアドレス、例えばインターネットプロトコル(IP)アドレスで更新され得る。メッセージングサービス104では、メッセージ応答データベース108、受信者データベース112、ならびにアイデンティティおよび役割データベース122は、例示目的で、別々のデータベースとして描かれているが、代替的な実施形態では、データベース108、112、122は、例えばデータ取得のために索引が付けられた1つまたは複数の表を有する単一のデータベース、1つまたは複数のコンピューティング装置上に分配された複数のデータベース、あるいは、任意の他の適切な設定へと組織化される。
アイデンティティおよび役割データベース122は、種々のアイデンティティ、およびアイデンティティと登録ユーザーに割り当てられた1つまたは複数の役割との間の関係に関する情報を含む。アイデンティティおよび役割データベース122内の役割は、受信者データベース112の、単一の受信者アドレスまたは受信者アドレス群に対応する。例えば、図1のアイデンティティおよび役割データベース122の実施形態は、アイデンティティに関連する認証および許可証明書、ならびに役割と、その役割に割り当てられた登録ユーザーの1つまたは複数のアイデンティティとの間の関連性を含む、登録ユーザーのアイデンティティおよび割り当てられた役割についての、機械読み取り可能かつ人間読み取り可能な情報を含む。人間読み取り可能な役割識別データは、システム100の使用中に人間ユーザーがアイデンティティを識別することを可能にする、例えば、「待機中の医師」などのテキスト文字列、または図示記号などの他のデータを含む。認証および許可証明書は、例えば、公開鍵および秘密鍵、パスワード、または他の証明書データを含み、これらは、通知メッセージを受信し、オンラインデータ記憶サービス128から通信メッセージを取得し、割り当てられた役割に送信された通信メッセージのための応答メッセージを送信するためにアイデンティティに割り当てられたユーザーのMECDを有効にする。作動中、いくつかの通信メッセージは、システム100におけるユーザーのMECDと直接関連するアドレスに送信されるのではなく、役割に対応する受信者アドレスに送信される。メッセージングサービス104は、役割に割り当てられたアイデンティティに対応する受信者データベース112中の一人または複数の受信者を識別するために、アイデンティティおよび役割データベース122を用いて役割に送信される通信について受信者を識別する。
メッセージングサービス104では、メッセージ分配サービス116は、MECD140A〜140Dから、また管理用端末132を通じてメッセージングサービス104の管理者もしくは他のユーザーから、入ってくる通信メッセージを受信する。図1では、MECD140Dは、メッセージングシステム100を使用して他のMECDのための新しいメッセージを作るためにメッセージングアプリケーションを実行しているのが描かれており、メッセージング端末132は、MECD140A〜140Dのためのメッセージを作るためにメッセージングソフトウェアを実行することもできる。メッセージ分配サーバー116は、通信メッセージを受信し、受信者に対応するMECDのネットワークアドレスを識別し、通信メッセージをオンラインデータ記憶サービス128に記憶させる。メッセージ分配サーバー116は、メッセージ受信者のMECDそれぞれに通知メッセージを送信し、新しい通信メッセージの存在についてMECDに警告する。MECDは、通知メッセージの受信に応じて送達受領メッセージをメッセージ分配サーバー116に送信することができ、メッセージ分配サーバーは、送達受領メッセージをメッセージ応答データベース108に記憶させる。
メッセージングサービス104は、データネットワーク124を通じてオンラインデータ記憶サービス128に通信可能に接続される。メッセージ分配サーバー116は、各通信メッセージの受信者に関連して、通信メッセージをオンライン記憶サービス128に記憶させる。メッセージングシステム100は、別個のオンライン記憶サービス128を含むが、別の実施形態は、メッセージングサービス104に統合されたメッセージ記憶システムを含む。
例示的な一実施形態では、データ記憶サービス128は、Amazon Simple Queue Serviceなどのオンラインメッセージキューサービスである。オンラインデータ記憶サービス128は、1つまたは複数のMECDからの、通信メッセージを含むデータの要求に応じるように設定される。メッセージングシステム100では、登録ユーザーそれぞれが、各ユーザーに送信された通信メッセージの取得のために、オンライン記憶サービス128に個人アカウントを有する。いったん通信メッセージがメッセージキューから首尾よく取得されたら、MECDは、取得したメッセージを削除するよう、オンラインデータ記憶サービス128に要求を送る。メッセージングシステム100では、メッセージングサービス104は、通信メッセージが取得されたかどうかを識別するために、各登録ユーザーのキュー内のメッセージ数をモニターすることができる。オンラインデータ記憶サービス128のさまざまな代替的な実施形態は、電子メールサーバー、インスタント・メッセージ・サーバー、通信メッセージデータを記憶するウェブサーバー、またはメッセージングサービス104がMECD140A〜140Dによる取得のためにメッセージデータを記憶できるようにする任意の他のデータ記憶サービスを含む。
メッセージ応答ゲートウェイ120は、MECDが通信メッセージを取得した後でMECD140A〜140Dから応答を受信するように、また、通信メッセージの送信者およびメッセージングシステム100の他のユーザーが通信メッセージへの応答をレビューするためのインターフェースを提供するように、設定される。一実施形態では、メッセージ応答ゲートウェイ120は、エクステンシブル・メッセージング・アンド・プレゼンス・プロトコル(Extensible Messaging and Presence Protocol)(XMPP)などの構造化メッセージングプロトコルを用いてMECD140A〜140Dから応答メッセージを受信するサーバーを含む。メッセージ応答ゲートウェイ120は、応答と関連付けられる元の通信メッセージに関連して、メッセージ応答データベース108に応答データを記憶させる。メッセージ応答ゲートウェイ120はまた、メッセージ応答データベース108に記憶された通信メッセージへの応答のステータスをレビューするために、MECD140A〜140Dおよび管理用端末132を有効にするウェブサーバーインターフェースを提供することができる。以下でさらに詳細に説明するように、送信者またはメッセージングシステム100の他のユーザーは、通信メッセージに対する応答をレビューするか、MECDのユーザーがメッセージを受信しているがそのメッセージに応答していないかどうかを判定するか、または、MECDが通信メッセージを受信することができなかった可能性があるかどうかを判定することができる。
メッセージングサービス104は、1つまたは複数のサーバーコンピューティング装置を用いて実装され得る。例示的な1つの設定は、プログラム命令データを記憶するための複数の処理コア、揮発性RAMメモリおよび不揮発性記憶装置と、メッセージ応答データベース108および受信者データベース112にデータを記憶させるレイド(redundant array of independent disks)(RAID)と、メッセージ分配サーバー116およびメッセージ応答ゲートウェイ120がオンラインデータ記憶サービス128、管理用端末132、およびMECD140A〜140Bと通信できるようにする1つまたは複数のハードウェアネットワークインターフェース装置と、を含む、サーバーを含む。メッセージ応答データベース108、受信者データベース112、およびアイデンティティデータベース122は、構造化照会言語(SQL)データベース、階層的データベース、キーバリューストア、またはメッセージ応答およびメッセージ受信者情報へのアクセスを提供する任意の他の構造化データ記憶構成を用いて、実装され得る。メッセージ分配サーバー116およびメッセージ応答ゲートウェイ120は、メッセージングサービス104の1つまたは複数のコンピューターで実行されるソフトウェアの別々の部品として実装されてよく、あるいは、単一のコンピューター上で実行される単一のソフトウェアプログラムは、メッセージ分配サーバー116およびメッセージ応答ゲートウェイ120双方の機能性を実装することができる。
図1のMECDは、種々の製造業者からのさまざまな異なる装置フォームファクターを含み、また、種々のタイプのシステムソフトウェアを含む。例えば、MECD140Aは、タブレット型コンピューターであり、MECD140B〜140Dは、異なるモバイルオペレーティングシステムを動作させ得る、異なる製造業者からのスマートフォンである。MECD140A〜140Dはそれぞれ、MECDが通知メッセージを受信し、優先度が高い通信メッセージを取得できるようにするメッセージングソフトウェアアプリケーションを実行するように設定される。メッセージングシステム100が、優先度が高いメッセージを送信すると、MECD140は、広範なモードで動作することができる。例えば、MECD140Aは、フォアグラウンドでアプリケーションプログラムを実行していて、メッセージングアプリケーションは中断され、MECD140Bは、バッテリー電力を節約するためにスリープモードにあり、MECD140Cは、新しいメッセージを確認するためにオンラインデータ記憶サービス128にポーリングしており、MECD140Dは、新しい通信メッセージを作るために使用されている。以下でさらに詳細に説明するように、MECD140A〜140Dは、MECDが低電力スリープモードにあるか、またはメッセージングアプリケーションが中断している場合であっても、メッセージングアプリケーションをアクティブ化して通信メッセージを迅速に取得するために、メッセージングシステム100と共に使用されるように再設定される。
例示的な先行技術のMECD200の概略的ブロック図が図2に描かれている。MECD200は、いくつかのスマートフォン、PDA、タブレットなどのいずれかで一般的に使用される構成要素を含む。以下でさらに詳細に説明するように、先行技術のMECD200は、オンラインのメッセージングサービス100を用いて、待ち時間を減らして優先度が高いメッセージを受信することができるように、この文書で説明したように再設定され得る。MECDの構成要素は、ハウジング202内に保持されており、このハウジング202は、動作中に片手または両手で保持される、典型的には軽量のハウジングである。MECD200の構成要素は、作動中に電力を消費し、バッテリー260から電力を受け取る。バッテリー260は、典型的には、リチウムイオンバッテリーまたは他の市販のバッテリーであるが、燃料電池、またはMECD200と共に使用するのに適した任意の他のエネルギー貯蔵装置であってもよい。
コントローラ204が、ディスプレイ208、1つまたは複数の入力装置212、1つまたは複数の無線トランシーバー216、データを読み書きするための入力/出力(I/O)インターフェース228、スピーカー252、ヘッドホンジャック248、および振動機構244に通信可能に接続される。ディスプレイ208は、典型的には、ハンドヘルドのモバイル電子通信装置内に収容されるのに十分小さいスクリーンであり、一般的な例は、液晶ディスプレイ(LCD)または有機発光ダイオード(OLED)パネルを用いている。ディスプレイ208は、テキストおよびグラフィックをカラーおよびモノクロで出力し、装置周囲の周辺光が少ないかまたは全くない場合にディスプレイの内容を見ることができるように、光を発するよう設定され得る。ディスプレイ208は、コントローラ204により生成された信号に応じて、テキストまたはグラフィックデータを出力する。
MECD200内部の少なくとも1つの入力装置212は、ユーザーがコントローラ204と通信し、またコントローラ204にコマンドを送ることを可能にする。一実施形態では、入力装置212は、ディスプレイ208と一体化されたタッチスクリーンセンサーを含む。MECDは、ディスプレイ208上に、ボタン、仮想キー、および他の入力グラフィックなどの入力制御手段を提示しており、ユーザーは、ディスプレイ208の表面に触れて、タッチスクリーン入力装置を通じてデータを入力し、かつ機能を選択する。入力装置212はまた、数字キーパッドまたはQWERTY配列のキーボードなどの、物理的キー入力装置を含み得る。他の入力装置は、タッチパッド、ジョイスティック装置、およびトラックボールを含む。さらに別の入力装置は、カメラを使用して、ジェスチャーおよび他の視覚的情報を入力として記録する。口頭のコマンドを記録するためのマイクロホンを含む、聴覚的入力装置も使用され得る。任意の互換性のある入力装置が、コントローラ204により解読されることのできる電子形式で、入力データをエンコードする。さまざまなカスタマイゼーション設定により、MECD200のユーザーは、ディスプレイ208に示されるメッセージの外観を変化させ、また、MECD200の動作をカスタマイズすることができる。このようなカスタマイゼーションは、ディスプレイ208に示される通信メッセージのフォントの色およびサイズを変えること、グラフィックディスプレイのさまざまな要素のテーマを選択すること、ならびに、代替的な警告音を選択すること、を含む。
コントローラ204は、無線トランシーバー216にも接続され、無線トランシーバー216は、1つまたは複数の無線信号プロトコルおよびデータネットワークを用いてデータを送受信することができる。無線トランシーバー216は、コントローラ204が、異なる無線ネットワークを通じてデータを送受信し、無線ネットワークのうちの1つに接続された別の装置またはサーバーから送信されたコマンドメッセージを受信することを可能にする。
さまざまな実施形態では、MECDは、2つまたは3つ以上の無線トランシーバーモジュールを含んでよく、各モジュールは、別個の通信プロトコルを使用するように設定される。これらのプロトコルは、異なる動作周波数および変調方式を使用し得る。無線トランシーバー216は、IEEE802.11ファミリーのプロトコルを採用するWLANネットワークと通信する1つのトランシーバーモジュール218と、3Gもしくは4Gネットワークなど、WWANネットワークと通信する別のトランシーバーモジュール220と、を含む。3Gデータネットワークの例にはEvDOおよびUMTSが含まれ、4Gデータネットワークの例にはLTEおよびWiMAXが含まれる。WLANまたはWWANのいずれかとの接続を確立したら、ネットワーク内のコンピューターは、コントローラにネットワークアドレスを割り当て、このネットワークアドレスは、典型的には、IP標準のバージョン4(IPv4)またはバージョン6(IPv6)いずれかで生成されたインターネットプロトコル(IP)アドレスである。無線トランシーバー216の代替的な実施形態は、ソフトウェア無線システムを使用して、単一の物理的トランシーバーが、異なる信号プロトコルを用いて異なる周波数帯で動作することを可能にする。例えば、トランシーバー内のプロセッサでソフトウェアを実行している単一の物理的トランシーバーは、コントローラ204から送られたコマンドに応じて、802.11モードまたはWWANモードで動作を切り替えることができる。無線トランシーバー216は、アンテナ224に電気的に接続される。MECD200内の空間を節約するために、単一のアンテナ224が、802.11トランシーバー218およびWWANトランシーバー120の双方と互換性があるように設定され得る。しかしながら、代替的な装置は、1つまたは複数のトランシーバーと共に使用されるように構成された複数のアンテナを採用する。アンテナ224は、電磁スペクトルの赤外線または光学部分で動作する代替的なトランシーバー用の発光素子およびレンズに置きかえられることができる。
引き続き図2を参照すると、コントローラ204は、データ入力−出力(IO)インターフェース228に通信可能に連結される。MECD200では、I/Oインターフェース228は、コントローラ204をランダムアクセスメモリ(RAM)232、動作ソフトウェアを保持するデータ記憶装置236、メッセージおよびユーザーデータを保持するデジタル記憶装置240に動作可能に接続する、共通の電子バスである。代替的なI/Oインターフェースは、コントローラ204と1つまたは複数のメモリおよび記憶装置との間の通信を促進するために、2地点間またはスイッチ型I/Oスキームを含む。RAM232は、通常の動作中にコントローラ204により使用されるコマンド命令および動作データを保持する。RAM232は、典型的には揮発性であり、これは、電力が装置から無くなった場合、RAM内に保持されるデータの内容が消去されることを意味する。システム記憶装置236は、MECD200のさまざまな動作を実行するのに使用される命令を受信するためにコントローラ204が読み取る、1つまたは複数のプログラムのための記憶された機械読み取り可能な命令を保持している。いくつかの実施形態では、システム記憶装置236は、無線トランシーバー216を含む他のシステム構成要素を設定するのに使用される動作命令も保持する。システム記憶装置236は、典型的には、NANDまたはNORフラッシュデバイスなどの不揮発性記憶装置に記憶されて、電力がMECD200から取り除かれた後で、システム記憶装置236に保持される命令コードが再び読み取られることを可能にする。システム記憶装置236のデータ内容は、通常の動作中に変更されないと考えられているので、「ファームウェア」と呼ばれてよいが、定期的に更新されて、MECD200で使用される動作コマンドに対する更新が可能となり得る。
データ記憶装置240は、送受信された通信メッセージ、およびMECD200が使用する他のユーザー情報を記憶する。ユーザー情報は、図2の実施形態ではXMLデータ記録形式で記憶されるユーザーのカスタマイゼーション設定を含む。データ記憶装置240は、先に受信した通信メッセージを、無線ネットワークを通じて再伝送する必要なしに、それらにアクセスすることを可能にする。システム記憶装置236と同様、データ記憶装置240は、典型的には、ユーザーデータの長期保持のための不揮発性装置である。しかしながら、データ記憶装置240は、MECD200の通常の使用中に、記憶されたデータをコントローラ204で読み取り、書き込み、かつ消去するように設定される。データ記憶装置240およびシステム記憶装置236は、オプションとして、単一の物理的装置の論理的に分離したエリアに置かれる。
コントローラ204は、オプションとして、1つまたは複数の音声、視覚、または振動インジケータ装置に接続される。これらの装置は、音を発し、振動を生じ、視覚的キューを提供して、装置の状態についてフィードバックをユーザーに与える。内蔵式スピーカー252およびヘッドホン出力部248を含む音声出力装置は、新しいメッセージを受信した際に可聴警報を与えることができ、また、音声メッセージを再生するように設定され得る。音声出力装置は、コントローラ204が送信する制御信号に応じて変更され得る、調節可能な音量レベルを有する。振動機構244は、一部の設定で鳴り響く可聴警報に加えて、またはその代わりに、振動する。一般的な振動機構は、小さい電気モーターを使用しており、回転する心棒は、その心棒の回転軸の中心を外れてシフトした重りに接続される。また、1つまたは複数のインジケータライト256が、装置の状態を通信し、通信メッセージの到着を示すパターンで、作動または点滅することもできる。異なる色を有する複数のライトが、さらなる情報を提供するために使用されることもできる。例えば、赤色のライトは、優先度が高いメッセージの受信を示すことができ、緑色のライトは、優先度の低いメッセージが受信されたことを示すことができる。
図2は、MECDの機能的構成要素を描いているが、さまざまな代替的なMECD設定が、無線データネットワークを通じて優先度が高いメッセージを送受信するために使用され得る。コントローラ204、無線トランシーバー216、RAM232、システム記憶装置236、およびデータ記憶装置240を含む、MECDの構成要素のうちのいくつかが、システム・オン・チップ(SoC)装置に統合される。
図3Aは、フォアグラウンドソフトウェアアプリケーションがアクティブ化した際に、図2のMECD200などのMECDのプロセッサによるソフトウェアの実行により生じる、MECD動作の表示である。図3Aは、オペレーティング・システム(OS)304、ネットワーク・リスナー・サービス308、フォアグラウンドアプリケーション312、中断したメッセージング・バックグラウンド・アプリケーション316、およびオプションの、中断したバックグラウンドアプリケーション320を描いている。オペレーティング・システム(OS)層304は、アプリケーション・レベル・プログラムの実行を監視し、装置のドライバを通じてMECD200のさまざまなハードウェア構成要素にソフトウェアインターフェースを提供する。コントローラ204およびMECD200の他のハードウェア構成要素は、オペレーティング・システム304のソフトウェア命令に応じた動作を行う。例えば、オペレーティング・システムは、無線トランシーバー216でのデータパケットの送受信を制御するためにハードウェアとソフトウェアとの組み合わせを用いてネットワーク・スタックを実装する。ネットワーク・スタックの一例は、あるバージョンのインターネットプロトコル(IP)および伝送制御プロトコル(TCP)またはユーザーデータグラムプロトコル(UDP)を実装する。ネットワーク・スタックは、MECDが、SIPメッセージ、およびMECDにより使用される他のプロトコルに対応するデータパケットを処理するのを可能にする。ソフトウェア無線を実装するいくつかのMECD装置では、オペレーティング・システム層304はまた、コントローラ204により実行されるソフトウェア命令として、無線トランシーバー216の機能性のいくつかを実装している。OS304は、MECD上で実行される他のソフトウェアアプリケーションの機能を制御し、それらのアプリケーションとMECD内のハードウェアとの間の仲介物として作用して、MECDの信頼性のある保証された動作を確実にする。既存のMECD装置で使用されるオペレーティング・システムの例は、リナックス(Linux)およびリナックスの派生物、例えばアンドロイド(Android)、アップルiOS(Apple iOS)、マイクロソフト・ウィンドウズの携帯型変形体(mobile variants)、およびMECD上で使用されるのに適した任意の他のオペレーティング・システムを含む。
ネットワーク・リスナー・サービス308は、デーモンと呼ばれることもある、バックグラウンドサービスであり、無線データネットワークにMECDがアクセスしたことに応じてMECD200がアクティブ化した際に実行される。いくつかの実施形態では、ネットワーク・リスナー・サービス308は、OS304の一部として実装されるが、他の実施形態では、オペレーティング・システム304は、MECDがアクティブ化されると自動的にネットワーク・リスナー・サービス308を実行する。MECD200では、ネットワーク・リスナー・サービス308は、無線トランシーバー216で受信された、入ってくるメッセージ中のSIPメッセージを聞く。本明細書で使用される場合、用語「聞く(listen)」は、ソフトウェアアプリケーションに対して使用された場合、そのソフトウェアアプリケーションが、所定のパラメータを含むSIPメッセージを形成する1つまたは複数のネットワークパケットを有するメッセージを識別するまで、入ってくるデータパケットを処理することを意味する。例えば、ネットワーク・リスナー・サービス308は、TCPのSIPメッセージ用のポート5060およびUDPのSIPメッセージ用のポート5061など、SIPプロトコルに対応するポート番号を使用して、OS304のネットワーク・スタックと共にネットワークソケットを開き、中断したメッセージング・バックグラウンド・アプリケーション316に対応するSIP招待メッセージを識別することができる。
フォアグラウンドアプリケーション312は、MECDのユーザーがMECDの1つまたは複数の入力および出力装置を通じて手動で実行し制御する、ソフトウェアアプリケーションである。フォアグラウンドアプリケーションは、ウェブブラウザ、メディアアプリケーション、通信アプリケーション、ゲーム、地図作成およびナビゲーションアプリケーション、ユーティリティーなどを含む、MECDで実行される広範なソフトウェアプログラムのうちの任意のものであってよい。MECDのユーザーは、フォアグラウンドアプリケーション312と直接相互作用し、フォアグラウンドアプリケーション312は、典型的には、視覚的または可聴出力を生成する。フォアグラウンドアプリケーション312は、OS304を通じて提供されるサービスと相互作用する動作を実行する。例えば、フォアグラウンドアプリケーション312は、OS304により提供されるソフトウェアインターフェースにアクセスすることによって、メモリからデータを読み書きし、不揮発性データ記憶装置にファイルし、グラフィックを表示し、また、無線トランシーバーを用いてデータを送受信する。
フォアグラウンドアプリケーションを実行する間、1つまたは複数のバックグラウンド・ソフトウェア・アプリケーション320は中断される。中断したアプリケーションに対応するプログラムデータは、依然としてMECDのメモリに記憶されているが、OS304は、中断したアプリケーションがMECDの相当量のリソースを使用してフォアグラウンドアプリケーション312の実行に便宜を図るのを防ぐ。MECDのユーザーは、実行中のアプリケーションを手動で切り替え、中断したアプリケーションを320のうちの1つは、フォアグラウンドアプリケーション312となり得、先のフォアグラウンドアプリケーション312は中断される。
図3Aでは、中断したバックグラウンドアプリケーションのうちの1つは、メッセージングアプリケーション316である。メッセージングアプリケーション316は、メッセージングサービス104に対応する、入ってくるSIPメッセージのパラメータと関連して、ネットワーク・リスナー・サービス308に登録される。例えば、各SIPメッセージのヘッダーは、SIPメッセージの送信者に対応する、統一資源識別子(URI)文字列を含む。メッセージングアプリケーション316は、URIを、ネットワーク・リスナー・サービス308に登録し、ネットワーク・リスナー・サービス308が、対応するURIを含むSIPメッセージを受信すると、ネットワーク・リスナー・サービス308は、別のアプリケーション312がフォアグラウンドにあっても、メッセージングアプリケーション316の動作を再開する。
図3Bは、MECDが低電力「スリープ」モードで動作している場合に、図2のMECD200などのMECD上で実行されるソフトウェアの表示である。低電力モードでは、オペレーティング・システム304は、コントローラ204およびディスプレイ208のGPUなど、MECDのさまざまな構成要素を非アクティブ化し、コントローラ204および無線トランシーバー216のCPUなど、他の構成要素を、低い電力のモードで作動させる。オペレーティング・システム304は、実行し続けるが、MECDが電力使用量を減らす低電力モードである場合、いくつかの動作をオプションとして中断することができる。ネットワーク・リスナー・サービス308は、無線トランシーバー216を通じて受信される、入ってくるSIPメッセージを聞くように動作し続ける。
無線トランシーバー216が無線ネットワークを通じてSIPメッセージを受信すると、ネットワーク・リスナー・サービス308は、SIPメッセージがメッセージングアプリケーション316に対応しているかどうかを識別する。無線トランシーバー216は、さまざまなプロトコルに対応する複数のデータメッセージを受信でき、メッセージングアプリケーション用に意図されていないSIPメッセージも受信することができる。ネットワーク・リスナー・サービス308がSIPメッセージを、メッセージングアプリケーション316に宛てられたものであるとして識別すると、ネットワーク・リスナー・サービス308は、MECDをスリープ状態から目覚めさせるように、OS304への要求を生成する。OS304は、MECDをスリープ状態から目覚めさせ、メッセージングアプリケーション316がそれまで中断されていた場合はメッセージングアプリケーション316をアクティブ化させる。その後、メッセージングアプリケーション316は、1つまたは複数の通信メッセージをダウンロードし、MECDは、メッセージを表示し、また、新しいメッセージについてユーザーに警告する。
図3Aおよび図3Bは、MECDの2つの動作モードを描いているが、いくつかのMECDの実施形態は、電力の消費量を制御するために複数の動作モードを含む。例えば、代替的な1つの設定では、MECDは、図3Bのスリープモードから中間動作モードへ戻り、メッセージングアプリケーション316をアクティブ化して、通信メッセージを取得する。MECDの出力装置は、MECDが可聴警報を生成し、ユーザーがメッセージを見るためにディスプレイを手動でアクティブ化するまで、アクティブ化されない。
図4は、メッセージングサービスから優先度が高いメッセージを受信すると共に、バッテリー寿命を改善するために低電力モードで動作するように、MECD140A〜140Dのうちの1つなどのMECDを動作させるプロセス400を描いている。以下の議論では、機能または動作を実行するプロセスへの言及は、MECD200のコントローラ204などのコントローラを参照し、このコントローラは、メモリに記憶されたプログラム命令を実行して、その機能または動作を実行するように1つまたは複数の構成要素を操作するものである。プロセス400は、例示目的で、図1のメッセージングシステム100および図2のMECD200を参照して説明する。
MECDで実行されているメッセージングアプリケーションが新しい通信メッセージについてオンラインデータ記憶サービスにポーリングすると(ブロック404)、プロセス400が始まる。MECD200では、メッセージングアプリケーションは、コントローラ204がメッセージングアプリケーションの実行を開始すると、新しいメッセージについてポーリングするように設定される。メッセージングアプリケーションは、MECD200がアクティブ化されるか、切断された後で無線データネットワークに接続されると、MECD200に宛てられたメッセージについてポーリングする。新しいメッセージが利用可能である場合(ブロック408)、MECD200は、次に、オンラインデータ記憶サービスからそのメッセージを取得する(ブロック412)。図1の実施例では、MECDは、適切なプロトコルを使用して、オンラインデータ記憶サービス128から通信データをダウンロードする。MECDは、オプションとして、首尾よくメッセージを取得した後で通信メッセージを削除するために、オンラインデータ記憶サービス128に削除メッセージを送ることができる。MECD200とオンラインデータ記憶サービス128との間の通信チャネル、ならびに通信メッセージの内容のいずれかまたは双方が暗号化されて、通信メッセージの内容の傍受を防ぐことができる。
いったん通信メッセージが取得されると、MECDは、1つまたは複数の送達受領メッセージをメッセージングサービスに送り、MECDが通信メッセージを取得したことを確認する(ブロック414)。MECDは、通信メッセージが首尾よく取得されると、自動的に、メッセージングサービス104のメッセージ分配サーバー116に送達受領メッセージを送信する。送達受領メッセージは、MECDが通信メッセージを首尾よくダウンロードしたことを示すために送信されるが、MECDのユーザーがそのメッセージをの受け取りを確認し、それに応答したことは、必ずしも示さない。
送達受領メッセージは、取得した通信メッセージに対応する識別子を含む。例えば、各通信メッセージは、メッセージングサービス104が送達受領メッセージを通信メッセージと関連付けることができるように、送達受領メッセージにコピーされた独自の識別子番号を含み得る。別の設定では、メッセージングサービス104および受信者のMECDは双方、通信メッセージの内容に対応する数字のハッシュ値を生成する。メッセージングサービス104は、そのハッシュ値をメッセージ応答データベース108に記憶し、送達受領メッセージは、MECDに通信メッセージが首尾よく送達されたことを示すよう、同じハッシュ値を含む。1つの設定では、MECDは、送達された通信メッセージそれぞれについて、送達応答メッセージを生成および送信する。別の設定では、MECDは、複数の通信メッセージのための識別子を含む単一の送達受領メッセージを送信する。MECDが短期間でオンライン記憶サービス128から複数の通信メッセージを取得した場合、単一の送達受領メッセージは、それらの通信メッセージそれぞれのための識別子を含み得る。
MECDは、各メッセージに割り当てられた優先度を参照して、取得した通信メッセージのうちの1つまたは複数を表示する(ブロック416)。各通信メッセージのメタデータは、割り当てられた優先値を含み、これは、通信メッセージの重要性を示す、テキスト値、数値、または任意の他の値であってよい。例えば、メッセージは、「低い」、「通常の」、「高い」優先度を有することができる。MECDのメッセージングアプリケーションは、優先度レベルに基づいてメッセージの表示を制御する。1つの設定は、ユーザーがメッセージングアプリケーションを手動で選択し、メッセージを見る場合に、メッセージリストの一部として、優先度の低いメッセージを表示する。MECDは、通常の優先度のメッセージを受信したことに応じて、通知を表示するか、または単一の可聴警報を生成して、新しいメッセージの存在についてユーザーに警告する。ユーザーは次に、MECDアプリケーションをアクティブ化し、そのメッセージを見る。優先度が高いもの(high priority)をMECDが受信すると、メッセージを受信したときにユーザーが異なるフォアグラウンドアプリケーションを使用していても、MECDは、すぐにメッセージングアプリケーションをアクティブ化し、優先度が高いメッセージを表示する。さらに、MECDは、ユーザーに優先度が高いメッセージについて警告するために可聴および振動の警告を連続して作動させることができる。
プロセス400では、MECDが、優先度レベルの異なる複数のメッセージをダウンロードすると、メッセージングアプリケーションは、メッセージの優先度に基づいて出力を選択する。例えば、メッセージングアプリケーションが、優先度の低い2つのメッセージをダウンロードし、その後、優先度が高いメッセージをダウンロードした場合、優先度が高いメッセージに対する応答をユーザーが入力するまで、優先度が高いメッセージの表示が、優先度の低いメッセージの表示に優先する。
通信メッセージの取得後、MECDは、応答メッセージをメッセージングサービスに送る(ブロック420)。メッセージングシステム100では、オンラインデータ記憶サービス128から通信メッセージを取得したMECD140A〜140Dが、応答メッセージをメッセージングサービス104に送る。応答メッセージは、元の通信メッセージの内容に基づいて、異なる応答データを含み得る。例えば、応答メッセージは、単に、MECDが通信メッセージを取得したこと、およびMECDのユーザーがメッセージの受信を確認するために、画面上のボタンを押すか、または何らかの他の行動をとったこと、を確認することができる。他の通信メッセージは、通信メッセージ中において、ユーザーに、質問、例えばイエスかノーで答えさせる質問、または質問に対する多肢選択の回答(multiple-choice responses to questions)を提示する。応答メッセージは、ユーザーが質問に対して入力する回答を含む。メッセージングサービス104は、元の通信メッセージに関連して、応答メッセージを応答メッセージデータベース108に記憶させる。メッセージングサービスの管理者、および通信メッセージを送信した当事者は、メッセージ応答ゲートウェイ120を通じて、メッセージの受信者からの応答をレビューする。
プロセス400では、MECDは、オンラインデータ記憶サービスにポーリングすることができるが、新しい通信メッセージは受信しない(ブロック408)。メッセージングアプリケーションは、メッセージが存在しない場合は、メッセージングサービスの次のポーリングを遅らせる。MECDは、ポーリングの回数が所定のリトライ閾値未満である間は、間隔を広げてポーリングを続ける(ブロック424)。その後の各ポーリングでは、メッセージングアプリケーションは、新しいメッセージについてオンラインデータ記憶サービスにポーリングする前に、遅延を増やし、待機する(ブロック428)。例えば、1つの設定では、メッセージングアプリケーションは、利用可能な新しい通信メッセージがない場合に、オンラインデータ記憶サービス128にポーリングする前に15秒間待機する。2回目のポーリング要求後に利用可能な新しい通信メッセージがない場合、遅延は30秒まで増大する。遅延は、ブロック424のリトライ閾値を超えるまで、後続の各ポーリング要求の間で倍加する。
いったんリトライ閾値を超えたら(ブロック424)、メッセージングアプリケーションは、オンラインデータ記憶サービスのポーリングを中断する(ブロック428)。オンラインメッセージングサービスのポーリングは、CPUリソースおよび無線トランシーバーの双方を使用するので、メッセージングアプリケーションは、MECDの電力消費量を減らすために、ポーリングプロセスを中断する。MECDのOSはまた、ユーザーが他のフォアグラウンドアプリケーションを実行する間、メッセージングアプリケーションを中断するか、またはスリープモードに入って電力消費量をさらに減らすこともできる。
図3Aおよび図3Bに描かれるように、ネットワーク・リスナー・サービス308は、新しい通信メッセージがオンラインデータ記憶サービス128において利用可能であることを示す、SIP招待メッセージなど、入ってくる通知メッセージを、メッセージングサービス104から聞き続ける。プロセス400において、MECDは、ネットワーク・リスナー・サービスが適切なSIPメッセージを受信するまで(ブロック440)、メッセージングアプリケーションのポーリング作業を中断し、入ってくるSIPメッセージを聞く(ブロック436)。いったん通知メッセージが受信されたら、MECDのOSは、メッセージングアプリケーションの動作を再開し(ブロック448)、MECDは、新しい通信メッセージについてオンラインデータ記憶サービス128にポーリングする(ブロック452)。プロセス400はその後、ブロック412に戻って、前述したように、新しいメッセージを取得および表示する。
プロセス400では、MECDは、通信メッセージデータを取得するためにポーリング技術を使用するが、新しい通信メッセージが利用可能でない場合はポーリングを停止して、MECDの電力使用量を減らす。従来的MECDでは、メッセージングアプリケーションが、追加メッセージについて連続してポーリングしなければならず、さらに電力を消費することになるか、または、アプリケーションが、ユーザーが新しいメッセージについて手動でポーリングするのを待たなければならず、これにより、優先度が高いメッセージをユーザーが受信する前に長い遅延が生じ得ることになるか、のいずれかである。既存の「プッシュ」通知サービス、例えばAPNSは、ユーザーが新しいメッセージについて手動でポーリングするためにメッセージングアプリケーションを手動でアクティブ化することを要求する、画面上の表示を生成するにすぎない。プッシュ通知の送達は、MECDがスリープ状態であるときにはしばしば信頼できないが、プロセス400に記載される通知メッセージは、MECDが低電力モードで動いている場合であっても、確実に送達される。したがって、プロセス400は、MECDが、最小限の遅延で優先度が高い通信メッセージを受信するのを可能にすると共に、MECDが、低電力モードで動作してバッテリー寿命を延ばすことも可能にする。
プロセス400は、メッセージングシステム100におけるMECDの動作を説明している。図5は、タイム・クリティカルなメッセージのMECDへの送達を可能にするため、MECDと共にメッセージングサービスを作動させるためのプロセス500を描いている。以下の議論では、機能または動作を行うプロセスへの言及は、その機能または動作を行うように1つまたは複数の構成要素を操作するためにメモリに記憶されたプログラム命令を実行する、コントローラまたはプロセッサ、例えばメッセージングサービス104の1つまたは複数のプロセッサを参照する。プロセス500は、例示目的で、図1のメッセージングシステム100および図2のMECD200を参照して説明する。
メッセージングシステム100のユーザーまたは管理者が、一人または複数の受信者を対象とした通信メッセージを送信すると(ブロック504)、プロセス500が始まる。システム100では、ユーザーは、MECDのメッセージングアプリケーションを用いて新しい通信メッセージを生成する。例えば、図1は、インターフェースを備えたMECD140Dを描いており、このインターフェースは、ユーザーがメッセージの受信者を選択し、メッセージを入力することを可能にするものである。受信者リストは、個々の受信者の識別子、および、メッセージングサービス104が受信者データベース112内に記憶している所定の受信者群の識別子を含むことができる。メッセージは、テキスト、グラフィック、音声、および動画を含むことができる。さらに、メッセージは、受信者の自動応答を含み得る。例えば、会議告知メッセージは、受信者がその会議に出席するかどうかについて、「はい」または「いいえ」で答えるよう受信者を促す。送信者、例えばMECDを使用していない管理者は、コンピューター端末132を使用して通信メッセージを送信することもできる。通信メッセージおよび受信者のリストは、データネットワーク124などのデータネットワークを通じて、MECD140Dまたはコンピューティング端末132から、メッセージングサービス104に送られる。
メッセージングサービス104は、メッセージを受信し、受信者のMECDにアクセス可能なオンライン記憶サービスに、そのメッセージの内容を記憶させる(ブロック508)。メッセージングシステム100では、メッセージングサービス104は、通信メッセージをオンラインデータ記憶サービス128に転送する。図1の設定では、オンラインデータ記憶サービス128は、メッセージングサービス104とは別個のデータサービスである。一実施形態では、メッセージの受信者はそれぞれ、オンラインデータ記憶サービス128で、以前に設定されたアカウントを有している。メッセージングサービス104のメッセージ分配サーバー116は、通信メッセージを、メッセージ受信者それぞれのメッセージキューまたは他のデータ記憶アカウントにコピーする。
プロセス500では、オンラインデータ記憶サービス128に記憶されたメッセージは、MECD140A〜140Dによる取得に利用可能である。オンラインデータ記憶サービス128にアクティブにポーリングしているMECD、例えばMECD140Cは、新しいメッセージが利用可能になると、新しいメッセージを取得および表示する。他のMECD装置、例えばMECD140Aおよび140Bは、別のフォアグラウンドアプリケーションを実行しているか、または、メッセージングアプリケーションが中断されるスリープモードにある。受信者それぞれに対応するMECDが、記憶された通信メッセージを迅速に取得することを確実にするため、メッセージ分配サーバー116は、メッセージ受信者それぞれのMECDに通知メッセージを送信する(ブロック512)。
前述したように、あるタイプの通知メッセージは、SIPメッセージ、例えばSIP招待メッセージである。メッセージ分配サーバー116は、受信者データベース112に記憶されたアドレス情報を参照して、または、動作中に頻繁にネットワークアドレスを変更するMECD装置のためのモバイルドメインネームサービス(DNS)などの、ネームサービスを参照して、MECDそれぞれの、ネットワークアドレス、例えばIPアドレスを識別する。通知メッセージを受信するMECDは、スリープモードから動作を再開するか、または、中断したメッセージングアプリケーションをアクティブ化して、プロセス400に記載されるように迅速に通信メッセージを取得する。MECDは、通信メッセージを首尾よく取得したことに応じて、送達受領メッセージをメッセージ分配サーバー116に送信する。
メッセージ分配サーバー116が所定のタイムアウト期間の後で送達受領メッセージを受信しない場合(ブロック516)、メッセージ分配サーバー116は、通知メッセージを再送信することができる(ブロック520)。優先度が高いメッセージについては、分配サーバー116は、MECDが首尾よく通信メッセージを取得するまで、または、通信メッセージに関連するタイムスタンプが切れるまで、一定の間隔で通知メッセージをMECDに送信する。例えば、優先度が高い通信メッセージは、通信メッセージの最初の伝送から1時間の満了期間(expiration time)を有し得る。メッセージ分配サーバー116は、MECDが通信メッセージを取得しない場合に1時間の期間が満了するまで、通知メッセージをMECDに送信する。例えば、分配サーバー116は、MECDが通知メッセージを取得して、送達受領メッセージをメッセージ分配サーバー116に首尾よく送信して通知が首尾よく送達されたことを示すまで、通知メッセージを30秒間隔で送信する。別の実施形態では、メッセージ分配サーバー116は、受領メッセージがMECDから受信されるまで、ますます頻繁に通知メッセージを送信する。一実施形態では、メッセージ分配サーバー116は、第1の通知メッセージを送信し、300秒の所定のタイムアウトにわたり待機する。第1のタイムアウトが切れる前に受領メッセージが受信されない場合、メッセージ分配サーバー116は、例えば150秒の、より短いタイムアウトの第2の通知メッセージを送信する。メッセージ分配サーバー116は、分配サーバー116が所定の最小間隔(例えば18.75秒)に達するまで、次第に短くなる間隔で追加の通知メッセージを送信し、その所定の最小間隔で通知メッセージを送信し続ける。メッセージ分配サーバー116は、MECDが通知メッセージのうちの1つに対し送達受領メッセージで応答するまで、または、最大数の通知メッセージが送信され、メッセージングサービス104がメッセージ送達の失敗を識別するまで、通知メッセージを送り続ける。優先度の低いメッセージについては、メッセージ分配サーバー116は、MECDにただ1つの通知メッセージを送信するように設定され得る。MECDがアクティブ化されて無線ネットワーク136に接続されると、MECDは、優先度の低いメッセージを迅速に取得するが、MECDが通知メッセージを受信しそこなった場合、MECDは、しばらく経って優先度の低いメッセージを取得することもできる。
システム100では、メッセージングサービス104は、通知メッセージで特定されたMECDから送達受領メッセージを受信するまで、繰り返して通知メッセージを送信する。通知メッセージは、典型的には、通知メッセージの受領を保証せず、かつ送達の失敗を示すためにメッセージングサービス104に直接的なフィードバックを提供しない、ネットワークプロトコルを用いて、送信される。例えば、メッセージ分配サーバー116は、MECDがSIP招待メッセージを受信したという直接的確認を受信しない。タイムアウトが切れた際の通知メッセージの再伝送により、メッセージングサービス104が通信メッセージのより確実な送達をもたらすことができるか、または、MECDが長期間にわたり通知メッセージを受信できない場合にシステム100の管理者もしくは他のユーザーに警告することができる。
メッセージングシステム100では、メッセージングサービス104は、オプションとして、オンラインデータ記憶サービス128における通信メッセージの状態を確認することができる。通信メッセージは、MECDが首尾よくメッセージを取得すると、削除される。したがって、通信メッセージがオンラインデータ記憶サービスから削除されている場合、メッセージングサービス104は、例えばメッセージングサービス104とMECD140A〜140Dのうちの1つまたは複数との間での断続的ネットワーク故障により、メッセージングサービス104が送達受領メッセージを受信しなかった場合であっても、通信メッセージの送達を示すために、メッセージ応答データベース108を更新することができる。別の実施形態では、通知メッセージを受け取った直後ではなく、通信メッセージがオンラインデータ記憶サービス128から首尾よく取得された後で、MECDは送達受領メッセージを送信する。受領メッセージは、オプションとして、受領メッセージ中に、取得された通信メッセージを識別するメッセージ要約または他の識別データを含む。
送達受領メッセージがMECDから受信されずに、通知メッセージが1回または複数回伝送された後で、メッセージ分配サーバー116は、MECDが送達受領メッセージを送信していないことを示すために、メッセージ応答データベース108を更新する(ブロック522)。例えば、MECDが非アクティブ化されるか、または、任意の無線ネットワークの範囲外にある場合、メッセージングサービスは、受信者が通信メッセージを受信できない可能性が高いことを送信者に知らせるために、応答データベースを更新する。
MECDが通信メッセージを取得して、適切な送達受領メッセージをメッセージングサービス104に送ると、メッセージ分配サーバー116は、通信メッセージが首尾よく送達されたことを示すために、メッセージ応答データベース108を更新する(ブロック524)。メッセージ受信者のMECDのための通知を生成した後、メッセージングサービス104は、受信者からの応答を待つ(ブロック528)。MECDは、プロセス400を参照して前述したように、オンラインデータサービス128から通信メッセージを取得し、メッセージを受信ユーザーに対して表示する。ユーザーは、通信メッセージで要求される任意の応答を入力し、MECDは、応答メッセージをメッセージ応答ゲートウェイ120に送信する。メッセージ応答ゲートウェイ120は、メッセージ応答データベースにその応答を記憶させる(ブロック532)。
メッセージングサービス104が通信メッセージに対する応答を受信すると、メッセージ応答ゲートウェイ120は、その応答の内容、および受信状態を、送信者に提示する(ブロック536)。1つの設定では、メッセージ応答ゲートウェイ120は、通信メッセージに対する応答をウェブページとして送信者に提示する、ウェブサーバーを含む。別の実施形態では、メッセージ応答ゲートウェイ120は、通信メッセージを送信したMECDに対応するアカウントにおけるオンラインデータ記憶サービス128に応答を転送する。応答、および応答の状態は、ユーザーが通信メッセージに対して応答すると、動的に更新される。送信者は、通信メッセージを取得しておらず送達受領メッセージを送信しなかったMECDを識別することができ、このことは、それらのMECDが一時的に通信メッセージを受信できないことを示し得る。送信者または管理者は、MECDが通信メッセージを取得し受領メッセージを送信したが、MECDユーザーがまだ通信メッセージに応答していない、MECDを識別することもできる。したがって、プロセス500は、通信メッセージの受信者が通信メッセージを受信しているか、または通信メッセージを受信していないかを、送信者が確認し、通信メッセージへの応答をレビューすることを可能にする。図6は、3つの独立したメッセージングシステム602A、602B、602Cを含む通信システム600を描いており、これらのメッセージングシステムはそれぞれ、単一のMECD640とメッセージを送受信するように設定される。システム600では、メッセージングシステム602Aは、ネットワーク124を通じてMECD640に通信可能に連結された、メッセージングサービス604A、オンラインデータ記憶サービス628A、および管理用端末632Aを実装する、1つまたは複数のコンピューティング装置を含む。メッセージングサービス604A、オンラインデータ記憶サービス628A、管理用端末632Aはそれぞれ、システム100のメッセージングサービス104、オンラインデータ記憶サービス128、管理用端末132をそれぞれ参照して前述したのと同じように設定される。
図6では、MECD640は、システム100で前記したような、スマートフォン、タブレット、PDA、または他の携帯用電子装置である。図6の設定では、MECD640は、MECD640のユーザーに割り当てられた複数のアイデンティティ652、654、656で、通知メッセージを受信し、通信メッセージを取得し、通信メッセージを送信するように設定される。図6の実施例では、ユーザーは、通信システム602Aについてアイデンティティ「A」652を、通信システム602Bについてアイデンティティ「B」654を、通信システム602Cについてアイデンティティ「C」を割り当てられる。アイデンティティデータ652〜656は、通信システム602A〜602Cそれぞれの登録ユーザーと関連付けられた受信者アドレスに宛てられた通信メッセージを取得するのに使用される認証情報を含む。MECD640では、データ記憶メモリ240が、役割とアイデンティティとの間の関係644、646、648、650に対応するデータを記憶する。各組の役割−アイデンティティデータは、対応する役割に関連してMECDに送信された通知および通信メッセージを含む。いくつかの実施形態では、役割−アイデンティティデータは、登録ユーザーのアイデンティティの認証情報に加えて、割り当てられた役割に送信された通信メッセージをMECD640が取得できるように、追加の認証情報を含む。役割データは、オプションとして、MECD640のユーザーが、同じ役割を共有する他のユーザーのMECDにメッセージを送信できるように、同じ役割に割り当てられた他のユーザーの連絡先を含むアドレス帳データを含む。
各アイデンティティは、独立した通信システム602A〜602Bのうちの1つに対応するが、単一のユーザーは、オプションとして、単一の通信システムにおいて複数のアイデンティティを割り当てられる。例えば、図6のMECD640は、2つのユーザーの役割−アイデンティティ関係644、646と共に描かれている。これらの役割−アイデンティティ関係644、646の双方が、通信システム602Aに登録されたアイデンティティ「A」652を示す。役割およびアイデンティティデータの組644、646は、通信システム602Aのユーザーアイデンティティ「A」の異なる役割に対応する、「A1」、「A2」とそれぞれ示された役割をさらに含む。図6には明確に描かれていないが、単一のユーザーは、オプションとして、単一の通信システムについて複数のアイデンティティを割り当てられる。例えば、MECD640のユーザーは、通信602Aの標準ユーザーに対応するアイデンティティと、通信システム602Aの管理者に対応する別のアイデンティティと、を割り当てられる。ユーザーは、2つのアイデンティティのいずれかを用いて通信システム602Aにアクセスするのに別々の認証動作を実行する。役割−アイデンティティデータ648は、通信システム608Bに関連するアイデンティティ「B」および役割「B1」に対応し、役割−アイデンティティデータ650は、通信システム608Cに関連するアイデンティティ「C」および役割「C1」に対応する。
動作中、通信システム602A〜602Cそれぞれの管理者は、アイデンティティおよび役割をMECD640のユーザーに割り当てる。例えば、通信システム602Aでは、管理者は、管理用端末632Aを使用し、メッセージングサービス604Aの受信者データベース112とアイデンティティおよび役割データベース122とを更新して、選択されたアイデンティティおよび役割データ644、646を、MECD640のユーザーアカウントおよび対応するネットワークアドレスと関連付ける。MECD640は、メッセージングサービス604Aから通知メッセージを受信して、新しいアイデンティティもしくは役割の追加、またはMECDの既存のアイデンティティもしくは役割の除去を示す。いくつかの実施形態では、MECD640が新しい役割もしくはアイデンティティに対応する通知メッセージを受信すると、MECD640は、その役割もしくはアイデンティティに対応するこれまでの通信メッセージの履歴を取得する。例えば、MECD640は、MECDが役割A1を有するという通知メッセージを受信したことに応じて、オンラインデータ記憶サービス628Aから、役割−アイデンティティデータ644の役割A1に対応する通信メッセージのバックログを取得する。
通信システム600では、メッセージングシステム602A〜602Cは、単一のユーザーに対応する単一のMECDと通信する異なる組織的存在により動作されるメッセージングシステムを描いている。例えば、一部の医師および他の医療専門家は、複数の医療機関に勤務している。図6の実施形態では、3つの異なる医療機関が、メッセージングシステム602A〜602Cを独立して動作させる。ユーザーは、医師または他の専門家であり、役割−アイデンティティ関係644〜650により特定された対応するアイデンティティ652〜656および役割を用いてメッセージングシステム602A〜602Cそれぞれと通信するように、MECD640における単一のソフトウェアアプリケーションの実行のみを必要とする統合ユーザーインターフェースで、メッセージングシステム602A〜602Cそれぞれからの通知および通信メッセージを提示するように設定された単一のMECD640を用いてメッセージングシステム602A〜602Cのそれぞれとメッセージを送受信する。よって、システム600により、ユーザーは、独立した通信システム602A〜602Cと相互作用するために複数のMECDを使用したり、複数のソフトウェアアプリケーションを使用したりする必要なしに、複数の通信システムと相互作用することができる。MECD640は、ユーザーおよびそのユーザーのMECD640に割り当てられた1つまたは複数のアイデンティティおよび役割と関連する、通知メッセージおよび通信メッセージを受信する。
システム600では、MECDは、オプションとして1つまたは複数の別個のメッセージングシステムと関連する、1つまたは複数のアイデンティティおよび役割を有するものとして描かれる。図7は、MECDと関連するアイデンティティおよび役割を管理するためのプロセス700を描いている。以下の議論では、機能または動作を実行するプロセスへの言及は、その機能または動作を実行するように1つまたは複数の構成要素を動作させるためにメモリに記憶されたプログラム命令を実行するコントローラを参照する。プロセス700は、例示目的で、図1のメッセージングシステム100および図6のシステム600を参照して説明する。
プロセス700は、ユーザーアカウントと関連するMECDのアイデンティティに関して、役割の割り当てから始まる(ブロック704)。システム100の実施形態では、管理用端末132は、アイデンティティおよび役割データベース122におけるアイデンティティおよび役割のリストを含むユーザーインターフェース表示を提示する。アイデンティティは、通信システムの登録ユーザーの加入プロセス中に生成される。アイデンティティおよび役割は、受信者データベース112のMECDネットワークアドレスおよび関連するユーザー情報と関連付けられる。管理者は、選択されたユーザーアカウントのアイデンティティについて、選択された役割を割り当てる。前述したように、管理者は、操作上、複数の役割を単一のアイデンティティに割り当て、異なるユーザーアカウントの複数のアイデンティティは、オプションとして、単一の役割と関連付けられる。
プロセス700は、メッセージングサービスが、その役割に割り当てられたユーザーのアイデンティティと関連するMECDに1つまたは複数の通知メッセージを送信すると、継続される(ブロック708)。例えば、通信システム600では、メッセージングサービス604Aは、通知メッセージをMECD640に送信し、役割−アイデンティティデータ646に描かれるように、役割「A2」が、MECD640のアイデンティティ「A」に割り当てられたことを、MECDに知らせる。一実施形態では、MECD640は、受領メッセージをメッセージングサービス604Aに送信して、MECD640が役割およびアイデンティティ関係を入手したことを確認する。最初の通知メッセージは、オプションとして、証明書情報を含み、これにより、MECD640は、追加の通知メッセージを受信し、オンラインデータ記憶サービス628Aから役割「A2」646に宛てられた通信メッセージを取得することができる。
MECD640は、オンラインデータ記憶サービス628Aからアイデンティティおよび役割データ646に宛てられた通信メッセージを取得する(ブロック712)。MECD640は、指定のアイデンティティおよび役割に割り当てられたままであるが、MECDは、指定の役割−アイデンティティ関係646の通信メッセージを識別する、追加の通知メッセージをメッセージングサービス604Aから受信し続ける。MECD640は、通信メッセージをオンラインデータ記憶サービス628Aから取得し、受領メッセージを送信して、通信メッセージを受け取ったことを確認し、また、MECD640のユーザーからのフィードバックをメッセージングサービス604に提供する。
メッセージングサービス602A〜602CおよびMECD640は、プロセス400および500で前述したのと同じように、役割−アイデンティティ関係644〜650それぞれについてメッセージを送受信する。個別の受信者アドレスまたは受信者アドレス群に対応するアイデンティティにではなく、役割に通信メッセージを送信するために、送信装置は、その役割の表示名を通信メッセージの受信者として選択する。例えば、役割「A2」646は、「待機中の医師」という人間が読み取り可能なタイトルを含む。メッセージングシステム602Aのユーザーは、待機中の医師の役割のメンバー用のデフォルトの受信者アドレスを入力する必要なしに、通信メッセージの受信者を、待機中の医師の役割として選択する。メッセージサービス604Aは、アイデンティティおよび役割データベース122の役割および対応するアイデンティティと関連する、受信者データベース中の適切な受信者アドレスを識別し、メッセージングサービス604は、通知メッセージを、MECD640、およびその役割と関連する他のMECDに送信する。
プロセス700中、MECDのユーザーと関連するアイデンティティおよび役割のうちの1つまたは複数が、取り消され得る(ブロック716)。例えば、通信システム600では、管理者は、管理用端末632Aを使用して、アイデンティティおよび役割データベース122において、役割「A1」および「A2」のいずれかまたは双方と、アイデンティティ「A」との間の関連性を取り除く。メッセージングシステム602Bおよび602Cの管理者は、役割−アイデンティティデータの組648、650それぞれにおいて、役割−アイデンティティの関連性「B1」−「B」および「C1」−「C」を取り消すように、メッセージサービス604Bおよび604Cを同様に設定する。役割とアイデンティティとの間の関係は、いくつかの理由で取り消され得る。例えば、MECD640のユーザーが限られた期間、メッセージングシステム602Bに対応する施設で働いている場合、メッセージングシステム602Bの管理者は、ユーザーがその施設を退職した際にアイデンティティ「B」の役割「B1」を取り消す。さらに、管理者は、オプションとして、アイデンティティ「B」全体をシステムから削除して、ユーザーが通信システム602Bを用いて何らかの通信メッセージを送信または受信することを妨げる。
別の設定では、役割は、定期的に、アイデンティティに割り当てられ、かつアイデンティティから取り消される。例えば、メッセージングシステム602Aでは、MECD640のユーザーは、ユーザーがメッセージを受信するために待機していて手が空いている(available on-call)、施設でのシフト中に、役割−アイデンティティデータ646のアイデンティティ「A」と関連付けられた「待機中の医師」、役割「A2」に割り当てられる。シフトの最後に、メッセージングサービス604Aは、MECD640の役割−アイデンティティ関係646を取り消し、次のシフトで待機中の医師となる異なるMECDユーザーのアイデンティティにその役割を割り当てる。一実施形態では、管理者は、MECDと関連付けられるユーザーの所定のスケジュールに従って定期的に、役割−アイデンティティ関係を割り当て、かつ取り消すように、メッセージングサービス604Aを設定する。役割がアイデンティティから取り消された後は、そのアイデンティティを持つユーザーのMECD、例えばMECD640は、その役割に送信された通信メッセージに対応する追加の通知メッセージを受信しない。アイデンティティが取り消された後、新しい通信メッセージがその取り消されたアイデンティティに送信された場合にメッセージングサービス604Aは、さらなる通知メッセージをMECD640に送信せず、メッセージングサービス604Aは、受信者アドレスが取り消されたアイデンティティに対応する場合、通信メッセージをオンラインデータサービス628Aに転送しない。
プロセス700の間、MECDは、対応するメッセージングシステムにおいてアイデンティティまたは先に割り当てられた役割が取り消されたことに応じて、そのアイデンティティまたは役割に関連するあらゆるデータを、データ記憶メモリ240から削除する(ブロック720)。一実施形態では、メッセージングサービスは、アイデンティティまたは役割と関連するメッセージデータおよび他のデータを削除するようにという指示を有するコマンドメッセージをMECDに送信する。例えば、管理者がメッセージングシステム602Aにおいて役割−アイデンティティ関係646を取り消すと、メッセージングサービス604Aは、アイデンティティ646の取り消しを示すコマンドメッセージをMECD640に送信する。MECD640のメッセージングアプリケーションは、役割−アイデンティティ関係646と関連する、記憶されたあらゆるデータを削除し、MECD640は、オプションとして、アイデンティティデータの削除を確認するために確認メッセージをメッセージングサービス604Aに送信する。同様に、アイデンティティ、例えばアイデンティティ652が取り消された場合、MECD640は、そのアイデンティティと関連するデータ、ならびに、通信メッセージ、認証データ、およびアドレス帳データを含め、そのアイデンティティと関係のあるあらゆる役割と関連するデータを削除する。MECD640がアイデンティティまたは役割−アイデンティティ関係のデータを消去する間、対応するメッセージングサービス、例えばメッセージングサービス604Aは、オプションとして、通信メッセージをアーカイブに入れて、後でレビューできるようにする。例えば、医療産業などの一部の産業では、メッセージングサービス604Aは、確実な医療データの保持を目的として規制上の要件に従うように、通信メッセージをアーカイブに入れる。しかしながら、通信メッセージは、通信メッセージ中で言及された患者のプライバシーを保護するために、使用後は、MECD640から削除される。
図7の例示的実施形態では、プロセス700は、単一のMECDのアイデンティティの管理を説明している。図6で前述したように、単一のメッセージングシステムは、MECDについて、1つまたは複数のアイデンティティおよび役割−アイデンティティ関係を割り当て、かつ取り消す。さらに、複数のメッセージングシステムは、オプションとして、単一のMECDに対して、アイデンティティおよび役割−アイデンティティ関係を割り当て、かつ取り消す。メッセージングシステムがMECDからアイデンティティまたは役割−アイデンティティ関係を取り消すと、そのアイデンティティまたは役割−アイデンティティと関連するメッセージデータがMECDから削除される。しかしながら、1つのアイデンティティがMECDから取り消された場合、MECDは、ユーザーが、そのユーザーの他のアイデンティティと関連する通信メッセージを送受信することを依然として可能としている。
装置制御のためのシステムおよび方法が、例示的なプロセスおよびシステム構成要素の説明により例示され、また、さまざまなプロセスおよび構成要素がかなり詳細に記載されたが、出願人は、請求項の範囲を、そのような詳細に制限したり、多少なりとも限定したりすることは、意図していない。例えば、前述した実施形態は、例示目的で、健康管理サービスと共に使用されることに向けられているが、前述した実施形態およびそれらの変形体は、MECD間でのメッセージ送受信を利用するあらゆる分野で使用されることもできる。さらなる利点および改変も、当業者には容易に分かるであろう。したがって、最も広い見方で前述したシステムおよび方法は、図示し説明した、特定の詳細、実装、または例示的実施例に限定されるものではない。よって、出願人が開示したシステムおよび方法の趣旨または範囲を逸脱せずに、このような詳細から発展(departures)を行うことができる。
〔実施の態様〕
(1) モバイル電子通信装置において、
ハウジングと、
前記ハウジングにより支持され、データを無線通信ネットワークと送受信するように設定された、無線トランシーバーと、
前記ハウジングにより支持された出力装置と、
前記ハウジングにより支持され、プログラム命令を記憶するように設定された、メモリと、
前記ハウジングにより支持され、前記メモリ、前記出力装置、および前記無線トランシーバーに動作可能に接続されたコントローラと、
を含み、前記コントローラは、
前記メモリに記憶されたメッセージプログラムのプログラム命令を実行し、
前記メッセージプログラムの前記プログラム命令の実行を中断し、
前記無線トランシーバーが前記メッセージプログラムに対応する識別子を含む通知メッセージをメッセージングサービスから受信したことに応じて、前記無線トランシーバーでオンラインデータ記憶サービスから通信メッセージを取得するように、前記メッセージプログラムの前記プログラム命令の実行を再開し、
前記出力装置で前記通信メッセージに対応する出力を生成する、
ように設定される、モバイル電子通信装置。
(2) 実施態様1に記載のモバイル電子通信装置において、
前記通知メッセージは、セッション開始プロトコル(SIP)メッセージである、モバイル電子通信装置。
(3) 実施態様1に記載のモバイル電子通信装置において、
前記コントローラは、前記通信メッセージの取得に応じて、前記無線トランシーバーで前記メッセージングサービスに送達受領メッセージを送信するようにさらに設定される、モバイル電子通信装置。
(4) 実施態様1に記載のモバイル電子通信装置において、
前記オンラインデータ記憶サービスは、メッセージキューサービスである、モバイル電子通信装置。
(5) 実施態様1に記載のモバイル電子通信装置において、
前記オンラインデータ記憶サービスは、電子メールサーバーである、モバイル電子通信装置。
(6) 実施態様1に記載のモバイル電子通信装置において、
前記オンラインデータ記憶サービスは、インスタント・メッセージ・サーバーである、モバイル電子通信装置。
(7) 実施態様1に記載のモバイル電子通信装置において、
前記ハウジングにより支持され、前記コントローラに動作可能に接続された入力装置をさらに含み、
前記コントローラは、
前記通信メッセージの取得に応じて前記出力装置によりユーザー入力のプロンプトを生成し、
前記入力装置により生成されたデータを参照して応答メッセージを生成し、
前記無線トランシーバーで前記応答メッセージを前記メッセージングサービスに送信するように、さらに設定される、モバイル電子通信装置。
(8) 実施態様1に記載のモバイル電子通信装置において、
前記メッセージングサービスは、前記オンラインデータ記憶サービスとは異なる、モバイル電子通信装置。
(9) 実施態様1に記載のモバイル電子通信装置において、
前記コントローラは、前記メッセージプログラムの実行が中断される間、低電力モードで動作するようにさらに設定される、モバイル電子通信装置。
(10) 実施態様9に記載のモバイル電子通信装置において、
前記コントローラは、前記無線トランシーバーでの前記通知メッセージの受信を聞くために前記メモリに記憶された別のプログラムのプログラム命令を実行するようにさらに設定され、前記別のプログラムは、前記プロセッサが前記低電力モードで動作している間に実行される、モバイル電子通信装置。
(11) 実施態様1に記載のモバイル電子通信装置において、
前記コントローラは、前記メッセージプログラムが中断されている間に前記メモリに記憶された別のプログラムのプログラム命令を実行するようにさらに設定され、前記別のプログラムは、前記出力装置で出力を生成する、モバイル電子通信装置。
(12) ネットワーク通信システムにおいて、
オンラインデータ記憶サービスと、
データネットワークを通じて前記データ記憶サービスに通信可能に連結されたモバイル電子通信装置と、
サーバーであって、前記サーバーに動作可能に接続されたメモリに記憶されたプログラム命令を実行する、サーバーと、
を含み、
前記サーバーは、前記データネットワークを通じて前記オンラインデータ記憶サービスおよび前記モバイル電子通信装置に通信可能に接続され、
前記サーバーは、
前記モバイル電子通信装置に送達されるよう意図された第1の通信メッセージを受信し、
前記第1の通信メッセージを前記オンラインデータ記憶サービスに記憶させ、
前記第1の通信メッセージが前記オンラインデータ記憶サービスに記憶されたことに応じて、第1の通知メッセージを前記モバイル電子通信装置に送信する、ように設定される、ネットワーク通信システム。
(13) 実施態様12に記載のネットワーク通信システムにおいて、
前記第1の通知メッセージは、セッション開始プロトコル(SIP)で送信され、前記モバイル通信装置が、低電力モードで動作する間に前記第1の通知メッセージを受信し、また、メモリに記憶されたプログラム命令を実行して、前記第1の通信メッセージを前記オンラインデータ記憶サービスから取得することを可能にする、ネットワーク通信システム。
(14) 実施態様12に記載のネットワーク通信システムにおいて、
前記サーバーは、前記第1の通信メッセージを別のモバイル電子通信装置から受信するように設定される、ネットワーク通信システム。
(15) 実施態様12に記載のネットワーク通信システムにおいて、
前記サーバーは、前記第1の通信メッセージを記憶するために、前記データネットワークを通じて前記オンラインデータ記憶サービスに前記第1の通信メッセージを送信するように設定される、ネットワーク通信システム。
(16) 実施態様12に記載のネットワーク通信システムにおいて、
前記サーバーは、
前記モバイル電子通信装置が前記第1の通信メッセージを取得したことを示す送達受領メッセージを前記モバイル電子通信装置から受信し、
前記第1の通信メッセージと関連して、応答データベースに、前記送達受領メッセージに対応するデータを記憶させるように、さらに設定される、ネットワーク通信システム。
(17) 実施態様16に記載のネットワーク通信システムにおいて、
前記サーバーは、前記送達受領メッセージを前記モバイル電子通信装置から受信し損ねたことに応じて、前記第1の通知メッセージの送信から第1の所定のタイムアウトが終了した後で前記モバイル電子通信装置に第2の通知メッセージを送信するように、さらに設定される、ネットワーク通信システム。
(18) 実施態様17に記載のネットワーク通信システムにおいて、
前記サーバーは、前記送達受領メッセージを前記モバイル電子通信装置から受信し損ねたことに応じて、前記第2の通知メッセージの送信から第2の所定のタイムアウトが終了した後で前記モバイル電子通信装置に第3の通知メッセージを送信するように、さら設定され、
前記第2の所定のタイムアウトは、前記第1の所定のタイムアウトよりも短い、ネットワーク通信システム。
(19) 実施態様12に記載のネットワーク通信システムにおいて、
前記サーバーは、
前記モバイル電子通信装置のユーザーが前記第1の通信メッセージの受信を確認したことに応じて送信される応答メッセージを、前記モバイル電子通信装置から受信し、
前記第1の通信メッセージに関連して、応答データベースに、前記応答メッセージに対応するデータを記憶させるように、さらに設定される、ネットワーク通信システム。
(20) 実施態様12に記載のネットワーク通信システムにおいて、
前記データネットワークを通じて前記データ記憶サービスに通信可能に連結された複数のモバイル電子通信装置をさらに含み、
前記サーバーは、前記複数のモバイル電子通信装置のうちの第1のモバイル電子通信装置のネットワークアドレスに対応するアイデンティティと役割との間の関連性、および前記役割に対応するデータを記憶するデータベースをさらに含み、
前記サーバーは、
前記複数のモバイル電子通信装置のうちの前記第1のモバイル電子通信装置に対応する識別情報を含まない、前記役割に送達されることが意図された第2の通信メッセージを受信し、
前記第2の通信メッセージを前記オンラインデータ記憶サービスに記憶させ、
前記データベースを参照して、前記複数のモバイル電子通信装置のうちの前記第1のモバイル電子通信装置の前記ネットワークアドレスを識別し、
前記第2の通信メッセージが前記オンラインデータ記憶サービスに記憶されたことに応じて、前記複数のモバイル電子通信装置のうちの前記第1のモバイル電子通信装置の識別された前記ネットワークアドレスを参照して、前記複数のモバイル電子通信装置のうちの前記第1のモバイル電子通信装置に通知メッセージを送信するように、さらに設定される、ネットワーク通信システム。
(21) 実施態様20に記載のネットワーク通信システムにおいて、
前記サーバーは、
前記複数のモバイル電子通信装置のうちの前記第1のモバイル電子通信装置と関連する前記アイデンティティの前記役割を取り消すために、前記データベースから前記役割と前記アイデンティティとの間の前記関連性に対応する前記データを除去し、
前記役割の取り消しを示すメッセージを、前記複数のモバイル電子通信装置のうちの前記第1のモバイル電子通信装置に送信するように、さらに設定される、ネットワーク通信システム。
(22) 実施態様21に記載のネットワーク通信システムにおいて、
前記第1のモバイル電子通信装置は、
前記第1の通信メッセージを記憶するように設定されたメモリと、
前記メモリに動作可能に接続されたプロセッサと、をさらに含み、
前記プロセッサは、前記サーバーからの前記役割の取り消しを示す前記メッセージの受信に応じて、前記メモリから前記第1の通信メッセージを削除するように設定される、ネットワーク通信システム。
(23) 実施態様21に記載のネットワーク通信システムにおいて、
前記サーバーは、
前記複数のモバイル電子通信装置のうちの第2のモバイル電子通信装置のネットワークアドレスと関連する、前記役割と別のアイデンティティとの間の別の関連性に対応するデータを、前記データベースに記憶させ、
前記複数のモバイル電子通信装置のうちの前記第2のモバイル電子通信装置に対応する識別情報を含まない、前記役割に送達されることが意図された第3の通信メッセージを受信し、
前記第3の通信メッセージを前記オンラインデータ記憶サービスに記憶させ、
前記データベースを参照して前記複数のモバイル電子通信装置のうちの前記第2のモバイル電子通信装置の前記ネットワークアドレスを識別し、
前記別の通信メッセージが前記オンラインデータ記憶サービスに記憶されたことに応じて、前記複数のモバイル電子通信装置のうちの前記第2のモバイル電子通信装置の識別された前記ネットワークアドレスを参照して前記複数のモバイル電子通信装置のうちの前記第2のモバイル電子通信装置に通知メッセージを送信するように、さらに設定される、ネットワーク通信システム。
優先度が高いメッセージをモバイル電子通信装置に送達するメッセージングシステムの図である。 図1のメッセージングシステムと共に動作するように再設定され得る先行技術のモバイル電子通信装置の概略図である。 メッセージングアプリケーションプログラムを含むモバイル電子通信装置上で実行されるソフトウェアプログラムの描写である。 低電力動作モードにあるモバイル電子通信装置上で実行されるソフトウェアプログラムの描写である。 待ち時間を減らして優先度が高い通信メッセージを受信するためにモバイル電子通信装置を動作させるためのプロセスのブロック図である。 優先度が高いメッセージを1つまたは複数のモバイル通信装置に送信するためにメッセージングシステムを動作させるためのプロセスのブロック図である。 異なるメッセージングシステムとの通信を可能にするためにモバイル電子通信装置に複数のアイデンティティおよび役割を割り当てるシステムの概略図である。 メッセージングシステムと通信するモバイル電子通信装置のアイデンティティおよび役割を管理するためのプロセスのブロック図である。

Claims (15)

  1. モバイル電子通信装置において、
    ハウジングと、
    前記ハウジングにより支持され、データを無線通信ネットワークと送受信するように設定された、無線トランシーバーと、
    前記ハウジングにより支持された出力装置と、
    前記ハウジングにより支持され、プログラム命令を記憶するように設定された、メモリと、
    前記ハウジングにより支持され、前記メモリ、前記出力装置、および前記無線トランシーバーに動作可能に接続されたコントローラと、
    を含み、前記コントローラは、
    前記メモリに記憶されたメッセージプログラムのプログラム命令を実行し、
    前記メッセージプログラムの前記プログラム命令の実行を中断し、
    前記無線トランシーバーが前記メッセージプログラムに対応する識別子を含む通知メッセージをメッセージングサービスから受信したことに応じて、前記無線トランシーバーでオンラインデータ記憶サービスから通信メッセージを取得するように、前記メッセージプログラムの前記プログラム命令の実行を再開し、
    前記出力装置で前記通信メッセージに対応する出力を生成する、
    ように設定される、モバイル電子通信装置。
  2. 請求項1に記載のモバイル電子通信装置において、
    前記コントローラは、前記通信メッセージの取得に応じて、前記無線トランシーバーで前記メッセージングサービスに送達受領メッセージを送信するようにさらに設定される、モバイル電子通信装置。
  3. 請求項1に記載のモバイル電子通信装置において、
    前記メッセージングサービスは、前記オンラインデータ記憶サービスとは異なる、モバイル電子通信装置。
  4. 請求項1に記載のモバイル電子通信装置において、
    前記コントローラは、前記メッセージプログラムの実行が中断される間、低電力モードで動作するようにさらに設定される、モバイル電子通信装置。
  5. 請求項4に記載のモバイル電子通信装置において、
    前記コントローラは、前記無線トランシーバーでの前記通知メッセージの受信を聞くために前記メモリに記憶された別のプログラムのプログラム命令を実行するようにさらに設定され、前記別のプログラムは、前記プロセッサが前記低電力モードで動作している間に実行される、モバイル電子通信装置。
  6. ネットワーク通信システムにおいて、
    オンラインデータ記憶サービスと、
    データネットワークを通じて前記データ記憶サービスに通信可能に連結されたモバイル電子通信装置と、
    サーバーであって、前記サーバーに動作可能に接続されたメモリに記憶されたプログラム命令を実行する、サーバーと、
    を含み、
    前記サーバーは、前記データネットワークを通じて前記オンラインデータ記憶サービスおよび前記モバイル電子通信装置に通信可能に接続され、
    前記サーバーは、
    前記モバイル電子通信装置に送達されるよう意図された第1の通信メッセージを受信し、
    前記第1の通信メッセージを前記オンラインデータ記憶サービスに記憶させ、
    前記第1の通信メッセージが前記オンラインデータ記憶サービスに記憶されたことに応じて、第1の通知メッセージを前記モバイル電子通信装置に送信する、ように設定される、ネットワーク通信システム。
  7. 請求項6に記載のネットワーク通信システムにおいて、
    前記第1の通知メッセージは、セッション開始プロトコル(SIP)で送信され、前記モバイル通信装置が、低電力モードで動作する間に前記第1の通知メッセージを受信し、また、メモリに記憶されたプログラム命令を実行して、前記第1の通信メッセージを前記オンラインデータ記憶サービスから取得することを可能にする、ネットワーク通信システム。
  8. 請求項6に記載のネットワーク通信システムにおいて、
    前記サーバーは、
    前記モバイル電子通信装置が前記第1の通信メッセージを取得したことを示す送達受領メッセージを前記モバイル電子通信装置から受信し、
    前記第1の通信メッセージと関連して、応答データベースに、前記送達受領メッセージに対応するデータを記憶させるように、さらに設定される、ネットワーク通信システム。
  9. 請求項8に記載のネットワーク通信システムにおいて、
    前記サーバーは、前記送達受領メッセージを前記モバイル電子通信装置から受信し損ねたことに応じて、前記第1の通知メッセージの送信から第1の所定のタイムアウトが終了した後で前記モバイル電子通信装置に第2の通知メッセージを送信するように、さらに設定される、ネットワーク通信システム。
  10. 請求項9に記載のネットワーク通信システムにおいて、
    前記サーバーは、前記送達受領メッセージを前記モバイル電子通信装置から受信し損ねたことに応じて、前記第2の通知メッセージの送信から第2の所定のタイムアウトが終了した後で前記モバイル電子通信装置に第3の通知メッセージを送信するように、さら設定され、
    前記第2の所定のタイムアウトは、前記第1の所定のタイムアウトよりも短い、ネットワーク通信システム。
  11. 請求項6に記載のネットワーク通信システムにおいて、
    前記サーバーは、
    前記モバイル電子通信装置のユーザーが前記第1の通信メッセージの受信を確認したことに応じて送信される応答メッセージを、前記モバイル電子通信装置から受信し、
    前記第1の通信メッセージに関連して、応答データベースに、前記応答メッセージに対応するデータを記憶させるように、さらに設定される、ネットワーク通信システム。
  12. 請求項6に記載のネットワーク通信システムにおいて、
    前記データネットワークを通じて前記データ記憶サービスに通信可能に連結された複数のモバイル電子通信装置をさらに含み、
    前記サーバーは、前記複数のモバイル電子通信装置のうちの第1のモバイル電子通信装置のネットワークアドレスに対応するアイデンティティと役割との間の関連性、および前記役割に対応するデータを記憶するデータベースをさらに含み、
    前記サーバーは、
    前記複数のモバイル電子通信装置のうちの前記第1のモバイル電子通信装置に対応する識別情報を含まない、前記役割に送達されることが意図された第2の通信メッセージを受信し、
    前記第2の通信メッセージを前記オンラインデータ記憶サービスに記憶させ、
    前記データベースを参照して、前記複数のモバイル電子通信装置のうちの前記第1のモバイル電子通信装置の前記ネットワークアドレスを識別し、
    前記第2の通信メッセージが前記オンラインデータ記憶サービスに記憶されたことに応じて、前記複数のモバイル電子通信装置のうちの前記第1のモバイル電子通信装置の識別された前記ネットワークアドレスを参照して、前記複数のモバイル電子通信装置のうちの前記第1のモバイル電子通信装置に通知メッセージを送信するように、さらに設定される、ネットワーク通信システム。
  13. 請求項12に記載のネットワーク通信システムにおいて、
    前記サーバーは、
    前記複数のモバイル電子通信装置のうちの前記第1のモバイル電子通信装置と関連する前記アイデンティティの前記役割を取り消すために、前記データベースから前記役割と前記アイデンティティとの間の前記関連性に対応する前記データを除去し、
    前記役割の取り消しを示すメッセージを、前記複数のモバイル電子通信装置のうちの前記第1のモバイル電子通信装置に送信するように、さらに設定される、ネットワーク通信システム。
  14. 請求項13に記載のネットワーク通信システムにおいて、
    前記第1のモバイル電子通信装置は、
    前記第1の通信メッセージを記憶するように設定されたメモリと、
    前記メモリに動作可能に接続されたプロセッサと、をさらに含み、
    前記プロセッサは、前記サーバーからの前記役割の取り消しを示す前記メッセージの受信に応じて、前記メモリから前記第1の通信メッセージを削除するように設定される、ネットワーク通信システム。
  15. 請求項13に記載のネットワーク通信システムにおいて、
    前記サーバーは、
    前記複数のモバイル電子通信装置のうちの第2のモバイル電子通信装置のネットワークアドレスと関連する、前記役割と別のアイデンティティとの間の別の関連性に対応するデータを、前記データベースに記憶させ、
    前記複数のモバイル電子通信装置のうちの前記第2のモバイル電子通信装置に対応する識別情報を含まない、前記役割に送達されることが意図された第3の通信メッセージを受信し、
    前記第3の通信メッセージを前記オンラインデータ記憶サービスに記憶させ、
    前記データベースを参照して前記複数のモバイル電子通信装置のうちの前記第2のモバイル電子通信装置の前記ネットワークアドレスを識別し、
    前記別の通信メッセージが前記オンラインデータ記憶サービスに記憶されたことに応じて、前記複数のモバイル電子通信装置のうちの前記第2のモバイル電子通信装置の識別された前記ネットワークアドレスを参照して前記複数のモバイル電子通信装置のうちの前記第2のモバイル電子通信装置に通知メッセージを送信するように、さらに設定される、ネットワーク通信システム。
JP2015505955A 2012-04-13 2013-04-12 モバイル通信装置のための、待ち時間を削減したメッセージ送受信 Pending JP2015520957A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261624055P 2012-04-13 2012-04-13
US61/624,055 2012-04-13
PCT/US2013/036439 WO2013155454A1 (en) 2012-04-13 2013-04-12 Reduced latency messaging for mobile communication devices

Publications (1)

Publication Number Publication Date
JP2015520957A true JP2015520957A (ja) 2015-07-23

Family

ID=49326071

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015505955A Pending JP2015520957A (ja) 2012-04-13 2013-04-12 モバイル通信装置のための、待ち時間を削減したメッセージ送受信

Country Status (5)

Country Link
US (1) US20130275530A1 (ja)
EP (1) EP2837214A4 (ja)
JP (1) JP2015520957A (ja)
AU (1) AU2013245742A1 (ja)
WO (1) WO2013155454A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017111831A (ja) * 2012-12-18 2017-06-22 フェイスブック,インク. モバイル・プッシュ通知
JP2021528931A (ja) * 2018-08-28 2021-10-21 ソノズ インコーポレイテッド オーディオ通知

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9516116B2 (en) * 2008-06-06 2016-12-06 Apple Inc. Managing notification service connections
US9148744B2 (en) * 2012-10-16 2015-09-29 T-Mobile Usa, Inc. Network data optimization
CN104038613B (zh) * 2013-03-07 2016-08-17 腾讯科技(深圳)有限公司 信息安全管理的方法和装置
CN104239356A (zh) 2013-06-21 2014-12-24 腾讯科技(深圳)有限公司 一种网页评论方法、系统及浏览器
US10425297B1 (en) * 2013-11-12 2019-09-24 Amazon Technologies, Inc. Adaptive polling based upon demand
CN104753900B (zh) * 2013-12-31 2018-03-02 北京新媒传信科技有限公司 一种实现 ios 设备接入sip 网络的方法和网关
US20150334652A1 (en) * 2014-05-16 2015-11-19 Cisco Technology, Inc. Selectively powering inline devices of a network device based on client device presence
WO2015198484A1 (ja) * 2014-06-27 2015-12-30 楽天株式会社 サーバ装置
EP3198999B1 (en) * 2014-09-23 2020-06-24 Switchbee Ltd. A method and apparatus for controlling a load
KR102330249B1 (ko) * 2014-10-27 2021-11-23 삼성전자주식회사 다중 기기 간 커뮤니케이션을 제공하는 방법 및 디바이스
US20160158599A1 (en) * 2014-12-05 2016-06-09 Konstantin Roslyakov Golf Tracker
US10735543B2 (en) * 2015-06-05 2020-08-04 Apple Inc. Device-to-device caching
US10425372B2 (en) * 2015-08-18 2019-09-24 Google Llc Notification targeting based on downstream user engagement
US10999236B2 (en) * 2016-06-17 2021-05-04 Facebook, Inc. Selection of service providers for message transmission on online social networks
US20180018701A1 (en) * 2016-07-14 2018-01-18 Facebook, Inc. Determining optimal delivery times for electronic messages
CN106909603A (zh) * 2016-08-31 2017-06-30 阿里巴巴集团控股有限公司 搜索信息处理方法及装置
CN109905314B (zh) * 2017-12-08 2022-07-22 阿里巴巴集团控股有限公司 通讯方法及装置
US11323571B1 (en) * 2017-12-14 2022-05-03 Securus Technologies, Llc Message management system
US11993285B2 (en) * 2020-03-16 2024-05-28 Uatc, Llc Systems and methods for servicing vehicle messages
US11750714B2 (en) * 2020-03-31 2023-09-05 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Fast resumption of dormant sessions on a client device

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4639619A (en) * 1985-11-20 1987-01-27 Hewlett-Packard Company Electronic sampler switch
US6928484B1 (en) * 2000-01-18 2005-08-09 Cisco Technology, Inc. Method and apparatus for discovering edge-disjoint shortest path pairs during shortest path tree computation
US7117245B1 (en) * 2000-07-05 2006-10-03 Iris Wireless, Llc Global communication method and system
US7590079B2 (en) * 2002-10-25 2009-09-15 Motorola, Inc. Method of communication device initiated frame exchange
US7664233B1 (en) * 2003-06-25 2010-02-16 Everbridge, Inc. Emergency and non-emergency telecommunications notification system
US8019055B2 (en) * 2007-01-19 2011-09-13 Nokia Corporation Media instant messaging for mobile device
US8533272B2 (en) * 2007-01-30 2013-09-10 Alcatel Lucent Method and apparatus for notification and delivery of messages to mobile PC users
KR20090013329A (ko) * 2007-08-01 2009-02-05 에스케이 텔레콤주식회사 이동통신 단말기의 어플리케이션을 자동으로 구동하기 위한방법과 이를 위한 이동통신 단말기
US8135392B2 (en) * 2008-06-06 2012-03-13 Apple Inc. Managing notification service connections and displaying icon badges
US7907557B2 (en) * 2008-06-13 2011-03-15 Conexant Systems, Inc. Low power receiving
US20110102157A1 (en) * 2009-11-05 2011-05-05 Nokia Corporation Wake-Up For Wireless Devices Based On Requested Data
US8369304B2 (en) * 2010-01-08 2013-02-05 Samsung Electronics Co., Ltd. Methods to reduce power for asynchronous internet message protocols

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017111831A (ja) * 2012-12-18 2017-06-22 フェイスブック,インク. モバイル・プッシュ通知
US9936035B2 (en) 2012-12-18 2018-04-03 Facebook, Inc. Mobile push notification
JP2021528931A (ja) * 2018-08-28 2021-10-21 ソノズ インコーポレイテッド オーディオ通知
JP2022033746A (ja) * 2018-08-28 2022-03-02 ソノズ インコーポレイテッド オーディオ通知
JP7266082B2 (ja) 2018-08-28 2023-04-27 ソノズ インコーポレイテッド オーディオ通知

Also Published As

Publication number Publication date
WO2013155454A1 (en) 2013-10-17
US20130275530A1 (en) 2013-10-17
AU2013245742A1 (en) 2014-11-20
EP2837214A1 (en) 2015-02-18
EP2837214A4 (en) 2015-12-02

Similar Documents

Publication Publication Date Title
JP2015520957A (ja) モバイル通信装置のための、待ち時間を削減したメッセージ送受信
CN106464729B (zh) 用于被代理通信的方法、装置、被代理设备和移动设备
US10708649B2 (en) Method, apparatus and system for displaying bullet screen information
US9936387B2 (en) System and method for administration and operation of one or more mobile electronic communications devices
AU2017429200B2 (en) Display method and apparatus
JP5025737B2 (ja) モバイルpcユーザへのメッセージ通知および送達のための方法および装置
US20150019694A1 (en) Method for Screen Sharing, Related Device, and Communications System
JP6501919B2 (ja) 音声チャットモード自己適応方法及び装置
JP2014523054A (ja) アプリケーション情報を共有するための方法、システム、及び装置
WO2020164526A1 (zh) 一种分布式系统中的节点控制方法和相关装置
WO2021175214A1 (zh) 一种投屏连接控制方法及电子设备
KR102516019B1 (ko) 외부 전자 장치와 통신하는 전자 장치 및 방법
US11716361B2 (en) Network call method, server, call terminal, network call system, and storage medium
WO2018049912A1 (zh) 数据传输方法及相关设备
US11949938B2 (en) Techniques for authorizing controller devices
JP6666542B2 (ja) データ更新システム、遠隔設定装置およびデータ更新方法
WO2015003549A1 (en) Method and system for application message alerting
WO2018149365A1 (zh) 一种数据获取方法、移动终端及服务器
WO2022111728A1 (zh) 一种获取设备控制权的方法与通信系统
CN109086595A (zh) 一种业务账号切换方法、系统、装置及服务器
KR20080019639A (ko) 레거시와 입출력 모듈의 원격 제어 센서들을 이용하여서비스 호출들을 지원하는 장치, 시스템 및 방법
WO2020001194A1 (zh) 应用程序排列方法、装置、可读存储介质及移动终端
CN107786423A (zh) 一种即时通讯的方法和系统
CN107925607A (zh) 使用阴影代理对数据服务器进行连续监控
US10142923B2 (en) Using a single packet data network for data transfers to manage network resources