JP6677742B2 - メッセージングシステムを介してメディアを共有およびリミックスする技術 - Google Patents

メッセージングシステムを介してメディアを共有およびリミックスする技術 Download PDF

Info

Publication number
JP6677742B2
JP6677742B2 JP2017549606A JP2017549606A JP6677742B2 JP 6677742 B2 JP6677742 B2 JP 6677742B2 JP 2017549606 A JP2017549606 A JP 2017549606A JP 2017549606 A JP2017549606 A JP 2017549606A JP 6677742 B2 JP6677742 B2 JP 6677742B2
Authority
JP
Japan
Prior art keywords
media
application
messaging
previous
media element
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.)
Active
Application number
JP2017549606A
Other languages
English (en)
Other versions
JP2018514025A (ja
Inventor
サレム フランクリン、アレクサンダー
サレム フランクリン、アレクサンダー
シュタイナー、マシュー
Original Assignee
フェイスブック,インク.
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 フェイスブック,インク. filed Critical フェイスブック,インク.
Publication of JP2018514025A publication Critical patent/JP2018514025A/ja
Application granted granted Critical
Publication of JP6677742B2 publication Critical patent/JP6677742B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/18Commands or executable codes
    • 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/06Message adaptation to terminal or network requirements
    • 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/216Handling conversation history, e.g. grouping of messages in sessions or threads

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

ユーザらは、メッセージングシステムにおいて、2人以上のユーザ間のテキストベースの会話で互いにメッセージをやりとりして、互いにインタラクションすることがある。ユーザは、メッセージングシステムにおいて、自身に関連付けられたユーザアカウントを有することができ、ユーザアカウントは、そのユーザのオンラインID、そのユーザ宛てのメッセージの送信先を提供するとともに、一般に、そのユーザによるメッセージングシステムへのアクセスおよびメッセージングシステムの使用を調整する。ユーザは、モバイルデバイス(例えば、携帯電話機)、デスクトップコンピュータ、ウェブブラウザ、専用のメッセージングアプリケーションなど、様々なエンドポイントからメッセージングシステムにアクセスすることができる。
本明細書で記載するいくつかの新規な実施形態についての基本的な理解を与えるため、簡単な概要を以下で提示する。本概要は、包括的概観ではなく、主要な/重要な要素を特定するものでも、その範囲を定めるものでもない。後ほど提示する、より詳細な説明への序章として、いくつかの概念を簡単な形で提示する。
種々の実施形態は、広くは、メッセージングシステムを介してメディアを共有およびリミックスする技術に関するものである。いくつかの実施形態は、特に、メディアコンテンツのサードパーティソースをプロモーションすることにより、メディアの共有およびリミックスを推進する技術に関する。一実施形態では、例えば、装置は、メディアアプリケーションに関連付けられたメディア要素をメッセージングアプリケーションにおいて受信するように動作するメディア管理コンポーネントと、そのメディア要素を含むメッセージパッケージを生成し、そのメッセージパッケージをメッセージングサーバーに送信するように動作するメッセージングコンポーネントであって、メッセージパッケージは、そのメディア要素に関する帰属レコードを含み、帰属レコードは、そのメディア要素のためのメディアアプリケーションとのアプリケーション間リンクを含む、メッセージングコンポーネントと、を備え得る。他の実施形態について、記載されるとともに、特許請求される。
上記目的および関連した目的を達成するため、いくつかの例示的な態様について、以下の説明および添付の図面に関連付けて本明細書で記載する。これらの態様は、本明細書で開示する原理を実施することが可能な種々の形態を示すものであり、そのすべての態様および均等物は、特許請求の対象範囲内にあるものとする。他の効果および新規な特徴は、図面を併用して考察することで、以下の詳細な説明から明らかになるであろう。
本発明による実施形態は、具体的には、方法、記憶媒体、システム、およびコンピュータプログラムプロダクトに関する添付の請求項において開示しており、ある1つの請求項カテゴリである例えば方法で記載されている特徴はいずれも、他の請求項カテゴリである例えばシステムでも同様に特許請求の対象となり得る。添付の請求項における従属関係または後方参照は、単なる形式的な理由で選択されたものである。しかしながら、先行する請求項への(特に多項従属での)意図的な後方参照の結果として得られる主題がいずれも、同様に特許請求の対象となり得ることで、請求項およびその特徴の任意の組み合わせが開示されているかのように、それらは、添付の請求項で選択されている従属関係にかかわりなく特許請求の対象となり得る。特許請求の対象となり得る主題は、添付の請求項に記載の特徴の組み合わせだけではなく、請求項に記載の特徴の他の任意の組み合わせも含み、このとき、請求項に記載の特徴はそれぞれ、請求項に記載の他のいずれかの特徴または他の特徴の組み合わせと組み合わせることができる。さらに、本明細書に記載もしくは図示の実施形態および特徴はいずれも、単独の請求項において、かつ/または本明細書に記載もしくは図示のいずれかの実施形態もしくは特徴との、または添付の請求項の特徴のいずれかとの任意の組み合わせで、特許請求され得る。
本発明による実施形態では、コンピュータにより実行される方法は、
メディアアプリケーションに関連付けられたメディア要素を、メディアメッセージングシステムのユーザのクライアントデバイス上で動作するメッセージングアプリケーションにおいて受信することであって、メディアアプリケーションは、メッセージングアプリケーションとは別のアプリケーションとして、クライアントデバイス上にインストールされている、受信すること、
そのメディア要素を含むメッセージパッケージを生成することであって、
そのメディア要素は、コンピュータデータ表現として直接保存および/またはリファレンスとして保存され、
メッセージパッケージは、そのメディア要素に関する帰属レコードを含み、
帰属レコードは、そのメディア要素のためのメディアアプリケーションとのアプリケーション間リンクを含む、生成すること、
メディアメッセージングシステムの他のユーザの1つ以上の他のクライアントデバイスへの配信のために、そのメッセージパッケージを、クライアントデバイスからメッセージングサーバーに送信すること、を含み得る。
同様に特許請求の対象となり得る、本発明による実施形態では、コンピュータにより実行される方法は、
メディアアプリケーションに関連付けられたメディア要素を、メッセージングアプリケーションにおいて受信すること、
そのメディア要素を含むメッセージパッケージを生成することであって、メッセージパッケージは、そのメディア要素に関する帰属レコードを含み、帰属レコードは、そのメディア要素のためのメディアアプリケーションとのアプリケーション間リンクを含む、生成すること、
そのメッセージパッケージをメッセージングサーバーに送信すること、を含み得る。
本発明による実施形態では、コンピュータにより実行される方法において、メッセージングアプリケーションはクライアントデバイス上にインストールされており、メディアアプリケーションは、メッセージングアプリケーションとは別のアプリケーションとして、クライアントデバイス上にインストールされており、コンピュータにより実行される方法は、さらに、
クライアントデバイス上で、アプリケーション間通信によって、メディア要素とアプリケーション間リンクとを含むメディアパッケージを、メッセージングアプリケーションにおいてメディアアプリケーションから受信すること、を含み得る。
本発明による実施形態では、コンピュータにより実行される方法は、さらに、
受信したメディアパッケージからメディア要素を抽出すること、
メッセージングアプリケーションにおいてメディア要素のプレビューを表示すること、
メッセージングアプリケーションにおいてメディア要素のユーザメディア選択を受け取ること、
メッセージングアプリケーション内で、メディア要素のユーザメディア選択に応じて、そのメディア要素を含むメッセージパッケージを生成すること、を含み得る。
本発明による実施形態では、コンピュータにより実行される方法は、さらに、
プロモーションされたメディアリポジトリをメディアサーバーから受信することであって、プロモーションされたメディアリポジトリは、プロモーションされた複数のメディア要素を含み、上記メディア要素は、プロモーションされた複数のメディア要素のうちの1つを含む、受信すること、
プロモーションされたメディア要素のうちの1つ以上を表示することであって、プロモーションされたメディア要素のうちの表示される1つ以上は、上記メディア要素を含む、表示すること、
メディア要素のユーザメディア選択を受け取ること、
メディア要素のユーザメディア選択に応じて、そのメディア要素を含むメッセージパッケージを生成すること、を含み得る。
本発明による実施形態では、コンピュータにより実行される方法は、さらに、
メッセージングアプリケーションのメディア要素ディスカバリ・セクションにおいて、上記メディア要素を表示すること、
メディア要素ディスカバリ・セクションにおいて、メディア要素のユーザメディア選択を受け取ること、
メディア要素のユーザメディア選択に応じて、そのメディア要素を含むメッセージパッケージを生成すること、を含み得る。
本発明による実施形態では、コンピュータにより実行される方法において、メッセージパッケージはメッセージスレッドに関連付けられており、コンピュータにより実行される方法は、さらに、
そのメッセージスレッドに関連付けられた前のメッセージパッケージを、メッセージングサーバーから受信することであって、前のメッセージパッケージは、メディアアプリケーションに関連付けられた前のメディア要素を含み、前のメッセージパッケージは、前の帰属レコードを含み、前の帰属レコードは、前のアプリケーション間リンクを含み、前のアプリケーション間リンクは、メディアアプリケーション内で前のメディア要素を識別する、受信すること、
そのメッセージスレッドにおいて、メディアアプリケーションに関する帰属表示要素に関連付けて、前のメディア要素を表示すること、
帰属表示要素に関連付けて、ユーザアプリケーション起動コマンドを受け取ること、
ユーザアプリケーション起動コマンドに応じて、メディアアプリケーションを起動すること、
前のアプリケーション間リンクをメディアアプリケーションに送信すること、
前のアプリケーション間リンクに関連付けて、メッセージスレッドアプリケーション間リンクをメディアアプリケーションに送信すること、
上記メディア要素と、そのメッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクと、を含むメディアパッケージを、メッセージングアプリケーションにおいてメディアアプリケーションから受信すること、
そのメッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクに基づいて、そのメディア要素をメッセージスレッドに取り込むプロンプトを提供すること、を含み得る。
本発明による実施形態では、コンピュータにより実行される方法において、メッセージングアプリケーションはクライアントデバイス上で実行されており、コンピュータにより実行される方法は、さらに、
クライアントデバイス上にメディアアプリケーションがインストールされていないと判断すること、
ユーザアプリケーション起動コマンドに応じて、クライアントデバイス上でメディアアプリケーションのインストールを開始すること、を含み得る。
本発明による実施形態では、コンピュータにより実行される方法は、さらに、
第2のメディアアプリケーションに関連付けられた前のメディア要素を含む前のメッセージパッケージを、メッセージングサーバーから受信すること、
前のメディア要素を表示すること、
表示された前のメディア要素に関連付けて、ユーザリミックスコマンドを受け取ること、
ユーザリミックスコマンドに応じて、メディアアプリケーションを起動すること、
前のメディア要素をメディアアプリケーションに送信すること、
前のメディア要素の変更バージョンを含む上記メディア要素を、メディアアプリケーションから受信すること、を含み得る。
同様に特許請求の対象となり得る、本発明による別の実施形態では、装置は、
デバイスに搭載されたプロセッサ回路と、
メディアアプリケーションに関連付けられたメディア要素をメッセージングアプリケーションにおいて受信するように、プロセッサ回路上で動作するメディア管理コンポーネントと、
そのメディア要素を含むメッセージパッケージを生成し、そのメッセージパッケージをメッセージングサーバーに送信するように動作するメッセージングコンポーネントであって、メッセージパッケージは、そのメディア要素に関する帰属レコードを含み、帰属レコードは、そのメディア要素のためのメディアアプリケーションとのアプリケーション間リンクを含む、メッセージングコンポーネントと、を備え得る。
本発明による実施形態では、装置において、メッセージングアプリケーションはデバイス上にインストールされており、メディアアプリケーションは、メッセージングアプリケーションとは別のアプリケーションとして、クライアントデバイス上にインストールされており、装置は、さらに、
クライアントデバイス上で、アプリケーション間通信によって、メディア要素とアプリケーション間リンクとを含むメディアパッケージを、メッセージングアプリケーションにおいてメディアアプリケーションから受信するように動作する上記メディア管理コンポーネントを備え得る。
本発明による実施形態では、装置は、さらに、
プロモーションされたメディアリポジトリをメディアサーバーから受信し、プロモーションされたメディア要素のうちの1つ以上を表示し、メディア要素のユーザメディア選択を受け取るように動作する上記メディア管理コンポーネントであって、プロモーションされたメディアリポジトリは、プロモーションされた複数のメディア要素を含み、上記メディア要素は、プロモーションされた複数のメディア要素のうちの1つを含み、プロモーションされたメディア要素のうちの表示される1つ以上は、上記メディア要素を含む、上記メディア管理コンポーネントと、
メディア要素のユーザメディア選択に応じて、そのメディア要素を含むメッセージパッケージを生成するように動作する上記メッセージングコンポーネントと、を備え得る。
本発明による実施形態では、装置において、メッセージパッケージはメッセージスレッドに関連付けられており、装置は、さらに、
そのメッセージスレッドに関連付けられた前のメッセージパッケージを、メッセージングサーバーから受信するように動作する上記メッセージングコンポーネントであって、前のメッセージパッケージは、メディアアプリケーションに関連付けられた前のメディア要素を含み、前のメッセージパッケージは、前の帰属レコードを含み、前の帰属レコードは、前のアプリケーション間リンクを含み、前のアプリケーション間リンクは、メディアアプリケーション内で前のメディア要素を識別する、上記メッセージングコンポーネントと、
そのメッセージスレッドにおいて、メディアアプリケーションに関する帰属表示要素に関連付けて、前のメディア要素を表示し、帰属表示要素に関連付けて、ユーザアプリケーション起動コマンドを受け取り、ユーザアプリケーション起動コマンドに応じて、メディアアプリケーションを起動し、前のアプリケーション間リンクをメディアアプリケーションに送信し、前のアプリケーション間リンクに関連付けて、メッセージスレッドアプリケーション間リンクをメディアアプリケーションに送信し、上記メディア要素と、そのメッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクと、を含むメディアパッケージを、メッセージングアプリケーションにおいてメディアアプリケーションから受信し、そのメッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクに基づいて、そのメディア要素をメッセージスレッドに取り込むプロンプトを提供するように動作する上記メディア管理コンポーネントと、を備え得る。
本発明による実施形態では、装置は、さらに、
デバイス上にメディアアプリケーションがインストールされていないと判断し、ユーザアプリケーション起動コマンドに応じて、デバイス上でメディアアプリケーションのインストールを開始するように動作する上記メディア管理コンポーネントを備え得る。
本発明による実施形態では、装置は、さらに、
第2のメディアアプリケーションに関連付けられた前のメディア要素を含む前のメッセージパッケージを、メッセージングサーバーから受信するように動作する上記メッセージングコンポーネントと、
前のメディア要素を表示し、表示された前のメディア要素に関連付けて、ユーザリミックスコマンドを受け取り、ユーザリミックスコマンドに応じて、メディアアプリケーションを起動し、前のメディア要素をメディアアプリケーションに送信し、前のメディア要素の変更バージョンを含む上記メディア要素を、メディアアプリケーションから受信するように動作する上記メディア管理コンポーネントと、を備え得る。
同様に特許請求の対象となり得る、本発明による別の実施形態では、少なくとも1つのコンピュータ可読記憶媒体は、複数の命令を含むことができ、それらの命令は、実行されることで、
メディアアプリケーションに関連付けられたメディア要素を、メッセージングアプリケーションにおいて受信すること、
そのメディア要素を含むメッセージパッケージを生成することであって、メッセージパッケージは、そのメディア要素に関する帰属レコードを含み、帰属レコードは、そのメディア要素のためのメディアアプリケーションとのアプリケーション間リンクを含む、生成すること、
そのメッセージパッケージをメッセージングサーバーに送信することと、をシステムに実行させる。
本発明による実施形態では、メッセージングアプリケーションは、クライアントデバイス上にインストールされており、メディアアプリケーションは、メッセージングアプリケーションとは別のアプリケーションとして、クライアントデバイス上にインストールされており、少なくとも1つのコンピュータ可読記憶媒体は、さらに複数の命令を含むことができ、それらの命令は、実行されることで、
クライアントデバイス上で、アプリケーション間通信によって、メディア要素とアプリケーション間リンクとを含むメディアパッケージを、メッセージングアプリケーションにおいてメディアアプリケーションから受信すること、をシステムに実行させる。
本発明による実施形態では、少なくとも1つのコンピュータ可読記憶媒体は、さらに複数の命令を含むことができ、それらの命令は、実行されることで、
プロモーションされたメディアリポジトリをメディアサーバーから受信することであって、プロモーションされたメディアリポジトリは、プロモーションされた複数のメディア要素を含み、上記メディア要素は、プロモーションされた複数のメディア要素のうちの1つを含む、受信すること、
プロモーションされたメディア要素のうちの1つ以上を表示することであって、プロモーションされたメディア要素のうちの表示される1つ以上は、上記メディア要素を含む、表示すること、
メディア要素のユーザメディア選択を受け取ること、
メディア要素のユーザメディア選択に応じて、そのメディア要素を含むメッセージパッケージを生成すること、をシステムに実行させる。
本発明による実施形態では、メッセージパッケージはメッセージスレッドに関連付けられており、少なくとも1つのコンピュータ可読記憶媒体は、さらに複数の命令を含むことができ、それらの命令は、実行されることで、
そのメッセージスレッドに関連付けられた前のメッセージパッケージを、メッセージングサーバーから受信することであって、前のメッセージパッケージは、メディアアプリケーションに関連付けられた前のメディア要素を含み、前のメッセージパッケージは、前の帰属レコードを含み、前の帰属レコードは、前のアプリケーション間リンクを含み、前のアプリケーション間リンクは、メディアアプリケーション内で前のメディア要素を識別する、受信すること、
そのメッセージスレッドにおいて、メディアアプリケーションに関する帰属表示要素に関連付けて、前のメディア要素を表示すること、
帰属表示要素に関連付けて、ユーザアプリケーション起動コマンドを受け取ること、
ユーザアプリケーション起動コマンドに応じて、メディアアプリケーションを起動すること、
前のアプリケーション間リンクをメディアアプリケーションに送信すること、
前のアプリケーション間リンクに関連付けて、メッセージスレッドアプリケーション間リンクをメディアアプリケーションに送信すること、
上記メディア要素と、そのメッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクと、を含むメディアパッケージを、メッセージングアプリケーションにおいてメディアアプリケーションから受信すること、
そのメッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクに基づいて、そのメディア要素をメッセージスレッドに取り込むプロンプトを提供すること、をシステムに実行させる。
本発明による実施形態では、メッセージングアプリケーションは、クライアントデバイス上で実行されており、少なくとも1つのコンピュータ可読記憶媒体は、さらに複数の命令を含むことができ、それらの命令は、実行されることで、
クライアントデバイス上にメディアアプリケーションがインストールされていないと判断すること、
ユーザアプリケーション起動コマンドに応じて、クライアントデバイス上でメディアアプリケーションのインストールを開始すること、をシステムに実行させる。
本発明による実施形態では、少なくとも1つのコンピュータ可読記憶媒体は、さらに複数の命令を含むことができ、それらの命令は、実行されることで、
第2のメディアアプリケーションに関連付けられた前のメディア要素を含む前のメッセージパッケージを、メッセージングサーバーから受信すること、
前のメディア要素を表示すること、
表示された前のメディア要素に関連付けて、ユーザリミックスコマンドを受け取ること、
ユーザリミックスコマンドに応じて、メディアアプリケーションを起動すること、
前のメディア要素をメディアアプリケーションに送信すること、
前のメディア要素の変更バージョンを含む上記メディア要素を、メディアアプリケーションから受信すること、をシステムに実行させる。
同様に特許請求の対象となり得る本発明による別の実施形態では、コンピュータにより実行される方法は、
メディアアプリケーションに関連付けられたメディア要素を、メッセージングアプリケーションにおいて受信すること、
そのメディア要素を含むメッセージパッケージを生成することであって、メッセージパッケージは、そのメディア要素に関する帰属レコードを含み、帰属レコードは、メディアアプリケーションでメディアサーバー上のメディア要素にネットワークアクセスするためのネットワークコンポーネントを構成設定するように機能する、生成すること、
そのメッセージパッケージをメッセージングサーバーに送信すること、を含み得る。
同様に特許請求の対象となり得る、本発明による別の実施形態では、コンピュータにより実行される方法は、
メディアアプリケーションに関連付けられたメディアパッケージを、メッセージングアプリケーションにおいて受信することであって、メディアパッケージは、メディア要素とメディアサービス帰属レコードとを含む、受信すること、
メディアサービス帰属レコードに基づいて、メッセージングアプリケーションでメディアサーバー上のメディア要素にネットワークアクセスするためのネットワークコンポーネントを構成設定すること、
そのメディア要素を含むメッセージパッケージを生成することであって、メッセージパッケージは、そのメディア要素に関するメディアアプリケーション帰属レコードを含み、メディアアプリケーション帰属レコードは、そのメディア要素のためのメディアアプリケーションとのアプリケーション間リンクを含む、生成すること、
そのメッセージパッケージをメッセージングサーバーに送信すること、を含み得る。
本発明による別の実施形態では、1つ以上の非一時的なコンピュータ可読記憶媒体で、ソフトウェアを具現化し、そのソフトウェアは、実行されることで、本発明または上記実施形態のいずれかによる方法を実施するように動作する。
本発明による別の実施形態では、システムは、1つ以上のプロセッサと、1つ以上のプロセッサに結合された少なくとも1つのメモリであって、1つ以上のプロセッサで実行可能な複数の命令を含む少なくとも1つのメモリと、を備えることができ、プロセッサは、複数の命令を実行することで、本発明または上記実施形態のいずれかによる方法を実施するように動作する。
本発明による別の実施形態では、好ましくは非一時的なコンピュータ可読記憶媒体を含む、コンピュータプログラムプロダクトは、データ処理システム上で実行されることで、本発明または上記実施形態のいずれかによる方法を実施するように動作する。
メディアメッセージングシステムの実施形態を示す。 共有コントロール群を有するメッセージングアプリケーションのユーザインタフェースの実施形態を示す。 利用できるメディア要素群を表示しているメッセージングアプリケーションのユーザインタフェースの実施形態を示す。 帰属付きメディア要素をメッセージスレッド内に表示しているメッセージングアプリケーションのユーザインタフェースの実施形態を示す。 ディープリンクされたメディア要素のページを表示しているメディアアプリケーションのユーザインタフェースの実施形態を示す。 インポートされた第2のメディア要素の共有を承認するための共有コントロールを表示しているメッセージングアプリケーションのユーザインタフェースの実施形態を示す。 インポートされた第2のメディア要素の承認された共有を表示しているメッセージングアプリケーションのユーザインタフェースの実施形態を示す。 同じクライアントデバイス上で実行されているメディアアプリケーションから受信したメディア要素を、メッセージングサーバーを介して共有するメッセージングアプリケーションの実施形態を示す。 メディアアプリケーションに関連付けられたメディアサーバーからメディアパッケージを受信するメッセージングアプリケーションの実施形態を示す。 アプリケーション間リンクを用いてメディアアプリケーションを起動するメッセージングアプリケーションの実施形態を示す。 図1のメディアメッセージングシステムのための論理フローの実施形態を示す。 図1のメディアメッセージングシステムについて、集中型システムの実施形態を示す。 図1のメディアメッセージングシステムについて、分散型システムの実施形態を示す。 コンピューティングアーキテクチャの実施形態を示す。 通信アーキテクチャの実施形態を示す。 無線デバイスアーキテクチャの実施形態を示す。
人々は、コミュニケーションのための新たな表現方法を求めている。人々は、新たなメディアコンテンツへのアクセスを許可するメディアアプリケーション、ならびにコンテンツを作成および加工する新たな方法に期待している。メディア・ディスカバリ、作成、加工ツールがメッセージングアプリケーションに組み込まれることがあるが、より大規模なアプリケーション開発コミュニティによって開発されたメディアツールの創造性および幅広さに対抗するのは現実的でないかもしれない。これに代えて、ユーザらが自身で所有するコンテンツを、メディアのソースに関する帰属(attribution)を提供しつつ、メッセージング会話内で共有する権限をユーザに与えることによって、新たな刺激的なメディアアプリケーションがプロモーション(promoted)され発見されることがある。ユーザらは、友人らからのコンテンツの帰属付き共有によって暗に推奨された未知のメディアアプリケーションを探索することに特に興奮する場合がある。ユーザらは、自身の好きなメッセージングアプリケーションで発見および作成したコンテンツを容易に共有できる権限を与えられることによって、新たなメディアアプリケーションへの展開接続を体験することがある。
ユーザらは、インターネットを介して流通する膨大な量のメディアコンテンツに、モバイルデバイスでアクセスできる。ユーザらは、写真、アニメーション、動画クリップ、音楽、ゲーム、および情報コンテンツ(例えば、映画上映時間)のようなメディアを保存、探索、および発見するためには、多種多様なメディアアプリケーションを利用し、友人らとのコミュニケーションのためには、メッセージングアプリケーションを利用することができる。それらのメディアアプリケーションが共有をサポートし得る場合には、ユーザらは、自身の好きなメッセージングアプリケーションにメディアをインポートし、そのメディアをメッセージング会話の流れの中で共有する権限を与えられることによる恩恵を受けることがある。
同様に、メディアアプリケーションは、それらのメディアが、共有メディアのソースの帰属を提示するように構成されたメッセージングアプリケーション内で共有されることによる恩恵を受けることがある。帰属付きメディア要素を受信したユーザは、それに関連したメディアアプリケーションを、そのユーザが以前に使用したことがない場合にはインストールするように、また、関連したメディアアプリケーションを以前にインストールしたことがあるがしばらく使用しなかった場合には再訪するように、プロンプトを提供される(prompted)ことがあり、または、そのメディアアプリケーションをデバイスの標準アプリケーションランチャによって起動する必要なく、そのメディアに直接アクセス制御によってアクセスする利便性を享受するだけの場合がある。これによって、そのメディアアプリケーションは、露出の増加および使用の拡大を得ることがある。
ユーザがインスタントメッセージング会話に参加することは、ユーザが共有を望むコンテンツを確かに、最小限の中断を伴って簡単に利用できるようにすることを享受できる手早く簡単なコミュニケーション様式に合致し得る。メッセージング会話において写真、アニメーション、ビデオ、または楽曲を受信したユーザは、ユーザインタフェースの数回の操作だけで、自身が所有する写真、アニメーション、ビデオ、また楽曲で返答することを望む場合がある。ユーザは、メッセージングアプリケーションと、自身が望むメディアコンテンツへのアクセスを提供するメディアアプリケーションと、の間で手早く行き来することを享受できる場合がある。ユーザは、さらに、メディアアプリケーション用のメディアコンテンツの少なくとも一部をメッセージングアプリケーション自体のメディア・ディスカバリ領域内で見ることを享受できる場合がある。また、メディアアプリケーションの開発者は、コンテンツが共有されるときにはいずれも、それらが、適切な帰属と、既存のユーザと新たな潜在的ユーザの両方に対するそれらのサービスのプロモーション(promotion)と、を受けると分かっていることによる信頼によって、それらのコンテンツを容易に利用できるようにすることによる恩恵を受ける場合がある。
結果として、これらの技術により、ユーザらのメッセージング体験を向上させるとともに、実際に使用されるメディアアプリケーションをプロモーションすることが可能である。新たな刺激的なメディアアプリケーションが、帰属によるプロモーションを受けるとともに、さらなる新たなコンテンツを提供する新たなユーザからの認知度の向上を得ることによって、メッセージングユーザは、新たな優れたメディアを発見、加工、共有のために受信する一方、それらのコンテンツを人々が使用するように掻き立てる創造的なメディアアプリケーションは、より幅広い視聴者に届くことによる恩恵を受けるという、好循環を生み出すことが可能である。
以下では図面を参照し、図面では、類似の要素は、全体を通して同様の参照符号を用いて示している。以下の説明では、その完全な理解を与えるため、説明を目的として、様々な具体的詳細について記載している。しかしながら、これら特定の詳細を伴うことなく、新規な実施形態を実施できることは明らかであろう。一方で、周知の構造およびデバイスについては、その説明を容易とするために、ブロック図の形式で示している。その意図は、請求項に係る主題に矛盾しないあらゆる変更、均等物、および代替案を包括することである。
なお、本明細書で使用される場合の「a」および「b」および「c」および同様の記号は、任意の正の整数を表す変数であるということに留意すべきである。従って、例えば、あるインプリメンテーション(implementation)で、値をa=5と設定している場合は、コンポーネント122−1〜122−aとして示されるコンポーネント122の完全なセットは、コンポーネント122−1、122−2、122−3、122−4、および122−5を含み得る。実施形態は、この文脈に限定されない。
図1は、メディアメッセージングシステム100のブロック図を示している。一実施形態では、メディアメッセージングシステム100は、1つ以上のコンポーネントを含むソフトウェアアプリケーションを有するコンピュータにより具体化されるシステムを含み得る。図1に示すメディアメッセージングシステム100は、ある特定のトポロジで、限られた数の要素を備えているが、メディアメッセージングシステム100は、所与のインプリメンテーションの要求に応じて、別のトポロジで、より多数またはより少数の要素を備えてよいことは理解されるであろう。
メディアメッセージングシステム100にユーザがアクセスするのは、クライアントデバイス120上にユーザアプリケーションとしてインストールされてクライアントデバイス120上でローカルに実行されるメッセージングアプリケーション140であり得る。場合によっては、メッセージングアプリケーション140は、他の機能を伴うことがある。例えば、メッセージングアプリケーション140は、ソーシャルネットワーキングサービスに関連付けてメッセージングサービスを提供する、ソーシャルネットワーキングサービスのフロントエンドであってよい。多くの場合、このクライアントデバイス120は、スマートフォン、携帯電話機、または、Wi−Fiとセルラデータネットワークの組み合わせを用いてインターネットおよびネットワーク資源にアクセスする他のモバイルデバイスであり得るが、任意のネットワークアクセス形式を用いるものであってよいことは理解されるであろう。例えば、インターネット対応デバイス(例えば、携帯電話機、パーソナルコンピュータ)にテザリングするスマートウォッチ、またはパーソナルコンピュータにテザリングする携帯電話機のように、あるデバイスは他のデバイスにテザリングするものであってよい。クライアントデバイス120は、メッセージングアプリケーション140、1つ以上のメディアアプリケーション130、および他のユーザアプリケーションを含む複数のアプリケーションを実行し得る。一方、他の実施形態では、クライアントデバイス120は、パーソナルコンピュータ装置、ポータブルデジタルアシスタント、タブレット装置、または他の任意の形態のコンピューティングデバイスを含み得る。同様に、状況によって一部の実施形態では、メッセージングアプリケーション140をウェブベースのアプリケーションとして実行して、ユーザは、ウェブポータルを介してメディアメッセージングシステム100にアクセスしてよい。
クライアントデバイス120は、ネットワークトラフィックを交換するために無線伝送を用いて、他のデバイスと通信し得る。メッセージングトランザクションの交換に含まれ得るようなネットワークトラフィックの交換は、ネットワークインタフェースコントローラ(network interface controller : NIC)125を介してネットワークトラフィックを送受信することを含み得る。NICは、クライアントデバイス120のようなコンピュータデバイスをコンピュータネットワークに接続するハードウェアコンポーネントを有する。NICは、NICにアクセスして使用する権限をソフトウェアアプリケーションに与えるソフトウェアネットワークインタフェースに関連付けられることがある。ネットワークトラフィックは、データリンクを介して送信された信号として、コンピュータネットワークを介して受信されることがある。ネットワークトラフィックは、それらの信号をキャプチャして解釈することによって、受信されることがある。NICは、コンピュータネットワークを介してネットワークトラフィックを受信して、そのネットワークトラフィックをメモリストレージに転送することがあり、そのメモリストレージには、ソフトウェアアプリケーションがネットワークインタフェース・アプリケーションプログラミングインタフェース(application programming interface : API)を用いてアクセス可能である。メディアアプリケーション130、メディアサーバー、メッセージングアプリケーション140、メッセージングサーバー180の、ネットワーク通信を介した相互運用など、本明細書に記載の実施形態のネットワークアクティビティに、ネットワークインタフェースコントローラ125が使用されることがある。例えば、メッセージングサーバー180にメッセージパッケージ170を送信するメッセージングアプリケーション140は、メッセージパッケージ170の送信のための通信ネットワークへのネットワークアクセスのためにネットワークインタフェースコントローラ125を使用するものと解釈することができる。
メディアアプリケーション130は、メディアコンテンツの検索、メディアコンテンツの発見、メディアコンテンツの共有、メディアコンテンツの保存、メディアコンテンツへのアクセス、メディアコンテンツの加工、メディアコンテンツの合成、のうちの1つ以上のためのアプリケーション群を含み得る。それらのメディアアプリケーションの各々は、1つ以上のメディアサービスに関連したものであってよく、特定のメディアサービスのための専用メディアアプリケーションであるか、または複数のメディアサービスで相互運用するメディアアプリケーションであるか、いずれかである。それらのメディアサービスの各々は、メディアコンテンツの保存、検索のためと、そして主には交換のための1つ以上のメディアサーバー135を提供し得る。
メディアサーバー135は、メディアパッケージのバンドルを含む複数のメディアリポジトリ(media repositories)をローカルメディアアプリケーション130に配信することがあり、その場合、それらのメディアパッケージの各々は、メディア要素(メディアコンテンツの特定のインスタンス)および関連情報を含む。メディアパッケージ105内のメディア要素110に関する関連情報は、メディア要素110のメディアサービス、メディアアプリケーション、および他のソースに関する情報をカプセル化した帰属レコード115(attribution record)を含み得る。
帰属レコード115は、アプリケーション間リンク(inter-application link)を含むことができ、アプリケーション間リンクは、そのメディア要素110を、関連したメディアアプリケーションおよび/またはメディアサービスのコンテンツ空間内で識別するとともに、これにより、そのメディアアプリケーションおよび/またはメディアサービス内のメディア要素110へのディープリンク(deep link)として機能する。アプリケーション間リンクは、関連付けられたメディア要素110に関する情報の特定のページ、ビュー、または他のリポジトリにナビゲートする権限をメディアアプリケーションまたはメディアサーバーに与え得る。アプリケーション間リンクは、特定のメディアアプリケーション/メディアサービスに関して、様々なクライアントデバイス間で汎用的であり得る。従って、アプリケーション間リンクによって、ユーザは、その関連したメディアアプリケーション/メディアサービスの枠内でメディア要素110にアクセスする権限を受信ユーザに与えるのに十分なコンテキスト情報と共に、メディア要素110を共有することが可能となり得る。
従って、帰属レコード115は、複数のメディアサーバー135のうちのメディアサーバー上の関連したメディア要素110にアプリケーションがネットワークアクセスするために、ネットワークコンポーネントを構成設定するように機能し得る。帰属レコード115は、メッセージングアプリケーション140および1つ以上のメディアアプリケーション130をそのように構成設定するように機能し得る。帰属レコード115は、複数のメディアサーバー135のうちの1つ以上のメディアサーバー上で入手できる複数のメディア要素から特定のメディア要素110を識別するアプリケーション間リンクを含み得る。帰属レコード115は、認可されたユーザのみと共有されるものとしてメディア要素110が登録されている場合など、プライベートまたはその他の非公開のメディア要素にアクセスする権限をネットワークコンポーネントに与えるセキュリティ情報を含み得る。例えば、ユーザは、オンライン写真アルバムを保持して、そのオンライン写真アルバムに対するアクセスを、当該ユーザ、およびアルバムを閲覧するように招待された他のユーザに制限するセキュリティ設定を表明している場合がある。帰属レコード115は、メディアサービス上でメディア要素110へのアクセスを可能とするため、さらに場合によっては他の関連したメディア要素へのアクセスを可能とするための、セキュリティトークン、パスワード、または他のセキュリティ情報を含み得る。従って、メッセージングアプリケーション140は、メディアサービス帰属レコードを含むメディアパッケージを受信して、メディアサービス帰属レコードに基づいて、メッセージングアプリケーションがメディアサーバー上のメディア要素110にネットワークアクセスするためのネットワークコンポーネントを構成設定し得る。メッセージングアプリケーション140がメディア要素110を共有する場合には、メッセージングアプリケーション140は、メディアアプリケーション帰属レコードを有するメッセージパッケージを生成することができ、これは、メディアアプリケーションがメディアサーバー上のメディア要素110にネットワークアクセスするためのネットワークコンポーネントを構成設定するように機能する。
メッセージングアプリケーション140は、メディア管理コンポーネント160を有し得る。メディア管理コンポーネント160は、概して、メッセージングアプリケーション140の枠内でメディアコンテンツを管理するように構成することができる。メディア管理コンポーネント160によって、そのクライアントデバイス120のユーザは、メディアコンテンツを、メディアメッセージングシステム100でのメッセージングのために、ひいては他のユーザとの交換のために利用できるようになり得る。メディア管理コンポーネント160は、複数のメディアアプリケーション130からのメディアのクロスロード(crossroad)として機能することができ、ユーザに対して、それらのメディアアプリケーション130のメディアコンテンツの統合されたビューを提示するとともに、一元管理を提供する。メディアアプリケーション130からメディアコンテンツを受信し、メディアアプリケーション130にメディアコンテンツをサブミットし、それらのメディアアプリケーション130内の既存のメディアコンテンツの表示を起動し、メディアアプリケーション130の1つから他のメディアアプリケーション130にメディアコンテンツを移行するなど、複数のメディアアプリケーション130と相互運用するための権限を、メディア管理コンポーネント160はメッセージングアプリケーション140に与え得る。
メッセージングアプリケーション140は、メッセージングコンポーネント150を有し得る。メッセージングコンポーネント150は、概して、そのクライアントデバイス120のユーザにメッセージングサービスを提供するように構成することができる。メッセージングサービスは、メッセージの受信、メッセージの送信、交換されたメッセージの履歴の維持、およびその他のメッセージング関連アクティビティを含み得る。メッセージングアプリケーション140のユーザは、プライベートな1対1のユーザ会話、3人以上のユーザ間でのプライベートなグループ会話と、メッセージングコミュニティに一般的に公開されている公開会話と、その両方で、他の複数のユーザとのメッセージング会話に参加する権限を与えられることがある。メッセージングコンポーネント150は、メディア管理コンポーネント160と相互運用することができ、これにより、これらのメッセージング会話をいずれも、メディア管理コンポーネント160によるメディアコンテンツ管理によって充実させる。
メディアメッセージングシステム100は、複数のメッセージングサーバーの中からのメッセージングサーバー180を含み得る。メッセージングサーバー180は、メディアメッセージングシステム100のユーザらのメッセージングエンドポイント間の仲介役として機能し得る。メッセージングサーバー180は、ユーザのアクティブな1つまたは複数のメッセージングエンドポイントの現在のネットワークポイントアドレスを、(例えば、モバイルクライアントデバイス120が、Wi−Fiネットワーク間、セルラデータネットワーク間、Wi−Fiネットワークとセルラデータネットワークとの間で移動して)それらがネットワークを切り替えるときなどに追跡し得る。メッセージングサーバー180は、メッセージングエンドポイントへのメッセージを、それらのメッセージングエンドポイントがオフラインであるとき、またはそれ以外で新たなメッセージを受け入れないときに、キューイングし(queue)得る。メッセージングサーバー180は、ユーザが使用する可能性のある複数のメッセージングエンドポイント間で、コミュニケーションの流れにおける整合性を提供するために、特定のユーザへのメッセージ群における順序付けを提供し得る。メッセージングサーバー180は、各ユーザについて、ユーザへの送信済みメッセージまたは受信メッセージへのアクセスを提供するために、メッセージング履歴を保存し得る。メッセージング履歴は、メディアメッセージングシステム100を使用するユーザ間で交換されたメディアを含み得る。
メッセージングコンポーネント150は、メッセージパッケージ170を、メディアメッセージングシステム100の1人以上の他のユーザへの配信のために、メッセージングサーバー180に送信し得る。メッセージパッケージ170は、このメッセージパッケージ170に関して1人以上のユーザを特定する1つ以上の配信ユーザ識別子のような配信情報を含み得る。メッセージパッケージ170は、メディア要素110と帰属レコード115とを含むメディアパッケージ105を含み得る。従って、メッセージパッケージ170は、メディア要素と、さらに場合によってはテキストメッセージコンポーネントと、を組み込んだリッチメッセージ(rich message)を含み得る。なお、場合によっては、テキストメッセージは、関連付けられたメディア要素を伴うことなく、メッセージングサーバー180を介して送信されてよいことは理解されるであろう。メッセージングサーバー180は、メッセージパッケージ170を受信して、それを、第2のクライアントデバイス190にインストールされたメッセージングアプリケーション140など、メッセージパッケージ170の配信ユーザ識別子で特定された配信ユーザアカウントに関連付けられたメッセージングエンドポイントに、配信することができる。
メディア要素110が、メッセージングサーバー180上またはメディアメッセージングシステム100がアクセスできるメディアサーバー上に既に保存されている場合には、そのメディア要素110はクライアントデバイス120から送信されなくてもよい。メッセージングアプリケーション140は、メディア要素110のハッシュ(hash)を生成または取得して、そのハッシュを、そのメディア要素110がメディアメッセージングシステム100内で既に入手可能であるかどうかを判断するためにメッセージングサーバー180に送信することができる。メッセージングサーバー180は、メディア要素110が既に入手可能であるかどうか、ひいては再アップロードすべきでないかどうか、を示すことができる。ハッシュに基づいて、そのメディア要素110が入手可能でないと判断される場合には、メッセージングサーバー180は、クライアントデバイス120からのメディア要素110のアップロードを要求してよい。同様に、メディア要素110が、ネットワークアクセス可能なソースへのユニフォームリソースロケータ(uniform resource locator : URL)として表現されている場合には、メディア要素110のアップロードを回避してよい。これらの技術は、メディア要素の共有で使用される帯域幅を削減する助けとなり得る。メディアメッセージングシステム110の統合プラットフォームを使用することにより、メディアメッセージングシステム110が、ネットワークアクセス可能メディア要素のネットワーク位置を見通せるとともに、ハッシングを用いることにより重複アップロードを排除して、複数のメディアアプリケーションソースからのメディア要素を保存し得ることで、メディア要素の共有での使用帯域幅を削減することができる。この使用帯域幅の削減によって、メディア共有の速度が向上する場合があり、携帯電話プロバイダからのユーザの帯域割り当ての使用が減少する場合があり、さらに、メディア要素110のアップロードの実行に伴い得るバッテリの使用が排除される場合があることで、メディア共有のための全体的なバッテリ使用が減少する。
メディアメッセージングシステム100によって、メディア要素110は、種々の実施形態において様々な技術によって管理および操作され得る。場合によっては、メディア要素110は、メディアパッケージ105内のコンピュータデータ表現として直接保存されることがある。例えば、画像メディア要素は、メディアパッケージ105内のジョイントフォトグラフィックエキスパートグループ(JPEG : Joint Photographic Expert Group)デジタル画像ファイルとして保存されてよい。他の場合には、メディア要素110は、メディアパッケージ105内のリファレンスとして保存されてよく、リファレンスは、メディア要素110のネットワークアクセス可能アドレスを提供するURLのようなリソースロケータを含む。従って、メディア管理コンポーネント160は、メディア要素110のインスタンスを、ローカルアクセスのためにクライアントデバイス120上にキャッシュし得る一方、第2のクライアントデバイス190への伝送中にクライアントデバイス120がメディア要素110をアップロードすることを回避するために、メディア要素110は、リソースロケータを用いて共有され得る。代わりに、第2のクライアントデバイス190上のメッセージングアプリケーション140は、メディア要素110をリソースロケータとして受信することができ、リソースロケータの受信後にメディア要素110のインスタンスをフェッチする(fetch)ことができる。これによって、第2のクライアントデバイス190がメディア要素110をダウンロードするためにメディアサーバー135のストレージおよび帯域幅を利用する可能性を伴うことなく、クライアントデバイス120のアップロード帯域幅の使用が排除される。あるいは、メッセージングサーバー180は、メディア要素110をキャッシュまたは取得して、それを、第2のクライアントデバイス190にメッセージパッケージ170を配信するときにメッセージパッケージ170に含めてよい。なお、一般的に、メディアコンテンツをフォーマットおよび保存するための任意の周知の技術を用いてよいことは理解されるであろう。場合によっては、メディアメッセージングシステム100は、宛先の第2のクライアントデバイス190へのアップロードまたは送信の前に、メディア要素110のサイズ変更、再コーディング、フォーマット変更、または品質レベル変更を実施することがある。これは、メディア要素110の保存に使用する記憶空間、またはメディア要素110のアップロードもしくはダウンロードに使用する帯域幅を削減するために、実施されることがある。
メディアメッセージングシステム100は、ユーザ間のインタラクションから生成された知識を利用することがある。メディアメッセージングシステム100は、ソーシャルネットワーキングサービスのコンポーネントを含むことがあり、そのソーシャルネットワーキングサービスのより広範なインタラクションから生成された知識を利用することがある。そこで、メディアメッセージングシステム100およびより大規模なソーシャルネットワーキングサービスのユーザのプライバシーを保護するために、メディアメッセージングシステム100は、ユーザが、例えば適切なプライバシー設定を行うことによって、自身のアクションをメディアメッセージングシステム100によってログ記録されること、または他のシステム(例えば、サードパーティシステム)と共有されること、をオプトイン(opt in)またはオプトアウト(opt out)することを可能とする認証サーバー(または他の適切なコンポーネント(群))を備え得る。ユーザのプライバシー設定では、そのユーザに関連付けられたどのような情報をログ記録してよいか、ユーザに関連付けられた情報をいかにしてログ記録してよいか、ユーザに関連付けられた情報をいつログ記録してよいか、ユーザに関連付けられた情報を誰がログ記録してよいか、ユーザに関連付けられた情報を誰と共有してよいか、ユーザに関連付けられた情報を何の目的でログ記録または共有してよいか、を決めることができる。適宜、ブロック化、データハッシュ化、匿名化、または他の適切な技術によって、メディアメッセージングシステム100およびソーシャルネットワーキングサービスの他の要素のユーザの1つ以上のプライバシー設定を実施するために、認証サーバー群または他の認証コンポーネント群を使用することができる。例えば、ソーシャルネットワーキングサービスのユーザ間のインタラクション中に、ソーシャルネットワーキングサービスを用いて、メディアコンテンツのプリファレンスおよびメディアコンテンツの異なるピースのプリファレンス間の関係を学習することができ、それらのインタラクションは、学習プロセスの前に、または学習プロセスの一環として、匿名化することができる。
図2Aは、メッセージングアプリケーション共有コントロール群220を有する、メッセージングアプリケーション140のユーザインタフェースの実施形態を示している。
メッセージングアプリケーション140またはメディアアプリケーション内でメディア要素を共有または視聴するためのコントロールは、「コールトゥアクション(call to action)」ボタンに相当し得るものであり、このコントロールによって、対応するアプリケーションを用いたアクションを推奨する。例えば、アプリケーションをインストールするためのコントロールは、「インストールのコールトゥアクション(install call to action)」を含むことがあり、アプリケーションを起動するためのコントロールは、「起動のコールトゥアクション(launch call to action)」を含むことなどがある。
図2Aに示す実施形態では、メッセージングアプリケーション140は、メッセージスレッド210を表示している。図示のメッセージスレッド210は、2人のユーザ間のプライベートなメッセージング会話に相当する。このクライアントデバイス120のユーザである第1のユーザは、メディアメッセージングシステム100でのそのユーザアカウントに関連付けられたユーザアバタ205によって、メッセージスレッド210内で視覚的に表現される。第2のクライアントデバイス190のユーザである第2のユーザは、メディアメッセージングシステム100でのその対応するユーザアカウントに関連付けられた第2のユーザアバタ207によって、メッセージスレッド210内で視覚的に表現される。
クライアントデバイス120およびメッセージングアプリケーション140のユーザは、第2のクライアントデバイス190の第2のユーザに送信するためのテキストメッセージなど、メッセージスレッド210のテキスト要素を入力するためにテキストコントロール215を用いてよい。なお、メッセージングアプリケーション140のテキストコントロール215および他のコントロールは、タッチスクリーン上のタッチコントロールとして図示しているが、他の実施形態では、ハードウェアキーボードおよびハードウェアポインタコントロールなど、他のコントロールを用いてよいことは理解されるであろう。
ユーザインタフェース200は、メッセージングアプリケーション共有コントロール群220を含む。図示の実施形態では、メッセージングアプリケーション共有コントロール群220は、画像共有コントロール、ビデオ共有コントロール、およびオーディオ共有コントロールを含む。種々の実施形態において、追加の共有コントロールおよび別の共有コントロールを備えてよいことは理解されるであろう。例えば、図示の実施形態では、共有コントロール群は、コンテンツタイプ(すなわち、画像、アニメーション画像、ビデオ、オーディオ)で区分されているが、他の実施形態では、異なる区分を用いてよく、または区分を用いなくてもよい。場合によっては、あらゆるタイプのメディアコンテンツへのアクセスを提供するユニバーサル共有コントロールが、ユーザに提供されることがある。場合によっては、画像/ビデオ/オーディオ区分以外に、ステッカー(sticker)、楽曲、スマイリ、絵文字、GIF(Graphics Interchange Format)、他のメディアコンテンツカテゴリなど、具体的な形式のコンテンツに関して共有コントロールが提供されることがある。
メッセージングアプリケーション140のユーザは、メッセージスレッド210において第2のユーザと共有するためのメディアコンテンツの選択を開始するために、メッセージングアプリケーション共有コントロール群220から1つを選択することができる。いくつかの実施形態では、メッセージングアプリケーション共有コントロール群220は、隣接したテキストコントロール215を伴うことなく表示されてよい。いくつかの実施形態では、各種コントロールは、メッセージングアプリケーション140のユーザインタフェース200の下端に沿って表示されてよく、それらの各種コントロールのうちの1つは、テキストコントロール215を呼び出すものであり、その他は、様々に異なるタイプのメディアコンテンツに専用の各種共有コントロールのうちの1つ以上である。
図2Bは、利用できるメディア要素群を表示している、メッセージングアプリケーション140のユーザインタフェース225の実施形態を示している。
図2Bに示す実施形態では、ユーザインタフェース225は、メディア要素表示セクション235を表示している。メディア要素表示セクション235は、複数のメディア要素を含むメディアコンテンツを表示する。本例では、複数のメディア要素のそれぞれは写真を含む。一方、他の場合には、メディア要素のそれぞれは、ビデオ(例えば、フィルムクリップ、動画)、オーディオセグメント(例えば、楽曲、音声録音)、アニメーション画像(例えば、アニメーショングラフィックス交換フォーマット(GIF)画像)、他の任意のタイプのメディア要素、または様々に異なるタイプのメディア要素の任意の組み合わせ、を含んでよい。メディア要素表示セクション235は、スクロールコマンドによるなど、さらなるコンテンツを表示させるためのユーザインタフェースコマンドによって、操作されるように機能し得る。
図示の実施形態では、メディア要素表示セクション235は、画像ホスティング共有サービス(image hosting and sharing service)の一例である特定のメディアアプリケーション「JPEGGY」に関連付けられた写真のコレクションを表示している。メディア要素表示セクション235に表示されるメディアコンテンツは、特定のメディアアプリケーションによってオンラインで保存された写真群の一部分のプレビューを含み得る。メディアメッセージングシステム100は、複数のメディアアプリケーション130から、この特定のメディアアプリケーションを、ユーザのお気に入りのメディアアプリケーションとして、このメディアアプリケーションが目立つ位置に提示されるように、指定している場合がある。あるいは、ユーザが、メディア選択の前段階で、このメディアアプリケーションを選択した場合がある。
メディアコンテンツの他のカテゴリを、メッセージングアプリケーション140のユーザが利用できるようにしてもよい。例えば、図示のように、ユーザは、メディア要素表示セクション235の「人気」タブを選択することによって「人気メディア」セクションを選択可能な場合がある。メディアメッセージングシステム100または特定のメディアアプリケーションが決めた、人気の、トレンドの、またはそれ以外の注目のメディア要素が、人気セクションに表示されることがある。
他の例では、図示のように、ユーザは、メディア要素表示セクション235の「履歴」タブを選択することによって、「履歴」セクションを選択可能な場合がある。特定のユーザに共有されたすべてのメディア要素が、履歴セクションに表示されることがある。メッセージスレッド210のような特定の会話内で、どちらのユーザに共有されたメディア要素もすべて、履歴セクションに表示されることがあり、これにより、どちらのユーザも(またはグループ会話のいずれのユーザも)、その共有された会話のメディア履歴を参照することが可能となる。
他の例では、ユーザは、メディア要素表示セクション235の「おすすめ」タブを選択することによって、「おすすめ」セクションを選択可能な場合がある。メディアメッセージングシステム100によってユーザに推奨されるメディア要素が、おすすめセクションに表示されることがある。メディアは、メディアメッセージングシステム100のすべてのユーザへの無差別なプロモーションに基づいて推奨されることがあり、そのユーザに特化したプロモーションに基づいて推奨されることがあり、さらに、そのメッセージスレッド210に関係する他のユーザ(群)と、メッセージスレッド210の内容の分析と、その一方または両方に基づくなど、特定のメッセージスレッド210に基づいて特化したプロモーションに基づいて推奨されることがある。
一般的に、メディア要素表示セクション235に表示されるメディア要素を決定するために、様々な基準を単独または組み合わせで用いてよい。ユーザの関心があると予測されるメディアコンテンツは、明示的な兆候と暗示的な兆候に基づいてプロモーションされることがある。明示的な兆候は、年齢/生年月日、性別、居住地、学歴、好き嫌い、および様々なユーザの関心の相関を示唆し得るカテゴリへの直接的関心または関連についての他のいずれかの明示のような、ユーザに関して明示的に入力された情報を含み得る。暗示的な兆候は、メッセージング会話、自動測位、アップロードされた写真、共有されたメディア、またはメディアメッセージングシステム100もしくはソーシャルネットワーキングサービスの他の使用状況から収集された情報のような、ユーザに関して暗示的に特定された情報を含むことがあり、これらは、基本的に情報の登録を目的とするものではなく、特定の好き嫌いに相関し得るデータを提供しつつも、システムまたはサービスが使用することを目的とするものである。
さらに、メッセージスレッド210の特定のコンテキストを利用することがある。例えば、メディアメッセージングシステム100は、スポーツの試合、ニュースとなる出来事、またはその他の出来事など、イベントに関連した会話であると特定されたことに応じて、イベント関連のメディア要素を提供することがある。メディアメッセージングシステム100は、スポーツ、映画、食べ物、またはその他の会話の話題など、ある話題に関連した会話であると特定されたことに応じて、話題関連のメディア要素を提供することがある。メディアメッセージングシステム100は、カップルでの参加者間のメッセージスレッド210において、最近アップロードされたカップルの写真をプロモーションするなど、特定の人々に関する会話または特定の人々の間の会話であることに応じて、個人的に関連のあるメディア要素を提供することがある。メディアメッセージングシステム100は、最近共有されたメディア要素に類似した話題に関するメディア要素、類似したテーマのメディア要素、またはその他関係のあるメディア要素を見つけることなどによって、あるメッセージスレッド210において他のグループによって最近共有されたメディア要素に関連したメディア要素を特にプロモーションすることがある。
ユーザは、メディア要素表示セクション235に表示された複数のメディア要素から特定のメディア要素を選択して、その選択されたメディア要素をメッセージスレッド210に取り込む権限を与えられることがある。
図3Aは、帰属付きメディア要素をメッセージスレッド210内に表示している、メッセージングアプリケーション140のユーザインタフェース300の実施形態を示している。図2Aおよび図2Bに示す実施形態とは異なり、ユーザインタフェース300は、メッセージスレッド210における第2のユーザに属する第2のクライアントデバイス190のディスプレイを示している。
図3Aに示す実施形態では、第1のユーザは、画像共有サービスJPEGGYで保存された2匹のネコの個人的写真に相当するメディア要素110を共有するために選択しており、この画像が、メッセージスレッド210の流れの中に組み込まれている。図3Aに示す実施形態では、第1のユーザからのコメント「きのう撮った写真のうちのネコの写真見てよ:)」が、メッセージング会話において別のラインとして入力されているが、他の実施形態では、そのようなコメントを、メッセージングアプリケーション140によってそのような機能を提供できれば、オプションで、写真のキャプションとして含めてよいことは理解されるであろう。
ユーザインタフェース300に示すように、メディア要素110は、帰属表示要素315に関連付けて表示される。帰属表示要素315は、メディア要素110の共有元である特定のメディアアプリケーションを視覚的に伝えている。帰属表示要素315は、さらに、メディア要素110が関連付けられている帰属メディアアプリケーション内のメディア要素110にアクセスするための、この場合は「開く」ボタンとして図示されているコントロールを含む。このメディアアプリケーションの識別子、帰属表示要素315をいかに構成するのかについての説明、メディア要素110に対応したアプリケーション間リンクはすべて、帰属レコード115の部分を構成し得る。この帰属レコード115は、メディア要素110のためのメディアパッケージ105の要素を構成し得る。
コントロールは、「インストール」または「入手」ラベルで表されることがあるような、帰属メディアアプリケーションをインストールするためのオプションを含み得る。コントロールは、「更新」ラベルで表されることがあるような、インストール済みの帰属メディアアプリケーションを更新するためのオプションを含み得る。インストール済みのメディアアプリケーションの更新は、帰属メディアアプリケーションの更新バージョンが、メディアアプリケーションのインストール済みバージョンにはない新たな機能としてディープリンクおよび/またはメッセージングスレッドリンク(messaging thread linking)をサポートしている場合に、勧められることがある。インストールおよび更新は、様々な技術を用いて実施してよい。1つの技術では、アプリケーションストアへのディープリンクを用いる高速アプリケーション切り替えを利用することがある。他の技術では、メッセージングアプリケーション140、およびアプリケーションストアの起動に関与したメッセージングアプリケーション140内の特定のメッセージングスレッド、への自動復帰と共に、アプリケーションストアへのディープリンクを用いる、復帰付き高速アプリケーション切り替えを利用することがある。他の技術では、ユーザがメッセージングアプリケーション140でインストールボタンを選択して、メッセージングアプリケーション140を離れることなく、メディアアプリケーションがインストールされる、アプリケーション内インストールを利用することがある。メッセージングアプリケーション140を離れることなくメディアアプリケーションがインストールされる場合には、メディアアプリケーションがインストール中であることを示すインディケーション(例えば、インストール進行状況グラフィック)、およびメディアアプリケーションのインストールをフライオーバグラフィック(fly over graphic)によって表示するなど、メディアアプリケーションが正常にインストールされたことを示すインディケーションがユーザに表示されることがある。メディアアプリケーションがインストールされると、インストールコントロールは、起動コントロールに移行し得る。
帰属付きメディア要素のそれぞれのビューは、帰属付きメディアビューレコードに記録されることがある。場合によっては、帰属付きメディアビューレコードは、メディアメッセージングシステム100のプロバイダとメディアアプリケーションプロバイダとの間の取引を推進するために用いられることがある。例えば、メディアメッセージングシステム100は、視聴された帰属付きメディア要素ごとに料金を受け取ることがある。他の例では、メディアメッセージングシステム100は、そのメディアアプリケーションに帰属する1つ以上のメディア要素を視聴したユーザごとに料金を受け取ることがある。表示されている帰属付きメディア要素に基づいて、共有されている帰属付きメディア要素に基づいて、メッセージングアプリケーション140内での共有のため、メディアアプリケーションのインストールのため、メッセージングアプリケーション140内からメディアアプリケーションを起動するために、オファーされている帰属付きメディア要素に基づいて、または、メッセージングアプリケーション140と、メディアアプリケーションと、メディアアプリケーションに関連付けられたメディアコンテンツとの間の他の任意のインタラクションに基づいて、どのような取引形態をとってもよい。
ユーザインタフェース300は、この場合は画像共有アプリケーションJPEGGYである関連付けられたメディアアプリケーションが第2のクライアントデバイス190にインストール済みである場合を含み得る。従って、メッセージングアプリケーション140は、ユーザが使用するためのメディアアプリケーションを直接実行することが可能な場合がある。しかしながら、多くの場合は、第1のユーザは、第2のユーザが現在インストールしていないメディアアプリケーションに関連付けられたメディア要素110を共有し得る。これは、第1のユーザの共有アクションによる暗示的推奨によって、第2のユーザが関心を持つかもしれない新たなメディアアプリケーションに触れることがあるという点で、有益なことであり得る。これらの場合、帰属表示要素315は、メディアアプリケーションにアクセスするためのコントロールを依然として含み得る。ただし、このコントロールは、メディア要素110の共有元のメディアアプリケーションをインストールするオプションをユーザに提示することによって、メディアアプリケーションのインストールを開始し得るものである。これらの場合、「開く」コントロールに代えて、新たなメディアアプリケーションをインストールして自身で試してみる機会をユーザにオファーする「試す」コントロールを用いることができる。メディアアプリケーションをインストールするためのオプションは、例えば、アプリケーションリポジトリ(例えば、「アプリケーションストア」)をロードして、アプリケーションインストールインタフェースを表示するようにアプリケーションリポジトリユーティリティに指示することによって提示することができ、アプリケーションインストールインタフェースは、ユーザがメディアアプリケーションのアプリケーションページ上でインストールコントロールを選択することなどによってメディアアプリケーションをインストールする権限を与える。
帰属表示要素315は、カスタムテキスト、カスタムロゴ、カスタム画像、カスタムアイコン、または他の任意のカスタム表示要素を含むことなどによって、それぞれの特定のメディアアプリケーション用にカスタマイズすることができる。カスタム表示要素は、そのメディア要素110を担当するメディアアプリケーションを、そのメディアアプリケーションに特有のアイコンなどによって特定し得る。オーディオミキシングアプリケーションが、アニメーション画像にオーディオトラックを「TrackSmash」するようにユーザを勧誘するなど、カスタムディスプレイ要素は、そのメディアアプリケーションを使用するためのアプリケーション特有の勧誘を含み得る。これは、メディアアプリケーションにアクセスする(インストール済みのアプリケーションを開くか、または現在インストールされていないアプリケーションのインストールを開始するか、いずれか)ためのコントロールのカスタマイズを伴い得る。いくつかの実施形態では、共有されるメディア要素110自体を選択することで、結果的に、関連付けられたメディアアプリケーションが起動されて、そのメディア要素110に対応したその内部ページに誘導されることになり得る。
図3Bは、ディープリンクされたメディア要素110のページを表示している、メディアアプリケーションのユーザインタフェース325の実施形態を示している。
図3Bに示す実施形態では、メディアアプリケーションインタフェースは、クライアントデバイス120のユーザから第2のクライアントデバイス190のユーザが受信したメディア要素110に固有のメディア要素固有ページ330を表示している。メディア要素固有ページ330に到達するために、第2のクライアントデバイス190のユーザは、帰属表示要素315の一部として表示される、メディアアプリケーションにおいてメディア要素110にアクセスするためのコントロールを選択した可能性がある。
図示のメディア要素固有ページ330は、メディア要素110、メディア要素110のタイトルである「うちのネコちゃん」、メディア要素110またはメディア要素110のこの特定の共有に関連付けられたメディアアプリケーション内のユーザアカウント「BEH」、メディアアプリケーション内でメディア要素110に付与された複数のタグ、および、ファイルサイズ、アップロード日、画像サイズ、ビュー回数、共有回数など、メディア要素110に関する様々な情報、の表示を含む。メディア要素固有ページは、特定のメディア要素110に特に関連した何らかのページまたはアプリケーションビューに相当し得る。図示の実施形態では、メディア要素110は、そのページ上に表示されている唯一のメディア要素であるが、別の実施形態では、類似のメディア要素、関連したメディア要素などのような追加のメディア要素を表示してよい。同様に、リミックス、フィルタ適用、およびその他の加工用などの、追加のコントロールをメディア要素固有ページ330に含んでよい。
メディア要素固有ページ330は、メディア要素固有ページ330で紹介されたメディア要素110を共有する権限をメディアアプリケーションのユーザに与えるメディアアプリケーション共有コントロール335を含み得る。図示の例示的なメディアアプリケーション共有コントロール335は、特定のメッセージングアプリケーション140に明確に関連付けられたメッセージングアプリケーション限定メディアアプリケーション共有コントロールである。従って、メディアアプリケーション共有コントロール335を選択することで、メッセージングアプリケーション140を直接起動して(例えば、最前面に出す)、このメディア要素110の適切な帰属レコード115と共にメディア要素110をメッセージングアプリケーション140に転送することができる。従って、このメディア要素固有ページ330は、クライアントデバイス120のユーザがメディア要素110をメッセージスレッド210に取り込むために最初に選択したときに用いたものと類似または同等のビューに相当し得る。
他の実施形態では、アプリケーション限定メディアアプリケーション共有コントロールではない汎用メディアアプリケーション共有コントロールを、メディアアプリケーションにおいて用いてよい。この汎用メディアアプリケーション共有コントロールを選択することで、電子メール、ショートメッセージサービス(SMS)システムのマルチメディアメッセージサービス(MMS)拡張、メディアメッセージングシステム100に関連付けられたメッセージングアプリケーション140などのメッセージングアプリケーション、その他のメディア共有方法など、メディア要素110を共有するための多様な方法をオファーするインタフェースを開始させることができる。
場合によっては、特定のメッセージングアプリケーション140に明確に関連付けられたメッセージングアプリケーション限定メディアアプリケーション共有コントロールを表示するメディアアプリケーションは、そのメディアアプリケーションのメッセージングアプリケーション限定バージョンに相当し得る。例えば、JPEGGYメディアアプリケーションは、メディア共有システム100のメッセージングアプリケーション140との統合用に特別に設計されたJPEGGYメディアアプリケーションのバージョンをリリースしている場合がある。メッセージングアプリケーション140は、メッセージングアプリケーション限定のメディアアプリケーションとメッセージングアプリケーション限定ではないメディアアプリケーションのどちらからのメディアコンテンツでも受け入れるように機能し得るが、メッセージングアプリケーションによって、メッセージングアプリケーション限定のメディアアプリケーションが優先される場合がある。
従って、ユーザが、メディアアプリケーションのメッセージングアプリケーション限定バージョンとメッセージングアプリケーション限定ではないバージョンの両方をインストールしている場合には、メッセージングアプリケーション140は、メディアアプリケーション内のメディア要素110を視聴するためのユーザ要求に応じて、メディアアプリケーションのメッセージングアプリケーション限定バージョンを起動することを選択し得る。他の実施形態では、使用されるアプリケーションバージョンを、帰属レコード115が指示することがあり、メッセージングアプリケーション140は、指示されたバージョンを起動し得る。同様に、メディアアプリケーションのいずれのバージョンも、クライアントデバイスに現在インストールされていない場合には、メッセージングアプリケーション140は、帰属表示要素315の一部として表示されるアプリケーションをインストールするためのユーザ要求に応じて、メディアアプリケーションのメッセージングアプリケーション限定バージョンを選択し得る。
いくつかの実施形態では、メディアアプリケーションのメッセージングアプリケーション限定ではないバージョンがクライアントデバイス上で検出された場合、またはメッセージングアプリケーション140と組み合わせて使用されている場合に、メディアアプリケーションのメッセージングアプリケーション限定バージョンが、バナー、インタスティシャル、ポップアップ、または他のユーザインタフェース要素によるなどして、プロモーションされることがある。例えば、メディアアプリケーションのメッセージングアプリケーション限定ではないバージョンからメディア要素110を受信すると、メッセージングアプリケーション140は、メディアアプリケーションのメッセージングアプリケーション限定バージョンを利用できることをクライアントデバイスのユーザに通知して、それのインストールを開始するようにユーザにオファーすることがある。これによって、ユーザは、汎用共有コントロールを経由して汎用共有インタフェースでメッセージングアプリケーション140を見つけることなく、メッセージングアプリケーション140へのワンコントロールアクセス(one-control access)を可能とする、メディアアプリケーションのバージョンへのアクセスが与えられることによる恩恵を受ける場合がある。
図3Cは、インポートされた第2のメディア要素360の共有を承認するための共有コントロール370を表示している、メッセージングアプリケーション140のユーザインタフェース350の実施形態を示している。
メディア要素360は、メディアアプリケーションにおいて第2のクライアントデバイス190のユーザが発見したメディア要素に相当し得る。本例では、どちらの画像も第1のユーザが撮影した共有対象の個人的写真であるので、第2のメディア要素360は、第1のメディア要素110を送信したユーザに関連付けられた他の画像の検索によって発見された可能性がある。しかしながら、他の場合には、類似のタグで画像を探索する、特定のタグで画像を探索する、キーワード検索、自然言語検索、またはメディアコンテンツの検索、探索、発見のための他の任意の技術など、様々な技術によって画像が発見されることがある。
メッセージングアプリケーション140は、一般的に、インポートされたメディアコンテンツを共有したいことを、それをメッセージスレッド210に取り込むために送信する前に、メッセージングアプリケーション140のユーザに確認するように構成することができる。これは、ユーザプロンプト(user prompting)を提供することなくメディア要素を取り込むために送信するメディアアプリケーションを悪用することによって受信されたメディア要素の悪意のある取り込みを防ぐことと、メッセージスレッド210内に表示されて視聴されるメディア要素として正しいメディア要素が選択されたことのユーザによる確認またはユーザによるその他の判断の確認を可能にすることと、その両方のために役立ち得る。
従って、メッセージングアプリケーション140は、受信したメディア要素360に関連付けて、共有コントロール370を表示することができる。共有コントロール370は、メッセージングアプリケーション140のユーザが、受信したメディア要素360をメッセージスレッド210に取り込むための権限を与えることができる。共有コントロール370を選択することで、第1のクライアントデバイス120上の第1のユーザのメッセージングアプリケーション140への配信のために、メディア要素360を含むメッセージパッケージをメッセージングサーバー180に送信するように、メッセージングアプリケーション140に促すことができる。
メディア要素360は、メディアアプリケーションがメッセージングアプリケーション140によって呼び出されることによって、メディアアプリケーションにおいて発見された可能性がある。メディアアプリケーションを呼び出すことの一環として、メッセージングアプリケーション140は、そのメッセージスレッド210のためのメッセージングアプリケーション140とのメッセージスレッド固有アプリケーション間リンク(an message-thread-specific inter-application link)を、メディアアプリケーションに渡すことがある。メッセージスレッド固有アプリケーション間リンクは、メディア要素固有アプリケーション間リンクとは逆の目的を果たし得る。前者は、共有するためのメディアコンテンツの検索のきっかけである特定のメッセージスレッド210を識別し得る一方、後者は、この同じ検索のきっかけである特定のメディア要素110を識別し得る。メディア要素固有アプリケーション間リンクは、メディアコンテンツの発見および/または加工のための開始点として機能するメディア要素固有ページにメディアアプリケーションを誘導するために、メッセージングアプリケーション140によって用いることができる一方、メッセージスレッド固有アプリケーション間リンクは、受信したメディア要素を特定のメッセージスレッド210内に取り込むためのプロンプトをメッセージングアプリケーション140のユーザに提示することをメッセージングアプリケーション140に指示するために、メディアアプリケーションによって用いることができる。これは、アプリケーション間の移行ごとにユーザを関連したコンテキスト内に位置付けることによって、メッセージングアプリケーション140とメディアアプリケーションの間の移行を容易とするために役立ち得る。
従って、メッセージスレッド固有アプリケーション間リンクは、メッセージングアプリケーション140によって生成されて、メディアアプリケーションを呼び出すことの一環として含まれることがある。メッセージスレッド固有アプリケーション間リンクは、メディアパッケージの一部として、メッセージングアプリケーション140で受信されて、受信したメディア要素を充実させることをユーザにオファーするための特定のメッセージスレッド210を決定するために、メッセージングアプリケーションによって用いられることがある。なお、ユーザは、異なるメッセージスレッドを選択するためのコントロールによるなどして、受信したメディア要素を異なるメッセージスレッドに誘導する機会をオファーされる場合もあることは理解されるであろう。
受信したメディア要素360のためのユーザインタフェース350は、破棄コントロール365を含み得る。破棄コントロール365は、ユーザが、受信したメディア要素360をいずれかのメッセージスレッドに取り込むことを控えるために用いることができる。破棄コントロール365は、悪意のあるメディア要素または意図せずに受信されたメディア要素を破棄する権限をユーザに与えることができる。
受信したメディア要素360のためのユーザインタフェース350は、インポート帰属355を含み得る。インポート帰属355は、メディア要素360のエクスポートを担当したメディアアプリケーションと、メディア要素360の取り込みにはいずれも帰属表示要素が添付されることと、その両方をユーザに再認識させることができる。いくつかの実施形態では、インポート帰属355は、メディアコンテンツの異なるピースを選択するなどの目的で、ユーザをメディアアプリケーションに戻すために、ユーザによって選択されることがある。
受信したメディア要素360のためのユーザインタフェース350は、リミックスコントロール(remix control)372を含み得る。リミックスコントロール372は、ユーザが、インポートされたメディア要素360のリミックス、加工、合成、およびその他の変更のためのオプションにアクセスすることを可能にし得る。リミックスコントロール372は、他のユーザによってメッセージスレッド210内で共有されたメディア要素のリミックス、加工、合成、およびその他の変更のためのオプションへの同様のアクセスを提供し得る。リミックスコントロール372は、メッセージングアプリケーション140内で実行されるメディア要素360の変更のための機能と、画像またはビデオにオーディオトラック(例えば、音楽トラック)を重ねることなどによりメディアコンテンツを変更する権限をユーザに与えるクライアントデバイス上の外部アプリケーションと、その両方へのアクセスを提供し得る。
図3Dは、インポートされた第2のメディア要素360の承認された共有を表示している、メッセージングアプリケーション140のユーザインタフェース375の実施形態を示している。
図3Dのユーザインタフェース375は、第2のクライアントデバイス190のユーザが、メッセージスレッド210内へのメディア要素360の取り込みを承認する共有コントロール370を選択した場合を示している。ユーザインタフェース375に示すように、第2のメディア要素360は、やはり、第1のメディア要素110で用いた帰属表示要素315と同様の帰属表示要素385と共に表示される。この第2の帰属表示要素385は、同様にして、メディアアプリケーション内の第2のメディア要素360にアクセスするため、さらに、メッセージスレッド210内へのメディアコンテンツの取り込み、およびメッセージスレッド210において参加者間でメディアコンテンツを共有するやりとりのために、用いることができる。
図4は、同じクライアントデバイス120上で実行されているメディアアプリケーション430から受信したメディア要素110を、メッセージングサーバー180を介して共有する、メッセージングアプリケーション140の実施形態を示している。
メディア管理コンポーネント160は、メディアアプリケーション430に関連付けられたメディア要素110を受信し得る。メディア管理コンポーネント160は、メディア要素110を保存することができ、クライアントデバイス120上のメディアストア460内に、メディア要素110を含むメディアパッケージ105全体を含むことができる。メディアストア460は、メッセージングアプリケーション140で使用するためのメディアコンテンツをキャッシュすることができる。
メッセージングアプリケーション140とメディアアプリケーション430の両方を、別個のユーザアプリケーションとしてクライアントデバイス120上にインストールすることができる。メディア管理コンポーネント160は、クライアントデバイス120上で、アプリケーション間通信によって、メディア要素110とアプリケーション間リンクとを含むメディアパッケージ105を、メッセージングアプリケーション140においてメディアアプリケーション430から受信することができる。
メディアパッケージ105の共有は、メディアアプリケーション430におけるユーザアクティビティによって促された可能性がある。メディアアプリケーション430は、メディアアプリケーションにおいてメディア要素110のユーザメディア選択を受け取り、メディアアプリケーションにおいてユーザメディア共有コマンドを受け取り、ユーザメディア選択およびユーザメディア共有コマンドに応じて、メディアパッケージ105をメディアアプリケーション430からメッセージングアプリケーション140に送信することができる。
場合によっては、メディア要素110は、メッセージングアプリケーション140のメディア要素ディスカバリ・セクションにおいてユーザが発見したものである可能性がある。メディア要素ディスカバリ・セクションは、メッセージングアプリケーション140のユーザの関心があると予測されるメディアコンテンツを表示するために用いられることがあり、そのメディアコンテンツは、メッセージングコンテキスト、メッセージスレッド210の他の参加者との関係コンテキスト、ソーシャルネットワーキングサービスに登録された明示的な兆候および暗示的な兆候、およびユーザに関する既知の他の任意の情報など、ユーザに関する既知の情報に基づくものなどであり得る。メディア管理コンポーネント160は、メッセージングアプリケーション140のメディア要素ディスカバリ・セクションにおいてメディア要素110を表示し、メディア要素ディスカバリ・セクションにおいてメディア要素110のユーザメディア選択を受け取り、メディア要素110のユーザメディア選択に応じて、メディア要素110を含むメッセージパッケージ170を生成するようメッセージングコンポーネント150に指示することができる。メディア要素ディスカバリ・セクションは、アプリケーションとメディア要素の両方を含み得る。それらのアプリケーションとして、デバイスにインストール済みのアプリケーションと、デバイスに未インストールの推奨アプリケーションと、が含まれることがある。それらのアプリケーションは、具体的なアプリケーションのプロモーションに基づくランク付けなどで、その提示においてランク付けされることがある。それらのメディア要素として、デバイスにインストール済みのメディアアプリケーションからのメディア要素と、デバイスに未インストールの推奨アプリケーションからのメディア要素と、が含まれることがある。
メディア要素は、具体的なアプリケーションのプロモーションに基づくランク付けなどで、その提示においてランク付けされることがある。メディアアプリケーションおよびそれに関連したメディア要素は、(例えば、ユーザによるランク付けに応じた)メディアアプリケーションの品質、メディアアプリケーションのバイラリティ(virality)(すなわち、それに接した新たなユーザに拡散する傾向)、ユーザのロケーション(これは、他のメトリクスと組み合わせて用いられることがあり、例えば、品質およびバイラリティは、ユーザの場所を用いることなく判断される)、(機械学習を用いて特定され得るような)ユーザが使用したいメディアアプリケーションおよびユーザが送信したいコンテンツについてのパーソナライズされたユーザモデル、または他の技術によって、ランク付けされることがある。これらの技術を、メディアアプリケーションディスカバリ・セクションにおいてどのメディアアプリケーションを目立たせるのか、どのメディア要素をコンポーザに表示するのか、いずれかにおけるメディアアプリケーションおよびメディア要素の順序、を決定するために用いてよい。メディアアプリケーションは、そのユーザが既に使用しているメディアアプリケーションとの類似度に基づいてプロモーションされることがある。メディアアプリケーションは、そのユーザに特徴(例えば、デモグラフィック情報)が類似した他のユーザに使用されていることに基づいてプロモーションされることがある。メディアアプリケーションは、メッセージングプラットフォームにおけるトラフィックを推進するようなメディアアプリケーションであることから、メディアメッセージングシステム100のメンテナ(maintainer)によってプロモーション用に選択されることがある。
メディアアプリケーションは、それらがメディアメッセージングシステム100とのより高度な統合が得られる場合にプロモーションされることがある。低い統合度は、メッセンジャ内でコンテンツ帰属による共有を可能とするにすぎないメディアアプリケーションに対応し得る。高い統合度は、メッセージングアプリケーション140を用いて応答するため、メッセージングアプリケーション140をインストールするため、またはそれ以外の方法でメッセージングアプリケーション140をユーザに積極的にプロモーションするためのコールトゥアクション(例えば、画面上コントロール)を提供するアプリケーションに対応し得る。高度な統合が得られるメディアアプリケーションは、メディアメッセージングシステム100との統合について最適なエクスペリエンスが得られることに基づいて、ユーザが使用するために、メッセージングアプリケーション140のメディアアプリケーションディスカバリ・セクションにおいてプロモーションされることがある。そのようなメディアアプリケーションは、それらのメディアアプリケーションがインストール済みか否かに関わりなくプロモーションされることがあり、これにより、新たなメディアアプリケーションの発見と既存のメディアアプリケーションの使用の両方を推進する。
場合によっては、メディア要素110は、メッセージスレッド210の参加者の1人によってメッセージスレッド210内で既に共有されていることがある。メッセージングアプリケーション140は、メディア共有の共有履歴を参照する権限をメッセージスレッド210の参加者に与えることができる。メディア管理コンポーネント160は、メッセージングアプリケーション140の交換済みメディア要素セクションにおいてメディア要素110を表示し、メディア要素110のユーザメディア選択を受け取り、メディア要素110のユーザメディア選択に応じて、メディア要素110を含むメッセージパッケージ170を生成するようメッセージングコンポーネント150に指示することができる。交換済みメディア要素セクションは、どちらの参加者も熟知しているであろうメディアコンテンツを用いて新たなメディアアプリケーションのリミックス能力を誇示するなどの目的で、送信前にリミックスするためのメディア要素110を見つけるために用いることもできる。
場合によっては、メディアアプリケーション430は、メッセージングアプリケーション140内でプロモーションされることがある。メディアアプリケーション430は、メディアアプリケーション430のプロバイダとメッセージングアプリケーション140のプロバイダとの間の商業的報酬に基づいて、メディアアプリケーション430のプロバイダとメッセージングアプリケーション140のプロバイダとの間の相互プロモーション契約に基づいて、ユーザのメディアアプリケーション430への予測される関心に基づいて、メディアアプリケーション430のプロバイダによって提供されるターゲティング基準に基づくメディアアプリケーション430のプロモーションのためのメディアメッセージングシステム100によるユーザのターゲティングに基づいて、またはこれらの任意の組み合わせに基づいて、プロモーションされることがある。メディア管理コンポーネント160は、メッセージングアプリケーション140内の、メディアアプリケーション430に関連付けられたアプリケーション固有メディア要素セクションにおいてメディア要素110を表示し、アプリケーション固有メディア要素セクションにおいてメディア要素110のユーザメディア選択を受け取り、メディア要素110のユーザメディア選択に応じて、メディア要素110を含むメッセージパッケージ170を生成することができる。
メディアアプリケーションは、高品質メディアアプリケーションの推進と使用されるメディアアプリケーションの多様性の推進をバランスさせて、メディアアプリケーションエコシステムの健全性を促進するためにプロモーションされることがある。特定のメディアアプリケーションが、メディアメッセージングシステム100のメンテナによって高品質として明示的にマークされることがあり、または挙動の自動分析もしくはメディアアプリケーションのユーザによる明示的格付けによって高品質として自動的にマークされることがある。新たなアプリケーション、様々に異なるアプリケーション、新たなメディアタイプもしくは異なるメディアタイプを提供するアプリケーションの試用を、より幅広いユーザベースまたは特定のユーザに勧めることによって、またはメディアメッセージングシステム100のエコシステム内で提示不足のメディアまたはアプリケーションのカテゴリをプロモーションすることによって、多様性を推進することができる。特定のパーセンタイル順位(percentile rank)の平均より上に関わるメディアメッセージングシステム100のユーザ、または他のメトリックによって高頻度のメディア共有者であるユーザを分析することで、高使用状況にある具体的なメディアアプリケーション、メディアアプリケーションの具体的なタイプ、メディアのパーツタイプまたは他の指標を特定することができ、そして、それらのメディアアプリケーションまたはそれらのタイプのメディアを、より高頻度での使用を促進するために他のユーザにプロモーションすることができる。このような分析は、機械学習法を用いて、メディアメッセージングシステム100で自動的に実行することができる。
望まないメディアコンテンツの共有を避けるために、メッセージングアプリケーション140は、外部のメディアアプリケーションまたはメディアサービスから受信したメディアコンテンツの共有を承認するためのプロンプトをユーザに提示することがある。メディア管理コンポーネント160は、受信したメディアパッケージ105からメディア要素110を抽出して、メッセージングアプリケーション140においてメディア要素110のプレビューを表示することができる。メディア管理コンポーネント160は、メッセージングアプリケーションにおいてメディア要素のユーザメディア選択を受け取り、メッセージングアプリケーション140内で、メディア要素110のユーザメディア選択に応じて、メディア要素110を含むメッセージパッケージ170を生成するようにメッセージングコンポーネント150に指示することができる。
メッセージングコンポーネント150は、メディア要素110を含むメッセージパッケージ170を生成することができる。メッセージパッケージ170は、メディア要素110に関する帰属レコード115を含むことができ、帰属レコード115は、メディア要素110のためのメディアアプリケーション430とのアプリケーション間リンクを含む。メディア要素110と帰属レコード115は、まとめてメディアパッケージ105にメディアアプリケーション430によってバンドルされて(bundled)、メディアパッケージ105のコンポーネントとして受信され得る。
メッセージパッケージ170は、メディア要素110の共有に関するコンテキスト情報を格納したメタデータブロックを含み得る。メッセージパッケージ170は、メッセージング会話の参加者に関する情報、メッセージング会話の話題、メディア要素110が応答であるメディア共有に関するメタデータ、インタラクション頻度データ(例えば、メッセージング参加者が、どのような頻度でインタラクションするか)、話題頻度データ(例えば、共有されるメディア要素110が関係し得る会話の現在の話題を、メッセージング参加者が、どのような頻度で話すか)、話題人気度データ(例えば、メディアメッセージングシステム100またはメディアアプリケーション430内での会話の現在の話題またはメディア要素110の話題の人気度)、ユーザプリファレンス、適切な状況的またはカスタマイズされた応答を作成することに関連した他の任意の情報、を格納し得る。
メッセージングコンポーネント150は、メッセージパッケージ170をメッセージングサーバー180に送信することができる。メッセージングサーバー180は、メッセージングサーバー装置480上で実行することができる。メッセージングサーバー装置480は、メディアメッセージングシステム100で使用される複数のサーバー装置のうちの1つである専用サーバー装置を含み得る。メッセージパッケージ170は、メッセージパッケージ170の受信者のユーザアカウントを特定するアドレス情報を含み得る。
図5は、メディアアプリケーションに関連付けられたメディアサーバーからメディアパッケージを受信する、メッセージングアプリケーションの実施形態を示している。
いくつかの実施形態では、メディア要素110は、メディアアプリケーション430に関連付けることができ、メディア要素110は、クライアントデバイス120上のメディアアプリケーション430からではなく、メディアサーバー535から受信され得る。メディアアプリケーション430内のメディア要素110にアクセスするために、メディア要素110は、さらに、アプリケーション間リンクと共に、または複数のメディア要素が受信される場合は複数のアプリケーション間リンクと共に、受信され得る。これは、複数のメディア要素がメッセージングアプリケーション140内でプロモーションされる場合に有効であり得る。
場合によっては、メッセージングサーバー180および/またはメッセージングアプリケーション140が担当するメッセージングサービスのプロバイダによって維持されるメディアサーバー535から、メディアリポジトリ505を受信することがある。例えば、メディア共有サービスは、メディア共有サービスおよびそれに関連したメディアアプリケーションを使用するためのプロンプトをユーザに提示するメッセージングサービスでのプロモーションのために、メディアコンテンツを伴うメッセージングサービスを提供することがある。このメディアコンテンツは、メッセージングアプリケーション140内のメディア選択インタフェースにおいて、メディア共有サービスへの帰属と共に表示することができる。従って、このメディアコンテンツは、メディアメッセージングシステム100を介して共有することができ、このメディアコンテンツの送信者および受信者には、メディア共有サービスおよびメディア共有サービスのメディアコンテンツの使用を推奨するメディアコンテンツの帰属表示要素が表示される。
メディア管理コンポーネント160は、複数のメディア要素を含むメディアリポジトリ505をメディアサーバーから受信することができ、メディア要素110は、これらの複数のメディア要素のうちの1つを含む。メディア管理コンポーネント160は、これらの複数のメディア要素を、クライアントデバイス120上のメディアストア460に保存し、そして、プロモーションされたメディア要素の1つ以上を表示することができ、プロモーションされたメディア要素の表示された1つ以上には、メディア要素110が含まれる。メディア管理コンポーネント160は、メディア要素110のユーザメディア選択を受け取って、メディア要素110のユーザメディア選択に応じて、メディア要素110を含むメッセージパッケージ170を生成するようにメッセージングコンポーネント150に指示することができる。
メディアリポジトリ505は、複数のプロモーションされたメディア要素を含むプロモーションメディアコンテンツを格納したプロモーションメディアリポジトリを含み得る。プロモーションメディアコンテンツは、特定のメディアサービスをプロモーションするため、特定のメディアアプリケーションをプロモーションするため、特定のイベントをプロモーションするため(例えば、感謝祭の直前の期間にリリースされる感謝祭メディアのようなイベント関連メディアコンテンツ)、または他の任意の想定されるエンティティもしくは事物をプロモーションするために使用されるメディアコンテンツに相当し得る。
図6は、アプリケーション間リンクを用いてメディアアプリケーション430を起動する、メッセージングアプリケーション140の実施形態を示している。
場合によっては、メディア要素110は、メッセージスレッド210において、メディアアプリケーション430に関連付けられた前のメディア要素610を他の参加者から受信したことに応じて、メディアアプリケーション430において、メッセージングアプリケーション140のユーザによって選択された可能性がある。例えば、ユーザは、他のユーザのクライアントデバイス上のメディアアプリケーション430からメディアメッセージングシステム100およびメッセージングアプリケーション140を介して前のメディア要素610を受信したことに応じて、メディアアプリケーション430のメディアコンテンツを探索するように促された可能性がある。
メディア要素110を送信するために用いられるメッセージパッケージ170は、前のメディア要素610をクライアントデバイス120のユーザに送信したユーザに関連付けられた宛先ユーザアカウント宛てとされることがある。メディア要素110を送信するために用いられるメッセージパッケージ170は、メッセージスレッド210に関連付けることができる。メッセージングコンポーネント150は、メッセージパッケージ170が関連付けられるのと同じメッセージスレッドに関連付けられた前のメッセージパッケージ670をメッセージングサーバー180から受信していることがある。同じメッセージスレッドに関連付けられることは、同じメッセージスレッド識別子またはメディアメッセージングシステム100によるユーザアカウントの同じセットに関連付けられることを含み得る。前のメッセージパッケージ670は、メディアアプリケーション430に関連付けられた前のメディア要素610を含み得る。前のメッセージパッケージ670は、メディアアプリケーション430への前のアプリケーション間リンク615を含む前の帰属レコードを含み得る。前のアプリケーション間リンク615は、メディアアプリケーション430内で前のメディア要素610を識別し得る。
メディア管理コンポーネント160は、メッセージスレッド210において、メディアアプリケーション430に関する帰属表示要素に関連付けて、前のメディア要素610を表示することができる。メディア管理コンポーネント160は、帰属表示要素に関連付けて、ユーザアプリケーション起動コマンドを受け取り、ユーザアプリケーション起動コマンドに応じて、メディアアプリケーション430を起動することができる。メディア管理コンポーネント160は、メディアアプリケーション430内で前のメディア要素610を識別するために、前のアプリケーション間リンク615をメディアアプリケーション430に送信することができる。メディア管理コンポーネントは、前のメディア要素610を調べるきっかけであるとともに発見されたメディアコンテンツを誘導すべき先であるメッセージスレッド210を識別する権限をメディアアプリケーション430に与えるために、前のアプリケーション間リンク615に関連付けて、メッセージスレッドアプリケーション間リンクをメディアアプリケーション430に送信することができる。
メディア管理コンポーネント160は、メディアパッケージ105を、メッセージングアプリケーション140においてメディアアプリケーション430から受信することができる。このメディアパッケージ105は、メディア要素110と、メッセージスレッド210に関連付けられたメッセージスレッドアプリケーション間リンクと、を含み得る。メディア管理コンポーネント160は、メッセージスレッド210に関連付けられたメッセージスレッドアプリケーション間リンクに基づいて、メディア要素110をメッセージスレッド210に取り込むプロンプトを提示することができる。このとき、ユーザは、メディアアプリケーション430で発見したメディア要素110を使用することを選択してよく、メディア要素110を破棄することを選択してよく、またはメッセージングアプリケーション140または他のメディアアプリケーションを使用してメディア要素110をリミックスまたは合成することを選択してよい。
場合によっては、ユーザは、自身のクライアントデバイス120にメディアアプリケーション430をまだインストールしていないことがある。メディア管理コンポーネント160は、メッセージングアプリケーション140が実行されているクライアントデバイス120上にメディアアプリケーション430がインストールされていないと判断して、ユーザアプリケーション起動コマンドに応じて、クライアントデバイス120上でメディアアプリケーション430のインストールを開始することができる。メディアアプリケーション430のインストールを開始することは、クライアントデバイス120上でアプリケーションリポジトリユーティリティを起動することと、メディアアプリケーション430をインストールする権限を与えるアプリケーションインストールインタフェースを表示するようにアプリケーションリポジトリユーティリティに指示することと、を含み得る。いくつかの実施形態では、メディア管理コンポーネント160は、ユーザアプリケーション起動コマンドに応じたメディアアプリケーション430のインストールを、メディアアプリケーションインストール帰属レコードに記録することができる。メディアアプリケーションインストール帰属レコードは、メディアアプリケーション帰属によるメディアアプリケーション430のインストール推進の成功に関する統計を提供するのに役立ち得る。いくつかの実施形態では、ユーザアプリケーション起動コマンド用の視覚コントロールは、メディアアプリケーション430がインストールされるときと、クライアントデバイス120上でメディアアプリケーション430が既に使用可能であるか否かがユーザに示されないときとでは、異なり得る。従って、メッセージングアプリケーション140は、メディアアプリケーション430がインストール済みであるかどうか判断して、それに応じて、帰属表示要素315を構成設定することができる。
場合によっては、メディアアプリケーション430は、受信した前のメディア要素610のリミックス、加工、合成、またはその他の変更のために使用されることがある。メディア管理コンポーネント160は、受信されるメディアパッケージ105の発信元となるメディアアプリケーション430とは別の第2のメディアアプリケーションに関連付けられた前のメディア要素610を含む前のメッセージパッケージ670を、メッセージングサーバー180から受信することがある。メディア管理コンポーネント160は、前のメディア要素610を表示することができる。メディア管理コンポーネント160は、複数のリミックスオプションを表示することができる。メディア管理コンポーネント160は、表示された前のメディア要素610に関連付けて、表示された複数のリミックスオプションの1つであるユーザリミックスコマンドを受け取ることができる。メディア管理コンポーネント160は、ユーザリミックスコマンドに応じて、メディアアプリケーション430を起動し、前のメディア要素610をメディアアプリケーション430に送信し、前のメディア要素610の変更バージョンを含むメディア要素110を、メディアアプリケーション430からメディアパッケージ105で受信することができる。
複数のリミックスオプションは、多様なソースに基づくものであり得る。それらのリミックスオプションの1つ以上は、メッセージングアプリケーション140にネイティブなリミックス機能(例えば、フィルタ、オーバーレイなど)の使用を促すものであり得る。リミックスオプションの1つ以上は、メッセージングアプリケーション140の環境内で実行しながらメディアアプリケーション430からインポートされたリミックス機能の使用を促すものであり得る。例えば、メディアアプリケーション430は、フィルタ(例えば、カラーリバランスフィルタ(color rebalancing filter))、オーバレイ(例えば、ステッカー)、オーディオトラック(例えば、楽曲)、およびその他のリミックス要素を提供することができ、これらは、メッセージングアプリケーション140自体によって適用することができ、提供されたリミックス要素に関する帰属は依然としてソースメディアアプリケーション430が受ける。リミックスオプションの1つ以上は、外部のメディアアプリケーション430の直接的使用および外部のメディアアプリケーション430の起動を促すものであり得る。
メディア管理コンポーネント160は、前のメディア要素610の1つ以上の属性に基づいて、複数のリミックスアプリケーションを決定することができ、それらの複数のリミックスアプリケーションには、メディアアプリケーション430が含まれる。そして、メディア管理コンポーネント160は、複数のリミックスアプリケーションの間で選択する権限を与えるリミックスアプリケーション選択インタフェースを表示することができ、ユーザリミックスコマンドは、それらの複数のリミックスアプリケーションからメディアアプリケーション430を選択することを含む。前のメディア要素610の属性は、メディア要素タイプ(例えば、画像、ビデオ、オーディオ)、コンテンツタイプ(例えば、楽曲、写真、動画クリップ)、および前のメディア要素610の他の記述、を含み得る。リミックスアプリケーションは、これらの属性の一部またはすべてを有するメディア要素をリミックスする際に、メッセージングアプリケーション140のユーザ間で一般的に人気のあるもの、またはこのユーザに限って人気のあるもの、のいずれかとして選択されてよい。リミックスアプリケーションは、この特定の前のメディア要素610をリミックスする際に他のユーザに人気のあるものとして選択されてよい。リミックスアプリケーション選択インタフェースは、複数のリミックスアプリケーションを、他にメッセージングアプリケーション140をインストールしている他のユーザから以前に受け取ったリミックスアプリケーション選択によって決定されたアプリケーション順序で、表示することができる。
同様に、ユーザは、リミックスアプリケーションではなく、特定のリミックスオプション群を表示されることがある。メディア管理コンポーネント160は、第2のメディアアプリケーションに関連付けられた前のメディア要素610を含む前のメッセージパッケージ670を、メッセージングサーバー180から受信することがある。メディア管理コンポーネント160は、前のメディア要素610を表示することができる。メディア管理コンポーネント160は、表示された前のメディア要素610に関連付けて、ユーザリミックスコマンドを受け取り、ユーザリミックスコマンドに応じて、複数のリミックスオプションを表示し、このとき、リミックスオプションの各々は、前のメディア要素610に対する異なる加工に対応しており、さらに、複数のリミックスオプションのうちの1つのユーザリミックスオプション選択を受け取り、メディア要素110を作成するために、ユーザリミックスオプション選択に従って前のメディア要素610を加工することができる。これらのリミックスオプションのいくつかは、メッセージングアプリケーション140に単に関連付けることができ、さらにいくつかは、外部のメディアアプリケーションに関連付けて、これにより、それらの個々のメディアアプリケーションに帰属させることができる。外部のメディアアプリケーションに関連付けられたリミックスオプションが選択されると、それはメッセージングアプリケーション140によって内部で適用される場合があり、またはメッセージングアプリケーション140とメディアアプリケーション430とのアプリケーション間通信を介してメディアアプリケーション430によって適用される場合がある。いくつかの実施形態では、表示される複数のリミックスオプションのそれぞれは、それらの複数のリミックスオプションに従って前のメディア要素610を加工することのプレビューを含み得る。
メディア要素がリミックスの結果である場合には、発信メッセージングアプリケーションによって、追加情報が受信メッセージングアプリケーションに渡されることがある。リミックスされたメディア要素のメディアパッケージは、元のメディア要素(そのまま伝送されるか、またはURLのようなリファレンスによるか、いずれか)、ステッカーおよびオーディオファイルのようなリミックス要素の識別情報(例えば、ID番号、名称)、ならびに直接共有されるメディア要素であるメディア要素リミックスの出力ファイル、を含み得る。従って、ユーザは、リミックスされたメディア要素を受信して、リミックスされたメディア要素の生成に使用された要素の1つ以上を用いて、自身の独自のリミックスを実施することができる。例えば、合成されたビデオとサウンドサンプルは、合成された要素の統一表現(例えば、オーディオトラックに組み込まれたサウンドサンプル付きビデオ)として送信することができ、またはメッセージングスレッドにおける即時実行のためには、合成された要素へのリファレンスとして送信することができるが、ただし、このとき、共有メディア要素を生成するために合成された元の要素を参照する。例えば、サウンドサンプルが追加されたビデオを共有するときには、元のビデオと元のサウンドサンプルの両方が含まれるか、または参照されてよく、受信ユーザは、同じビデオに異なるサウンドサンプルを乗せるか、このサウンドサンプルで加工するために別のビデオを選択するか、いずれかのための権限が与えられる。
前のメッセージパッケージ670は、メッセージスレッド210を特定するメッセージスレッド識別子を含み得る。このメッセージスレッド識別子は、送信されるときの前のメディア要素610に関連付けて、メディアアプリケーション430に送信されることがあり、メッセージスレッド識別子は、メッセージスレッド210に関するアプリケーション間リンクに相当する。メディア管理コンポーネント160は、メディア要素110に関連付けて、メディアアプリケーション430からメッセージスレッド識別子をメディアパッケージ105で受信することができる。メディア管理コンポーネント160は、メディアアプリケーション430から受信したメッセージスレッド識別子からメッセージスレッド210を特定する権限をメッセージングコンポーネント150に与えるために、メッセージスレッド識別子をメッセージングコンポーネント150に転送し、メッセージスレッド識別子からメッセージスレッド210を特定したことに基づいて、メッセージスレッド210において、メディア要素110を取り込むために表示することができる。
本明細書では、開示されるアーキテクチャの新規な態様を実施するための例示的な方法を示す一式のフローチャートを記載している。本明細書で示す1つ以上の方法は、説明を簡単にするために、例えばフローチャートまたはフロー図の形式で、一連の動作として図示および記載しているが、それらの方法は、その動作の順序に限定されるものではなく、本発明によるいくつかの動作は、本明細書で図示および記載しているのとは異なる順序で、かつ/または他の動作と同時に実施してよいことは、理解および認識されるべきである。例えば、方法は、代替的に、状態図のような一連の相関した状態または事象として表すことができることは、当業者であれば理解および認識できるであろう。また、新規な実施のために、方法に示すすべての動作が必要であるとは限らない。
図7は、論理フロー700の一実施形態を示している。論理フロー700は、本明細書に記載の1つ以上の実施形態によって実行されるオペレーションの一部またはすべてを表し得る。
図7に示す例示的な実施形態では、論理フロー700は、ブロック702で、メディアアプリケーション430に関連付けられたメディア要素110を、メッセージングアプリケーション140において受信することができる。
論理フロー700は、ブロック704で、メディア要素110を含むメッセージパッケージ170を生成することができ、メッセージパッケージ170は、メディア要素に関する帰属レコード115を含み、帰属レコードは、メディア要素110のためのメディアアプリケーション430とのアプリケーション間リンクを含む。
論理フロー700は、ブロック706で、メッセージパッケージ170をメッセージングサーバー180に送信することができる。
実施形態は、本例に限定されない。
図8は、集中型システム800のブロック図を示す。集中型システム800は、単一メッセージングサーバー装置480内のエンティティ等の、単一の計算エンティティ内のメディアメッセージングシステム100のための構造および/または動作のうちのいくつかまたは全てを実施することができる。
メッセージングサーバー装置480は、メディアメッセージングシステム100のための情報を受信、処理および送信することが可能な任意の電子デバイスを含むことができる。電子デバイスの例は、限定ではないが、ウルトラモバイルデバイス、モバイルデバイス、携帯情報端末(PDA)、モバイルコンピューティングデバイス、スマートフォン、電話、デジタル電話、携帯電話、電子書籍リーダ、ハンドセット、ワンウエイページャ(one−way pager)、ツーウエイページャ、メッセージングデバイス、コンピュータ、パーソナルコンピュータ(PC)、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、ネットブックコンピュータ、ハンドヘルドコンピュータ、タブレットコンピュータ、サーバー、サーバーレイもしくはサーバーファーム、ウェブサーバー、ネットワークサーバー、インターネットサーバー、ワークステーション、ミニコンピュータ、メインフレームコンピュータ、スーパーコンピュータ、ネットワーク機器、ウェブ機器、分散コンピューティングシステム、マルチプロセッサシステム、プロセッサベースのシステム、家庭用電子機器、プログラム可能な家庭用電子機器、ゲームデバイス、テレビ、デジタルテレビ、セットトップボックス、無線アクセスポイント、基地局、加入者局、モバイル加入者センター、無線ネットワークコントローラ、ルータ、ハブ、ゲートウェイ、ブリッジ、スイッチ、マシン、またはそれらの組合せを含むことができる。実施形態はこれに限定されない。
メッセージングサーバー装置480は、処理コンポーネント830を用いてメディアメッセージングシステム100のための処理動作またはロジックを実行することができる。処理コンポーネント830は、様々なハードウェア要素、ソフトウェア要素、または双方の組合せを含むことができる。ハードウェア要素の例は、デバイス、論理デバイス、コンポーネント、プロセッサ、マイクロプロセッサ、回路、プロセッサ回路、回路素子(例えば、トランジスタ、レジスタ、キャパシタ、インダクタ等)、集積回路、特定用途向け集積回路(ASIC:application specific integrated circuits)、プログラマブルロジックデバイス(PLD:programmable logic devices)、デジタルシグナルプロセッサ(DSP:digital signal processors)、フィールドプログラマブルゲートアレイ(FPGA:field programmable gate array)、メモリユニット、論理ゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセット等を含むことができる。ソフトウェア要素の例は、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、ソフトウェア開発プログラム、マシンプログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、機能、方法、プロシージャ、ソフトウェアインタフェース、アプリケーションプログラミングインタフェース(API)、命令セット、コンピューティングコード、コンピュータコード、コードセグメント、コンピュータコードセグメント、単語、値、シンボル、またはそれらの任意の組合せを含むことができる。実施形態がハードウェア要素を用いて実施されるか、かつ/またはソフトウェア要素を用いて実施されるかを判断することは、所望の計算速度、パワーレベル、耐熱性、処理サイクルバジェット、入力データレート、出力データレート、メモリリソース、データバス速度および他の設計または性能の制約等の任意の数の要因に従って、所与の実施態様にとって望ましいとおりに変動することができる。
メッセージングサーバー装置480は、通信コンポーネント840を用いてメディアメッセージングシステム100の通信動作またはロジックを実行することができる。通信コンポーネント840は、パケット交換ネットワーク(例えば、インターネット等の公衆ネットワーク、社内イントラネット等のプライベートネットワーク等)、回路交換網(例えば、公衆交換電話網)、またはパケット交換ネットワークおよび回路交換網の(適切なゲートウェイおよびトランスレータを用いた)組合せ等と共に用いるのに適した技法等の、任意のよく知られた通信技法およびプロトコルを実施することができる。通信コンポーネント840は、1つまたは複数の通信インタフェース、ネットワークインタフェース、ネットワークインタフェースカード(NIC:network interface cards)、無線通信装置、ワイヤレストランスミッタ/ワイヤレスレシーバ(トランシーバ)、有線および/または無線通信媒体、物理的コネクタ等の様々なタイプの標準的な通信要素を含むことができる。限定ではないが、例として、通信媒体812、842は、有線通信媒体および無線通信媒体を含む。有線通信媒体の例は、有線、ケーブル、金属導線、プリント回路基盤(PCB:printed circuit boards)、バックプレーン、スイッチファブリック、半導体材料、ツイストペア線、同軸ケーブル、光ファイバ、伝搬信号等を含むことができる。無線通信媒体の例は、音響、無線周波数(RF)スペクトル、赤外線および他の無線媒体を含むことができる。
メッセージングサーバー装置480は、通信コンポーネント840を介して、他のデバイス810、850と通信媒体812、842をそれぞれ通して通信信号814、844をそれぞれ用いて通信することができる。デバイス810、850は、所与のインプリメンテーションの要求に応じて、メッセージングサーバー装置480の内部または外部のものであってよい。
集中型システム800は、単一のメッセージングサーバー装置480上で実行される単一のメッセージングサーバー180を使用する実施形態に相当し得る。デバイス810、850は、メッセージングサービスのためのメッセージングサーバー180を利用するクライアントデバイス120および第2のクライアントデバイス190のようなクライアントデバイスに相当し得る。
図9は、分散型システム900のブロック図を示している。分散型システム900は、メディアメッセージングシステム100について、その構造および/またはオペレーションのいくつかの部分を複数のコンピューティングエンティティに分散させることができる。分散型システム900の例として、限定するものではないが、クライアントサーバーキテクチャ、3層アーキテクチャ、N層アーキテクチャ、密結合またはクラスタアーキテクチャ、ピアツーピアアーキテクチャ、マスタースレーブアーキテクチャ、共有データベースアーキテクチャ、および他のタイプの分散型システムを含むことができる。実施形態は、これに限定されない。
分散型システム900は、複数のメッセージングサーバー装置910および複数のメディアサーバー装置950を備え得る。概して、複数のメッセージングサーバー装置910および複数のメディアサーバー装置950は、図8を参照して説明したようなクライアントメッセージングサーバー装置480と同じまたは類似したものであり得る。例えば、複数のメッセージングサーバー装置910および複数のメディアサーバー装置950は、それぞれ、処理コンポーネント930および通信コンポーネント940を有することができ、それらは、図8を参照して説明したような処理コンポーネント830および通信コンポーネント840とそれぞれ同じまたは類似したものである。他の例では、装置910、950は、通信コンポーネント940を介して、通信信号914を用いて通信媒体912を通して通信することができる。
複数のメッセージングサーバー装置910は、記載の実施形態による様々な方法を実施するように機能する1つ以上のクライアントプログラムを具備または採用することができる。一実施形態では、例えば、複数のメッセージングサーバー装置910は、分散型メッセージングサーバー180としてメッセージングサーバー180を共同で実装し得る。メッセージングサーバー装置910の各々は、メディアメッセージングシステム100のユーザに対してメッセージングサービスを共同で提供するために、メッセージングサーバー180を実行し得る。
複数のメディアサーバー装置950は、記載の実施形態による様々な方法を実施するように機能する1つ以上のサーバープログラムを具備または採用することができる。一実施形態では、例えば、複数のメディアサーバー装置950は、メディアサーバー135を実装し得る。
図10は、上記に記載の様々な実施形態を実施するのに適した例示的なコンピューティングアーキテクチャ1000の一実施形態を示す。1つの実施形態では、コンピューティングアーキテクチャ1000は、電子デバイスを備えるか、電子デバイスの一部として実施されることが可能である。電子デバイスの例は、中でも、図8および図9を参照して説明したものを含むことができる。実施形態はこれに限定されない。
本出願において用いられるとき、「システム」および「コンポーネント」という語は、ハードウェア、ハードウェアおよびソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアのいずれかである、コンピュータに関係したエンティティを指すことを意図され、それらの例が、例示的なコンピューティングアーキテクチャ1000によって提供される。例えば、コンポーネントは、限定ではないが、プロセッサにおいて実行されるプロセス、プロセッサ、ハードディスクドライブ、(光学および/または磁気記録媒体の)マルチ記録ドライブ、オブジェクト、実行ファイル、実行スレッド、プログラムおよび/またはコンピュータであり得る。例示のために、サーバー上で実行されるアプリケーションおよびサーバーの双方がコンポーネントであり得る。1つまたは複数のコンポーネントがプロセスおよび/または実行スレッド内に常駐することができ、コンポーネントは、1つのコンピュータ上に局在することができ、および/または2つ以上のコンピュータ間で分散され得る。更に、コンポーネントは、動作を協調させるように、様々なタイプの通信媒体によって互いに通信可能に結合され得る。協調は、情報の一方向または双方向の交換を含むことができる。例えば、コンポーネントは、通信媒体により通信される信号の形態で情報を通信することができる。情報は、様々な信号線に割り当てられる信号として実施され得る。そのような割り当てにおいて、各メッセージは信号である。一方、更なる実施形態は、代替的にデータメッセージを用いることができる。そのようなデータメッセージは、様々な接続にわたって送信され得る。例示的な接続は、パラレルインタフェース、シリアルインタフェースおよびバスインタフェースを含む。
コンピューティングアーキテクチャ1000は、1つまたは複数のプロセッサ、マルチコアプロセッサ、コプロセッサ、メモリユニット、チップセット、コントローラ、周辺機器、インタフェース、オシレータ、タイミングデバイス、ビデオカード、オーディオカード、マルチメディア入出力(I/O)コンポーネント、電源等の様々な一般的なコンピューティング要素を含む。しかしながら、実施形態は、コンピューティングアーキテクチャ1000による実施に限定されない。
図10に示すように、コンピューティングアーキテクチャ1000は、処理ユニット904、システムメモリ1006およびシステムバス1008を備える。処理ユニット1004、限定ではないが、AMD(登録商標)プロセッサ、Athlon(登録商標)プロセッサ、Duron(登録商標)プロセッサおよびOpteron(登録商標)プロセッサ;ARM(登録商標)のアプリケーションプロセッサ、組込み型プロセッサおよびセキュアプロセッサ;IBM(登録商標)およびMotorola(登録商標)のDragonBall(登録商標)プロセッサおよびPowerPC(登録商標)プロセッサ;IBMおよびSony(登録商標)のセルプロセッサ;Intel(登録商標)のCeleron(登録商標)プロセッサ、Core(2)Duo(登録商標)プロセッサ、Itanium(登録商標)プロセッサ、Pentium(登録商標)プロセッサ、Xeon(登録商標)プロセッサおよびXScale(登録商標)プロセッサ;ならびに同様なプロセッサを含む様々な市販のプロセッサのうちの任意のものであり得る。デュアルマイクロプロセッサ、マルチコアプロセッサおよび他のマルチプロセッサアーキテクチャも処理ユニット1004として用いられることが可能である。
システムバス1008は、限定ではないがシステムメモリ1006を含むシステムコンポーネントのためのインタフェースを処理ユニット1004に提供する。システムバス1008は、多岐にわたる市販のバスアーキテクチャのうちの任意のものを用いてメモリバス(メモリコントローラを有するかまたは有しない)、周辺バスおよびローカルバスに更に相互接続することができるいくつかのタイプのバス構造のうちの任意のものとすることができる。インタフェースアダプタは、スロットアーキテクチャを介してシステムバス1008に接続することができる。例示的なスロットアーキテクチャは、限定ではないが、アクセラレーテッドグラフィックスポート(AGP:Accelerated Graphics Port)、カードバス、(拡張)業界標準アーキテクチャ((E)ISA:(Extended)Industry Standard Architecture)、マイクロチャネルアーキテクチャ(MCA:Micro Channel Architecture)、NuBus、周辺コンポーネント相互接続(拡張)(PCI(X):Peripheral Component Interconnect(Extended))、PCIエクスプレス、パーソナルコンピュータメモリカード国際組織(PCMCIA:Personal Computer Memory Card International Association)等を含むことができる。
コンピューティングアーキテクチャ1000は、様々な製造品を含むかまたは実装することができる。製造品は、ロジックを記憶するためのコンピュータ可読記録媒体を含むことができる。コンピュータ可読記録媒体の例は、揮発性メモリまたは不揮発性メモリ、取外し可能または非取外し可能メモリ、消去可能または非消去可能メモリ、書き込み可能または書き換え可能メモリ等を含む、電子データを記憶することが可能な任意の有形媒体を含むことができる。ロジックの例は、ソースコード、コンパイルされたコード、解釈実行されたコード、実行可能コード、スタティックコード、ダイナミックコード、オブジェクト指向コード、視覚コード等の任意の適切なタイプのコードを用いて実施される実行可能なコンピュータプログラム命令を含むことができる。実施形態はまた、1つまたは複数のプロセッサによって読出しおよび実行されて、本明細書に記載の動作の実行を可能にすることができる、非一時的コンピュータ可読媒体に含まれるかまたは非一時的コンピュータ可読媒体上にある命令として少なくとも部分的に実施されることが可能である。
システムメモリ1006は、読出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、ダイナミックRAM(DRAM)、ダブルデータレートDRAM(DDRAM:Double−Data−Rate DRAM)、同期DRAM(SDRAM:synchronous DRAM)、スタティックRAM(SRAM:static RAM)、プログラマブルROM(PROM:programmable ROM)、消去可能なプログラマブルROM(EPROM:erasable programmable ROM)、電気的に消去可能なプログラマブルROM(EEPROM:electrically erasable programmable ROM)、フラッシュメモリ、強誘電性ポリマーメモリ等のポリマーメモリ、オーボニックメモリ(ovonic memory)、相変化または強誘電性メモリ、シリコン−酸化物−窒化物−酸化物−シリコン(SONOS:silicon−oxide−nitride−oxide−silicon)メモリ、磁気カードまたは光カード、独立ディスクの冗長アレイ(RAID:Redundant Array of Independent Disks)ドライブ等のデバイスのアレイ、ソリッドステートメモリデバイス(例えば、USBメモリ、ソリッドステートドライブ(SSD:solid state drive)および情報を記憶するのに適した任意の他のタイプの記録媒体等の1つまたは複数の高速メモリユニットの形態の様々なタイプのコンピュータ可読記録媒体を含むことができる。図10に示す例示される実施形態では、システムメモリ1006は、不揮発性メモリ1010および/または揮発性メモリ912を含むことができる。基本入出力システム(BIOS:basic input/output system)を不揮発性メモリ1010に記憶することができる。
コンピュータ1002は、内部(または外部)ハードディスクドライブ(HDD)1014、取外し可能な磁気ディスク1018に対し読出しまたは書き込みを行うための磁気フロッピーディスクドライブ(FDD)1016、および取外し可能な光ディスク922(例えば、CD−ROMまたはDVD)に対し読出しまたは書き込みを行うための光ディスクドライブ1020を含む1つまたは複数の低速メモリユニットの形態で様々なタイプのコンピュータ可読記録媒体を備えることができる。HDD1014、FDD1016および光ディスクドライブ1020は、それぞれHDDインタフェース1024、FDDインタフェース1026、および光ドライブインタフェース1028によってシステムバス1008に接続されることが可能である。外部ドライブ実装のためのHDDインタフェース1024は、ユニバーサルシリアルバス(USB)およびIEEE1394インタフェース技術の少なくとも一方または双方を含むことができる。
ドライブおよび関連するコンピュータ可読媒体は、データ、データ構造、コンピュータ実行可能命令等の揮発性記録および/または不揮発性記録を提供する。例えば、オペレーティングシステム1030、1つまたは複数のアプリケーションプログラム1032、他のプログラムモジュール934およびプログラムデータ1036を含む複数のプログラムモジュールがドライブおよびメモリユニット1010、1012に記憶され得る。1つの実施形態では、1つまたは複数のアプリケーションプログラム1032、他のプログラムモジュール1034およびプログラムデータ1036は、例えば、選択的ゼロレーティングシステム100の様々なアプリケーションおよび/またはコンポーネントを含むことができる。
ユーザは、1つまたは複数の有線/無線入力デバイス、例えば、キーボード1038、およびマウス1040等のポインティングデバイスを通じてコンピュータ1002にコマンドおよび情報を入力することができる。他の入力デバイスは、マイクロフォン、赤外線(IR)リモートコントロール、無線周波数(RF)リモートコントロール、ゲームパッド、スタイラスペン、カードリーダ、ドングル、指紋リーダ、グローブ、グラフィックタブレット、ジョイスティック、キーボード、網膜リーダ、タッチスクリーン(例えば、容量型、抵抗型等)、トラックボール、トラックパッド、センサ、スタイラス等を含むことができる。これらのおよび他の入力デバイスは、多くの場合に、システムバス1008に結合された入力デバイスインタフェース1042を通じて処理ユニット1004に接続されるが、パラレルポート、IEEE1394シリアルポート、ゲームポート、USBポート、IRインタフェース等の他のインタフェースによって接続されてもよい。
モニタ1044または他のタイプの表示デバイスも、ビデオアダプタ1046等のインタフェースを介してシステムバス1008に接続される。モニタ1044は、コンピュータ1002に対し内部または外部にあり得る。モニタ1044に加えて、コンピュータは通常、スピーカ、プリンタ等の他の周辺出力デバイスを備える。
コンピュータ1002は、リモートコンピュータ1048等の1つまたは複数のリモートコンピュータへの有線および/または無線通信を介して論理接続を用いてネットワーク化された環境において動作することができる。リモートコンピュータ1048は、ワークステーション、サーバーコンピュータ、ルータ、パーソナルコンピュータ、ポータブルコンピュータ、マイクロプロセッサに基づく娯楽機器、ピアデバイス、または他の共通ネットワークノードであり得、通常、コンピュータ1002について記載した要素のうちの多くまたは全てを備えるが、簡潔にするために、メモリ/記録デバイス1050のみが示されている。描かれる論理接続は、ローカルエリアネットワーク(LAN)1052および/またはより大きなネットワーク、例えば広域ネットワーク(WAN)1054への有線/無線接続を含む。そのようなLANおよびWANネットワーキング環境は、事務所および会社において一般的であり、イントラネット等の、企業規模のコンピュータネットワークを容易にする。これらは全て、グローバル通信ネットワーク、例えばインターネットに接続することができる。
LANネットワーキング環境において用いられるとき、コンピュータ1002は、有線および/または無線通信ネットワークインタフェースまたはアダプタ1056を通じてLAN1052に接続される。アダプタ1056は、LAN1052への有線および/または無線通信を容易にすることができる。LAN1052も、アダプタ1056の無線機能と通信するために配置された無線アクセスポイントを含むことができる。
WANネットワーキング環境において用いられるとき、コンピュータ1002は、モデム1058を含むことができるか、またはWAN1054の通信サーバーに接続されるか、またはインターネット等によってWAN1054を介して、通信を確立する他の手段を有する。内部または外部の、有線および/または無線デバイスであり得るモデム1058は、入力デバイスインタフェース1042を介してシステムバス1008に接続する。ネットワーク化された環境では、コンピュータ1002について述べられたプログラムモジュールまたはその一部分をリモートメモリ/記録デバイス1050に記憶することができる。示されるネットワーク接続は例示であり、コンピュータ間で通信リンクを確立する他の手段が用いられてもよいことが理解されよう。
コンピュータ1002は、IEEE802系規格を用いて、無線通信(例えば、IEEE802.9オーバーザエアー変調技法)において動作可能に配置される無線デバイス等の、有線および無線デバイスまたはエンティティと通信するように動作可能である。これは、少なくとも、中でも、Wi−Fi(または無線フィデリティ)、WiMaxおよびBluetooth(商標)の無線通信技術を含む。このため、この通信は従来のネットワークと同じように予め定義された通信構造であり得るか、または、単に少なくとも2つの装置の間におけるアドホック通信であり得る。Wi−Fiネットワークは、安全で信頼性が高く高速なワイヤレス接続を提供するIEEE802.9x(a、b、g、n等)と称される無線技術を用いる。Wi−Fiネットワークはコンピュータを互いに、インターネットに、および有線ネットワーク(IEEE802.3関連の媒体および機能を用いる)に接続するのに用いられ得る。
図11は上記の様々な実施形態を実施するのに適した例示的な通信アーキテクチャ1100のブロック図を示す。この通信アーキテクチャ1100は、トランスミッタ、レシーバ、トランシーバ、無線通信装置、ネットワークインタフェース、ベースバンドプロセッサ、アンテナ、増幅器、フィルタ、電源等の様々な一般的な通信要素を含む。しかしながら、本発明の実施形態は通信アーキテクチャ1100による実施に限定されない。
図11に示されるように、通信アーキテクチャ1100は1つまたは複数のクライアント1102およびサーバー1104を含む。クライアント1102は、クライアントデバイス120、第2のクライアントデバイス190、デバイス810,850等の複数のクライアントデバイスを実装することができる。サーバー1104はサーバーデバイス910およびメディアサーバー装置950を実装することができる。クライアント1102およびサーバー1104は、1つまたは複数のそれぞれのクライアントデータストア1108およびサーバーデータストア1110に動作可能に接続されている。これらは、クッキーおよび/または関連付けられたコンテキスト情報等のそれぞれのクライアント1102およびサーバー1104にローカルな情報を記憶するために利用されることが可能である。
クライアント1102およびサーバー1104は通信フレームワーク1106を用いて互いの間で情報を通信することができる。通信フレームワーク1106は任意の既知の通信技法およびプロトコルを実装することができる。通信フレームワーク1106は、パケット交換網(例えば、インターネット等の公衆ネットワーク、社内イントラネット等のプライベートネットワーク等)、回線交換網(例えば、公衆交換電話網)、またはパケット交換網と回線交換網との組合せ(適切なゲートウェイおよびトランスレータを備える)として実装されることが可能である。
通信フレームワーク1106は、通信ネットワークを受け入れ、通信ネットワークと通信し、通信ネットワークに接続するように構成される様々なネットワークインタフェースを実施することができる。ネットワークインタフェースは、特殊な形態の入出力インタフェースと見なされ得る。ネットワークインタフェースは、限定ではないが、直接接続、イーサネット(例えば、シック、シン、ツイストペア10/100/1000BaseT等)、トークンリング、無線ネットワークインタフェース、セルラーネットワークインタフェース、IEEE802.11a−xネットワークインタフェース、IEEE802.16ネットワークインタフェース、IEEE802.20ネットワークインタフェース等を含む接続プロトコルを用いることができる。更に、様々な通信ネットワークタイプと関わるために複数のネットワークインタフェースが用いられ得る。例えば、ブロードキャスト、マルチキャストおよびユニキャストネットワークによる通信を可能にするために、複数のネットワークインタフェースが用いられることが可能である。処理要件がより高い速度およびより多くの容量を指示する場合、クライアント1102およびサーバー1104によって必要とされる通信帯域幅をプールし、負荷分散し、他の形で増大させるために、分散ネットワークコントローラアーキテクチャが同様に利用されることが可能である。通信ネットワークは、限定ではないが、直接相互接続、セキュア化されたカスタム接続、プライベートネットワーク(例えば、社内イントラネット)、公衆ネットワーク(例えば、インターネット)、パーソナルエリアネットワーク(PAN)、ローカルエリアネットワーク(LAN)、メトロポリタンエリアネットワーク(MAN)、インターネット上のノードとして動作しているミッション(OMNI:Operating Missions as Nodes on the Internet)、広域ネットワーク(WAN)、無線ネットワーク、セルラーネットワークおよび他の通信ネットワークを含む有線および/または無線ネットワークのうちの任意の1つまたはそれらの組合せであり得る。
図12は、選択的ゼロレーティングシステム110のようなマルチキャリアOFDMシステムで使用するためのデバイス1200の実施形態を示している。デバイス1200は、例えば、メディアメッセージングシステム100を参照して説明したようなソフトウェアコンポーネント1260、および/または論理回路1230を実装することができる。論理回路1230は、メディアメッセージングシステム100について説明したオペレーションを実行するための物理回路を含み得る。図12に示すように、デバイス1200は、無線インタフェース1210と、ベースバンド回路1220と、コンピューティングプラットフォーム1230とを備え得るが、ただし実施形態は、この構成に限定されない。
デバイス1200は、完全に単一のデバイス内にあるなどの単一のコンピューティングエンティティにおいて、メディアメッセージングシステム100および/または論理回路1230について、その構造および/またはオペレーションの一部またはすべてを具体化することができる。あるいは、デバイス1200は、クライアントサーバーキテクチャ、3層アーキテクチャ、N層アーキテクチャ、密結合またはクラスタアーキテクチャ、ピアツーピアアーキテクチャ、マスタースレーブアーキテクチャ、共有データベースアーキテクチャ、および他のタイプの分散型システムのような分散システムアーキテクチャを用いて、メディアメッセージングシステム100および/または論理回路1230について、その構造および/またはオペレーションのいくつかの部分を複数のコンピューティングエンティティに分散させることができる。実施形態は、これに限定されない。
一実施形態では、無線インタフェース1210は、(例えば、相補型符号変調(CCK)および/または直交周波数分割多重(OFDM)シンボルを含む)シングルキャリアまたはマルチキャリア変調信号を送信および/または受信するように構成されたコンポーネントもしくはコンポーネントの組み合わせを有し得るが、ただし実施形態は、いずれかの特定の空中(over−the−air)インタフェースまたは変調方式に限定されない。無線インタフェース1210は、例えば、受信機1212、送信機1216、および/または周波数シンセサイザ1214を有し得る。無線インタフェース1210は、バイアスコントロール、水晶発振器、および/または1つ以上のアンテナ1218を有し得る。他の実施形態では、無線インタフェース1210は、必要に応じて、外部の電圧制御発振器(VCO)、弾性表面波フィルタ、中間周波数(IF)フィルタ、および/またはRFフィルタを使用することができる。可能なRFインタフェース構成は多様であるため、その広範な説明は省略する。
ベースバンド回路1220は、受信信号および/または送信信号を処理するために無線インタフェース1210と通信することができ、例えば、受信信号をダウンコンバートするためのアナログデジタル変換器1222、信号を送信用にアップコンバートするためのデジタルアナログ変換器1224を有し得る。さらに、ベースバンド回路1220は、個々の受信/送信信号のPHYリンク層処理のためのベースバンドまたは物理層(PHY)処理回路1226を有し得る。ベースバンド回路1220は、例えば、メディアアクセス制御(MAC)/データリンク層処理のための処理回路1228を有し得る。ベースバンド回路1220は、例えば、1つ以上のインタフェース1234を介した処理回路1228および/またはコンピューティングプラットフォーム1230による通信のためのメモリコントローラ1232を有し得る。
いくつかの実施形態では、PHY処理回路1226は、無線フレームのような通信フレームを構築および/または分解するために、バッファメモリのような追加回路と組み合わせて、フレーム構築および/または検出モジュールを含み得る。代替的または追加的に、MAC処理回路1228は、これらの機能のうちのいくつかの処理を共有するか、またはこれらのプロセスをPHY処理回路1226とは独立に実行することができる。
コンピューティングプラットフォーム1230は、デバイス1200にコンピューティング機能を提供し得る。図示のように、コンピューティングプラットフォーム1230は、処理コンポーネント1240を有し得る。デバイス1200は、ベースバンド回路1220に対して追加的または代替的に、処理コンポーネント1240を用いて、メディアメッセージングシステム100および/または論理回路1230について、その処理オペレーションまたはロジックを実行することができる。処理コンポーネント1240(および/またはPHY 1226および/またはMAC 1228)は、各種ハードウェア要素、ソフトウェア要素、またはその両方の組み合わせを含み得る。ハードウェア要素の例として、デバイス、論理デバイス、コンポーネント、プロセッサ、マイクロプロセッサ、回路、プロセッサ回路、回路素子(例えば、トランジスタ、抵抗器、キャパシタ、インダクタなど)、集積回路、特定用途向け集積回路(ASIC)、プログラマブルロジックデバイス(PLD)、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、メモリユニット、論理ゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセットなどを含むことができる。ソフトウェア要素の例として、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、ソフトウェア開発プログラム、マシンプログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、メソッド、プロシージャ、ソフトウェアインタフェース、アプリケーションプログラムインタフェース(API)、命令セット、コンピューティングコード、コンピュータコード、コードセグメント、コンピュータコードセグメント、ワード、値、シンボル、またはその任意の組み合わせを含むことができる。ハードウェア要素および/またはソフトウェア要素を用いて実施形態を実現するかどうかの判断は、所望の計算速度、電力レベル、熱耐性、処理サイクルバジェット、入力データレート、出力データレート、メモリ資源、データバス速度、および他の設計制約または性能制約など、所与のインプリメンテーションで要求される任意の数のファクタに応じて異なる判断となり得る。
コンピューティングプラットフォーム1230は、さらに、他のプラットフォームコンポーネント1250を有し得る。他のプラットフォームコンポーネント1250は、1つ以上のプロセッサ、マルチコアプロセッサ、コプロセッサ、メモリユニット、チップセット、コントローラ、周辺機器、インタフェース、発振器、タイミング装置、ビデオカード、オーディオカード、マルチメディア入力/出力(I/O)コンポーネント(例えば、デジタルディスプレイ)、パワーサプライなどのような、一般的な計算要素を含む。メモリユニットの例として、限定するものではないが、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、ダイナミックRAM(DRAM)、ダブルデータレートDRAM(DDRAM)、同期DRAM(SDRAM)、スタティックRAM(SRAM)、プログラマブルROM(PROM)、消去可能プログラマブルROM(EPROM)、電気的消去可能プログラマブルROM(EEPROM)、フラッシュメモリ、強誘電性ポリマーメモリのようなポリマーメモリ、オーボニックメモリ、相変化または強誘電体メモリ、シリコン/酸化膜/窒化膜/酸化膜/シリコン(SONOS)メモリ、磁気または光カード、独立ディスクの冗長アレイ(RAID)ドライブのようなデバイスアレイ、ソリッドステートメモリデバイス(例えば、USBメモリ、ソリッドステートドライブ(SSD))、および情報を保存するのに適した他の任意のタイプの記憶媒体のような、1つ以上のより高速のメモリユニットの形態の各種タイプのコンピュータ可読およびマシン可読記憶媒体を含むことができる。
デバイス1200は、例えば、ウルトラモバイルデバイス、モバイルデバイス、固定デバイス、マシンツーマシン(M2M)デバイス、パーソナルデジタルアシスタント(PDA)、モバイルコンピューティングデバイス、スマートフォン、電話機、デジタル電話機、セルラー電話機、ユーザ装置、電子書籍リーダ、ハンドセット、一方向ページャ、双方向ページャ、メッセージング装置、コンピュータ、パーソナルコンピュータ(PC)、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、ネットブックコンピュータ、ハンドヘルドコンピュータ、タブレットコンピュータ、サーバー、サーバーレイまたはサーバーファーム、ウェブサーバー、ネットワークサーバー、インターネットサーバー、ワークステーション、ミニコンピュータ、メインフレームコンピュータ、スーパーコンピュータ、ネットワークアプライアンス、ウェブアプライアンス、分散コンピューティングシステム、マルチプロセッサシステム、プロセッサベースのシステム、家電機器、プログラマブル家電機器、ゲーム機、テレビ、デジタルテレビ、セットトップボックス、ワイヤレスアクセスポイント、基地局、ノードB、発展型ノードB(eNB)、加入者局、モバイル加入者センター、無線ネットワークコントローラ、ルータ、ハブ、ゲートウェイ、ブリッジ、スイッチ、マシン、またはその組み合わせであり得る。従って、本明細書に記載のデバイス1200の機能および/または具体的な構成は、要求に応じて適宜、デバイス1200の種々の実施形態に含むことも、または省くこともできる。いくつかの実施形態では、デバイス1200は、3GPP LTE仕様および/またはWMAN用のIEEE1102.16規格および/または本明細書で引用される他の広帯域ワイヤレスネットワークの1つ以上に関連したプロトコルおよび周波数に準拠するように構成することができるが、実施形態は、この点に関して限定されない。
デバイス1200の実施形態は、単入力単出力(SISO)アーキテクチャを用いて実現することができる。一方、いくつかの実現形態では、ビームフォーミングまたは空間分割多重アクセス(SDMA)のための適応アンテナ技術、および/またはMIMO通信技術を用いた送信および/または受信用のマルチアンテナ(例えば、アンテナ1218)を備えることができる。
デバイス1200のコンポーネントおよび機能は、ディスクリート回路、特定用途向け集積回路(ASIC)、論理ゲート、および/またはシングルチップアーキテクチャの任意の組み合わせを用いて実装することができる。さらに、デバイス1200の機能は、必要に応じて適宜、マイクロコントローラ、プログラマブルロジックアレイ、および/またはマイクロプロセッサ、またはその任意の組み合わせを用いて実装することができる。なお、本明細書において、ハードウェア、ファームウェア、および/またはソフトウェア要素を、「ロジック」または「回路」と総称または個称する場合があるということに留意すべきである。
図12のブロック図に示す例示的なデバイス1200は、多くの可能性のある実現形態の1つの機能的説明例を表し得るということは理解されるべきである。従って、添付の図面に示す機能ブロックの分割、欠落、または組み込みは、必ずしも、実施形態における、それらの機能を実装するためのハードウェアコンポーネント、回路、ソフトウェア、および/または要素の分割、欠落、または組み込みを推測させるものではない。
コンピュータにより実行される方法は、メディアアプリケーションに関連付けられたメディア要素を、メッセージングアプリケーションにおいて受信すること、そのメディア要素を含むメッセージパッケージを生成することであって、メッセージパッケージは、そのメディア要素に関する帰属レコードを含み、帰属レコードは、そのメディア要素のためのメディアアプリケーションとのアプリケーション間リンクを含む、受信すること、そのメッセージパッケージをメッセージングサーバーに送信すること、を含み得る。
コンピュータにより実行される方法は、メディアアプリケーションに関連付けられたメディア要素を、メッセージングアプリケーションにおいて受信すること、そのメディア要素を含むメッセージパッケージを生成することであって、メッセージパッケージは、そのメディア要素に関する帰属レコードを含み、帰属レコードは、メディアアプリケーションでメディアサーバー上のメディア要素にネットワークアクセスするためのネットワークコンポーネントを構成設定するように機能する、生成すること、そのメッセージパッケージをメッセージングサーバーに送信すること、を含み得る。
コンピュータにより実行される方法は、メディアアプリケーションに関連付けられたメディアパッケージを、メッセージングアプリケーションにおいて受信することであって、メディアパッケージは、メディア要素に関するメディアサービス帰属レコードを含む、受信すること、メディアサービス帰属レコードに基づいて、メッセージングアプリケーションでメディアサーバー上のメディア要素にネットワークアクセスするためのネットワークコンポーネントを構成設定すること、そのメディア要素を含むメッセージパッケージを生成することであって、メッセージパッケージは、そのメディア要素に関するメディアアプリケーション帰属レコードを含み、メディアアプリケーション帰属レコードは、そのメディア要素のためのメディアアプリケーションとのアプリケーション間リンクを含む、生成すること、そのメッセージパッケージをメッセージングサーバーに送信すること、を含み得る。
コンピュータにより実行される方法は、メディアアプリケーションに関連付けられたメディアパッケージを、メッセージングアプリケーションにおいて受信することであって、メディアパッケージは、メディア要素とメディア要素メタデータとを含み、メディア要素メタデータは、参加者情報、話題情報、インタラクション頻度データ、話題頻度データ、話題人気度データ、ユーザプリファレンス、のうちの1つ以上を含む、受信すること、そのメディア要素を含むメッセージパッケージを生成することであって、メッセージパッケージは、そのメディア要素に関する帰属レコードを含み、帰属レコードは、そのメディア要素のためのメディアアプリケーションとのアプリケーション間リンクを含む、生成すること、そのメッセージパッケージをメッセージングサーバーに送信すること、を含み得る。
コンピュータにより実行される方法は、さらに、メッセージングアプリケーションはクライアントデバイス上にインストールされていること、メディアアプリケーションは、メッセージングアプリケーションとは別のアプリケーションとして、クライアントデバイス上にインストールされていること、を伴い得るとともに、コンピュータにより実行される方法は、さらに、クライアントデバイス上で、アプリケーション間通信によって、メディア要素とアプリケーション間リンクとを含むメディアパッケージを、メッセージングアプリケーションにおいてメディアアプリケーションから受信すること、を含む。
コンピュータにより実行される方法は、さらに、メディアアプリケーションにおいてメディア要素のユーザメディア選択を受け取ること、メディアアプリケーションにおいてユーザメディア共有コマンドを受け取ること、ユーザメディア選択およびユーザメディア共有コマンドに応じて、そのメディアパッケージをメディアアプリケーションからメッセージングアプリケーションに送信すること、を含み得る。
コンピュータにより実行される方法は、さらに、受信したメディアパッケージからメディア要素を抽出すること、メッセージングアプリケーションにおいてメディア要素のプレビューを表示すること、メッセージングアプリケーションにおいてメディア要素のユーザメディア選択を受け取ること、メッセージングアプリケーション内で、メディア要素のユーザメディア選択に応じて、そのメディア要素を含むメッセージパッケージを生成すること、を含み得る。
コンピュータにより実行される方法は、さらに、プロモーションされたメディアリポジトリをメディアサーバーから受信することであって、プロモーションされたメディアリポジトリは、プロモーションされた複数のメディア要素を含み、上記メディア要素は、プロモーションされた複数のメディア要素のうちの1つを含む、受信すること、プロモーションされたメディア要素のうちの1つ以上を表示することであって、プロモーションされたメディア要素のうちの表示される1つ以上は、上記メディア要素を含む、表示すること、メディア要素のユーザメディア選択を受け取ること、メディア要素のユーザメディア選択に応じて、そのメディア要素を含むメッセージパッケージを生成すること、を含み得る。
コンピュータにより実行される方法は、さらに、メッセージングアプリケーションのメディア要素ディスカバリ・セクションにおいて、上記メディア要素を表示すること、メディア要素ディスカバリ・セクションにおいて、メディア要素のユーザメディア選択を受け取ること、メディア要素のユーザメディア選択に応じて、そのメディア要素を含むメッセージパッケージを生成すること、を含み得る。
コンピュータにより実行される方法は、さらに、メッセージングアプリケーションの交換済みメディア要素セクションにおいて、上記メディア要素を表示すること、交換済みメディア要素セクションにおいて、メディア要素のユーザメディア選択を受け取ること、メディア要素のユーザメディア選択に応じて、そのメディア要素を含むメッセージパッケージを生成すること、を含み得る。
コンピュータにより実行される方法は、さらに、メッセージングアプリケーション内の、メディアアプリケーションに関連付けられたアプリケーション固有メディア要素セクションにおいて、上記メディア要素を表示すること、アプリケーション固有メディア要素セクションにおいて、メディア要素のユーザメディア選択を受け取ること、メディア要素のユーザメディア選択に応じて、そのメディア要素を含むメッセージパッケージを生成すること、を含み得る。
コンピュータにより実行される方法は、さらに、メッセージパッケージはメッセージスレッドに関連付けられていること、を伴い得るとともに、コンピュータにより実行される方法は、さらに、そのメッセージスレッドに関連付けられた前のメッセージパッケージを、メッセージングサーバーから受信することであって、前のメッセージパッケージは、メディアアプリケーションに関連付けられた前のメディア要素を含み、前のメッセージパッケージは、前の帰属レコードを含み、前の帰属レコードは、前のアプリケーション間リンクを含み、前のアプリケーション間リンクは、メディアアプリケーション内で前のメディア要素を識別する、受信すること、そのメッセージスレッドにおいて、メディアアプリケーションに関する帰属表示要素に関連付けて、前のメディア要素を表示すること、帰属表示要素に関連付けて、ユーザアプリケーション起動コマンドを受け取ること、ユーザアプリケーション起動コマンドに応じて、メディアアプリケーションを起動すること、前のアプリケーション間リンクをメディアアプリケーションに送信すること、前のアプリケーション間リンクに関連付けて、メッセージスレッドアプリケーション間リンクをメディアアプリケーションに送信すること、上記メディア要素と、そのメッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクと、を含むメディアパッケージを、メッセージングアプリケーションにおいてメディアアプリケーションから受信すること、そのメッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクに基づいて、そのメディア要素をメッセージスレッドに取り込むプロンプトを提示すること、を含む。
コンピュータにより実行される方法は、さらに、メッセージングアプリケーションはクライアントデバイス上で実行されていること、を伴い得るとともに、コンピュータにより実行される方法は、さらに、クライアントデバイス上にメディアアプリケーションがインストールされていないと判断すること、ユーザアプリケーション起動コマンドに応じて、クライアントデバイス上でメディアアプリケーションのインストールを開始すること、を含む。
コンピュータにより実行される方法は、さらに、メディアアプリケーションのインストールを開始することが、クライアントデバイス上でアプリケーションリポジトリユーティリティを起動すること、メディアアプリケーションをインストールする権限を与えるアプリケーションインストールインタフェースを表示するようにアプリケーションリポジトリユーティリティに指示すること、を含むことを伴い得る。
コンピュータにより実行される方法は、さらに、ユーザアプリケーション起動コマンドに応じたメディアアプリケーションのインストールを、メディアアプリケーションインストール帰属レコードに記録すること、を含み得る。
コンピュータにより実行される方法は、さらに、第2のメディアアプリケーションに関連付けられた前のメディア要素を含む前のメッセージパッケージを、メッセージングサーバーから受信すること、前のメディア要素を表示すること、表示された前のメディア要素に関連付けて、ユーザリミックスコマンドを受け取ること、ユーザリミックスコマンドに応じて、メディアアプリケーションを起動すること、前のメディア要素をメディアアプリケーションに送信すること、前のメディア要素の変更バージョンを含む上記メディア要素を、メディアアプリケーションから受信すること、を含み得る。
コンピュータにより実行される方法は、さらに、前のメディア要素の1つ以上の属性に基づいて、複数のリミックスアプリケーションを決定することであって、複数のリミックスアプリケーションは、上記メディアアプリケーションを含む、決定すること、複数のリミックスアプリケーションの間で選択する権限を与えるリミックスアプリケーション選択インタフェースを表示することであって、上記ユーザリミックスコマンドは、これらの複数のリミックスアプリケーションから上記メディアアプリケーションを選択することを含む、表示すること、を含み得る。
コンピュータにより実行される方法は、さらに、リミックスアプリケーション選択インタフェースは、複数のリミックスアプリケーションを、他に上記メッセージングアプリケーションをインストールしている他のユーザから以前に受け取ったリミックスアプリケーション選択によって決定されたアプリケーション順序で、表示すること、を伴い得る。
コンピュータにより実行される方法は、さらに、第2のメディアアプリケーションに関連付けられた前のメディア要素を含む前のメッセージパッケージを、メッセージングサーバーから受信すること、前のメディア要素を表示すること、表示された前のメディア要素に関連付けて、ユーザリミックスコマンドを受け取ること、ユーザリミックスコマンドに応じて、複数のリミックスオプションを表示することであって、リミックスオプションの各々は、前のメディア要素に対する異なる加工に対応している、表示すること、複数のリミックスオプションのうちの1つのユーザリミックスオプション選択を受け取ること、上記メディア要素を作成するために、ユーザリミックスオプション選択に従って前のメディア要素を加工すること、を含み得る。
コンピュータにより実行される方法は、さらに、表示される複数のリミックスオプションのそれぞれが、それらの複数のリミックスオプションに従って前のメディア要素を加工することのプレビューを含むことを伴い得る。
コンピュータにより実行される方法は、さらに、前のメッセージパッケージが、メッセージスレッドを特定するメッセージスレッド識別子を含むこと、メッセージスレッド識別子が、送信されるときの前のメディア要素に関連付けて、メディアアプリケーションに送信されること、を伴い得るとともに、コンピュータにより実行される方法は、さらに、上記メディア要素に関連付けて、メディアアプリケーションからメッセージスレッド識別子を受信すること、メディアアプリケーションから受信したメッセージスレッド識別子からメッセージスレッドを特定すること、メッセージスレッド識別子からメッセージスレッドを特定したことに基づいて、そのメッセージスレッドにおいて、上記メディア要素を取り込むために表示すること、を含む。
装置は、デバイスに搭載されたプロセッサ回路と、メディアアプリケーションに関連付けられたメディア要素をメッセージングアプリケーションにおいて受信するように、プロセッサ回路上で動作するメディア管理コンポーネントと、そのメディア要素を含むメッセージパッケージを生成し、そのメッセージパッケージをメッセージングサーバーに送信するように動作するメッセージングコンポーネントであって、メッセージパッケージは、そのメディア要素に関する帰属レコードを含み、帰属レコードは、そのメディア要素のためのメディアアプリケーションとのアプリケーション間リンクを含む、メッセージングコンポーネントと、を備え得る。この装置は、本明細書に記載のコンピュータにより実行される方法のいずれかを実施するように機能し得る。
少なくとも1つのコンピュータ可読記憶媒体は、命令を含むことができ、それらの命令は、実行されることで、本明細書に記載のコンピュータにより実行される方法のいずれかをシステムに実行させる。
いくつかの実施形態は、「1つの実施形態」または「実施形態」という表現と、それらの派生語とを用いて説明され得る。これらの用語は、実施形態に関して説明される特定の特徴、構造または特性が少なくとも1つの実施形態に含まれることを意味している。本明細書の様々な箇所に現れる「1つの実施形態において」というフレーズは、必ずしも全てが同じ実施形態を指しているわけではない。更に、いくつかの実施形態は、「結合された」および「接続された」という表現と、それらの派生語とを用いて説明され得る。これらの表現は必ずしも互いの同義語として意図されているわけではない。例えば、いくつかの実施形態は、「接続された」および/または「結合された」という表現を用いることにより、2つ以上の要素が直接物理的にまたは電気的に相互接触していることを示すように説明され得る。一方、「結合された」という用語は、2つ以上の要素が互いに直接接触していないが、それでも互いに協働またはインタラクトしていることを意味する場合もある。
本明細書において用いられる表記および専門用語を全体的に参照すると、本明細書における詳細な説明は、コンピュータまたはコンピュータのネットワーク上で実行されるプログラムプロシージャの観点で表され得る。これらの手続き的(procedural)記載および表現は、当業者によって、当該技術分野における他の当業者に自身の研究の本質を最も効果的に伝えるために用いられている。
プロシージャとは、ここでは、また一般的に、所望の結果をもたらすオペレーションの首尾一貫したシーケンスであると考えられる。これらのオペレーションは、物理的量の物理的操作を必要とするものである。必須ではないが通例、これらの量は、記憶、転送、組合せ、比較および他の形で操作されることが可能な電気信号、磁気信号または光信号の形態をとる。場合によっては、主に一般的用法の理由から、これらの信号を、ビット、値、要素、シンボル、文字、語、数等と呼ぶことが好都合であることがわかっている。しかしながら、これらの用語および同様の用語は全て適切な物理的量に関連付けられ、これらの量に適用される好都合なラベルにすぎないことに留意されたい。
更に、実行される操作は、多くの場合、人間のオペレータによって実行される知的オペレーションに一般的に関連付けられる、追加または比較等の用語で参照される。1つまたは複数の実施形態の一部を形成する、本明細書に説明されるオペレーションのいずれにおいても、人間のオペレータのそのような能力は必要でないか、ほとんどの場合に望ましくない。むしろ、オペレーションは機械オペレーションである。様々な実施形態のオペレーションを実行するための有用な機械は、汎用デジタルコンピュータまたは同様のデバイスを含む。
様々な実施形態は、これらのオペレーションを実行するための装置またはシステムにも関する。この装置は、必要とされる目的のために特に構築されることが可能であるか、またはコンピュータに記憶されるコンピュータプログラムによって選択的にアクティベートまたは再構成される汎用コンピュータを含むことができる。本明細書において提示されるプロシージャは、特定のコンピュータまたは他の装置に本質的に関係しない。様々な汎用機械は、本明細書における教示に関連して書かれたプログラムと共に用いられ得るか、または、必要とされる方法ステップを実行する、より特殊な装置を構築することが好都合であるとわかる場合がある。様々なこれらの機械のために必要とされる構造は、与えられる説明から明らかとなるであろう。
本開示の要約書は、読み手が技術的開示の本質を迅速に理解できるようにするために提供されていることを強調しておく。要約書は、特許請求の範囲の範囲または意味を解釈または限定することに用いられないという理解のもとに提出されている。更に、上記した「発明を実施するための形態」においては、開示を効率化するために様々な特徴がまとめて単一の実施形態にされていることを見てとることができる。このような開示方法は、特許請求される実施形態が各請求項に明示的に記された特徴以外のものを必要とする意図を表していると解釈されるべきではない。むしろ、以下の特許請求の範囲が表しているように、本発明の主題は、開示されている単一の実施形態の全特徴よりも少ない特徴にある。このため、以下の特許請求の範囲は本明細書において「発明を実施するための形態」に組み込まれ、各請求項は独立した1つの実施形態に基づく。「第1の」、「第2の」、「第3の」等の用語は単にラベルとして用いられており、それらの対象物に数的限定を課すことを意図したものではない。
上記で説明したものは、開示されているアーキテクチャの例を含む。当然ながら、コンポーネントおよび/または方法の全ての考え得る組合せを記載することは不可能であるが、当業者であれば、多くの更なる組合せおよび置き換えが可能であることを認識することができる。したがって、新規のアーキテクチャは、添付の特許請求の範囲の趣旨および範囲内にある全ての変化、変更および変形を包含することが意図される。

Claims (32)

  1. コンピュータにより実行される方法であって、
    メディアアプリケーションに関連付けられたメディア要素を、メッセージングアプリケーションにおいて受信すること、
    前記メディア要素を含むメッセージパッケージを生成することであって、前記メッセージパッケージは、前記メディア要素に関する帰属レコードを含み、前記帰属レコードは、前記メディア要素のためのメディアアプリケーションとのアプリケーション間リンクを含み、前記アプリケーション間リンクは、前記メディアアプリケーションに関連付けられたメディアサービスのコンテンツ空間内で前記メディア要素を識別し、前記帰属レコードは、前記メディアサービスのメディアサーバー上のメディア要素にネットワークアクセスするために前記メッセージングアプリケーションのネットワークコンポーネントを構成設定するように機能し、前記構成設定することは、前記メディアサービスのセキュリティ認証情報を前記メッセージングアプリケーションに提供することを含む、前記メッセージパッケージを生成すること、
    前記メッセージパッケージをメッセージングサーバーに送信すること、を備える方法。
  2. 前記メッセージングアプリケーションは、クライアントデバイス上にインストールされ、
    前記メディアアプリケーションは、前記メッセージングアプリケーションとは別のアプリケーションとして、前記クライアントデバイス上にインストールされ、
    前記クライアントデバイス上で、アプリケーション間通信によって、前記メディア要素と前記アプリケーション間リンクとを含むメディアパッケージを、前記メッセージングアプリケーションにおいて前記メディアアプリケーションから受信すること、をさらに備える請求項1に記載の方法。
  3. 受信されたメディアパッケージから前記メディア要素を抽出すること、
    前記メッセージングアプリケーションにおいて前記メディア要素のプレビューを表示すること、
    前記メッセージングアプリケーションにおいて前記メディア要素のユーザメディア選択を受け取ること、
    前記メッセージングアプリケーション内で、前記メディア要素のユーザメディア選択に応じて、前記メディア要素を含むメッセージパッケージを生成すること、をさらに備える請求項2に記載の方法。
  4. 前記メディアサーバーからプロモーションされたメディアリポジトリを受信することであって、前記プロモーションされたメディアリポジトリは、プロモーションされた複数のメディア要素を含み、前記メディア要素は、前記プロモーションされた複数のメディア要素のうちの1つを含む、前記プロモーションされたメディアリポジトリを受信すること、
    前記プロモーションされた複数のメディア要素のうちの1つ以上を表示することであって、前記プロモーションされた複数のメディア要素のうちの表示される1つ以上は、前記メディア要素を含む、前記プロモーションされた複数のメディア要素のうちの1つ以上を表示すること、
    前記メディア要素のユーザメディア選択を受け取ること、
    前記メディア要素のユーザメディア選択に応じて、前記メディア要素を含むメッセージパッケージを生成すること、をさらに備える請求項1に記載の方法。
  5. 前記メッセージングアプリケーションのメディア要素ディスカバリ・セクションにおいて、前記メディア要素を表示すること、
    前記メディア要素ディスカバリ・セクションにおいて、前記メディア要素のユーザメディア選択を受け取ること、
    前記メディア要素のユーザメディア選択に応じて、前記メディア要素を含むメッセージパッケージを生成すること、をさらに備える請求項1に記載の方法。
  6. 前記メッセージパッケージは、メッセージスレッドに関連付けられ、
    前記メッセージングサーバーから、前記メッセージスレッドに関連付けられた前のメッセージパッケージを受信することであって、前記前のメッセージパッケージは、前記メディアアプリケーションに関連付けられた前のメディア要素を含み、前記前のメッセージパッケージは、前の帰属レコードを含み、前記前の帰属レコードは、前のアプリケーション間リンクを含み、前記前のアプリケーション間リンクは、前記メディアアプリケーション内で前記前のメディア要素を識別する、前記前のメッセージパッケージを受信すること、
    前記メッセージスレッドにおいて、前記メディアアプリケーションに関する帰属表示要素に関連付けて、前記前のメディア要素を表示すること、
    前記帰属表示要素に関連付けて、ユーザアプリケーション起動コマンドを受け取ること、
    前記ユーザアプリケーション起動コマンドに応答して、前記メディアアプリケーションを起動すること、
    前記前のアプリケーション間リンクを前記メディアアプリケーションに送信すること、
    前記前のアプリケーション間リンクに関連付けて、メッセージスレッドアプリケーション間リンクを前記メディアアプリケーションに送信すること、
    前記メディア要素と、前記メッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクと、を含むメディアパッケージを、前記メッセージングアプリケーションにおいて前記メディアアプリケーションから受信すること、
    前記メッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクに基づいて、前記メディア要素を前記メッセージスレッドに取り込むプロンプトを提示すること、をさらに備える請求項1に記載の方法。
  7. 前記メッセージングアプリケーションは、クライアントデバイス上で実行され、
    前記方法は、
    前記クライアントデバイス上に前記メディアアプリケーションがインストールされていないと判断すること、
    前記ユーザアプリケーション起動コマンドに応答して、前記クライアントデバイス上で前記メディアアプリケーションのインストールを開始すること、をさらに備える、請求項6に記載の方法。
  8. 第2のメディアアプリケーションに関連付けられた前のメディア要素を含む前のメッセージパッケージを、前記メッセージングサーバーから受信すること、
    前記前のメディア要素を表示すること、
    表示された前のメディア要素に関連付けて、ユーザリミックスコマンドを受け取ること、
    前記ユーザリミックスコマンドに応答して、前記メディアアプリケーションを起動すること、
    前記前のメディア要素を前記メディアアプリケーションに送信すること、
    前記前のメディア要素の変更バージョンを含むメディア要素を、前記メディアアプリケーションから受信すること、をさらに備える請求項1に記載の方法。
  9. 装置であって、
    デバイスに搭載されたプロセッサ回路と、
    メディアアプリケーションに関連付けられたメディア要素をメッセージングアプリケーションにおいて受信するように、前記プロセッサ回路上で動作するメディア管理コンポーネントと、
    前記メディア要素を含むメッセージパッケージを生成し、前記メッセージパッケージをメッセージングサーバーに送信するように動作するメッセージングコンポーネントであって、前記メッセージパッケージは、前記メディア要素に関する帰属レコードを含み、前記帰属レコードは、前記メディア要素のためのメディアアプリケーションとのアプリケーション間リンクを含み、前記アプリケーション間リンクは、前記メディアアプリケーションに関連付けられたメディアサービスのコンテンツ空間内で前記メディア要素を識別し、前記帰属レコードは、前記メディアサービスのメディアサーバー上のメディア要素にネットワークアクセスするために前記メッセージングアプリケーションのネットワークコンポーネントを構成設定するように機能し、前記構成設定することは、前記メディアサービスのセキュリティ認証情報を前記メッセージングアプリケーションに提供することを含む、前記メッセージングコンポーネントと、を備える装置。
  10. 前記メッセージングアプリケーションは、前記デバイス上にインストールされ、
    前記メディアアプリケーションは、前記メッセージングアプリケーションとは別のアプリケーションとして、クライアントデバイス上にインストールされ、
    前記装置は、
    前記クライアントデバイス上で、アプリケーション間通信によって、前記メディア要素と前記アプリケーション間リンクとを含むメディアパッケージを、前記メッセージングアプリケーションにおいて前記メディアアプリケーションから受信するように動作する前記メディア管理コンポーネントをさらに備える、請求項9に記載の装置。
  11. プロモーションされたメディアリポジトリを前記メディアサーバーから受信し、前記プロモーションされたメディア要素のうちの1つ以上を表示し、前記メディア要素のユーザメディア選択を受け取るように動作する前記メディア管理コンポーネントであって、前記プロモーションされたメディアリポジトリは、プロモーションされた複数のメディア要素を含み、前記メディア要素は、前記プロモーションされた複数のメディア要素のうちの1つを含み、前記プロモーションされたメディア要素のうちの表示される1つ以上は、前記メディア要素を含む、前記メディア管理コンポーネントと、
    前記メディア要素のユーザメディア選択に応答して、前記メディア要素を含むメッセージパッケージを生成するように動作する前記メッセージングコンポーネントと、をさらに備える請求項9に記載の装置。
  12. 前記メッセージパッケージは、メッセージスレッドに関連付けられ、
    前記メッセージスレッドに関連付けられた前のメッセージパッケージを、前記メッセージングサーバーから受信するように動作する前記メッセージングコンポーネントであって、前記前のメッセージパッケージは、前記メディアアプリケーションに関連付けられた前のメディア要素を含み、前記前のメッセージパッケージは、前の帰属レコードを含み、前記前の帰属レコードは、前のアプリケーション間リンクを含み、前記前のアプリケーション間リンクは、前記メディアアプリケーション内で前記前のメディア要素を識別する、前記メッセージングコンポーネントと、
    前記メッセージスレッドにおいて、前記メディアアプリケーションに関する帰属表示要素に関連付けて、前記前のメディア要素を表示し、前記帰属表示要素に関連付けて、ユーザアプリケーション起動コマンドを受け取り、前記ユーザアプリケーション起動コマンドに応答して、前記メディアアプリケーションを起動し、前記前のアプリケーション間リンクを前記メディアアプリケーションに送信し、前記前のアプリケーション間リンクに関連付けて、メッセージスレッドアプリケーション間リンクを前記メディアアプリケーションに送信し、前記メディア要素と、前記メッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクと、を含むメディアパッケージを、前記メッセージングアプリケーションにおいて前記メディアアプリケーションから受信し、前記メッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクに基づいて、前記メディア要素を前記メッセージスレッドに取り込むプロンプトを提示するように動作する前記メディア管理コンポーネントと、をさらに備える請求項9に記載の装置。
  13. 前記デバイス上に前記メディアアプリケーションがインストールされていないと判断し、ユーザアプリケーション起動コマンドに応答して、前記デバイス上で前記メディアアプリケーションのインストールを開始するように動作する前記メディア管理コンポーネントをさらに備える請求項9に記載の装置。
  14. 第2のメディアアプリケーションに関連付けられた前のメディア要素を含む前のメッセージパッケージを、前記メッセージングサーバーから受信するように動作する前記メッセージングコンポーネントと、
    前記前のメディア要素を表示し、表示された前のメディア要素に関連付けて、ユーザリミックスコマンドを受け取り、前記ユーザリミックスコマンドに応答して、前記メディアアプリケーションを起動し、前記前のメディア要素を前記メディアアプリケーションに送信し、前記前のメディア要素の変更バージョンを含む前記メディア要素を、前記メディアアプリケーションから受信するように動作する前記メディア管理コンポーネントと、をさらに備える請求項9に記載の装置。
  15. 複数の命令を含む少なくとも1つのコンピュータ可読記憶媒体であって、前記複数の命令は、実行されると、
    メディアアプリケーションに関連付けられたメディア要素を、メッセージングアプリケーションにおいて受信すること、
    前記メディア要素を含むメッセージパッケージを生成することであって、前記メッセージパッケージは、前記メディア要素に関する帰属レコードを含み、前記帰属レコードは、前記メディア要素のための前記メディアアプリケーションとのアプリケーション間リンクを含み、前記アプリケーション間リンクは、前記メディアアプリケーションに関連付けられたメディアサービスのコンテンツ空間内で前記メディア要素を識別し、前記帰属レコードは、前記メディアサービスのメディアサーバー上のメディア要素にネットワークアクセスするために前記メッセージングアプリケーションのネットワークコンポーネントを構成設定するように機能し、前記構成設定することは、前記メディアサービスのセキュリティ認証情報を前記メッセージングアプリケーションに提供することを含む、前記メッセージパッケージを生成すること、
    前記メッセージパッケージをメッセージングサーバーに送信すること、をシステムに実行させる、コンピュータ可読記憶媒体。
  16. 前記メッセージングアプリケーションはクライアントデバイス上にインストールされ、前記メディアアプリケーションは、前記メッセージングアプリケーションとは別のアプリケーションとして、前記クライアントデバイス上にインストールされ、
    前記コンピュータ可読記憶媒体は、さらに複数の命令を含み、該複数の命令は、実行されると、
    前記クライアントデバイス上で、アプリケーション間通信によって、前記メディア要素と前記アプリケーション間リンクとを含むメディアパッケージを、前記メッセージングアプリケーションにおいて前記メディアアプリケーションから受信すること、をシステムに実行させる、請求項15に記載のコンピュータ可読記憶媒体。
  17. 前記コンピュータ可読記憶媒体は、
    複数の命令をさらに備え、該複数の命令は、実行されると、
    前記メディアサーバーからプロモーションされたメディアリポジトリを受信することであって、前記プロモーションされたメディアリポジトリは、プロモーションされた複数のメディア要素を含み、前記メディア要素は、前記プロモーションされた複数のメディア要素のうちの1つを含む、前記プロモーションされたメディアリポジトリを受信すること、
    前記プロモーションされたメディア要素のうちの1つ以上を表示することであって、前記プロモーションされたメディア要素のうちの表示される1つ以上は、前記メディア要素を含む、前記プロモーションされたメディア要素のうちの1つ以上を表示すること、
    前記メディア要素のユーザメディア選択を受け取ること、
    前記メディア要素のユーザメディア選択に応答して、前記メディア要素を含む前記メッセージパッケージを生成すること、をシステムに実行させる、請求項15に記載のコンピュータ可読記憶媒体。
  18. 前記メッセージパッケージは、メッセージスレッドに関連付けられ、
    前記コンピュータ可読記憶媒体は、複数の命令をさらに備え、該複数の命令は、実行されると、
    前記メッセージングサーバーから、前記メッセージスレッドに関連付けられた前のメッセージパッケージを受信することであって、前記前のメッセージパッケージは、前記メディアアプリケーションに関連付けられた前のメディア要素を含み、前記前のメッセージパッケージは、前の帰属レコードを含み、前記前の帰属レコードは、前のアプリケーション間リンクを含み、前記前のアプリケーション間リンクは、前記メディアアプリケーション内で前記前のメディア要素を識別する、前記前のメッセージパッケージを受信すること、
    前記メッセージスレッドにおいて、前記メディアアプリケーションに関する帰属表示要素に関連付けて、前記前のメディア要素を表示すること、
    前記帰属表示要素に関連付けて、ユーザアプリケーション起動コマンドを受け取ること、
    前記ユーザアプリケーション起動コマンドに応答して、前記メディアアプリケーションを起動すること、
    前記前のアプリケーション間リンクを前記メディアアプリケーションに送信すること、
    前記前のアプリケーション間リンクに関連付けて、メッセージスレッドアプリケーション間リンクを前記メディアアプリケーションに送信すること、
    前記メディア要素と、前記メッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクと、を含むメディアパッケージを、前記メッセージングアプリケーションにおいて前記メディアアプリケーションから受信すること、
    前記メッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクに基づいて、前記メディア要素を前記メッセージスレッドに取り込むプロンプトを提示すること、をシステムに実行させる、請求項15に記載のコンピュータ可読記憶媒体。
  19. 前記メッセージングアプリケーションは、クライアントデバイス上で実行され、
    前記コンピュータ可読記憶媒体は、複数の命令をさらに備え、該複数の命令は、実行されると、
    前記クライアントデバイス上に前記メディアアプリケーションがインストールされていないと判断すること、
    ユーザアプリケーション起動コマンドに応答して、前記クライアントデバイス上で前記メディアアプリケーションのインストールを開始すること、をシステムに実行させる、請求項15に記載のコンピュータ可読記憶媒体。
  20. 前記コンピュータ可読記憶媒体は、複数の命令をさらに備え、該複数の命令は、実行されると、
    第2のメディアアプリケーションに関連付けられた前のメディア要素を含む前のメッセージパッケージを、前記メッセージングサーバーから受信すること、
    前記前のメディア要素を表示すること、
    表示された前のメディア要素に関連付けて、ユーザリミックスコマンドを受け取ること、
    前記ユーザリミックスコマンドに応答して、前記メディアアプリケーションを起動すること、
    前記前のメディア要素を前記メディアアプリケーションに送信すること、
    前記前のメディア要素の変更バージョンを含む前記メディア要素を、前記メディアアプリケーションから受信すること、をシステムに実行させる、請求項15に記載のコンピュータ可読記憶媒体。
  21. コンピュータにより実行される方法であって、
    メッセージングアプリケーションにおいてメディアアプリケーションに関連付けられたメディアパッケージを受信することであって、前記メディアパッケージは、メディア要素とメディア要素メタデータとを含み、前記メディア要素メタデータは、参加者情報、話題情報、インタラクション頻度データ、話題頻度データ、話題人気度データ、ユーザプリファレンス、のうちの1つ以上を含む、前記メディアパッケージを受信すること、
    前記メディア要素を含むメッセージパッケージを生成することであって、前記メッセージパッケージは、前記メディア要素に関する帰属レコードを含み、前記帰属レコードは、前記メディア要素のための前記メディアアプリケーションとのアプリケーション間リンクを含み、前記アプリケーション間リンクは、前記メディアアプリケーションに関連付けられたメディアサービスのコンテンツ空間内で前記メディア要素を識別し、前記帰属レコードは、前記メディアサービスのメディアサーバー上のメディア要素にネットワークアクセスするために前記メッセージングアプリケーションのネットワークコンポーネントを構成設定するように機能し、前記構成設定することは、前記メディアサービスのセキュリティ認証情報を前記メッセージングアプリケーションに提供することを含む、前記メッセージパッケージを生成すること、
    前記メッセージパッケージをメッセージングサーバーに送信すること、を備える方法。
  22. コンピュータにより実行される方法であって、
    メディアメッセージングシステムのユーザのクライアントデバイス上で動作するメッセージングアプリケーションにおいて、メディアアプリケーションに関連付けられたメディア要素を受信することであって、前記メディアアプリケーションは、前記メッセージングアプリケーションとは別のアプリケーションとして、前記クライアントデバイス上にインストールされている、前記メディア要素を受信すること、
    前記メディア要素を含むメッセージパッケージを生成することであって、
    前記メディア要素は、コンピュータデータ表現およびリファレンスのうちの少なくとも一方として直接的に保存され、
    前記メッセージパッケージは、前記メディア要素に関する帰属レコードを含み、
    前記帰属レコードは、前記メディア要素のためのメディアアプリケーションとのアプリケーション間リンクを含み、
    前記アプリケーション間リンクは、前記メディアアプリケーションに関連付けられたメディアサービスのコンテンツ空間内で前記メディア要素を識別し、
    前記帰属レコードは、前記メディアサービスのメディアサーバー上のメディア要素にネットワークアクセスするために前記メッセージングアプリケーションのネットワークコンポーネントを構成設定するように機能し、前記構成設定することは、前記メディアサービスのセキュリティ認証情報を前記メッセージングアプリケーションに提供することを含む、前記メッセージパッケージを生成すること、
    前記メディアメッセージングシステムの他のユーザの1つ以上の他のクライアントデバイスへの配信のために、前記メッセージパッケージを、前記クライアントデバイスからメッセージングサーバーに送信すること、を備える方法。
  23. 前記メッセージングアプリケーションは、クライアントデバイス上にインストールされ、
    前記メディアアプリケーションは、前記メッセージングアプリケーションとは別のアプリケーションとして、前記クライアントデバイス上にインストールされ、
    前記方法は、
    前記クライアントデバイス上で、アプリケーション間通信によって、前記メディア要素と前記アプリケーション間リンクとを含むメディアパッケージを、前記メッセージングアプリケーションにおいて前記メディアアプリケーションから受信すること、をさらに備える、請求項22に記載の方法。
  24. 受信したメディアパッケージから前記メディア要素を抽出すること、
    前記メッセージングアプリケーションにおいて前記メディア要素のプレビューを表示すること、
    前記メッセージングアプリケーションにおいて前記メディア要素のユーザメディア選択を受け取ること、
    前記メッセージングアプリケーション内で、前記メディア要素の前記ユーザメディア選択に応答して、前記メディア要素を含むメッセージパッケージを生成すること、をさらに備える請求項23に記載の方法。
  25. 前記メディアサーバーからプロモーションされたメディアリポジトリを受信することであって、前記プロモーションされたメディアリポジトリは、プロモーションされた複数のメディア要素を含み、前記メディア要素は、前記プロモーションされた複数のメディア要素のうちの1つを含む、前記プロモーションされたメディアリポジトリを受信すること、
    前記プロモーションされたメディア要素のうちの1つ以上を表示することであって、前記プロモーションされたメディア要素のうちの表示される1つ以上は、前記メディア要素を含む、前記プロモーションされたメディア要素のうちの1つ以上を表示すること、
    前記メディア要素のユーザメディア選択を受け取ること、
    前記メディア要素のユーザメディア選択に応答して、前記メディア要素を含むメッセージパッケージを生成すること、をさらに備える請求項22〜24のいずれか1項に記載の方法。
  26. 前記メッセージングアプリケーションのメディア要素ディスカバリ・セクションにおいて、前記メディア要素を表示すること、
    前記メディア要素ディスカバリ・セクションにおいて、前記メディア要素のユーザメディア選択を受け取ること、
    前記メディア要素のユーザメディア選択に応じて、前記メディア要素を含むメッセージパッケージを生成することと、をさらに備える請求項22〜25のいずれか1項に記載の方法。
  27. 前記メッセージパッケージは、メッセージスレッドに関連付けられ、
    前記方法は、
    前記メッセージングサーバーから、前記メッセージスレッドに関連付けられた前のメッセージパッケージを受信することであって、前記前のメッセージパッケージは、前記メディアアプリケーションに関連付けられた前のメディア要素を含み、前記前のメッセージパッケージは、前の帰属レコードを含み、前記前の帰属レコードは、前のアプリケーション間リンクを含み、前記前のアプリケーション間リンクは、前記メディアアプリケーション内で前記前のメディア要素を識別する、前記前のメッセージパッケージを受信すること、
    前記メッセージスレッドにおいて、前記メディアアプリケーションに関する帰属表示要素に関連付けて、前記前のメディア要素を表示すること、
    前記帰属表示要素に関連付けて、ユーザアプリケーション起動コマンドを受け取ること、
    前記ユーザアプリケーション起動コマンドに応答して、前記メディアアプリケーションを起動すること、
    前記前のアプリケーション間リンクを前記メディアアプリケーションに送信すること、
    前記前のアプリケーション間リンクに関連付けて、メッセージスレッドアプリケーション間リンクを前記メディアアプリケーションに送信すること、
    前記メディア要素と、前記メッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクと、を含むメディアパッケージを、前記メッセージングアプリケーションにおいて前記メディアアプリケーションから受信すること、
    前記メッセージスレッドに関連付けられたメッセージスレッドアプリケーション間リンクに基づいて、前記メディア要素を前記メッセージスレッドに取り込むプロンプトを提示すること、をさらに備える請求項22〜26のいずれか1項に記載の方法。
  28. 前記メッセージングアプリケーションは、クライアントデバイス上で実行され、
    前記方法は、
    前記クライアントデバイス上に前記メディアアプリケーションがインストールされていないと判断すること、
    前記ユーザアプリケーション起動コマンドに応答して、前記クライアントデバイス上で前記メディアアプリケーションのインストールを開始すること、をさらに備える、請求項27に記載の方法。
  29. 第2のメディアアプリケーションに関連付けられた前のメディア要素を含む前のメッセージパッケージを、前記メッセージングサーバーから受信すること、
    前記前のメディア要素を表示すること、
    表示された前のメディア要素に関連付けて、ユーザリミックスコマンドを受け取ること、
    前記ユーザリミックスコマンドに応答して、前記メディアアプリケーションを起動すること、
    前記前のメディア要素を前記メディアアプリケーションに送信すること、
    前記前のメディア要素の変更バージョンを含む前記メディア要素を、前記メディアアプリケーションから受信すること、をさらに備える請求項22〜28のいずれか1項に記載の方法。
  30. ソフトウェアを具現化する1つ以上の非一時的なコンピュータ可読記憶媒体であって、
    前記ソフトウェアは、実行されると、請求項22〜29のいずれか1項に記載の方法を実施するように動作する、非一時的なコンピュータ可読記憶媒体。
  31. システムであって、
    1つ以上のプロセッサと、
    前記1つ以上のプロセッサに結合され、前記1つ以上のプロセッサで実行可能な複数の命令を含む少なくとも1つのメモリと、を備え、
    前記1つ以上のプロセッサは、前記複数の命令を実行すると、請求項22〜29のいずれか1項に記載の方法を実施するように動作する、システム。
  32. データ処理システム上で実行されると、請求項22〜29のいずれか1項に記載の方法を実施するように動作するコンピュータプログラム。
JP2017549606A 2015-03-24 2015-03-25 メッセージングシステムを介してメディアを共有およびリミックスする技術 Active JP6677742B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/667,576 US10063510B2 (en) 2015-03-24 2015-03-24 Techniques to share and remix media through a messaging system
US14/667,576 2015-03-24
PCT/US2015/022375 WO2016153495A1 (en) 2015-03-24 2015-03-25 Techniques to share and remix media through a messaging system

Publications (2)

Publication Number Publication Date
JP2018514025A JP2018514025A (ja) 2018-05-31
JP6677742B2 true JP6677742B2 (ja) 2020-04-08

Family

ID=56975873

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017549606A Active JP6677742B2 (ja) 2015-03-24 2015-03-25 メッセージングシステムを介してメディアを共有およびリミックスする技術

Country Status (10)

Country Link
US (1) US10063510B2 (ja)
JP (1) JP6677742B2 (ja)
KR (1) KR102290150B1 (ja)
CN (1) CN107820694B (ja)
AU (1) AU2015387556B2 (ja)
BR (1) BR112017020508A2 (ja)
CA (1) CA2980273A1 (ja)
IL (1) IL254606B (ja)
MX (1) MX2017012251A (ja)
WO (1) WO2016153495A1 (ja)

Families Citing this family (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US20120309363A1 (en) 2011-06-03 2012-12-06 Apple Inc. Triggering notifications associated with tasks items that represent tasks to perform
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US9154456B2 (en) 2012-04-17 2015-10-06 Trenda Innovations, Inc. Messaging system and method
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
DE212014000045U1 (de) 2013-02-07 2015-09-24 Apple Inc. Sprach-Trigger für einen digitalen Assistenten
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
AU2014278592B2 (en) 2013-06-09 2017-09-07 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
WO2015020942A1 (en) 2013-08-06 2015-02-12 Apple Inc. Auto-activating smart responses based on activities from remote devices
AU2015266863B2 (en) 2014-05-30 2018-03-15 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US10846612B2 (en) * 2016-11-01 2020-11-24 Google Llc Actionable suggestions for activities
US20180107829A1 (en) * 2016-10-14 2018-04-19 Electronics And Telecommunications Research Institute Network entity and operation method of the same
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770428A1 (en) 2017-05-12 2019-02-18 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770411A1 (en) 2017-05-15 2018-12-20 Apple Inc. MULTI-MODAL INTERFACES
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
KR102350954B1 (ko) * 2017-08-22 2022-01-14 삼성전자주식회사 메시지를 전송하는 전자 장치 및 그 동작 방법
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
CN109151016B (zh) * 2018-08-10 2021-07-30 阿里巴巴(中国)有限公司 流量转发方法和装置、服务系统、计算设备及存储介质
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK201970510A1 (en) 2019-05-31 2021-02-11 Apple Inc Voice identification in digital assistant systems
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
CN110909180B (zh) * 2019-10-23 2022-08-02 维沃移动通信有限公司 一种媒体文件的处理方法及电子设备
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11038934B1 (en) 2020-05-11 2021-06-15 Apple Inc. Digital assistant hardware abstraction
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11539647B1 (en) * 2020-06-17 2022-12-27 Meta Platforms, Inc. Message thread media gallery
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
KR102572197B1 (ko) * 2020-08-14 2023-08-29 주식회사 카카오 컨텐츠 박스 제공 방법 및 사용자 단말
EP4222983A1 (en) * 2020-09-30 2023-08-09 Snap Inc. Generating media content items for sharing to external applications
KR102536806B1 (ko) * 2021-08-11 2023-05-26 라인플러스 주식회사 인스턴트 메시징 애플리케이션을 통해 통화 중 콘텐츠를 공유하는 방법 및 시스템
US20240106779A1 (en) * 2022-09-23 2024-03-28 Yahoo Ad Tech Llc Systems and methods for user-specified exchange for message channel data

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003308272A (ja) * 2002-04-17 2003-10-31 Denso Corp 通信機能付き地図表示装置
DE602004029509D1 (de) 2004-07-05 2010-11-18 Ericsson Telefon Ab L M Vorrichtung und verfahren für einen durch push-nachrichten initiierten dienst
US8620915B1 (en) 2007-03-13 2013-12-31 Google Inc. Systems and methods for promoting personalized search results based on personal information
US20130226453A1 (en) 2005-02-08 2013-08-29 Bryan Gardner Trussel Systems and methods for mobile communication integration
US20070266170A1 (en) * 2006-05-11 2007-11-15 Mockett Gregory P Interactive, rich-media delivery over an ip network using synchronized unicast and multicast
US8250154B2 (en) 2006-12-15 2012-08-21 International Business Machines Corporation Structured archiving and retrieval of linked messages in a synchronous collaborative environment
US20090055511A1 (en) 2007-08-20 2009-02-26 International Business Machines Corporation Non-programmatic access to data and to data transfer functions
US20090094248A1 (en) 2007-10-03 2009-04-09 Concert Technology Corporation System and method of prioritizing the downloading of media items in a media item recommendation network
US8428635B2 (en) * 2008-03-11 2013-04-23 Disney Enterprises, Inc. System and method for managing group communications
US9165284B2 (en) * 2008-06-06 2015-10-20 Google Inc. System and method for sharing content in an instant messaging application
CN101360071A (zh) * 2008-09-16 2009-02-04 腾讯科技(深圳)有限公司 基于即时聊天进行多媒体资源共享的方法及系统
US8026805B1 (en) 2009-04-09 2011-09-27 Adobe Systems Incorporated Media tracker
EP2469882A3 (en) 2010-12-23 2013-10-09 BlackBerry Limited Social media shuffle system and application
US20120271822A1 (en) 2011-04-25 2012-10-25 Motorola Mobility, Inc. System for establishing preferred contacts for a central user of a mobile communication device
US8725858B1 (en) 2011-08-31 2014-05-13 Google Inc. Method and system for selecting content based on a user's viral score
WO2013067000A1 (en) * 2011-11-01 2013-05-10 Google Inc. Launching applications from webpages
US8391136B1 (en) 2012-01-27 2013-03-05 Google Inc. Fallback messaging
CN104185997B (zh) 2012-04-12 2019-03-19 华为技术有限公司 用于使用统一门户实现质量体验感知的媒体搜索和推荐的系统和方法
US8972323B2 (en) 2012-06-14 2015-03-03 Microsoft Technology Licensing, Llc String prediction
US20140351348A1 (en) * 2012-06-22 2014-11-27 Cezary Kolodziej Method and system for sharing rich media content from mobile messaging to social media networks
CN103546358B (zh) * 2012-07-09 2016-05-04 腾讯科技(深圳)有限公司 面向第三方应用的即时通讯方法及系统
CN102904798B (zh) * 2012-09-27 2015-07-29 腾讯科技(深圳)有限公司 一种数据交互方法及装置
US9948589B2 (en) 2012-11-14 2018-04-17 invi Labs, Inc. System for and method of organizing contacts for chat sessions on an electronic device
US9602606B2 (en) 2012-11-30 2017-03-21 Rovi Guides, Inc. Systems and methods for a social facilitator service
US20140164529A1 (en) 2012-12-07 2014-06-12 Linkedln Corporation Communication systems and methods
US10235423B2 (en) 2012-12-12 2019-03-19 Google Llc Ranking search results based on entity metrics
US9692854B2 (en) 2013-01-23 2017-06-27 Facebook, Inc. Communication between a web-based application and a desktop application
US9553919B2 (en) * 2013-02-27 2017-01-24 Quixey, Inc. Techniques for sharing application states
CN103475572B (zh) * 2013-04-27 2014-12-10 腾讯科技(深圳)有限公司 在即时通信应用中发送多张图片的方法、装置及系统
JP5909459B2 (ja) * 2013-05-02 2016-04-26 グリー株式会社 メッセージ送受信支援システム、メッセージ送受信支援プログラム及びメッセージ送受信支援方法
US9240966B2 (en) 2013-06-19 2016-01-19 Twilio, Inc. System and method for transmitting and receiving media messages
US20150026266A1 (en) * 2013-07-17 2015-01-22 Yahoo! Inc. Share to stream
US9553832B2 (en) 2013-08-13 2017-01-24 Facebook, Inc. Techniques to interact with an application via messaging
US9116912B1 (en) * 2014-01-31 2015-08-25 EyeGroove, Inc. Methods and devices for modifying pre-existing media items
US10366438B2 (en) 2014-03-26 2019-07-30 Cellco Partnership Product notification and recommendation technology utilizing detected activity
US9444897B1 (en) 2015-11-12 2016-09-13 International Business Machines Corporation Quality of experience collaboration between mobile devices

Also Published As

Publication number Publication date
KR102290150B1 (ko) 2021-08-18
US20160285808A1 (en) 2016-09-29
CN107820694A (zh) 2018-03-20
IL254606A0 (en) 2017-11-30
CA2980273A1 (en) 2016-09-29
AU2015387556A1 (en) 2017-10-12
WO2016153495A1 (en) 2016-09-29
JP2018514025A (ja) 2018-05-31
BR112017020508A2 (pt) 2018-07-10
US10063510B2 (en) 2018-08-28
IL254606B (en) 2019-09-26
MX2017012251A (es) 2018-02-09
AU2015387556B2 (en) 2019-04-18
KR20170131573A (ko) 2017-11-29
CN107820694B (zh) 2021-10-22

Similar Documents

Publication Publication Date Title
JP6677742B2 (ja) メッセージングシステムを介してメディアを共有およびリミックスする技術
JP7242750B2 (ja) メッセージングエージェントプラットフォームのための技術
US12003467B2 (en) Sharing web entities based on trust relationships
JP6782301B2 (ja) メッセージング・ボット・リッチ・コミュニケーションのための技法
CN108605008B (zh) 用于路由消息的代理电子邮件服务器
US11025566B2 (en) Techniques for intent-based search for bots
CN107408270B (zh) 与场境相关的连接邀请
US20190068526A1 (en) Methods and systems for helper bot platform assistance
US10904481B1 (en) Broadcasting and managing call participation
US10635861B2 (en) Analyzing language units for opinions
US9503410B2 (en) Sharing of activity metadata via messaging systems
US20190173939A1 (en) Sharing data links with devices based on connection of the devices to a same local network
WO2019125503A1 (en) Methods and systems for responding to inquiries based on social graph information
KR20170099969A (ko) 그래프 기반 자연어 프로세싱을 위한 기술
US20180302345A1 (en) Techniques for event-based recommendations for bots
WO2019100986A1 (zh) 一种信息发送方法及装置
US11341173B2 (en) Techniques for personalized search for bots
US10846615B2 (en) Techniques for reinforcement for bots using capability catalogs
US11269845B1 (en) Techniques to configure media packages
EP3076608B1 (en) Techniques to share and remix media through a messaging system
US20180300161A1 (en) Techniques for multiple-user bot applications
EP3388952A1 (en) Techniques for intent-based search for bots

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180315

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190313

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190326

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20190520

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190626

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190920

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200313

R150 Certificate of patent or registration of utility model

Ref document number: 6677742

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250