(57)【特許請求の範囲】
【請求項１】
メッセージングアプリケーションを第１のユーザに提示する計算デバイスにより、前記メッセージングアプリケーションがサポートしていない第１のコンテンツに対応する二次元コードを生成する要求を取得することであって、前記メッセージングアプリケーションは、前記第１のユーザと第２のユーザとの間のメッセージベースの通信を促進し、前記通信のコンテンツは、前記第１のユーザ及び前記第２のユーザによって提供されることと、
前記メッセージングアプリケーション内に前記第１のコンテンツを前記二次元コードに変換するユーザインタフェースを提示することと、
前記メッセージングアプリケーションを使用して前記第１のコンテンツに対応する前記二次元コードを生成することと、
前記第２のユーザに対して、前記メッセージングアプリケーション内で前記二次元コードを含むメッセージを生成することと、
前記メッセージングアプリケーションを介して前記メッセージを送信することと
を含む、方法。
【請求項２】
前記ユーザインタフェースは前記メッセージングアプリケーションの入力フィールドを含み、前記入力フィールドは、前記第１のユーザから前記第１のコンテンツを取得するように構成される、請求項１に記載の方法。
【請求項３】
前記メッセージを生成することは、
前記第１のユーザから前記二次元コードに変換されるべきではない追加のコンテンツを取得することと、
前記メッセージに、前記追加のコンテンツを含めることと
を更に含む、請求項１に記載の方法。
【請求項４】
ユーザが前記ユーザインタフェースで前記要求をキャンセルしたかどうかを判断することを更に含む、請求項１に記載の方法。
【請求項５】
前記メッセージングアプリケーション内に前記ユーザインタフェースを提示することは、前記ユーザインタフェースをオーバーレイインタフェースとして前記メッセージングアプリケーションの上に提示することを含む、請求項１に記載の方法。 
【請求項６】
前記二次元コードを生成することは、コード生成アプリケーションを使用して前記第１のコンテンツを前記計算デバイスにおいて処理することを含む、請求項１に記載の方法。
【請求項７】
前記二次元コードを生成することは、前記第１のコンテンツをコード生成サーバに送信することを含む、請求項１に記載の方法。
【請求項８】
前記メッセージングアプリケーションを介して前記メッセージを送信することは、前記メッセージをメッセージングサーバに送信することを含む、請求項１に記載の方法。
【請求項９】
前記メッセージングアプリケーションを介して前記メッセージを送信することは、前記メッセージを、前記メッセージングアプリケーションを前記第２のユーザに提示する第２の計算デバイスに送信することを含む、請求項１に記載の方法。
【請求項１０】
コンピュータにより実行されると、前記コンピュータに方法を実行させる命令を記憶する非一時的コンピュータ可読記憶媒体であって、前記方法は、
メッセージングアプリケーションを第１のユーザに提示する計算デバイスにより、前記メッセージングアプリケーションがサポートしていない第１のコンテンツに対応する二次元コードを生成する要求を取得することであって、前記メッセージングアプリケーションは、前記第１のユーザと第２のユーザとの間のメッセージベースの通信を促進し、前記通信のコンテンツは、前記第１のユーザ及び前記第２のユーザによって提供されることと、
二次元コードを生成する要求を取得することと、
前記メッセージングアプリケーション内に前記第１のコンテンツを前記二次元コードに変換するユーザインタフェースを提示することと、
前記メッセージングアプリケーションを使用して前記第１のコンテンツに対応する前記二次元コードを生成することと、
前記第２のユーザに対して、前記メッセージングアプリケーション内で前記二次元コードを含むメッセージを生成することと、
前記メッセージングアプリケーションを介して前記メッセージを送信することと
を含む、記憶媒体。
【請求項１１】
前記ユーザインタフェースは前記メッセージングアプリケーションの入力フィールドを含み、前記入力フィールドは、前記第１のユーザから前記第１のコンテンツを取得するように構成される、請求項１０に記載の記憶媒体。
【請求項１２】
前記メッセージを生成することは、
前記第１のユーザから前記二次元コードに変換されるべきではない追加のコンテンツを取得することと、
前記メッセージに、前記追加のコンテンツを含めることと
を更に含む、請求項１０に記載の記憶媒体。
【請求項１３】
前記二次元コードを生成することは、
コード生成アプリケーションを使用して前記第１のコンテンツを前記コンピュータにおいて処理すること、及び
前記第１のコンテンツをコード生成サーバに送信すること
のうちの１つ又は複数を含む、請求項１０に記載の記憶媒体。
【請求項１４】
前記メッセージングアプリケーションを介して前記メッセージを送信することは、
前記メッセージをメッセージングサーバに送信すること、
前記メッセージを、前記メッセージングアプリケーションを前記第２のユーザに提示する第２の計算デバイスに送信すること
のうちの１つ又は複数を含む、請求項１０に記載の記憶媒体。
【請求項１５】
プロセッサと、
前記プロセッサに結合され、命令を記憶するメモリとを含む装置であって、
前記命令は、前記プロセッサにより実行されると、前記プロセッサに方法を実行させ、前記方法は、
メッセージングアプリケーションを介して、前記メッセージングアプリケーションがサポートしていない第１のコンテンツに対応する二次元コードを生成する要求を取得することであって、前記メッセージングアプリケーションは、第１のユーザと第２のユーザとの間のメッセージベースの通信を促進し、前記通信のコンテンツは、前記第１のユーザ及び前記第２のユーザによって提供されることと、
前記メッセージングアプリケーション内に前記第１のコンテンツを前記二次元コードに変換するユーザインタフェースを提示することと、
前記メッセージングアプリケーションを使用して前記第１のコンテンツに対応する前記二次元コードを生成することと、
前記第２のユーザに対して、前記メッセージングアプリケーション内で前記二次元コードを含むメッセージを生成することと、
前記メッセージングアプリケーションを介して前記メッセージを送信することと
を含む、装置。
【請求項１６】
前記方法は、前記ユーザインタフェースに前記メッセージングアプリケーションの入力フィールドを設定することを含み、前記入力フィールドは、前記第１のユーザから前記第１のコンテンツを取得するように構成される、請求項１５に記載の装置。
【請求項１７】
前記方法は、
前記第１のユーザから前記二次元コードに変換されるべきではない追加のコンテンツを取得することと、
前記メッセージに、前記追加のコンテンツを含めることと
を更に含む、請求項１５に記載の装置。
【請求項１８】
前記二次元コードを生成することは、
ローカルコード生成モジュールを使用して前記第１のコンテンツを処理すること、及び
前記第１のコンテンツをコード生成サーバに送信すること
のうちの１つ又は複数を含む、請求項１５に記載の装置。
【請求項１９】
前記メッセージングアプリケーションを介して前記メッセージを送信することは、
前記メッセージをメッセージングサーバに送信すること、
前記メッセージを、前記メッセージングアプリケーションを前記第２のユーザに提示する第２の計算デバイスに送信すること
のうちの１つ又は複数を含む、請求項１５に記載の装置。
【請求項２０】
前記二次元コードは前記第１のコンテンツへのハイパーリンクを含む、請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
背景
分野
本開示は、一般的にはモバイル通信に関する。より詳細には、本開示は、二次元コードを生成し、通信メッセージ内で送信することに関する。
【背景技術】
【０００２】
関連技術
低電力回路、電池技術、並びにセルラ及び無線ネットワークの進歩により、様々なタイプのモバイル計算システムが普及した。多くの場合、消費者は、計算タスクを従来のデスクトップ（非モバイル）コンピュータよりもラップトップ、タブレットコンピュータ、及びスマートフォンで実行することを好む。
【０００３】
そのようなモバイルデバイスを用いて、ユーザは、随時どこでも、他人と通信し、インターネットにアクセスし、又は他のオンラインタスクを実行し得る。しかし、それらの小さなサイズ及び／又は可搬性に起因して、ユーザは通常、一度に１つのアプリケーションにしかアクセスすることができない。例えば、ユーザは多くの場合、出先でモバイルデバイス上のメッセージングアプリケーションを使用している間、他人と通信する。スマートフォン及びタブレットコンピュータ等のモバイルデバイスにおいて、メッセージングアプリケーションは表示画面全体を消費し得る。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
不都合なことに、既存のメッセージングアプリケーションは通常、限られた特徴セットを有し、それにより、ユーザが他人と共有することができるコンテンツのタイプが制限される。ユーザは、他のタイプのコンテンツを他人に送信したい場合、モバイルデバイス上で、そのようなコンテンツの通信に適する別のアプリケーションに切り替える必要があり得、これはユーザの経験を低下させ、通信効率を低下させるおそれがある。
【課題を解決するための手段】
【０００５】
概要
一実施形態は、モバイル計算デバイス上のメッセージングアプリケーション内から二次元（２Ｄ）コードを生成して挿入することができる、コード生成システムを提供する。動作中、本システムは、モバイルデバイスで実行中のメッセージングアプリケーション又はオペレーティングシステムから等、２Ｄコードを生成する要求を受信することができる。要求の受信に応答して、本システムは、２Ｄコードに変換するメッセージコンテンツを入力又は選択するユーザインタフェース（ＵＩ）メカニズム（例えば、モーダルウィンドウ）を提示することができる。次に、ローカルユーザからのメッセージコンテンツの取得に応答して、本システムは、メッセージコンテンツの２Ｄコードを生成し得、２Ｄコードを含むメッセージを生成し得る（例えば、２Ｄコードをメッセージ本文に挿入することにより）。次に、本システムは、２Ｄコードを含むメッセージをターゲット受信者に送信し得る。
【０００６】
幾つかの実施形態では、本システムは、ローカルユーザから、２Ｄコードに変換されるべきではない追加のメッセージコンテンツを取得することができる。本システムは、２Ｄコード及び追加のメッセージコンテンツを含むようにメッセージを生成することにより、メッセージを生成し得る。
【０００７】
幾つかの実施形態では、本システムは、２Ｄメッセージをメッセージングアプリケーションの入力フィールドに入力することができ、ユーザが、ターゲット受信者への追加のメッセージコンテンツを入力フィールドに入力できるようにすることができる。
【０００８】
幾つかの実施形態では、本システムは、ＵＩメカニズムをメッセージングアプリケーション内に提示することができる。
【０００９】
幾つかの実施形態では、本システムは、メッセージングアプリケーションの上にオーバーレイスクリーンとしてＵＩメカニズムを提示することができる。
【００１０】
幾つかの実施形態では、本システムは、モバイルデバイスでローカルにメッセージコンテンツを処理することにより、２Ｄコードを生成することができる。
【００１１】
幾つかの実施形態では、本システムは、メッセージコンテンツをコード生成サーバに送信し、２Ｄコードをコード生成サーバから受信することにより、２Ｄコードを生成することができる。
【００１２】
幾つかの実施形態では、コード生成サーバは、２Ｄコードをターゲット受信者のパーソナル計算デバイスに送信することができる。
【００１３】
幾つかの実施形態では、本システムは、２Ｄコードを含むメッセージをメッセージングサーバに送信することができ、それにより、メッセージはターゲット受信者に提供される。
【００１４】
幾つかの実施形態では、本システムは、２Ｄコードを含むメッセージをターゲット受信者のパーソナル計算デバイスに送信することができる。
【図面の簡単な説明】
【００１５】
【図１】実施形態による、メッセージングアプリケーションを使用して、二次元コードを生成し、ターゲット受信者に送信することを促進する例示的な計算環境を示す。
【図２】実施形態による、メッセージングアプリケーションから二次元コードを生成し送信する方法を示すフローチャートを提示する。
【図３Ａ】実施形態による、送信者のデバイスにおいて二次元コードを生成する場合のコンピュータネットワークを介する例示的な通信を示す。
【図３Ｂ】実施形態による、コード生成サーバにおいて二次元コードを生成する場合のコンピュータネットワークを介する例示的な通信を示す。
【図４】実施形態による、メッセージングアプリケーションを使用して、二次元コードを生成し、ターゲット受信者に送信することを促進する例示的な装置を示す。
【図５】実施形態による、メッセージングアプリケーションを使用して、二次元コードを生成し、ターゲット受信者に送信することを促進する例示的なコンピュータシステムを示す。
【発明を実施するための形態】
【００１６】
図中、同様の参照番号は同じ図要素を指す。
【００１７】
詳細な説明
以下の説明は、当業者が実施形態を製作し使用できるようにするために提示され、特定の用途及びその要件の状況で提供される。開示される実施形態への様々な偏光が、当業者に容易に明らかになり、本明細書に定義される一般原理は、本開示の趣旨及び範囲から逸脱せずに他の実施形態及び用途に適用し得る。したがって、本発明は、示される実施形態に限定されず、本明細書に開示される原理及び特徴と一貫して最も広い範囲に従うべきである。
【００１８】
概説
本発明の実施形態は、モバイル通信デバイス上のメッセージングアプリケーション内から二次元（２Ｄ）コードを生成し送信することの問題を解決するコード生成システムを提供する。例えば、ユーザは多くの場合、出先でモバイルデバイス上のメッセージングアプリケーションを使用している間、他人と通信する。しかし、ユーザは、メッセージングアプリケーションによりサポートされていないタイプのコンテンツを送信したい場合、コード生成システムを使用して、メッセージングアプリケーション内からコンテンツの２Ｄコードを生成し送信することができる。
【００１９】
例えば、幾つかのメッセージングアプリケーションは、ビデオ、３Ｄアニメーション、インタラクティブウィジェット、又は他のあまり一般的ではないタイプのコンテンツの送信をサポートしていないことがある。しかし、大半のメッセージングアプリケーションでは、ユーザは、二次元画像をメッセージ本文に挿入し、写真を有するメッセージを他人に送信することができる。コード生成システムは、この機能を利用して、ユーザがメッセージングアプリケーションを終える必要なく、ユーザがコンテンツの２Ｄコードを生成し、ユーザが作成中のメッセージに２Ｄコードを挿入できるようにすることにより、任意のタイプのコンテンツを他人に送信することができる。２Ｄコードは、マトリックスコード、二次元バーコード、又は現在既知若しくは後に開発される任意の機械可読ラベル等の、デジタル情報を符号化することができる任意の光学ラベル又は画像を含むことができる。
【００２０】
したがって、コード生成システムにより、ユーザは、メッセージングアプリケーションをディセーブルせずに、且つユーザが、プロセス中、別のアプリケーションに完全に切り替わる（例えば、２Ｄコードを生成するために）必要なく、２Ｄコードをメッセージに埋め込むことができる。
【００２１】
例示的な環境
図１は、実施形態による、メッセージングアプリケーションを使用して、２Ｄコードを生成し、ターゲット受信者１２０に送信することを促進する例示的な計算環境１００を示す。ユーザ１１８は、モバイルデバイス１０４でメッセージングアプリケーションを操作して、メッセージを作成することができ、メッセージを作成しながら、モバイルデバイス１０４のコード生成メカニズムにアクセスして、２Ｄコードをメッセージに挿入することができる。
【００２２】
幾つかの実施形態では、モバイルデバイス１０４は、メッセージングアプリケーションのグラフィカル制御要素として、又はメッセージングアプリケーションの上に表示されるオーバーレイ（例えば、モーダルウィンドウ）としてコード生成メカニズムを表示し得る。このように、ユーザは、メッセージングアプリケーションを終了せずに、２Ｄコードに符号化すべきメッセージコンテンツを選択し、２Ｄコードを生成することができる。このメッセージコンテンツは、テキスト、画像、ハイパーリンク、ビデオセグメント、二次元アニメーション、三次元モデル、三次元アニメーション、アプリケーション等を含むことができるが、これらに限定されない。
【００２３】
幾つかの実施形態では、モバイルデバイス１０４は、ネットワークインタフェースを含み、デバイスのロケーション情報又は環境情報を捕捉することが可能なセンサを含む任意の電子デバイス又は計算デバイスであり得る。例えば、モバイルデバイス１０４は、スマートフォン１０６、タブレットデバイス１０８、ラップトップコンピュータ１１０、スマートウォッチ（図示せず）、又はネットワーク１０２を介して通信することが可能なネットワーク対応自動車両（図示せず）を含むことができる。さらに、メッセージングアプリケーションは、電子メールクライアント、ショートメッセージングサービス（ＳＭＳ）、オンラインチャット（例えば、インスタントメッセージング）クライアント、又はテキスト若しくは画像を他人と通信する任意の他のアプリケーションを含むことができる。
【００２４】
モバイルデバイス１０４は、それ自体で２Ｄコードを生成してもよく、又はコード生成タスクをコード生成サーバ１１２にオフロードしてもよい。例えば、モバイルデバイス１０４は、ネットワーク１０２を介してコード生成要求をコード生成サーバ１１２に送信し得る。ネットワーク１０２は、セルラネットワーク、無線ネットワーク、又はインターネット等の計算デバイスと互いにインタフェースする任意のネットワークを含むことができる。ネットワーク１０２は、ＩＰベースのネットワークを含んでもよく、又は無線アドホックネットワークを含んでもよい。
【００２５】
幾つかの実施形態では、コード生成サーバ１１２は、メッセージコンテンツを符号化する２Ｄコードを生成してもよく、又はメッセージコンテンツへのリンク（例えば、ハイパーリンク）を含む２Ｄコードを生成してもよい。例えば、コード生成サーバ１１２は、メッセージコンテンツをローカルに又は任意の記憶サーバに記憶し得、記憶サーバ上のメッセージコンテンツへのリンクを符号化する２Ｄコードを生成し得る。ターゲット受信者１２０は、自身のパーソナル計算デバイス１１６上のアプリケーションを使用して、２Ｄコードからのリンクを復号化し、リンクを辿り（例えば、ウェブブラウザ又は２Ｄコードを復号化するアプリケーションを使用して）、メッセージコンテンツをダウンロードすることにより、元のメッセージコンテンツにアクセスすることができる。
【００２６】
コード生成サーバ１１２が２Ｄコードを生成すると、コード生成サーバ１１２は、ネットワーク１２０を使用して、２Ｄコードをモバイルデバイス１０４に送信するか、又は２Ｄコードをターゲット受信者１２０のモバイルデバイス１１６に直接送信し得る。コード生成サーバ１１２が、要求を送信したデバイス（例えば、モバイルデバイス１０４）に２Ｄコードを返す場合、モバイルデバイス１０４は、ユーザ１１８が作成中のメッセージに２Ｄコードを挿入することができる。
【００２７】
ユーザ１１８が、メッセージの作成を終え、メッセージをターゲット受信者１２０に送信すると、モバイルデバイス１０４は、メッセージをターゲット受信者１２０に提供するメッセージングサーバ１１４にメッセージを送信することができる。次に、ターゲット受信者１２０は、任意の計算デバイス１１６を使用して、メッセージングサーバ１１４にログインし得（例えば、メッセージングアプリケーションを使用して）、その時点で、メッセージングサーバ１１４は、メッセージ（及び任意の他の未読メッセージ）を計算デバイス１１６に送信し得る。代替的には、モバイルデバイス１０４及び計算デバイス１１６が、ネットワーク１０２を介して互いとの直接通信セッション（例えば、ピアツーピア通信セッション）を有する場合、モバイルデバイス１０４は、この直接通信セッションを介してメッセージを計算デバイス１１６に送信し得る。
【００２８】
図２は、実施形態による、メッセージングアプリケーションから二次元コードを生成し送信する方法２００を示すフローチャートを提示する。動作中、モバイルデバイスは、メッセージングアプリケーションから、２Ｄコードを生成する要求を受信することができる（動作２０２）。要求の受信に応答して、モバイルデバイスは、２Ｄコードに変換するメッセージコンテンツを入力又は選択する、モーダルウィンドウ等のコード生成ユーザインタフェース（ＵＩ）メカニズムを提示することができる。例えば、メッセージングアプリケーションのＵＩは、２Ｄコードを生成するボタン（又は任意の他のタイプのユーザ入力メカニズム）を含み得る。ユーザがこのボタンを選択する場合、メッセージングアプリケーション（又はモバイルデバイスのオペレーティングシステム）は、コード生成ＵＩメカニズムを表示することができる。
【００２９】
代替的には、ユーザは、コード生成ＵＩメカニズムにアクセスするためのボタンを含む、モバイルデバイスのオペレーティングシステムにより提供される別のＵＩ要素（例えば、画面上キーボード又は制御パネル）にアクセスし得る。このＵＩ要素は、メッセージングアプリケーションのユーザインタフェース内に提示してもよく、又はメッセージングアプリケーションのユーザインタフェース（例えば、デフォルト画面上キーボード）の上のオーバーレイとしてオペレーティングシステムにより提示してもよい。
【００３０】
したがって、ユーザは、メッセージングアプリケーションを隠す必要なく、別のアプリケーションに切り替える必要なく、又はメッセージングアプリケーションを終了する必要なく、コード生成ＵＩメカニズムにアクセスし得る。これにより、ユーザをイライラさせるか、又は混乱させ得る追加のステップをユーザが実行する必要性を回避することができ、それにより、通信効率を改善しながら、ユーザ経験を強化する。
【００３１】
幾つかの実施形態では、コード生成ＵＩメカニズムは、ユーザがテキスト、ハイパーリンク、画像、オーディオ若しくはビデオセグメント、又は２Ｄコードに変換することができる任意の他のコンテンツを入力できる（例えば、タイプ又はペーストすることにより）ようにする入力フィールドを含むことができる。代替的には、コード生成ＵＩメカニズムはブラウザウィンドウを含み得、それにより、ユーザは、ファイルシステム、画像の集まり（例えば、仮想フォトアルバム）、１組の個人コンタクト（例えば、仮想コンタクトインデックス）、又はデータの任意の集まりを通して閲覧することができる。
【００３２】
モバイルデバイスは、コード生成ＵＩメカニズムをユーザに提示すると、ユーザがメッセージコンテンツを選択又は入力するのを待ち得る（動作２０６）。幾つかの実施形態では、コード生成ＵＩメカニズムは、コード生成メカニズムをディセーブルするボタン（例えば、「キャンセル」ボタン）を含むことができる。コード生成ＵＩメカニズムは、ユーザからメッセージコンテンツを受信しない場合、ユーザがコード生成ＵＩメカニズムをキャンセル又は別の方法でディセーブルしたか否かを判断し得る（動作２０８）。ユーザがコード生成ＵＩメカニズムをディセーブルしていない場合、システムは動作２０６に戻り、２Ｄコードに変換するメッセージコンテンツを待ち得る。その他の場合、プロセスは終了し得、それにより、ユーザは通常通り（例えば、２Ｄコードを生成せずに）通信等し得る。
【００３３】
他方、モバイルデバイスは、変換するメッセージコンテンツを受信する場合（動作２０６）、メッセージコンテンツの２Ｄコードの生成に進み得る（動作２１０）。幾つかの実施形態では、モバイルデバイスは２Ｄコードをローカルに生成し得る。例えば、メッセージングアプリケーション、オペレーティングシステム、又はモバイルデバイス上の別のアプリケーション若しくはハードウェアモジュール（例えば、集積回路）は、メッセージコンテンツを符号化するか、又はメッセージコンテンツへのリンク（例えば、ハイパーリンク）を符号化する２Ｄコードを生成することができる。
【００３４】
幾つかの他の実施形態では、モバイルデバイスは、モバイルデバイスの代わりに２Ｄコードを生成するコード生成サーバに、コード生成要求を送信し得る。コード生成サーバは、２Ｄコードをローカルモバイルデバイスに返し得るか、又は幾つかの実施形態では、２Ｄコードを意図される受信者（例えば、意図される受信者が使用している任意のモバイルデバイス）に送信し得る。
【００３５】
次に、モバイルデバイスにより、ユーザは、メッセージの作成又は編集を続けることができ、メッセージ送信要求の受信を待つ（動作２１２）。モバイルデバイス（例えば、メッセージングアプリケーション）は、送信要求を受信しない場合、ユーザが現在のメッセージをキャンセルしたか否か、又はメッセージングアプリケーションをディセーブルしたか否かを判断し得る（動作２１４）。
【００３６】
ユーザが、メッセージをキャンセルしていないか、又はメッセージングアプリケーションをディセーブルしていない場合、システムは動作２１２に戻り、ユーザがメッセージの作成又は編集を終えるのを待ち得る。その他の場合、プロセスは終了し得、それにより、現在のメッセージ又は通信セッションをキャンセル等する。
【００３７】
モバイルデバイスは、メッセージ送信要求を受信すると、少なくとも二次元コードを含むメッセージを生成することができ（動作２１６）、ターゲット受信者へのメッセージの送信に進む（動作２１８）。幾つかの実施形態では、メッセージは２Ｄコードを含むことができ、２Ｄコードに変換されなかった追加のメッセージコンテンツを含むこともできる。
【００３８】
さらに、動作２１８中、モバイルデバイスは、メッセージをメッセージングサーバに送信し得、メッセージングサーバはメッセージをターゲット受信者に提供するか、又はモバイルデバイスは、メッセージをターゲット受信者に直接送信し得る（例えば、「プッシュ」メッセージを介して、又はピアツーピアネットワークを介して）。
【００３９】
図３Ａは、実施形態による、送信者のモバイルデバイスにおいて二次元コードを生成する場合のコンピュータネットワークを介しての例示的な通信３００を示す。ユーザが送信者デバイス３０２のメッセージングアプリケーションをアクティブ化する場合、送信者デバイス３０２は、メッセージングサーバ３０４へのローカルユーザのログイン信用情報を含むログイン要求３１２を送信することができる。ローカルユーザのログイン信用情報が有効である場合、ログインサーバ３０４は、ログイン承認３１４を送信者デバイス３０２に返し得る。
【００４０】
次に、ローカルユーザが２Ｄコードをターゲット受信者に送信したい場合、送信者デバイス３０２は、符号化するメッセージコンテンツを取得するＵＩメカニズムを提示することができる（動作３１６）。送信者デバイス３０２は、２Ｄコードをローカルに生成し得（動作３１８）、少なくとも２Ｄコードを含むメッセージを生成することもできる（動作３２４）。次に、送信者デバイス３０２は、メッセージを記憶することができるメッセージングサーバ３０６に生成されたメッセージを送信し得、それにより、ターゲット受信者はメッセージを随時取得することができる。
【００４１】
２Ｄコードを含むメッセージを取得するために、ターゲット受信者は、受信者デバイス３１０上のメッセージングアプリケーションにアクセスし得、受信者デバイス３１０は、ターゲット受信者にメッセージングサービスにログインするように求め得る。受信者デバイス３１０は、ログインサーバ３０４と同じサーバであってもよく又はなくてもよいログインサーバ３０８にログイン要求３４０を送信し得る。
【００４２】
ターゲット受信者のログイン信用情報が有効である場合、ログインサーバ３０８は、ログイン承認３４２を受信者デバイス３１０に返し得る。この時点で、受信者デバイス３１０は、任意の保留中のメッセージを受信するメッセージ読み取り要求３４４をメッセージングサーバ３０６に送信し得る。メッセージングサーバ３０６は、それに応答して、ターゲット受信者に意図されるメッセージ（例えば、ターゲット受信者がまだ読んでいないメッセージ）を検索し得、２Ｄコードを含むメッセージを受信者デバイス３１０に送信し得る。
【００４３】
代替的には、幾つかの実施形態では、送信者デバイス３０２は、メッセージを受信者デバイス３１０に直接送信し得る。これにより、送信者デバイス３０２及び受信者デバイス３１０はメッセージングサーバ３０６を迂回し得る。例えば、送信者デバイス３０２及び受信者デバイス３１０が、準リアルタイムで互いと通信する場合、送信者デバイス３０２は、受信者デバイス３１０に関連付けられたネットワークアドレスに直接、メッセージを送信することができる（例えば、「プッシュ」メッセージ又はピアツーピアネットワークを介して）。この実施形態では、送信者デバイス３０２及び受信者デバイス３１０は、最初にログイン要求をログインサーバ３０４及び３０８にそれぞれ送信する必要はない。むしろ、送信者デバイス３０２及び受信者デバイス３１０は、デジタル証明書又は現在既知若しくは後に開発される任意の他のタイプの認証情報を交換する等により、互いを直接認証し得る。
【００４４】
幾つかの実施形態では、受信者デバイス３１０は、送信者デバイス３０２から発せられたメッセージを受信する場合、２Ｄコードをメッセージングアプリケーション内に提示することができる。ユーザは、２Ｄコードを復号化し得る受信者デバイス３１０上の別のアプリケーションに２Ｄコードをコピーし得る。
【００４５】
代替的には、受信者デバイス３１０でのメッセージングアプリケーションは、２ＤコードをインタラクティブＵＩ要素（例えば、ボタン）として提示し得る。ターゲット受信者は、受信者デバイス３１０においてＵＩ内の２Ｄコードを選択し得（例えば、ＵＩ内の２Ｄコードをタップ又はクリックすることにより）、それにより、受信者デバイス３１０は、２Ｄコードを復号化する別のアプリケーションを開始させ得る。受信者デバイス３１０は、この他のアプリケーション内に符号化されたメッセージコンテンツを提示し得るか、又は復号化されたメッセージコンテンツをメッセージングアプリケーションに送信して、復号化メッセージコンテンツをメッセージングアプリケーション内部に提示し得る。例えば、他のアプリケーションは、第三者アプリケーション、オペレーティングシステムと共に供給されるアプリケーション、オペレーティングシステムのソフトウェア拡張、又はオペレーティングシステムそれ自体を含むことができる。
【００４６】
図３Ｂは、実施形態による、コード生成サーバ３０５において二次元コードが生成される場合のコンピュータネットワークを介しての例示的な通信３５０を示す。特に、送信者デバイス３０２は、符号化するメッセージコンテンツを取得するＵＩメカニズムを提示した（動作３１６）後、２Ｄコードを生成する要求をコード生成サーバ３０５に送信することができる（動作３２０）。この要求は、送信者が２Ｄメッセージに変換したいメッセージコンテンツを含むことができる。
【００４７】
コード生成サーバ３０５が、メッセージコンテンツを符号化する２Ｄコードを生成してもよく、又はメッセージコンテンツへのリンク（例えば、ハイパーリンク）を含む２Ｄコードを生成してもよいことに、再び言及しておく。２Ｄコードがリンクを含む場合、コード生成サーバ３０５は、元のメッセージコンテンツをローカルに又は第三者記憶サーバ（図示せず）に記憶し得、メッセージコンテンツの取得に使用することができるリンクを生成する。コード生成サーバ３０５は、このリンクを符号化する２Ｄコードを生成することができる。次に、受信者デバイス３１０は、２Ｄコードを取得し、２Ｄコードからリンクを復号化する場合、リンクを辿って元のメッセージコンテンツを取得し得る。
【００４８】
２Ｄコードを生成した後、送信者デバイス３０２は、２Ｄコードをコードメッセージングサーバから受信し得る（動作３２２）。次に、送信者デバイス３０２は、２Ｄコードを含むメッセージの生成（動作３２４）及びメッセージングサーバ３０６へのメッセージの送信（動作３３０）に進み得る。しかし、幾つかの実施形態では、送信者デバイス３０２は、２Ｄコードを受信者デバイス３１０に直接送信し得、したがって、メッセージングサーバ３０６を迂回する。
【００４９】
幾つかの他の実施形態では、２Ｄコードを送信者デバイス３０２に返す代わりに、コード生成サーバ３０５は、２Ｄコードを送信者３０２の代理としてのメッセージングサーバ３０６又は受信者デバイス３１０に送信し得る。この実施形態は、送信者は２Ｄコードを含むメッセージを生成し（例えば、動作３２４中）、２Ｄコードを含むメッセージを送信する（例えば、動作３３０中）余分なステップを経る必要性がないため、送信者に２Ｄコードを送信するプロセスを簡易化することができる。ユーザは、２Ｄコードを含まない追加のメッセージを送信したい場合、メッセージングアプリケーションを使用して、これらのメッセージを２Ｄコードへのフォローアップメッセージとして送信し得る。
【００５０】
図４は、実施形態による、メッセージングアプリケーションを使用して、二次元コードを生成して、ターゲット受信者に送信することを促進する例示的な装置４００を示す。装置４００は、有線又は無線通信チャネルを介して互いと通信し得る複数のモジュールを含むことができる。装置４００は、１つ又は複数の集積回路を使用して実現し得、図４に示されるモジュールよりも少数又は多数のモジュールを含み得る。さらに、装置４００は、コンピュータシステムに統合してもよく、又は他のコンピュータシステム及び／又はデバイスと通信することが可能な別個のデバイスとして実現し得る。特に、装置４００は、データ記憶モジュール４１０、１組のセンサ４２０、通信モジュール４３０、ユーザインタフェースモジュール４４０、メッセージ作成モジュール４５０、コード生成モジュール４６０、及びメッセージ交換モジュール４７０を含むことができる。
【００５１】
幾つかの実施形態では、データ記憶モジュール４１０は、ローカルユーザにより作成又は取得された任意のコンテンツを記憶することができ、ユーザが他人と通信するのに使用し得る１つ又は複数のメッセージングアプリケーションを記憶することができる。センサ４２０は、画像センサ、マイクロフォン、カメラシステム、ＧＰＳセンサ、コンパス等の、ユーザが他人と共有するコンテンツを生成できるようにする１つ又は複数の物理的なセンサを含むことができる。通信モジュール４３０は、インターネットパケット（ＩＰ）ベースのネットワーク、アドホックネットワーク（例えば、Bluetooth（登録商標）又はＷｉ−Ｆｉを介して）等のコンピュータネットワークを介して通信するための有線又は無線インタフェースを含むことができる。
【００５２】
ユーザインタフェースモジュール４４０は、グラフィカル制御要素を表示画面に提示することができ、ユーザからユーザ入力を受信することができる。例えば、表示画面はタッチセンシティブ（例えば、容量性タッチ又は抵抗性タッチ）入力メカニズムを含み得、それにより、ユーザは、指を使用してタッチセンシティブ表示画面でジェスチャを実行することができ、ユーザインタフェースモジュール４４０はこれをユーザ入力コマンドとして解釈する。
【００５３】
メッセージ作成モジュール４０２により、ローカルユーザは、メッセージのターゲット受信者を指定することにより、メッセージを作成し、テキスト及び／又は他のコンテンツをメッセージ本文の入力フィールドに挿入することができる。コード生成モジュール４０４は、ユーザが２Ｄコードに符号化するコンテンツを入力又は選択できるようにするグラフィカル制御要素を表示するようにユーザインタフェースモジュール４４０を構成することができ、コンテンツを２Ｄコードに変換するプロセスを開始又は実行する。ユーザがメッセージの作成を終えると、メッセージ交換モジュール４７０は、コンピュータネットワークを介してメッセージをターゲット受信者に送信するように通信モジュール４３０を構成することができる。
【００５４】
図５は、実施形態による、メッセージングアプリケーションを使用して、２Ｄコードを生成し、ターゲット受信者に送信することを促進する例示的なコンピュータシステム５０２を示す。コンピュータシステム５０２は、プロセッサ５０４、メモリ５０６、及び記憶装置５０８を含むことができる。メモリ５０６は、管理メモリとして機能する揮発性メモリ（例えば、ＲＡＭ）を含むことができ、１つ又は複数のメモリプールを記憶するのに使用することができる。記憶装置５０８は、ハードドライブ、ソリッドステート記憶装置（例えば、フラッシュドライブ）等の永続的なデータを記憶することができる任意の不揮発性記憶媒体を含むことができる。さらに、コンピュータシステム５０２は、マルチメディアデバイス５１０、ユーザ入力デバイス５１２、電力ユニット５１４、通信メカニズム５１６、及び１つ又は複数のセンサ５１８を含むことができるか、又はこれらに結合することができる。
【００５５】
記憶装置５０８は、オペレーティングシステム５２０、メッセージングシステム５２２、及びデータ５３０を記憶することができる。メッセージングシステム５２２は命令を含むことができ、命令は、コンピュータシステム５０２により実行されると、コンピュータシステム５０２に、本開示に記載される方法及び／又はプロセスを実行させることができる。特に、メッセージングシステム５２２は、ローカルユーザが、メッセージのターゲット受信者を指定することによりメッセージを作成し、テキスト及び／又は他のコンテンツをメッセージ本文の入力フィールドに挿入できるようにする命令（メッセージ作成モジュール５２４）を含み得る。
【００５６】
さらに、メッセージングシステム５２２は、ユーザが２Ｄコードに符号化するコンテンツを入力又は選択できるようにするグラフィカル制御要素を表示するようにマルチメディアデバイス５１０を構成する命令と、コンテンツを２Ｄコードに変換するプロセスを開始又は実行する命令（コード生成モジュール５２６）とを含むことができる。メッセージングシステム５２２は、コンピュータネットワークを介してメッセージをターゲット受信者に送信する（メッセージ交換モジュール５２８）ように通信デバイス５１６を構成する命令を含むこともできる。
【００５７】
データ５３０は、入力として要求されるか、又は本開示に記載される方法及び／又はプロセスにより出力としてに生成される任意のデータを含むことができる。特に、データ５３０は、ローカルユーザにより作成されるか、又は取得された少なくとも任意のコンテンツを記憶することができ、ユーザが他人と通信するために使用し得る１つ又は複数のメッセージングアプリケーションを記憶することができる。さらに、データ５３０は、コンタクトデータ、電話帳データ、メッセージ、写真、ビデオ等のこれらのアプリケーションのデータを記憶することができる。
【００５８】
幾つかの実施形態では、プロセッサ５０４は、オペレーティングシステム５２０及びメッセージングシステム５２２の命令を実行して、マルチメディアデバイス５１０に情報を提示することに関連する動作、電話呼を開始し管理することに関連する動作、メッセージの管理（例えば、メッセージの作成、送信、及び／又は受信）に関連する動作、ネットワークを介してのデータの通信に関連する動作、カメラ動作、及び記録動作等のコンピュータシステム５０２の全体動作を制御し得る。プロセッサ５０４は、ローカル命令又はリモート命令を実行して、上述した方法でのステップの全て又は部分を実行する１つ又は複数の処理ユニットを含み得る。加えて、プロセッサ５０４は、１つ又は複数のハードウェアモジュールを含み得、１つ又は複数のソフトウェアモジュールを実行し得、それらはプロセッサ５０４とコンピュータシステム５０２の他の構成要素との間のインタラクションを促進する。例えば、プロセッサ５０４は、プロセッサ５０４とマルチメディアデバイス５１０との間のインタフェースを管理するマルチメディアモジュールを含み得る。
【００５９】
電力ユニット５１４は、電力をコンピュータシステム５０２の様々な構成要素に提供することができる。例えば、電力ユニット５１４は、電力管理システム、１つ又は複数の電源、電池、及びモバイルコンピュータシステム５０２での電力の生成、管理、及び分配に関連する他の構成要素を含むことができる。
【００６０】
マルチメディアデバイス５１０は、コンピュータシステム５０２とユーザとの間に出力インタフェースを提供する画面を含むことができる。幾つかの実施形態では、画面は液晶ディスプレイ（ＬＣＤ）を含み得る。マルチメディアデバイス５１０は、オーディオ信号を出力するオーディオ構成要素（例えば、少なくとも１つのスピーカ）を含むこともできる。
【００６１】
ユーザ入力デバイス５１２は、キーボード、マウス、クリックホィール、ボタン等のコンピュータシステム５０２に含まれるか、又は結合される１つ又は複数のインタフェースデバイスを含むこともできる。ボタンは、ホームボタン、ボリュームボタン、開始ボタン、ロックボタン、電力又はスタンバイボタン、又はマウスボタンを含み得るが、これらに限定されない。
【００６２】
さらに、幾つかの実施形態では、マルチメディアデバイス５１０はユーザ入力デバイス５１２を含み得る。例えば、マルチメディアデバイス５１０は、ユーザからの入力信号を受信するタッチパネル（ＴＰ）をＬＣＤ画面に含み得る。タッチパネルは、タッチジェスチャ、複数の指のタッチジェスチャ、スワイプジェスチャ、及び／又はタッチパネル上の任意の他のジェスチャを検知する１つ又は複数のタッチセンサを含むことができる。タッチセンサは、タッチ又はスワイプジェスチャの境界を検知するのみならず、タッチ又はスワイプジェスチャに関連する時間期間及び圧力も検知し得る。
【００６３】
センサ５１８は、ローカルユーザが２Ｄコードに符号化するコンテンツの生成に使用することができる１つ又は複数のセンサを含むことができる。例えば、センサ５１８は、マイクロフォン、及び前面カメラ及び／又は背面カメラ等の１つ又は複数の画像センサ（例えば、ＣＭＯＳ又はＣＣＤ画像センサ）を含むことができる。前面カメラ及び／又は背面カメラは、コンピュータシステム５０２が写真モード又はビデオモード等の動作モードである間、外部マルチメディアデータを受信し得る。これらのカメラは、固定光学レンズシステムを含んでもよく、又はフォーカス及び光学的ズーム機能を含んでもよい。さらに、マイクロフォンは、モバイルコンピュータシステム５０２が記録モード、音声認識モード、又はコールモード等の特定の動作モードである場合、外部オーディオ信号を受信するように構成することができる。コンピュータシステム５０２は、センサデータを記憶装置５０８に記憶することができ、センサデータ（又はセンサデータへのリンク）を含む２Ｄコードを生成することができ、及び／又は通信デバイス５１６を介して２Ｄコードを送信することができる。
【００６４】
幾つかの実施形態では、センサ５１８は、加速度計又は運動センサ、ジャイロスコープセンサ、磁気センサ、圧力センサ、温度センサ、又は近接性センサを含むことができる。例えば、コンピュータシステム５０２は、加速度計又は運動センサからの測定値を捕捉して処理し、コンピュータシステム５０２の位置座標を検出し、コンピュータシステム５０２又はコンピュータシステム５０２の構成要素の位置変化を検出し、及び／又はコンピュータシステム５０２の向き加速度／減速度を検出することができる。さらに、コンピュータシステム５０２は、１つ又は複数の近接性センサからの測定値を捕捉して処理し、コンピュータシステム５０２へのユーザ接触の有無を検出し、及び／又は近傍の物体に物理的に全く接触せずに、これらの物体の存在を検出することができる。
【００６５】
コンピュータシステム５０２は、圧力センサからの測定値を使用して、例えば、コンピュータシステム５０２（例えば、ラップトップ）の開状態又は閉状態を検出することができる。さらに、コンピュータシステム５０２は、１つ又は複数の温度センサからの測定値を使用して、コンピュータシステム５０２、コンピュータシステム５０２の１つ又は複数の構成要素、及び／又はコンピュータシステム５０２の周囲の周辺温度の変化を検出することができる。
【００６６】
通信デバイス５１６は、コンピュータシステム５０２と他のデバイスとの間のアドホックネットワーク又はＩＰベースのネットワークを介した有線又は無線の通信を促進するように構成することができる。例えば、通信デバイス５１６は、Ｗｉ−Ｆｉ、２Ｇ、３Ｇ、４Ｇ、現在既知若しくは後に開発される任意の通信規格、又はそれらの組合せ等の通信規格に基づいて無線ネットワークにアクセスし得る無線機を含むことができる。
【００６７】
例示的な一実施形態では、通信デバイス５１６は、外部ブロードキャスト管理システムからブロードキャストチャネルを介してブロードキャスト信号又はブロードキャスト関連情報を受信し得る。例示的な一実施形態では、通信デバイス５１６は、短距離通信を促進する近距離通信（ＮＦＣ）モジュールを含み得る。例えば、ＮＦＣモジュールは、無線周波数識別（ＲＦＩＤ）技術、赤外線データ関連付け（ＩｒＤＡ）技術、超広帯域（ＵＷＢ）技術、Bluetooth（ＢＴ）技術、及び他の技術に基づいて実施し得る。
【００６８】
この詳細な説明でのデータ構造及びコードは通常、コンピュータ可読記憶媒体に記憶され、コンピュータ可読記憶媒体は、コンピュータシステムが使用するコード及び／又はデータを記憶することができる任意のデバイス又は媒体であり得る。コンピュータ可読記憶媒体は、揮発性メモリ、不揮発性メモリ、ディスクドライブ、磁気テープ、ＣＤ（コンパクトディスク）、ＤＶＤ（デジタル多用途ディスク又はデジタルビデオディスク）等の磁気記憶装置若しくは光学記憶装置、又は現在既知であるか、若しくは後に開発されるコンピュータ可読媒体を記憶可能な他の媒体を含むがこれらに限定されない。
【００６９】
詳細な説明のセクションで説明される方法及びプロセスは、コード及び／又はデータとして実施することができ、コード及び／又はデータは、上述したようなコンピュータ可読記憶媒体に記憶することができる。コンピュータシステムは、コンピュータ可読記憶媒体に記憶されたコード及び／又はデータを読み取り実行すると、データ構造及びコードとして実施され、コンピュータ可読記憶媒体内に記憶された方法及びプロセスを実行する。
【００７０】
さらに、上述した方法及びプロセスは、ハードウェアモジュールに含むことができる。例えば、ハードウェアモジュールは、特定用途向け集積回路（ＡＳＩＣ）チップ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、及び現在既知であるか、又は後に開発される他のプログラマブル論理デバイスを含むことができるが、これらに限定されない。ハードウェアモジュールは、アクティブ化されると、ハードウェアモジュール内に含まれる方法及びプロセスを実行する。
【００７１】
本発明の実施形態の上記説明は、例示及び説明のみを目的として提示された。網羅的である、すなわち、開示された形態に本発明を低減する意図はない。したがって、当業者に多くの変更及び変形が明らかになる。さらに、上記開示は、本発明を限定する意図はない。本発明の範囲は添付の特許請求の範囲により規定される。
【図１】
0006803329.tif 000002
【図２】
0006803329.tif 000003
【図３Ａ】
0006803329.tif 000004
【図３Ｂ】
0006803329.tif 000005
【図４】
0006803329.tif 000006
【図５】
0006803329.tif 000007