`
`Summary
`Certain embodiments of the present invention are directed to a "thin client" that addresses the evolving
`requirements for distributing content across the mobile device landscape, and specifically one or more of
`the problems with prior art systems.
`The "thin client" begins with the definition of an application model for running on a moble device, where
`the model is implemented inside a language. In one embodiment, a method and apparatus for authoring
`content with the language is provided. Embodiments may range from quasi-programming to a full(cid:173)
`featured authoring environment. By this definition the browser itself is a "thin client" but will be treated
`below as a separate category. Other prominent examples of "thin clients" on the desktop are Flash and
`PDF readers. Browser-based implementations include, but are not limited to, WAP, HTML, AJAX, and/or
`possible scripting Languages. Since the browser initially defined the desktop internet experience it is
`reasonable to expect that, as the incumbents, the browser-based solutions could play a significant role in
`bringing content to mobile devices.
`In contrast to a "thin client," a "fat client" is generally an application that is installed and remains on the
`device. The "fat client" utilizes the APls available natively on the device, or relies on the APls that are
`exposed by the virtual machine. Apple's iPhone is an example of a "fat client," as are Yahoo Go Live 2.0
`and implementations developed by various vendors such as Surf Kitchen.
`Detailed Description
`The following includes a description of specific embodiments of the present invention. These
`embodiments are illustrative, and are not meant to limit the scope of the present invention.
`
`A: Comprehensive Application Model
`All languages, whether they are programming languages such as C, C#, C++, Java or BREW, scripting
`languages such as JavaScript, or mark-up languages such as WAP and HTML, implement an application
`model, which is the abstraction of what capabilities the language was designed for.
`Productivity tools, such as word processors and spread sheets, also have application models, although
`they usually have very limited extensibility as compared to programming languages. Typically, they
`sacrifice the robustness of a programming language for ease-of-use.
`There must be an authoring platform that supports a comprehensive application model that combines the
`ease-of-use of well designed productivity tools with the robustness of a programming language.
`
`Application Model Life Cycle
`The implementation of a robust application model requires a Portable Description Language (PDL). As
`Graphic 1 depicts, the POL is the common language for both the Auth.oring Tool and the SOK.
`
`Docket: XPR002PR
`
`2
`
`IPR2021-01146 Page 00513
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`Graphic 1: Application Model Life Cycle
`
`1. Design & Program
`
`2. Publish
`Portable Description
`Language (POL)
`
`3. Distribute
`
`llillilil
`llillilil.
`
`Xpressmo Authoring Tool
`
`SOK & Java APls
`
`4. Interact
`
`Docket: XPR002PR
`
`3
`
`IPR2021-01146 Page 00514
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`Portable Description Language
`The POL can be conceptually viewed as a device, operating
`system and virtual machine agnostic representation of serialized
`objects. While either designing the application with the Authoring
`Tool, or programming with the SOK, the internal representation of
`the programming logic can be, for example and without limitation,
`Java. {STEVE: ARE THERE OTHER EXAMPLES THAT YOU
`MIGHT ADD HERE?}
`At "publishff time this Java code, for example, gets translated into
`the PDL. This translation would also occur in real-time during the
`execution of any Web Services or backend business logic th?tt
`interacts with the user.
`
`Graphic 2: PDL Code and Data Compaction
`Java Objects
`
`,~,
`I~ I I~ I
`
`Some of the advantages of the POL as
`opposed to other languages are:
`1: Code and Data Compaction
`Code, as well as vector, integer and Boolean data are
`compacted and then compressed resulting in a size reduction of
`40 to 80 times that of the original Java serialized objects. This is
`important not only for performance over the network but for
`utilizing the virtual memory manager of the player more
`efficiently. See Graphic 2.
`2: Virtual Machine and Operating ·system Independence
`The reassembled primitives of the application no longer have any
`dependencies from the original programming language (Java)
`that they were defined in. The player architecture takes full
`advantage of this by abstracting all the virtual machine and/or
`operating system interfaces from the code that processes the
`POL.
`3: Extensibility and Compatlblllty
`Because the POL is defined by the means of nested arrays of
`primitives, there are no constraints in terms of extending the
`player seamlessly as market demands and device capabilities
`continue to grow. Compatibility with other languages is inherent
`based on the various player abstraction implementations.
`
`Docket: XPR002PR
`
`4
`
`Reassembled Primitives
`
`0000
`0000
`0000
`0000
`
`Logical Compression
`0000
`
`gggg
`
`0000
`
`• LZ Encoded
`
`IPR2021-01146 Page 00515
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`B: Authoring Platform and API Extensions
`1. WYSIWYG Full-Featured Authoring Tool
`The delivery platform authoring tool provides developers with a what-you-see-is-what-you-get
`(WYSIWYG} PC- and Mac-based full featured editor. Most of the complicated Java programming
`functions is presented with easy-to-use pull-down menus, dialog boxes, and buttons.
`
`Graphic 3: Authoring Tool
`
`a: Intelligent Interactive Object Libraries for Sophisticated Development Environment
`Designers of the delivery platform must adopt and support the most sophisticated and powerful features
`of advanced web and web services applications, in addition to location-based services (LBS) and photo
`services, and integrate them within the platform's authoring environment. Now, solution providers can use
`the intelligent interactive object libraries to offer to their customers and mobile users:
`► Slide shows, which incorporate images, video, audio, animated transitions, multiple chats, and
`mouse interaction.
`► Full 2-D vector graphics.
`► GIS {advanced LBS); including:
`• Multiple raster and vector layers.
`• Feature sensitive interactions.
`• location awareness.
`► Streaming and embedded audio/video.
`► Virtual tours.
`Image processing and enhancement.
`►
`► Widgets
`Child objects, which can be activated by user interaction and/or time. Uses include:
`► Mouse over (object selection), hover and fire events.
`► Launching of object-specific, rich-media experiences.
`
`Docket: XPR002PR
`
`5
`
`IPR2021-01146 Page 00516
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`b: Advanced Interactive Event Model for Rich, Compelling Applications
`The distinguishing characteristic of the 21st Century Internet is that it is a highly interactive and
`personalized platform for all consumer, business, and public sectors. Mobile devices must be as
`interactive and personal as PCs and gaming consoles. This requires timed events, smooth movements,
`and interesting animations. The vendor delivery platform should have the following advanced features
`built into its authoring environment:
`User-, time- and/or location-initiated events, which allow content developers to base interactivity
`►
`on specific user interactions and/or instances in time and space.
`Timelines, which are critical for timing of multiple events and for animations when entering, on, or
`►
`exiting pages of the application.
`► Waypoints, which act similar to key frames, to allow smooth movement of objects within pages of
`the application. Waypoints define positions on a page object's animation trajectory. When an object
`reaches a specific waypoint:
`• Other object timelines can be initiated, creating location-sensitive multiple object interaction.
`• Audio can be defined to play until the object reaches the next waypoint.
`
`c: Full Style Inheritance
`Both Master Page inheritance (for structural layout inheritance and repeating objects} and Object Styles
`(for both look and feel attribute inheritance) are supported.
`After a style has been defined for an object, the object will inherit the style. Style attributes include both
`the look and the feel of an object, including mouse interaction, animations, and timelines.
`For example, if the content developer creates various text objects using a style that sets the font to red,
`the fonts of these objects will be red. Suppose the developer changes the font color of a specific button to
`green. If later, the developer changes the style to blue; all other text objects that were created with that
`style will become blue except for the button that had been specifically set to green.
`
`d: Page View, Style, Object, Widget and Application Template Libraries
`Templates created in private libraries can be used to provide consistency throughout an application.
`There are also public libraries that can be made available to all developers.
`Templates can be used to define the look and feel of the entire application, specific pages, or specific
`sltde shows and virtual tours.
`
`Docket: XPR002PR
`
`6
`
`IPR2021-01146 Page 00517
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`2. Java APls, Web Services and the SDK
`The authoring platform should also include the following components:
`► Vendor supplied SDK for custom code cevelopment.
`► A full set of Java APls should be included in the vendor's System Development Kit (SOK) to make
`it easy to add extensions and functionality to mobile applications, and tie applications to back-end
`databases through the vendor's Content Server.
`► A growing set of vendor supplied Web Services. The vendor should offer an expanding set of
`Web Services, available through both the authoring tool and the SOK. They include:
`• Dynamic Binding of Real-time Content
`This includes a RSS/Atom/RDF Feed Collector with XML Rules based APls
`
`►
`• Broadcasting
`• Rich Messaging
`• Server Pages
`• Widgets
`• Persistent Storage Variables
`• Access to Phone Resources
`► A Web Services interface to SOAP/XML enabled Web Services
`
`Graphic 4: Authoring Platform
`
`Application and
`UI Designer
`
`--•·· ~~~~~ui~f'1 '
`
`_ ... ~ . .,__
`
`.
`
`. .
`
`Docket: XPR002PR
`
`7
`
`IPR2021-01146 Page 00518
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`a: The SOK and Java APls
`The vendor's SOK should work with various popular IDEs including Eclipse. Available through the SDK
`should be a large and powerful set of APls and interfaces that permit the seamless extension of any
`application to back end business logic, Web Services, etc. These interfaces and APls support:
`► Listeners
`There should be a large set of listeners that expose both player-side events and dynamically linked
`server-side data base events. Some examples are:
`• Player-side forms-based content.
`• Player-side user interactions
`• Player-side object status
`• Server-side driven dynamic content events.
`► Player-side Object Operations
`There should be a superset of all authoring tool functionality that is available through APls. They
`include:
`• Page View Level APls for inserting, replacing, and or modifying any page object.
`• Object Level APls for modifying any attribute of existing objects, adding definitions to attributes,
`and adding, hiding or replacing any object.
`
`b: Web Services for Real-Time, Shared, and Broadcast Content for Timely Distribution
`Magazines, newspapers, websites, and other forms of published material are based on templates and
`styles that offer a consistent, familiar look and feel to those viewing the material. These forms of
`publications offer content that can be accessed (i.e., read) in near real-time (depending upon the
`frequency of the publication), shared with others (i.e., showing an article to a friend), and broadcast to
`groups of people (i.e., subscribers). It should be no different for the mobile market. That's why the
`suggested platform offers Server Pages (XSPs), which, like Java Server Pages, serve objects and
`dynamic content to individual pages (that have been set with styles and templates) without the need to
`open other pages.
`
`lIIIIIlil
`UIIIIIll
`
`Content Server
`
`Dynamic Content
`(pages, applications,
`multimedia, audio, etc.)
`
`Docket: XPR002PR
`
`8
`
`IPR2021-01146 Page 00519
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`Graphic 5: Server Pages
`However, unlike JSPs and ASPs, which are restricted to the functionality supported by the browser, the
`functionality of XSPs can be remarkably extended through the vendor's Java APls. Also, unlike the slow
`performance inherent in browser operations, XSPs take full advantage of the compaction technology of
`the proposed platform, resulting in response times usually less than 2 seconds.
`With the dynamic binding functionality of an XSP, a page can be saved as a page object in an author's
`"pages" library, and then can be dynamically populated with real-time content simultaneously as the page
`is downloaded to a given handset player based on a newly, expanded APL Server Pages could also be
`produced programmatically, but in most cases the delivery platform authoring tool will be a much more
`efficient way to generate and maintain libraries of dynamically changing XSPs.
`With XSPs, pages that have dynamic content built into them can be sent directly to the handsets. Without
`XSPs, content authors would have to define each page in the application. With the proposed
`implementation, no pages need be defined. For example, in a World Cup application, one page could
`represent real-time scores that change continuously on demand. With polling (for example, a prompt to
`the users asking who they predict will win a game), a back-end database would tabulate the information
`and then send the results dynamically to the handsets. With a bar chart, the application could use
`dynamic Portable Description Language (POL) with scaling on the fly. For example, the server could
`recalibrate the bar chart for every ten numbers.
`
`c: Web Services for Widgets
`An extension of an XSP is a Widget object. Widgets are supplied with the following services:
`► Widgets can be developed from numerous sources:
`• The Authoring Tool
`• A Consumer Publishing Tool
`• An XML to Widget Conversion Tool
`► The SOK Widget Libraries are automatically populated and managed.
`► Widget Selection Lists are available and can be populated with author defined Icons.
`
`d: Web Services for Sharing Through Chats and Forums
`User-generated content and chats have become the trend in 2006. For example, YouTube.com delivers
`more than 40 million video views every day with 35,000 new videos uploaded daily.
`A USA Today article revealed that MySpace has reached well over 47.3 million members. The Blog
`Herald also reported that MySpace "is growing by an amazing 160,000 new users a day, according to
`MediaPost" (comScore Media Matrix, a division of comScore Networks, Inc.).
`The delivery platform should have an integrated social networking message board technology within its
`solution. With the mobile chat objects, mobile handset users can communicate within groups of
`communities. Entertainers and artists can create personalized Chat Rooms, and sport teams can create
`team chats. Other benefits target MVNOs and media companies.
`► MVNOs
`• Increase average revenue per user (ARPU).
`• Increase upgrades and premium service plans.
`• Expand subscriber base with incremental users sharing photos and chats.
`• Leverage photos and chats with seasonal marketing events.
`► Media companies
`• Build community and capture new users with chatting.
`• Increase consumer interaction with brands/properties.
`
`Docket: XPR002PR
`
`9
`
`IPR2021-01146 Page 00520
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`e: Web Services for Dynamic Data Binding (RSS feed and Chats)
`Inserting RSS feeds and other forms of dynamic content into mobile applications must be easy with the
`delivery platform. The authoring tool should contain an easy-to-use dialog box that dynamically links
`objects to data and feeds determined by RSS and chat databases. Any relevant attribute for a page view
`and/or object can be dynamically bound to a value in a server-side database. This includes elements
`within complex objects such as:
`► Any Icon or Text Element within a Graphical List
`► Any Icon within a Launch Strip
`► Any Feature within any Geographical View of a GIS Service Object
`► Any Virtual Room within a Virtual Tour.
`
`Graphic 6: Dynamic Data Binding Tool
`
`Docket: XPR002PR
`
`10
`
`IPR2021-01146 Page 00521
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`f: Web Services for Converting RSS/Atom and RDF Feeds
`Graphic 7 shows a proposed implementation for a Mobile Content Gateway. It starts with the
`identification of an ATOM, RDF or RSS feed source. Through a Vendor supplied rules-based populator.
`any of these feeds can be logically parsed, with any type of data extraction methodology, either by using
`vendor supplied rules, or by the author defining their own custom extraction rule.
`
`Mobile
`Content
`Gateway
`
`-----·----
`
`DIii ,ED-:
`
`Playeri'equijsts
`Content$erver
`. for FeedD_ata
`·HTTP:80 P0$T
`
`-0
`
`. ·: o.
`
`COIJs1xj;nR
`. :, f Based
`·
`:
`
`-·_;
`Feed
`.
`. Processed
`_ .................. ...
`· Dala:Writer
`.,
`.
`,
`. ··>· -~·--;....."'!"""' ................. ...;.;.; ....... ..,;,,;,;,-1
`
`Dyneinlc,
`con~rit'Server:
`
`Graphic 7: RSS/Atom and RDF Feed Conversion Web Service
`
`Docket: XPR002PR
`
`11
`
`IPR2021-01146 Page 00522
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`C: Intuitive Navigation
`Efficient Platform User Interface with Touch Minimization for Optimizing Form Factors and Navigation
`The delivery platform should offer a very powerful and broad set of extensible navigation objects, as well
`as object- and pointer-navigation options to make it easy to populate small mobile device displays with
`content and to navigate easily:
`► among page views
`► between applications
`► within objects in a single page view of an application
`
`a: Navigation Objects
`Navigation objects include various types
`of launch strips, various intelligent and
`user-friendly text fields and scrolling text
`boxes, powerful graphical complex lists,
`as well as desktop level business forms.
`In fact, every type of object c~n be used
`for navigation by assigning a navigation
`event to it.
`The authoring tool offers a list of
`navigation Object Templates, which then
`can be modified in numerous ways.
`(Graphic 8)
`
`Docket: XPR002PR
`
`12
`
`IPR2021-01146 Page 00523
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`b: Launch Strips and Graphical List Templates
`Launch Strips (Graphic 9)
`Launch Strips can be designed by the author with
`almost no restrictions. They can be stationary or
`appear on command from any edge of the device,
`their size, style, audio feedback, and animations can
`be freely defined to create highly compelling
`experiences.
`In the example to the left a portal type Launch Strip
`becomes visible from the left edge when requested,
`while a channel type Launch Strip, which may be
`application specific, becomes visible from the bottom
`when requested. The channel type Launch Strip could
`have an appropriate sound effect for each channel
`when being selected, as well as popup bubble help.
`Graphical Lists (Graph_ic 10)
`As seen in the examples below, graphical·lists can
`contain items with many possible text and image
`. elements. Each element can be defined at authoring
`time and/or populated dynamically through either
`vendor supplied Web Services or APls.
`c: Assignable Navigation Events
`All objects, and/or all elements within an object, can be
`assigned navigation events that can be extended to the
`vendor's Web Services or APls. For example, a Rolodex type
`of navigation event can dynamically set the starting slide of
`the targeted page view (or the starting view of a targeted
`application).
`d: Intuitive Object and Pointer Navigation
`The proposed platform has created options to choose
`between object and Mouse navigation for other devices.
`Object Navigation permits selection of objects with a Joy Stick
`and/or Cursor Keys in all 4 directions. When within a complex
`object the navigation system automatically adopts to the
`navigation needs for that object. For coordinate-sensitive
`objects, such as geographical information services (GIS),
`location-based services (LBS), or virtual tours, a soft cursor
`appears. For lists, scrolling text areas and chats, launch strips,
`and slide shows the navigation process permits intuitive
`selection of elements within the object. Scroll bars and
`elevators are optionally available for feedback.
`If the device has a pointing mechanism then scroll bars are
`active and simulate the desktop experience.
`
`Docket: XPR002PR
`
`13
`
`Graphic 10: Graphical Lists
`Channel Selection list
`..
`
`Widget Se,lection List .
`
`Phone list
`
`IPR2021-01146 Page 00524
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`Graphic 11: Messaging Objects
`
`D: Advanced Feature Support
`1: Messaging and Social Networking
`A seamless integration of all phone communication functions
`with any robust mobile application would be an essential
`prerequisite for market adoption. This means that
`communication functions should be:
`► Easler
`The number of touches should be less than (certainly
`no worse than equal to) that of using the phone
`communications UI directly.
`► More Robust
`The communication choices should be an appropriate
`superset of what the phone already offers.
`► More Entertaining
`The communication choices should offer appropriate
`imagery, video, text, and audio to make the user
`experience more compelling.
`► Personalization
`Users should be able to adjust the communication
`metaphor to whatever they feel works best for them.
`In addition, the content that is available for messaging and
`social networking should only be limited by the imagination of
`the user. This means that any content capturing functions on
`the device must be seamlessly supported. Such content
`should be customized as the user wishes. Messages could be
`easily assembled based on any content that is available to the
`user. Messages could easily be shared with any individual
`and/or group.
`Communication metaphors must be state-of-the-art and easily
`available to both the authors and the users of this suggested
`platform. Two examples of this are shown in Graphic 11
`above.
`► Video Chat
`A chat session can be conducted simultaneously, inside
`an integrated page view, with a video or television
`station.
`► Multiple Chat
`Multiple chat sessions, each with a designated
`individual and/or group, can be conducted simultaneously, with each of the chat threads visible
`inside an integrated page view.
`
`Docket: XPR002PR
`
`14
`
`IPR2021-01146 Page 00525
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`2: Personalization and Temporal Adoption
`Personalization has become a prerequisite for any comprehensive consumer-facing mobile solution. It
`consists of two customization methodologies.
`► Adoption
`The choices, navigation options, etc. are based on user usage patterns.
`► Customization
`The user can select which skins, choices, layouts, dynamic content, widgets, etc. are available
`either through a customization on the phone or one that is on the desktop but dynamically linked to
`the user's other internet connected devices.
`Personalization also must be extended to include temporal
`adoption. That means that the skins, choices, layouts,
`content, widgets, etc. are further influenced by:
`► Location
`Information requirements will significantly change based
`on whether the user is at home, at the office or when
`travelling.
`► Time of Day
`Information requirements could also significantly
`change by the day of the week, which season of the
`year, and the time of day.
`For example, a possible phone top layout for a workday when
`a user wakes up might look like Graphic 12 to the left. Any
`messages received overnight would be flagged, the user's
`favorite RSS sports feeds would be visible, today's weather
`forecast would be available, and the current traffic conditions
`between the user's home and office would be graphically
`depicted.
`
`Graphic 12: Temporal Example
`
`Docket: XPR002PR
`
`15
`
`IPR2021-01146 Page 00526
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`3: Push Capable
`Most agencies and brands want more
`than just rich, interactive content. They
`want to reach, acquire, and retain
`customers through the mobile channel.
`This requires a sophisticated back-end
`database, as well as push and pull
`technology. The suggested platfonn
`must work with both.
`For example, short codes can be
`applied to cereal boxes and beverage
`containers, and SMS text fields can be
`applied to promotional websites. In
`either case, a consumer can text to a
`vendor SMS server, which then serves
`the appropriate application link back to
`the consumer. (Graphics 13A and
`13B)
`
`Graphic 13B:
`Content Pushing using SMS Example 2
`
`End Users
`sends SMS code
`
`Text ACME:
`PROMO
`for la1est
`promotion
`
`Graphic 13.A: Content Pushing using SMS Example 1
`
`End Users sets up
`weekly SMS updates
`from website
`
`Sports Newa updates
`information on server
`and triggers SMS
`to subscribers
`
`End Users
`receive SMS and
`updated content
`
`Xpressmo Server
`
`Graphic 14: Content Pushing using Rich Media Multi-layer Messaging
`
`MUSIC updates
`information on server
`and triggers an alert
`message to subscribers
`
`End Users
`receive alert without
`leaving application
`and can update content
`
`Alert
`Message
`
`--------------..
`
`ACME Server
`receives SMS
`
`(Graphic 14) A more powerful example is utilizing the Rich Media Multi-layer Messaging Architecture so
`that powerful and entertaining messages can be broadcast to any logical group of devices. The consumer
`is notified in real-time of the pending alert, and can view and interact with the massage without
`interrupting the current application and view.
`
`Docket: XPR002PR
`
`16
`
`IPR2021-01146 Page 00527
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`4: Tight Integration with Phone Functions
`As described above as a prerequisite for messaging and social networking, there are a large and
`expanding set of phone based resources that must be tightly integrated with any consumer facing
`applic;ation to be a viable robust solution. This list will continue to grow, but it already includes:
`► Placing and receiving phone calls
`► Access to the phone's PIM data
`► Access to the phone's camera
`
`5: Mashups
`The efficient and robust integration of different web services to create a value-added seamless user
`experience should be an inherent attribute of the Authoring Platform. Some of the facilities that support
`mashups are:
`► The Feed Collector
`Utilizing a vendor supplied rules based populator, dynamic content from different feeds and/or web
`services can be logically consolidated.
`► Extensible Attributes for Complex Objects
`Slide shows, virtual tours, GIS Service objects, and child objects, can consolidate content in a
`logical way, whether it be text, video, audio, pictures and/or vectors.
`► Vendor Supplied Web Services
`Services such as dynamic binding and Server Pages further help facilitate the mashup of logically
`related dynamic content.
`
`Graphic 15: Web Services Objects
`
`.~xpre;
`
`._··-;; . .;_ . .:.,_
`. 1';;'7 •..
`-~-
`~-~·~~·-.-
`-:._
`Quiekiim
`
`. .
`
`. ·:
`
`.
`
`··.•t
`
`Docket: XPR002PR
`
`17
`
`IPR2021-01146 Page 00528
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`Example: Location Awareness Integration with all Relevant Services
`More and more social networking applications require the use of geographical information services (GIS)
`and location-based services (LBS} as integral components. For example, a social networking application
`may detect the location of "friends" within a certain radius of the mobile device using GIS and phone
`triangulation (location based on the three nearest mobile cell towers near the respective phone) or
`through the GPS received on the phone. GIS images may be used for mapping to theaters or restaurants,
`detect optimal travelling routes based on traveling conditions, etc. A broad array of mobile GIS web
`services have been built into the proposed delivery platform for location-aware applications.
`Graphic 16A and Graphic 16B are two examples of possible implementations.
`
`Graphic 16A: LBS Optimal Travel Route
`
`Step 1
`Select the l:iJ icon or fire after moving a soft cursor to zoom in to
`the desired geography.
`
`. · 1 X=l82fiIOjY=&44858~■\l':110917 l
`
`-( -
`-· -:
`
`Step2
`~est directions from two User-Defined geospatial points. Select the
`1W icon and move cursor to a desired start-point 'A'. Move your
`cursor to a desired end-point 'B'.
`
`Step3
`
`To get the directions, select Im icon again
`
`Result
`You will start off with a raster image of a map with two points selected. The optimal route will be displayed as a
`green vector graphic on top of the raster image of the map. You call zoom in closer to the optimized directions for
`a closer look. You can also see points of Interest, by viewing a 360-degree virtual tour. See Graphic 17 LBS
`Enhanced Services
`
`Docket: XPR002PR
`
`18
`
`IPR2021-01146 Page 00529
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`Graphic 168: LBS Enhanced Services Demo
`
`Step 1
`The user could, as a short cut, select a point of interest through a
`button or any other navigation object.
`
`; - ; -
`------ -·
`
`.. -·1,x,:,183182j¥=64415'l¼■:cl:l3864-'a:
`
`Step2
`Alternatively, the user could select the l:iJ icon or fire after movir:-ig a
`
`soft cursor to zoom in to the desired geography so that the point of
`interest becomes visible and is selected. Or the user could enter in or
`select an address. The user could then fire on the button labeled 'Take
`Tour'
`
`Step3
`Immediately a virtual tour of the point of interest becomes available in
`which t':le user can now pan and zoom throughout the virtual
`representation of the point of interest.
`Alternatively, if a video cam is operational, a live video feed could be
`displayed.
`
`Docket: XPR002PR
`
`19
`
`IPR2021-01146 Page 00530
`
`
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`E: Maximum Distribution to Internet Connected Devices
`1: Removal of Most Device & Network Constraints
`Thick vs. Thin Client
`Most current implementations that support rich and highly interactive user experiences are computer
`programs that are written either to the Operating System (OS) or Virtual Machine (VM) of the device.
`From a development point-of-view this is a far quicker path to take. However, it means that all significant
`changes to the application require reprogramming the application and then complete the required Q/A
`cycle, a process that can take several months. Also, for feature phones, the entire application must be
`downloaded and placed into the limited heap of the device. For any robust and full featured application
`this design will, at best, quickly restrict its use to a very limited number of devices.
`
`Graphic 17: Thick vs. Thin Client
`
`Thick Cllent (SOOK+}
`• Resident Program
`
`Custom COde and Data
`
`Ultra-thin Client (<1301<)
`• Application management
`• Virtual memory manager
`• Multi-level cache manager
`• Anticipatory streaming
`
`Code and Data Compaction
`
`" + ~
`"~
`
`[illill]]IJilIIID
`rnmrnmmm
`rnrnrnmmm
`rnmrnmmm
`-
`-
`
`--
`
`Docket: XPR002PR
`
`20
`
`IPR2021-01146 Page 00531
`
`
`
`Graphic 18: Ultra-thin Client Engine and Its extensions
`
`Systems and Methods for Presenting Information on Mobile Devices
`
`As mentioned before, the Proposed
`Platform is based on an ultra-thin
`client architecture. The Client is light
`weight and extends the OS and/or VM
`of the device to:
`► Extend the capability of the
`device to that of a desktop
`computer
`► Manage all applications and
`application upgrades
`► Resolve device, OS, VM and
`language fragmentation
`A thin client architecture requires that
`a language be adopted that manages
`resources efficiently, is extensible,
`supports a robust application model, and has no device specific dependencies.
`
`'
`:;
`
`.
`
`i
`
`.
`·._·g·--·· J_··.:.
`i
`
`t