`
`a2) United States Patent
`US 7,233,790 B2
`(0) Patent No.:
`Kjellberg et al.
`Jun. 19, 2007
`(45) Date of Patent:
`
`(54) DEVICE CAPABILITY BASED DISCOVERY,
`PACKAGING AND PROVISIONING OF
`CONTENT FOR WIRELESS MOBILE
`DEVICES
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`5,835,724 A
`
`11/1998 Smith
`
`(75)
`
`Inventors: Rikard M. Kjellberg, Santa Cruz, CA
`(US); Sheng Liang, Cupertino, CA
`(US); Tomas G. Lund, Menlo Park, CA
`(US); William Chan, San Mateo, CA
`(US); Ramakrishna Chinta,
`Sunnyvale, CA (US); Xinbi Chen, Palo
`Alto, CA (US)
`
`(73) Assignee: Openwave Systems, Inc., Redwood
`City, CA (US)
`
`(*) Notice:
`
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`US.C. 154(b) by 753 days.
`
`(21) Appl. No.: 10/600,746
`
`(22)
`
`Filed:
`
`Jun. 19, 2003
`
`(65)
`
`Prior Publication Data
`
`US 2004/0054786 Al
`
`Mar. 18, 2004
`
`Related U.S. Application Data
`
`(60) Provisional application No. 60/393,024, filed on Jun.
`28, 2002, provisional application No. 60/392,383,
`filed on Jun. 28, 2002, provisional application No.
`60/393,041, filed on Jun. 28, 2002, provisional appli-
`cation No. 60/392,999, filed on Jun. 28, 2002.
`
`(51)
`
`Int. CL.
`(2006.01)
`ET04M 3/00
`(52) U.S. Ch cee 455/419; 455/418; 455/414.1
`(58) Field of Classification Search ................ 455/419,
`455/418, 414.1
`
`(Continued)
`FOREIGN PATENT DOCUMENTS
`
`EP
`
`0 992 922 A2
`
`4/2000
`
`(Continued)
`OTHER PUBLICATIONS
`
`Austaller, Gerhard, et al.: “Gulliver Beans: Generating Device
`Optimized and Individualized Content for WAP Applications”,
`Proc. Workshop Information Design for Mobile Web Services,
`[Online] May 15, 2000, pp. 1-7, XP-002266242.
`
`(Continued)
`
`Primary Examiner—Creighton Smith
`(74) Attorney, Agent, or Firm—Blakely Sokoloff Taylor &
`Zafman LLP
`
`(57)
`
`ABSTRACT
`
`A network server system includes a download managerthat
`manages the publication, purchase and delivery of digital
`products from multiple suppliers to wireless services sub-
`scribers in multiple domains. Product suppliers can publish
`and manage their products on the server system via a
`computer network and make their products available to the
`subscribers for purchase or licensing. The subscribers in
`each domain can access the server remotely to purchase
`rights to download and use the products on associated
`wireless communication devices. Multiple different imple-
`mentations of any product can be maintained, where each
`implementation corresponds to a different set of device
`capabilities. Each product can also be associated with mul-
`tiple different provisioning models, each correspondingto a
`different set of device capabilities.
`
`See application file for complete search history.
`
`14 Claims, 14 Drawing Sheets
`
`SUBSCRIBER
`
`
`
` CONTENT
`SUPPLIER
`
`
`
`
`
`DOWNLOAD
`MANAGER
`
`
`
`CONTENT
`SUPPLIER
` SUBSCRIBER
`
`
`
`Roku Exhibit 1001
`Roku Exhibit 1001
`Roku v. Videolabs
`Roku v. Videolabs
`
`
`
`US 7,233,790 B2
`
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`5,895,471 A
`6,049,892 A
`6,076,166 A
`6,161,140 A
`6,167,441 A
`6,223,289 Bl
`6,275,692 Bl
`6,311,215 Bl
`6,430,624 Bl
`6,438,576 Bl
`6,587,880 Bl
`6,912,385 B2*
`2001/0037192 Al
`2001/0047477 Al
`2002/0065944 Al
`2002/0078253 Al
`2002/0194219 Al
`2002/0194473 Al
`2003/0017826 Al
`2003/0027581 ALl*
`2003/0054794 Al
`2003/0060188 Al*
`2003/0084165 Al
`2003/0101329 Al
`2004/0024867 Al
`
`4/1999 Kingetal.
`4/2000 Casagrandeetal.
`6/2000 Moshfeghiet al.
`12/2000 Moriya
`12/2000 Himmel
`4/2001 Wallet al.
`8/2001 Skog
`10/2001 Bakshi et al.
`8/2002 Jamtgaard etal.
`8/2002 Huangetal.
`7/2003 Saigo et al.
`6/2005 Namba et al. 0... 455/419
`11/2001 Shimamoto etal.
`11/2001 Chiang
`5/2002 Hickeyetal.
`6/2002 Szondyet al.
`12/2002 Bradley etal.
`12/2002 Popeetal.
`1/2003 Fishman etal.
`2/2003 Jokinen et al.
`3/2003 Zhang
`3/2003 Gidron et al... 455/408
`5/2003 Kjellberget al.
`5/2003 Lahti et al.
`—2/2004 Kjellberg
`
`......0...00.. 455/456
`
`2004/0054787 Al
`2004/0248570 Al
`2005/0071418 Al
`
`3/2004 Kjellberg et al.
`12/2004 Denenberg etal.
`3/2005 Kjellberg et al.
`
`FOREIGN PATENT DOCUMENTS
`
`WO
`WO
`WO
`wo
`WoO
`
`WO 98/35469 A2
`WO 98/35469 A3
`WO 01/97482 Al
`WO 02/23857 A2
`WO 02/27543 A2
`
`8/1998
`8/1998
`12/2001
`3/2002
`4/2002
`
`OTHER PUBLICATIONS
`
`Ellipsus Systems: “Ellipsus’ Mobile Application Provisioning Sys-
`tem’, White Paper,
`[Online]
`Sep.
`23,
`2001,
`pp.
`0-10,
`XP-002266188.
`Erik Bladh et al., “GPRS—Applicability and Expectations”, Vaxj6
`University, School of Mathematics and Systems Enigneering,
`Reports from MSI, Aug. 2002, pp. 1-64.
`“A Vision for Dynamic Java Services Provisioning, The Java
`Services Vending Machine Concept”, Jun. 2001, Version 1.0, Sun
`Microsystems, Inc., pp. 1-25.
`Sheila Riley, “Sun-Microsoft Spat Now Carrying Over To Wireless
`World”, Investor’s Business Daily, 1 page.
`
`* cited by examiner
`
`
`
`U.S. Patent
`
`Jun. 19, 2007
`
`Sheet 1 of 14
`
`YysMddNs
`
`LNALNOOYSaslyOSEns
`
`avOINMOd
`
`YS9VNVA
`
`LINILNOO
`
`YsltddNs
`
`US 7,233,790 B2
`
`|Old YSaglyosEns
`
`
`
`
`
`U.S. Patent
`
`Jun. 19, 2007
`
`Sheet 2 of 14
`
`US 7,233,790 B2
`
`YSaANSS
`
`YALNdWOD
`
`MYOMLAN
`
`SSATAYIM
`
`AVMALVS
`
`MYOMLAN
`
`YaAYNsAS
`
`QVOINMOG
`
`YASVNVIN
`
`abeooo
`
`
`
`
`
`
`U.S. Patent
`
`Jun. 19, 2007
`
`Sheet 3 of 14
`
`US 7,233,790 B2
`
`
` DOWNLOAD MANAGER
`
`31
`
`
`
`
`
`DELIVERY
`PRODUCT
`MANAGER
`5;
`MANAGER
`36
`
`
`
`SECURITY MANAGER|||{PRODUCT WORKFLOW
`
`
`MANAGER
`
`35
`
`
`DEVICE CAPABILITY
`
`
`MANAGER 37,
`
`
`
`
`
`
`
`
`STORE FRONT 39
`
`
`
`
`NOTIFICATION 40
`MANAGER
`
`PRICING MANAGER
`
`CATALOG
`
`BUSINESS AND OPERATIONS MANAGER
`
`
`
`PROVISIONING
`MANAGER
`
`
`
`
`
`PROTOCOLHANDLERS
`
`
`
`
`
`— P
`
`UBLISHED
`CONTENT
`
`CONTENT ANALYSIS
`MANAGER 52.
`
`
`
`PERSONAL VAULT
`
`
`
`
`
`
`U.S. Patent
`
`Jun. 19, 2007
`
`Sheet 4 of 14
`
`US 7,233,790 B2
`
`OC
`
`SOAS
`
`OANI
`
`oF
`
`SP
`
`JOIAIO
`
`Ovd
`
`LY
`
`
`
`YAOVNVWSOIASG
`
`cy
`
`
`
`YATONVHJOIAZO
`
`YASVNVN
`
`eb
`
`Ad3A1S0
`
`LXSLNOO9
`
`AHOVO
`
`a01Aaq
`
`juuxAuejnqeso,
`
` 0S
`
`vols
`
`Lv
`
`
`
`JOSIEdIAdWN
`
`6y
`
`
`
`|wx'Bipuod-wiq
`
`
`
`
`
`
`U.S. Patent
`
`Jun. 19, 2007
`
`Sheet 5 of 14
`
`US 7,233,790 B2
`
`LONdOYd GaLYOddNsS
`
`S39IAd0
`
`GaLYOddNs
`
`DOWLVO
`
`¥S
`
`NOILVINAWSId
`
`
`
`NOILVLNSWSIdi
`
`g6S
`
`SSOIASG
`
`QaLuOddNs
`
`V6S
`
`SS0IASG
`
`G‘Sls
`
`
`
`U.S. Patent
`
`Jun. 19, 2007
`
`Sheet 6 of 14
`
`US 7,233,790 B2
`
`PRODUCT
`
`5/7B
`
`
`
`
`
`
`IMPLEMENTATION
`IMPLEMENTATION
`(BINARY)
`
`
`BINARY
`BINARY
`
`
`61B
`
`FIG. 6
`
`
`
`U.S. Patent
`
`Jun. 19, 2007
`
`Sheet 7 of 14
`
`US 7,233,790 B2
`
`dIVd-LSOd
`
`QIVd-3ud
`
`ANTINO
`
`YaglyosaEns
`
`Y3dlA0dd
`
`3W4dOUd
`
`YAsldOSENs
`
`d1d0¥d
`
`NOISS3S
`
`LONGOYd
`
`DOWWLVO
`
`ZLols
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Jun. 19, 2007
`
`Sheet 8 of 14
`
`US 7,233,790 B2
`
`RECEIVE INPUTS FROM
`PRODUCT SUPPLIER DEFINING A
`PRODUCT AND SUBMITTING ONE
`OR MORE IMPLEMENTATIONS
`
`PROVISIONING PROTOCOLS
`
`RECEIVE INPUT FROM CONTENT
`SUPPLIER SPECIFYING ONE OR
`MORE DEVICES (ACTUAL OR
`GENERIC) WHICH SUPPORT
`EACH IMPLEMENTATION AND
`ONE OR MORE PROVISIONING
`PROTOCOLS EACH
`IMPLEMENTATION
`
`STORE PRODUCTDEFINITION,
`IMPLEMENTATIONS,
`SUPPORTING DEVICES AND
`
`
`
`DETERMINE SET OF ALL
`804
`POSSIBLE DEVICES WHICH
`
`
`
`
`SUPPORT PRODUCT AND STORE
`SET IN ASSOCIATION WITH
`
`PRODUCT
`
`FIG. 8
`
`
`
`U.S. Patent
`
`Jun. 19, 2007
`
`Sheet 9 of 14
`
`US 7,233,790 B2
`
`
`
`
`
`
`
`CLIENT DEVICE CONNECTS TO
`DOWNLOAD MANAGER
`
`
`
`IDENTIFY DOMAIN OF
`SUBSCRIBER
`
`
`
`SELECT LANGUAGE AND
`CURRENCY BASED ON DOMAIN
`
`
`
`IDENTIFY CLIENT DEVICE AND
`DEVICE CAPABILITIES
`
`902
`
`901
`
`
`
`
`903
`
`904
`
`
`
`RECEIVED REQUEST
`
`TO VIEW PRODUCTS
`FROM CLIENT
`DEVICE?
`
`
`CLIENT DEVICE SUPPORTS
`
`
`
`DETERMINE WHICH PRODUCTS
`
`906
`
`906
`
`
`
`
`
`
`
`SEND RESPONSE TO CLIENT
`
`DEVICE TO ENABLE CLIENT
`DEVICE TO DISPLAY ONLY
`DESCRIPTIONS OF PRODUCTS
`
`WHICH CLIENT DEVICE
`
`
`
`SUPPORTS,IN APPROPRIATE
`LANGUAGE AND CURRENCY FOR
`SUBSCRIBER'S DOMAIN
`
`
`FIG. 9
`
`
`
`U.S. Patent
`
`Jun. 19, 2007
`
`Sheet 10 of 14
`
`US 7,233,790 B2
`
`
`
`
`PROVISIONING MANAGER
`RECEIVE SUBSCRIBER'S
`1006
`SELECTION OF A PRODUCT TO
`REQUESTS PAYMENT
`
`
`
`
`
`PURCHASE
`MANAGERTO CHARGE
`
`
`APPLICABLE PRICE FOR THE
`PRODUCT
`
`
`PRICING MANAGER CALLS ALL
`REGISTERED RATING
`
`ADAPTERS
`PAYMENT MANAGER
`4007
`
`LOCATES APPLICABLE
`
`
`
`PAYMENT HANDLER
`
`BASED ON DOMAIN TO
`
`
`RATING ADAPTERS ADJUST
`WHICH SUBSCRIBER
`
`PRICE OF SELECTED PRODUCT,
`BELONGS AND
`
`
`
`IF APPROPRIATE
`SUBSCRIBER'S PREFERRED
`
`
`PAYMENT METHOD
`
`
`
`PRICING MANAGER
`4008
`PRESENTS LICENSE OBJECT
`
`
`
`PAYMENT HANDLER
`TO SUBSCRIBER
`
`
`
`ACTIONS
`PERFORMS CHARGING
`
`
` SUBSCRIBER
`
`CONFIRMED
`PURCHASE?
`
`
`
`FIG. 10
`
`
`
`U.S. Patent
`
`Jun. 19, 2007
`
`Sheet 11 of 14
`
`US 7,233,790 B2
`
`LN3IN9
`
`SA9IAAd
`
`ddiwW
`
`YAWNSNOD
`
` SYdLdVOVTOOOLOYd[v0am|AYSAIIAO
`
`ONIOVAOV
`Ca|SW|avrrave
`G09VINON
`
`[AGIar
`IN3LNO9
`JSVYOLS
`ALOWSY
`INSLNOO
`MW907
`$SNDOd
`
`JONVNISSWOH
`SNOILVINMddV
`NOILLVWYONI
`
`LOndOwd
`
`SAWVS
`
`SSANISNG
`
`AOSLVYLS
`
`GNnOs
`
`JISNW
`
`SSNOLONIY
`
`SITONIL
`
`YSHLO
`
`SADVAI
`
`
`
`YadVdTIVM
`
`ONINVAYLS
`
`
`
`Sdi19OSCIA
`
`YAHLO.
`
`LONaoYd
`
`SOWLVD
`
`
`
`U.S. Patent
`
`Jun. 19, 2007
`
`Sheet 12 of 14
`
`US 7,233,790 B2
`
`1201
`
`1202
`
`°
`
`1204
`
`1205
`
`DOWNLOAD CONTENT
`DESCRIPTOR TO CLIENT DEVICE
`
`
`SELECT AN IMPLEMENTATION OF
`
`
`THE PRODUCT BASED ON
`DEVICE CAPABILITIES OF CLIENT
`DEVICE
`
`
`RETRIEVE CONTENT TYPE OF THE
`
`
`SELECTED IMPLEMENTATION
`
`
`
`SELECT ONE OF THE
`PROVISIONING MODELS
`1203
`
`
`AVAILABLE FOR THE
`
`
`
`
`IMPLEMENTATION, BASED ON
`DEVICE CAPABILITIES AND
`
`CONTENT TYPE OF
`IMPLEMENTATION
`
`
`
`CREATE PROVISIONING
`
`
`DESCRIPTOR FOR THE
`IMPLEMENTATION BASED ON
`SELECTED PROVISIONING MODEL
`
`
`
`
`
`
`
`1206
`RECEIVE REQUEST FOR CONTENT
`FROM CLIENT DEVICE
`
`
`
`
`
`
`
`DOWNLOAD IMPLEMENTATION
`TO CLIENT DEVICE USING
`PROVISIONING PROTOCOL OF
`SELECTED PROVISIONING MODEL
`
`1207
`
`FIG. 12
`
`
`
`Sheet 13 of 14
`
`US 7,233,790 B2
`
`dsvavlva
`
`bel
`
`
`
`YAONVIVE
`
`Ortavoldl
`
`U.S. Patent
`
`Jun. 19, 2007
`
`
`
`
`
`QNNOYWOVLSTOVOLOUdON9¢|WAPANOACISNI
`SSS00V
`
`YaAV1gam
`
`bel
`
`
`
`WAPSHLACISNISONOSdldt
`
`
`
`QNVYSAV1SSANISNE
`
`
`
`YAAVTSS3A99VVLVd
`
`LNAIT9
`
`SA9IAIG
`
`
`
`
`U.S. Patent
`
`Jun. 19, 2007
`
`Sheet 14 of 14
`
`US 7,233,790 B2
`
`SPL
`
`vrl
`
`rl
`
`Ol
`
`WWOD
`
`
`
`LvlSJYVMLIOS
`
`SSVW
`
`AOVYOLS
`
`Srl
`
`vbOld
`
`cr
`
`LPL
`
`Ov
`
`Ort
`
`Lvl
`
`JYVMLIAOS
`
`Lei
`
`SYVMLAOS
`
`(s)YOoSS300Nd
`
`
`
`
`US 7,233,790 B2
`
`1
`DEVICE CAPABILITY BASED DISCOVERY,
`PACKAGING AND PROVISIONING OF
`CONTENT FOR WIRELESS MOBILE
`DEVICES
`
`This application claims the benefit of U.S. provisional
`patent applications Nos.: 60/393,024; 60/392,383; 60/393,
`041; and 60/392,999, each of which was filed on Jun. 28,
`2002, and each of which is incorporated herein by reference.
`
`FIELD OF THE INVENTION
`
`At least one embodimentofthe present invention pertains
`to systems and methods for providing digital content to
`wireless services subscribers, and more particularly,
`to
`facilitating managementand delivery of digital content from
`multiple content suppliers to multiple wireless services
`subscribers in multiple domains.
`
`BACKGROUND
`
`Personal mobile communication/computing devices, such
`as cellular telephones, personaldigital assistants (PDAs) and
`two-way pagers, have become commonplace in many coun-
`tries. These devices are referred to collectively herein as
`“mobile devices” or “wireless devices”. The current state-
`
`of-the-art of mobile devices has advanced far beyondthat of
`their predecessors. For example, early cellular telephones
`were used analog signals to communicate over wireless
`telecommunications networks (or simply “wireless net-
`works”) and were nothing more than mobile telephones.
`Today’s cellular telephones typically are all digital and
`provide many other functions in addition to telephony
`capability. For example, many of the latest generation of
`mobile telephones (and other mobile devices) allow their
`users to play games, access World Wide Web pages,
`exchange email, exchange and download files, exchange
`short messaging service (SMS) messages, and send and
`receive video.
`
`With new mobile devices providing a wider range of
`capabilities, there is increasing demand among the users of
`these devices (i.e., wireless services subscribers) for new
`and interesting types of digital content that can be used on
`these mobile devices, such as games andotherapplications,
`images, ring tones, screensavers, wallpapers, etc. Although
`newer mobile devices often come pre-provisioned with
`certain digital products when first acquired by the sub-
`scriber, it is desirable to allow subscribers to acquire addi-
`tional digital products for use in their mobile devices as such
`products become available. While this capability already
`exists, currently subscribers acquire digital content directly
`from the content suppliers (typically via the wireless net-
`work and the Internet). This process is inconvenient if a
`subscriber wishes to acquire various different
`items of
`digital content from different suppliers, since the subscriber
`must navigate to the web sites of different suppliers. There-
`fore, it is further desirable to make many different types of
`digital content available to subscribers at one time through
`a centralized “store”.
`
`From the content supplier’s perspective, another impedi-
`mentto theefficient distribution of digital contentis the fact
`that different mobile devices often require different content
`packaging formats and provisioning protocols. In order to
`make a given item of digital content available to multiple
`mobile devices supporting different provisioning models, a
`digital content supplier will normally deploy that item of
`content multiple times, packaging it differently for each of
`
`2
`the provisioning models. For example, an image to be
`delivered to Nokia-COD phones and Sprint-GCD OTA
`phones would be deployed twice, custom-packaged for each
`of those two delivery modes. It is very burdensome for
`digital content suppliers to have to package and provision
`the digital content they produce in a mannerthatis suitable
`for all of the devices in the marketplace. Moreover, it is
`difficult for content suppliers to keep up with the constant
`changes in device capabilities for the many mobile devices
`in the marketplace. Consequently,
`there is ofilen a gap
`between the interoperability of a given digital product and
`how effective it can be used on a device. Therefore, the
`problem exists of how to efficiently allow many digital
`content providers to distribute many different types of digital
`content to subscribers using many different types of mobile
`devices.
`
`A related problem is how to charge subscribers for the
`digital content they acquire. In one known system. The
`wireless carrier’s system is capable of connecting to an
`external billing system and provides billing events to that
`system when a subscriber performs a chargeable action.
`However, this scenario assumesthat all subscribers belong
`to a single organization that also owns the billing system.
`Furthermore, it assumes that a single currency is used. Yet
`many multi-national organizations have a parent company
`with subsidiaries in many countries. Different countries have
`different currencies, taxes and other charges. Each subsid-
`iary may implement its own support/business infrastructure
`to deal with local regulations and customs, particularly with
`respect to the billing process. Consequently, the carrier’s
`system must be able to generate billing events and direct
`them to the appropriate external billing system. Further-
`more, it must be able to present the customer with a charge
`for each service, in the applicable currency and expressed in
`a way that is appropriate considering local taxes, fees and
`other regulations.
`One way to address this problem, which only partially
`solves it, is to use credit card systems. In this scenario, the
`credit card company acts as an intermediary in the billing
`process. This approach consolidates all billing at one point.
`Settlement is done between the product/service provider and
`the subscriber provider(e.g., the wireless carrier) for a fee.
`This approach, however, does not handle the currency, taxes,
`fees and regulations issues mentioned above.
`
`SUMMARYOF ‘THE INVENTION
`
`10
`
`20
`
`25
`
`40
`
`45
`
`Oneaspect of the invention is a method and apparatus for
`providing access to content for use on wireless communi-
`cation devices. Multiple items of content are stored in a
`server system,
`to be made available for use in wireless
`communication devices used by multiple wireless services
`subscribers. Each of the items of content is associated in the
`server system with multiple different provisioning models
`for provisioning the content
`in wireless communication
`devices. Each of the provisioning models corresponds to a
`different set of device capabilities.
`In another aspect of the invention, multiple different
`implementations of at least one of the items of content are
`received, where each implementation correspondsto a dif-
`ferent set of device capabilities. A product catalog contain-
`ing a description of the items of content is also maintained.
`The product catalog includes, in association with each item
`of content, a reference to each implementation of the item of
`content.
`
`
`
`US 7,233,790 B2
`
`4
`herein as the “download manager’. Digital content suppliers
`can publish and manage their products using the download
`manager via a computer network, such as the Internet, and
`can make their products available to wireless services sub-
`scribers through the download manager for purchase or
`licensing. Subscribers can access the server system via
`wireless networks to purchase rights to download and use
`the digital content on their wireless communication devices.
`FIG.1 illustrates the relationship between the download
`manager, content suppliers, and wireless services subscrib-
`ers (users of mobile devices). The download manager1 acts
`as an intermediary between multiple content suppliers 2
`(e.g., 2A, 2B, etc.) and multiple customers (e.g., 3A, 3B,
`etc.), e.g., wireless services subscribers, belonging to mul-
`tiple “domains”. In the supply chain process for distribution
`of digital content, a content supplier 2 adds a digital product
`to the set of products managed by the download manager 1
`(1.e., products “in the store’). The supplier 2 then associates
`various attributes with the product. Once the product has
`been submitted to the product store, a product administrator
`associated with the download manager1 verifies its quality
`and determines whether it should be made available to the
`customers 2 orif it should be rejected. Once the product is
`approved, customers 2 can buy the product by accessing the
`download manager 1 from their client devices.
`To facilitate description, it is henceforth assumed herein
`that the customers are users of mobile devices and, there-
`fore, are subscribers of warless services (although that need
`not be the case);
`thus, customers are henceforth called
`“subscribers” herein. Note, however,
`that the techniques
`described herein need not be limited to wireless services
`subscribers or mobile client devices.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Domains and Partner Management
`Among other advantageous features, the download man-
`ager 1 facilitates partner management. A “partner”, as the
`term is used herein, is an entity that holds a relationship to
`a subscriber for purposes of delivery of digital products,
`billing,returns, etc. For example, a partner can be an Internet
`portal, an Internet Service Provider (ISP), a wireless carrier,
`an application service provider (ASP), etc. A partner also
`appoints a numberof content suppliers to supply products to
`the product store. Partner management is the concept of
`being able to assign responsibility for various parts of the
`digital product supply chain to different categories of users.
`A system and methodfor efficiently managing the publi-
`cation, purchase and delivery of digital content from mul-
`Theentities “within the store” (managed by the download
`tiple content suppliers to multiple wireless services subscrib-
`manager 1) belonging to a partner are partitioned into
`ers in multiple domains are described below. As usedin this
`entities called “domains”. A “domain”, as the term is used
`description, the terms “digital content”, “digital product’,
`herein, is an entity, defined in the download manager1, that
`“content”, and “product”are used interchangeably and mean
`describes the billing relationship between a partner and a set
`software and/or data embodying things such as games and
`of subscribers, as well as describingapartitioning of product
`other applications, applets or the like; images; screensavers;
`space and administrative responsibilities. As such, a domain
`wallpaper; ring tones; etc., particularly (but not necessarily
`can represent a grouping of wireless services subscribers,
`exclusively) those designed for use in mobile devices such
`such as a wirelesscarrier or a subsidiary ofa wireless carrier,
`as cellular telephones, personal digital assistants (PDAs),
`a business enterprise, or any other defined group of wireless
`and other small-footprint wireless/mobile devices. For con-
`services subscribers. The domain manager maintainsa data-
`venience the terms “purchase” or “buy” are used to mean
`base of data defining the associations between domains and
`either actual purchase or any other conventional way in
`partners, administrators, subscribers and products.
`which a subscriber can acquire rights to use digital content
`Domains facilitate the proper billing of subscribers from
`(e.g., by acquiring a license).
`multiple organizations and/or with multiple wireless carriers
`Overview
`(or other subscriber providers), and facilitate presentation of
`product descriptions to subscribers in the languages and
`currencies appropriate for their local countries or regions.
`The domain entity is also used in the download manager
`1 to classify other entities as belonging to a domain 1-to-1,
`belonging to a domain 1-to-many, many-to-many, or not
`
`3
`Other features of the present invention will be apparent
`from the accompanying drawings and from the detailed
`description which follows.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`One or more embodiments of the present invention are
`illustrated by way of example and not limitation in the
`figures of the accompanying drawings, in which like refer-
`ences indicate similar elements and in which:
`FIG.1 illustrates the relationship between the download
`manager, content suppliers, and subscribers;
`FIG. 2 shows a network architecture in which a download
`manager in accordance with the invention can be deployed;
`FIG. 3 schematically shows the components of the down-
`load manager;
`FIG. 4 shows the components of the device capability
`manager;
`FIG. 5 showsthe relationship between a product entry and
`implementations of the product in the product catalog;
`FIG. 6 showsthe relationship between a product andits
`implementations;
`FIG. 7 shows how various data elements are used in the
`billing process;
`FIG.8 illustrates a simplified process by which a product
`can belisted in the product catalog in a way that facilitates
`device-tailored product discovery and provisioning;
`FIG. 9 shows a process by which the product catalog is
`displayed to a subscriber;
`FIG. 10 showsa process by which a purchaseof a product
`can be made using the download manager;
`FIG. 11 illustrates the separation, within the download
`manager, of content from how the content is provisioned;
`FIG. 12 illustrates a process by which a product
`is
`provisioned in a client device using the appropriate one of
`various provisioning protocols;
`FIG. 13 shows an example of the software deployment
`architecture of the download manager; and
`FIG. 14 illustrates the hardware architecture of a com-
`
`puter system in which the download managercan be imple-
`mented.
`
`DETAILED DESCRIPTION
`
`As described in greater detail below, a system which
`manages publication, purchase and delivery of digital con-
`tent is implementedin a network server system that includes
`one or more server computer systems on a network. The
`server system includes an application server referred to
`
`
`
`US 7,233,790 B2
`
`5
`belonging to a domain. In general, a domain captures the
`following relationships to the subscribers:
`1) how subscribers are charged for the products they
`purchase and in which currency;
`2) to which user groups the subscribers can belong;
`3) from which product categories the subscribers can
`select products; and
`4) which products are accessible to the subscribers.
`In certain embodiments of the invention, a domain has the
`following properties:
`a name(localized)
`a description (localized)
`a uniform resource locator (URL) to a web site giving
`further description of the domain
`a contact address including contact person, contact tele-
`phone numbers, fax numbers and postal address
`the currency to use for billing and display purposes
`reference to handlers for various different payment mod-
`els (e.g., online payment, pre-payment and post-pay-
`ment)
`a set of references to rating handlers used for adjustment
`of product prices
`The nameand the descriptions have localized values for
`the set of languages registered in the system.
`The distinction between domain entities and non-domain
`
`entities also forms the basis for delegated administration.
`More specifically, for each domain, the responsibility for
`supplying products, approvingor rejecting products, etc. can
`be delegated to different suppliers and administrators. Thus,
`each domain is associated with a set of administrators that
`handle the products in the store. In certain embodiments of
`the invention, these administrators include a system admin-
`istrator, a domain administrator, a product administrator, and
`a customer care administrator.
`
`The system administrator is the overall administrator for
`the download manager 1, who can create new domains and
`their respective domain administrators to help regulateit. He
`also maintains the ability to control non-domain entities
`such as devices, content types, etc. The domain administra-
`tor is the overall administrator for a given domain. He has
`the ability to manageall of the suppliers and subscribers for
`his domain as well as create product and customer care
`administrators for the domain. The product administrator is
`responsible for managing the entire productlifecycle for the
`content submitted by the domain’s suppliers. The customer
`care administrator is responsible for managing subscribers
`belonging to the domain. Lach subscriber belongs to only
`one domain and can only see products for the domain to
`which he belongs.
`A partner appoints a number of content suppliers who
`provide products to the product store. A supplier can only
`submit products to the domain(s) to which he belongs. The
`relationship between suppliers and domains is many-to-
`many. Products are approved and deployed separately for
`each domain.
`
`From the content supplier’s perspective, all entities in the
`download manager1 that are domain-related are only select-
`able based on the domainsto which the supplier can provide
`products. For example, a supplier can only choose from
`among the product categories and license models that belong
`to the domains to which the supplier has the right to supply
`products.
`Network Environment
`FIG. 2 shows a network architecture in which a download
`manager in accordance with the invention can be advanta-
`geously deployed. One or more wireless networks 22 are
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`connected to a computer network 24 through corresponding
`gateways 23. The computer network 24 maybethe Internet,
`although alternatively, it could be essentially any other type
`of computer network, such as a corporate intranet, a local
`area network (LAN), etc., or a combination of such net-
`works.
`
`A numberof mobile client devices 21 (e.g., 21A, 21 B,
`etc.) operate on each wireless network 22. A number of
`servers 25 (e.g., 5A, 5B, etc.) operate on the computer
`network 24 to provide a variety of services for the mobile
`devices 21 and/or to one or more non-mobile client devices
`29 coupled to the computer network 24. For example, the
`servers 25 may include World Wide Webservers, file serv-
`ers, application servers, etc.
`Each gateway 23 is operated by the wireless carrier of the
`wireless network to which it is directly connected. Each
`gateway 23 provides an interface between a particular
`wireless network 22 and the computer network 24 (e.g., the
`Internet), providing routing and, if necessary, appropriate
`protocol
`translation and/or content transcoding. In some
`cases, the gateway 23 may be a standalone device or system.
`In other cases, the gateway 3 maybe part of a more-capable
`server system that provides additional value-added services
`to users of client devices 21; such as a proxy service 27, a
`provisioning manager28, etc.
`A download manager 1 in accordance with the present
`invention is connected to the computer network 24, either
`directly (as shown)or indirectly. The download manager 1
`can be, but does not have to be, operated by a wireless
`carrier.
`
`Download Manager
`FIG. 3 schematically shows the download manager in
`greater detail, according to certain embodiments of the
`invention. In the illustrated embodiment, the major compo-
`nents of the download managerinclude a delivery manager
`31, a product manager 32, a business & operations manager
`33, and multiple protocol handlers 34. Each of these com-
`ponents is preferably implemented as software, data, or a
`combination of software and data. However,
`in other
`embodiments, some or all of these components could be
`implemented in hardwiredcircuitry. The download manager
`1 may also include a database 35 of published content, as
`shown,although at least some of the published content may
`instead be stored remotely.
`The product manager 32 is the download manager’s
`interface to the various content suppliers and provides
`centralized product cataloging (including enabling qualified
`content suppliers to register content for analysis and publi-
`cation) and complete productlife cycle support (1.e., man-
`agement of content submission, analysis, approval, publica-
`tion, use, maintenance, and eventual deactivation). The term
`“publication”, as used herein, means making a product
`available on the download manager to wireless services
`subscribers for downloading to their client devices. The
`delivery manager 31 is the download manager’s interface to
`the various subscribers and is responsible for delivering
`purchased digital content to subscribers, including invoking
`a protocol handler appropriate for communicating with each
`requesting mobile device. The protocol handlers 34 support
`multiple product discovery protocols and multiple product
`delivery protocols simultaneously. Hence, the protocol han-
`dlers 34 include product discovery handlers (e.g., a WAP
`handler, a Web handler, a Motorola Discovery handler) and
`product delivery handlers (e.g., a MIDP OTA handler, a
`Motorola OTA handler, a Nokia COD OTA handler). The
`business & operations manager 33 is mainly responsible for
`
`
`
`US 7,233,790 B2
`
`7
`managing domain information and processes for charging
`subscribers for purchases of content. These components are
`described further below.
`
`As shown in FIG.3, the delivery manager 31 in certain
`embodiments includes a security manager 36, a device
`capability manager 37, a personal vault 38, a storefront 39,
`and a notification manager 40. The storefront 39 is a
`conventional graphical user interface for allowing subscrib-
`ers to make online purchases.
`It can be branded to a
`particular wireless carrier, for example, or other business
`entity. The security manager 36 is responsible for authenti-
`cation of subscribers and client devices for purposes of
`purchasing content and preferably can support multiple
`authentication schemes, such as HTTP-based authentication,
`MSISDN/NIAbasedauthentication, etc. The personal vault
`38 stores, on a subscriber-by-subscriber basis, information
`to facilitate digital rights management (DRM), such as
`product licenses and/or other “purchase” information of the
`products purchased by each subscriber. This allows a sub-
`scriber to remove downloaded content from a mobile device
`without losing rights to the product, or to recover products
`on a device in cases of device hard reset, loss, etc.
`The notification manager 40 can provide various types of
`notifications to subscribers using various communication
`channels, such as email, SMS, and WAP Push. The notifi-
`cation manager 40 can generate notifications automatically,
`such asnotifications of new products or product upgrades, or
`in response to commandsfrom a system administrator, such
`as accountnotifications, notifications of special promotions,
`etc.
`
`The device capability manager 37 is responsible for
`device recognition (e.g.,
`supporting device recognition
`through UAProfusing Profile headers and Profile-Diff head-
`ers), device capability determination (e.g., retrieving device
`descriptors using best efforts and appending device capa-
`bilities to the session context), and device capability man-
`agement (e.g., automated management of UAProf capable
`devices and quarantine of undefined or partially defined
`devices). As described further below, recognition of devices
`and their capabilities is used for a variety of purposes, such
`as to filter the set of ava