JP2014195274A - セルラ携帯電話端末、ソフトウェアアプリケーション、及び音楽トラック配信システム - Google Patents

セルラ携帯電話端末、ソフトウェアアプリケーション、及び音楽トラック配信システム Download PDF

Info

Publication number
JP2014195274A
JP2014195274A JP2014096165A JP2014096165A JP2014195274A JP 2014195274 A JP2014195274 A JP 2014195274A JP 2014096165 A JP2014096165 A JP 2014096165A JP 2014096165 A JP2014096165 A JP 2014096165A JP 2014195274 A JP2014195274 A JP 2014195274A
Authority
JP
Japan
Prior art keywords
client
musicstation
user
server
music
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.)
Granted
Application number
JP2014096165A
Other languages
English (en)
Other versions
JP5833178B2 (ja
Inventor
Stephen Knight Mark
マーク, ステファン ナイト,
Michael Iran Lamb
マイケル, イアン ラム,
Robert John Lewis
ロバート, ジョン ルイス,
William Pocock Stephen
ステファン, ウィリアム ポコック,
Anthony Sant Philip
フィリップ, アンソニー セント,
Peter Sullivan Mark
マーク, ペーター サリバン,
John Evans Christopher
クリストファー, ジョン エヴァンス,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omnifone Ltd
Original Assignee
Omnifone Ltd
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=37899084&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2014195274(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Priority claimed from GB0608932A external-priority patent/GB0608932D0/en
Priority claimed from GB0608936A external-priority patent/GB0608936D0/en
Priority claimed from GB0608935A external-priority patent/GB0608935D0/en
Priority claimed from GB0608933A external-priority patent/GB0608933D0/en
Priority claimed from GB0608934A external-priority patent/GB0608934D0/en
Application filed by Omnifone Ltd filed Critical Omnifone Ltd
Publication of JP2014195274A publication Critical patent/JP2014195274A/ja
Application granted granted Critical
Publication of JP5833178B2 publication Critical patent/JP5833178B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4627Rights management associated to the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72442User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for playing music files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/63Querying
    • G06F16/635Filtering based on additional data, e.g. user or group profiles
    • G06F16/637Administration of user profiles, e.g. generation, initialization, adaptation or distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/63Querying
    • G06F16/638Presentation of query results
    • G06F16/639Presentation of query results using playlists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/64Browsing; Visualisation therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/68Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/68Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/686Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, title or artist information, time, location or usage information, user ratings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/14Charging, metering or billing arrangements for data wireline or wireless communications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/14Charging, metering or billing arrangements for data wireline or wireless communications
    • H04L12/1403Architecture for metering, charging or billing
    • 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/212Monitoring or handling of messages using filtering or selective blocking
    • 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/42Mailbox-related aspects, e.g. synchronisation of mailboxes
    • 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/52User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/7243User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages
    • H04M1/72436User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages for text messaging, e.g. SMS or e-mail
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/41Billing record details, i.e. parameters, identifiers, structure of call data record [CDR]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M15/00Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
    • H04M15/80Rating or billing plans; Tariff determination aspects
    • H04M15/8005Flat-fee
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/4872Non-interactive information services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2543Billing, e.g. for subscription services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • H04W12/082Access security using revocation of authorisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • H04W12/084Access security using delegated authorisation, e.g. open authorisation [OAuth] protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/24Accounting or billing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
    • H04W8/20Transfer of user or subscriber data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/35Aspects of automatic or semi-automatic exchanges related to information services provided via a voice call
    • H04M2203/358Digital rights management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/20Information technology specific aspects, e.g. CAD, simulation, modelling, system security

Abstract

【課題】デジタル音楽コンテンツを、携帯無線コンピューティング装置にダウンロードし且つ使用するこが可能な、無線コンピューティング装置を提供する。
【解決手段】無線コンピューティング装置上で実行するアプリケーションは、エンドユーザの入力なしで無線装置と関連するパラメータに自動的に適応されている。このアプリケーションは、エンドユーザが無線ネットワークを使用してリモートサーバ上の音楽コンテンツを閲覧及び探索し、無線ネットワークを使用してリモートサーバから音楽コンテンツをダウンロードし且つそのダウンロードした音楽コンテンツを再生及び管理することを可能にする。アプリケーションは、加入サービスが終了していない限り、装置への種々の音楽トラックの無制限の合法的なダウンロードを可能にし且つ装置に格納されたトラックのうち任意のトラックの再生を可能にするデジタル権利管理システムを更に含む。
【選択図】図71

Description

本発明は、デジタル音楽コンテンツを携帯無線コンピューティング装置にダウンロードし且つ使用することを可能にする方法に関する。本発明の明細書で使用される用語「携帯無線コンピューティング装置」は、双方向無線通信機能を有する任意の種類の携帯装置を範囲に含むように広範に解釈されるべきであり、無線電話、移動電話、スマートフォン、通信機、パーソナルコンピュータ、コンピュータ及び特定用途向け装置を含むがそれらに限定されない。携帯無線コンピューティング装置は、GSM(登録商標)又はUMTS、CDMA及びWCDMA(登録商標)移動無線、Bluetooth(登録商標)、IrDA等の任意の種類のネットワークを介して任意の方法で通信可能な装置を含む。
過去数年間に音楽の配信及び購入方法が大きく変化してきている。消費者が物理的製品を店で購入し、それを自宅で聴くという従来の方法は衰退し、音楽業界の世界的な収益は、2000年の400億ドルから2005年の310億ドルに僅かに落ちている。その間に、インターネットを介するデジタル音楽の配信が急増した。最初は不法なファイル共有の形式であったが、最近は有償のダウンロードが益々増加している。AppleのiPodO等の携帯デジタルオーディオプレーヤ(DAP)は、地球規模の音楽市場に非常に大きな影響を与えてきた。最初の携帯デジタルオーディオプレーヤが投入されてからたった5年で、世界でのデジタル音楽の売り上げは2005年で既に50億ドルを優に超えるまでに成長した。
それら傾向を逆転させるために、音楽レーベルは、音楽が移動電話(又は他の種類の携帯無線装置)を介して販売され且つセルラ無線ネットワークを介して配信されるモバイル市場を探求することに現在関心を向けている。潜在的な価値は、着メロ(登録商標)市場の爆発的な成長から既に明らかであり、音楽レーベル及びモバイルネットワークオペレータMNOは、モバイル向けフルトラック音楽がPC上でのデジタル音楽と比較してより多くの収益をもたらし、より良いセキュリティを提供し且つ価格が向上すると確信している。
移動電話は、iPod及び他のDAPと比較していくつかの明かな利点を有する。音楽の再生の他に、移動電話は、益々高速でセキュリティ保護された無線ネットワークに接続され、ユーザは、移動中に音楽を特定及び共有し、MNOの組み込まれた便利な課金機能を使用してコンテンツの支払いを行なえる。益々増加しているモバイルハンドセットの製造業者による革新は、市場の進歩を助長している。
しかし、今後、更に大きな課題がある。フル音楽コンテンツを販売する主な手段であるモバイルインターネット技術WAP(無線アプリケーションプロトコル)に依存するのには限界がある。その技術は、ユーザにとって使用しづらく、速度が遅く且つ煩雑である。実際に、世界最大の移動電話グループであるVodafone Globalは、WAPがエンドユーザにとって困難であるため、最新の3G電話以外の電話へのフル音楽ダウンロードの販売を回避している。多くの他のオペレータも同様の対処法を取らざるを得なくなっている。これにより、フル音楽ダウンロードサービスの購入率は制限されており、少数の移動電話加入者のみが3Gを使用又は3Gにアクセスできる。相対的に成熟した2005年の英国の市場においては、Vodafoneの1,440万人の顧客のうち50万人未満が3Gを有しており、市場浸透率は約3%である。多くの他のオペレータの3Gの浸透率は、0であるか又は非常に限定される。
MNOは、現在の最新の3Gハンドセット上であっても可能な音楽再生体験が乏しいことについて関心を持っている。装置が最新の音楽電話として販売された場合でも、一般にそれら装置は平凡なMP3プレーヤと同様のユーザ体験を配布できない。
現在、WAPを使用するフル音楽コンテンツの取得方法が2つ支持されている:
・ユーザのハンドセットにストリームされる個人専用の無線サービスをユーザに提供するストリームサービス
・移動電話上でローカルに実行し、音楽トラック及びアルバムを移動電話から直接購入できる機能をユーザに提供するミュージックショップアプリケーション
しかし、ストリーミング無線解決策は隙間市場である。常時データ接続の要求及びユーザが聴く音楽の完全なユーザ制御の欠如は、消費者の申し込み及び人気が制限されることを意味する。また、ストリーミング解決策は、制限されるハンドセットの使用範囲及び高速(通常、3G)データ接続の要求により悪影響を受ける。そのようなサービスを実現するオペレータは、ネットワークの大きな負担に対して計画及び投資する必要がある。これは、全ての音楽トラックが再生される度に再ダウンロードされる必要があるためである。
ミュージックショップアプリケーションは、更にユーザの申し込みの関心を引くが、3G及び隙間的なSymbianのハンドセットを重視することにより制限されるハンドセットの使用範囲の悪影響を受ける。現在、そのような装置上でのユーザ体験は、トラックサービス毎に限定された支払いを請求する競合会社の製品及び高品質のDAPの音質に近づけない限定された機能性により限定される。相対的に小型の音楽カタログと組み合わされるこの限定された機能性は、現在までにそれら解決策の魅力を非常に限定してきた。
本発明は、ユーザが携帯無線コンピューティング装置上で音楽を容易に取得し、聴き且つ管理することを可能にする十分に発達した信頼性のある便利な解決策を提供する。
一実現例は、MusicStation(登録商標)と呼ばれる。MusicStationは、デジタル音楽コンテンツを携帯無線コンピューティング装置にダウンロードし且つ使用することを可能にする方法を提供する。方法は:
(a)エンドユーザの入力なしで無線装置と関連するパラメータに自動的に適応されたソフトウェアアプリケーションが無線装置上で実行するステップと;
(b)エンドユーザが無線ネットワークを使用してリモートサーバ上の音楽コンテンツを閲覧及び探索し、無線ネットワークを使用してリモートサーバから音楽コンテンツをダウンロードし、ダウンロードした音楽コンテンツを再生及び管理することをアプリケーションが可能にするステップと;
(c)加入サービスが終了していない限り、装置への種々の音楽トラックの無制限の合法的なダウンロードを可能にし且つ装置に格納されたトラックのうち任意のトラックの再生を可能にするデジタル権利管理システムをアプリケーションが含むステップとから成る。
本発明は、ユーザがデジタル音楽を取得し且つ聴く方法を実際に変形できる可能性がある。本発明は、共に動作する複数の技術を初めて組み合わせ、各部の合計より非常に優れた総合的な解決策を提供する。例えば、アプリケーションがエンドユーザの入力なしで無線コンピューティング装置と関連するパラメータに自動的に適応されるため、非常に多くの携帯無線装置にアプリケーションを自動的に提供することが実行可能になる(例えば、単純に正確な携帯無線装置の製造及び機種番号をリモートサーバに与えることにより、販売の前か又はユーザがアプリケーションをダウンロード及びインストールするのを可能にする前に)。例えば移動電話のインストールされた基盤は、数億とまではいかなくても容易に数千万に達するだろう。これは、DAPよりはるかに大きい。また、アプリケーションにより、エンドユーザは無線ネットワークを使用してリモートサーバ上の音楽コンテンツを閲覧及び探索し、無線ネットワークを使用してそのリモートサーバから音楽コンテンツをダウンロードし、そのダウンロードした音楽コンテンツを再生及び管理できる。従って、インストールされた基盤がDAP解決策に非常に勝るだけでなく、機能性は、無線ネットワークを介して新しい音楽を装置から直接探索及び取得できるため任意のDAPより優れているだろう(これは、デスクトップマシンを使用してウェブのオンラインカタログを介して音楽を取得し且つその後DAPをデスクトップマシンと同期させるより非常に自然な処理である)。最後に、アプリケーションは、加入サービスが終了していない限り、装置への種々の音楽トラックの無制限の合法的なダウンロードを可能にし且つ装置に格納されたトラックのうち任意のトラックの再生を可能にするデジタル権利管理システムを含む。これにより、ユーザは以前よりはるかに効果的に新しい音楽を調査でき、メモリコストが急速に安価になっているため平均的な装置にも数千個の音楽トラックを格納できる。頑強なDRMモデル、インストールされた大きなユーザ基盤、並びに新しい音楽の調査及び取得の容易さのために、音楽会社は入手可能な音楽のカタログ全体を作成しようとするだろう。これにより、より多くのより優れたコンテンツがより多くのユーザを引きつけ、それがより多くのコンテンツを引きつけて、前向きな反応が得られる。
MusicStationは、競合会社と比較して多くの重要な利点を有する:
・全ての音楽機能を含む包括的で理解し易いユーザ体験。
・ソフトウェアアプリケーションが略全ての音楽対応ハンドセット(機種又は製造業者に関係なく)で実行し、それらハンドセットの全てにおいて実質的に同一に見え且つ同様に動作することを保証するデバイス適応アーキテクチャ(DAA−更なる詳細は以下を参照)によって得られる他の競合会社より広範な種類のハンドセットとの互換性。
MusicStationは、移動電話の利点を最大限にする。音楽が自宅でのみ入手可能であるDAPと異なり、MusicStationのユーザは新しい音楽をどこでも発見し入手できる;
・MusicStationは、動作させるのにPC、ブロードバンド、iTunes又はクレジットカードを必要としない。
・MusicStationは、AYCE(ダウンロードし放題−すなわち無制限のダウンロード)、並びに友人を作ること及びプレイリストを共有すること等のユーザコミュニティ機能のように革新的な新しいモデルをサポートする。
MusicStationの製品
MusicStationは、非接続デジタルオーディオプレーヤ(DAP)の後継である移動電話を大量に採用することを可能にする重要な使用可能な技術となるように設計されている。成功を確実にするために、設計/開発チームは、次世代の大衆市場音楽製品を配布するために以下の重要な要求を重視してきた。
・最良のDAPに勝るユーザ体験
移動電話上での従来のプレーヤは、最良のDAPと比較すると劣っていた。MusicStationは、市場の主要なDAPと同等に完全であり且つ接続された装置の利点に対しても最適化されたインタフェースを提供する。
・接続性の利点を最大限に活用
移動電話は「略常に接続された」(AAC)装置であるため、ハンドセットを使用した音楽製品は、インターネット接続されたPCに物理的に接続されている時だけでなく、移動中にも音楽を直接購入することを可能にできる。
・PCへの非依存を保証
組み込みハンドセット製品は、ユーザがブロードバンド接続PCを有することを全く必要としない。これは、一般に移動電話のユーザがそのような技術を利用できず且つ実際にクレジットカードを利用できない市場を発展させる際に特に重要である。ユーザは、PCにアクセスできる場合、机上であっても移動中であっても音楽及びプレイリストにアクセス可能であるべきである。しかし、パーソナルコンピュータ、ブロードバンド又はクレジットカード技術に依存すべきではない。
・直接課金が可能
モバイル音楽アプリケーションは、消費者とMNOとの課金の関係に影響を与えられるべきである。コンテンツの購入に対して更に便利なワンタッチ課金方法を提供することにより、すなわち場所に関係なく、音楽の売り上げは、特に机上でウェブを使用するクレジットカードアプリケーションと比較して、携帯装置との困難な同期要求を必要とする煩雑な登録処理を使用して実際に最大限にされる。
・無線で聴くことが可能
ハンドセット上の音楽アプリケーションは、多くのモバイルハンドセットで利用可能なBluetooth機能性を使用して、音楽を再生し且つ無線ヘッドフォン、車載ステレオ及びハイファイシステム等の他のBluetooth対応装置と共有することを可能にする必要がある。
・毎日1日24時間の使用可用性の利用
移動電話は、1日24時間毎日ユーザと共に存在する可能性の高い電子装置であるため、音楽を聴いたり、購入したり又は管理するための消費者対話に対してはるかに広範な機会を与える。従って、音楽アプリケーションは、初めてハンドセット機能性を探求している時に偶然発見した加入者に対しても魅力的で且つ使用が容易なように設計されることが重要である。
・ユーザへのコミュニティ機能の提供
略常に接続される(AAC)装置として、移動電話は移動中にコミュニティ対話機能を配布でき、それは、共有されたプレイリスト及びユーザにより生成されたプレイリストチャートにおいて消費者による音楽の発見を改善するために重要である。これは、未接続のDAPに対する重要な利点である。
・偶発的なハンドセットロードマップの最大限の利用
殆どのハンドセットは、MNO又は製造業者により音楽電話として積極的に宣伝又は販売促進していない場合でもQ1 2007により音楽対応となるだろう。潜在的な収益を最大にするために、任意の音楽アプリケーションは、製造業者に関わらず2.5G又は3Gである全ての音楽対応ハンドセットに対して利用可能であるべきであり、初めてMNOが大衆市場の機会としてフルダウンロード音楽を考慮することを可能にする。
MusicStationは、それら重要な要求を中核に設計された。その結果、実際に殆どの音楽対応ハンドセットを「スーパーDAP」にすることができる。重要なことは、MusicStationがDAPの全ての性能及びユーザ体験品質を与え(音楽の再生及び管理に関して)、PCに基づく主要なオンライン音楽店の閲覧、探索、取得、プレイリスト及び有名人のプレイリスト機能の全てを提供することである。更に、MusicStationは同種のコミュニティ機能を音楽ユーザに提供し、それにより音楽発見処理、並びに個人専用のニュース及びビュー(いずれもDAP上で利用可能ではない)を改善できる。
他の重要な機能は以下を含む:
・全ての音楽の再生/プレイリストの管理/コンテンツの取得/ニュース/コミュニティ機能性を含むユーザが理解しやすい単一のインタフェース。
・音楽の再生中に利用可能な全ての機能の可用性(ニュースの取得、探索/閲覧等)。
・お気に入りのコンテンツの知的キャッシングを可能にする高度な並列ダウンロード技術。
・組込みネットワークアウェアネス(機能及びインタフェースは、利用可能なネットワーク接続性のレベルに依存して知的に適応される−3G/2.5G/0G)。
・直接課金の統合化(クレジットカード又は口座に対する要求なしで非常に便利なワンタッチ課金を可能にする)−加入サービスに対する課金インフラストラクチャは、無線ネットワークを制御するネットワークオペレータにより提供される課金インフラストラクチャの一部である。
・DRMによる業界標準の音楽ファイル保護。加入サービスが終了してもトラックが依然として再生可能であるように、DRMは音楽トラックの購入を可能にする。
MusicStationは、DAPとは異なり接続アプリケーションであるため、ダウンロードし放題(AYCE)の週毎又は日毎の加入パッケージを初めてハンドセットから直接提供できる。AYCEの加入者毎の平均的な音楽収益は、従来のPPT(トラック毎に支払う)ユーザからの収益より実質的に高いという証拠が多く存在する。現在までの殆どのAYCEの実現例は、接続された移動装置で販売されることではなく、デスクトップを使用する加入である。
デバイス適応アーキテクチャ(DAA)
現在までのモバイルアプリケーションの最大の問題の1つは、新しいハンドセットにアプリケーションを移植すること、並びに複数のハンドセット製造業者及び機種にわたり動作するアプリケーションを配布することの困難さであった。この課題を解決することは、MusicStationが対処する最も重要な技術的問題のうちの1つである。デバイス適応アーキテクチャ(DAA)はその解決策である。
実質上、DAAにより、MusicStationは競合会社より多くの移動電話に展開されることが可能になる。更にMusicStationは、各例において製造業者及びハンドセットの機種別のアプリケーションバージョンを作成することにより、数週間又は数ヶ月ではなく数時間で新しいハンドセットに移植されるのが可能になる。
DAAを利用するまで、音楽専用又はより一般化されたアプリケーションであっても、全てのモバイルアプリケーションは制限されたハンドセットの使用範囲の悪影響を受けた。典型的な妨害は以下を含む:
・ハンドセット設計/記憶容量の製造業者毎の相違
・OS及びファームウェアリリース及び関連するバグ
・画面の大きさ、画素数、色の深さ、キーパッド制御及びソフトウェアキーの相違
・物理的な大きな
・メディアファイル及び形式のサポート(例えば、オーディオ、写真、ビデオ、アニメーション)
・Java(登録商標)のバージョン及びプラットフォーム実現例の差
・ハンドセット別セキュリティモデル
・接続処理及び機能
・公開された仕様に準拠できない
・計算馬力及び他の計算資源
・メモリ
・CSD、GPRS、2G、2.5G、3G、WAP、SMS、Bluetooth、赤外線、WiFi、WiMAXのうち1つ以上を含む装置のネットワーク機能及び処理。
実質上、機能はハンドセット及び製造業者により大きく異なり、更にネットワークオペレータ及び多くのハンドセットは実現例におけるバグの悪影響を受ける可能性がある。デバイス適応アーキテクチャ(DAA)はそれら課題を解決し、製品が記録的な速さで大多数の音楽対応2.5G及び3Gハンドセットに自動的に移植されるのを可能にする。DAAは、種々の機能に関連するパラメータを取り込み、アプリケーションがエンドユーザの入力なしで特定のハンドセット/ネットワークオペレータの組合せに対して自動的に特注されるのを可能にする。DAAに関する更なる詳細は国際特許第WO2006/061595号に示され、その内容は参考として取り入れられている。
尚、MusicStationの参照プラットフォームはJavaであることが特に重要である。いくつかの競合する製品は、容易にアドレス指定可能なSymbianプラットフォームに構築されている。そのプラットフォームに対してアプリケーションを構築することは相対的に容易であるが、大衆市場の音楽の提案に対する機会を提供しない。世界で10%未満のハンドセットがSymnbianを搭載しており、それらの多くがビジネスに重点をおいたハンドセットである。Javaは、最も広範に採用されたモバイルプラットフォームであり、ハンドセットの使用範囲に非常に重要である。Javaは、略全ての媒体及び高性能なハンドセットにおいて利用可能である。Java及びDAA技術の組合せは、MusicStationが他の技術より多くの消費者に配布され、特に製造業者又は機種に関係なく略同一に動作し、略同一に見え且つ略同一に知覚することを意味する。MusicStationは、Java、Symbian、Windows(登録商標) Mobile、Linux(登録商標)及びBREWにおいて利用可能となるだろう。
他の機能は以下を含む:
・アプリケーションは、各々がアプリケーションの基本的な機能と関連付けられる複数のユーザ選択可能なタブを示すグラフィカルユーザインタフェースを提示する。
・各タブは、アプリケーションが実行している時は常に可視である。
・1つのタブは、全ての入手可能なコンテンツ及び探索機能にアクセスできるようにするホーム機能と関連付けられる。
・1つのタブは、選択された場合、現在再生中のトラックの詳細を与える。
・1つのタブは、選択された場合、コミュニティ及びニュース機能へのアクセスを可能にする。
・1つのタブは、選択された場合、聴き且つ/又はダウンロードするトラックの現在のキューを表示する。
・アプリケーションは、複数の画面が状況依存する「more」メニュー項目を示すグラフィカルユーザインタフェースを提示し、選択された場合には現在選択されている項目及び/又は現在表示されている画面に関連する更なる機能へのアクセスを可能にする。
・アプリケーションは、マルチタスク状況依存ジョイスティックを使用して制御され、ジョイスティックの特定の機能はその上の画面上のアイコンにより示される。ジョイスティックの操作は、キーパッドの数字キーを代用して実現される。例えば、数字キー5は上、0は下、7は左且つ9は右である。
・アプリケーションは、「Get New Artist(新しいアーティストを取得する)」と等価な機能がメニューにおいて「Artist(アーティスト)」と同一レベルにある状況に適した取得機能を提供する。Get New Track(新しいトラック(曲)を取得する)と等価な機能は、メニューにおいてアーティストのトラックのメニューリストと同一レベルにある。
・アプリケーションは、無線接続された他の携帯無線装置が時間的に同期して同一の音楽トラックを再生するように、1つの装置がマスタ再生装置としての役割を果たすことを可能にする。無線接続は、Bluetooth等の近距離無線接続でもよい。
・アプリケーションは、現在再生中のトラックを示す再生画面に常に切り替える専用の「再生」数字キーを提供する。
・アプリケーションは可変のタイムアウトを提供し、種々の画面は種々のタイムアウトを有する。例えば、7秒後に戻る標準のナビゲーション画面と比較して、探索画面に戻ることはないが、ニュース画面には20秒後に戻る。
・アプリケーションは、エンドユーザの再生の習慣に従ってフィルタリングされた対象のニュースを表示する。
・アプリケーションは追跡し、詳細なエンドユーザリスニングデータをリモートサーバに戻す。データは、トラックが聴かれた長さ、スキップされたトラック及びスキップされた時期を含む。データは、装置上にローカルにキャッシュされ、いずれにしても行なわれる通信を介してピギーバックとしてサーバに送出される。ユーザが設定時間を越えてダウンロードしていない場合、装置は、いずれにしても行なわれると推測される通信を待たずにデータを先に送出し返す。このデータは、装置に表示する音楽トラック推奨を提供する音楽推奨エンジンを充実させるために使用される。
・アプリケーションは、共有プレイリストを表示する。
・アプリケーションは、ユーザにより生成されたプレイリストチャートを表示する。
・アプリケーションの全ての機能は、音楽再生中に利用可能である。
・再生中に利用可能な機能は、ニュースの取得、並びに音楽トラックの探索、閲覧及び取得を含む。
別の面は、デジタル音楽コンテンツをダウンロードし且つ使用することを可能にする携帯無線コンピューティング装置である。装置は、
(a)無線装置上で実行し、エンドユーザの入力なしで無線装置と関連するパラメータに自動的に適応されたソフトウェアアプリケーションを具備し、
(b)アプリケーションは、エンドユーザが無線ネットワークを使用してリモートサーバ上の音楽コンテンツを閲覧及び探索し、無線ネットワークを使用してリモートサーバから音楽コンテンツをダウンロードし且つダウンロードした音楽コンテンツを再生及び管理することを可能にし;
(c)アプリケーションは、加入サービスが終了していない限り、装置への種々の音楽トラックの無制限の合法的なダウンロードを可能にし且つ装置に格納されたトラックのうち任意のトラックの再生を可能にするデジタル権利管理システムを含む。
第3の面は、デジタル音楽コンテンツを携帯無線コンピューティング装置にダウンロードし且つ使用することを可能にするソフトウェアアプリケーションであり、
(a)無線装置上で実行し、エンドユーザの入力なしで無線装置と関連するパラメータに自動的に適応されたソフトウェアアプリケーションである。
(b)アプリケーションは、エンドユーザが無線ネットワークを使用してリモートサーバ上の音楽コンテンツを閲覧及び探索し、無線ネットワークを使用してリモートサーバから音楽コンテンツをダウンロードし且つダウンロードした音楽コンテンツを再生及び管理することを可能にし;
(c)アプリケーションは、加入サービスが終了していない限り、装置への種々の音楽トラックの無制限の合法的なダウンロードを可能にし且つ装置に格納されたトラックのうち任意のトラックの再生を可能にするデジタル権利管理システムを含む。
最後の面は、第3の面により規定されたソフトウェアアプリケーションを使用してダウンロードされた音楽トラックである。
定義
移動電話:物理的なワイヤ又は他の物理的な接続、あるいはケーブルの形式ではなく大気を介する無線技術により電話網に接続される電話の種類。
移動電話、電話、モバイル、モバイルハンドセット又はハンドセット:移動電話の種類。
モバイルネットワーク:移動電話が動作でき且つ電話をかけたり、あるいはネットワーク常駐データ又はサービスにアクセスするような機能を提供できるように、移動電話に対して無線接続性を提供するネットワーク。
モバイルネットワークオペレータ(MNO):モバイルネットワーク及びそのネットワーク上で移動電話を使用する加入者又はユーザを動作させる会社又は組織。
グローバルモバイルネットワーク又は移動電話網:世界のモバイルネットワークオペレータにより動作される全てのモバイルネットワークの統合。
無線ネットワーク:クライアントコンピューティング装置に無線接続性を提供するネットワーク。そのようなネットワークは、WiFi、WiMAX及びグローバルモバイルネットワークを含む。
サーバ:接続を行ない且つそこからサービスの要求を行なう1つ以上のクライアントコンピューティング装置に対する情報供給、データベース探索及びトランザクション等のネットワーク化アプリケーションサービス、特性及び機能を提供するために存在するネットワーク化コンピューティング装置。一般に、各サーバに対して多くのクライアントが存在し、通常、各クライアントはサーバよりサイズが小さく且つ計算能力も低い。
サービス:通常、サーバにより1つ以上のネットワーク接続クライアントコンピューティング装置に提供されるネットワーク化計算サービス、特性及び機能。サービスは、情報供給、データベース探索及びトランザクションを含む。そのようなサービスは、ネットワークの中央に展開することは構造的に実現可能であり、通常、クライアントの大きさ及び電力のためにクライアントコンピュータ上に展開することは実現不可能である。
クライアント:ネットワーク中心のアプリケーションの特性及び機能をアプリケーションのユーザ又は消費者に配布するネットワークに接続されるコンピューティング装置。通常、クライアントはサーバに接続し且つサービスを要求する。
ネットワークアプリケーション:ネットワーク中心のアプリケーション又はサービスの種類。ネットワークアプリケーションは、サーバ上のソフトウェアにより提供され且つネットワークを介してクライアントによりアクセスされるサービスによりサポート及び補完されるエンドユーザ又は消費者に対するアプリケーションのインタフェースの機能を実行するクライアント上で実行するソフトウェアの組合せにより配布される。
無線コンピューティング装置:無線ネットワークを介してネットワークに接続するクライアントの種類。そのような装置は、移動電話、パーソナルデジタルアシスタント(PDA)、ゲームコンソール(例えば、SonyのPSP)又は他の無線ネットワーク接続クライアントコンピューティング装置を含む。無線コンピューティング装置の種類は、その製造業者、型、バージョン、オペレーティングシステム、ファームウェアバージョンにより更に規定される。
無線装置又は無線クライアント:無線コンピューティング装置の種類。
ソフトウェアアプリケーション:無線コンピューティング装置に無線配布されるか又はプリインストールされるクライアントソフトウェアアプリケーション。
ソフトウェアコンポーネント:無線コンピューティング装置に対して及びデバイス適応アーキテクチャ(DAA)ソフトウェアライブラリの一部に対してカスタム化されるソフトウェアアプリケーションのコンポーネントを形成するソフトウェアの個々のユニット。
モバイルコンテンツ:移動電話上で使用、購入、再生、閲覧又はレンダリングされる電子製品を表すデジタルファイル及びデータ。例には、呼出音/着メロ、壁紙/写真、スクリーンセーバ/アニメーション、リアルトーン/トュルートーン、フル音楽ダウンロード、ビデオ、SMS&MMSアラート、モバイルゲーム、並びに多くの他の現在の又は今後登場する移動電話が購入可能なエンターテイメント及び情報製品が含まれる。
メタデータ:無線コンピューティング装置、無線ネットワーク、ソフトウェアコンポーネント、ネットワークアプリケーション又はモバイルコンテンツの属性又は挙動を記述する潜在的に階層関係にあるデータの個々の項目又はデータの集合。
Schedulerクラスを示す図である。 クライアントがタスクをスケジュールすることを示す図である。 UIスレッドがキューにタスクを追加することを示す図である。 バイナリヒープの一例を示す図である。 配列に格納されたバイナリヒープを示す図である。 タスクの状態を示す状態図である。 データオブジェクトの各種類に対するキャッシュの上限及び下限を示す表である。 例外を設定するために使用されるデータオブジェクトを示す図である。 装置別の例外を示す図である。 画面キャプチャ−Get new...オプションを示す図である。 個人専用のメニュー項目及び含まれる推薦を示す表である。 画面キャプチャ−項目の評価を示す図である。 画面キャプチャ−Newsを示す図である。 画面キャプチャ−Buzzメンバの推薦を示す図である。 Cool Members及びBuzz Playlistsの個人専用のメニュー項目及び含まれる推薦を示す表である。 トラック間の相関関係のマトリクスを示す図である。 マトリクスの重み付けを示す図である。 0〜1の正規化された重みの集合を示す図である。 評価及び顧客の再生に基づいて、どの程度密接に関連付けられたアーティストの対がシステム中にあるかを表す相関関係のマトリクスである関連アーティストマトリクスを示す図である。 評価及び顧客の再生に基づいて、どの程度密接に関連付けられた顧客の対がシステム中にあるかを表す相関関係のマトリクスである関連顧客マトリクスを示す図である。 関係マトリクスのプロパティ、推薦への入力及び結果として得られる機構の表の一部を示す図である。 関係マトリクスのプロパティ、推薦への入力及び結果として得られる機構の表の一部を示す図である。 関係マトリクスのプロパティ、推薦への入力及び結果として得られる機構の表の一部を示す図である。 関係マトリクスのプロパティ、推薦への入力及び結果として得られる機構の表の一部を示す図である。 関係マトリクスのプロパティ、推薦への入力及び結果として得られる機構の表の一部を示す図である。 黙示評価値の計算を示す図である。 メッセージのプロパティを示す図である。 画像のプロパティを示す図である。 クライアントバージョンのプロパティを示す図である。 翻訳されたメッセージを示す図である。 装置メッセージのプロパティを示す図である。 装置メッセージ/ヘルプメッセージのプロパティを示す図である。 サービスメッセージを示す図である。 サービス及び装置別メッセージを示す図である。 クライアントビルドメッセージを示す図である。 画面キャプチャ−Roaming optionsを示す図である。 MusicStationのローミング挙動の構成を示す表である。 画面キャプチャ−Roaming Warnings(ローミング警告)を示す図である。 画面キャプチャ−Roaming Warnings−Ask prompt(プロンプトの要求)を示す図である。 画面キャプチャ−Roaming Warnings−Ask promptを示す図である。 画面キャプチャ−Onに設定されたRoaming Optionsを示す図である。 画面キャプチャ−Offに設定されたRoaming Optionsを示す図である。 タイトル、コンテンツ及び応答の結果を示す表である。 クライアントとサーバとの間の要求/応答の流れを示す図である。 サーバがクライアントに要求を送出することを示す図である。 [major].[minor].[micro]、可変名及びプラットフォーム識別子の詳細を示す表である。 エラーデータの詳細を示す表である。 エラーデータをサーバに送出するクライアントの一例を示す図である。 エラーデータ及び写真をサーバに送出するクライアントの一例を示す図である。 単一のパラメータを含むJpegの写真を送出するサーバの一例を示す図である。 状態コードを示す表である。 サーバがnews1.dataファイルを送出することを示す図である。 サーバがnews2.dataファイル及びnews3.dataファイルを送出することを示す図である。 送出されたデータの範囲を示すサーバ応答を示す図である。 クライアントが要求において対応するGet行を送出しなかったSent行をサーバが送出することを示す図である。 Releaseの集合を含むArtistデータオブジェクトを示す図である。また、ReleaseはTrackの集合を含む。 別の方法が自身のファイルにオブジェクトの各集合を格納することであることを示す図である。本発明の「My Artists」の例において、アーティストのリストはファイル(userartists.data)に格納されるが、各アーティストのアルバムのリストは格納されない。アルバムのリストはアーティスト毎に1つのファイルである別個のアーティストファイル(例えば、artist.123.data)に格納される。各アルバムは、トラックを含む自身のファイル(release.4567.data)に格納される。 オブジェクトグループがデータを複製する必要なく同一のデータオブジェクトを使用できる方法を示す図である。 「My artists」データファイルにアーティスト名及びIDを格納できることを示す図である。 クライアントがオブジェクトを設定し且つ変更された全てのオブジェクトを取得することを示す図である。 クライアントがオブジェクトを要求し且つ変更された全てのオブジェクトを取得することを示す図である。 クライアントがオフラインモードで変更されたオブジェクトを送出することを示す図である。 object_change_logを示す図である。 customer_objectを示す図である。 customer_object_change_logを示す図である。 ChangeLogRecordオブジェクトを示す図である。 object_change_logテーブルを示す図である。 customer_object_change_logテーブルを示す図である。 クライアントログ毎にLogRecordを含むLoggerを示す図である。 customer_loggerテーブルを示す図である。 DRMの概要を示す図である。 Service Registration Request(サービス登録要求)のパラメータを示す図である。 MNO追加メタデータを示す図である。 Service Registration Response(サービス登録応答)のパラメータを示す図である。 MusiStation RI Registration Request(MusicStation RI登録要求)のパラメータを示す図である。 RI Registration Response(RI登録応答)のパラメータを示す図である。 MusicStation RO Acquisition Request(MusicStation RO取得要求)のパラメータを示す図である。 MusicStation RO Acquisition Response(MusicStation RO取得応答)のパラメータを示す図である。 Content Acquisition Request(コンテンツ取得要求)のパラメータを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 MusicStationの実現例の画面ショットを示す図である。 システムの概要を示す図である。
アーキテクチャ
1.1.マルチ・スレッディング
プレーヤの重要な面は、同時に複数のスレッドを実行することである。主なスレッドは3つ存在する:
・ユーザインタフェース(UI)スレッド
・アニメーション・スレッド
・スケジューラ・スレッド
実際にデータをダウンロードし且つそれをバッファにロードするHTTP接続スレッドが更に存在し、スケジューラスレッドは接続によりブロックされないようにそのデータをバッファから読み出す。
通常、UIスレッドは、ローカルのファイルシステムから又はHTTP接続を介してリモートから、新しい画面を表示し、画面の背後でデータをロードするためにタスクをスケジュールすることにより、その新しい画面へのユーザナビゲーションに迅速に応答する。
ロードタスクは、タスクキューに追加される。キューは、タスクの優先度、タスクの種類及びスケジュールされた実行時間により順序付けられる。殆どのタスクは、迅速に実行されるようにスケジュールされる。その場合、実行時間は、タスクがキューに追加された時間に設定される。タスクによっては、少しの遅延を伴ってスケジュールされる。例えばトラックの再生は、プレイリスト上のトラックの迅速なスキップを可能にするために1秒の遅延を伴ってスケジュールされる。
新しいタスクがタスクキューに追加されると、その優先度を現在実行中のタスク(存在する場合)と比較する。その優先度が現在のタスクより高い場合、現在のタスクの取消しを試みる。完了するのに過度な時間を要するタスクのみが取り消される。これは、他の優先度の高いタスクが待っている間にタスクが実行スレッドを独占することを回避するためである。過度な時間とは数秒を超える時間である。取り消されたタスクは再スケジュールされる。実行時間は、タスクが最初にキューに追加された時間に設定される。
1.1.1.Scheduler
Schedulerは、バックグラウンドスレッドで迅速に実行又は後で実行するようにタスクをスケジュールするためのスレッドに対する機能である。タスクは、1度実行されるようにスケジュールされてもよく、あるいは定期的な間隔で繰り返し実行されるされるようにスケジュールされてもよい。
Schedulerオブジェクトは、スケジューラの全てのタスクを順番に実行するために使用される単一のバックグラウンドスレッドを有する。スケジューラタスクが完了するのに過度な時間を要する場合、タスクはタイマのタスク実行スレッドを「独占」する。その結果、後続するタスクの実行を遅延させる可能性があり、タスクは「蓄積」するだろう。実行するのに数秒を超える時間を要する可能性のあるタスクは、interrupt()を実行する必要がある。
interrupt()メソッドは、より高い優先度のタスクがタスクキューに追加された時に呼び出され且つタスクを追加するスレッドにより現在実行中のタスク上で呼び出される。スケジューラスレッドにより呼び出されるrun()メソッドは、最も早い機会にInterruptedExceptionをスローする必要がある。Schedulerはその例外をキャッチし、割込まれたタスクの優先度及びそれがキューに最初に追加された時間に基づいてその割込まれたタスクの実行を再スケジュールする。新しく追加されたタスクは受信され且つ実行される。
このクラスはスレッドセーフである。すなわち、複数のスレッドは外部同期を必要とせずに単一のSchedulerオブジェクトを共有できる。Schedulerクラスを示す図1及びクライアントがタスクをスケジュールすることを示す図2を参照。
1.1.1.1.TaskQueue
このクラスは、priority、taskType及びexecutionTimeにより順序付けされるTaskの優先度キューであるスケジューラのタスクキューを表す。
タスクの優先度は、CLDCスレッドの優先度に基づく。そのため、3つの優先度が規定される:
・MAX_PRIORITYは、タスクが有することのできる最高優先度である。
・NORM_PRIORITYは、タスクに割り当てられるデフォルトの優先度である。
・MIN_PRIORITYは、タスクが有することのできる最低優先度である。
同一のpriorityを有するタスクは、taskTypeにより更に分割される。例えばこれにより、画面に対するデータを画像の前にスケジュールできる。これは、種々の優先度を使用することにより達成されるが、種類を変更せずにタスク(例えば、ユーザが異なる画面にナビゲートする)の優先度を下げたいと考える場合が多い。priority及びtaskTypeの概念を分離することにより、設計はより融通性を有し、理解し易くなる。まず、重要さにより順序付けられる3つの種類は以下の通りである:
・DATAは、オブジェクトデータファイルを要求するタスクに対して使用される。
・AUDIOは、オーディオファイルを要求するタスクに対して使用される。
・IMAGEは、画像ファイルを要求するタスクに対して使用される。
executionTimeは、同一のpriority及びtaskTypeを有するタスクがキューに追加された順番で実行されることを保証する。UIスレッドがタスクをキューに追加することを示す図3を参照。
キューは内部でバイナリヒープとして格納されるため、タスクをスケジュールするためのコストはlog nである。ここで、nは同時にスケジュールされるタスクの数である。スケジュールされた大量(数千)のタスクは問題にならない。次にスケジュールされたタスクは常にルートにあるため、それを検索するのにコストはかからない。バイナリヒープの一例を示す図4を参照。
常に要素をヒープの末尾に追加し、ヒープ中のその場所を見つけるためにfixUp()メソッドを呼び出す。fixUp()メソッドは、追加された要素をその親と比較し、適切な順番でない場合はそれらを入れ替える。
ヒープを格納するために配列が使用され、ヒープは常に完全である(木には隙間はない)ため、コンパクトに格納される。ポインタに対して空間は必要ない。その代わり添え字i毎に、要素a[i]は2つの子a[2i+1]及びa[2i+2]の親である。配列に格納されたバイナリヒープを示す図5を参照。
1.1.1.2.タスク
タスクは、1度実行するように又は繰り返して実行するようにスケジュールされる。タスクは、3つの状態のうちの1つの状態となる:
・SCHEDULED:このタスクは、実行するようにスケジュールされる。非繰り返しのタスクである場合、まだ実行されていない。
・EXECUTED:この非繰り返しのタスクは、既に実行されており(又は現在実行中であり)、キャンセルされていない。
・CANELLED:このタスクはキャンセルされた(Task.cancelの呼び出しにより)。
タスクの状態図を示す図6を参照。
MusicStationのクライアントは、ローカルファイルシステムから又はHTTP接続を介してリモートから単一のSchedulerを使用して全てのファイル接続をスケジュールする。全てのファイル接続が連続して処理されるように、スケジューラは単一のスレッドを使用する。タスクは、EXECUTED状態である場合にオープン接続のみを有することを保証する必要がある。1つのタスクのみがEXECUTED状態であるため、接続を1つのみ開くことを保証できる。更にinterrupt()メソッドをサポートする任意のタスクは、書き込みをしていたファイルに関する状態情報を格納せずに再開できる必要がある。これは、タスクが割り込まれたことにより別のタスクがファイルを変更した可能性があるため重要である。
1.1.2.ユースケース
1.1.2.1.ユーザがPlaylistsを開く
ユーザはアプリケーションを開き、迅速にPlaylistsメニューを開く。Playlistsメニューは、PlaylistSetが2つのフィルタ「My Private Playlists」及び「My Public Playlists」を使用してフィルタリングした「My Playlists」を表示する。
画面が表示されると、LoadTaskはTaskQueueに追加され、「My Playlists」をロードする。LoadTask.taskTypeはDATAであり、LoadTask.priorityはMAX_PRIORITYである。
LoadTaskがTaskQueueに追加されると、キューで待っているスケジューラスレッドは通知される。スレッドは、キューからタスクを取得し、Task.run()メソッドを呼び出すことによりそのタスクを実行する。タスクは、「My Playlists」オブジェクトデータファイルがファイルシステム上に存在するかを確認する。この場合、存在しないため、HttpConnectionは開かれ、ファイルはストリームにわたり読み出される。ファイルはバッファ(65k)に読み込まれ、バッファがいっぱいになる度に、メモリカードに書き込まれ、データオブジェクトの一部又は全てをポピュレートするために使用される(尚、バッファより大きいデータファイルは殆どない)。
PlaylistSetデータオブジェクトはPlaylistsにポピュレートされるため、それらPlaylistsは画像参照を含む。各画像参照が読み出されるため、ImageLoadTaskは作成され且つTaskQueueに追加される。ImageLoadTask.taskTypeはIMAGEであり、ImageLoadTask.priorityはMAX_PRIORITYである。
「My Playlists」がロードを終了すると、スケジューラはキューから第1のImageLoadTaskを取得する。画像はローカルファイルシステム上に存在しないため、HTTPを介してロードされる。これは、全ての画像がロードされるまで継続する。
1.1.2.2.ユーザがPlaylistsを開き、New Playlistsを迅速に選択する
ユーザはアプリケーションを開き、Playlistsメニューを開く。「My Playlists」がロードされる前に、ユーザは「Get New Playlists」を選択する。
上述のように、ユーザがPlaylistsを開くと、LoadTaskは迅速にTaskQueueに追加され、「My Playlists」をロードする。LoadTask.taskTypeはDATAであり、LoadTask.priorityはMAX_PRIORITYである。
LoadTaskが終了する前に、ユーザは「Get New Playlists」を選択する。これは、画面を変更しているため、TaskQueue.changePriority()を迅速に呼び出し、全てのMAX_PRIORITYタスクをNORM_PRIORITYに格下げする。前の画面の任意の未処理のタスクは、新しい画面のタスクより低い優先度を有する必要がある。
LoadTaskは、TaskQueueに追加され、「New Playlists」をロードする。LoadTask.taskTypeはDATAであり、LoadTask.priorityはMAX_PRIORITYである。新しいタスクを追加することにより、「My Playlists」LoadTask上でinterrupt()が呼び出される。一般にデータオブジェクトが小さい(4k未満)ため、割り込みは無視される。しかし、「My Playlists」LoadTaskがNORM_PRIORITYに下げられた優先度を有するため、作成する任意のageLoadTasksはNORM_PRIORITYで作成される。
「My Playlists」LoadTaskがロードを終了すると、スケジューラは「New Playlists」LoadTaskをキューから取得し、それを実行する。「New Playlists」がロードされると、「My Playlists」画面の画像がバックグラウンドにロードされる。
1.1.2.3.ユーザがPlaylistを開始する
ユーザが「My Playlists」からPlaylistを選択し、Playオプションを選択する。
そのPlaylist中の全てのTrackは再生キューに追加される。StartTaskは第1のトラックのTaskQueueに追加される。StartTask.taskTypeはAUDIOであり、StartTask.priorityはMAX_PRIORITYである。その後、Track毎にFetchTaskをTaskQueueに追加する。FetchTask.taskTypeはAUDIOであり、FetchTask.priorityはMIN_PRIORITYである。尚、FetchTaskは第1のトラックを含むTrack毎に追加される。これは、タスクが終了する前にユーザがNextを選択することにより、StartTaskが取り消されるからである。FetchTaskは、ファイルが存在し、HttpConnectionを行なう前に完全にダウンロードされたかをまず確認する。
StartTaskが終了する(且つトラックが再生を開始する)と、PrefetchTaskは第2のトラックに対して追加される。PrefetchTask.taskTypeはAUDIOであり、PrefetchTask.priorityはMAX_PRIORITYである。接続率に依存して、第2のトラックは、第1のトラックが終了する前に先読みされるべきである。その場合、第1のFetchTask及び第2のFetchTaskは廃棄され(ファイルは既に存在する)、第3のトラックのFetchTaskはロードを開始する。
1.1.2.4.ユーザがPlaylistを開始し、Inboxを開く
ユーザは「My playlists」からPlaylistを選択し、Playオプションを選択する。第1のトラックのダウンロード中に、ユーザはInboxタブを開く。
上述のように、StartTaskは第1のトラックに対して追加され、FetchTasksはトラック毎に追加される。ユーザがInboxを開くと、LoadTaskは「Inbox」StorySetに対して作成される。LoadTask.taskTypeはDATAであり、LoadTask.priorityはMAX_PRIORITYである。
StartTaskの優先度は、MAX_PRIORITYからNORM_PRIORITYに変更され、「Inbox」LoadTaskはTaskQueueに追加される。interrupt()メソッドは、次にread()が戻る時(65kバッファがいっぱいになった時)にStartTask.run()メソッドにInterruptedExceptionをスローさせるStartTask上で呼び出される。スケジューラはInterruptedExceptionをキャッチし、StartTaskは「Inbox」LoadTask後に実行するように再スケジュールされる。
「Inbox」LoadTaskは実行され、記事毎にImageLoadTasksを作成する。それらは、MAX_PRIORITYで作成され、StartTaskが再開される前に全て実行される。画像がロードされると、StartTaskは、まずファイルが存在するか及び既に読み出された量を確認することにより再開する。タスクはオーディオファイルの残りの部分を要求する。ファイルがダウンロードされると、トラックは再生し、PrefetchTaskは次のトラックに対して追加される。
1.1.3.バックグラウンドダウンロード
1.1.4.動的プレイリスト管理
1.2.高度なメモリ管理
MusicStationは、各ハンドセット及び/又はメモリカード上で利用可能なメモリを高度に管理する。
・オブジェクトのダウンロードの前に、MusicStationはオブジェクトに対して利用可能なメモリが十分あることを確認する。
・十分なメモリ空間がない場合、MusicStationはオブジェクトを削除する前に一連のチェックを実行する。
・MusicStationは、最後に変更されたのが最も古いデータを含むオブジェクトを削除し、削除されるオブジェクトが頻繁に使用されてないファイルか又は全く使用されていないファイルであることを確認する。
1.2.1.ダウンロード可能なオブジェクト
MusicStation内には3種類のダウンロード可能なオブジェクトが存在する。それらは以下を含む:
・データ−メニュー項目、チャート、ニュース記事内のテキスト等の更新が必要な任意のデータ
・画像−MusicStation内の任意の画像。これらには、アーティスト及びアルバムプロファイル上の画像、並びに新しい記事に関連する画像が含まれる
・オーディオ−オーディオファイル
キャッシュ
Optionsメニュー上のMax memory card useオプションを使用すると、ユーザは、MusicStationが格納に使用するメモリカードの最大のパーセント値を規定できる。この設定により、MusicStationに対して割り当てられたメモリが判定される。割り当てられたメモリは、データオブジェクトの種類毎のキャッシュに分割される。
キャッシュは、ダウンロード可能なオブジェクト毎に存在する。各キャッシュは上限及び下限を有する:
・上限は、キャッシュが利用できる最大メモリ容量である。これは、ユーザが割り当てられたメモリを超えないことを保証するために存在する。
・下限は、キャッシュが利用できる最小メモリ容量である。下限は、メモリが種々のデータオブジェクト間で均一に分配されることを保証するために存在する。
上限及び下限は、割り当てられたメモリのパーセント値で規定される。データオブジェクトの種類毎のキャッシュの上限及び下限は、図7に示すように規定されている。
1.2.2.オブジェクトのダウンロード
オブジェクトがダウンロードされる前に、MusicStationは一連のチェックを実行して、ファイルをダウンロードすることにより下限及び上限に違反することがないことを確認する。MusicStatonは、最後に使用された順にソートされるオブジェクトの各種類のリストを維持する。最も最近使用されたオブジェクトはリストの最上部にあり、最後に使用された日付が最も古いデータを含むオブジェクトはリストの最下部にある。
オブジェクトのダウンロードがオブジェクトのキャッシュの上限を超える場合、以下の処理が行なわれる:
・DELETE_WITHOUT_CHECK−MusicStationは「最後に使用された」日付が最も古いデータを有する同一の種類のデータオブジェクトを削除する。
オブジェクトをダウンロードするのに利用可能なメモリがない場合、以下の処理が行なわれる:
・DELETE_WITH_CHECK−DELETE_WITH_CHECKは、「最後に使用された」日付が最も古いデータを有する同一の種類のデータオブジェクトの位置を特定し、そのオブジェクトの削除を試行する。下限を下回ってキャッシュを使用しない場合、削除を開始する。
削除により下限を下回ってキャッシュを使用する場合、DELETE_WITH_CHECKは「最後に使用された」日付が最も古いデータを有するオーディオオブジェクトの位置を特定し、そのオーディオオブジェクトを削除する。
DELETE_WITH_CHECKがオーディオオブジェクトを削除できない場合、ステップ1に進む。「最後に使用された」日付が最も古いデータを有する同一の種類のデータオブジェクトの位置を特定し、そのオブジェクトを削除する。
1.3.装置別媒体配布
各コンテンツは、コンテナ、形式、ビットレート及びサンプルレート(例えば、m4a、acc+、48kbps、44.1kHz)で「タグ付け」される。コンテンツの再生は、全ての種類のコンテナ、形式、ビットレート、サンプルレート及びmime形式に符号化される基本コンテンツの1つ(ピンクノイズ)を使用して装置上でテストされる。それらテストの結果は、テストクライアントを介してサーバに送出されて格納される。各コンテナ、形式、ビットレート、サンプルレート及びmime形式は、サーバに格納された他のものより好ましい。クライアントが追加のコンテンツを要求すると、サーバは、再生されるコンテナ、形式、ビットレート、サンプルレート及びmime形式の種類に符号化されるそのコンテンツへのリンクのリストを返す。これは、再生されたコンテンツの「タグ」を追加のコンテンツの利用可能な「タグ」とマッチングすることにより行なわれる。このリストは、好みにより順序付けられる。最も好ましい符号化で符号化されるコンテンツへのリンク。オーディオ再生品質テストは、このオーディオ選択項目に対して実行され、許容される品質であることを確認する。許容される品質でない場合、2番目に好ましいものが検査され、リストを下がっていく。オーディオ品質テストは、オーディオソフトウェアを使用して、電話のヘッドフォンソケットの出力を解析する。
2.ユーザ体験機能
2.1.クライアント例外処理
顧客がアプリケーションを使用している間、MusicStationのクライアントは、バックグラウンドで定期的にファイルをダウンロードし且つ更新している。エラーが発生した場合、実行されているタスク及びスローされたエラーに依存して、再試行したいか、ユーザに通知するか又は何もしない。本明細書において、エラーが発生した場合に行なう動作を決定する方法を説明する。
2.1.1.Exception Listener
MusicStationのクライアントを制御する主なスレッドは3つ存在する。UIスレッドは全てのキー押下を処理し、ペイントスレッドは全ての画面の再描画を処理し、タスクスレッドはデータのロードを処理する。例外は、それらスレッドのうち任意のスレッドにおいてスローされるが、ExceptionListener exceptionThrown()メソッドに常に渡される。
ExceptionListenerは、以下に基づいて例外の処理方法を決定する:
スローされた例外
例外の原因となった事象
事象の優先度
例外のスーパークラス
それらパラメータは、この例外に対するExceptionConfigをルックアップするのに使用される。ExceptionConfigは、例外の処理方法を決定するのに必要な全ての情報を含む。
2.1.2.Exception Config
ExceptionConfigは、例外の原因となった事象を自動的に再試行するか又はエラーメッセージをユーザに示すかを決定するのに使用される。
以下のオブジェクトは、例外を設定するのに使用される:
ExceptionConfig:この例外に対するデフォルトの挙動を含む
ExceptionEvent:特定の事象及び優先度に対するデフォルトの挙動を無効にする
ExceptionLang:装置によりサポートされる各言語のエラーメッセージを含む
例外を設定するために使用されるデータオブジェクトを示す図8を参照。
タスクスレッドで発生する例外のみが再試行を行なう。以下の属性は、タスクを再試行するか否か及び再試行の方法を決定するのに使用される:
firstRetryInterval:最初に要求を迅速に再試行したい
firstRetryCount:再試行の回数又は再試行しない場合は0
secondRetryInterval:再試行の間隔をあけてより長い期間をおきたい
secondRetryCount:再試行の回数又は再試行しない場合は0
allowSessionRetry:サーバエラーがあるか又はファイルが見つからなかった場合、このセッション間にサーバへの同一要求を許可したくない
deleteLocalFile:ファイルが破損した場合、ローカルファイルを削除してサーバからのファイルのロードを再試行したい。
任意の例外がエラーメッセージをユーザに表示できる。以下の属性は、ユーザに表示するか否か及びユーザへの表示方法を決定するのに使用される。
showAlert:真である場合、1つ以上のオプションと共にエラーメッセージをユーザに表示する
continueOption:前の画面に戻る
retryOption:タスクを再試行する
upgradeOption:新しいバージョンのアプリケーションをインストールする
closeOption:アプリケーションを閉じる
openBrowserOption:モバイルのWAPブラウザで要求を再試行する
exceptionLangs:各サポート言語のエラーメッセージ
いかなる例外の場合も、これら値を特定の事象に対して無効にでき、あるいは例外のスーパークラスに対して定義された値にフォールバックできる。
2.1.3.装置別例外
装置の中には、予想される例外をスローしない装置もある。例えば、Nokia N70は、より特定的なConnectionNotFoundExceptionではなく、サーバが応答しない場合にメッセージ「-34」と共にIOExceptionをスローする。DeviceExceptionConfigオブジェクトは、装置別例外と予想される例外とのマッピングを指定することを可能にする。
以下のフィールドは、装置別例外を予想される例外にマップする:
exceptionClassName:装置によりスローされる例外
exceptionString:Exception.toString()メソッドの結果
exceptionId:これがマップする周知の例外
装置別例外を示す図9を参照。
2.1.4.データベースの必要条件
client_build
event_type_set_idFKnumber(10) not NULL
exception_set_idFKnumber(10) not NULL
事象及び例外の集合はビルド時に作成され、指標はクライアントとサーバとの間で送出される事象及び例外をマップするために実行時に使用される。
event_type
priorityvarchar(12) DEFAULT NORMAL, in (MIN, NORMAL, MAX)
優先度は、クライアントからサーバに最初に送出される事象を判定するために使用される。優先度及び重大さレベルの双方が、サーバによりクライアント上で更新される。
event_type_set
idPKnumber(10)
automaticnumber(1) not NULL, default 0
countnumber(12) not NULL, default 0
guidvarchar(32) not NULL
namevarchar(96) not NULL
data_classification
created
inserted
modified
クライアントビルドに対して作成された事象の集合。この集合は、クライアントにより送出された事象をデータベースの事象の種類にマップするために実行時に使用される。
event_type_set_item
event_type_set_idPKnumber(10) not NULL
event_type_idPKnumber(10) not NULL
event_type_namevarchar(96) not NULL
event_type_indexnumber(10) not NULL, UNIQUE INDEX
data_classification
created
inserted
modified
指標は、クライアント事象とサーバ上の事象の種類との間のマッピングである。指標は、EventTypeデータオブジェクトにおいて定数として定義される。クライアントコードにおける事象に対する全ての参照は、この定数を使用する。
exception_set
idPKnumber(10)
automaticnumber(1) not NULL, DEFAULT 0
countnumber(12) not NULL, DEFAULT 0
guidvarchar(32) not NULL
namevarchar(96) not NULL
data_classification
created
inserted
modified
クライアントビルドに対して作成された例外の集合。この集合は、クライアントにより送出された例外をデータベースの例外にマップするために実行時に使用される。
exception_set_item
exception_set_id PKnumber(10) not NULL
exception_idPKnumber(10) not NULL
exception_namevarchar(96) not NULL
exception_indexnumber(10) not NULL, UNIQUE INDEX
data_classification
created
inserted
modified
指標は、クライアントの例外とサーバ上の例外とのマッピングである。指標は、ExceptionConfigデータオブジェクトの定数として定義される。クライアントコードにおける事象に対する全ての参照は、この定数を使用する。
exception
idPKnumber(10) not NULL
guidvarchar(32) not NULL
namevarchar(96) not NULL
event_type_idFKnumber(10) not NULL
class_namevarchar(128) not NULL
superclass_namevarchar(128)
first_retry_intervalnumber(10)
first_retry_countnumber(10)
second_retry_intervalnumber(10)
second_retry_countnumber(10)
allow_session_retrynumber(1)
delete_local_filenumber(1)
show_alertnumber(1)
continue_optionnumber(1)
retry_optionnumber(1)
upgrade_optionnumber(1)
close_optionnumber(1)
open_browser_optionnumber(1)
message_key_idFKnumber(1)
descriptionvarchar(256)
commentsvarchar(256)
data_classification
created
inserted
modified
クライアント上でスローされた例外を処理する方法を制御するフィールドを含む。例外の設定はビルド時にJARに含まれ、サーバにより実行時にクライアント上で更新される。
exception_event
exception_idPKnumber(10)
caused_by_event_type_idPKnumber(10)
event_priorityPKnumber(10) in (All, MIN, NORMAL or MAX)
first_retry_intervalnumber(10)
first_retry_countnumber(10)
second_retry_intervalnumber(10)
second_retry_countnumber(10)
allow_session_retrynumber(1)
delete_local_filenumber(1)
show_alertnumber(1)
continue_optionnumber(1)
retry_optionnumber(1)
upgrade_optionnumber(1)
close_optionnurnber(1)
open_browser_optionnumber(1)
message_key_idFKnumber(1)
event_indexnumber(10)
descriptionvarchar(256)
commentsvarchar(256)
data_classification
created
inserted
modified
例外処理は、特定の事象及び特定の事象の優先度に対して無効にされる。
device_exception
device_idPKnumber(10)
exception_class_namePKvarchar(128)
exception_stringPKvarchar(256)
exception_idFKnumber(10)
automaticnumber(1) not NULL, DEFAULT 0
data_classification
created
inserted
modified
装置別例外を周知の例外にマップする。このテーブルは、装置の稼動中に検出することによりポピュレートされる。
2.2.推薦
本明細書において、MusicStationアプリケーション内から顧客に対して推薦するのに利用される方法を説明する。omnifoneは、MusicStationアプリケーションに対する忠誠心を築く戦略の鍵として常に変化する妥当な最新の推薦を行なう能力を考察する。適切に実現される推薦は探索及び発見を促進し、その結果、新しい音楽を更に購入させる。更にそれにより、制限されるモバイル環境におけるMusicStationの体験を最適化できる。
2.2.1.MusicStation内の推薦
MusicStationは、顧客に個人専用の推薦を推進するために設計されたいくつかの機能を含む。それら機能は、Homeタブ、Inboxタブ及びBuzzタブにわたり、以下の節において詳細に説明する。
2.2.1.1.Homeタブにおける推薦
画面キャプチャ−Get new...オプションを示す図10を参照する。
顧客がHomeタブからGet new playlists、Get new artists、Get new albums又はGet new tracksオプションを選択すると必ず、顧客の最近の音楽の聴き方に基づく個人専用の提案する推薦であるメニューオプションを含むメニューオプションのリストが提示される。
個人専用の推薦を含むメニュー項目を図11に示す。
2.2.1.2.音楽の推薦に影響を及ぼす情報
Homeタブの音楽の推薦は、顧客に特有の2つの要因の相互作用に基づいて行なわれる:
黙示要因:これは、顧客の音楽の聴き方(すなわち、顧客が聴く音楽の種類及び顧客が音楽を聴く頻度)に基づく
明示的要因:聴く音楽に対する顧客の実際の評価の仕方
また、黙示要因に対する計数は、Inboxのコンテンツに対して顧客が行なうクリック数である(更なる情報は、第2.2.1.4節のBuzzタブにおける推薦を参照)。
画面キャプチャ−項目の評価を示す図12を参照する。明示的要因に関して、顧客は、Love itと評価した他の音楽に類似する音楽に対する推薦をプッシュされ、Hate itと評価した音楽に類似すると規定された任意のコンテンツは推薦されない。
2.2.1.3.音楽の推薦を行なう
各顧客に対するこれら黙示要因及び明示的要因は組み合わされ、アーティストと他のアーティストとの周知の関係及びトラックと他のトラックとの周知の関係等と混合される。その結果、顧客に対する個人専用の推薦のリストが得られる。
ある期間にわたり、人気のある(又は人気のない)アーティスト、アルバム、トラック及びプレイリストに関する情報を収集するため、それら推薦は、顧客が妥当であると考える可能性が最も高いものに更に厳しく適合されるだろう。システムは、顧客が聴くか又は購入する上位のアーティスト/アルバム及びトラックと直接関係のある最も人気のあるアーティスト、アルバム又はトラックを顧客に自動的にプッシュする。
2.2.1.3.1.「最近であること」の重要性
全ての時間にわたる顧客の音楽の聴き方ではなく最近の音楽の聴き方にのみ基づいて推薦を行なうのが重要である。これにより、提案が作成時の顧客に最も関連し、例えば非常に変化しやすい種々の好みを有する可能性のある顧客により影響を受ける非常に広範な提案の曖昧な集まりから構成されないことを保証する。
MusicStationに関しては、最近とは、顧客が最も最近聴いたか又は購入したN個のアーティスト/アルバム/トラック又はプレイリストにより規定される。Nの実際の値は観察に基づいて設定可能であり、それにより推薦処理の時間にわたり精細な調整が可能になる。
2.2.1.4.Buzzタブにおける推薦
2.2.1.4.1.Newsを介する推薦
画面キャプチャ−Newsを示す図13を参照する。全てのNewsのコンテンツ(ニュース記事、イベント通知、特定のアーティストの広告等)は、Homeタブに関して説明したのと同一の黙示要因及び明示的要因に基づいて顧客に対して個人専用にされる。更に、上述したように、ユーザがアーティストのホームページにリンクする広告等のNewsのコンテンツをクリックする場合、その事象は追跡され、推薦処理全体においてそのアーティストへの「肯定的な票」として使用される。
2.2.1.4.2.Buzzメンバを介する推薦
画面キャプチャ−Buzzメンバの推薦を示す図14を参照する。
Buzzタブは、個々の顧客向けの推薦を含む2つの主な要素を含む。それらを図15の表で説明する。
メンバ(すなわち、MusicStationの顧客)に対する推薦は、音楽を聴き且つ評価した履歴が類似する顧客をリンクすることにより行なわれる(内部では、システムが全ての他の顧客に対する顧客の「好み」を測定し、顧客の好みの最高レベルを有する顧客を選択する)。
顧客が推薦されたメンバを選択する場合、顧客はShared Playlists(共有プレイリスト)を聴いて評価できる。
2.2.2.推薦するための論理構造のサポート
それら推薦を行なうことをサポートする主な構造は3つある。
・関連トラックマトリクス
・関連アーティストマトリクス
・関連顧客マトリクス
後述の節においてシステムの物理インフラストラクチャを説明する。現在のところ、それら構造が24時間毎に頻繁にリフレッシュされることを考慮することで十分である。
2.2.2.1.構造のサポート1−関連トラックマトリクス
関連トラックマトリクスは、評価及び顧客の再生に基づいてどの程度密接に関連付けられたトラックの対がシステム中にあるかを表す相関関係のマトリクスである。
2.2.2.1.1.段階1−トラックの関連付けのカウントの生成
トラックに対して、上記のようなマトリクスを構築する。これは以下のことを表す:
対のトラックを全て再生したか又はLove It!と評価した顧客のカウント。
重要な注釈及び規則
図16のマトリクスは、5つのトラックの領域のみを考慮する。go-liveに対して500,000を考慮することになるだろう。
1)でカウントとして含まれるために、当該ユーザは少なくとも2回全て聴く(使用許諾契約書により規定されるように)必要がある。その根本的な理由は、顧客が2回以上トラックを聴いた場合、そのトラックを好きな可能性が高いからである。1度だけしか聴かない場合、新しい音楽を探索しているだけである可能性があり、それを再び聴くという印象を十分に与えられない。
顧客がトラックの2つの対を高く評価して3回以上聴く場合、その結果としてマトリクスの対応する交点に2を加算する効果がある。これは、ユーザが交差するトラックの対に与えられる最大の影響である。
Love It!と評価されるが再生されないトラックは、関連付けに対してカウントされる。
このマトリクスは、世界的なMusicStationの提供内で全てのサービスにわたる全てのトラック、全ての評価及び再生を範囲に含む。同様のことが後述されるアーティスト関連マトリクスにも当てはまる。
尚、マトリクスの半分は対角線の反対側に複製される。従って、理論的にはマトリクスの半分のみが必要である。
2.2.2.1.2.段階2−トラックの関連付けの重み付け
ここで、段階1からマトリクスを取得する必要があり、重みを適用し、いくつかのトラックが全ての顧客に単に人気がある(従って、個々の関連付けられた対に対して密接に関連付けられる必要はない)ということを考慮する相関関係を生成する。
これを行うために適用する式は、TF・IDF法として周知である。
文献又はウェブ検索に属するキーワードの説明において、TF・IDF法が動作する方法の概略を説明する。
TF = Term Frequency(単語の出現頻度)
文献の集合において用語が見つけられる頻度の測定値。TFは、問い合わせに最も関連する文献を判定する手段であるIDF(逆文献出現頻度)と組み合わされる。TFは、特定の文献にある単語が現れる頻度を測定するのにも使用されることがある。
IDF = inverse document frequency(逆文献出現頻度)
用語が集合にある希少さの測定値であり、用語を含む文献の数で集合の合計サイズを除算することにより計算される。非常に一般的な用語(「the」、「and」等)は、非常に低いIDFを有し、そのため探索結果から除外されることが多い。それらIDFの低い単語は、一般に「ストップワード」と呼ばれる。
Figure 2014195274
この式に対する注釈:
・TF = 頻度(又は段階1のマトリクスの交点の値)
・IDFは、式の後半(log)部分で表され、2を底とする対数である
・P(T1)は、マトリクスの種々の対において少なくとも1度現れるTrack1の総合的な確率を表す(すなわち、一対において発生する回数をトラックの合計数で除算したもの)
・IDFは3乗される。これは定数ではないが、推薦を向上させるために共に実験されるものである。周知のオンライン音楽推薦機能は、この定数に対して値3を使用するため、その知識及び先例に追従するのが賢明だろう。
式の使用の一例として、段階1のマトリクスからのTrack1及びTrack2の重みを計算したい場合、以下の計算を実行する:
Figure 2014195274
これにより、Track1及びTrack2の重み34が得られる。図17に示す新しい重み付けマトリクスを生成できる。これは、各行及び各列の末尾に全ての重みの合計を含む。
2.2.2.1.3.段階3−重みの正規化
ここで、重みを正規化する必要がある。実質的にこれは、マトリクスの重み付けされた全ての相関関係が行又は列の相関関係の合計により除算される新しいマトリクスを作成することを意味する。
Track1及びTrack2の例を再度使用すると、単純に34を110.5で除算し、正規化された重み0.31を提供する。
その結果、図18に示すように0と1との間の正規化された重みの集合を有する。
結果として得られる表において、値が1に近いほど、トラック間の相関関係は密である。
多くの推薦において、表の値は、規則的に再生成される(しかし、含まれるナンバクランチングの量のために実行中の方法で更新されない)際に相関関係を有するという利点により、事前計算済み関連付け(PCA)と呼ばれる。
2.2.2.2.構造のサポート2−関連アーティストマトリクス
例えば図19に示すように、関連アーティストマトリクスは、評価及び顧客の再生に基づいて、どの程度密接に関連付けられたアーティストの対がシステム中にあるかを表す相関関係のマトリクスである。
PCAの関連アーティストマトリクスは、実質的にトラックに対する方法と全く同一の方法で構築される。
アーティスト再生マトリクスに含まれるための基準は、顧客がアーティストの少なくとも1つのトラックを少なくとも2回全て再生する必要があることである。単一の顧客がマトリクスに対して与えられる最大の影響は、値2を加算することである(一対のアーティストを双方ともLove It!と評価し、双方のアーティストの少なくとも1つのトラックを少なくとも2回全て聴いた場合)。
尚、そのアーティストによるトラック又はアルバムの評価は、関連アーティストマトリクスに影響しない。
2.2.2.3.構造のサポート3−関連顧客マトリクス
関連顧客マトリクスは、評価及び消費者の再生に基づいて、どの程度密接に関連付けられた顧客の対がシステム中にあるかを表す相関関係のマトリクスである。例えば図20を参照。
PCAの関連顧客マトリクスは、関連アーティストマトリクスを生成するのと同一の処理の一部として構築される。
関連顧客マトリクスに含まれるための基準は、顧客が同一のアーティスト*の少なくとも1つのトラックを少なくとも2回全て再生する必要があることである。単一の顧客がマトリクスに対して与えられる最大の影響は、値2を加算することである(同一の一対のアーティストを双方ともLove It!と評価し、双方のアーティストの少なくとも1つのトラックを少なくとも2回全て聴いた場合)。
尚、ここで共通のアーティストを選択することは、計算及び処理電力の影響を低減するため、共通のトラックを選択するより有益である可能性が高い。
2.2.3.推薦を行なう
この節において、以下に対する推薦を生成するために上記構造を使用する方法を説明する:
・「More like this」トラック、アルバム又はアーティスト
・トラック「You might like」
・アルバム「You might like」
・アーティスト「You might like」
・プレイリスト「You might like」
・Buzz Cool Members画面に一覧表示されるような「Recommended Members」
・Buzz Cool Playlists画面に一覧表示されるようなRecommended Playlists−これはプレイリストyou might likeと同一のリストであるか?
「Find in Playlists?」
・Inbox−編集者によるもの及び宣伝のためのもの
説明する全ての機能性は、計算されたPCAに基づいて要求毎*の実行時に実行する。
図21、図22、図23、図24及び図25を参照。
2.2.4.星評価の生成
この節では、アーティスト/アルバム/トラック/プレイリストに対する5つ星評価を生成する方法を説明する。
2.2.4.1.評価システムへの入力
星評価システムへの入力は、明示的評価(すなわち、Love It!及びHate it!)及び黙示評価(すなわち、アーティスト/アルバム/トラックを聴いた回数、特に顧客がそのアーティスト/アルバム又はトラックを全て聴いた回数及び少なくとも2回)の2つがある。
可能であれば、評価は明示的測定値及び黙示測定値の50/50の部分で構成されることが推奨される。*
*これは、顧客が高い星評価又は低い星評価と共に表すために単に酷評できない時に有利である。
2.2.4.2.アーティスト/アルバム/トラック/プレイリストに対する5つ星評価の計算
2.2.4.2.1.明示的評価値の計算
アーティスト/アルバム/トラック/プレイリストの明示的評価は、単純にアーティスト/アルバム/トラックをLove It!と評価した顧客とHate It!と評価した顧客との比率に基づく。これは、以下のように計算される:
1)アーティスト/アルバム/トラック/プレイリストをLove It!と評価した顧客の数を取得する
2)(1)の値をアーティスト/アルバム/トラック/プレイリストを評価した顧客(すなわち、Love It!又はHate It!のいずれかに評価した顧客)の総数で除算する
3)5を乗算して、5つのうちの1つの評価値を提供する
例えば、Angels-Robbie Williamsに対して45個のLove It!評価及び18個のHate It!評価を有する場合を考慮する。評価値は以下のようになる:
Rating_value = {45/(45+18)}×5=3.57
2.2.4.2.2.少ない評価数を処理するための評価値の調整
酷評を回避するため及び数人の顧客のみがアーティスト/アルバム/トラック/プレイリストを評価した状況において多くの0又は5つ星評価がシステムに現れるのを防止するため、Love It!及びHate It!の2つの架空の評価を常に計算に含むべきである。従って、最終的な計算は以下のようになる:
Rating_value = [(45+1)/{(45+1)+(18+1)}]×5=3.53
2.2.4.2.3.黙示評価値の計算
黙示評価値を計算するために、比較の基準を作成する必要がある。最も賢明な基準は、個々の顧客により少なくとも1回全てが再生された全てのアーティスト/アルバム/トラック/プレイリストに対する顧客1人あたりの平均再生回数を表す基準である(すなわち、1度も聴いたことのないアーティスト/アルバム/トラック/プレイリストを計算に含めるのは公平ではない)。この基準を利用してシステム内で2.5の評価を表せ、2.5の評価値前後の分布を正規化することにより全ての他の評価を上下に調整できる。
一例として、トラックAngels-Robbie Williamsに対する顧客1人あたりの平均*再生回数が12.90であり、全てのトラック(少なくとも1回全てが再生された)に対する顧客1人あたりの平均再生回数が4.66であり、標準偏差が4.23である場合、以下のことを行なう:
Angels-Robbie Williamsに対する顧客1人あたりの平均再生回数=12.90
正規化された再生回数(平均は約0)=(平均再生回数−全体の平均再生回数)/(標準偏差)
従って、正規化された再生回数(平均は約0)=(12.90 - 4.66)/4.23 = 1.95
従って、正規化された再生回数(平均の星は約2.5個)=2.5 + 1.95 = 4.45
(尚、非常に極端な状況において、この値は<0又は>5にもなる可能性がある。この場合、値を0又は5に制限する。)
これが6つのトラックの領域において動作する方法の全体的な表現を図26に表す。*尚、最初に平均値を使用したが、中央値で実験すべきである。これは、中央値が執拗に1つのアーティスト/アルバム/トラック/プレイリストを再生する個々の顧客の影響を除く効果を有するためである。
2.2.4.2.4.全体の評価値の計算
全体の5つ星評価は、単純に黙示評価及び明示的評価の平均値を得て、最近接の半星に切り上げる(提示するものに対して肯定的にしたいため切り上げる)ことにより計算される。
Angels-Robbie Williamsの全体的な評価=(3.53 + 4.45)/2 = 3.99
従って、Angels-Robbie Williamsは4つ星の評価を受ける。
2.2.4.3.顧客に対する評価の計算
顧客に対する評価は、以下の2つの50/50平均に基づく:
1)顧客が共有プレイリストを聴いた回数及び評価
2)メンバが有する友人の数
前者は、第2.2.4.2節で説明した方法と同様の方法で計算され、同様に黙示部分に対しては、他の顧客が少なくとも2回聴いたプレイリストのみを考慮する。全ての顧客のプレイリストに対する全体の評価を有すると、単純にそれら全ての平均値を取得して、最終的な評価(5つ星又は他の更に望ましい表現)を生成する。
第2の部分は、全体のサービスデータセットに対する友人の平均数に対する友人の平均数として計算される。すなわち:
正規化された友人の数(平均は約2.5)=2.5+(平均再生回数−全体の平均再生回数)/(標準偏差)
2.3.探索機能
本明細書において、MusicStationの音楽探索を構成する探索インタフェース、処理及び結果の集合について説明する。モバイル動作環境の特性のために、MusicStation内の探索機構は、使用するのに単純で直感的であり、それと同時に非常に強力な機能となるように設計されている。該当する正確な結果をMusicStationの顧客の基盤に迅速に提供することを重視している。
それと同時に、You might like、Recently Added及びFeatured Artists/Albums/Tracks/Playlistsメニューオプションの下、該当するアーティスト、アルバム、トラック及びプレイリストを顧客にプッシュするために進行中の多くの自動化動作がバックグラウンドで行なわれることに留意すべきである。それらのメニューオプションのコンテンツは定期的に更新され、顧客の固有の好み、並びにその購買の仕方及び音楽の聴き方に基づく。
2.3.1.探索インタフェース
2.3.1.1.基本探索
基本探索は、MusicStationの音楽データベースへの迅速で強力なアクセスを可能にする。探索は、顧客がキーワード(又はキーワードの集合)を入力し、以下の1つで探索を更に向上することにより行なわれる:
・アーティスト
・アルバム
・トラック
更に、探索をクラシック音楽以外のみ又はクラシック音楽のみに更に制限できる。デフォルトは先に使用された選択である。制限しない場合には、システムは双方を探索する。
2.3.1.2.Advanced Search(高度な探索)
Advanced Search画面は、探索処理において広範でより精細な制御の採用を可能にする。Advanced Search画面を使用すると、以下により結果の集合をフィルタリングできる:
・アーティスト、アルバム又はトラック
・ジャンル
・チャートの位置(1位)
・最低の顧客評価
・言語
・国
更に、クラシック音楽に対して以下のフィールドを探索できる:
・作品タイトル
・アルバムのタイトル
・作曲者
・ソリスト/演奏者
・指揮者
・オーケストラ/合奏団
・レコード会社
2.3.2.MusicStationにおける探索をサポートする一般的原理
MusicStationの探索を作成する際に準拠する基本原理が10個ある。本明細書において、それら原理はいくつかの例と共に適宜提供される。
2.3.2.1.非英数字への非依存性
種々の顧客は、種々の方法で非英数字を使用する。例えば、顧客によってはアーティストのタイトルにおいて分離記号としてハイフンを使用するだろう。単純にスペースを使用する顧客もいる。モバイル環境において、非英数字を入力することは、扱いにくい場合があり、エラーを起こす傾向がある。従って、探索のために非英数字に依存せず、例として以下の全てが等価であると考える:
・s club 7
・s-club-7
・sclub7
2.3.2.2.大文字/小文字への非依存性
これは、単純に例えば以下のものが等価であることを意味する:
・s club 7
・S CLUB 7
・S Club 7
2.3.2.3.多国間の文字の種類を等価物として扱う
種々の顧客は、種々の方法で英語以外の文字を使用する。例えば、実際には以下を探索すべきである場合:
・Bjork
イギリス人は以下を探索するだろう:
・Bjork
MusicStationにおいて、探索システムが多国間の英字の種類を英語のアルファベットの等価物に対応させる(及びその逆も同様)ため、そのような不一致は問題ではない。
2.3.2.4.数字を書かれた対応する数と同一として扱う(及びその逆も同様)
アーティストの探索において、顧客は、例えば「50 Cent」又は「Fifty Cent」と入力してもよい。双方ともシステムにより処理される。
2.3.2.5.略語及び種々の単語の書き方は重要でない
内部マッピングテーブルにより、共通に使用される略語及び等価な表現が理解されることが保証される。従って、システムは、以下の全てのキーワードが等価であると考える:
・Boys to Men
・Boys 2 Men
・Boys II Men
同様に、「and」及び「&」は等価であると考えられる。
2.3.2.6.「The」の正確な位置への非依存性
「The」が使用される方法に関して考慮しない。例えばシステムにとって、以下のキーワードは等価であるように見え、正確な結果が返される:
・The Rolling Stones
・Rolling Stones, The、又は単純に:
・Rolling Stones
2.3.2.7.顧客はキーワードの完全な集合を入力するとは限らない
「Rage Against the Machine」を探索する人は、キーワードとして単純に「Rage」と入力し、MusicStationが選択するのに賢明な結果の集合を返すことを期待するだろう。
2.3.2.8.顧客は正確に単語を綴るとは限らない
主に完全に一致するものを探すが、顧客が単語の綴りを誤ることが多いことを理解している。他が全て失敗した場合、ファジー理論及び発音一致技術を使用して、アーティスト、アルバム又はトラックの探索を顧客に提案する。
2.3.2.9.希望することを認識している場合、そこへ案内する
顧客が「rage against the machine」を探索し、その結果、1つの結果が返される場合、「Rage Against the Machine」のアーティストホームページに自動的に進む。クリックする必要がある単一のアーティストを含む結果の集合を顧客に提示しない。
2.3.2.10.システムの使用状況を学び、それに従ってシステムを最適化する
顧客が探索しているアーティスト名、アルバム名又はトラック名にはいくつかの形態が存在する可能性があり、それらは、データベースに格納される名前とは非常に異なる。新しい形態を探索キーワードにおいて見つけた時、それを目的のアーティスト名、アルバム名又はトラック名と対応させることができることを保証する構造が存在し、それにより、その形態を使用して後で行なわれる全ての探索が成功することを保証する。
同様に、ソートする際、探索結果はその結果(顧客により再生される)の人気の知識を使用して、最も人気のあるもの(及び意図する探索に対して最適な結果)が最上位により近くなることを保証する。これは正確でないことがあるが、その場合、顧客は代わりにアルファベット順にソートされたビューを選択してもよい。
2.3.3.探索処理
以下において、顧客がアーティスト探索に対する探索キーワードを入力する時点から探索処理を説明する。
尚、以下の同一の原理がアルバム又はトラック探索に適用可能である。
1)入力された探索キーワードの完全一致が探索されるが、第2.3.2節−MusicStationにおける探索をサポートする一般的原理−においてその概要が説明された基礎となる原理に基づく。
2)アーティスト名内で探索キーワードの例を探索する。例えば、探索キーワード「BOB MARLEY」を仮定すると、有効な一致するものは以下の通りである:
a)「BOB MARLEY*」
b)「*BOB MARLEY*」
c)「*BOB MARLEY」
(ここで、*は任意の文字列を表す「ワイルドカード」である)
種類(a)の一致するものは、返される結果リストにおいて種類(b)及び(C)の一致するものより高い優先度で表示される。
(1)及び(2)が一致するものを1つのみ返す場合、アーティストのホームページ(並びにアルバムの場合はアルバムのホームページ及びトラックの場合はNow Playing画面)に直接移動する。
あるいは、人気により及びその後アルファベット順に並べられた1)の一致するもの、次に2)の一致するものを一覧表示する。
上記から一致するものを見つけた場合、探索ルーチンを抜ける。あるいは略一致するものに移る:
ステップ1)から4)を繰り返すが、ここではキーワードと同様に聞こえるか又は綴りが僅かに異なるものを見つけるために、発音及びファジー理論マッチングを使用してそれらステップを繰り返す。探索結果が厳密に一致したものではないことを顧客に明らかにするために、この処理から返される任意の一致するものの前にヘッダ「No exact matches found. Did you mean:」がある。結果の集合は、人気により及びその後アルファベット順に並べられる。
2.3.4.結果から見つける
結果リストが大きい例において、顧客は「More popup」メニューの「Find」オプションを使用して更に特定の項目を探索し、リストをナビゲートして特定の文字列を探してもよい。顧客が実行依頼すると、その最初の存在が見つけられる。左側のソフトキーの「Next」オプションを使用することにより、次の結果に迅速に移動できる。
2.3.5.探索の向上
「More popup」メニューのオプションを使用して、結果の集合のページから探索を向上できる。これが意味することは、ユーザが再び探索してもよい(基本探索又は高度な探索のいずれかで)が、探索キーワードボックス及び維持される事前に選択された全てのフィルタを使用して探索し、迅速な向上を可能にすることである。
2.3.6.探索結果の集合の形式
探索の結果、探索結果の集合が返される場合、その集合の要素のカウントはページの右上に提示される。
実際の結果自体の形式は、探索がアーティストに対するものか、アルバムに対するものか又はトラックに対するものかに依存して異なる。それら形式については、この節において更に詳細に説明する。
2.3.6.1.アーティスト探索
上位のアーティスト名に一致したものが返され、システムにより測定されたアーティストの人気によりソートされる。同様の(しかし、より低い)人気の更なる一致するものが追従し、アルファベット順にソートされる。
2.3.6.2.アルバム探索
アルバム探索は以下の形式で結果を返す:
アルバム名−アーティスト名(発売された年)
「発売された年」を有することにより、例えば再発売されたアルバム(特典又は最新のトラックを含む)が元のアルバムと容易に区別できることを保証する。
上位の一致するものが返され、システムにより測定されたアルバムの人気によりソートされる。同様の(しかし、より低い)人気の更なる一致するものが追従し、アルファベット順にソートされる。
2.3.6.3.トラックの探索
トラックの探索は、以下の形式で結果を返す:
トラック名−アーティスト名(トラックの長さ)
「トラックの長さ」(mm:ss)を有することにより、同一名の(しかし、長さが異なる)トラックを区別できることを保証する。これは、種々のアルバムにおいてミキシングし直した場合に発生することが多い。
尚、ここでアルバム名を有することは、厳しく制限された環境において結果として得られる文字列の全長のために不必要で望ましくないと考えられる。また、同一のトラックが種々のアルバムに現れる場合、そのトラックは1度のみ返される。
上位の一致するものが返されて、システムにより測定されたトラックの人気によりソートされる。同様の(しかし、より低い)人気の更なる一致するものが追従し、アルファベット順にソートされる。
2.3.7.Find in playlists(プレイリストから見つける)
システムの適切な時点で、トラックが参照されている時、顧客は「More popup」オプション「Find in playlists」を使用することにより、プレイリスト内のそのトラックを探索できる。他のMusicStationの顧客と共有される(又はシステムが公開する他のプレイリストに含まれる)プレイリストのリストが返され、人気によりソートされる。
2.4.複数言語のサポート
本明細書において、特定の装置、サービス及びクライアントバージョンに対してクライアントビルドを構築するためにメッセージを管理及び使用する方法を説明する。
2.4.1.開発
開発によりリリースされた各クライアントバージョンは、クライアントにより使用されるデフォルトのメッセージの集合を有する。このメッセージ集合は、開発者によるリリースの開発中保持される。メッセージ集合の各メッセージは、クライアントのいずれかの場所に現れるテキスト又はラベルである。メッセージのプロパティを示す図27を参照する。
メッセージは、次に利用可能なmessage_indexを有するmessage_set_itemにレコードを追加することによりデフォルトのメッセージ集合に追加される。メッセージの指標は、メッセージ集合のメッセージにアクセスするためにソースコードにおいて使用される。指標は、Messageオブジェクトの定数として定義される。
public static int OPEN_LABEL_INDEX = 104;
この定数は、現在選択されている言語のメッセージを取得するために使用される。
openCommand.setLabel(messageSet.getMessage(OPEN_LABEL_INDEX));
このメッセージ集合は、クライアントバージョンのデフォルトのメッセージ集合としての集合である。ビルドにパッケージされた画像は、デフォルトの画像集合において定義される。画像は、画像の役割に基づいてその集合から選択される。画像のプロパティを示す図28を参照。クライアントバージョンは、デフォルトのメッセージ集合及び画像集合を含んでリリースされる。クライアントバージョンのプロパティを示す図29を参照。
2.4.2.クライアントバージョンリリース
以下のレコードは、開発からビルドシステムまでクライアントバージョンリリースにパッケージされる:
・デフォルトのメッセージ集合及びメッセージ集合の項目
・デフォルトのメッセージ集合により使用されるメッセージ及びメッセージキー
・英語のメッセージ言語及び任意の他のテスト言語
・デフォルトの画像集合及び画像集合の項目
・デフォルトの画像集合により使用される画像
2.4.3.メッセージの翻訳
翻訳されたメッセージは、随時ビルドシステムにロードされる。言語は、デフォルトのメッセージ集合の各メッセージがその言語に対するメッセージ言語を有する時にビルドユーザにより選択可能である。翻訳されたメッセージを示す図30を参照。
サービスメッセージにメッセージを追加する時、メッセージ言語レコードがサービスによりサポートされる全ての言語に対して存在することを実現する。同様に、ビルドユーザがそのサービスと共に使用する装置を選択する場合、全ての装置メッセージがサービスによりサポートされる全ての言語に対してメッセージ言語を有することを保証する。
クライアントビルドが複数の言語に対して構築されるが、JARには1つのアイコン、ロゴ及びスプラッシュスクリーンしか含めることができないため、画像の翻訳は必要ない。サービスに対して規定された画像は、そのサービスに対するデフォルトの言語の画像である。
2.4.4.装置メッセージ
メッセージ集合は装置に対して規定される。これにより、選択された装置に対するデフォルトメッセージ集合のメッセージを無効にできる。装置メッセージのプロパティを示す図31を参照。
例えば、ヘルプメッセージは特定の装置に固有であってもよい。装置メッセージ/ヘルプメッセージのプロパティを示す図32を参照。ビルド時、選択された装置に対して規定されるメッセージは、同一のメッセージキーを有するデフォルトメッセージ集合のメッセージより優先される。
2.4.5.サービスメッセージ
メッセージはサービスに対して規定される。実際にはメッセージが装置及びサービスの双方ではなく装置別であるか又はサービス別であるべきであるが、それらメッセージはデフォルト及び装置メッセージ集合より優先される。サービスメッセージを示す図33を参照。
サービスは、デフォルト言語及びサービス言語の集合を更に有する。それらは、クライアントビルドに対してサポートされる言語及びデフォルト言語として設定されるが、ビルドが異なるデフォルト言語又は言語の部分集合のみを必要とする場合、ビルドユーザはビルドを行なう前にそれら言語を編集できる。
2.4.6.サービス及び装置別メッセージ及び画像
いくつかの例においては、メッセージ又は画像が特定の装置及び特定のサービスに固有であることを指定したい。例えば、装置の集合において手動でサイズ変更されたサービスアイコンを使用したい場合がある。サービス及び装置別メッセージを示す図34を参照。
2.4.7.メッセージの代入
データベースにおいて参照されるサービス又は装置の任意のプロパティが、デフォルトのメッセージ集合に代入可能である。例えば、カスタマーサポート電話番号を代入することである。
To get help please call $ {service.company.companyAddress.customerSupportTelephone}
デフォルトのメッセージ集合は代入をサポートし、これはビルドユーザから隠蔽される。デフォルトメッセージを閲覧する場合、電話番号が既に代入されている。装置及びサービスメッセージも代入をサポートする。装置及びサービスメッセージを管理するツールは、ビルドユーザから構文を隠蔽すべきである。代入された値が装置又はサービスに対して定義されていない場合、ビルドユーザは、ビルドが開始する前に値を設定する必要がある。
2.4.8.クライアントビルド
ユーザは、クライアントバージョン、装置及びサービスを選択している。バージョンに対するデフォルトのメッセージ集合は、ビルドに対して選択されるメッセージに基礎を提供する。装置及びサービスメッセージ集合は、それらメッセージより優先される。従って、service_deviceメッセージ集合において指定された任意のメッセージは、それらメッセージより優先される。
このビルドに対して選択された言語は、サポートされる言語に対するメッセージ言語レコードをフィルタリングするのに使用される。クライアントビルドメッセージは、各言語の各メッセージに対して作成され、このビルドに対するクライアントビルドメッセージテーブルにコピーされる。クライアントビルドメッセージを示す図35を参照。
ビルド時にメッセージのコピーをとることにより、以下のことが可能なる:
・行われた代入のレコードを保持する
・ロックされたメッセージを複製する必要なくメッセージを更新する
クライアントビルド画像はデフォルトの画像集合の各画像に対して作成され、サービス画像集合の任意の画像はそれら画像より優先される。従って、service_device画像集合において指定された任意の画像はそれら画像より優先される。それら画像はサイズ変更され、名前が変更され、JARにパッケージされる。クライアントビルドメッセージ及び画像は、クライアントビルド定義の一部を形成し、クライアントビルドがプロダクションサーバに対して発行される時にプロダクションサーバに発行される。
2.4.9.クライアントビルドの発行
各クライアントビルドに対して、以下のメッセージ関連テーブルがプロダクションシステムにリリースされる:
・Client_build:このクライアントビルドに対するレコード
・Client_build_message:このクライアントビルドに対するレコード
・Message:client_build_messageにおいて参照される各メッセージ
・Message_key:各メッセージに対するキー
・Message_lang:サポートされる各言語の各メッセージに対するmessage_lang
・Client_build_image:このクライアントビルドに対するレコード
・Source image files:client_build_imageにおいて参照される各画像ファイル
2.5.ローミングネットワークの選択
電話機が「Roaming」である場合、ユーザには、MusicStationを使用する時に追加の課金がなされる。それら課金は、電話がローミング中にユーザがトラックをダウンロードした時又はMusicStationがメニュー項目及び画像を更新した時に適用される。ユーザは、MusicStationに対するローミング挙動を設定できる。
2.5.1.ローミング挙動の設定
画面キャプチャ−Roaming optionsを示す図36を参照する。MusicStation内で、ユーザはMusicStationに対するローミング挙動を設定できる。図37を参照。Menu & picture updatesに対するローミング挙動がAskに設定される場合、所定のセッション中にローミングしている間のダウンロード、更新及び追加の課金を許可/拒否するかを問う警告メッセージが示される。画面キャプチャ−Roaming Warningsを示す図38を参照。
ユーザがローミング中にトラックをダウンロードしようとし、トラックに対するローミング挙動がAskに設定される場合、ローミング中のダウンロード、更新及び追加の課金を許可/拒否するかを問う警告メッセージが示される。許可/拒否のこの動作は、現在のセッションに対する設定値を設定する。画面キャプチャ−Roaming Warnings−Ask promptを示す図39を参照。
2.5.2.Roaming Warnings and Errors(ローミング警告及びエラー)
有料動作は、以下の2つのカテゴリに分類される:
・Track Downloads−オーディオファイルのダウンロード
・Menu and picture updates−メニューの更新は、Chart listings、You might like recommendations、Cool members及びBuzz playlists等の項目を含む。Buzzプロファイル上の変更画像等の写真の更新又はアーティスト及びアルバムプロファイルに対する新しい画像のダウンロード。
以下の処理は、MusicStationの新しいセッション毎に接続された各有料動作に対して行なわれる。
・サーバは、クライアントから到着する全ての要求の応答ヘッダを検査する必要がある。
・ローミングが検出され、ユーザが有料動作を選択する場合、Optionsメニューのその種の動作に対するローミングオプションの集合を検査する。
・その動作がRoaming optionsメニューにおいてOn(許可)とマーク付けされる場合、動作は通常通り実行される。
・その動作がRoaming optionsメニューにおいてOff(未許可)とマーク付けされる場合、ポップアップが表示され、ブロックされたことを説明する。
・その種の動作がRoaming optionsにおいてAskとマーク付けされる場合、セッションにおいて初めてその種の動作が選択されると、Roaming Warningが表示される。後続する動作は、ユーザが提供される回答に基づいて処理される。
2.5.3.Roaming Warnings(ローミング警告)
2.5.3.1.Askに設定されたRoaming Options
有料動作がRoaming OptiosメニューにおいてAskに設定される場合、以下のRoaming Warningが表示される。ユーザは、ローミング中のその種の有料動作に対する設定値を選択するように指示される。画面キャプチャ−Roaming Warning−Ask promptを示す図40を参照。
・ユーザがDon't Allowを選択した場合、この領域の全ての後続する動作は、このセッションの残りの間又はReset Locationが選択されるまでローミングエラーを表示する。
・ユーザがAllowを選択した場合、この領域の全ての後続する動作は、このセッションの残りの間又はReset Locationが選択されるまで更なる指示なしで進む。
・ユーザがTerms & Conditionsを選択した場合、WAPページはMusicStationの使用に関する条件を表示する。WAPブラウザを閉じることにより、上記指示の際のMusicStationに戻る。
ユーザがホームネットワークに戻ると迅速に、この警告は表示されなくなる。
2.5.3.2.Onに設定されたRoaming Options
有料動作がRoaming OptionsメニューにおいてOnに設定される場合、ユーザがローミングセッション中に有料動作を初めて実行した時に以下のRoaming Warningが表示される。ユーザは、過去にローミング基本設定を設定してあり、それら有料動作を許可したことを忘れている可能性がある。画面キャプチャ−Onに設定されたRoaming Optionsを示す図41を参照。
ユーザは、トラックのダウンロード又はメニュー及び写真の更新に対して課金されることを警告される。トラックのダウンロード及び/又はメニュー及び写真の更新が開始する。これらオプションは、Roaming optionsメニューにおいて変更できる。
2.5.3.3.Offに設定されたRoaming Options
有料動作がRoaming optionsメニューにおいてOffに設定される場合、ユーザがローミングセッション中に有料動作を初めて実行した時に以下のRoaming Warningが表示される。画面キャプチャ−Offに設定されたRoaming Optionsを示す図42を参照。
ユーザは、トラックのダウンロード及び/又はメニュー及び写真の更新が開始されないことを警告される。これらオプションは、Roaming optionsメニューにおいて変更できる。
2.5.4.ローミングの検出
以下の処理は、電話がローミングしていることをMusicStationが検出する方法を記述する。
・MusicStationのクライアントからサーバへの全てのHTTP要求は、MNOのゲートウェイを通過する。
・特定の情報をヘッダに追加するようにゲートウェイを設定した。例えば:
X-WSB-Identity:$(MSISDN); X-TELENOR-SGSN:$(RADIUS:SGSN-IP-Address); X-bearer:$(BEARER_TYPE)
・ここでは、第2のフィールドはSGSNのIPアドレスである。それは、ハンドセットが通信する時に介するゲートウェイのIPアドレスである。
・このIPアドレスとMNOネットワーク上のゲートウェイのIPアドレスのリストとを比較する。
・IPアドレスがそのリストにない場合、それはハンドセットがローミングしていることを意味する。
サーバは、リストのIPアドレスをルックアップすることによりその評価を行なう。サーバは、ローミングしていると決定した場合、クライアントにその状態をプッシュし、クライアントは規則及び2.5.2.Roaming Warnings and Errorsで説明したユーザ指示により実行する。
3.コミュニティ機能
個々の能力でサーバと対話するというエンドユーザの能力に加え、クライアント及びサーバは、ユーザが他のユーザと対話できる特定のコミュニティ機能性を更に提供する。各ユーザは、個々のプロファイルを作成し、「友人」要求を他のユーザに送出し、その後アーティスト、アルバム又は個々のトラックによるプレイリスト又は推薦を確定された「友人」に送出する能力を有する。
3.1.登録
コミュニティ機能に参加する第1のステップは、コミュニティ環境(Buzzとしても周知である)内に固有のプロファイルを登録するようにユーザに要求することである。
3.1.1.規定されたメンバ名なし
ユーザがコミュニティ機能にアクセスを試みるが、ユーザがBuzzユーザ名を登録していない場合、Buzzホームページは、Buzzに登録するようにユーザに招待状を表示する。メンバ名のみが必須フィールドである:
・customer_preference.nickname
更に、ユーザはオプションでキャッチフレーズを入力でき且つ/又はアバターとして画像を選択できる:
・customer_preference.catchphrase
・customer_preference.avatar_image_id
メンバ名がそのサービスにおいて一意であり、罵倒語のフィルタを通過した場合、Buzzホームページはそのメンバに対して新しく規定された詳細を示す。
メンバ名がそのサービスにおいて一意でない場合、クライアントは画面に戻り、ユーザが入力したメンバ名をそのユーザに対して提案されたメンバ名で置換し、受け入れるか又は変更する。ユーザがメンバ名を提供した場合、Buzzホームページは、そのメンバに対する先の詳細、並びにユーザの確定された友人のカウント及び共有プレイリストを聴いた回数を示す:
・Customer_count.friend_count
・playlist_count.play_count
3.1.2.規定されたメンバ名
ユーザがメンバ名を提供した場合、Buzzホームページはそのメンバに対する詳細を示す。
・customer_preference.nickname
・customer_preference.avatar_image_id
・customer_preference.catchphrase
・customer_data.calculated_rating
・Customer_count.friend_count(customer_to_customerのカウント。ここで、customer_id = ${customerId}且つcustomer_to_customer.friend_status = APPROVEDである)
・play_count_otherplaylist(playlist_count.play_countの合計。ここで、playlist.owning_customer_id = ${customerId}である)
評価は、人気から算出される。アルゴリズムは、2.2.推薦に含まれる。
メニューオプションは、共有プレイリスト及びこのメンバにとって興味のある評価されたコミュニティメンバ(3.4.Buzz Cool Members)にアクセスできるようにする。更にメニューオプションは、ユーザ自身のプレイリスト及び友人(3.6.1.Buzz Friends)にアクセスできるようにする。
3.2.Edit My Profile
ユーザがプロファイルを編集することを可能にする状況依存メニューを介するオプションが存在する。これは、Buzzプロファイル画面に表示され、適切なオプションが設定された場合に他のメンバにより閲覧可能である。そのオプションは、ユーザがBuzz Main画面内の状況依存メニューから「Edit My Profile」オプションを選択した時に表示される。ユーザは、メンバ名、キャッチフレーズ、画像及び以下の閲覧オプションを編集できる:
・Show Profile−これは、このメンバのプロファイルが他のメンバに対して可視であるかを制御する。デフォルトはYesである。
・Show my top tracks−これは、このユーザのお気に入りのアーティストがメンバプロファイル画面に一覧表示されるかを制御する。デフォルトはYesである。
3.3.Shared Playlists(共有プレイリスト)
メニューオプションにより、このユーザにとって興味のある共有プレイリストにアクセスできる。「You Might Like」プレイリストは、推薦エンジンによりこのユーザのために選択された他のユーザの共有プレイリストである。2.2.推薦を参照。クライアントは、共有プレイリスト毎に共有プレイリスト名、星評価及びプレイリストを作成したメンバを表示する:
・playlist.name
・playlist.owning_customer_id
・customer_info.recommend_playlist_set_id
・playlist.image_set_id
・playlist_data.calculated_rating
3.4.Buzz Cool Members
メニューオプションにより、このメンバにとって興味のあるメンバにアクセスできる。「You Might Like」メンバは、このメンバに類似する他のメンバである。このリストが作成される方法の詳細は、2.2.推薦を参照。ここで、Edit My Profile画面上で「Show Profile」オプションを設定し且つユーザの既に確定された友人でないメンバのみが、以下の詳細と共に一覧表示される:
・customer_preference.nickname
・customer_preference.avatar_image_id
・customer_info.recommend_customer_set_id
・customer_data.calculated_rating
・所有するcustomer_id = ${recommendedCustomerId}であるプレイリストのカウント
3.5.別のメンバプロファイル
ユーザは、MusicStatonサービスの別のメンバの詳細を閲覧できる。メンバがメンバのリスト(例えば、3.4.Cool Members画面)から開かれる場合、プロファイルの面が表示される。この画面は、Buzzにまだ加入しておらず且つ少なくともメンバ名を設定していないメンバに対して示されることはない。ビューは、共有しているメンバの全てのプレイリストのリストを含む。それらのうち1つを開くことにより、プレイリストを表示する。
画面は、プレイリスト毎に、そのプレイリストのトラックが予備再生されて聴かれた回数及び評価を示す。共有プレイリストがない場合、メッセージ「This member has not yet shared any playlists(このメンバは共有プレイリストを持ってません)」がShared Playlistsの表題の下でこのセクションに表示される。
更に、他のメンバの上位のトラックのリストが表示される。このセクション(タイトルを含む)は、この画面に表示されているメンバが3.2.Edit My Profile画面上で「Show my top tracks」フラグを設定した場合にのみ示される。リストは、このメンバの上位5つのトラックを表示する。これは、このメンバにより過去最も再生された上位5つのトラックであり、最も人気のあるものが最上部に表示される。ユーザは、それらトラックの任意のトラック上でPlayを選択できる。含まれるフィールドは以下の通りである:
・customer_preference.nickname
・customer_preference.avatar_image_id
・customer_preference.catchphrase
・customer_data.calculated_rating
・play_count_otherplaylist(playlist_count.play_countの合計。ここで、playlist.owning_customer_id = ${customerId}である)
・Customer_count.friend_count(customer_to_customerのカウント。ここで、customer_id = ${customerId}且つcustomer_to_customer.friend_status = APPROVEDである)
・playlist.name
・playlist_data.calculated_rating
・playlist_count.play_count
・playlist.image_set_id
3.6.Buzz Add as Friend
この画面は、メンバが選択された任意の状況依存メニューから「Add as Friend」をユーザが選択した時に表示される。ユーザは、友人要求の一部としてメッセージを送出できる。
Add as Friendオプションがメンバに対して選択され、メンバがこのユーザの友人でない場合、友人要求の画面は、友人要求の送出先のメンバの名前に対するフィールド及びメンバが誰でであるかの紹介として他のメンバに送出されるテキストを入力できるテキスト本文に対するフィールドと共に表示される。フィールドは以下を含む:
・customer_preference.nickname
・customer_to_customer_request.body
3.6.1.My Friends
「My Friends」メニューオプションは、このメンバの友人のリストを表示する。ユーザが友人を有さない場合、これはメッセージ「Your list of friends will be shown here(友人のリストはここに表示されます)」を表示する。更に、このメンバの保留中の友人要求のリストが表示される。このタイトル及びリストは、保留中の要求がない場合には示されない。フィールドは以下を含む:
・customer_to_customerのカウンタ。ここで、customer_id = ${customerId}且つcustomer_to_customer.friend_status = APPROVEDである。
・from customer_to_customer_request。ここで、friend_status = REQUESTEDである。
3.6.2.Add Friend by Name(名前による友人の追加)
ユーザは、「Add Friend by Name」メニューオプションを選択して、プロファイル名で別のユーザを追加できる。このオプションは、このユーザがBuzz登録を行ない且つメンバ名を登録した場合にのみ利用可能である。ユーザは、友人のメンバ名を入力して友人要求を送出する必要がある。フィールドは以下を含む:
・customer_preference.nickname
・customer_to_customer_request.body
メンバが「send」を選択し、その名前のメンバが見つかった場合(そのメンバがShow Profileオプションを設定しているか否かに関わらず)、確認メッセージが表示される。メンバが「send」を選択し、その名前のメンバが見つからない場合、ユーザは通知され、メンバ名を再入力するように要求される。メンバが「send」を選択し、そのメンバが既にこのユーザの友人である場合、ユーザはその結果を再び通知される。
3.6.3.Add Friend by Telephone Number(電話番号による友人の追加)
この画面は、ユーザが「Add Friend by Number」オプションを選択した時に表示される。ユーザは、友人要求を送出する送出先の友人の電話番号を入力する必要がある。ユーザは国番号なしで入力すると仮定され、デフォルトの国番号はサービスが関連付けられている国の国番号である。フィールドは以下を含む:
・customer_person.mobile_msisdn
・customer_to_customer_request.body
メンバが「send」を選択し、その名前のメンバが見つかった場合(そのメンバがShow Profileオプションを設定しているか否かに関わらず)、確認メッセージが表示される。メンバが「send」を選択し、その名前のメンバが見つからない場合、ユーザは通知され、メンバ名を再入力するように要求される。メンバが「send」を選択し、そのメンバが既にこのユーザの友人である場合、ユーザはその結果を再び通知される。
3.7.トラック又はプレイリストの送出
この画面は、ユーザが状況依存メニューのいずれかにおいて「Send to Friend」オプションをトラック又はプレイリストに対して選択した時に表示される。ユーザは、トラック又はプレイリストを送出する送出先の1人以上の友人を選択してもよい。ユーザは、自身のメンバ名を設定し、Send to Friendオプションに対して少なくとも1人の友人を有効にする。フィールドは以下を含む:
・mail_attachment.track_id
・customer_preference.nickname
・customer_mail.customer_id
・mail.body
このメンバの友人のリストが表示される。ユーザは、選択するために友人をクリックし、選択解除するために再びクリックする。任意の数の友人が選択されてもよい。評価、友人の数及び聴いた回数が友人毎に表示される。sendを選択すると、確認メッセージが表示され、ユーザは初期画面に戻る。
3.8.メッセージの送出
クライアントは、コンテンツIDの追加なしでメッセージを送出する機能を更に有する。メッセージ画面は以下のフィールドを表示する:
customer_mail.customer_id
customer_preference.nickname
mail.body
3.9.Who's Listening
この画面は、ユーザがメニューのいずれかにおいてトラック、アルバム、アーティスト又はプレイリストに対してMoreメニューから「Who's Listening」オプションを選択した時に表示される。画面は、このユーザがWho's Listeningオプションを選択した項目を最も最近再生したBuzz登録済みの10人のメンバを表示する。表示されるものは、以下のようにオプションが選択されたオブジェクトの種類に依存する:
・トラック−そのトラックを最も最近再生した10人のメンバ
・アルバム−そのアルバム中のトラックを再生した10人のメンバ
・アーティスト−そのアーティストによるトラックを最も最近再生した10人のメンバ
・プレイリスト−そのプレイリストのトラックを最も最近再生した10人のメンバ
フィールドは以下の通りである:
・customer_track order by last_play_date
・customer_release order by last_play_date
・customer_artist order by last_play_date
・customer_playlist order by last_play_date
3.10.Inbox
他のユーザからのメッセージ及び推薦を含むユーザに対する全てのメッセージを表示する「Inbox」がコミュニティビューに含まれる。
3.10.1.到着するInboxトラック推薦メッセージ
メンバがこのユーザにトラックを送出した時、以下の定義されたフィールドを含むメッセージがInboxに現れる:
・mail.kind = MESSAGE
・mail.from_customer_id
・mail.sent_date
・mail.kind = TRACK RECOMMENDATION
・mail.from_customer_id
ユーザがメッセージを選択することにより開くと、メッセージ画面は以下のフィールドを含んで表示される:
・mail.from_customer_id
・customer_preference.avatar_image_id
・mail.sent_date
・mail_attachment.track_id
推薦されたトラック名、アルバム名、アーティスト名又はプレイリスト名がメッセージ中に強調表示され、ユーザがメッセージをスクロールすると、後続する各々が強調表示される。トラック名をクリックすると、ユーザがトラックリストのトラックに対してAdd to Playingを選択した時と同様の挙動を行なう。すなわち、トラックは現在のプレイリストの末尾に追加され、表示されるポップアップはユーザにそのことを通知する。
3.10.2.到着するInboxプレイリスト推薦メッセージ
メンバがこのユーザにプレイリストを送出した時、以下を含むメッセージがInboxに現れる:
mail.from_customer_id
mail.kind = PLAYLIST RECOMMENDATION
mail_attachment.playlist_id
ユーザがメッセージを選択することにより開くと、メッセージ画面は以下のフィールドを含んで表示される:
・mail.from_customer_id
・customer_preference.avatar_image_id
・mail.sent_date
・mail.body
・mail_attachment.playlist_id
3.10.3.到着するInbox友人要求メッセージ
別のメンバがこのメンバに対して友人要求を行なった場合、メッセージがこのメンバのInboxに現れる。開かれた時に、承認又は否認する機会を得る。ユーザが対話を要求されているため、これはポップアップ内で行なわれる。メッセージの表題は以下を表示する:
・customer_to_customer_request.to_customer_id
・customer_to_customer_request.friend_status = REQUESTED
メッセージを開くことにより、以下が表示される:
customer_to_customer_request.to_customer_id
customer_to_customer_request.body
継続することを選択すると、以下のオプションを含むポップアップが表示される:
・Approve−友人要求の場合にのみ強調表示される(殆どのInboxの項目に対してこのオプションが関連していないため淡色表示しない)
・Deny−友人要求の場合にのみ強調表示される
・Block−友人要求の場合にのみ強調表示される
・Report Abuse−友人要求の場合にのみ強調表示される
ユーザ応答は以下に格納される:
・customer_to_customer_request.response(APPROVED, DENIED, BLOCKED, ABUSED)
3.10.4.到着するInbox友人要求応答
メンバがこのユーザからの友人要求に応答する場合、応答はこのメンバのinboxに現れる。他方のメンバが友人要求を受け入れたか、拒否したか又はブロックしたかに依存して、このメンバが見る可能性のある応答は3つある:
・customer_to_customer_request.friend_status
図43の表は、応答のタイトル、コンテンツ及び結果を示す。
3.10.5.到着するInboxテキストメッセージ
テキストメッセージは、Inboxに同様に表示され、関連するフィールドは以下の通りである:
・mail.from_customer_id
・customer_preference.avatar_image_id
・mail.sent_date
・mail.body
3.11.一般的なメッセージ警告及び有効期限
3.11.1.メッセージ警告
1つ以上のメッセージがメンバに対して到着した場合、画面の下部に1つの小さなポップアップを表示する。ポップアップは、到着したメッセージのグループ毎に1度表示され、サーバがそれらメッセージをクライアントに渡すと迅速に表示される。次のメッセージはチェックされ、ユーザフローを中断しないようにクライアントがNow Playing画面に戻ってから2秒後に表示される。現在のプレイリストが存在しない場合、ポップアップは、現在のプレイリストがあった場合にクライアントが戻ると考えられる時から2秒後に表示される。1つのポップアップが読まれ且つ確認された後、このセッション中にそれ以上メッセージが到着する場合は別のポップアップが表示される。従って、このメンバがオフラインの時に送出されたメッセージは、アプリケーションを開始した後迅速に表示される可能性が高い。
3.11.2.メッセージの有効期限
読まれたメッセージは、読まれた後1日で期限切れとなる。未読のメッセージは、ユーザがその存在を警告された後5日で期限切れとなる。未読のメッセージは、ユーザがアプリケーションにおらず且つそのためにその存在を警告されない場合は30日で期限切れとなる。期限切れとなったメッセージは、適宜Inboxから除去される。有効期限が正確に守られるかは重要ではない。例えば、期限が切れた後の次のセッション開始時にそれらメッセージがInboxから除去されてもよい。従って、追加のフィールドは、メールが受信される日付に対して定義される:
・customer_mail.received_date
4.グラフィカルユーザインタフェース(GUI)機能
付録1において、GUIを説明する。
5.通信アーキテクチャ
5.1.mCom
5.1.1.概要
MusicStationのクライアントアプリケーションは、種々のデータをダウンロード及びアップロードするためにMusicStationサーバに接続するように要求される。MusicStationがサーバに接続するために使用するプロトコルは、Java、Symbian及びWindows(登録商標) Mobile等の種々のクライアント技術において実現可能である必要がある。また、文献「Connected MusicStaton Issues and Requirements」で説明される課題を解決する必要がある。
5.1.1.1.プロトコルの歴史
MyFoneは、データを転送するためにHTTPを使用していた。この経験は、HTTP要求及び応答がオペレータゲートウェイを介して渡される必要があるといういくつかの課題を明らかにした。オペレータゲートウェイ及び種々の移動電話は、通常はHTTPヘッダの転送の失敗によりHTTPヘッダに度々妨害を与えた。これは、このプロトコルを作成することになった重要な要因の1つである。
1つの応答でいくつかのファイルを転送するために、このプロトコルはMIMEから名案を得た。この文献の初期の改訂版は、応答の中の種々のファイルを分離するためにMIMEのような境界を使用した。これは、ヘッダ中のオフセット及び長さ表記を使用するように変更された。これにより、クライアントはデータオブジェクトに迅速にアクセスできる。本文のコンテンツではなく、ヘッダのみが解析される必要がある(第3.2.7節を参照)。
以前、状態コードは、年配のクライアントにより理解され且つ拡張可能にするためにバイナリ表現を使用していた。これは、それらクライアントだけでなく人間により容易に理解できる整数値を使用するように簡略化された。最適な状態コードをクライアントに送出するサーバは、新しい状態コードを導入するという課題に対処する。サーバは、接続されたクライアントバージョンが理解する状態コードのみを送出する。
以前は、同一ファイルがセッション中に数回要求された場合、あるいはデータファイルが送出されたセッションと異なるセッションで肯定応答が送出された場合、肯定応答を一意に識別することは不可能であった。Sent行及びPut行で使用される肯定応答ID原理はこの課題を解決する。
5.1.1.2.プロトコルの概要
クライアントは、移動電話がインターネットに接続する方法のために全ての通信を開始する必要がある。移動電話が固定IPアドレスを有さず、通常はモバイルオペレータゲートウェイを介して接続するため、サーバが通信を開始することはできない。MIDP2.0ハンドセットは、クライアントがサーバに要求を行なうことを要求するアプリケーションにSMSを送出するためにPush Registry機能性を使用できる。しかし、この機能性は全ての対象のハンドセット及びクライアントプラットフォームにおいて利用可能でない可能性があるため、MusicStationプロトコルは通信を開始するクライアントに基づくべきである。
プロトコルは、HTTP及びTCP/IPソケット接続を介して実行可能である必要がある。それらは、クライアントプラットフォームにより利用可能にされた最も一般的な利用可能な2つの接続である。プロトコルは、高信頼トランスポート層を仮定する。プロトコルは、特定の応答の個々のパケットを再要求できる必要はない。従って、UDPソケット接続はサポートされる転送機構ではない。低信頼トランスポート層をサポートするには、MusicStationプロトコルにおいて多くの追加の機能性が必要であり、TCPはUDPを有する全てのクライアントで利用可能である。
プロトコルは、サーバにデータを転送するクライアント及びサーバからのデータに対する要求を行なうクライアントをサポートできる必要がある。これは、エラーデータ、ログデータ、使用データ、プレイリスト情報及びユーザ関連データがクライアントからサーバに転送可能になるために必要とされる。
MusicStationは、要求/応答プロトコルであるためHTTPにおいて厳密にモデル化され、HTTP機能のいくつかを流用する。MusicStationプロトコルは、ASCII文字セットのみを使用するテキストを使用し、そのため、バイナリデータに関連する符号化の問題なく、多くの種々のクライアントプラットフォームにおいて実現される。
以下の図は、クライアントとサーバとの間の要求/応答フローを示す。これは、サーバにより実行されるクライアントからの単純な要求の一例である。全てのクライアント/サーバ通信は、この同一の基本的な方法で行なわれる。クライアントとサーバとの間の要求/応答フローを示す図44を参照。
次の図は、サーバがクライアントに要求を送出する方法を示す。クライアント/サーバ通信が常にクライアント要求によりトリガされるため、サーバがクライアントから要求を行なう唯一の方法は、サーバがクライアントに送出する応答において要求をピギーバックすることである。サーバがクライアントに要求を送出することを示す図45を参照。
尚、通常の動作において、応答にデータがない場合でも、サーバはクライアント要求に常に応答する。応答は、状態コードのみを含んでもよい(「サーバ「応答」プロトコル」の節を参照)。要求数/分の閾値を超える要求及びロボットクライアントは通常の動作ではなく、サーバは、それら要求に応答する義務はない。サーバ応答を受信しない実際のクライアントは、適当な時間後に要求を再試行すると予想される。
HTTPと同様に、MusicStationプロトコルは、転送される実際のデータを含むメッセージの本文に関するメタデータを保持するのにヘッダを使用する。本明細書において、それらヘッダに関してプロトコルを説明する。メッセージの本文は、種々のクライアントの実現によって異なる。HTTPと同様に、ヘッダ及び本文は空行により分離される。
5.1.2.クライアント要求プロトコル
5.1.2.1.ヘッダ
5.1.2.1.1.プロトコル識別子
任意の要求の第1の部分は、プロトコル識別子である。そのため、その要求を受信するサーバは、受信したデータが実際にクライアントからのものであることを確認できる。プロトコル識別子は短いため、要求に対してオーバヘッドを与えない。MusicStationにより使用されるプロトコル識別子は以下の通りである:
MSTP
これは、MusicStation伝送プロトコルを意味する。
5.1.2.1.2.プロトコルバージョン番号
プロトコル識別子の他にプロトコルバージョン番号がある。このプロトコル識別子は、クライアントバージョン番号、サーババージョン番号及びクライアントバージョン番号により使用されるデータオブジェクトとは完全に分離される。
同一のプロトコルバージョン番号を使用するクライアントアプリケーションのバージョンは多く存在する。
プロトコルバージョン番号は、major.minorの形式である。minor番号は、プロトコルに対する漸進的な変更に対して増加され、major番号は、プロトコルに対する大幅な変更と共に増加する。プロトコルの初期の開発バージョンは、major番号0を有する。これは、プロトコルが最初に生産販売される時に1に増分される。サーバソフトウェアは、全ての旧クライアントバージョンと下位互換性があるように、販売される全てのバージョンのプロトコルを必ず処理できるべきである。
プロトコルバージョン番号は、プロトコル識別子と同一行にあり、フォワードスラッシュでプロトコル識別子と分離される。
MSTP/0.1
この行は、これがバージョン0.1のMusicStationプロトコルであることを示す。
5.1.2.1.3.要求識別子
MusicStatoinのクライアントにより送出される各要求は識別子を含む。この識別子は、現在のセッションにおいてその要求に一意である必要がある。要求識別子がグローバルで一意である必要はない。この要求識別子は、最長32文字の任意の文字列である。
これは、1で開始する整数として実現されてもよく、クライアントが要求を行なう度に増分される。この要求識別子は、サーバがクライアントからの重複する要求を識別できるようにするために必要とされる。MyFoneの経験は、移動電話のクライアント要求が非常に信頼できないことがあることを示している。これは、クライアントが適度な時間内に応答を受信しない場合に要求を自動的に再試行できる必要があることを意味する。
クライアントが応答を受信していない場合、その理由は、要求がサーバまで到達していないからであるか、あるいはサーバの応答がクライアントに返される途中でオペレータゲートウェイにおいて損失したからである。要求識別子を含むことにより、サーバが重複する要求を識別することは容易である。クライアントは、任意の再試行された要求に対して同一の要求識別子を送出する必要がある。
要求識別子は、要求識別子及び要求バージョン番号の下側の任意の場所にある。
MSTP/0.1
RequestId: 123456
これは、そのクライアントによる要求を識別する。クライアントがその要求を再試行する場合、エントリ中の要求IDは123456である。
5.1.2.1.4.クライアント名及びバージョン番号
全ての要求は、クライアント名及びバージョン番号を含む必要がある。この情報は、そのクライアントの能力のルックアップを実行するためにサーバ上で使用される。これは、新しい能力がプロトコルで与えられた情報を変更する必要なく随時クライアントに追加されることを意味する。
例えばクライアントが自身をMIDPバージョン0.4.6クライアントと識別する場合、サーバはどの形式でデータオブジェクトを返す必要があるかを認識する。更にサーバは、そのクライアントによりサポートされる音楽符号化を認識する。サーバは、そのクライアントが暗号化音楽ファイルをサポートしないことを認識する。
MSTP/0.1
RequestId: 123457
Client: MusicStation 0.4.6 MIDP Nokia/N70
これは、クライアントをNokia N70ハンドセット上で実行するJavaクライアントバージョン0.4.6と識別する。サーバは、そのクライアントが有する能力をルックアップできる。
この文字列の形式は以下の通りである:
"MusicStation" [major].[minor].[micro] "Variant name" "Platform identifier"
詳細については図46を参照。
5.1.2.1.5.グローバルで一意のユーザの識別子
全ての要求は、グローバルで一意のユーザの識別子を含む必要がある。これに対する1つの例外は、初期登録要求である。要求がグローバルで一意のユーザの識別子を含まない場合、サーバは、クライアントが登録する必要があることの通知により応答する。
このグローバルで一意の識別子により、サーバはユーザに関する種々の情報をルックアップできる。クライアントは、グローバルで一意の識別子を構成すべきではない。識別子は、登録処理中にサーバにより作成され、クライアントに割り当てられる。クライアントは、後続する各要求にその識別子を含める必要がある。
MSTP/0.1
RequestId: 123458
Client: MusicStation 0.4.6 MIDP Nokia/N70
UserGUID: AB12YZ
これは、グローバルで一意の識別子AB12YZを有するユーザを識別する。サーバは、好適な言語、領域、オペレータ及びブランド等のユーザの詳細をルックアップするためにその情報を使用できる。
5.1.2.2.データ要求
5.1.2.2.1.基本的なデータ要求
クライアントからの殆どの要求は、クライアントからのデータに対する要求である。例えばクライアントは、サーバからの最新のニュースを要求してもよい。
MSTP/0.1
RequestId: 123459
Client: MusicStation 0.4.6 MIDP Nokia/N70
UserGUID: AB12YZ
Get: inbox.data
これは、inbox.dataデータオブジェクトファイルに対する要求の一例である。
5.1.2.2.2.パス情報を含むデータ要求
データ要求は、それら要求に関連するパス情報を更に有してもよい。これは、HTTP URLに類似する構文を使用する。記号/(フォワードスラッシュ)は、ディレクトリ分離記号として使用される。
MSTP/0.1
RequestId: 123459
Client: MusicStation 0.4.6 MIDP Nokia/N70
UserGUID: AB12YZ
Get: games/namethattune/question.data
これは、パスgames/namethattuneを有するquestion.dataデータオブジェクトファイルに対する要求の一例である。
5.1.2.2.3.クエリを含むデータ要求
データ要求は、サーバがクライアントに返されるデータオブジェクトを構成するのに使用するパラメータをオプションとして含んでもよい。この要求データは、HTTPクエリ文字列構文を使用することにより含まれる。
MSTP/0.1
RequestId: 123460
Client: MusicStation 0.4.6 MIDP Nokia/N70
UserGUID: AB12YZ
Get: advncedSearch.data?type=artist&query=artist%20name&country=uk&language=en
これは、高度な探索の結果に対する要求の一例である。要求されたリソースは記号?(疑問符)を有し、要求されたリソースの名前をそのリソースに対するパラメータと分離する。パラメータは、名前/値の対である。名前/値の各対は記号&(アンド記号)により区切られ、名前及び値の部分は=(等号)により分離される。値はURL符号化されるため、探索用語「artist name」の間隔文字はURL符号化バージョン%20により置換される。
5.1.2.2.4.複数の要求を含むデータ要求
クライアントは、サーバからの複数のリソースを同時に要求してもよい。これを行なうために、クライアントはいくつかのGET行を送出する。各Get行は、要求される各リソースに対するものである。
MSTP/0.1
RequestId: 123461
Client: MusicStation 0.4.6 MIDP Nokia/N70
UserGUID: AB12YZ
Get: inbox.data
Get: charts.data
これは、inbox.dataファイルに対する要求及びcharts.dataファイルに対する要求の一例である。このような状況は、クライアントが迅速に必要とするリソース(この例においてはinbox.data)に対する要求を行なっており且つバックグラウンドでリソース(この例においてはcharts.data)を更新するように要求された時に発生する可能性がある。
GET行は、クライアントがサーバ応答においてリソースを受信したい優先度で配列されるべきである。場合によっては、クライアントは部分応答をキャッシュし、サーバから返されるデータの一部のみを要求してもよい。このような場合、クライアントはデータの特定の部分に対してのみ要求を行ないたいだろう。クライアントは、GET行の範囲パラメータを使用してこれを行なえる。範囲パラメータは、記号;(セミコロン)により要求されたリソース名と分離される。2つ以上の範囲パラメータが存在する場合、それら範囲パラメータは記号;(セミコロン)により分離される。範囲パラメータは、from及びtoである。双方とも、記号=(等号)及び整数のバイト数が後続する。
5.1.2.2.5.部分データ要求
以下は、inbox.dataファイルに対する部分要求の一例である。クライアントは、inbox.dataファイルの34バイト目以降の全てを要求している。
MSTP/0.1
RequestId: 123462
Client: MusicStation 0.4.6 MIDP Nokia/N70
UserGUID: AB12YZ
Get: inbox.data; from=34
以下は、inbox.dataファイルに対する部分要求の一例である。クライアントは、inbox.dataファイルの128バイト目から256バイト目までの全てを要求している。
MSTP/0.1
RequestId: 123463
Client: MusicStation 0.4.6 MIDP Nokia/N70
UserGUID: AB12YZ
Get: charts.data; from=128; to=256
範囲要求を行なう時、クライアントは、返されるデータが要求した範囲であることを期待すべきではない。サーバ応答は返される範囲の詳細を含み、クライアントは、更なる処理に対して自身の要求の範囲情報ではなくサーバ応答の範囲情報を使用すべきである。これは、サーバには異なる範囲のデータを返す理由があるからである。例えば、クライアントが最後に要求してからデータが変更された場合である。
5.1.2.3.サーバへのデータの送出
場合によっては、クライアントはサーバにデータを送出する必要があるだろう。例えば、エラー情報をサーバに送出するためである。クライアントはput行を使用することによりこれを行なえる。
Put行はいくつかの部分を有する。各部分は;(セミコロン)で分離される。
Put: error.data; ackId=1; offset=0; length=160; type="application/octet-stream"
ここで、エラーデータの詳細については図47を参照。
これは、エラーデータをサーバに送出するクライアントの一例である。図48を参照。0及び1のブロックはメッセージの本文を示す。これは、このプロトコルにより転送されるバイナリデータである。このデータの形式は、クライアント実現技術に依存して異なるためこのプロトコルの範囲外である。本文のデータは、位置0から開始し、160バイトの長さを有する。Put行のオフセット値及び長さ値はこの情報を反映する。Put行のコンテンツの種類は、このデータを解釈する方法をサーバに知らせる。
5.1.2.3.1.複数のputを含むデータの送出
クライアントは、複数のリソースをサーバに同時に送出するように要求されてもよい。複数のGet行を使用する方法と同様の方法で、クライアントは複数のPut行を送出してもよい。エラーデータ及び写真をサーバに送出するクライアントの一例に関しては図49を参照。要求の本文において、エラーデータは、写真データより太字のテキストで示される。要求の長さの位置及びオフセットの位置は、このデータのオフセット及びデータの長さをサーバに知らせる。
5.1.2.3.2.パラメータを含むデータの送出
Get行と同様に、Put行はPut上のパラメータをサポートする。これに対する構文は、Get行の構文と同様であり、HTTPクエリ文字列構文でモデル化される。図50において、単一のパラメータ(name="Fave Tracks")を含むJpegの写真を送出するサーバの一例を示す。尚、Put行はGet行と非常に類似するが、Put行は範囲値From及びToをサポートしない。失敗したPutはデータを全て再送出することを要求する。クライアントは、サーバから肯定応答受信を受けないため、Putが失敗したかを認識する(節「サーバ「応答」プロトコル」を参照)。
5.1.2.3.3.クライアント肯定応答
サーバが各クライアント上に存在するデータに関する完璧な知識を常に有することができるように、クライアントはサーバにより送出された各データの受信を通知するように要求される。これは、正常に受信及び格納された各データファイルに対してAck行を1行送出することにより行なわれる。Ack行のパラメータは、サーバがファイルを送出した時にサーバにより割り当てられるackIDである。
MSTP/0.1
RequestId: 123466
Client: MusicStation 0.4.6 MIDP Nokia/N70
UserGUID: AB12YZ
Ack: 2006061911030001CHARTS
この要求は、クライアントが割り当てられた肯定応答ID2006061911030001CHARTSを有するデータファイルを正常に受信及び格納したことを通知することを示す。クライアントは、完全に受信したファイルのみ通知する必要がある。クライアントは部分的に受信したファイルを通知することはない。クライアントは、ファイルを部分的に受信した場合、データの残りの部分に対してGet範囲要求を行なうべきである。全てのデータが受信及び格納されると、クライアントはそのデータに対する肯定応答を送出できる。
5.1.2.3.4.複数のackを含むクライアント肯定応答
要求は複数の肯定応答行を含んでもよい。
MSTP/0.1
RequestId: 123466
Client: MusicStation 0.4.6 MIDP Nokia/N70
UserGUID: AB12YZ
Ack: 2006061911030001CHARTS
Ack: 2006061911030001INBOX
この要求は、クライアントが肯定応答ID2006061911030001CHARTS及び2006061911030001INBOXを含むデータファイルを正常に受信及び格納したことを通知することを示す。
5.1.2.3.5.否定応答の通知
クライアントは、要求したデータファイルを正常に受信及び格納しなかった場合、否定応答の通知をサーバに送出すべきである。
MSTP/0.1
RequestId: 123466
Client: MusicStation 0.4.6 MIDP Nokia/N70
UserGUID: AB12YZ
Nak: 2006061911030001CHARTS
この要求は、肯定応答ID2006061911030001CHARTSのデータファイルの受信又は格納に関する問題があったことをクライアントがサーバに知らせることを示す。この時点でサーバは、このファイルがクライアント上に存在しないことを認識する。
通常、クライアントがNakを送出する場合、Nakの理由を説明する添付のエラーデータを有する可能性が非常に高い。サーバがNakを受信し、エラーデータがない場合、サーバはログファイルの詳細を送出するようにクライアントに要求したいだろう。クライアントが永続的にNakをサーバに送出する場合、サーバは原因の識別を助長するためにクライアント上のログレベルを上げたいだろう。
5.1.2.4.セッション識別子
クライアントがサーバに送出する各要求は、セッション識別子を含むべきである。クライアントは、再起動間でこのセッション識別子を記憶していない。クライアントは、起動後の最初の要求にセッション識別子を含むべきではない。サーバは、新しいセッション識別子を送出し返すことにより応答する。クライアントは、ユーザがクライアントを閉じるまで後続する全ての要求にこの識別子を含めるべきである。
MSTP/0.1
RequestId: 123467
Client: MusicStation 0.4.6 MIDP Nokia/N70
UserGUID: AB12YZ
SessionId: FJSKNBKSKSDKFLSH
Get: inbox.data
この要求は、クライアントがセッション識別子FJSKNBKSKSDKFLSHを事前に割り当てられたことを示す。クライアントがこのセッション識別子を取得する方法に関する更なる詳細については、節「サーバ「応答」プロトコル」を参照。
5.1.3.サーバ応答プロトコル
5.1.3.1.ヘッダ
5.1.3.1.1.プロトコル識別子
サーバ応答において使用されるプロトコル識別子は、クライアント要求のプロトコル識別子と同一であるべきである。クライアントは、MusicStationのプロトコル形式である場合に応答を認識するためにその識別子をチェックすべきである。
MusicStationにより使用されるプロトコル識別子は以下の通りである:
MSTP
5.1.3.1.2.プロトコルバージョン番号
サーバは、種々のバージョンのプロトコルを同時にサポートできる。サーバは、要求において使用されたクライアントと同一のプロトコルバージョン番号で常に応答するべきである。これは、クライアントがサポートすることをサーバが確信できる唯一のプロトコルバージョン番号だからである。クライアントは、使用されるプロトコルバージョンが理解できるバージョンであることを認識するために、プロトコル識別子と共に応答のプロトコルバージョン番号をチェックする必要がある。
MSTP/0.1
これは、サーバがMusicStation伝送プロトコル識別子を送出し且つプロトコルバージョン番号0.1を使用することの一例である。
5.1.3.1.3.応答状態コード
サーバは、各応答と共に状態コードを送出する。状態コードを図51に示す。状態コードは常に4桁である。これは、十分なコードを今後拡張可能にするためである。3桁のコードは、HTTP状態コードとの混同を回避するために使用されない。状態コードは拡張可能であり、新しいコードは随時追加される。サーバは、クライアントが理解する状態コードのみがクライアントに送出されることを確認する。状態コードは、2つの部分にグループ化される。数字1で開始するコード(すなわち、1000〜1999)は、正常な動作に関連するコードに対して使用される。数字2で開始するコード(すなわち、4000〜5999)は、障害を起こした動作に対して使用される。
コードの障害の範囲内で、2つの更なるグループが存在する。数字4で開始するコード(すなわち、4000〜4999)は、クライアントに障害があった場合の障害に対して使用される。数字5で開始するコード(すなわち、5000〜5999)は、サーバに障害があった場合の障害に対して使用される。以下において、この例はサーバからの正常な応答を示す。
MSTP/0.1
StatusCode: 1000
5.1.3.1.4.応答識別子
クライアントが受信した応答が行なった要求に応答するものであることを確認できるため、サーバからの各応答はクライアントの要求識別子をエコーする。
MSTP/0.1
StatusCode: 1000
ResponseId: 234567
この例は、要求ID234567のクライアント要求に対するサーバ応答を示す。
5.1.3.2.セッション識別子の設定
クライアントが起動される度にクライアントから行なわれる第1の要求は、セッション識別子を含まない。サーバは、新しく割り当てたセッション識別子によりこの要求に対して応答すべきである。
MSTP/0.1
StatusCode: 1000
ResponseId: 234568
SetSessionId: FJSKNBKSKSDKFLSR
この応答は、サーバがセッションIDをFJSKNBKSKSDKFLSRに設定することを示す。クライアントがSetSessionId行を含む任意の応答を受信する場合、クライアントは新しいセッションIDを使用して迅速に開始する必要がある。サーバが既にセッションIDを有するクライアントに新しいセッションIDを割り当てる場合がある。例えばこれは、セッションがサーバ上でタイムアウトになった場合に起こる。
5.1.3.3.データの送出
サーバからの殆どの応答は、少なくとも1つのデータオブジェクトファイルを含む可能性が高い。それらのデータファイルは、応答の本文において送出される。クライアントにより要求において送出されるGet行毎に、サーバはSent行を返すべきである。サーバは、データと共に送出する肯定応答IDを生成する必要がある。これは、サーバがAck行を受信した時に確認されるデータを認識するためである。送出されたデータファイルを一意に識別するようにそれら肯定応答IDを生成することは、サーバの役割である。
Sent行は、クライアントがデータを見つけられるデータの本文にバイトオフセット位置を含む必要があり、更にデータの長さ及びデータのコンテンツの種類を含む必要がある。バイトオフセット及び長さは、処理を相対的に容易にするためMusicStationのプロトコルにおいて使用される。マルチパートMIMEにおいて使用されるような境界パラメータよりも優先的にこれが使用されてきた。図52のこの応答は、サーバがnews1.dataファイルを送出することを示す。
5.1.3.3.1.応答における複数のデータファイルの送出
サーバは、単一の応答で複数のデータファイルを送出してもよい。これは、クライアントが複数のPut行を使用してリソースをサーバに送出するのと同様に複数のSent行を使用して行なわれる。
図53の応答は、サーバがnews2.dataファイル及びnews3.dataファイルを送出することを示す。
応答の本文において、データを太字のテキストで示す。クライアントは、Sent行のオフセットパラメータ及び長さパラメータのためにどの本文データがどのデータファイルに対するものかを認識する。
5.1.3.3.2.部分データ要求
クライアント要求が特定の範囲のデータに対するものであり、サーバがその範囲のデータのみを送出する場合、サーバ応答は送出されたデータの範囲を示す必要がある。図54を参照。この応答は、返されたデータが160バイト目から末尾までのデータであることを示す。このデータは40バイトあり、0バイト目(すなわち本文の開始)からデータの本文中に位置付けられる。尚、オフセット値はデータの本文中の指標であり、範囲値とは関係ない。
値の範囲は、応答のデータがデータファイルの末尾までではないことを示すためにSent行において使用されてもよい。クライアントは、常に応答ヘッダを読み、クライアント送出要求ヘッダではなく応答ヘッダを使用してデータを処理すべきである。これは、サーバがデータファイル全体を返す理由がある場合に要求された範囲が返された範囲ではないことがあるためである。
5.1.3.3.3.クライアントへのデータのプッシュ
サーバは、クライアントにプッシュしたいデータに対するSent行を送出してもよい。これは、クライアントが要求において対応するGet行を送出しなかったSent行をサーバが送出することにより行なわれる。図55を参照。この応答は、サーバがnews1.dataファイル及びcommand.dataファイルを送出することを示す。プッシュされた任意のデータは、常に、応答本文において要求されたデータに追従すべきである。
5.1.3.4.肯定応答
5.1.3.4.1.受信データの確認
クライアントがサーバにデータを送出した場合(例えば、エラーデータ)、サーバがそのデータを正常に受信したことをクライアントが認識するために、サーバはそのデータを受信したことを通知する必要がある。
MSTP/0.1
StatusCode: 1000
ResponseId: 234569
Ack: 3
この応答は、クライアントがPut行で送出し且つ肯定応答ID3を割り当てたデータファイルをサーバが受信したことを通知することを示す。
5.1.3.4.2.否定応答通知の送出
同様に、サーバはデータの受信又は格納に関する課題がある場合にデータの受信の否定応答を通知できる。これにより、クライアントはデータを再送出できる。
MSTP/0.1
StatusCode: 1000
ResponseId: 234569
Nak: 4
この応答は、クライアントが肯定応答ID4を割り当てたデータファイルの受信が失敗したことをサーバが通知することを示す。
5.1.3.4.3.肯定応答要求
サーバがクライアントにデータを送出し、クライアントからの異なる要求IDの次の要求において、サーバがそのデータに対する肯定応答を受信しなかった場合、サーバはデータを受信したか否かを通知するようにクライアントに要求できる。これは、サーバが応答においてAckRequired行を送出することにより行なわれる。
MSTP/0.1
StatusCode: 1000
ResponseId: 234574
AckRequired: 20060619111230NEWS2
これは、肯定応答ID20060619111230NEWS2で先に送出されたデータファイルを確認するようにサーバがクライアントに要求することの一例である。尚、サーバはデータファイルの肯定応答を要求する必要はなく、クライアントは自動的に送出すべきである。AckRequired行は、接続が完全でなく、先にクライアントから送出された肯定応答が何らかの理由でサーバに到達していない場合に使用される。
5.1.4.接続レベル
クライアントは、種々のレベルの接続速度、信頼度、帯域幅及び待ち時間を有する。各クライアントデータオブジェクト要求は、関連付けられた事前定義済み優先順位を有する。クライアントは、利用可能な帯域幅及び正常な接続数に基づいて接続性レベルの閾値を動的に変更する。
優先順位は以下の通りである:
・IMMEDIATE−クライアントは、この要求を迅速に送出するべきであり、この要求をキュー登録するべきではない。これは、ユーザにより要求された画面を示すために必要とされるデータオブジェクトを要求するのに使用されるべきである。
・SOON−このクライアントは、ネットワーク速度/帯域幅が利用可能である場合にこの要求を迅速に送出してもよい。この情報は、クライアントにプッシュするデータオブジェクトを決定する際にサーバにとって有用である。
・WHENEVER−クライアントは、重要な期間にこの情報をサーバに送出する必要はない。サーバは、この情報を通知される必要があるが、データは次の要求と共に送出できる。
クライアントは、大量のデータを転送するのにかかる時間に基づいて帯域幅を計算できる。これは、オーディオファイルを転送する時に行なわれるのが最適だろう。クライアントは、帯域幅及び正常な接続数、並びに優先度がより高い要求を送出するために割り込まれる接続数に基づいて接続性閾値を計算できる。適切な接続性を有するクライアントは、優先度SOON又はそれ以上の全てのメッセージが迅速に送出されることを可能にする接続性閾値を有する。低い接続性を有するクライアントは、IMMEDIATEメッセージのみが迅速に送出されることを可能にする接続性閾値を有する。
5.1.5.コマンドデータオブジェクト
MusicStation MIDP 0.4.6において、存在するデータオブジェクトのみがコンテンツデータオブジェクトである。新しい種類のデータオブジェクトは、接続されたMusicStationバージョンにおいて必要とされる。それらは、サーバが種々のデータを要求できるようにするため又はクライアントに送出できるようにするために必要とされる。それらデータオブジェクトは、MusicStation伝送プロトコルにより送出されるが、MusicStation伝送プロトコルの一部ではない。種々のコマンドオブジェクトが種々のクライアントの実現に対して使用されるが、同一の伝送プロトコルが全ての実現に対して使用されるため、それらデータオブジェクトはプロトコルの一部ではない。
5.1.5.1.サーバコマンドデータオブジェクト
コンテンツデータオブジェクト及び画像ファイルに加え、サーバは以下のコマンドをクライアントに送出できる必要がある:
・Please send total file space size to the server.
・Please send remaining file space size to the server.
・Please send log file to the server.
・Please send errors to the server.
・Please change client logging level.
・Set property.
・Get property.
・Please delete a file.
・Please send details of what files you have.
・Please send bandwidth details.
・Please change connection level.
・Please request data file.
・Please request audio file.
・Registration data.
新しい機能性がクライアント及びサーバに追加されると、項目はこのリストに追加される可能性が高い。
尚、サーバはクライアントよりクライアントの接続詳細を認識している場合が多い。例えば、Nokia N80のMIDPクライアントは、HTTP接続がオペレータゲートウェイを介するか又は無線LANを介するかを認識する手段を有さない。サーバは、クライアント接続が周知のオペレータIPアドレス範囲からのものであるため、その接続がオペレータゲートウェイを介するかを認識する。
5.1.5.2.クライアントコマンドデータオブジェクト
クライアントは、以下のデータをサーバに送出できる必要がある:
・プレイリストデータ
・画像ファイル
・全体のファイル空間
・利用可能なファイル空間
・ログファイルデータ
・現在のロギングレベル
・エラー情報
・他のファイルのための空間を解放するために削除されたファイルに関する情報
・現在の帯域幅レベル
・使用されるデータファイル
・示される画面
・プロパティ値
・現在のクライアント時間
・登録データ
5.1.5.3.タイミング
サーバは、種々のクライアント事象が発生した時間を記録する。クライアントは、グリニッジ標準時の1970年1月1日の午前0時からの秒数で時間をサーバに報告すべきである。例えばMIDP1.0において、これは以下により取得される:
Calendar.getInstance(TimeZone.getTimeZone("GMT")).getTime().getTime()
MIDPの仕様書において、GMT時間帯がサポートされる必要があるが、何らかの理由によりサポートされない場合にハンドセットがクライアント時間を得るために単純に以下を使用できることが示される:
(newDate()).getTime()
各クライアントは、自身の時間設定を使用してタイミングデータを格納する。このデータがサーバに転送される場合、サーバはそれら事象タイミングを自身の形式に変換して格納できる。
サーバは、クライアントローカル時間を自身の時間と比較することによりそれを行なう。クライアント報告時間とサーバ時間とのデルタが計算される。現在のクライアント時間コマンドオブジェクトは、サーバが計算した時間が可能な限り正確になるようにデータがサーバに送出された時間を含む必要がある。
5.2.クライアントデータの同期
5.2.1.概要
MusicStationの殆どの画面はデータによりポピュレートされる。このデータは、サーバから転送され、クライアント上のファイルにローカルに格納される。サーバ上のデータが変更される場合、クライアント上のファイルはそれら変更を反映するために更新される必要がある。更に、ユーザはクライアント上のファイルを作成及び変更できる。例えば、プレイリストにトラックを追加する。それら変更は、確実にサーバに通信される必要がある。ユーザは、MusicMateを介してデータに対して変更を行なえる。それら変更は、装置上で行なわれた変更と矛盾する可能性がある。クライアント及びサーバはデータを同期させる必要があり、サーバは任意の矛盾解決策を処理する。
5.2.2.データオブジェクト
データオブジェクトは、サーバ/クライアント間及びクライアント/サーバ間で渡されるオブジェクトの基本単位である。それらオブジェクトは、クライアントインタフェース内で表示されるあるエンティティ(アーティスト、アルバム等)又はデータの表現をカプセル化し、サーバに送出し返される必要がある(ユーザが規定したプレイリストのように)。それらは、サーバとクライアントとの間で渡され、セキュリティ上安全に電話機に格納される。データオブジェクトは、クライアント上で何かを更新する必要がある時にサーバによりクライアントに配布される。
データオブジェクトは、自身をファイルに書き込むことができ、クライアントとサーバとの間でデータを転送するために使用される。ファイルヘッダは、ファイルを書き込むのに使用されるデータオブジェクトバージョンを含む。データオブジェクトの最新のバージョンは、サポートされる全てのバージョンでファイルを読み出すことができ且つ書き込むことができる。バージョンは読み出し/書き込み方法の各々に渡され、それにより、バージョンに基づいて読み出されたものか又は書き込まれたものを切り替えることが可能になる。
この方法を使用すると、サーバは古いバージョンのクライアントに対してデータオブジェクトファイルを書くことができる。対象バージョンはファイルヘッダに設定され、各書き込み方法は、出力がそのバージョンに対する形式であることを保証する。
サーバは、同一の方法を使用して古いクライアントにより書き込まれたファイルを読み出せる。ファイルがデータオブジェクトに読み込まれた場合、読み出し方法はバージョンを使用してファイルから読み出された属性を切り替える。
データオブジェクトは、MusicStationにおいて画面をポピュレートするのに使用されたデータを含む。それらは、ファイル又はストリームへの書き込み及びファイル又はストリームからの読み出しを可能にする方法を使用する。それらオブジェクトは、クライアントとサーバとの間でデータを転送するため、並びにメモリカード上のファイルにローカルにデータをロード及び格納するために使用される。
5.2.2.1.データオブジェクトグループ
データオブジェクトは、他のデータオブジェクトの集合を含むことができる。例えば、ArtistデータオブジェクトはReleaseの集合を含む。同様に、ReleaseはTrackの集合を含む。図56を参照。データオブジェクトは、オブジェクトのリストを格納できる。例えば、ArtistGroupはアーティストのリストを格納する。「My Artists」画面は、ArtistGroupデータオブジェクトを使用して、ユーザが所有する全てのアーティストを表示する。ArtistがReleaseを含み、ReleaseがTrackを含むため、Artist及びReleaseもまたデータオブジェクトグループである。
5.2.2.2.データオブジェクトビュー
データオブジェクトビューは、データオブジェクトグループのソート及びフィルタリングされたビューを提供する。データによりポピュレートされるMusicStationの全ての画面は、1つ以上のビューにより支持される。データオブジェクトグループに対する任意の変更がビューに伝播され、ビューはそれら変更を反映するために画面を更新する役割を有する。
これにより、データオブジェクトがロードされる直前に画面を表示できる。データオブジェクトがバックグラウンドでロードされるため、それら変更の結果として画面が更新される。例えば「My Artists」画面のアーティストのリストは、各アーティストがロードされると増加する。
5.2.3.データオブジェクトファイル
各データオブジェクトグループは、ファイルにローカルに格納される。例えば「My Artists」ArtistGroupは自身のファイルに格納される。各々が平均で10個のトラックを含む2個のアルバム(ユーザは2つのアルバムを所有する必要はないが、これら2つのアルバムはアーティストデータオブジェクトに存在する。)を有する100人のアーティストをユーザがが所有する場合、このデータオブジェクトは迅速に非常に大きくなってしまう。このArtistGroupオブジェクトが書き込まれる場合、大きなファイルを作成し、ファイルから再び読み込まれる場合、ポピュレートするのに時間がかかる。
別の方法は、オブジェクトの各集合を自身のファイルに格納することである。従って、「My Artists」の例において、アーティストのリストはファイル(userartists.data)に格納されるが、各アーティストのアルバムのリストは格納されない。アルバムのリストは、各々が各アーティストに対するものである別個のアーティストファイル(例えば、artist.123.data)に格納される。各アルバムは、トラックを含む自身のファイル(release.4567.data)に格納される。図57を参照。
各データオブジェクトが自身のファイルに格納されるため、オブジェクトグループはデータを複製する必要なく同一のデータオブジェクトを使用できる。例えば、「Snow Patrol」は「My Artists」グループ及び「Popular Artists」グループに存在する。ユーザが「Eyes Open」アルバムから「Chasing Cars」を購入する場合、「Eyes Open」アルバムデータファイルのみを更新する必要がある。ユーザが「Popular Artists」にナビゲートし、その後「Snow Patrol」にナビゲートする場合、画面は、ユーザが「Chasing Cars」を購入したことを示す。図58を参照。
しかし、この方法は自身の課題を提示する。「My Artists」データファイルがアーティストIDのリストのみを含むため、「My Artists」画面をポピュレートするために各アーティストファイルを開き、各アーティストの名前を読み出す必要がある。この方法に関していくつかの重要な問題が存在する。第1に、ローカルに格納された全てのアーティストファイルが必要であるため、欠落しているファイルはサーバからダウンロードされる必要がある。それらファイルなしでは、アーティスト名を表示できない。第2に、リスト中の各アーティストに対して新しいファイル接続を開くことは相対的に費用がかかるため、この方法は遅くなる。
これを回避するために、「My Artists」データファイルにアーティスト名及びIDを格納できる。これは、「My Artists」リストを迅速に構築できることを意味する。しかし、ここでは名前がアーティストグループデータファイル及びアーティストデータファイルの双方に格納されるため冗長性が与えられる。図59を参照。
また、別のプロパティのリストをソート又はフィルタリングしたい場合がある。例えば「Search Results」はユーザが所有するアーティストをリストの上部に示す。そのためには、リストを表示するのに名前だけでなく所有者プロパティも必要である。これは、グループデータファイルに追加する更なる冗長データである。
オブジェクトが多くのグループに格納されるため、その冗長性を認識する必要があり、クライアント又はサーバが更新の役割を有することを確認する必要がある。一般に、サーバはそれら更新の役割を果たし、それら更新はクライアント要求に応答してクライアントに転送される。クライアントがオフラインの時にそれら変更が行なわれることが可能である場合は常に、クライアントはそれら変更を伝播する役割を有する。これらの例において、クライアントはオンラインであってもオフラインであってもローカルファイルを更新する。例えば顧客がプレイリスト画像を変更する場合、そのプレイリストを含む任意のプレイリストグループが更新される必要がある。
5.2.4.データオブジェクトの転送
データオブジェクトは、接続されたMusicStationプロトコルを使用してクライアントとサーバとの間で転送される。クライアントとの殆どの通信はHTTPを介すると予想されるため、クライアントは初期要求を行なう役割がある。
5.2.4.1.クライアント要求
クライアントは、オブジェクトが複製されるメモリカード上の場所を認識しているとは限らない。例えば「Popular Artists」グループはクライアントにプッシュされたが、クライアントは「Popular Artists」を開いておらず、ユーザが「Snow Patrol」による「Chasing Cars」を購入した時にそのことを反映するために「Popular Artists」データファイルが更新される必要があることを認識していない。しかし、サーバは、「Popular Artists」データファイルを構築し且つそのファイルをクライアントに送出したためその知識を有している。
そのため、サーバはサーバ上のレコードが変更された時にクライアント上のファイルを更新する役割を有する。顧客が「Chasing Cars」を購入した時、サーバはクライアント上のどのデータファイルが「Chasing Cars」を含むかを計算し、更新する必要がある。サーバは、購入応答と共にそれら更新オブジェクトをプッシュするか又は可能な時にそれらファイルを更新するようにクライアントにコマンドを送出する。応答は、要求の結果として変更された全てのデータオブジェクトを含むのが好ましい。クライアントがオブジェクトを設定し且つ変更された全てのオブジェクトを取得することを示す図60を参照。
5.2.4.2.データオブジェクトのプッシュ
クライアントがオフラインの間にレコードがサーバ上で更新され、それら変更がクライアントに伝播される必要がある場合、サーバは次の要求においてそれら変更をクライアントにプッシュする。例えば顧客がMusicMateから「Chasing Cars」を購入する場合、クライアントが次にサーバに接続した時に、更新される必要がある任意のオブジェクトはクライアントにプッシュされる。クライアントがオブジェクトを要求し且つ変更された全てのオブジェクトを取得することを示す図61を参照。
5.2.4.3.オフラインモード
クライアントがオフラインの時、顧客はデータを変更できる殆どの動作を実行できない。例えば、トラックを購入できない。しかし、顧客はプレイリストを作成、編集及び共有できるべきである。クライアントは、クライアント上で編集されたがサーバに送出されていないファイルのリストを維持する必要がある。クライアントが次に接続した時、クライアントはそれらファイルをサーバに送出する必要がある。クライアントにより行なわれた全ての変更は、クライアントが次に接続した時にサーバに送出される。サーバは、任意の変更ファイルをクライアントに返す。クライアントがオフラインモードで変更されたオブジェクトを送出することを示す図62を参照。
5.2.5.変更ログ
サーバは、クライアントに送出されたオブジェクトのリストを維持する。それらオブジェクトの1つ以上がサーバにおいて変更された場合、変更されたオブジェクトは可能な限り早くクライアントに配布される必要がある。同様に、クライアントはクライアント上で作成又は変更され且つサーバにおいて更新される必要があるオブジェクトのリストを維持する。
object_change_logテーブルには、迅速に送出される必要のない変更が格納される。これは、新しいアーティストの追加等の一般のシステムの広範な変更に対するものである。このテーブルは、いくつかのデータベースから行なわれた変更のマージを処理する。それら変更は、ユーザセッションが次に作成された時に通信される。顧客別変更は、customer_object_change_logで行なわれる。それら変更は、迅速にクライアントに通信される。
5.2.5.1.サーバオブジェクト
サーバ上でのオブジェクトに対する変更はobject_change_logテーブルに格納される。1つ以上のオブジェクトデータファイルに影響を及ぼす可能性のあるレコードが挿入、更新又は削除されると必ず、1つ以上のレコードがこのテーブルに挿入される。このテーブルにより、変更は例えばステージングサーバ上で別個のデータベースにおいて行なうことができ、変更がインポートされると、object_change_logもインポートされる。object_change_logを示す図63を参照。
クライアント上に存在するデータオブジェクトのリストは、サーバにおいてcustomer_objectテーブルに格納される。セッションがクライアントに対して作成されると必ずcustomer_objectテーブル及びobject_change_logテーブルをクエリして、この顧客に対して変更されたオブジェクトを判定する。このクエリは、単一のオブジェクトに対していくつかの変更レコードを返すことが可能である。この場合、最後の変更レコードのみを考慮する必要がある。変更されたオブジェクトは、クライアントに返される必要がある。customer_objectを示す図64を参照。
クライアントに返される必要のあるオブジェクトは、customer_object_change_logテーブルに挿入される。1人の顧客にのみ影響を与えるオブジェクトに対して変更が行なわれる場合、レコードはそのテーブルに挿入されてもよい。例えば、顧客がトラックを購入する場合、そのトラックを参照するオブジェクトデータファイルを更新する必要がある。customer_object_change_logを示す図65を参照。
クライアントから要求を受信すると、応答において全ての変更オブジェクトを返したい。状況によっては(帯域幅が制限されるか又はオブジェクトが大きい場合)、後で変更オブジェクトを要求するようにクライアントにコマンドを送出してもよい。多くのオブジェクトがクライアントに返される必要がある状況においては、最初に送出されるオブジェクトを判定するためにpriorityフィールドが使用される。
クライアントに対する変更オブジェクトのリストを取得するために、acknowledgement_dataがヌルであるcustomer_object_change_logテーブルから選択する。最初は、object_modified_dateは各object_guidに対して複製され、別のテーブルに分離されるように見える。しかし、性能の理由から、クライアント上のオブジェクトデータファイルは2つ以上のテーブルのデータを含み、オブジェクトは1つのクライアント上で更新を必要とし、別のクライアント上では必要としなくてもよい。例えば、アーティストリストは、ユーザが所有するアーティストを上部にしてソートされるように各アーティストに対する所有権情報を含む。顧客があるアーティストによるトラックを購入する場合、その顧客のアーティストリストのみが変更され、更新される必要がある。
object_change_logテーブル及びcustomer_object_change_logテーブルを更新するために、1つ以上の以下の方法が使用できる:
・テーブルにおけるデータベーストリガは、データが追加、更新又は削除された時にobject_change_logテーブルをポピュレートできる。
・バッチ処理は、例えば新しいコンテンツデータのインポート時にobject_change_logテーブルをポピュレートする。
・エンティティリスナ又はコールバック方法は、EJB永続(persist)、更新(update)及び除去(remove)事象において使用される。
殆どの場合、コールバック方法が最適であるが、データロード等の大きな挿入の場合には別の方法を使用する方が効率的だろう。
5.2.5.2.クライアントオブジェクト
クライアントは、サーバに送出される必要のある変更のログを更に保持する必要がある。クライアントはこのリストをRMSに保持する。各変更は、ChangeLogRecordオブジェクトに格納される。図66を参照。objectGUIDは、クライアントがオブジェクトを追加していない限りサーバ上のそのオブジェクトを識別するために使用される同一のGUIDである。その場合、クライアントは、サーバが生成した新しいGUIDを有するオブジェクトをサーバが更新するまで使用される一時的なGUIDを割り当てる。クライアントがサーバに接続すると必ず、クライアントは変更ログの全てのオブジェクトを送出する。サーバは、各オブジェクトに対する肯定応答で応答すべきである。クライアントは肯定応答を受信すると、対応するChangeLogRecordを削除する。
5.2.6.矛盾の解決策
同一のオブジェクトがクライアント及びサーバにおいて変更されたために矛盾が発生した場合、サーバはその矛盾を解決する役割を有する。サーバは、更新オブジェクトを送出することにより解決策をクライアントに通信する。殆どの更新をサーバに管理させることにより、矛盾が発生する状況の数を最小限にしようとする。いくつかの場合においてのみ、クライアントがオブジェクトを変更し、その変更をサーバに送出できる。
プロトタイプにおいて、クライアントの変更は以下に制限される:
1.プレイリストの作成
2.プレイリストの編集
3.プレイリストの削除
4.顧客プロファイル(キャッチフレーズ、アイコン)の編集
5.トラックの評価
矛盾解決戦略を設計する場合、以下の種類の矛盾を考慮する必要がある:
・レコードに対する更新が別の更新と矛盾する場合、更新の矛盾が発生する。
・レコードに対する更新が矛盾するレコードにより一意性制約に違反する場合、一意性の矛盾が発生する。
・削除されたレコードが更新される場合、削除の矛盾が発生する。
5.2.7.ユースケース
オブジェクトが更新又は削除されると必ず、object_change_logテーブル又はcustomer_object_change_logテーブルはその変更を反映するために更新される必要がある。クライアント上のオブジェクトデータファイルが冗長データを含むため、変更は2つ以上のオブジェクトに影響を及ぼす可能性が高い。
5.2.7.1.サーバ変更
5.2.7.1.1.アーティストによる新しいアルバムの発売
アーティスト「Snow Patrol」は、アルバム「Eyes Open」を発売する。「Snow Patrol」に対するアーティストデータファイルを含む全てのクライアントが更新される必要がある。まず、「Snow Patrol」及び「Eyes Open」に対する変更レコードをobject_change_logテーブルに挿入する。図67を参照。
「Snow Patrol」アーティストファイルを有する顧客がサーバに接続し、セッションが作成されると、customer_data_objectテーブルはobject_change_logテーブルと結合され、その顧客に対して変更されたオブジェクトを見つける。
SELECT FROM customer_object, object_change_log
WHERE customer_object.object_guid = object_change_log.object_guid AND
customer_object.deleted_date IS NOT NULL AND
customer_object.object_modified_date < object_change_log.object_modified_date;
このクエリは、「Snow Patrol」object_change_logレコードを返す。このレコードは、customer_object_change_logテーブルに挿入される。図68を参照。
customer_object.modified_dateフィールドは、「18/07/2006 13:16:33」に更新される。
「Snow Patrol」データファイルはクライアントに送出され、customer_object_change_log.acknowledgement_idフィールドは設定される。クライアントがファイルを確認すると、customer_object_change_log.acknowledgement_dateフィールドは設定される。
5.2.7.1.2.アーティストの除去
アーティスト「Cliff Richard」は、MusicStationから除去される。「Cliff Richard」データファイルを格納しているか又は「Cliff Richard」を含むリストを有する全てのクライアントは、更新される必要がある。
object_change_logテーブルは更新され、削除レコードは以下のオブジェクトに対して挿入される:
Artist
Artist.getAlbums()
Artist.getLists()
Artist.getAlbums().getLists()
Artist.getPlaylists()
5.2.7.1.3.顧客によるプレイリストの共有
顧客は、新しいプレイリスト「Sunday Stroll」を作成して共有することを決定する。クライアントは、新しいプレイリストをサーバに送出する。任意の変更は、次の要求でサーバに送出される。プレイリストに追加するトラックを閲覧している時、サーバと通信している可能性が高く、変更は毎回送出される。
Playlistオブジェクトが作成されると、object_change_logテーブルは更新され、レコードは顧客のデータオブジェクトファイルを有する全てのクライアントに対するcustomer_object_change_logに挿入される。
5.2.7.1.4.顧客によるプレイリストの変更及び共有
顧客は、新しいプレイリスト「Sunday Stroll」を作成して共有することを決定する。クライアントは、新しいプレイリストをサーバに送出する。任意の変更は、次の要求でサーバに送出される。プレイリストに追加するトラックを閲覧している時、サーバと通信している可能性が高く、変更は毎回送出される。
Playlistオブジェクトが作成されると、object_change_logテーブルは更新され、レコードは、顧客のデータオブジェクトファイルを有する全てのクライアントに対するcustomer_object_change_logに挿入される。
5.2.7.1.5.顧客によるプレイリストの共有
顧客は、新しいプレイリスト「Sunday Stroll」を作成して共有することを決定する。クライアントは、新しいプレイリストをサーバに送出する。任意の変更は、次の要求でサーバに送出される。プレイリストに追加するトラックを閲覧している時、サーバと通信している可能性が高く、変更は毎回送出される。Playlistオブジェクトが作成されると、object_change_logテーブルは更新され、レコードは、顧客のデータオブジェクトファイルを有する全てのクライアントに対するcustomer_object_change_logに挿入される。
5.2.7.1.6.顧客による言語の変更
顧客は、異なる言語を選択する。言語別データを含む全てのファイルを更新したい。メッセージプロパティファイル及びエディタキャプションの双方が、その変更を反映するために更新される必要がある。プレイリストのみがクライアント上にエディタキャプションを表示するため、エディタキャプションを有するクライアント上の任意のプレイリストに対して、レコードがcustomer_object_change_logに挿入される。
5.2.7.1.7.サーバがトラックを削除中に顧客がトラックをプレイリストに追加
ユーザは、オフライン中にトラックTをプレイリストに追加する。その間に、サーバはトラックTを削除する。Tが削除された場合、レコードがobject_change_logに挿入される。クライアントが更新プレイリストを送出すると、object_change_logのレコードとその変更とを比較し、プレイリストからトラックを削除して送出し返す。顧客はそのことを通知されず、単にトラックが消える。
5.2.7.1.8.サーバがトラックの名前を変更中に顧客がトラックをプレイリストに追加
ユーザは、オフライン中にトラックTをプレイリストに追加する。その間に、サーバはトラックTの名前を変更する。Tの名前が変更された場合、レコードがobject_change_logに挿入される。クライアントが更新プレイリストを送出すると、object_change_logのレコードとその変更とを比較し、プレイリストのトラックの名前を変更して送出し返す。
5.2.8.装置メモリ管理
装置は、格納するために残された記憶容量をサーバに通信できる。サーバはその情報を使用して、更新を配布する時に任意のファイルがクライアントから削除されるべきかを決定する。customer_objectテーブルのobject_last_usedフィールドは、クライアントが特定のオブジェクトを最後に使用した日付を格納する。このフィールドは、クライアントからサーバに送出されたログデータからポピュレートされる。サーバはこのデータを使用して、削除されるべきファイルを判定する。サーバは他の方法を更に使用して、削除されるべきファイル、例えばいずれのリストにも存在しない記事等を予想してもよい。
クライアントは、最後に使用したファイルのリストを更に維持し、メモリが枯渇する前にそれらファイルを削除できる。このリストはRMSに格納され、相対パス及びファイル名によりファイルを参照する。ファイル名から任意の意味を除去することを意図しているため、パス及びファイル名は短くなる。これは、サーバ上での削除論理に問題がある場合に安全弁としての役割を果たす。
5.3.不完全なダウンロード
5.4.クライアントロギング
クライアント上でユーザ動作、事象及び例外をログ記録し、以下の目的でそれらをサーバに送出する必要がある:
・テスト中の情報のデバッグ
・顧客のサポートのための情報の提供
・報告及び推薦のための使用データの収集
5.4.1.Logger
Loggerオブジェクトは、クライアント上でのロギングを制御するために使用される。それは、DataObjectSetであり、MSTPを使用してサーバと同期される。
Loggerは以下の属性を含む:
・Level:ログが格納されるレベル、より低いレベルの事象は破棄される。
*DEBUG:アプリケーションをデバッグするのに有用な事象
*INFO:アプリケーションの進捗を強調表示する情報メッセージ
*WARN:潜在的な問題が存在することを示す
*ERROR:エラーが発生したが、アプリケーションは継続するように管理される
*OFF:何もログ記録されない。
・Priority:ログがサーバに送出される頻度を制御する
*MIN:クライアントがサーバに対して次に要求を行なう時又はmaxSizeに到達した時
*NORMAL:5分毎(又はMINと同様)
*MAX:30秒毎(又はMINと同様)
この挙動は、プロパティにより制御され且つ調整される
・MaxSize:クライアント上に格納する最大レコード数
・TimeOffset:サーバとクライアントとの時間差
・LogRecordes:ログ自体
Loggerは、クライアントログ毎にLogRecordを含む。LogRecordは、以下の属性を含む:
・Message:起こったことに関する信頼できる説明
・Level:このログのレベル
・Date:クライアント時間及びTimeOffsetを使用して計算されたサーバ時間
・SessionId:この事象(ある場合には)が発生した時のサーバsessionId
・EventTypeGuid:この事象(ある場合には)に対するevent_typeテーブルにおける識別子
・Parameters:この事象に対して関連するパラメータ
図69を参照。
5.4.2.クライアントのデバッグ
クライアントがテストしている間、エラーが発生した時に起こっていることを理解でき且つそれらをMantisバグ報告に含めることができるように、テスタがクライアントログを容易に閲覧できるようにする必要がある。
クライアントは以下をログ記録する:
・タスクを実行するのに必要とされる全てのパラメータを含むタスク
・コマンドを実行するのに必要とされる全てのパラメータを含むコマンド
・全ての関連する情報を含む例外
各LogRecordは、インシデントとしてログ記録され、インシデントモニタのウェブインタフェースを使用してテスタにより閲覧される。各レコードがサーバ時間を使用してログ記録されるため、インシデントは日付で順序付けされ、クライアント及びサーバ動作のリストを行なわれた順で与える。
5.4.3.カスタマーサポート
顧客がカスタマーサポートと連絡を取る場合、カスタマーサポートがクライアントにより生成された最後のLogRecordを見られるように、クライアントからサーバにLoggerオブジェクトをプッシュする必要がある。クライアントはプッシュを開始する必要があるが、これは、ログ優先度がMINに設定されている場合にはしばらく行なうことができない可能性がある。従って、Loggerオブジェクトを掲示するようにクライアントに命令する方法を必要とする。
ユーザの状況を再作成するために十分な情報をログ記録する必要がある。この情報は、LogRecord.parametersハッシュテーブルに格納される。eventTypeGuid属性が設定される場合、レコードはcustomer_eventテーブルに挿入され、パラメータはcustomer_event_valに挿入される。事象ロギングがクライアントに対する応答を遅延させないように、customer_event及びcustomer_event_valに挿入するためにキューを使用する。例外は、customer_logger.priorityがMAXに設定される場合である。この場合、ユーザは事象が発生した時にその事象の認識を希望し、それらレコードはデータベースに直接挿入される。
5.4.4.使用データ
クライアント使用データは、事象テーブルにおいてトリガを使用してポピュレートされる。従って、例えば顧客がトラックを再生する事象を受信した場合、customer_track.play_countが増分される。
5.4.5.データベース必要条件
カスタマーサポートは、クライアントにより生成されるロギング及びそれがサーバに送出される頻度を制御できる必要がある。これは、customer_loggerテーブルを使用して制御される。図70を参照。更新されたLoggerオブジェクトがクライアントにプッシュされるように、このテーブルが変更される度にレコードはcustomer_object_logに挿入される。
6.DRM
6.1.概要
MusicStationは、移動電話を使用するソフトウェアアプリケーションであり、これによりユーザは、モバイルネットワークを使用して移動中に電話機において音楽を発見及び管理でき且つ聴くことができる。Omnifoneは、特にモバイルネットワークオペレータ(MNO)と協力してMusicStationを販売し、MusicStationのユーザが最大で最良の範囲の音楽を入手可能であることを保証するために音楽業界と密接に協力している。そのようなデジタル音楽メディアの膨大なライブラリは非常に貴重であり、支払いを行なう適正なユーザがシームレスなアクセスができるようにする一方で盗用及び悪用から保護される必要がある。デジタル権利管理(DRM)は、デジタルメディアの合法的な配信及び使用を制御し且つ容易にする方法を提供する。
MusicStationに対する主なハンドセット技術プラットフォームは、J2ME(Java 2 Platform Micro Edition)である。このプラットフォームは、移動電話ハンドセットの最大の使用範囲を提供するため選択された。本明細書において、保護コンテンツを配信し且つそのコンテンツを使用する権利をセキュリティ上安全に発行するために、OmnifoneのJ2ME MusicStationハンドセットアプリケーション及び関連するネットワークサービスにより使用される方法を説明する。
MusicStationのDRMは、OMA(オープンモバイルアライアンス)DRM v2の仕様の実現例である。この仕様は、移動装置に対してコンテンツを保護する好適な方法としてモバイル業界及び音楽業界の双方により広く採用されている。OMA DRM v1はハンドセットメーカにより広く採用されているが、書き込み時には、OMA DRM v2をサポートするハンドセットは殆どない。このため、本明細書で説明するOMA DRM v2の実現例は、OmnifoneがMusicStationハンドセットアプリケーション及び関連するMusicStationネットワークサービスに内蔵したものである。
6.1.1.DRMの概要
コンテンツが配布される前に、無許可のアクセスから保護するためにコンテンツはパッケージ化される。コンテンツサーバ(CS)はDRMコンテンツを配布し、権利発行器(RI)は関連するRightsオブジェクトを生成し且つ配布する。コンテンツサーバ及び権利発行器は、システムにおける役割を取り入れる。それらは、展開に依存して同一のアクター又は異なるアクターにより提供されてもよく、また同一のネットワークノード又は異なるネットワークノードにより実現されてもよい。例えば、事前にパッケージ化された保護コンテンツはコンテンツの効率的な配布のために複数のコンテンツサーバを介して配信される。DRMの概要を示す図71を参照。
Rightsオブジェクトは、DRMコンテンツが使用される方法を管理する。これは、1つのDRMコンテンツに関連付けられる許可及び制約を指定する文書である。DRMコンテンツは、関連するRightsオブジェクトなしで使用できず、Rightsオブジェクトにおいて指定される許可及び制約にのみ従って使用されてもよい。
全てのOMA v2システムのように、MusicStationのDRMはRightsオブジェクトからDRMコンテンツを論理的に分離する。これは、「分離配信」として周知である。DRMコンテンツ及びRightsオブジェクトは、別個に又は一緒に要求されてもよく、それらは別個に又は同時に配布されてもよい。例えばユーザは、同一のトランザクションにおいて1つのコンテンツを選択し、支払いをして、DRMコンテンツ及びRightsオブジェクトを受信できる。その後、Rightsオブジェクトが期限切れになった場合、ユーザは、DRMコンテンツを再びダウンロードする必要なく、戻り且つ新しいRightsオブジェクトを取得できる。
DRMコンテンツと関連付けられるRightsオブジェクトは、購入時点で施行される必要がある。MusicStationハンドセットアプリケーション内のDRMエージェントは、DRMコンテンツに対する許可及び制約を装置上で実行する役割を有するアプリケーションの信頼できる要素を取り込み、それにより装置上のDRMコンテンツへのアクセスを制御する。
Rightsオブジェクトは、特定のDRMエージェントに暗号化結合されるため、そのDRMエージェントのみがそのオブジェクトにアクセスできる。DRMコンテンツは、有効なRightsオブジェクトによってのみアクセスされるため、自由に配信される。例えばこれにより、ユーザはユーザ間でDRMコンテンツを自由に渡せるため、「超流通」が可能になる。新しい装置上のDRMコンテンツにアクセスするために、新しいRightsオブジェクトは要求され且つ装置上のDRMエージェントに配布される必要がある。
6.1.1.1.コンテンツオブジェクトの保護
DRMコンテンツフォーマット(DCF)は、自身のMIMEコンテンツタイプを含むDRMコンテンツに対する安全なコンテンツパッケージである。これは、暗号化コンテンツに加え、コンテンツ記述(元のコンテンツタイプ、メーカ、バージョン等)及び権利発行器URI(Rightsオブジェクトが取得される可能性のある場所)等の追加の情報を含む。この追加の情報は暗号化されず、Rightsオブジェクトが検索される前にユーザに提示されてもよい。メディアコンテンツ(例えば、音楽ファイル)のみがDCFファイルに暗号化される。
DCF内のDRMコンテンツをアンロックするのに必要なコンテンツ暗号鍵(CEK)は、関連するRightsオブジェクトに含まれる。従って、RightsオブジェクトなしでDRMコンテンツにアクセスするのは不可能である。DRMコンテンツは、Rightsオブジェクトに指定されるようにのみ使用される。MusicStationのDRMは、DRMエージェントがDCFの整合性を検査することを可能にする機構を含み、それによりある無許可のエンティティによるコンテンツの変更から保護する。
6.1.1.2.Rightsオブジェクトの保護
Rightsオブジェクトは、権利暗号鍵(REK)を使用して保護される。REKは、コンテンツ暗号鍵等のRightsオブジェクトの機密部分を暗号化するために使用される。配布中、REKは、対象のDRMエージェントに暗号化結合される。このように、対象のDRMエージェントのみがRightsオブジェクト及びCEKにアクセスできる。従って、Rightsオブジェクトは本質的に安全である。
6.2.ハンドセット上のMusicStation
使用された提供方法に関わらず、最終的にMusicStationアプリケーションはユーザの移動電話ハンドセットに常駐する。MusicStationハンドセットアプリケーションの各インストールは、異なる電話の機種及びハンドセットファームウェアバージョンの各々に潜在的に固有のソフトウェアのカスタム化ビルドである。ソフトウェアビルドは、Omnifoneの特許取得済みのデバイス適応アーキテクチャ(DAA)により作成及び管理され、以下に説明するOmnifoneの高度アプリケーション提供ソフトウェアを使用して適切なハンドセットに配布される。
6.2.1.MusicStationの提供
MNOと協力し、MusicStationモバイルハンドセットアプリケーションが電話機に「提供」される方法が2つある。この章において、それら双方について詳細に説明する。MusicStationアプリケーションをハンドセットに配信する好適な方法は、エンドユーザに到達する前にアプリケーションを装置に事前にインストール(プリインストール)することである。この種のアプリケーションを配信する経験により、サービスを開始する電話機のハードキー(音楽ボタン)による最も望ましい方法で事前にインストールされる場合、エンドユーザによる発見は93%もの割合になることが示される。MNOによるこの種のアプリケーションのOTA提供の同様の経験では、成功の割合(すなわち、要求者に対する正常に接続されたユーザの割合)は、アプリケーションが事前にインストールされる時より1桁少ないことが示される。
6.2.1.1.アプリケーションの事前インストール(プリインストール)
通常、この種の装置のカスタム化は、MNOの要求時にハンドセットメーカにより行なわれ、ハンドセットがメーカの敷地を離れる前に実行される。更にこれは、サプライチェーンにおいてカスタム化機能を有するか又はMNOの倉庫でセルにおいて同様のことを実行するMobiltron等のハンドセットメーカにより実行される。
この事前インストールが実行される場合は必ず、Omnifoneの事前インストール提供ツールであるPreloaderによりサポートされる。Preloaderは、事前インストールの施設において作業者により使用されるネットワーク接続デスクトップアプリケーションである。Preloaderへのアクセスは、Software License(ソフトウェアライセンス)、userid(ユーザID)及びpassword(パスワード)により制御され、許可されたIPアドレスのリストによりフィルタリングされる。Preloaderへのアクセスは、ユーザ、Software Licenseにより又は組織により随時無効にされる。
Preloaderにより、許可されたユーザは最新の最適なMusicStationクライアントソフトウェアビルドにアクセスできる。Omnifoneは、Preloaderがアクセスできるソフトウェアビルドをメーカ及び機種により制御できる。Preloaderにより、ハンドセットカスタム化ツールへの組込み及びインストールするユーザの処理のための適切なMusicStationクライアントソフトウェアビルドの位置の特定、ダウンロード及びローカルでの格納が容易になる。
Preloaderには、新しいソフトウェアビルドがダウンロードできることをインストーラに警告できる通知システムが内蔵される。
6.2.1.2.無線配布(OTA)
オープンOTA APIのため、Omnifoneは、ユーザがMusicStationのOTAを取得する際に使用する機構及びタッチポイントを複数サポートする。これは以下を含むが、それらに限定されない:
・(MNO)WAPポータル要求
・要求におけるSMSテキスト
・Webを使用する要求
・IVRの取得
・Webサービスリンク
・SIMがネットワークに最初に現れた場合等の困難なMNOネットワーク統合
要求の機構に関わらず、MusicStationアプリケーションは、既に見ているWAPポータル内で直接又はアプリケーションが別の方法を介して要求された場合はWAPプッシュを介して、エンドユーザにWAPダウンロードページを提供することにより配布される。
6.2.1.3.アプリケーションの再インストール
MusicStationアプリケーションは、サーバに指示された場合にアプリケーションを完全に再インストールすることを強制する能力を含む。この例において、MusicStationアプリケーションはOTA WAPダウンロードを使用して再度ダウンロードされる。アプリケーションの再インストールがサーバにより命令される場合、旧バージョンのアプリケーションは実行しない。
6.2.2.MusicStationハンドセットアプリケーション埋め込みメタデータ
各MusicStationハンドセットアプリケーション内には、情報及びメタデータの集合が自動的に挿入され、本明細書で説明されるような種々の目的で使用される。
6.2.2.1.ハンドセットのメーカ、機種、バージョン及びファームウェアの改訂
全てのMusicStationハンドセットアプリケーションは、特定のハンドセットのメーカ、機種、バージョン及びファームウェアの改訂の組合せに対してビルドされる。この組合せを識別するメタデータは、全てのMusicStationアプリケーションビルドに埋め込まれる。従って、サーバは、各MusicStationアプリケーションが実行しているハンドセット構成の種類を正確に認識する。これは、サーバがこの特定のMusicStationアプリケーションと以前に通信したことがない場合でも当てはまる。
6.2.2.2.Software License(ソフトウェアライセンス)
全てのMusicStationハンドセットアプリケーションは、特に特定のMusicStationサービスに対してビルドされる。これに影響を及ぼすために、全てのMusicStationハンドセットアプリケーションは、「Software License」を内部に埋め込む。Software Licenseは512ビットの乱数であり、サーバに提示されると、このアプリケーションインスタンスを特定のMusicStationサービスに関連付けるために使用される。各サービスはロック又はアンロックされ、アンロックされたサービスのみがエンドユーザにより使用可能である。
6.2.2.3. MusicStationルートCA証明書
各MusicStationアプリケーションは、アプリケーション内にMusicStationルートCA証明書を埋め込む。この証明書については本明細書の後の節で更に詳細に説明するが、この証明書は、MusicStationハンドセットアプリケーションとサーバとの間で送出されるメッセージに署名し且つ検査するために使用される。
6.2.3.アプリケーションの許可及び署名
J2MEは、セキュリティモデルを実現し、これは、一般にソフトウェアアプリケーションがアクセスできると予想される特定の機能(例えば、メモリ/ファイルシステムへのアクセス又はネットワークへのアクセス)が実際には制約されることを意味する。MusicStationのようなアプリケーションは、そのような機能を広範に利用するため、ハンドセットのそれら一般的なセキュリティ保護された機能へのアクセスを必要とすることは明らかである。
MusicStationアプリケーションがそれら制約された機能にアクセスできるようにするために、アプリケーションは「署名」される。署名及び結果として得られる署名者のPKI証明書は、アプリケーションのJADファイルに格納される。MusicStationアプリケーションが実行している場合、この署名は検査され、証明書はそれらの目的のために既にハンドセット上にある保護されたドメインルート証明書の1つに対して検査される。アプリケーションが適切に署名された場合、制約される機能は利用可能になる。
一般に、電話機上に既に存在するルート証明書は、電話機の製造業者、モバイルネットワーク又はVeriSign等の認証局からのルート証明書である。
6.2.4.MusicStationアプリケーション自体に属するDRM
ハッカーがDRMシステムを破壊しようとする方法は多く存在する。それら方法の1つには、DRMを実現するソフトウェアコードをリバースエンジニアすることである。そのため、MusicStationハンドセットアプリケーションは、ソフトウェアを除去されることから保護するために電話機上に常駐するDRMを使用して常にインストールされる。
OMA v2等の高度なDRMは多くのハンドセット上に存在しないが、必要とされる「フォワードロック」コンテンツ制御機構をサポートするOMA v1は殆どのハンドセット上に存在する。フォワードロックはそれが提案するように動作し、この状況においてはMusicStationハンドセットアプリケーションであるコンテンツ項目の電話機からの転送又は伝送を不可能にする。MusicStationは、事前インストールされるか又はOTAインストールされるかに関わらず、OMA v1フォワードロック保護ファイルとしてインストールされる。
MusicStationアプリケーションのOTA配布を更にセキュリティ保護するために、MNOネットワークゲートウェイから発行することを確定されたアプリケーションダウンロードに対するOTA要求のみがサポートされる。これにより、アプリケーションコードは、一般のインターネットから発行されるのではなく、特定のMNOのモバイルインターネットを介して電話機にダウンロードされることが保証される。これは、ネットワーク通信ヘッダ及びメタデータにおいて見つけられる送信元IPアドレス又は宛先IPアドレスが、ゲートウェイがサービスデータベースに格納したアドレスであり、またMNOのアドレスであることが周知であることを確認することにより実現される。
6.2.5.音楽の事前インストール
音楽コンテンツは、アプリケーションがインストールされるのと同時に電話機に事前インストールされる。このコンテンツは、宣伝のために無料であり且つDRMされなくてもよいか、あるいは購入するコンテンツであり且つ音楽がMusicStationを介してダウンロードされたOTAである場合に適用されるDRMと同一のDRMに管理される。事前インストールされたコンテンツは、MusicStationがボックス再生から得られることを可能にする。
6.3.初めてMusicStationを使用する
所有者がMusicStationアプリケーションを使用する前に、アプリケーションは、適切なMusicStationサービスに登録し、ダウンロードするDRM保護音楽コンテンツにアクセスできるようにClient Certificate(及び関連するClient Private Key)を発行してもらうために、まずMusicStationサーバに接続する必要がある。Rightsオブジェクト(アクセス規則及びDRM保護コンテンツにアクセスするための鍵を含む)を発行してもらうために、MusicStationアプリケーションは権利発行器に登録する必要がある。この章において、この2ステップの登録処理について説明する。
6.3.1.MusicStationサービス登録
初めてMusicStationが開始すると、MusicStationは、サービスに登録し、DRM保護コンテンツにアクセスできるようにClient Certificate及びClient Private Keyを得るために、MusicStationサーバに接続する必要があることを認識する。登録を行なうために、サーバは装置を一意に識別できる必要がある。「2パス」MusicStationサービス登録プロトコルは、これを達成するプロトコルである。このプロトコルは、加入者及び装置のIDを含み、その結果、Client Certificate及び関連するClient Private KeyをMusicStationサーバ(認証局)から装置にセキュリティ上安全に転送できる。このMusicStation装置のみがClient Private Keyにアクセスできることが必須であるため、登録プロトコルはHTTPSセキュア通信を使用する。
6.3.1.1.Service Registration Request
MusicStationアプリケーションは、サーバに情報を提供して装置及びユーザを一意に識別してもよいように、ハンドセットのIMEI、Bluetooth Address、IMSI及び加入者のMSISDNにアクセスを試みる。サーバに送出される要求パラメータについては、図72の表:Service Registration Requestのパラメータにおいて説明する。装置又はSIMカードをサーバにおいて識別するために、IMEI、Bluetooth Address又はIMSIのうちの1つ†が供給される必要がある。
6.3.1.2.MNO追加メタデータ
MusicStationハンドセットアプリケーションからMusicStationサーバへの通信がMNOのネットワーク化機器を介して転送されるため、以下の加入者及び潜在的にハンドセット識別子はHTTP要求ヘッダに追加される。この情報は、それらヘッダから抽出され、追加の識別の目的でMusicStationサーバにより使用される。図73を参照。加入者をサーバにおいて識別するために、MSISDN又はParty IDの一方†が供給される必要がある。
6.3.1.3.サービス登録処理
MusicStationサーバがService Registration Requestメッセージを受信した場合、これらのステップが後続する。
6.3.1.3.1.MNOホームネットワークからの登録か?
サーバが登録要求を受信した場合、サーバは、MusicStationハンドセットアプリケーションが現在使用されているモバイルデータネットワークがMNOのホームネットワークであることをチェックする。これは、インターネットトラフィック転送機器及びMNOのホームネットワークゲートウェイのIPアドレスのデータベース格納レコードの集合を使用して行なわれる。
通常の設定は、MNOのホームネットワーク又はローミング契約をしている第三者MNOのネットワーク等の他の特定のネットワークにおける装置登録のみを可能にすることである。
6.3.1.3.2.顧客認証の検証
新しいMusicStationハンドセットアプリケーションをMusicStationサービスに登録するための要求を受信すると、サーバは以下のテストを実行する:
・Software Licenseが有効でアクティブなMusicStationサービスに対するものであることを確認する。
・加入者がMSISDN又はParty ID等により識別されたことを確認する。
・MSISDN又はParty IDはこのMNOの顧客である(APIがMNOに存在する場合)ことを確認する。
・オプションとして、装置がIMEI又はBluetooth ID等により識別されたことを確認する。
これら認証が確認されると、サーバは以下のPKI段階に進む。
6.3.1.3.3.MusicStation及び公開鍵インフラストラクチャ(PKI)
MusicStationサービス登録が正常に完了した後、装置は、Rightsオブジェクトを要求し且つその結果DRMコンテンツにアクセスできるように権利発行器に登録する必要がある。しかし、権利発行器は、確実に識別できる装置のみを登録する。この識別は、MusicStationサーバがPKI認証局(CA)としての役割を果たし、公開鍵証明書、Client Certificateを登録済みMusicStationハンドセットアプリケーション毎に生成し、それにより各装置の信憑性及び一致を証明することにより容易になる。MusicStation権利発行器はCAを信頼し、MusicStationハンドセットアプリケーションにより権利発行器に提示されるClient Certificateが実際にCAにより発行されたことを確認できるように、MusicStationルートCA証明書のコピーを有する。
公開鍵インフラストラクチャ(PKI)は使用される仕組みであり、ユーザの一致又はこの状況においてはMusicStationハンドセットアプリケーションの一致を調査し且つ保証する第三者機関を規定する。これにより、ユーザに対する公開鍵の結び付けが可能になる。一般にこれは、分散した場所にある他の連携するソフトウェア、すなわちMusicStationハンドセットアプリケーションと共に、この場合はMusicStationサーバである中央位置にあるソフトウェアにより実行される。
PKIの仕組みにより、ユーザ(MusicStationアプリケーション、MusicStationサーバ、MusicStation権利発行器等)は認証され、システムにおいてユーザ間を移動するメッセージを暗号化及び復号化するためにPKI証明書の情報(すなわち、他の各公開鍵)を使用できる。一般にPKIは、クライアントソフトウェア(MusicStationハンドセットアプリケーション)、認証局等のサーバソフトウェア(MusicStationサーバ)及び動作手順から成る。ユーザは自身の秘密鍵を使用してメッセージにデジタル署名してもよく、別のユーザはその署名をチェックできる(PKI内のCAにより発行されるユーザの証明書に含まれる公開鍵を使用して)。これにより、2つ(又は2つ以上)の通信者は、事前に機密情報を交換する必要なく機密性、メッセージの整合性及びユーザ認証を確立できる。
CAの署名の信憑性及びCAが信頼できるかについては、証明書を検査することにより判定される。しかし、この連鎖はいずれかで終了する必要があり、いわゆる木のルートであるようなMusicStationCAルート証明書で終了する。ルート証明書は、黙示的に信頼され(証明書はトラストアンカーと呼ばれることもある)、ウェブブラウザ等の多くのソフトウェアアプリケーション、すなわちここではMusicStation権利発行器及びMusicStationハンドセットアプリケーションに含まれる。
6.3.1.3.4.Client Certificate及びClient Private Keyの生成
新しいClient Certificateを発行する際の第1のステップは、登録しているMusicStationハンドセットアプリケーションに対する新しい公開/秘密鍵の対を生成することである。このPKIの実現例は、RSA1024ビット公開鍵アルゴリズムを使用する。
鍵の対が生成されると、公開鍵はビルドするためにMusicStationのCAにより使用され、Client Certificateを発行する。Client Certificateは、Client Certificateに含まれる公開鍵が証明書に書かれたMusicStationハンドセットアプリケーションに属することをCAが証明することを示す。CAの役割は、アプリケーションの認証を検査することであり、従って、ユーザ(MusicStationの権利発行器等の信頼する相手)はCAの証明書の情報を信頼できる。その概念は、ユーザがCAを信頼し且つCAの署名を検査できる場合に、特定の公開鍵がClient Certificateにおいて識別されたユーザに実際に属することを検査できることである。
Client Private Keyは、MusicStationサーバに格納されない。その装置のみが開くことのできるメッセージをサーバが作成できるように、Client Public Keyのみが格納される。
X.509標準は、全てのMusicStation証明書に対して使用される。X.509は、公開鍵インフラストラクチャ(PKI)のITU−T標準である。X.509は、特に公開鍵証明書の標準形式及び証明書パス検査アルゴリズムを指定する。
6.3.1.3.5.Client GUID
Client GUIDは、新しいMusicStationハンドセットアプリケーションがサーバに登録される度に生成される一意の番号(Globally Unique ID(グローバルで一意のID))である。Client GUIDがMusicStationハンドセットアプリケーションに返されると、Client GUIDはMusicStationサーバ又はMusicStation RIに対する全ての後続する通信及び要求に格納されて返される。
6.3.1.4.Service Registration Response
MusicStationのService Registration Requestメッセージに応答して、Service Registration ResponseメッセージがCAから装置に送出される。このメッセージは、HTTPSを介して保護されたClient Certificate及びClient Private Keyを搬送する。図74:Service Registration Responseのパラメータを参照。†Status = "Success"であるかのみ必須である。
6.3.1.5.サービス登録後処理
正常なサービス登録に対する結果が返された後、MusicStationハンドセットアプリケーションは以下のタスクを実行する。
6.3.1.6.Client Certificateの格納
装置に対するClient Certificateは、アプリケーションのレコード管理システム(RMS)記憶装置に格納される。J2MEのRMSは、アプリケーションが永続的にデータを格納し且つ後でそれを検索できる機構を提供する。レコード指向方法において、J2MEのRMSは複数のレコード記憶装置を含む。
6.3.1.6.1.Client GUIDの格納
Client GUIDは暗号化され、スクランブルされ、アプリケーションのRMSに格納される。これは、MusicStationサーバ及びMusicStation RIに対する全ての今後の要求において使用される。
6.3.1.6.2.Client Private Keyの格納
MusicStationハンドセットアプリケーションは、J2ME秘密RMS機能を使用する。これは、RMSレコード記憶装置を作成したMusicStationアプリケーションのみがその記憶装置にアクセスできることを意味する。
しかし、MusicStationはClient Private Keyのセキュリティを更に保証する。起こる可能性は非常に少ないがRMSが危険にさらされた場合に、MusicStationハンドセットアプリケーションのみが追加のセキュリティ手段としてClient Private Keyを暗号化した後で格納する。更にアプリケーションは、Client Private KeyをRMSに格納する前及び格納している間に特定の技術を使用してClient Private Keyを更に分かりにくくする。
6.3.2.権利発行器登録
装置が自身のClient Certificateを取得した直後に、装置は権利発行器(RI)への登録を試みる。装置は、登録及びRIからのRightsオブジェクトの取得を行なう前にMusicStationサービスに登録される必要がある。RI登録処理が正常に完了することにより、装置はドメイン鍵(DK)を取得できる。DKは、装置に配布されるRightsオブジェクトの権利暗号鍵(REK)を保護するために使用される128ビットのAES対称鍵である。
RI登録プロトコルは、装置とRIとの間の完全なセキュリティ情報交換及びハンドシェークである。RI Registration Requetメッセージに応答して、RI Registration Responseメッセージが権利発行器から装置に送出される。このメッセージは、登録プロトコルを完了し、正常な場合は装置がそのRIに対してRIコンテキストを確立することを可能にする。RIコンテキストは、2パスRI登録プロトコルの間に権利発行器と交渉された情報から成る。このRIコンテキストは、装置がRightsオブジェクトを正常に取得するために必要である。
6.3.2.1.DRMドメイン
ドメインは、権利発行器により配信される共通のドメイン鍵を所有する1つ〜複数の装置の集合である。同一ドメインの全ての装置は、同一のDomain Rightsオブジェクト(RO)及び潜在的にそれらROに保護された音楽にアクセスできる。
MusicStationにおいて、DRMドメインはネットワーク中心である。RIは、ドメインを規定し、ドメイン鍵を管理し、ドメインに含まれる装置及びその数、並びにドメインから除外される装置及びその数を制御する。一般に各MusicStationハンドセットアプリケーションは自身のDKを有し、1つのMusicStation装置のみが各ドメインに存在する。
6.3.2.2.RI Registration Request
RI Registration Requestメッセージは、装置から権利発行器に送出され、2パスRI登録プロトコルを開始する。図75:MusicStation RI Registration Requestのパラメータを参照。
6.3.2.3.RI Registration Response
RI Registration Requestメッセージに応答して、RI Registration Responseメッセージが権利発行器から装置に送出される。登録が正常である場合、ドメイン鍵はMusicStationハンドセットアプリケーションに配布される。このDKは、要求においてRIに送出されたClient Certificate中に見つけられるClient Public Keyを使用して暗号化される。このように、装置のみが復号化する必要のあるClient Private Keyにアクセスでき且つDKにアクセスできるため、DKはセキュリティ上安全に装置に転送される。図76:RI Registration Responseのパラメータを参照。†Status = "Success"であるかのみ必須である。
6.3.2.4.RI登録後処理
正常なRI Registration Responseが受信された後、MusicStationは返されたドメイン鍵を暗号化し且つ分かりにくくし、それをアプリケーションの専用RMSに格納する。その後DKは、Rightsオブジェクト(RO)の機密部分にアクセスするために、MusicStationにより使用されてDK暗号化権利暗号鍵(REK)にアクセスする。
6.4.音楽を聴く
音楽を聴くために、MusicStation装置は、DRMコンテンツフォーマット(DCF)にDRM保護コンテンツとして格納される音楽ファイルとDRMをアンロックするためのコンテンツ暗号鍵(CEK)を含むROとを必要とする。
DCF及び対応するROが同時に装置上に存在しないことが可能である。ROはDCFに対するURLを含み、DCFはROに対するURLを含むため、一方を有する場合に他方を取得できる。双方が装置上に存在しない場合、MusicStationアプリケーションにおいて示されるトラックリストはRO及びDCFの双方のURLを含むため、探索において又は閲覧中にトラックの位置が特定された後、双方のファイルは同時に要求される場合が多い。
6.4.1.Rightsオブジェクトの取得
2パスRO取得プロトコルは、装置がRightsオブジェクトを取得する際のプロトコルである。このプロトコルは、装置及びRI、整合性保護要求、並びにROの配布の相互認証と、ROを処理するのに必要な暗号鍵材料のセキュリティ上安全な転送とを含む。
6.4.1.1.RO Acquisition Request
RO Acquisition Requestメッセージは装置からRIに送出され、Rightsオブジェクトを要求する。このメッセージは2パスRO取得プロトコルの第1のメッセージである。図77:MusicStation RO Acquisition Requestのパラメータを参照。
6.4.1.2.RO Acquisition Response
RO Acquisition Requestメッセージに応答して、RO Acquisition ResponseメッセージがRIから装置に送出される。これは、当該音楽DCFに対する保護コンテンツ暗号鍵(CEK)を含むROを搬送する。図78:MusicStation RO Acquisition Responseのパラメータを参照。†Status = "Success"であるかのみ必須である。
6.4.1.3.Client Certificateの取消し
RIは、装置のセッション毎に1度、装置のClient Certificateが依然として有効であるかをCAに確認する。CAは、取り消され且つ信頼すべきでないClient Certificateのリストである証明書取消しリスト(CRL)を維持する。証明書は、使用される時は必ずこのリストに対してチェックされ、取消し状態を確認する必要がある。CAが証明書を不適切に発行した場合、秘密鍵が危険にさらされた場合、ユーザがCAの使用ポリシーに違反した場合、あるいはMusicStationの管理者が何かの理由によりその装置へのアクセスを拒否した場合、証明書は取り消される。
6.4.2.コンテンツのダウンロード
この節において、音楽コンテンツが準備され、保護され且つMusicStationコンテンツサーバからMusicStation装置にダウンロードされる方法を説明する。
6.4.2.1.コンテンツの準備
音楽コンテンツは、MusicStationコンテンツサーバ(CS)からダウンロード可能にされる前に、暗号化により無許可のアクセスから保護される。音楽ファイルを暗号化することにより、DRMコンテンツフォーマット(DCF)として周知である新しいファイルを作成する。
MusicStationにおいて、音楽コンテンツの暗号化は、128ビットRC4対称コンテンツ暗号鍵(CEK)を使用して実行される。全てのDCFは、異なる128ビットRC4CEKを有する。従って、1,000,000個のトラックが音楽ライブラリに存在し、各トラックが10個の別個のファイル形式(種々の電話機の好み及び音楽機能/コーデックに対応するため)で入手可能である場合、物理ファイル毎に1つ存在する10,000,000個の別個のCEKが存在する。これは、1つのDCFに対するCEKが危険にさらされたとしても、その結果として他のDCFが危険にさらされることはないことを意味する。
6.4.2.2.Content Acquisition Request
本質的に全てのDCFがセキュリティ上安全であるため、DCFはセキュリティ保護されていないトランスポートプロトコルを使用して移送される。そのため、MusicStation装置はHTTPを使用して音楽コンテンツを要求する。図79:Content Acquisition Requestのパラメータを参照。
6.4.2.3.Content Acquisition Response
一般に、MusicStationコンテンツサーバからの応答は、HTTPを介して要求されたDCFファイルのバイナリストリームである。これは、殆どの場合にファイル全体であるが、モバイルネットワーク受信可能範囲が切断されることによりファイル転送が中断される場合もある。MusicStationハンドセットアプリケーションが今回はRangeパラメータを使用して次のContent Acquisition Requestを行なうような状況においては、有していないDCFの部分のみを要求する。
DCFバイトストリームが装置に到着すると、MusicStationアプリケーションはファイルをハンドセットのファイルシステムに漸進的に書き込む。内部/外部(取り外し可能媒体)メモリの双方が利用される。組み合わされた内部/外部メモリのMusicStationの割り当てが一杯である場合、MusicStationは最も長期間再生されていないトラックを除去する。これは、新しく要求されたトラックに対して利用可能な空間が十分にできるまで繰り返される。
全ての音楽コンテンツは、ダウンロードされた時の元のDCF保護形式で格納される。任意のDCF内の音楽にアクセスするために、CEKにアクセスしてもよいように、対応するROが要求される。
6.4.3.音楽コンテンツの再生
MusicStationアプリケーションを介して音楽を再生するために、音楽トラックDCF及び対応するROは電話機上に存在する必要がある。まず、ROが検査され、ユーザが音楽を再生する権利を有するかが確認される。権利を有する場合、DCFを復号化して音楽トラックにアクセスするために、CEKはROから抽出されて使用される。その後、音楽トラックは電話機のメディアプレーヤを介して再生される。
6.4.3.1.権利表現言語(REL)の評価
関連するRO及びDCFが電話機上に存在するトラックを再生するように要求が行なわれると、ROに含まれる権利表現言語はMusicStationDRMエージェントにより解析される。RELは、このROに関連するDCFのコンテンツがユーザにより購入され且つ使用される方法を規定する。RELにより表される権利は非常に豊富であり、以下の例を含む:
・無制限の再生に対して、コンテンツは無料である。
・コンテンツは一度再生後、購入する必要がある。
・コンテンツは1週間無料で再生可能であるが、その後購入する必要がある。
・コンテンツは1ヶ月無料で再生可能であるが、5回を超えて再生できない。
・コンテンツは、購入されると何度でも再生可能である。
・現在ユーザが有効なAYCE加入期間内である場合、コンテンツは何度でも再生可能である。
6.4.3.2.コンテンツの復号化
ユーザが音楽を再生できるとDRMエージェントがRELから判定した場合、128ビットAES REKは関連するDCFの暗号化CEKに対するアクセス権を得るために使用される。128ビットRC4CEKは、DCFを復号化して元の音楽トラックにアクセスするために使用される。この復号化トラックは、特定の電話機の挙動に依存して、トラック再生期間中非永続的なハンドセットメモリに格納されるか、あるいは復号化ストリームとしてハンドセットメディアプレーヤに漸進的に配布される。復号化音楽トラックは、ハンドセットに永続的に格納されることはない。
6.5.ダウンロードし放題サービス
MusicStationの高度なDRM実現例のために、タウンロードし放題(AYCE)等の高度なコンテンツアクセスモデルのサポートが可能である。これにより、有効な加入期間内のユーザは、任意のトラックをダウンロードし且つ各トラックを好きなだけ何度も再生するために無制限のアクセス権を有することが可能になる。
6.5.1.加入期間
MusicStationは、日毎、週毎、月毎又は要求される任意の他の期間等の広範な加入期間をサポートする。MusicStationサーバがMNO課金システムと通信し、加入期間に対する適切な課金でユーザの電話請求書を正常に送ると、加入期間は開始する。
MusicStationサーバは、ユーザの請求書(前払い又は後払い)に正常に課金された日付/時間及びユーザが課金された加入期間の長さを記録することにより、ユーザの加入期間の状態を維持する。この情報は、MusicStationハンドセットアプリケーション上でDRMエージェントと共有されるため、装置は、ユーザが有効な加入期間にいるか否かを認識する。
6.5.2.加入期間の終了
AYCE加入を実現する好適な方法は、継続加入方法である。このモデルにおいて、MusicStationサーバは、現在の加入期間が終了した時に新たに加入する。ユーザは加入を取り消すオプションを有し、これにより自動再加入は中断される。前回の有効な加入期間の終了後、ユーザがコンテンツ(装置上であるかないかには関係ない)にアクセスしようとする場合、ユーザは加入期間を再度開始したいかを問われる。開始したい場合、継続加入期間が再度開始する。
加入モデルが継続加入でない場合、ユーザは現在の期間が経過する度に別のAYCE期間に加入したいかを確認する必要がある。
6.5.3.親Rightsオブジェクト
Rightsオブジェクトは、別のRightsオブジェクトから許可を継承してもよい。この機構は、例えばAYCE加入の一部として取得されるコンテンツに対する権利を指定するために使用される。許可を継承するROは、子Rightsオブジェクト(C−RO)と呼ばれる。継承される許可を含むRightsオブジェクトは、親Rightsオブジェクト(P−RO)と呼ばれる。
関連するコンテンツがユーザに対して利用可能にされる前に、クライアント装置は、同一の権利発行器がC−RO及びそれに関連するP−ROを発行し且つそれらが双方とも同一のドメインに属することを確認する。P−ROは、DRMコンテンツを直接参照しない。
6.5.4.DRM時間
電話機上のDRMエージェントは、ユーザにより変更不可能な正確な日付/時間(DRM時間)に対して永続的なアクセス権を有するのが最適である。これは移動電話には当てはまらないため、MusicStationは、システムを騙し且つ加入サービス内で違法アクセスをしようとするユーザを阻止する一方で、公正なアクセス権が電話機の日付/時間に合法的な変更を行なうユーザに与えられるように、DRMエージェントが信頼できるDRM時間を入手可能であることを保証するために種々の方法を使用する必要がある。
電話機が任意の時点で日付/時間を合法的に変更してもよく(例えば、初めて設定される場合、時間帯又は夏時間を変更する)、MusicStationサーバは常に信頼できる日付/時間を保持する。従って、ネットワーク接続されている間、DRMエージェントは常に信頼できる日付/時間データにアクセスできる。
MusicStationサーバの日付/時間が装置のローカル日付/時間と潜在的に異なるため、DRMエージェントは絶対日付/時間ではなくローカル日付/時間に対するタイマを使用する。しかし、DRMエージェントは、ローカル日付/時間が保持するタイマに基づくべきであることを認識する場合に対してローカル日付/時間を更に監視する。これにより、ネットワーク接続及びローカルの電話機の日付/時間の変更の識別を行なわずに加入期間は終了できる。ネットワーク接続が行なわれる度に、全てのタイマ及び実際の日付/時間の知識は再設定される。
ユーザが日付/時間を過去の時間に設定することによりシステムを騙そうとすると、問題が潜在的に発生する。それら問題は、以下の論理を使用して正常に対処される:
・MusicStationハンドセットアプリケーションが開始する場合、ローカル日付/時間を前回のアプリケーション終了日付/時間と比較する。アプリケーション開始日付/時間が前回のアプリケーション終了日付/時間より前である場合、それら2つの日付/時間の差分は相対タイマから減算される。
・最終的な結果として、判定したユーザがネットワーク接続していない間にMusicStationを使用できる最長の期間は、支払いをした加入期間(例えば、1週間)の長さと等しい総合アプリケーション使用時間である。これを行なうために、MusicStatonを終了する度に時間を記録し、MusicStationを開始する度に電話機の日付/時間を開始直前の時間に再設定する必要がある。限定された報酬では、その労力をかける価値がないと考えられるのは明らかである。
・アプリケーションが開いている間にユーザが日付/時間を変更することから保護するために、アプリケーションが実行中、日付/時間は1分に1度チェックされる。現在の日付/時間が前回の日付/時間より前である場合、それら2つの日付/時間の差分は相対タイマから減算される。
ユーザがローカル日付/時間を未来の日付/時間に合法的に変更し、装置がサーバに接続できる場合、有効期限時間はサーバと再同期化される。接続が利用可能でない場合:
・未来の時間が有効な加入期間内である場合、トラックは再生される。
・未来の時間がライセンス有効期限時間を超える場合、システム設定可能閾値を除いて、装置がサーバに接続するまでトラックは再生されない。クロックを進めた(MusicStationが実行していない間に)ユーザと長期間MusicStationをしていないユーザとを区別することは不可能である。ユーザを再起動し且つ加入を更新するために、データネットワークを介するサーバへの再接続が必要とされる。
6.5.5.AYCEの課金
AYCEシステムの課金は、全てのエンドユーザによる全てのトラックの全ての再生の絶対カウントを必要とする。従って、トラック購入情報はサーバに転送される必要があり、特定のサーバの全てのMusicStation装置による全ての予備再生は集約される。それら集約された再生カウントは、音楽が課金期間に再生された各権利所有者に対する著作権使用料の支払いを判定するために使用される。30秒等の試聴閾値期間より短い期間再生されたトラックは無料の試聴と考えられ、著作権使用料の支払いの計算には含まれない。
MusicStationが不要なネットワークトラフィックの原因とならないように、再生カウントは、自然なネットワーク接続がアプリケーションにより要求されるまで装置にバッファリングされる。このバッファリングは0G(飛行及びトンネル等)にも適用され、再生カウントが拡張された期間バッファリングされ、最終的に接続された時にサーバに送出される。
6.5.6.混合モデル
MusicStationは、AYCEにいるユーザがトラックを即金で購入してもよい融合商用モデルに対応する。加入期間を更新せずに終了する場合、ユーザが購入したそれらのトラックには依然としてアクセスできる。
6.6.付録A:鍵の管理
ここでは、装置上のMusicStationハンドセットアプリケーションのDRMエージェントのみが知る公開鍵を使用して権利発行器が装置に対してドメイン鍵(DK)を発行する暗号方法を説明する。更に、先に装置に配布されたKDを使用して最初に暗号化された装置に配布されるREKを使用することにより、RIがROのCEKを保護する方法を説明する。
6.6.1.装置公開鍵の下でのKDの配信
この節は、ドメイン鍵KDを装置に提供する場合に当てはまる。KDは、ドメインDに対して発行されたKREK(「Rightsオブジェクト暗号鍵」)を保護する時に使用される対称鍵ラッピング鍵である。KDは、送信元によりランダムに生成された128ビットの長さのAES鍵であり、ドメインD毎に一意である。KREKは、Rightsオブジェクトのコンテンツ暗号鍵KCEKに対するラッピング鍵である。非対称暗号化方式RSAは、装置のRSA Client Public Keyを使用してセキュリティ上安全にKDを受信装置に送信するために使用される。
C = RSA.ENCRYPT(ClientPubKey, KD)
Cを受信後、装置はClient Private Keyを使用してCを復号化する:
KD = RSA.DECRYPT(ClientPrivKey, C)
6.6.2.ドメイン鍵KDの下でのKREKの配信
この節は、ドメインに対するRightsオブジェクトを保護する場合に当てはまる。鍵ラッピング方式AES−WRAPが使用される。RIはKDを使用してKREKを暗号化する:
C = AES-WRAP(KD, KREK)
Cを受信後、装置はKDを使用してCを復号化する:
KREK = AES-UNWRAP(KD, C)
付録1:画面フロー
7.概要
この付録において、MusicStationクライアントの画面及びユーザインタフェースを説明する。これは、完全な機能リスト、並びに機能毎のユーザ体験及び適切な画面ショットの説明を含む。機能はアプリケーションの主な機能グループに分類され、一般に、これはアプリケーションのメニュー構造に従う。
7.画面レイアウト及びユーザ対話
7.1.登録
図80を参照する。MusicStationが初めて開始される場合、クライアントがサーバに登録され且つユーザが一意の識別子又はGUIDを提供される一方で、ユーザはメッセージを見る。
7.2.MusicStationへの参加
図81を参照する。ユーザが初めてMusicStationの有料機能を使用しようとすると、オプションの無料の試用期間に参加するように要求される。ユーザは確定するように要求され、wapリンクを介して条件を閲覧するオプションが与えられる。その後、加入が確定され、ユーザは、確認の上継続を選択するように要求される。正常に加入したユーザは、MusicStationのメンバとして周知である。
7.3.タブ及びメニュー
図82を参照する。ユーザインタフェースは4つのタブに分けられる。各タブは、MusicStationの特定の基本的な機能を対象としている。
・Home−Chartsを含むMusicStationにおいて利用可能な全てのコンテンツ及びSearch、Options等の全ての基本的な機能へのユーザアクセスを提供する。更に、ユーザがダウンロードしたコンテンツ(すなわち、「ストア」及び「ライブラリ」の双方)を強調表示する。
・Buzz−コミュニティ機能及び音楽ニュースにアクセスできる。
・Lineup−ダウンロードして聴くトラックの現在のキューを表示する。
・Playing−現在再生中のトラックの詳細を表示する。
Homeタブ及びBuzzタブは、階層メニュー構造で構成される複数の画面から成る。
7.4.メニュー及びタブナビゲーション
ユーザは、ジョイスティックを使用してアプリケーションのタブ及びメニューをナビゲートする。図83を参照。
7.5.Moreメニュー
7.5.1.機能へのアクセス
図84を参照する。全ての画面はハンドセットの右側のソフトキー上にMoreメニューを含み、現在選択されている項目及び全体の画面の双方に関連する機能へのアクセスを可能にする。現在利用可能でないオプションは、このメニュー上で淡色表示され、選択できない。
Moreメニューは、右側のソフトキーでCancelを選択することにより再度閉じられる。
7.5.2.状況依存オプション
Moreメニューにおいて利用可能なオプションは、現在強調表示されている項目に対して状況依存する。この表は、共通のMoreメニューオプション及び選択されたMoreメニューオプションが実行する動作の説明を一覧表示する。図85及び図86を参照。各MusicStationオプションに対して利用可能なMoreメニューオプションの詳細なリストに関しては、「付録2:状況依存メニュー」を参照。
7.6.Back(戻る)
図87を参照する。画面ナビゲーションの履歴が維持される。ユーザは、任意の所定のタブにおいて、随時、前の画面に戻るために左側のソフトキーを押下してもよい。Sony Ericssonのハンドセット等のハンドセットにおいて、ハンドセットがハードキーのBackを有する場合、それを使用して画面履歴を戻ることも可能である。
7.7.音楽の再生
図88を参照する。ユーザがPlayingタブに戻る必要なくアプリケーションの任意の画面から再生を制御できるように、種々のキーが事前定義され且つ音楽再生機能と関連付けられる。例えば、[5]キーは、ユーザがユーザインタフェース内にいる場合に音楽再生の一時停止及び再開を行なう。図89を参照。
7.8.ヘルプ
図90及び図91を参照する。ユーザは、[1]キーを押下することによりキーパッドのヘルプを閲覧してもよい。この画面は、MusicStationにおけるユーザの場所に関係なくハンドセット上の任意の数字キーを押下することにより実行される動作を表示する。
7.9.キーパッドのロック
図92及び図93を参照する。キーパッドは、ユーザが[*]キーを押下し続けることによりロックされる。キーパッドをアンロックするために、ユーザは[*]を再び押下し続ける。音楽は、ジョイスティックがロックされている間再生し続けるが、偶発的な使用を防止するために、メニューオプション又は他の音楽再生制御キーは利用不可能となる。
7.10.最小化
図94及び図95を参照する。アプリケーションは、[#]キーを押下し続けることにより最小化されてもよい。音楽を停止するために、ユーザはMusicStationを再度開く必要がある。
7.11.終了
図96を参照する。ユーザがMoreメニューからCloseを選択した時、音楽が再生中である場合、音楽を再生し続けたいかが問われる。
・Exit and keep music playing(終了し、音楽を再生し続ける)−MusicStationは最小化され、ハンドセットのバックグラウンドに移動する。ユーザは、音楽を聴きながらハンドセットの機能を使用し続けることができる。ユーザは、随時MusicStationに戻ることができる。
・Exit and stop music(終了し、音楽を停止する)−この場合、MusicStationは音楽の再生を停止し、完全に終了する。ユーザは、その後MusicStationを使用するためにはMusicStationを再開する必要がある。
8.基本的な概念
8.1.Lineup
第3のタブ又はLineupは、ユーザがMusicStationを理解するのに重要な概念である。これは、ユーザが現在選択している音楽の永続的なビューを提供する。ユーザが再生する(及びデフォルトではハンドセット上に存在しない場合はダウンロードする)ために選択した任意の音楽は、Lineupに追加される。ユーザは任意のアルバム、プレイリスト、個々のトラックを選択し、それをLinupに追加できる。ダウンロードが完了していない任意のトラックは淡色表示され、ダウンロードされた割合が横に表示される。更なる情報に関しては第12節を参照。図97を参照。
8.2.Playlists(プレイリスト)
MusicStationユーザインタフェース内にはいくつかの種類のプレイリストが存在する。
Figure 2014195274
8.3.評価
図98を参照する。MusicStationは、ユーザに推薦を提供することを含むコミュニティ機能を提供する。ユーザがこの処理に関わることを可能にするために、MusicStationインタフェース内の多くの種々の項目が評価される。以下の項目が評価可能である:
・トラック
・アルバム
・アーティスト
・プレイリスト
・他のメンバ
ユーザは、インタフェースにおいて項目を選択し且つMoreメニューからRateオプションを選択することにより項目を評価する。ユーザは、項目毎に選択する評価を3段階有する。
・I love it
・Neutral
・I hate it
これらの評価は、全てのユーザから収集され、それら項目に対して星評価を生成するためにMusicStationにより使用される。それら星は、インタフェースにわたり種々の場所で見られ、各項目の相対的な人気に関するビューをユーザ基盤に与える。ユーザの評価は、Top Playlistsリスト(Get New Playlists画面)等の推薦及びチャートを生成するために更に使用される。
8.4.画面の更新
MusicStationは、高度なバックグラウンドダウンローダと呼ばれる構成要素を含む。この構成要素は、全ての音楽及びデータをハンドセットにダウンロードする役割を有する。これは、バックグラウンドで実行し、再生する音楽及び全ての動的メニューに対するコンテンツを配布する。これは、バックグラウンドで実行するため、ユーザがMusicStationを楽しむことを邪魔せずに、更新されたコンテンツを任意の画面に配布できる。
例えば、Inboxタブ上に一覧表示されるニュースの記事は、ユーザが次にBuzzタブに切り替えた時に最新の記事がそこに用意されてユーザを待ち受けているように、ユーザが音楽を聴いている間に更新されてもよい。
9.上位レベルのメニュー
ユーザインタフェースは、4つのタブに分けられる。各タブは、MusicStationの特定の基本的な機能を対象としている。
・Home−MusicStationにおいて利用可能な全てのコンテンツ及びCharts、Search等の全ての基本的な機能へのユーザアクセスを提供する。
・Buzz−コミュニティ機能及び音楽ニュースにアクセスできる。
・Lineup−聴くためのトラックキューの現在のキューを表示する。
・Playing−現在再生中のトラックの詳細を表示する。
Homeタブ及びBuzzタブは、階層メニュー構造で構成される複数の画面から成る。以下の表は、Homeタブ及びBuzzタブの上位レベルのメニューのオプションのリスト及びそれらが詳細に説明される本明細書の節への相互参照を提供する。図99及び図100を参照。
Lineupタブ及びPlayingタブはメニューを有さない。それらのタブは、現在の音楽に関連する単一の固定されたビューである。Lineupは、ユーザがダウンロード及び再生の対象として現在選択している音楽の永続的なビューを表示する。Playingタブは、現在のトラックのみを表示する。
10.Home
10.1.Playlists
図101を参照する。Playlists画面は、プレイリストへのユーザアクセスを与える。ユーザは、自身の専用プレイリスト及び共有プレイリストを閲覧及び管理できる。更にユーザは、Get New Playlistsオプションを使用して、編集/コンテンツチーム又は他のユーザにより提供されたプレイリストを閲覧及びダウンロードできる。
10.1.1.My Private Playlists
専用プレイリストは、ユーザが作成し且つMusicStationコミュニティと共有されないプレイリストである。専用プレイリストは、見出しMy Private Playlistsの下に一覧表示される。ユーザは、専用プレイリストを選択し且つMoreメニューからShareオプションを選択することによりそれらのプレイリストを公開することを決定できる。
10.1.2.My Shared Playlists
図102を参照する。共有プレイリストは、ユーザがMusicStationコミュニティと共有しているプレイリストである。共有プレイリストは、見出しMy Shared Playlistsの下に一覧表示される。ユーザは、共有プレイリストを選択し且つMoreメニューからMake Privateオプションを選択することによりそれらプレイリストを再び個人専用にすることを決定できる。
10.1.3.Get New Playlists
図103を参照する。Get new playlistsオプションにより、他のユーザの編集者プレイリスト、自動生成プレイリスト及び共有プレイリストにアクセスできる。ユーザは、それらプレイリストの閲覧、再生及び評価を行なえる。図104を参照。
それら画面上のリストは、MusicStationにより毎晩又は毎週更新される。
Figure 2014195274
10.1.4.Create playlist(プレイリストの作成)
図105を参照する。ユーザは、Create playlistオプションを使用して、専用プレイリスト又は共有プレイリストを作成できる。ユーザは、プレイリスト名を提供し、画像ライブラリからプレイリストに対する画像を選択する。作成されると、ユーザは、インタフェースを通して見つけられるAdd to Playlistオプションを使用してトラックをプレイリストに追加できる。更にユーザは、Add to Playlistを選択後に新しいプレイリストを作成できる。
10.2.プレイリストの削除
ユーザは、プレイリストを強調表示し且つMoreメニューからDeleteを選択することにより専用プレイリスト又は共有プレイリストを削除してもよい。
10.2.1.プレイリストの閲覧
図106を参照する。ユーザは、プレイリスト内のトラックを閲覧できる。更にユーザは、プレイリストに関連付けられた画像、プレイリストの合計再生時間及びプレイリストのトラック数を見れる。プレイリストが共有プレイリストである場合、その星評価が更に示される。各プレイリストの底部には、ユーザがプレイリストの全てのトラックをLineupに追加することを選択できるALL TRACKSオプションがある。
10.2.2.プレイリストの評価
ユーザは、共有プレイリストを評価できる。全てのユーザにより提供される評価は、Top Playlists及びYou might like...リストを生成するために総合的に使用され、それらはGet New Playlists画面においてユーザにフィードバックされる。第8.3節を参照。
10.3.Artists(アーティスト)
図107を参照する。Albums画面により、ユーザはMusicStationカタログにおいて入手可能な全てのアルバムにアクセスできる。ユーザは、過去にトラックをダウンロードしたアーティストを閲覧できる。ユーザは、Get new artistsオプションを使用して、このユーザにとって一般的に関心のあるアーティスト又は個人的に関心のあるアーティストを閲覧し且つ聴くことができる。
10.3.1.My Top Artists
Arthists画面のMy Top Artistsセクションにおいて、ユーザは、トラックをダウンロードしたことのあるアーティストの選択リストを閲覧できる。リストは、ユーザがトラックをダウンロードしたことのあるアーティストで構成される。これにより、ユーザはお気に入りのアーティストに容易にアクセスできる。一般にリストは、トラックをダウンロードしたことのある全てのアーティストであるが、過度に長くならないことを保証するために制限される(電話機に依存する)。
10.3.2.Get new artists
図108を参照する。Get new artistsオプションにより、ユーザの音楽の聴き方及びフィードバックを使用して自動的に又は編集者によって、MusicStationにより生成されたアーティストのリストにアクセスできる。これらは、2つの主なカテゴリ:Top Artists、Top Pop、Top Rock等の人気のあるアーティスト及びYou might like等の推薦アーティストに基づく。
これら画面上のリストは、MusicStationにより毎晩又は毎週更新される。
Figure 2014195274
図109を参照。
10.3.3.Artist Profile−View Artist
図110を参照する。ユーザは、画像、アーティストのMusicStationの星評価、ダウンロードしたトラック数、ダウンロードしたトラックのリスト及びそれらのダウンロードしたトラックの合計再生時間を含むアーティストプロファイルを閲覧できる。ユーザは、このアーティストの入手可能な全てのトラック又はアルバムをこの画面から閲覧及び再生できる。
10.3.4.Artist Profile−Get new tracks
図111を参照する。ユーザは、選択したアーティストの全ての入手可能なトラックのリストを閲覧できる。ユーザは、この画面からトラックの再生及び評価を行なえる。
10.3.5.Artist Profile−Get new albums
図112を参照する。ユーザは、選択したアーティストの全ての入手可能なアルバムのリストを閲覧できる。ユーザは、この画面からアルバムのトラックを閲覧、再生及び評価できる。
10.3.6.アーティストの評価
ユーザは、MoreメニューからRateオプションを使用して任意のアーティストを評価してもよい。第8.3節を参照。
10.4.Albums
図113を参照する。Albums画面により、ユーザはMusicStationカタログにおいて入手可能な全てのアルバムにアクセスできる。ユーザは、過去にトラックをダウンロードしたことのあるアルバムを閲覧できる。ユーザは、Get new albumsオプションを使用して、このユーザにとって一般的に関心のあるアルバム又は個人的に関心のあるアルバムを閲覧し且つ聴くことができる。
10.4.1.My Top Albums
Albums画面のMy Top Albumsセクションにおいて、ユーザは、トラックをダウンロードしたことのあるアルバムの選択リストを閲覧できる。リストは、ユーザがダウンロードし且つ頻繁に聴いているアルバムから構成される。これにより、ユーザはダウンロードしたトラックに容易にアクセスできる。
10.4.2.Get New Albums
図114を参照する。Get new albumsオプションにより、ユーザの音楽の聴き方及びフィードバックを使用して自動的に又は編集者によって、MusicStationにより生成されたアルバムのリストにアクセスできる。これらは、2つの主なカテゴリ:Top Artists、Top Pop、Top Rock等の人気のあるアルバム及びYou might like等の推薦アルバムに基づく。ユーザは、任意のアルバムを容易に再生又は閲覧できる。
これら画面上のリストは、MusicStationにより毎晩又は毎週更新される。
Figure 2014195274
図115を参照。
10.4.3.アルバムホームページ
図116を参照する。ユーザは、アルバムのトラック数、アルバムの星評価及びトラックのリストを含むアルバムの詳細を閲覧できる。ユーザは、アルバムから個々のトラック又は全てのトラックを再生できる。ユーザは、アルバムホームページの底部にあるALL TRACKSオプションを使用してアルバムの全てのトラックを再生することを選択できる。
10.4.4.アルバムの評価
ユーザは、ユーザインタフェース内で任意のアルバムを評価できる。第8.3節を参照。
10.5.Tracks
図117を参照する。Tracks画面により、ユーザはMusicStationカタログにおいて入手可能な全てのトラックにアクセスできる。ユーザは、過去にダウンロードしたトラックの選択リストを見れる。更にユーザは、Get new tracksオプションを使用して、このユーザにとって一般的に関心のあるトラック又は個人的に関心のあるトラックを閲覧し且つ聴くことができる。
10.5.1.My Top Tracks
Albums画面のMy Top Albumsセクションにおいて、ユーザは、ダウンロードしたトラックの選択リストを閲覧できる。リストは、ユーザが頻繁に聴くトラックから構成される。このリスト中の全てのトラックは、迅速に聴くことができる。ユーザは、これらトラックのうち任意のトラックを聴くためにネットワーク受信可能範囲であることを必要としない。
10.5.2.Get New Tracks
図118を参照する。Get new tracksオプションにより、ユーザの音楽の聴き方及びフィードバックを使用して自動的に又は編集者によって、MusicStationにより生成されたトラックのリストにアクセスできる。これらは、2つの主なカテゴリ:Top Tracks等の人気のあるトラック及びYou might like、Just released等の推薦トラックに基づく。
これら画面上のリストは、MusicStationにより毎晩又は毎週更新される。
Figure 2014195274
10.5.3.トラックの評価
ユーザは、任意のトラックを評価してもよい。第8.3節を参照。
10.5.4.プレイリストへのトラックの追加
ユーザは、任意のトラックをプレイリストに追加してもよい。この処理中、ユーザは、既存のプレイリストを選択してもよく又は新しいプレイリストを作成してもよい。第10.1.4.節のCreate playlist(プレイリストの作成)を参照。
10.6.Charts
10.6.1.チャートリスト
図119を参照する。Charts画面は、このサービスのユーザの音楽の聴き方及び評価の仕方から生成されるチャートのリストを提供する。チャートの選択は、毎日、毎週及び毎月を含み利用可能である。
10.6.2.チャートの詳細
図120を参照する。ユーザは、特定のチャートの名前、チャートの合計再生時間、チャートの全ての一連のトラック||アーティストリストを含むチャートの詳細を閲覧し、そのチャートの任意のトラックを再生できる。
10.7.Search
図121を参照。
10.7.1.アーティスト探索
図122を参照する。ユーザは、Searchテキストボックスに探索用語を入力し且つSearch forメニュー上のArtistsラジオボタンを選択することによりMusicStationカタログ内の任意のアーティストを探索してもよい。その後ユーザは、探索により返された任意のアーティストプロファイルを閲覧してもよい。
10.7.2.トラック探索
図123を参照する。ユーザは、Searchテキストボックスに探索用語を入力し且つSearch forメニュー上のTracksラジオボタンを選択することによりMusicStationカタログ内の任意のトラックを探索してもよい。その後ユーザは、探索により返された任意のトラックを再生してもよい。
10.7.3.アルバム探索
図124を参照する。ユーザは、Searchテキストボックスに探索用語を入力し且つSearch forメニュー上のAlbumsラジオボタンを選択することによりMusicStationカタログ内の任意のアルバムを探索してもよい。その後ユーザは、探索により返された任意のアルバムプロファイルを閲覧又は再生してもよい。
10.8.Play Top Track
図125を参照する。ホームメニュー上のPlay Top Trackオプションは、ハンドセット上に既にあるトラックのリストから無作為のトラックをLineupの末尾に追加する。Lineupが空である場合、このトラックは迅速に再生を開始する。トラックは既にダウンロードされているため、このオプションはネットワーク受信可能範囲であることを必要としない。
10.9.Options
図126を参照する。Options画面により、ユーザはMusicStationアプリケーションを制御するために一般的な情報及びオプションにアクセスできる。
10.9.1.Membership Status
図127を参照する。このオプションは、ユーザの資格の状態を表示する。これは、次の更新の日付/時間、更新料及び更新頻度等の更新の詳細を示す。ユーザは、Cancel Membershipオプションを使用して資格を取り消せる。
以下の表において、資格処理の種々の段階を説明する。
Figure 2014195274
10.9.2.About
図128を参照する。この画面は、MusicStationのバージョンに関する情報を表示する。これは、ユーザが現時点でハンドセットにダウンロードしてあるトラックの合計数を更に表示する。
10.9.3.Roaming Options
図129を参照する。ユーザは、MusicStationに対するローミング挙動を設定できる。電話機がローミング中、ユーザは、トラックをダウンロードする時又はMusicStationがメニュー項目及び画像を更新する時に追加の課金を受ける。
Figure 2014195274
Menu & picture updatesに対するローミング挙動がAskに設定される場合、ユーザは、所定のセッションの間に、ローミング中のダウンロード、更新及び追加の課金を許可/拒否するように要求する警告メッセージを示される。図130を参照。
ユーザがローミング中にトラックをダウンロードしようとし、トラックに対するローミング挙動がAskに設定される場合、ユーザは、ローミング中のダウンロード、更新及び追加の課金を許可/拒否するように要求する警告メッセージを示される。この許可/拒否の動作は、現在のセッションの設定を行なう。図131を参照。
10.9.4.言語の選択
複数の言語を規定するサービスにおいて、ユーザはMusicStationの言語を変更できる。言語を変更すると、ユーザはMusicStationを再起動するように指示される。動作を確定すると、MusicStationは終了する。図132を参照。
10.9.5.Terms & Conditions
この画面は、このMusicStationサービスに対する一般的なサービス別条件へのWAPリンクを表示する。図133を参照。
10.9.6.メモリカードの最大限の使用
ユーザは、MusicStationが音楽及びデータを格納するのに使用するメモリカードの最大の割合を選択できる。ユーザは、電話機の別の使用(例えば、写真)のためにより多くの空間を残すために小さい値を設定できる。
11.Buzz
図134を参照する。ユーザは、Buzzプロファイルを作成することを選択してもよい。これにより、ユーザはMusicStationコミュニティ機能の全集合に参加できる。ユーザがBuzzプロファイルを有さない場合、ユーザは他のメンバと通信できない。
ユーザは、Buzz画面からプロファイルを閲覧し、ニュースの記事を読み且つInboxのメッセージにアクセスできる。
11.1.Join the Buzz
図135を参照する。ユーザがBuzzプロファイルを必要とするコミュニティ機能を使用しようとする場合、ユーザは、Join the Buzz画面にリダイレクトされ、登録したい先のメンバ名の入力を指示される。ユーザは名前を入力し且つ画像を選択してもよく、それによりプロファイルを形成する。入力された名前は一意である必要がある。
メンバ名が利用可能でない場合、別の名前が提案され、ユーザはそれを受け入れるか又は変更してもよい。ユーザは、My Profile画面からプロファイルを随時編集してもよい。オプションとして、ユーザは画像を選択し、短いキャッチフレーズを提供してもよい。それら項目は、他のユーザがそのメンバのプロファイルを閲覧する場合には必ず表示される。
11.2.Buzzメンバ
11.2.1.My Profile
図136を参照する。My Profile画面により、ユーザは、自身の個人専用にされたコンテンツと共にMusicStationコミュニティの全ての面にアクセスできる。ユーザは、プロファイルを作成する前、BuzzタブのNews項目にアクセスでき且つCool Members及びBuzz playlistsを閲覧できるが、友人の追加又は推薦の送出はできない。
ユーザが登録すると、この画面は以下を示す:
・メンバ名
・画像
・星評価−他のユーザがどのように評価したかを示す
・Listens−他のユーザがこのメンバーの共有プレイリストの1つを聴いた回数
・友人の数
・キャッチフレーズ
ユーザは、My Profile画面からCool Members、Buzz Playlists及びBuzz Friendsのリストを閲覧できる。
Figure 2014195274
11.2.2.Edit my profile
メンバとして登録後、ユーザはMoreメニューからEdit My Profileオプションを使用してメンバプロファイルの詳細を随時変更してもよい。図137を参照。これにより、ユーザは、キャッチフレーズを変更でき且つ画像を変更できる。更にユーザは、プロファイルを他のユーザに対して可視にしたいか及びTop Tracksをプロファイル画面上で聴かれるようにしたいかを指定できる。
11.2.3.Cool Members
図138を参照する。My Profile画面上のCool Membersオプションにより、ユーザはメンバの種々のリストにアクセスできる。
Figure 2014195274
ユーザは、これらのリストの任意のメンバをクリックし、そのメンバのプロファイルを閲覧してもよい(第11.2.4節)。
11.2.4.Buzz Playlists
図139を参照する。My Profile画面上のBuzz Playlistsオプションにより、ユーザは、他のユーザの編集者プレイリスト、自動生成プレイリスト及び共有プレイリストを含む種々のプレイリストにアクセスできる。ユーザは、それらプレイリストのうち任意のプレイリストを閲覧、再生及び評価できる。図140を参照する。それら画面上のリストは、MusicStationにより毎晩又は毎週更新される。
Figure 2014195274
11.2.5.My Friends
図141を参照する。My Profile画面上のMy Friendsオプションにより、ユーザは、友人として追加したユーザのリスト及び任意の保留中の友人要求にアクセスできる。Friendsに関する更なる情報は、第11.3節を参照。
11.2.6.View another member profile(別のメンバのプロファイルの閲覧)
図142を参照する。この画面は、別のメンバの詳細を表示する。メンバがEdit My Profile画面上でプロファイルを可視にするオプションを有効にした場合のみ、そのメンバのプロファイルは別のユーザにより閲覧される。
Member Profile画面は、メンバの以下の情報を表示する:
・メンバ名
・画像
・星評価
・Listens(他のユーザがこのメンバの共有プレイリストの1つを聴いた回数)
・友人の数
・キャッチフレーズ
・共有プレイリストのリスト
・My Top Tracks(これはユーザの上位5つのトラック)
ユーザはこの画面から以下のことを行なってもよい:
・このメンバの共有プレイリストを閲覧する。
・このメンバの上位5つのトラックを閲覧及び再生する。(このオプションは、他のメンバがEdit my profileオプションを使用してメンバプロファイルを構成する時にオプションをShow my top tracksにした場合にのみ示される。第11.2.2節を参照。)
・このユーザを友人として追加するように要求する。
・このメンバを評価する。
11.3.Friends
Buzzメンバは、メッセージを添付してもよい他のメンバに項目を推薦できる。しかし、友人のリストに追加したメンバに対してのみこれを行なえる。ユーザは、他のBuzzメンバに友人要求を送出することにより又は他のメンバからの要求を確認することにより友人を追加できる。友人のリストは、My Profile画面から閲覧されてもよい(第11.3.2節を参照)。全ての推薦は、BuzzタブのInboxにおいて閲覧可能である(第11.4節を参照)。
11.3.1.メンバを友人として追加するための要求
図143を参照する。メンバがユーザインタフェースにおいて一覧表示されるいずれの場所においても、ユーザはそのメンバに友人になるように要求を送出するためにMoreメニューからAdd as Friendオプションを選択してもよい。ユーザはメッセージを入力してもよく、そのメッセージは友人要求と共に送出される。メッセージを送出するために、ユーザはMoreメニューからSendオプションを選択する。友人要求は他のメンバに送出され、そのメンバは要求を受け入れるか又は拒否するオプションを有する。
11.3.2.友人のリストの閲覧
図144を参照する。ユーザは、My Profile画面を表示し且つMy friendsオプションを選択することにより友人のリストを随時閲覧してもよい。
11.3.3.保留中の友人要求の閲覧
図145を参照する。ユーザは、My Profile画面から利用可能なMy Friends画面の見出しPending friend requestsの下、送出したがまだ応答されていない友人要求のリストを閲覧してもよい(第11.3.2節を参照)。
11.3.4.名前で友人を追加するための要求
図146を参照する。ユーザは、友人として追加したいメンバの名前を知っている場合、My Profile画面のMy FriendsメニューオプションからアクセスされるAdd friend by nameオプションを使用して名前を入力することにより、そのメンバに友人要求を送出してもよい(第11.3.2節を参照)。
11.3.5.電話番号で友人を追加するための要求
図147を参照する。ユーザは、友人として追加したいメンバの移動電話番号を知っている場合、My Profile画面のMy FriendsメニューオプションからアクセスされるAdd friend by phone noオプションを使用して名前を入力することにより、そのメンバに友人要求を送出してもよい(第11.3.2節を参照)。
11.3.6.友人に対するプレイリストの推薦の送出
MusicStationにおいてプレイリストが聴かれるいずれの場所においても、ユーザはMoreメニューからSend to Friendオプションを使用して1人以上の友人にメッセージを送出し、そのプレイリストを推薦してもよい。推薦メッセージは、その友人のInboxに到着する(第11.4.3節)。
11.3.7.友人に対するアーティストの推薦の送出
アーティストがMusicStationにおいて一覧表示されるいずれの場所においても、ユーザは、MoreメニューからSend to Friendオプションを使用して1人以上の友人にメッセージを送出し、そのアーティストを推薦してもよい。推薦メッセージは、その友人のInboxに到着する(第11.4.4節)。
11.3.8.友人に対するアルバムの推薦の送出
アルバムがMusicStationにおいて一覧表示されるいずれの場所においても、ユーザは、MoreメニューからSend to Friendオプションを使用して1人以上の友人にメッセージを送出し、そのアルバムを推薦してもよい。推薦メッセージは、その友人のInboxに到着する(第11.4.5節)。
11.3.9.友人に対するトラックの推薦の送出
トラックがMusicStationにおいて一覧表示されるいずれの場所においても、ユーザは、MoreメニューからSend to Friendオプションを使用して1人以上の友人にメッセージを送出し、そのトラックを推薦してもよい。推薦メッセージは、その友人のInboxに到着する(第11.4.6節)。図148を参照。
11.4.Inbox
Inboxは、このMusicStationサービスのユーザでもあるユーザの友人から到着したメッセージ及び推薦を表示する。MusicStationのFriends機能性に対する概要に関しては、第11.3節を参照。メッセージは、高度なバックグラウンドダウンローダによりバックグラウンドでダウンロードされ、ユーザからの特定の対話なしでInboxに現れる。
11.4.1.友人要求メッセージの受信
図149を参照する。別のメンバがこのユーザを友人として追加するように要求する場合、友人要求はこのユーザのInboxに到着する。このユーザは、4つの方法のうち1つ方法でこの要求に応答できる。
Figure 2014195274
このユーザが応答すると、その応答は他のメンバのInboxに配布される。この応答については、第11.4.2節において説明する。
11.4.2.友人要求からの応答
図150を参照する。このユーザが友人要求を別のメンバに送出した場合、そのメンバは要求を受け入れるか又は拒否するオプションを有する。応答はこのユーザに返され、Inboxに表示される。友人要求に対する3つの可能な応答を以下に一覧表示する。
Figure 2014195274
11.4.3.友人からのプレイリストの推薦の受信
図151を参照する。友人がこのユーザにプレイリストの推薦を送出する場合(第11.3.6節)、推薦メッセージがこのユーザのInboxに現れる。ユーザはメッセージを開き、プレイリストを閲覧するためにメッセージ中のハイパーリンクをクリックできる。
11.4.4.友人からのアーティストの推薦の受信
図152を参照する。友人がこのユーザにアーティストの推薦を送出する場合(第11.3.7節)、メッセージがこのユーザのInboxに現れる。ユーザはメッセージを開き、アーティストプロファイル画面に直接移動するためにメッセージ中のハイパーリンクをクリックできる。
11.4.5.友人からのアルバムの推薦の受信
図153を参照する。友人がこのユーザにアルバムの推薦を送出する場合(第11.3.8節)、メッセージがこのユーザのInboxに現れる。ユーザはメッセージを開き、アルバム画面に直接移動するためにメッセージ中のハイパーリンクをクリックできる。また、ユーザは、アーティストプロファイル画面に直接移動するためにアーティスト名をクリックしてもよい。
11.4.6.友人からのトラックの推薦の受信
図154を参照する。友人がこのユーザにトラックの推薦を送出する場合(第11.3.9節)、推薦メッセージがこのユーザのInboxに現れる。ユーザはメッセージを開き、Lineupにトラックを追加するためにメッセージ中のハイパーリンクをクリックできる。
11.5.News
11.5.1.編集者の記事のリスト
Newsセクションは、常に更新されるニュースの記事のリストを表示する。通常、国際的に広く関心のある2つの記事、現地で一般的に関心のある2つの記事、並びにこのユーザの音楽の聴き方及び評価挙動に基づく2つの記事に分類される6つの記事が表示される。この分類は、特定のサービスの要望のために構成される。
記事のリストは、MusicStationの正常な使用状態中に高度なバックグラウンドダウンローダにより更新される。記事は、バックグラウンドでこのリストに追加され、ユーザが次にBuzzタブにナビゲートした時に迅速に閲覧可能である。
11.5.2.記事の閲覧
図155を参照する。記事を閲覧するために、ユーザは、リストから記事を選択し且つジョイスティックボタンをクリックするか又はMoreメニューからOpenオプションを選択する。記事の本文は、見出し及び関連する画像の下に表示される。
11.5.3.記事におけるハイパーリンク
図156を参照する。記事は、MusicStation内の他の画面へのハイパーリンクを含んでもよい。例えば、新しいアルバムの発売の発表は、関連するアーティスト及びアルバムの画面へのリンクを含むことができる。ハイパーリンクは、記事の画面において青色で表示される。ユーザは、ハイパーリンクを選択し且つジョイスティックボタンをクリックすることにより、アルバム又はアーティストに直接ナビゲートしてもよい。ユーザがジョイスティックの上/下を使用して記事を上下にスクロールすると、有効なハイパーリンクは連続するハイパーリンク間で移動する。
12.Lineup
図157を参照する。Lineupは、MusicStationのクライアントの中心的な概念である。これは、ユーザが聴くためにキュー登録したトラックの現在のプレイリストである。プレイリスト上の曲は順に再生される。Lineupのコンテンツは、Lineup画面で随時閲覧可能である。
現在のトラックは、現在再生中のLineup中のトラックである。現在のトラックは、左側の小さな青色のポインタで強調表示される。
図158を参照する。Lineupに追加されたトラックがない場合、オプションPlay top trackが表示される。このオプションは、Top trackをLineupにランダムに追加し且つ再生する。Top tracksは既にダウンロードされており、迅速に再生する。
12.1.トラックダウンロードの状態
図159を参照する。まだダウンロードされていないトラックは、バックグラウンドでダウンロードされる。現在ダウンロードしているか又はダウンロードされるのを待っているトラックは、単色のフォントで示される。トラックのダウンロードの進捗が、0〜100%の割合で表示される。
トラックは、Lineupから順に再生される。ダウンロードがまだ終了していないトラックに到達した場合、再生はそのトラックをスキップし、ダウンロードされている次のトラックを再生する。トラックは、ダウンロードされると再生可能になる。MusicStationは、バックグラウンドでのトラックのダウンロードを高度に管理して、ユーザ体験を最適化し、音楽再生が連続的であり且つユーザが音楽の連続した流れを聞けることを保証する。
トラックがLineupに追加された方法に依存してトラックは1回に1つダウンロードされるが、ユーザがアプリケーションを終了することによりダウンロードを中断したかには関係なく、複数のトラックが部分的にダウンロードされた状態で示される。トラックがダウンロードされている間、ユーザは、既にダウンロードされた音楽を聴くことができ、MusicStationユーザインタフェースの残りの部分を自由にナビゲートできる。MusicStationが終了し、終了した場所からダウンロードを後で継続する場合、部分的にダウンロードされたトラックは保管される。
12.2.Save as playlist
図160を参照する。ユーザは、現在のLineupをプレイリストに対して保管できる。現在のLineupをプレイリストとして保管するために、ユーザはMoreメニューからSave as playlistを選択する。ユーザは、新しいプレイリストとして現在のLineupを保管すること又は既存のプレイリストにトラックを追加することを選択できる。この保管されたプレイリストは、ハンドセット上に中央に保管される。
12.3.Lineupからの除去
図161を参照する。ユーザは、Lineupからトラックを除去できる。Lineupからトラックを除去するために、ユーザは、トラックを選択し且つMoreメニューからRemoveを選択する。ユーザがCerrent Track(現在のトラック)を除去すると、現在のプレイリスト中の次に利用可能なトラックが再生される。
12.4.Lineupのクリア
図162を参照する。ユーザは、現在のLineupをクリアでき、Lineupから全てのトラックを除去する。Lineupをクリアするために、ユーザは、MoreメニューからClearを選択する。音楽再生は停止する。
12.5.現在のLineupのトラックへのジャンプ及び再生
ユーザは、現在のLineupから別のトラックを選択して再生できる。これを行なうために、ユーザはジョイスティックを使用してトラックにナビゲートする。ユーザは、ジョイスティックボタンを押下することにより又はMoreメニューからPlayを選択することによりトラックを開始できる。MusicStationは、選択したトラックの再生を開始する。ダウンロードされたトラックのみが再生可能である。
12.6.Lineupへの音楽の追加
ユーザは、MusicStationの音楽カタログをナビゲートし、トラック、アルバム、アーティスト又はプレイリストを選択してLineupに追加できる。ジョイスティックでトラックを選択することにより、任意のトラックがLineupに追加される。MoreメニューからAdd to Lineupを選択することにより、任意のプレイリスト、アルバム又はトラックが追加される。
Lineupが空である場合、その項目の再生が開始する。Lineupが既にトラックを含む場合、追加された項目はLineupの末尾にキュー登録される。ユーザは、Lineupタブにいくことにより追加したトラックを閲覧できる。ダウンロードされていないトラックは、ダウンロードされる前にLineupに追加される。MusicStationは、バックグラウンドでの項目のダウンロードを高度に管理し、ユーザが音楽の連続した流れを楽しむことを可能にする。
Lineupに項目を追加するための他のオプションがMoreメニュー上に提供される。Play next、Play ASAP又はPlay now等のそれらのオプションを以下に更に詳細に説明する。ユーザがダウンロードされる必要のあるトラックをLineupに追加し、現在Lineup中に他のトラックが存在しない場合、ユーザは迅速に再生するために上位のトラックを追加するオプションにより指示される。図163を参照。
12.6.1.Add to Lineup
ユーザは、MusicStationカタログを閲覧している時、MoreメニューからAdd to Lineupを選択して、トラック、プレイリスト、選択したアーティストによるトラック又はアルバムをLineupに追加できる。
Figure 2014195274
12.6.2.Play Next
ユーザは、MusicStationカタログを閲覧している時、MoreメニューからPlay nextを選択して、トラック、プレイリスト、選択したアーティストによるトラック又はアルバムをLineupの現在再生しているトラックの後に挿入できる。
Figure 2014195274
12.6.3.Play Now
ユーザは、MusicStationカタログを閲覧している時、MoreメニューからPlay nowを選択して、ダウンロードされたトラックをLineupに挿入できる。現在再生中のトラックは中断され、選択されたトラックは再生を開始し且つ現在のトラックを置換する。
Figure 2014195274
12.6.4.Play ASAP
Play ASAPは、可能な限り迅速に再生することを意味する。ユーザは、MusicStationカタログを閲覧している時、MoreメニューからPlay ASAPを選択して、Lineupにダウンロードされていないトラック、プレイリスト、選択したアーティストによるトラック又はアルバムを選択できる。利用可能になると迅速に、トラック、プレイリスト、選択したアーティストによるトラック又はアルバムは現在再生中のトラックを置換する。
トラック、プレイリスト、選択したアーティストによるトラック又はアルバムがまだダウンロードされていない場合、ユーザは、MusicStationカタログを閲覧している時、MoreメニューからPlay ASAPオプションを選択できる。
Figure 2014195274
13.Playing
図164を参照。
13.1.1.Playing画面
Playingタブは、現在再生中のトラックの詳細を表示する。
Figure 2014195274
13.1.2.Playingの動作
ユーザは、Playingタブにおいて以下の動作を実行できる。
Figure 2014195274
付録2:状況依存メニュー
以下の付録は、MusicStationにおいてメニュー及びオブジェクトを閲覧している時にMoreメニューにおいて利用可能なオプションを詳細に示す。
Figure 2014195274
Figure 2014195274
Figure 2014195274
Figure 2014195274
Figure 2014195274
Figure 2014195274

Claims (50)

  1. デジタル音楽コンテンツを携帯無線コンピューティング装置にダウンロードし、使用することを可能にする方法であって:
    (a)エンドユーザの入力なしで前記無線装置と関連するパラメータに自動的に適応されたソフトウェアアプリケーションを前記無線コンピューティング装置上で実行するステップと;
    (b)無線ネットワークを使用してリモートサーバ上の音楽コンテンツを閲覧及び探索し、前記無線ネットワークを使用して前記リモートサーバから音楽コンテンツをダウンロードし且つ前記ダウンロードした音楽コンテンツを再生及び管理することを、前記アプリケーションがエンドユーザに可能にするステップと;
    (c)加入サービスが終了していない限り、前記装置への種々の音楽トラックの無制限の合法的なダウンロードを可能にし且つ前記装置に格納された前記トラックのうち任意のトラックの再生を可能にするデジタル権利管理システムを前記アプリケーションが含むステップと
    を備えることを特徴とする方法。
  2. 前記デジタル権利管理システムは、前記加入サービスが終了した場合でも音楽トラックが依然として再生可能であるように前記音楽トラックの購入を可能とすることを特徴とする請求項1記載の方法。
  3. 前記加入サービスのための課金インフラストラクチャは、前記無線ネットワークを制御するネットワークオペレータにより提供される前記課金インフラストラクチャの一部であることを特徴とする請求項1又は2記載の方法。
  4. 前記無線装置と関連する前記パラメータは、前記無線装置の製造業者及び機種により異なることを特徴とする請求項1乃至3のいずれか1項に記載の方法。
  5. 前記パラメータは、Javaの特定のバージョンを規定することを特徴とする請求項1乃至4のいずれか1項に記載の方法。
  6. 前記パラメータは、実現されたJavaプラットフォームの特定の部分を規定することを特徴とする請求項1乃至5のいずれか1項に記載の方法。
  7. 前記パラメータは、オペレーティングシステム及びファームウェアのリリースを規定することを特徴とする請求項1乃至6のいずれか1項に記載の方法。
  8. 前記パラメータは、前記装置を提供した特定のモバイルネットワークオペレータを規定することを特徴とする請求項1乃至7のいずれか1項に記載の方法。
  9. 前記パラメータは、画面の大きさ、画素数、色の深み、キーボード制御、ソフトキー特性のうち1つ以上を含む前記装置の物理特性を規定することを特徴とする請求項1乃至8のいずれか1項に記載の方法。
  10. 前記パラメータは、前記装置の計算能力を規定することを特徴とする請求項1乃至9のいずれか1項に記載の方法。
  11. 前記パラメータは、前記装置上のオーディオ、写真、ビデオ及びアニメーションを含むJavaを介して示されるメディアファイル及び形式の集合を規定することを特徴とする請求項1乃至10のいずれか1項に記載の方法。
  12. 前記パラメータは、前記装置のメモリの制限を規定することを特徴とする請求項1乃至11のいずれか1項に記載の方法。
  13. 前記パラメータは、前記装置のオペレーティングシステムが対処できるメディアファイル及び形式の集合を規定することを特徴とする請求項1乃至12のいずれか1項に記載の方法。
  14. 前記パラメータは、前記装置がネットワーク接続を処理する方法を規定することを特徴とする請求項1乃至13のいずれか1項に記載の方法。
  15. 前記パラメータは、CSD、GPRS、2G、2.5G、3G、WAP、SMS、Bluetooth、赤外線、WiFi、WiMAXのうち1つ以上を含む前記装置のネットワーク化能力及び処理を規定することを特徴とする請求項1乃至14のいずれか1項に記載の方法。
  16. 前記携帯無線装置は移動電話であることを特徴とする請求項1乃至15のいずれか1項に記載の方法。
  17. 前記移動電話は2.5G装置であることを特徴とする請求項16記載の方法。
  18. 前記移動電話は3G装置であることを特徴とする請求項16記載の方法。
  19. 前記アプリケーションは、各々が前記アプリケーションの基本的な機能と関連付けられる複数のユーザ選択可能なタブを示すグラフィカルユーザインタフェースを提示することを特徴とする請求項1乃至18のいずれか1項に記載の方法。
  20. 各タブは、前記アプリケーションが実行中は常に可視であることを特徴とする請求項19記載の方法。
  21. 1つのタブは、全ての入手可能なコンテンツ及び探索機能へのアクセスを可能にするホーム機能と関連付けられることを特徴とする請求項19又は20記載の方法。
  22. 1つのタブは、選択された場合、現在再生中のトラックの詳細を与えることを特徴とする請求項19乃至21のいずれか1項に記載の方法。
  23. 1つのタブは、選択された場合、コミュニティ及びニュース機能へのアクセスを可能にすることを特徴とする請求項19乃至22のいずれか1項に記載の方法。
  24. 1つのタブは、選択された場合、聴くか、あるいはダウンロードするトラックの現在のキューを表示することを特徴とする請求項19乃至23のいずれか1項に記載の方法。
  25. 前記アプリケーションは、状況依存の「more」メニュー項目を複数の画面が示すグラフィカルユーザインタフェースを提示し、選択された場合には現在選択されている項目と現在表示されている画面との少なくともいずれかに関連する更なる機能へのアクセスを可能にすることを特徴とする請求項1乃至24のいずれか1項に記載の方法。
  26. 前記アプリケーションは、マルチタスク状況依存のジョイスティックを使用して制御されることを特徴とする請求項1乃至25のいずれか1項に記載の方法。
  27. 前記ジョイスティックの特定の機能は、その上の画面上のアイコンにより示されることを特徴とする請求項26記載の方法。
  28. 前記ジョイスティックの操作は、前記キーパッドの数字キーを代用して実現されることを特徴とする請求項27記載の方法。
  29. 数字キー5は上、0は下、7は左、9は右の操作にそれぞれ対応することを特徴とする請求項28記載の方法。
  30. 前記アプリケーションは、「新しいアーティストを取得する」のと等価な機能がメニューにおいて「アーティスト」と同一レベルにある、状況に適した取得機能を提供することを特徴とする請求項1乃至29のいずれか1項に記載の方法。
  31. 「新しい曲を取得する」のと等価な機能は、メニューにおいてアーティストのトラックのメニューリストと同一レベルにあることを特徴とする請求項30記載の方法。
  32. 前記アプリケーションは、無線接続された他の携帯無線装置が時間的に同期して同一の音楽トラックを再生するように、1つの装置がマスタ再生装置としての役割を果たすことを可能にすることを特徴とする請求項1乃至31のいずれか1項に記載の方法。
  33. 前記無線接続は、Bluetooth等の近距離無線接続であることを特徴とする請求項32記載の方法。
  34. 前記アプリケーションは、現在再生中のトラックを示す前記再生画面に常に切り替える専用「再生」数字キーを提供することを特徴とする請求項1乃至33のいずれか1項に記載の方法。
  35. 前記アプリケーションは可変のタイムアウトを提供し、種々の画面は種々のタイムアウトを有することを特徴とする請求項1乃至34のいずれか1項に記載の方法。
  36. 探索画面に戻ることはないことを特徴とする請求項35記載の方法。
  37. 前記アプリケーションは、前記エンドユーザの再生の習慣に応じてフィルタリングされた対象のニュースを表示することを特徴とする請求項1乃至36のいずれか1項に記載の方法。
  38. 前記アプリケーションは詳細なエンドユーザリスニングデータを追跡し、リモートサーバにフィードバックすることを特徴とする請求項1乃至37のいずれか1項に記載の方法。
  39. 前記データは、トラックが聴かれた時間の長さを含むことを特徴とする請求項38記載の方法。
  40. 前記データは、スキップされたトラック及びスキップされた時期を含むことを特徴とする請求項38記載の方法。
  41. 前記データは、前記装置上にローカルにキャッシュされ、いずれ行なわれる通信を介してピギーバックとしてサーバに送出されることを特徴とする請求項38乃至40のいずれか1項に記載の方法。
  42. 前記ユーザが設定時間を越えてダウンロードしていない場合にのみ、前記装置は、いずれ行なわれると推測される通信を待たずにデータを先に送出し返すことを特徴とする請求項41記載の方法。
  43. 前記データは、前記装置上に表示する音楽トラック推奨を提供する音楽推奨エンジンを充実させるために使用されることを特徴とする請求項38乃至42のいずれか1項に記載の方法。
  44. 前記アプリケーションは共有プレイリストを表示することを特徴とする請求項1乃至43のいずれか1項に記載の方法。
  45. 前記アプリケーションは、ユーザにより生成されたプレイリストチャートを表示することを特徴とする請求項1乃至44のいずれか1項に記載の方法。
  46. 前記アプリケーションの全ての機能は、音楽再生中に利用可能であることを特徴とする請求項1乃至45のいずれか1項に記載の方法。
  47. 再生中に利用可能な前記機能は、ニュースの取得、並びに音楽トラックの探索、閲覧及び取得を含むことを特徴とする請求項46記載の方法。
  48. デジタル音楽コンテンツをダウンロードし、使用することを可能にする携帯無線コンピューティング装置であって:
    (a)前記無線装置上で実行され、エンドユーザの入力なしで前記無線装置と関連するパラメータに自動的に適応されたソフトウェアアプリケーションを具備し、
    (b)前記アプリケーションは、無線ネットワークを使用してリモートサーバ上の音楽コンテンツを閲覧及び探索し、前記無線ネットワークを使用して前記リモートサーバから音楽コンテンツをダウンロードし、かつ、前記ダウンロードした音楽コンテンツを再生及び管理することを、エンドユーザに可能にし、
    (c)前記アプリケーションは、前記装置への種々の音楽トラックの無制限の合法的なダウンロードを可能にし、かつ、加入サービスが終了していない限り前記装置に格納された前記トラックのうち任意のトラックの再生を可能にするデジタル権利管理システムを含む
    ことを特徴とする携帯無線コンピューティング装置。
  49. デジタル音楽コンテンツを携帯無線コンピューティング装置にダウンロードし、使用することを可能にするソフトウェアアプリケーションであって、
    (a)前記無線装置上で実行し、エンドユーザの入力なしで前記無線装置と関連するパラメータに自動的に適応されたソフトウェアアプリケーションであって:
    (b)前記アプリケーションは、無線ネットワークを使用してリモートサーバ上の音楽コンテンツを閲覧及び探索し、前記無線ネットワークを使用して前記リモートサーバから音楽コンテンツをダウンロードし、かつ、前記ダウンロードした音楽コンテンツを再生及び管理することを、エンドユーザに可能にし;
    (c)前記アプリケーションは、加入サービスが終了していない限り、前記装置への種々の音楽トラックの無制限の合法的なダウンロードを可能にし、かつ、前記装置に格納された前記トラックのうち任意のトラックの再生を可能にするデジタル権利管理システムを含む
    ことを特徴とするソフトウェアアプリケーション。
  50. 請求項49記載のソフトウェアアプリケーションを使用してダウンロードされた音楽トラック。
JP2014096165A 2006-05-05 2014-05-07 セルラ携帯電話端末、ソフトウェアアプリケーション、及び音楽トラック配信システム Expired - Fee Related JP5833178B2 (ja)

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
GB0608932A GB0608932D0 (en) 2006-05-05 2006-05-05 Musicstation testing architecture
GB0608936.1 2006-05-05
GB0608934.6 2006-05-05
GB0608936A GB0608936D0 (en) 2006-05-05 2006-05-05 Musicstation client architecture highlights
GB0608932.0 2006-05-05
GB0608935A GB0608935D0 (en) 2006-05-05 2006-05-05 Musicstation client overview version 4.7
GB0608933A GB0608933D0 (en) 2006-05-05 2006-05-05 Musicstation demonstration pack read me first
GB0608934A GB0608934D0 (en) 2006-05-05 2006-05-05 Introducing musicstation
GB0608935.3 2006-05-05
GB0608933.8 2006-05-05
GB0702596.8 2007-02-09
GBGB0702596.8A GB0702596D0 (en) 2006-05-05 2007-02-09 Big book one

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2009508477A Division JP2009536482A (ja) 2006-05-05 2007-05-08 デジタル音楽コンテンツを携帯無線コンピューティング装置にダウンロードし且つ使用することを可能にする方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2015121380A Division JP2015228657A (ja) 2006-05-05 2015-06-16 デジタル音楽コンテンツを携帯無線コンピューティング装置にダウンロードし且つ使用することを可能にする方法

Publications (2)

Publication Number Publication Date
JP2014195274A true JP2014195274A (ja) 2014-10-09
JP5833178B2 JP5833178B2 (ja) 2015-12-16

Family

ID=37899084

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2009508477A Pending JP2009536482A (ja) 2006-05-05 2007-05-08 デジタル音楽コンテンツを携帯無線コンピューティング装置にダウンロードし且つ使用することを可能にする方法
JP2014096165A Expired - Fee Related JP5833178B2 (ja) 2006-05-05 2014-05-07 セルラ携帯電話端末、ソフトウェアアプリケーション、及び音楽トラック配信システム
JP2015121380A Pending JP2015228657A (ja) 2006-05-05 2015-06-16 デジタル音楽コンテンツを携帯無線コンピューティング装置にダウンロードし且つ使用することを可能にする方法
JP2017130479A Pending JP2017208840A (ja) 2006-05-05 2017-07-03 デジタル音楽コンテンツを携帯無線コンピューティング装置にダウンロードし且つ使用することを可能にする方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2009508477A Pending JP2009536482A (ja) 2006-05-05 2007-05-08 デジタル音楽コンテンツを携帯無線コンピューティング装置にダウンロードし且つ使用することを可能にする方法

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2015121380A Pending JP2015228657A (ja) 2006-05-05 2015-06-16 デジタル音楽コンテンツを携帯無線コンピューティング装置にダウンロードし且つ使用することを可能にする方法
JP2017130479A Pending JP2017208840A (ja) 2006-05-05 2017-07-03 デジタル音楽コンテンツを携帯無線コンピューティング装置にダウンロードし且つ使用することを可能にする方法

Country Status (11)

Country Link
US (10) US8510847B2 (ja)
EP (2) EP2021954B1 (ja)
JP (4) JP2009536482A (ja)
KR (2) KR101497263B1 (ja)
AU (2) AU2007246910B2 (ja)
BR (1) BRPI0710320A2 (ja)
CA (1) CA2651347C (ja)
GB (8) GB0702604D0 (ja)
MX (1) MX2008014187A (ja)
WO (1) WO2007129081A1 (ja)
ZA (1) ZA200809534B (ja)

Families Citing this family (232)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11650784B2 (en) 2003-07-28 2023-05-16 Sonos, Inc. Adjusting volume levels
US10613817B2 (en) 2003-07-28 2020-04-07 Sonos, Inc. Method and apparatus for displaying a list of tracks scheduled for playback by a synchrony group
US11106425B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US8234395B2 (en) 2003-07-28 2012-07-31 Sonos, Inc. System and method for synchronizing operations among a plurality of independently clocked digital data processing devices
US11294618B2 (en) 2003-07-28 2022-04-05 Sonos, Inc. Media player system
US8290603B1 (en) 2004-06-05 2012-10-16 Sonos, Inc. User interfaces for controlling and manipulating groupings in a multi-zone media system
US11106424B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US8086752B2 (en) 2006-11-22 2011-12-27 Sonos, Inc. Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data
US20130097302A9 (en) * 2003-10-01 2013-04-18 Robert Khedouri Audio visual player apparatus and system and method of content distribution using the same
US20060008256A1 (en) * 2003-10-01 2006-01-12 Khedouri Robert K Audio visual player apparatus and system and method of content distribution using the same
EP1695509A1 (en) * 2003-12-16 2006-08-30 Telefonaktiebolaget LM Ericsson (publ) Technique for transferring media data files
US9374607B2 (en) * 2012-06-26 2016-06-21 Sonos, Inc. Media playback system with guest access
US9977561B2 (en) 2004-04-01 2018-05-22 Sonos, Inc. Systems, methods, apparatus, and articles of manufacture to provide guest access
US8326951B1 (en) 2004-06-05 2012-12-04 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
US8868698B2 (en) 2004-06-05 2014-10-21 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
US7774384B2 (en) * 2005-05-25 2010-08-10 At&T Intellectual Property I, L.P. Obtaining user feedback for unavailable content
US8352323B2 (en) 2007-11-30 2013-01-08 Blaze Mobile, Inc. Conducting an online payment transaction using an NFC enabled mobile communication device
GB0702604D0 (en) 2006-05-05 2007-03-21 Omnifone Ltd Handset commissi0ning
US8903843B2 (en) * 2006-06-21 2014-12-02 Napo Enterprises, Llc Historical media recommendation service
US8327266B2 (en) 2006-07-11 2012-12-04 Napo Enterprises, Llc Graphical user interface system for allowing management of a media item playlist based on a preference scoring system
US8805831B2 (en) 2006-07-11 2014-08-12 Napo Enterprises, Llc Scoring and replaying media items
US9003056B2 (en) 2006-07-11 2015-04-07 Napo Enterprises, Llc Maintaining a minimum level of real time media recommendations in the absence of online friends
US7970922B2 (en) 2006-07-11 2011-06-28 Napo Enterprises, Llc P2P real time media recommendations
US8059646B2 (en) 2006-07-11 2011-11-15 Napo Enterprises, Llc System and method for identifying music content in a P2P real time recommendation network
US8090606B2 (en) 2006-08-08 2012-01-03 Napo Enterprises, Llc Embedded media recommendations
US8620699B2 (en) * 2006-08-08 2013-12-31 Napo Enterprises, Llc Heavy influencer media recommendations
US8997159B2 (en) * 2006-09-08 2015-03-31 Virgin America Inc. On-board vessel entertainment system
US8788080B1 (en) 2006-09-12 2014-07-22 Sonos, Inc. Multi-channel pairing in a media system
US8483853B1 (en) 2006-09-12 2013-07-09 Sonos, Inc. Controlling and manipulating groupings in a multi-zone media system
US9202509B2 (en) 2006-09-12 2015-12-01 Sonos, Inc. Controlling and grouping in a multi-zone media system
US20100250458A1 (en) * 2009-03-30 2010-09-30 Mspot, Inc. Content based social networking system and method
US9317179B2 (en) 2007-01-08 2016-04-19 Samsung Electronics Co., Ltd. Method and apparatus for providing recommendations to a user of a cloud computing service
KR100923456B1 (ko) * 2007-02-23 2009-11-09 삼성전자주식회사 휴대용 단말기에서 디지털 저작권 관리 컨텐츠 관리 방법 및 장치
US9224427B2 (en) 2007-04-02 2015-12-29 Napo Enterprises LLC Rating media item recommendations using recommendation paths and/or media item usage
US8112720B2 (en) 2007-04-05 2012-02-07 Napo Enterprises, Llc System and method for automatically and graphically associating programmatically-generated media item recommendations related to a user's socially recommended media items
KR100983793B1 (ko) * 2007-04-18 2010-09-27 한국전자통신연구원 상호운용적 디지털저작권관리 장치 및 그 방법
US9037632B2 (en) 2007-06-01 2015-05-19 Napo Enterprises, Llc System and method of generating a media item recommendation message with recommender presence information
US20090049045A1 (en) 2007-06-01 2009-02-19 Concert Technology Corporation Method and system for sorting media items in a playlist on a media device
US8839141B2 (en) 2007-06-01 2014-09-16 Napo Enterprises, Llc Method and system for visually indicating a replay status of media items on a media device
US9164993B2 (en) 2007-06-01 2015-10-20 Napo Enterprises, Llc System and method for propagating a media item recommendation message comprising recommender presence information
US8285776B2 (en) 2007-06-01 2012-10-09 Napo Enterprises, Llc System and method for processing a received media item recommendation message comprising recommender presence information
US8065429B2 (en) * 2007-06-28 2011-11-22 Nokia Corporation System, apparatus and method for associating an anticipated success indication with data delivery
KR101431741B1 (ko) * 2007-08-01 2014-08-20 삼성전자주식회사 휴대용 단말기에서 컨텐츠를 전송하는 장치 및 방법
BRPI0816777A2 (pt) 2007-09-12 2017-05-02 Sony Corp método e sistema de distribuição de conteúdo para um ou mais dispositivos de usuários
US7865522B2 (en) 2007-11-07 2011-01-04 Napo Enterprises, Llc System and method for hyping media recommendations in a media recommendation system
KR101453464B1 (ko) * 2007-11-09 2014-10-21 삼성전자주식회사 이동통신 단말기의 컨텐츠 권한 정보 관리 장치 및 방법
US9060034B2 (en) 2007-11-09 2015-06-16 Napo Enterprises, Llc System and method of filtering recommenders in a media item recommendation system
US8745507B2 (en) 2007-11-30 2014-06-03 At&T Intellectual Property I, L.P. Preloader employing enhanced messages
US8175579B2 (en) * 2007-12-05 2012-05-08 Echostar Technologies L.L.C. Apparatus, systems and methods to communicate authorized programming between a receiving device and a mobile device
EP2071898A1 (en) * 2007-12-10 2009-06-17 Telefonaktiebolaget LM Ericsson (publ) Method for alteration of integrity protected data in a device, computer program product and device implementing the method
US9224150B2 (en) 2007-12-18 2015-12-29 Napo Enterprises, Llc Identifying highly valued recommendations of users in a media recommendation network
US9734507B2 (en) 2007-12-20 2017-08-15 Napo Enterprise, Llc Method and system for simulating recommendations in a social network for an offline user
US8396951B2 (en) 2007-12-20 2013-03-12 Napo Enterprises, Llc Method and system for populating a content repository for an internet radio service based on a recommendation network
US8117193B2 (en) 2007-12-21 2012-02-14 Lemi Technology, Llc Tunersphere
US8316015B2 (en) 2007-12-21 2012-11-20 Lemi Technology, Llc Tunersphere
US8060525B2 (en) 2007-12-21 2011-11-15 Napo Enterprises, Llc Method and system for generating media recommendations in a distributed environment based on tagging play history information with location information
JP5000477B2 (ja) * 2007-12-26 2012-08-15 日立公共システムエンジニアリング株式会社 コンテンツデータ、コンテンツ不正検出のプログラム、装置及び方法
USRE48946E1 (en) * 2008-01-07 2022-02-22 D&M Holdings, Inc. Systems and methods for providing a media playback in a networked environment
JP2009205440A (ja) * 2008-02-28 2009-09-10 Hitachi Ltd 情報処理装置
GB0807116D0 (en) * 2008-04-18 2008-05-21 Omnifone Ltd Music subscription service
EP2304597A4 (en) * 2008-05-31 2012-10-31 Apple Inc ADAPTIVE RECOMMENDATION DEVICE TECHNOLOGY
JP4600521B2 (ja) * 2008-06-03 2010-12-15 ソニー株式会社 情報処理装置、情報処理方法、プログラム
JP4596043B2 (ja) * 2008-06-03 2010-12-08 ソニー株式会社 情報処理装置、情報処理方法、プログラム
JP4596044B2 (ja) * 2008-06-03 2010-12-08 ソニー株式会社 情報処理システム、情報処理方法
EP2304606A1 (en) * 2008-06-13 2011-04-06 Christopher Simon Gorman Content system
US20090326965A1 (en) * 2008-06-26 2009-12-31 Microsoft Corporation Bulk media
US8825552B2 (en) * 2008-09-29 2014-09-02 Lemi Technology, Llc Providing a radio station at a user device using previously obtained DRM locked content
US20100121891A1 (en) * 2008-11-11 2010-05-13 At&T Intellectual Property I, L.P. Method and system for using play lists for multimedia content
US20100125474A1 (en) * 2008-11-19 2010-05-20 Harmon J Scott Service evaluation assessment tool and methodology
ES2351565B1 (es) * 2009-01-19 2011-12-12 Vodafone España, S.A.U. Metodo para compartir y registrar logros obtenidos en servicios web.
US8200602B2 (en) 2009-02-02 2012-06-12 Napo Enterprises, Llc System and method for creating thematic listening experiences in a networked peer media recommendation environment
US8838824B2 (en) * 2009-03-16 2014-09-16 Onmobile Global Limited Method and apparatus for delivery of adapted media
US9143381B2 (en) 2009-04-16 2015-09-22 Microsoft Technology Licenising, LLC Sequenced transmission of digital content items
WO2010124446A1 (zh) * 2009-04-27 2010-11-04 华为技术有限公司 发行许可的方法、装置和系统
US8148622B2 (en) * 2009-07-01 2012-04-03 Apple Inc. Media playback queuing for playback management
TR200905180A1 (tr) * 2009-07-02 2011-01-21 Turkcell �Let���M H�Zmetler� A.�. Eğitim içeriklerinin sunulduğu bir mobil cihaz.
US8725648B2 (en) 2009-09-01 2014-05-13 Savoirsoft, Inc. Digital rights content services architecture
KR20110047390A (ko) * 2009-10-30 2011-05-09 삼성전자주식회사 Drm 컨텐츠 처리 방법, 장치 및 시스템
US20110107431A1 (en) * 2009-10-30 2011-05-05 Nokia Corporation Method and apparatus for protecting an embedded content object
CN102196438A (zh) * 2010-03-16 2011-09-21 高通股份有限公司 通信终端标识号管理的方法和装置
US8356359B2 (en) * 2010-04-19 2013-01-15 Ericsson Television, Inc. Licensing rights for media content that follows a subscriber
SG185048A1 (en) 2010-04-30 2012-12-28 Now Technologies Ip Ltd Content management apparatus
US8930277B2 (en) * 2010-04-30 2015-01-06 Now Technologies (Ip) Limited Content management apparatus
US20110271228A1 (en) * 2010-05-03 2011-11-03 Zumobi, Inc. Systems, Methods, and Computer Program Products Providing an Article Selection Structure
US9361130B2 (en) 2010-05-03 2016-06-07 Apple Inc. Systems, methods, and computer program products providing an integrated user interface for reading content
WO2011156785A2 (en) * 2010-06-10 2011-12-15 Cricket Communications, Inc. Media server providing unlimited medai access over wireless infrastructure
US9021554B2 (en) 2010-06-10 2015-04-28 At&T Mobility Ii Llc Unlimited access to media and applications over wireless infrastructure
EP2580735A4 (en) * 2010-06-10 2015-07-01 Cricket Communications Inc MOBILE DEVICE FOR MEDIA ACCESS AND PLACEMENT
US9015588B2 (en) * 2010-06-10 2015-04-21 At&T Mobility Ii Llc Advanced playback queue management
US20120059910A1 (en) * 2010-06-10 2012-03-08 Cricket Communications, Inc. Unlimited media access over wireless infrastructure
US9497290B2 (en) * 2010-06-14 2016-11-15 Blackberry Limited Media presentation description delta file for HTTP streaming
US9906838B2 (en) * 2010-07-12 2018-02-27 Time Warner Cable Enterprises Llc Apparatus and methods for content delivery and message exchange across multiple content delivery networks
US20120096371A1 (en) * 2010-08-02 2012-04-19 Be In, Inc. System and method for online interactive recording studio
US20120046099A1 (en) * 2010-08-17 2012-02-23 John Mraovic Method of mind influencing through subliminal messages
US8555332B2 (en) 2010-08-20 2013-10-08 At&T Intellectual Property I, L.P. System for establishing communications with a mobile device server
US10210160B2 (en) 2010-09-07 2019-02-19 Opentv, Inc. Collecting data from different sources
US9699503B2 (en) * 2010-09-07 2017-07-04 Opentv, Inc. Smart playlist
US8438285B2 (en) 2010-09-15 2013-05-07 At&T Intellectual Property I, L.P. System for managing resources accessible to a mobile device server
WO2012037184A2 (en) * 2010-09-15 2012-03-22 Bacardi & Company Limited Mixing device
US20120222133A1 (en) * 2010-09-28 2012-08-30 Adam Kidron Shared content management platform apparatuses, methods and systems
US8443420B2 (en) 2010-10-01 2013-05-14 At&T Intellectual Property I, L.P. System for communicating with a mobile device server
US8610546B2 (en) 2010-10-01 2013-12-17 At&T Intellectual Property I, L.P. System for selecting resources accessible to a mobile device server
US8516039B2 (en) 2010-10-01 2013-08-20 At&T Intellectual Property I, L.P. Apparatus and method for managing mobile device servers
US8989055B2 (en) 2011-07-17 2015-03-24 At&T Intellectual Property I, L.P. Processing messages with a device server operating in a telephone
US8478905B2 (en) 2010-10-01 2013-07-02 At&T Intellectual Property I, Lp System for synchronizing to a mobile device server
US8504449B2 (en) 2010-10-01 2013-08-06 At&T Intellectual Property I, L.P. Apparatus and method for managing software applications of a mobile device server
US9392316B2 (en) 2010-10-28 2016-07-12 At&T Intellectual Property I, L.P. Messaging abstraction in a mobile device server
US9066123B2 (en) 2010-11-30 2015-06-23 At&T Intellectual Property I, L.P. System for monetizing resources accessible to a mobile device server
KR101763642B1 (ko) * 2010-12-09 2017-08-14 삼성전자 주식회사 선호도 기반의 컨텐츠 제공 방법 및 시스템
CN102547620A (zh) * 2010-12-30 2012-07-04 同方股份有限公司 一种移动支付系统及其更新密钥的方法
US11429343B2 (en) 2011-01-25 2022-08-30 Sonos, Inc. Stereo playback configuration and control
US11265652B2 (en) 2011-01-25 2022-03-01 Sonos, Inc. Playback device pairing
KR20120117469A (ko) * 2011-04-15 2012-10-24 주식회사 네오위즈인터넷 음원 서비스를 제공하는 방법, 서버, 모바일 단말기 및 기록매체
US8732569B2 (en) * 2011-05-04 2014-05-20 Google Inc. Predicting user navigation events
US8458210B2 (en) * 2011-05-06 2013-06-04 Verizon Patent And Licensing Inc. Database load balancing through dynamic database routing
US10055493B2 (en) * 2011-05-09 2018-08-21 Google Llc Generating a playlist
US8788711B2 (en) 2011-06-14 2014-07-22 Google Inc. Redacting content and inserting hypertext transfer protocol (HTTP) error codes in place thereof
US9769285B2 (en) 2011-06-14 2017-09-19 Google Inc. Access to network content
US8730823B2 (en) * 2011-06-24 2014-05-20 Jasper Wireless, Inc. Core services platform for wireless voice, data and messaging network services
US8650139B2 (en) 2011-07-01 2014-02-11 Google Inc. Predicting user navigation events
US8745212B2 (en) 2011-07-01 2014-06-03 Google Inc. Access to network content
US8744988B1 (en) 2011-07-15 2014-06-03 Google Inc. Predicting user navigation events in an internet browser
CA2842260A1 (en) * 2011-07-20 2013-01-24 Sonos, Inc. Web-based music partner systems and methods
US8707289B2 (en) 2011-07-20 2014-04-22 Google Inc. Multiple application versions
WO2013015443A1 (ja) * 2011-07-28 2013-01-31 京セラ株式会社 バイオセンサ
JP5776432B2 (ja) * 2011-08-11 2015-09-09 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
US8600921B2 (en) 2011-09-15 2013-12-03 Google Inc. Predicting user navigation events in a browser using directed graphs
US8655819B1 (en) 2011-09-15 2014-02-18 Google Inc. Predicting user navigation events based on chronological history data
US9104664B1 (en) 2011-10-07 2015-08-11 Google Inc. Access to search results
WO2013077983A1 (en) 2011-11-01 2013-05-30 Lemi Technology, Llc Adaptive media recommendation systems, methods, and computer readable media
US9594605B2 (en) * 2011-11-15 2017-03-14 Apple Inc. Client-server version control system for software applications
JP5917103B2 (ja) * 2011-11-18 2016-05-11 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
US9584579B2 (en) 2011-12-01 2017-02-28 Google Inc. Method and system for providing page visibility information
US9769281B2 (en) * 2011-12-19 2017-09-19 Google Technology Holdings LLC Method and apparatus for determining a multimedia representation for a multimedia asset delivered to a client device
US9654821B2 (en) 2011-12-30 2017-05-16 Sonos, Inc. Systems and methods for networked music playback
FR2985400B1 (fr) * 2012-01-03 2013-12-20 Alcatel Lucent Transmission securisee de donnees
US8793235B2 (en) 2012-01-19 2014-07-29 Google Inc. System and method for improving access to search results
US20130232229A1 (en) * 2012-03-02 2013-09-05 Ilya Firman Distribution of Application Files
US9659093B1 (en) * 2012-04-02 2017-05-23 Google Inc. Adaptive recommendations of user-generated mediasets
US9372589B2 (en) * 2012-04-18 2016-06-21 Facebook, Inc. Structured information about nodes on a social networking system
US9729115B2 (en) 2012-04-27 2017-08-08 Sonos, Inc. Intelligently increasing the sound level of player
US9946792B2 (en) 2012-05-15 2018-04-17 Google Llc Access to network content
US9674587B2 (en) 2012-06-26 2017-06-06 Sonos, Inc. Systems and methods for networked music playback including remote add to queue
US9715365B2 (en) 2012-06-27 2017-07-25 Sonos, Inc. Systems and methods for mobile music zones
US9208325B2 (en) * 2012-07-26 2015-12-08 International Business Machines Corporation Protecting data on a mobile device
US8887239B1 (en) 2012-08-08 2014-11-11 Google Inc. Access to network content
US9584573B2 (en) 2012-08-29 2017-02-28 Ericsson Ab Streaming policy management system and method
US9008330B2 (en) 2012-09-28 2015-04-14 Sonos, Inc. Crossover frequency adjustments for audio speakers
US9141722B2 (en) 2012-10-02 2015-09-22 Google Inc. Access to network content
US20140123004A1 (en) 2012-10-25 2014-05-01 Apple Inc. Station creation
US9244586B2 (en) 2012-10-16 2016-01-26 Apple Inc. Displaying a buy/download button based on purchase history
CN104737231B (zh) * 2012-10-26 2017-10-27 索尼公司 信息处理设备、信息处理方法、程序和信息处理系统
DE102012022064A1 (de) 2012-11-09 2014-05-15 Thomas Klimpel System und Verfahren zur Wiedergabe von Musikstücken und/oder Multimediadaten
US9779140B2 (en) * 2012-11-16 2017-10-03 Google Inc. Ranking signals for sparse corpora
US9462332B2 (en) 2012-12-05 2016-10-04 At&T Intellectual Property I, L.P. Method and apparatus for controlling a media device
US10083462B2 (en) * 2012-12-05 2018-09-25 Capital One Services, Llc Methods and systems for dynamically providing content
US9690759B2 (en) 2013-01-03 2017-06-27 Cable Television Laboratories, Inc. Content linking
US9510055B2 (en) 2013-01-23 2016-11-29 Sonos, Inc. System and method for a media experience social interface
KR20140103212A (ko) * 2013-02-14 2014-08-26 한국전자통신연구원 콘텐츠 캐쉬 기능을 가지는 이동형 개인 기지국 및 그 서비스 제공 방법
US9083674B2 (en) * 2013-03-11 2015-07-14 Aol Inc. Systems and methods for sharing audio feeds
US20140280095A1 (en) * 2013-03-15 2014-09-18 Nevada Funding Group Inc. Systems, methods and apparatus for rating and filtering online content
US9305154B2 (en) * 2013-03-15 2016-04-05 Qualcomm Incorporated Method and apparatus for requesting and providing access to information associated with an image
US9075960B2 (en) 2013-03-15 2015-07-07 Now Technologies (Ip) Limited Digital media content management apparatus and method
US9361371B2 (en) 2013-04-16 2016-06-07 Sonos, Inc. Playlist update in a media playback system
US9247363B2 (en) 2013-04-16 2016-01-26 Sonos, Inc. Playback queue transfer in a media playback system
US9501533B2 (en) 2013-04-16 2016-11-22 Sonos, Inc. Private queue for a media playback system
BR112015026148B1 (pt) 2013-04-18 2022-02-08 Ruslan Albertovich Shigabutdinov Método, sistema e meio de armazenamento não transitório legível por computador para gerenciamento de arquivo por dispositivos de computação móveis
US9953179B2 (en) 2013-05-29 2018-04-24 Sonos, Inc. Private queue indicator
US9798510B2 (en) 2013-05-29 2017-10-24 Sonos, Inc. Connected state indicator
US9495076B2 (en) 2013-05-29 2016-11-15 Sonos, Inc. Playlist modification
US9735978B2 (en) 2013-05-29 2017-08-15 Sonos, Inc. Playback queue control via a playlist on a mobile device
US10715973B2 (en) 2013-05-29 2020-07-14 Sonos, Inc. Playback queue control transition
US9703521B2 (en) * 2013-05-29 2017-07-11 Sonos, Inc. Moving a playback queue to a new zone
US9684484B2 (en) 2013-05-29 2017-06-20 Sonos, Inc. Playback zone silent connect
CA2819539C (en) * 2013-06-21 2021-01-12 Ibm Canada Limited - Ibm Canada Limitee Dynamic management of integration protocols
US10394408B1 (en) * 2013-06-27 2019-08-27 Google Llc Recommending media based on received signals indicating user interest in a plurality of recommended media items
CN104254020B (zh) * 2013-09-25 2015-12-02 腾讯科技(深圳)有限公司 媒体数据的播放方法、装置及终端
US10296884B2 (en) 2013-09-30 2019-05-21 Sonos, Inc. Personalized media playback at a discovered point-of-sale display
US20150161087A1 (en) 2013-12-09 2015-06-11 Justin Khoo System and method for dynamic imagery link synchronization and simulating rendering and behavior of content across a multi-client platform
US10742716B1 (en) * 2013-12-16 2020-08-11 Amazon Technologies, Inc. Distributed processing for content personalization
US10114672B2 (en) 2013-12-31 2018-10-30 Thomson Licensing User-centered task scheduling for multi-screen viewing in cloud computing environment
US9350735B1 (en) * 2013-12-31 2016-05-24 Emc Corporation Context-based dynamic information rights management
US9577946B1 (en) * 2014-01-03 2017-02-21 hopTo, Inc. Account-specific login throttling
US20150220498A1 (en) 2014-02-05 2015-08-06 Sonos, Inc. Remote Creation of a Playback Queue for a Future Event
US9226073B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US9226087B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US9679054B2 (en) 2014-03-05 2017-06-13 Sonos, Inc. Webpage media playback
US9411809B1 (en) * 2014-03-07 2016-08-09 Amazon Technologies, Inc. Remote content presentation queues
US20150324552A1 (en) 2014-05-12 2015-11-12 Sonos, Inc. Share Restriction for Media Items
US20150356084A1 (en) * 2014-06-05 2015-12-10 Sonos, Inc. Social Queue
US10068012B2 (en) * 2014-06-27 2018-09-04 Sonos, Inc. Music discovery
US9954849B2 (en) 2014-06-27 2018-04-24 Oath (Americas) Inc. Systems and methods for managing secure sharing of online advertising data
CN104143057A (zh) * 2014-07-11 2014-11-12 上海一端科技有限公司 独立控制移动终端应用程序进入权限的方法
US9874997B2 (en) 2014-08-08 2018-01-23 Sonos, Inc. Social playback queues
US9667679B2 (en) 2014-09-24 2017-05-30 Sonos, Inc. Indicating an association between a social-media account and a media playback system
WO2016049342A1 (en) 2014-09-24 2016-03-31 Sonos, Inc. Social media connection recommendations based on playback information
US9690540B2 (en) 2014-09-24 2017-06-27 Sonos, Inc. Social media queue
US10645130B2 (en) 2014-09-24 2020-05-05 Sonos, Inc. Playback updates
US9959087B2 (en) 2014-09-24 2018-05-01 Sonos, Inc. Media item context from social media
US9690692B2 (en) * 2014-10-31 2017-06-27 Hewlett Packard Enterprise Development Lp Priority queue having array and trees
CN104469404B (zh) * 2014-12-05 2018-02-16 统云信息科技有限公司 Led显示屏及lcd液晶显示屏的远程批量播放控制方法
US11388131B2 (en) * 2014-12-30 2022-07-12 Avaya Inc. System and method for assessing the sensitivity of social network user populations to response time delays
US10748200B2 (en) 2015-03-03 2020-08-18 Amazon Technologies, Inc. Search query-based replacement part interface
US10248376B2 (en) 2015-06-11 2019-04-02 Sonos, Inc. Multiple groupings in a playback system
DE102015008117A1 (de) * 2015-06-23 2016-12-29 Giesecke & Devrient Gmbh Subskriptionsverwaltung
KR20170006558A (ko) * 2015-07-08 2017-01-18 엘지전자 주식회사 이동단말기 및 그 제어방법
JP6834125B2 (ja) * 2015-09-17 2021-02-24 株式会社デンソーウェーブ ロボット制御装置、ロボット制御方法
GB201518383D0 (en) * 2015-10-16 2015-12-02 Muzeit Ltd System and method for sharing of data
CN105530172A (zh) * 2015-12-28 2016-04-27 小米科技有限责任公司 用户信息的获取方法、装置、终端设备和服务器
US10623459B2 (en) 2016-03-09 2020-04-14 Spotify Ab System and method for use of cyclic play queues in a media content environment
US10757467B1 (en) 2016-05-09 2020-08-25 Playlist Media, Inc. System and method for synchronized playback of downloaded streams
CN106372461B (zh) * 2016-08-31 2019-01-18 电子科技大学 一种在线音乐试听文件版权保护的方法
US10712997B2 (en) 2016-10-17 2020-07-14 Sonos, Inc. Room association based on name
US10515063B1 (en) * 2016-12-19 2019-12-24 Cboe Exchange, Inc. System and method for real-time data acquisition and display
US10282402B2 (en) 2017-01-06 2019-05-07 Justin Khoo System and method of proofing email content
US10459941B2 (en) * 2017-02-22 2019-10-29 Salesforce.Com, Inc. Providing context-specific content relating to a displayed personal information management (PIM) message for display in a user interface of a PIM application
US11599902B2 (en) * 2017-03-13 2023-03-07 Crackle, Inc. Interactive advertisement driving transaction of an advertised digital content displayed during online playing of a content
WO2018222846A1 (en) * 2017-05-31 2018-12-06 Depict, Inc. Cloud based digital art subscriptions, control devices, and display devices
CN110692052A (zh) * 2017-06-02 2020-01-14 苹果公司 用于呈现媒体容器的表示的设备、方法和图形用户界面
WO2019098685A1 (ko) * 2017-11-14 2019-05-23 안강석 네트워크를 통한 사용자 맞춤식 콘텐츠 관련 객체 처리 시스템 및 그 방법
KR102178330B1 (ko) * 2017-11-14 2020-11-12 안강석 네트워크를 통한 사용자 맞춤식 콘텐츠 관련 객체 처리 시스템 및 그 방법
US11055371B2 (en) 2017-12-06 2021-07-06 Bank Of America Corporation Using smart data filters to create multi-threaded profiles
KR102458218B1 (ko) * 2017-12-22 2022-10-21 주식회사 넥슨코리아 금칙어 판정 방법 및 장치
WO2019152535A1 (en) * 2018-01-31 2019-08-08 Walmart Apollo, Llc System and method for a physical device authorizing digital copies
US11102316B1 (en) 2018-03-21 2021-08-24 Justin Khoo System and method for tracking interactions in an email
US10834193B2 (en) * 2019-01-30 2020-11-10 Box, Inc. Scheduled retrieval of shared content
US11481206B2 (en) 2019-05-16 2022-10-25 Microsoft Technology Licensing, Llc Code update in system management mode
KR102412134B1 (ko) * 2019-11-25 2022-06-21 주식회사 사운드플랫폼 음원 마스터링을 위한 전자 장치의 동작 방법 및 이를 지원하는 전자 장치
US11210057B2 (en) * 2020-01-10 2021-12-28 James Matthew Gielarowski Multi-User Media Player GUI
US11385903B2 (en) * 2020-02-04 2022-07-12 Microsoft Technology Licensing, Llc Firmware update patch
US11836507B2 (en) * 2020-06-18 2023-12-05 Dell Products L.P. Prioritizing the pre-loading of applications with a constrained memory budget using contextual information
FR3116370B1 (fr) * 2021-04-28 2023-09-29 Jcdecaux Sa Procédé et système d’affichage digital.

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000112858A (ja) * 1998-10-06 2000-04-21 Nec Corp データダウンロード方法および装置
JP2001184287A (ja) * 1999-12-27 2001-07-06 Victor Co Of Japan Ltd 公衆網を用いたプレーヤ端末及び著作権物配信装置並びに著作権物伝送課金システム
JP2002216040A (ja) * 2001-01-18 2002-08-02 Nippon Telegraph & Telephone East Corp コンテンツ配信システムおよび方法
JP2003255958A (ja) * 2002-02-28 2003-09-10 Toshiba Corp 楽曲利用状況及び音楽情報提供方法及び記録媒体
JP2003309873A (ja) * 2002-04-15 2003-10-31 Nec Saitama Ltd 携帯電話機および携帯電話機における画像表示方法
JP2003316367A (ja) * 2002-04-24 2003-11-07 Sharp Corp コンテンツ記録再生装置
JP2005108274A (ja) * 2003-09-26 2005-04-21 Sony Corp 記録装置、記録方法およびプログラム
JP2005191912A (ja) * 2003-12-25 2005-07-14 Nec Corp 再生用データ更新システムおよび再生用データ更新方法
JP2005284574A (ja) * 2004-03-29 2005-10-13 Clarion Co Ltd 車載用情報機器、車載用情報機器の制御方法、制御プログラムおよび記録媒体
JP2005301634A (ja) * 2004-04-09 2005-10-27 Sony Corp コンテンツ再生装置,プログラム,コンテンツ再生制御方法
JP2006005895A (ja) * 2004-05-18 2006-01-05 Ricoh Co Ltd マルチメディアコンテンツ再構成装置、マルチメディアコンテンツ再構成方法、その方法をコンピュータに実行させるプログラム、およびマルチメディアコンテンツ配信システム
JP2006011509A (ja) * 2004-06-22 2006-01-12 Sony Corp ライセンス評価装置,コンピュータプログラム,ライセンス評価方法

Family Cites Families (116)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7047241B1 (en) 1995-10-13 2006-05-16 Digimarc Corporation System and methods for managing digital creative works
US6748209B2 (en) 1995-10-30 2004-06-08 At&T Wireless Services, Inc. Method and apparatus for storing activation data in a cellular telephone
US20060265337A1 (en) 1996-02-26 2006-11-23 Graphon Corporation Automated system for management of licensed digital assets
US5963951A (en) 1997-06-30 1999-10-05 Movo Media, Inc. Computerized on-line dating service for searching and matching people
US6502137B1 (en) * 1997-10-09 2002-12-31 International Business Machines Corporation System and method for transferring information over a computer network
US6427161B1 (en) * 1998-06-12 2002-07-30 International Business Machines Corporation Thread scheduling techniques for multithreaded servers
US6223213B1 (en) * 1998-07-31 2001-04-24 Webtv Networks, Inc. Browser-based email system with user interface for audio/video capture
US6115709A (en) * 1998-09-18 2000-09-05 Tacit Knowledge Systems, Inc. Method and system for constructing a knowledge profile of a user having unrestricted and restricted access portions according to respective levels of confidence of content of the portions
JP3646011B2 (ja) * 1998-10-22 2005-05-11 三菱電機株式会社 検索システム、及び、当該検索システムのプログラムを記録したコンピュータ読み取り可能な記録媒体
US6134548A (en) 1998-11-19 2000-10-17 Ac Properties B.V. System, method and article of manufacture for advanced mobile bargain shopping
US6509910B1 (en) 1998-11-18 2003-01-21 Eastman Kodak Company Method and system for interfacing with a digital media frame network
US7103574B1 (en) * 1999-03-27 2006-09-05 Microsoft Corporation Enforcement architecture and method for digital rights management
US8464302B1 (en) * 1999-08-03 2013-06-11 Videoshare, Llc Method and system for sharing video with advertisements over a network
US6263364B1 (en) 1999-11-02 2001-07-17 Alta Vista Company Web crawler system using plurality of parallel priority level queues having distinct associated download priority levels for prioritizing document downloading and maintaining document freshness
US6658659B2 (en) * 1999-12-16 2003-12-02 Cisco Technology, Inc. Compatible version module loading
US20040220926A1 (en) 2000-01-03 2004-11-04 Interactual Technologies, Inc., A California Cpr[P Personalization services for entities from multiple sources
US6377974B1 (en) * 2000-01-19 2002-04-23 Speedbit Ltd. Methods and apparatus for downloading a file from a server
JP2001209586A (ja) * 2000-01-26 2001-08-03 Toshiba Corp コンピュータにおけるコンテンツ管理装置及びコンテンツ管理方法
US20010052019A1 (en) * 2000-02-04 2001-12-13 Ovt, Inc. Video mail delivery system
US6567974B1 (en) 2000-02-25 2003-05-20 Sun Microsystems, Inc. Small memory footprint system and method for separating applications within a single virtual machine
CA2299946A1 (en) * 2000-03-03 2001-09-03 Destiny Software Productions Inc. Digital media distribution method and system
GB2362229A (en) * 2000-04-07 2001-11-14 Sony Uk Ltd Provision of copyrighted media items
US7155415B2 (en) * 2000-04-07 2006-12-26 Movielink Llc Secure digital content licensing system and method
US7725525B2 (en) * 2000-05-09 2010-05-25 James Duncan Work Method and apparatus for internet-based human network brokering
AUPQ921400A0 (en) * 2000-08-04 2000-08-31 Canon Kabushiki Kaisha Method of enabling browse and search access to electronically-accessible multimedia databases
JP2002073051A (ja) 2000-09-01 2002-03-12 Sanyo Electric Co Ltd データ再生端末装置
US6823518B1 (en) * 2000-10-17 2004-11-23 Microsoft Corporation Threading and communication architecture for a graphical user interface
JP3754912B2 (ja) * 2000-11-13 2006-03-15 キヤノン株式会社 マルチメディアコンテンツの配信方法
JP4092530B2 (ja) 2000-11-29 2008-05-28 富士フイルム株式会社 携帯端末、情報交換仲介システム及びその方法
US20020116708A1 (en) 2000-12-11 2002-08-22 Morris Richard M. User interface for a streaming media client
US7242324B2 (en) * 2000-12-22 2007-07-10 Sony Corporation Distributed on-demand media transcoding system and method
US7028033B2 (en) 2001-01-02 2006-04-11 Hall Aluminum Llc Method and apparatus for simplified access to online services
MY147018A (en) * 2001-01-04 2012-10-15 Thomson Licensing Sa A method and apparatus for acquiring media services available from content aggregators
US20040163020A1 (en) * 2002-01-25 2004-08-19 David Sidman Apparatus method and system for registration effecting information access
EP1374080A2 (en) * 2001-03-02 2004-01-02 Kasenna, Inc. Metadata enabled push-pull model for efficient low-latency video-content distribution over a network
US7246104B2 (en) * 2001-03-21 2007-07-17 Nokia Corporation Method and apparatus for information delivery with archive containing metadata in predetermined language and semantics
JP2002297555A (ja) 2001-03-30 2002-10-11 Mitsubishi Electric Corp データ配信システム
US8180904B1 (en) * 2001-04-26 2012-05-15 Nokia Corporation Data routing and management with routing path selectivity
US7085845B2 (en) 2001-05-09 2006-08-01 Gene Fein Method, apparatus and computer program product for identifying a playing media file and tracking associated user preferences
US8275716B2 (en) * 2001-05-31 2012-09-25 Contentguard Holdings, Inc. Method and system for subscription digital rights management
JP2002359701A (ja) 2001-06-01 2002-12-13 Mitsunori Takahashi 携帯端末を用いた配信システム
JP2002366477A (ja) * 2001-06-08 2002-12-20 Pop Cube Kk 電子掲示板システム及び方法
US6798647B2 (en) 2001-07-16 2004-09-28 Hewlett-Packard Development Company, L.P. Portable computer with integrated PDA I/O docking cradle
JP2003099455A (ja) 2001-09-20 2003-04-04 Yamaha Corp 情報提供装置及び情報提供プログラム
US7512652B1 (en) 2001-09-28 2009-03-31 Aol Llc, A Delaware Limited Liability Company Passive personalization of buddy lists
JP2003168020A (ja) 2001-11-29 2003-06-13 Shunichi Tanaka 電子化データファイル配信、及びそのダウンロードとそれを用いたビジネスモデル
US7283992B2 (en) * 2001-11-30 2007-10-16 Microsoft Corporation Media agent to suggest contextually related media content
US7032007B2 (en) * 2001-12-05 2006-04-18 International Business Machines Corporation Apparatus and method for monitoring instant messaging accounts
JP3901523B2 (ja) * 2002-01-10 2007-04-04 ソニー株式会社 情報配信システム、携帯情報端末、情報配信サーバ装置および情報配信方法
US7937443B2 (en) * 2002-03-10 2011-05-03 Talkway, Inc. Email messaging program with built-in video and/or audio media recording and/or playback capabilities
JP2004005128A (ja) 2002-05-31 2004-01-08 Matsushita Electric Ind Co Ltd 情報処理システムおよびそれを利用した電子商取引システム
US7640300B2 (en) 2002-06-10 2009-12-29 Microsoft Corporation Presence and notification system for maintaining and communicating information
US20030231661A1 (en) * 2002-06-18 2003-12-18 General Instrument Corporation Optimized broadband download for large content
US8151304B2 (en) 2002-09-16 2012-04-03 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US8332895B2 (en) * 2002-09-16 2012-12-11 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US20040162878A1 (en) * 2002-11-22 2004-08-19 Lewis Michael Pescatello System and method to facilitate real-time communications and content sharing among users over a network
US20060041830A1 (en) * 2002-12-31 2006-02-23 Christopher Bohn Method and apparatus for organizing internet information for dissemination to others, collaboration on that information with others, enabling self-publishing of online content and associating it with digital media, enabling contextual search results triggered by playing of digital media
US20040255137A1 (en) * 2003-01-09 2004-12-16 Shuqian Ying Defending the name space
JP2004240933A (ja) 2003-02-07 2004-08-26 Takahiro Matsui 個人情報が保護された名簿システムとその運用法
JP2004294584A (ja) 2003-03-26 2004-10-21 Sony Corp 音楽データ転送記録方法および音楽再生装置
US20040210538A1 (en) * 2003-04-16 2004-10-21 Bruce Forest Method of generating or increasing product sales through the dissemination of on-line content for free over a distributed computer network
US20040215534A1 (en) * 2003-04-25 2004-10-28 Apple Computer, Inc. Method and system for network-based allowance control
US7069308B2 (en) 2003-06-16 2006-06-27 Friendster, Inc. System, method and apparatus for connecting users in an online computer system based on their relationships within social networks
US20130097302A9 (en) * 2003-10-01 2013-04-18 Robert Khedouri Audio visual player apparatus and system and method of content distribution using the same
US20060008256A1 (en) * 2003-10-01 2006-01-12 Khedouri Robert K Audio visual player apparatus and system and method of content distribution using the same
US20050120084A1 (en) 2003-10-28 2005-06-02 Yu Hu Method of and system for creating, maintaining, and utilizing an online universal address book
US7113981B2 (en) * 2003-12-29 2006-09-26 Mixxer, Inc. Cellular telephone download locker
US8015119B2 (en) 2004-01-21 2011-09-06 Google Inc. Methods and systems for the display and navigation of a social network
JP3960609B2 (ja) 2004-01-22 2007-08-15 株式会社ドワンゴ サーバシステム、コンテンツ送信方法およびプログラム
US7269590B2 (en) 2004-01-29 2007-09-11 Yahoo! Inc. Method and system for customizing views of information associated with a social network user
GB2411331A (en) 2004-02-19 2005-08-24 Trigenix Ltd Rendering user interface using actor attributes
US20050210507A1 (en) 2004-03-17 2005-09-22 Sony Corporation System and method for multimedia playlist
US20050210409A1 (en) 2004-03-19 2005-09-22 Kenny Jou Systems and methods for class designation in a computerized social network application
EP1733316A1 (en) 2004-03-22 2006-12-20 Nitgen Technologies Inc. A streaming based contents distribution network system and methods for splitting, merging and retrieving files
JP4161936B2 (ja) * 2004-04-27 2008-10-08 ソニー株式会社 時刻設定システム,時刻設定方法
US7293122B1 (en) * 2004-04-27 2007-11-06 Apple Inc. Connector interface system facilitating communication between a media player and accessories
JP4227072B2 (ja) 2004-05-18 2009-02-18 日本電信電話株式会社 おすすめ番組提供方法、おすすめ番組提供装置およびおすすめ番組提供プログラム
JP2006040259A (ja) 2004-06-25 2006-02-09 Fuji Photo Film Co Ltd 通信端末、サーバ、再生制御方法及びプログラム
JP4701644B2 (ja) 2004-07-08 2011-06-15 ソニー株式会社 コンテンツ再生装置,コンテンツ再生制御方法およびコンピュータプログラム
US8302164B2 (en) * 2004-07-22 2012-10-30 Facebook, Inc. Authorization and authentication based on an individual's social network
US20060056324A1 (en) * 2004-09-10 2006-03-16 Nokia Corporation Apparatus and method to provide mobile music appliance with subscription-based play-list service
US20060072721A1 (en) * 2004-09-21 2006-04-06 Netomat, Inc. Mobile messaging system and method
US7562358B2 (en) * 2004-10-04 2009-07-14 United Parcel Service Of America, Inc. Controlled deployment of software in a web-based architecture
WO2006042300A2 (en) 2004-10-12 2006-04-20 Mindego, Inc. System and method for creating, distributing, and executing rich multimedia applications
JP4922175B2 (ja) 2004-10-19 2012-04-25 ヤフー! インコーポレイテッド 位置に基づくソーシャルネットワーキングシステム及び方法
US7797720B2 (en) 2004-10-22 2010-09-14 Microsoft Corporation Advanced trick mode
GB0426736D0 (en) 2004-12-06 2005-01-12 Omnifone Ltd MyFone
US8229856B1 (en) * 2005-02-17 2012-07-24 Sprint Spectrum Lp. Music subscription and distribution for wireless devices
US7818350B2 (en) 2005-02-28 2010-10-19 Yahoo! Inc. System and method for creating a collaborative playlist
RU51768U1 (ru) 2005-03-03 2006-02-27 Анатолий Анатольевич Логинов Сеть для распространения аудиовизуальной информации, система управления и система предоставления аудиовизуальной информации
US20060218153A1 (en) * 2005-03-28 2006-09-28 Voon George H H Building social networks using shared content data relating to a common interest
US20060224943A1 (en) * 2005-04-01 2006-10-05 Entriq Inc. Method and system to automatically publish media assets
US20060259575A1 (en) * 2005-05-11 2006-11-16 Manish Upendran User interface distribution systems and methods
US7996427B1 (en) 2005-06-23 2011-08-09 Apple Inc. Unified system for accessing metadata in disparate formats
US9715542B2 (en) * 2005-08-03 2017-07-25 Search Engine Technologies, Llc Systems for and methods of finding relevant documents by analyzing tags
US9356982B2 (en) * 2005-08-05 2016-05-31 Intel Corporation System and method for transferring playlists
US7996436B2 (en) * 2005-09-23 2011-08-09 Livebinders, Inc. Media management system
US20070073694A1 (en) * 2005-09-26 2007-03-29 Jerome Picault Method and apparatus of determining access rights to content items
US7634296B2 (en) 2005-12-02 2009-12-15 General Instrument Corporation Set top box with mobile phone interface
US8924412B2 (en) * 2005-12-21 2014-12-30 Digimarc Corporation Rules driven pan ID metadata routing system and network
JP2009521752A (ja) * 2005-12-23 2009-06-04 フェイスブック,インク. ソーシャルタイムラインを生成するためのシステムおよび方法
US20070218900A1 (en) * 2006-03-17 2007-09-20 Raj Vasant Abhyanker Map based neighborhood search and community contribution
JP2007193611A (ja) * 2006-01-19 2007-08-02 Looops Communications Inc 会員制コミュニティサイトにおけるプロフィール情報管理方式
US20070220092A1 (en) * 2006-02-14 2007-09-20 Snapvine, Inc. System, apparatus and method for enabling mobility to virtual communities via personal and group forums
US7707246B1 (en) * 2006-02-22 2010-04-27 Qurio Holdings, Inc. Creating a social network around recorded media
US20070220174A1 (en) * 2006-03-17 2007-09-20 Fatdoor, Inc. Marker placement in a mapping environment
US7783652B2 (en) 2006-04-07 2010-08-24 Microsoft Corporation Keeping offensive content out of default view on a website
GB0702604D0 (en) 2006-05-05 2007-03-21 Omnifone Ltd Handset commissi0ning
US8572169B2 (en) 2006-08-28 2013-10-29 Myspace, Llc System, apparatus and method for discovery of music within a social network
GB0807116D0 (en) * 2008-04-18 2008-05-21 Omnifone Ltd Music subscription service
US9805123B2 (en) 2008-11-18 2017-10-31 Excalibur Ip, Llc System and method for data privacy in URL based context queries
US8886762B2 (en) 2009-09-17 2014-11-11 Adobe Systems Incorporated Stream duration management
EP2469425A3 (en) * 2010-12-21 2012-11-14 Research In Motion Limited Contextual customization of content display on a communication device
US20130080911A1 (en) * 2011-09-27 2013-03-28 Avaya Inc. Personalizing web applications according to social network user profiles
US20130204779A1 (en) 2012-02-07 2013-08-08 Cobalt Monkey, LLC Monetizing a social networking website
US9083766B2 (en) 2012-12-27 2015-07-14 Dropbox, Inc. Maintaining consistent globally unique identifiers via an asynchronous interface

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000112858A (ja) * 1998-10-06 2000-04-21 Nec Corp データダウンロード方法および装置
JP2001184287A (ja) * 1999-12-27 2001-07-06 Victor Co Of Japan Ltd 公衆網を用いたプレーヤ端末及び著作権物配信装置並びに著作権物伝送課金システム
JP2002216040A (ja) * 2001-01-18 2002-08-02 Nippon Telegraph & Telephone East Corp コンテンツ配信システムおよび方法
JP2003255958A (ja) * 2002-02-28 2003-09-10 Toshiba Corp 楽曲利用状況及び音楽情報提供方法及び記録媒体
JP2003309873A (ja) * 2002-04-15 2003-10-31 Nec Saitama Ltd 携帯電話機および携帯電話機における画像表示方法
JP2003316367A (ja) * 2002-04-24 2003-11-07 Sharp Corp コンテンツ記録再生装置
JP2005108274A (ja) * 2003-09-26 2005-04-21 Sony Corp 記録装置、記録方法およびプログラム
JP2005191912A (ja) * 2003-12-25 2005-07-14 Nec Corp 再生用データ更新システムおよび再生用データ更新方法
JP2005284574A (ja) * 2004-03-29 2005-10-13 Clarion Co Ltd 車載用情報機器、車載用情報機器の制御方法、制御プログラムおよび記録媒体
JP2005301634A (ja) * 2004-04-09 2005-10-27 Sony Corp コンテンツ再生装置,プログラム,コンテンツ再生制御方法
JP2006005895A (ja) * 2004-05-18 2006-01-05 Ricoh Co Ltd マルチメディアコンテンツ再構成装置、マルチメディアコンテンツ再構成方法、その方法をコンピュータに実行させるプログラム、およびマルチメディアコンテンツ配信システム
JP2006011509A (ja) * 2004-06-22 2006-01-12 Sony Corp ライセンス評価装置,コンピュータプログラム,ライセンス評価方法

Also Published As

Publication number Publication date
US20180262608A1 (en) 2018-09-13
AU2007246910B2 (en) 2013-02-21
EP3396570A1 (en) 2018-10-31
AU2007246910A1 (en) 2007-11-15
KR101378111B1 (ko) 2014-03-27
GB0702594D0 (en) 2007-03-21
US10887443B2 (en) 2021-01-05
US11431835B2 (en) 2022-08-30
WO2007129081A1 (en) 2007-11-15
US8510847B2 (en) 2013-08-13
JP2015228657A (ja) 2015-12-17
US9294430B2 (en) 2016-03-22
CA2651347C (en) 2016-04-26
GB0702587D0 (en) 2007-03-21
JP2017208840A (ja) 2017-11-24
US20210160361A1 (en) 2021-05-27
US20160182677A1 (en) 2016-06-23
US20100031366A1 (en) 2010-02-04
AU2013205964A1 (en) 2013-06-06
BRPI0710320A2 (pt) 2011-08-23
KR101497263B1 (ko) 2015-03-04
JP5833178B2 (ja) 2015-12-16
KR20130137052A (ko) 2013-12-13
US9992322B2 (en) 2018-06-05
US9648132B2 (en) 2017-05-09
AU2007246910A2 (en) 2013-02-14
US20170310814A1 (en) 2017-10-26
EP2021954A1 (en) 2009-02-11
JP2009536482A (ja) 2009-10-08
GB0702600D0 (en) 2007-03-21
KR20090048545A (ko) 2009-05-14
US20210092217A1 (en) 2021-03-25
US20210160359A1 (en) 2021-05-27
US9065792B2 (en) 2015-06-23
CA2651347A1 (en) 2007-11-15
MX2008014187A (es) 2009-09-07
EP2021954B1 (en) 2018-06-27
ZA200809534B (en) 2010-02-24
GB0702604D0 (en) 2007-03-21
GB0702583D0 (en) 2007-03-21
GB0702596D0 (en) 2007-03-21
US20210160360A1 (en) 2021-05-27
US20130318187A1 (en) 2013-11-28
US20130304870A1 (en) 2013-11-14
GB0702599D0 (en) 2007-03-21
GB0702603D0 (en) 2007-03-21

Similar Documents

Publication Publication Date Title
JP5833178B2 (ja) セルラ携帯電話端末、ソフトウェアアプリケーション、及び音楽トラック配信システム
US9124650B2 (en) Digital rights management in a mobile environment
US20060173974A1 (en) System and method for providing mobile access to personal media
US20130013496A1 (en) Content management apparatus
US8752187B2 (en) Portable license server
WO2011041916A1 (en) Digital rights management in a mobile environment
JP2009544991A (ja) 向上されたavプレーヤ装置、並びにそれを使用したコンテンツ配信のシステムおよび方法
US20120117197A1 (en) Content auto-discovery
CN101438286A (zh) 一种通过按时计价订购为音乐内容提供数字权限管理的方法

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20140704

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140822

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141120

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150616

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20150616

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20150707

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: 20150928

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151028

R150 Certificate of patent or registration of utility model

Ref document number: 5833178

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees