US20110283185A1 - Adaptable layouts for social feeds - Google Patents

Adaptable layouts for social feeds Download PDF

Info

Publication number
US20110283185A1
US20110283185A1 US12/814,709 US81470910A US2011283185A1 US 20110283185 A1 US20110283185 A1 US 20110283185A1 US 81470910 A US81470910 A US 81470910A US 2011283185 A1 US2011283185 A1 US 2011283185A1
Authority
US
United States
Prior art keywords
social network
shared content
layout
client device
display
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
US12/814,709
Other versions
US9405845B2 (en
Inventor
Oludare V. Obasanjo
Seung-Hae Park
Benjamin C. Walters
Jared A. Russell
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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
Priority to US12/814,709 priority Critical patent/US9405845B2/en
Application filed by Microsoft Corp filed Critical Microsoft Corp
Assigned to MICROSOFT CORPORATION reassignment MICROSOFT CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: OBASANJO, OLUDARE V., PARK, SEUNG-HAE, RUSSELL, JARED A., WALTERS, BENJAMIN C.
Priority to EP11784006.6A priority patent/EP2572330A4/en
Priority to PCT/US2011/036547 priority patent/WO2011146347A2/en
Priority to CN201180024386.4A priority patent/CN102884529B/en
Publication of US20110283185A1 publication Critical patent/US20110283185A1/en
Priority to HK13108199.7A priority patent/HK1181139A1/en
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC reassignment MICROSOFT TECHNOLOGY LICENSING, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MICROSOFT CORPORATION
Publication of US9405845B2 publication Critical patent/US9405845B2/en
Application granted granted Critical
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/48Retrieval 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
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • 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/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Definitions

  • Many social networking sites such as FACEBOOK and TWITTER enable users to receive updates on many different types of devices, including via native applications running on mobile phones and Web site applications displayed at a desktop computer or on a television device that is connected to a gaming system.
  • the users can receive social network updates as social activity feeds from multiple devices with varied form factors.
  • Developers that write applications to publish updates to the many different social networking sites do not typically include enough metadata to ensure that published content and updates will display optimally on the many different types of devices.
  • an application that publishes a shared link may include a thumbnail of the Web site which may display well at a desktop computer, but may not display well when viewed on a big-screen television.
  • a user can upload and share a video, but may not be able to indicate or provide alternate video streams for devices that are unable to playback the original format of the video.
  • Flash videos shared on a social networking site may not be viewable in a device application for the social network, such as on a mobile phone that does not support the Flash format.
  • shared content is received as a social network action initiated at a user device by a social network user.
  • the shared content can include a status update from the social network user, uploaded photos, a shared URL link, or other shared content.
  • An activity is generated based on the social network action to collect metadata associated with the shared content.
  • the shared content and the metadata is then mapped to layout templates that are each generated for different display layout formats associated with different types of client devices. Additionally, the shared content and the metadata is mapped to additional layout templates that are each generated for different social network form factors.
  • a request for the shared content is received to display the shared content at a client device in a social network application, where the request includes a designated social network form factor.
  • a layout template is determined that corresponds to the shared content and the designated social network form factor.
  • the shared content is then communicated to the client device in the layout template for display in the designated social network form factor.
  • a request for the shared content is received to display the shared content at a client device, where the request includes a designated display layout format for the client device.
  • a layout template is determined that corresponds to the shared content and the designated display layout format for the client device.
  • the shared content is then communicated to the client device in the layout template for display in the designated display layout format.
  • FIG. 1 illustrates an example system in which embodiments of adaptable layouts for social feeds can be implemented.
  • FIG. 2 illustrates an example template in accordance with one or more embodiments.
  • FIG. 3 illustrates an example system with multiple devices that can implement various embodiments of adaptable layouts for social feeds for a seamless user experience in ubiquitous environments.
  • FIG. 4 illustrates example method(s) of adaptable layouts for social feeds in accordance with one or more embodiments.
  • FIG. 5 illustrates additional example method(s) of adaptable layouts for social feeds in accordance with one or more embodiments.
  • FIG. 6 illustrates additional example method(s) of adaptable layouts for social feeds in accordance with one or more embodiments.
  • FIG. 7 illustrates additional example method(s) of adaptable layouts for social feeds in accordance with one or more embodiments.
  • FIG. 8 illustrates various components of an example device that can implement embodiments of adaptable layouts for social feeds.
  • a social network service can receive shared content from a social network user, such as a status update, uploaded photos, a shared URL link, or other shared content.
  • the shared content, and metadata associated with the shared content can then be mapped to layout templates.
  • the layout templates can each be generated for different display layout formats associated with different types of client devices. Additionally, the layout templates can each be generated for different social network form factors, such as when a social networking site is displayed at a client device.
  • a presentation layout template is determined that corresponds to the shared content and a social network form factor and/or a display layout format for the client device.
  • the shared content can then be communicated or delivered to the requesting client device in the presentation layout template that provides an optimal display of the shared content for the social network user at the client device.
  • social network updates are defined using a template format.
  • the template format provides a mechanism to define how an update is presented on different form factors and devices, as well as a generic fallback rendering option.
  • Applications that display the social network updates can utilize and extract information specific to rendering an update in a way that matches the capabilities of the form factor or particular device when rendering the update.
  • Presentation layout templates can be selected to optimally display a social network update in various form factors and/or for various client devices.
  • FIG. 1 illustrates an example system 100 in which various embodiments of adaptable layouts for social feeds can be implemented.
  • the example system 100 includes a client device 102 , which may be configured as any type of client device 104 .
  • Some of the various client devices 104 include wired and/or wireless devices, and may also be referred to as user devices and/or portable devices.
  • the example system 100 also includes a social network service 106 that receives shared content 108 as a social network action initiated at a user device by a social network user.
  • a social network user may share content such as a status update from the social network user, uploaded photos, a shared URL link, or any other type of shared content.
  • the shared content 108 can include any type of audio, video, and/or image data received from any client or media content source.
  • the social network service 106 supports social networking by maintaining social network users data 110 that corresponds to social network users of the various client devices, and can communicate the shared content 108 to a client device 104 via a communication network 112 .
  • the communication network 112 can be implemented to include a broadcast network, an IP-based network 114 , and/or a wireless network 116 that facilitates shared content distribution and communication between the social network service 106 and any number of the various client devices.
  • the communication network 112 can also be implemented using any type of network topology and/or communication protocol, and can be represented or otherwise implemented as a combination of two or more networks.
  • the communication network 112 may also include a mobile operator network that is managed by a communication service provider, such as a cell-phone provider and/or Internet service provider, to facilitate mobile data and/or voice communications for any type of a wireless device or mobile phone (e.g., cellular, VoIP, Wi-Fi, etc.).
  • the social network service 106 may be implemented as any type of social network site that supports social networking for the social network users based on any type of social groups, such as co-workers, friends, family, a group based on common interests, a group of unknown contacts that are linked based on some commonality, and so on.
  • a social network user can utilize the social network service 106 as a basis to permit sharing of media content, photos, blogs, status updates, and the like.
  • the social network service 106 may use a permissioning technique, such as a selected or allowed relationship, to permit or restrict access to content associated with a user account of the social network service.
  • a user of the client device 102 may have an associated user account with the social network service 106 , and via the client device 102 , the user can select contacts and allow social networking with other users, as well as upload shared content.
  • the social network service 106 can include server devices to communicate, or otherwise distribute, shared content and/or associated content metadata 118 to any number of the various client devices.
  • the social network service 106 includes storage media 120 to store or otherwise maintain various content and data, such as the shared content 108 and the content metadata 118 .
  • the content metadata 118 can include any type of identifying criteria, descriptive information, and/or attributes associated with the shared content 108 .
  • the storage media 120 can be implemented as any type of memory and/or suitable electronic data storage.
  • the social network service 106 may be implemented as a subscription-based service from which any of the various client devices 104 can request the shared content 108 to download and/or display for viewing, or otherwise render for playback.
  • the social network service 106 manages the shared content distribution to the various client devices 104 , such as when a request for shared content is received from a client device 104 , and the social network service 106 communicates or provides data segments of the shared content to the client device.
  • the social network service 106 includes an adaptable layout service 122 that can be implemented as computer-executable instructions and executed by one or more processors to implement the various embodiments described herein for adaptable layouts for social feeds.
  • the social network service 106 can also be implemented with any number and combination of differing components as further described with reference to the example device shown in FIG. 8 .
  • the adaptable layout service 122 may be implemented as an independent service separate from the social network service (e.g., on a separate server or by a third party service).
  • the adaptable layout service 122 is implemented to generate an activity to collect metadata associated with shared content based on a social network action, such as when a social network user uploads shared content.
  • Social network updates include properties that describe how an update (e.g., shared content 108 ) can be rendered in various form factors.
  • This information e.g., content metadata 118 ) is associated with each type of update.
  • an update to share a set of photos when uploaded may include information describing that the photos can be displayed for viewing as a filmstrip of small thumbnail images on a social feed for a social networking Web page. The information may also describe that the photos be displayed for viewing as a slideshow with full resolution images on a desktop version of the same social feed.
  • the adaptable layout service 122 can correlate the information needed to render the update in different form factors, as well as behaviors if included with the update.
  • the information may include the thumbnail images for rendering on the Web page, as well as the full resolution images for rendering at the desktop computer.
  • the notion of an upload activity 124 summarizes an action, such as when shared photos are uploaded, and for any given upload activity 124 , there are corresponding layout properties.
  • the adaptable layout service 122 is implemented to map the shared content 108 and the content metadata 118 to layout templates 126 that can each be generated for different display layout formats 128 and/or for different social network form factors 130 .
  • Each of the layout templates 126 include layout properties that correlate to template data for an upload activity 124 that is generated based on a social network action.
  • the different display layout formats 128 are associated with different types of client devices 104
  • the different social network form factors 130 are associated with different types of social network Web sites.
  • An example layout template is shown in FIG. 2 .
  • an upload activity may be generated to obtain the URL from the link, get a thumbnail image for the link, generate a large image for display on larger displays, and include the name of the social network user that is sharing the link in the template data.
  • the social network service 106 can receive a request for the shared content 108 to display at a client device 104 in a social network application, and the request from the client device includes a designated social network form factor.
  • the adaptable layout service 122 is implemented to determine a layout template 126 that corresponds to the shared content and the designated social network form factor 130 .
  • the shared content is then communicated to the requesting client device in the layout template for display in the designated social network form factor.
  • the social network service 106 can receive a request for the shared content 108 to display at a client device 104 , and the request from the client device includes a designated display layout format for the client device.
  • the adaptable layout service 122 is further implemented to determine a layout template 126 that corresponds to the shared content and the designated display layout format 128 for the client device.
  • the shared content is then communicated to the requesting client device in the layout template for display in the designated display layout format.
  • a client device 104 can be implemented as any one or combination of a television client device 132 (e.g., a television set-top box, a digital video recorder (DVR), etc.), a computer device 134 , a gaming system 136 , an appliance device, an electronic device, and/or as any other type of client device or user device that may be implemented to receive media content in any form of audio, video, and/or image data.
  • a television client device 132 e.g., a television set-top box, a digital video recorder (DVR), etc.
  • DVR digital video recorder
  • the various client devices 104 can also include wireless devices implemented to receive and/or communicate wireless data, such as any one or combination of a mobile phone 138 (e.g., cellular, VoIP, WiFi, etc.), a portable computer device 140 , a media device 142 (e.g., a personal media player, portable media player, etc.), and/or any other wireless device that can receive media content in any form of audio, video, and/or image data.
  • a client system can include a respective client device and display device 144 that together render or playback any form of audio, video, and/or image media content and media assets.
  • the display device 144 can be implemented as any type of a television, high definition television (HDTV), LCD, or similar display system.
  • any of the various client devices 104 can be configured as the client device 102 and implemented with one or more processors, communication components, memory components, signal processing and control circuits, and a media content rendering system. Further, any of the client devices 104 can be implemented with any number and combination of differing components as further described with reference to the example device shown in FIG. 8 .
  • the example client device 102 can include any number of social network applications 146 that correlate to the social network service 106 and/or other social networking sites.
  • a social network application 146 interfaces the client device 102 to receive shared content 148 from the social network service 106 .
  • the shared content 148 is received at the client device 102 in a display layout format 150 for optimal display of the shared content (e.g., on display device 144 in a client system).
  • FIG. 2 illustrates an example template 200 in accordance with the various embodiments of adaptable layouts for social feeds as described herein.
  • the template 200 is an example of the layout templates 126 described with reference to FIG. 1 . Although only one template is shown and described, many templates may be generated that are similar for different activities.
  • a template model may be generic, but include different types of data depending on a social network update action (e.g., to upload photos, share a URL link, update a social network user status, etc.).
  • FIG. 3 illustrates an example system 300 that includes the client device 102 as described with reference to FIG. 1 .
  • the example system 300 enables ubiquitous environments for a seamless user experience when running applications on a personal computer (PC), a television device, and/or a mobile device. Services and applications run substantially similar in all three environments for a common user experience when transitioning from one device to the next while utilizing an application, playing a video game, watching a video, and so on.
  • PC personal computer
  • FIG. 3 illustrates an example system 300 that includes the client device 102 as described with reference to FIG. 1 .
  • the example system 300 enables ubiquitous environments for a seamless user experience when running applications on a personal computer (PC), a television device, and/or a mobile device. Services and applications run substantially similar in all three environments for a common user experience when transitioning from one device to the next while utilizing an application, playing a video game, watching a video, and so on.
  • multiple devices are interconnected through a central computing device.
  • the central computing device may be local to the multiple devices or may be located remotely from the multiple devices.
  • the central computing device may be a cloud of one or more server computers that are connected to the multiple devices through a network, the Internet, or other data communication link.
  • this interconnection architecture enables functionality to be delivered across multiple devices to provide a common and seamless experience to a user of the multiple devices.
  • Each of the multiple devices may have different physical requirements and capabilities, and the central computing device uses a platform to enable the delivery of an experience to the device that is both tailored to the device and yet common to all devices.
  • a class of target devices is created and experiences are tailored to the generic class of devices.
  • a class of devices may be defined by physical features, types of usage, or other common characteristics of the devices.
  • the client device 102 may assume a variety of different configurations, such as for computer 302 , mobile 304 , and television 306 uses. Each of these configurations includes devices that may have generally different constructs and capabilities, and thus the client device 102 may be configured according to one or more of the different device classes. For instance, the client device 102 may be implemented as the computer 302 class of a device that includes a personal computer, desktop computer, a multi-screen computer, laptop computer, netbook, and so on.
  • the client device 102 may also be implemented as the mobile 304 class of device that includes mobile devices, such as a mobile phone, portable music player, portable gaming device, a tablet computer, a multi-screen computer, and so on.
  • the client device 102 may also be implemented as the television 306 class of device that includes devices having or connected to generally larger screens in casual viewing environments. These devices include televisions, set-top boxes, gaming consoles, and so on.
  • the techniques described herein may be supported by these various configurations of the client device 102 and are not limited to the specific examples of adaptable layouts for social feeds.
  • the cloud 308 includes and/or is representative of a platform 310 for social network services 312 .
  • the platform 310 abstracts underlying functionality of hardware (e.g., servers) and software resources of the cloud 308 .
  • the social network services 312 may include applications and/or data that can be utilized while computer processing is executed on servers that are remote from the client device 102 .
  • the social network services 312 may include the social network service 106 and/or the adaptable layout service 122 as described with reference to FIG. 1 .
  • the social network services 312 can be provided as a service over the Internet and/or through a subscriber network, such as a cellular or WiFi network.
  • the platform 310 may abstract resources and functions to connect the client device 102 with other computing devices.
  • the platform 310 may also serve to abstract scaling of resources to provide a corresponding level of scale to encountered demand for the social network services 312 that are implemented via the platform 310 .
  • implementation of functionality of the social network application 146 may be distributed throughout the system 300 .
  • the social network application 146 may be implemented in part on the client device 102 as well as via the platform 310 that abstracts the functionality of the cloud 308 .
  • Example methods 400 , 500 , 600 , and 700 are described with reference to respective FIGS. 4 , 5 , 6 , and 7 in accordance with one or more embodiments of adaptable layouts for social feeds.
  • any of the functions, methods, procedures, components, and modules described herein can be implemented using software, firmware, hardware (e.g., fixed logic circuitry), manual processing, or any combination thereof
  • a software implementation represents program code that performs specified tasks when executed by a computer processor.
  • the example methods may be described in the general context of computer-executable instructions, which can include software, applications, routines, programs, objects, components, data structures, procedures, modules, functions, and the like.
  • the program code can be stored in one or more computer-readable memory devices, both local and/or remote to a computer processor.
  • the methods may also be practiced in a distributed computing environment by multiple computer devices. Further, the features described herein are platform-independent and can be implemented on a variety of computing platforms having a variety of processors.
  • FIG. 4 illustrates example method(s) 400 of adaptable layouts for social feeds, and is described with reference to a social network service that implements an adaptable layout service.
  • the order in which the method blocks are described are not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement a method, or an alternate method.
  • shared content is received as a social network action initiated at a user device by a social network user.
  • the social network service 106 receives shared content 108 as a social network action initiated at a user device (e.g., client device 102 ) by a social network user.
  • a social network user may share content such as a status update, uploaded photos, a shared URL link, or any other type of shared content.
  • an activity is generated based on the social network action to collect metadata associated with the shared content.
  • the adaptable layout service 122 generates an activity to collect metadata associated with shared content based on a social network action.
  • Social network updates include properties that describe how an update (e.g., shared content 108 ) can be rendered in various form factors, and this information (e.g., content metadata 118 ) is associated with each type of update.
  • the shared content and the metadata is mapped to layout templates that are each generated for different display layout formats associated with different types of client devices.
  • the shared content and the metadata is mapped to additional layout templates that are each generated for different social network form factors.
  • the adaptable layout service 122 maps the shared content 108 and the content metadata 118 to layout templates 126 that are generated for different display layout formats 128 and/or for different social network form factors 130 .
  • the different display layout formats 128 are associated with different types of client devices 104
  • the different social network form factors 130 are associated with different types of social network Web sites.
  • a mapping can be applied by the adaptable layout service 122 if the upload is going to be re-published to a text-based social networking site like TWITTER or will be displayed on an application, such as a TWITTER client.
  • the mapping can be applied to convert from image references (i.e., references to the images) to URL references (i.e., references to URLs) that are selectable to direct a user to where the images are located online, such as the shared content 108 at the social network service.
  • FIG. 5 illustrates example method(s) 500 of adaptable layouts for social feeds.
  • the order in which the method blocks are described are not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement a method, or an alternate method.
  • a request is received for shared content to display at a client device in a social network application, where the request includes a designated social network form factor.
  • the social network service 106 receives a request for the shared content 108 to display at the client device 102 in a social network application 146 , and the request from the client device includes a designated social network form factor 130 .
  • a layout template is determined that corresponds to the shared content and the designated social network form factor.
  • the adaptable layout service 122 determines a layout template 126 that corresponds to the shared content and the designated social network form factor 130 .
  • the shared content is communicated to the client device in the layout template for display in the designated social network form factor.
  • the social network service 106 communicates the shared content to the requesting client device in the layout template for display in the designated social network form factor.
  • FIG. 6 illustrates example method(s) 600 of adaptable layouts for social feeds.
  • the order in which the method blocks are described are not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement a method, or an alternate method.
  • a request is received from a client device for shared content to display at the client device, where the request includes a designated display layout format for the client device.
  • the social network service 106 receives a request for the shared content 108 to display at the client device 102 , and the request from the client device includes a designated display layout format 128 for the client device.
  • a layout template is determined that corresponds to the shared content and the designated display layout format for the client device.
  • the adaptable layout service 122 determines a layout template 126 that corresponds to the shared content and the designated display layout format 128 for the client device.
  • the shared content is communicated to the client device in the layout template for display in the designated display layout format.
  • the social network service 106 communicates the shared content to the requesting client device in the layout template for display in the designated display layout format.
  • an additional request is received from an additional client device for the shared content to display at the additional client device, where the additional request includes a different display layout format for the additional client device.
  • the social network service 106 receives an additional request for the shared content 108 to display at an additional client device 104 , and the additional request from the client device includes a different display layout format 128 .
  • a different layout template is determined that corresponds to the shared content and the different display layout format for the additional client device.
  • the adaptable layout service 122 determines a different layout template 126 that corresponds to the shared content and the different display layout format 128 for the additional client device.
  • the shared content is communicated to the additional client device in the different layout template for display in the different display layout format for the additional client device.
  • the social network service 106 communicates the shared content to the requesting client device in the different layout template for display in the different display layout format.
  • the method can then repeat at blocks 608 - 612 to receive requests for the shared content from various client devices, determine different layout templates for respective different type client devices, and communicate the shared content to the requesting client devices for display in the different display layout formats.
  • FIG. 7 illustrates example method(s) 700 of adaptable layouts for social feeds.
  • the order in which the method blocks are described are not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement a method, or an alternate method.
  • a request is received from a client device for shared content to display at the client device.
  • the social network service 106 receives a request from the client device 102 for the shared content 108 to display at the client device.
  • the adaptable layout service 122 determines that the shared content does not have form factor specific features (i.e., “no” from block 704 ), then at block 710 , a determination is made as to whether there is a fallback rendering option for the requesting client device. If the adaptable layout service 122 determines that there is a fallback rendering option (i.e., “yes” from block 710 ), then at block 712 , a less optimal presentation for the form factor is selected and the presentation is communicated to client device to display the shared content at block 708 . For example, the adaptable layout service 122 selects a less optimal presentation that is formatted for the form factor and communicates the less optimal presentation to the requesting client device to display the shared content. If the adaptable layout service 122 determines that there is not a fallback rendering option for the requesting client device (i.e., “no” from block 710 ), then at block 714 , the shared content is not available to the requesting client device.
  • a fallback rendering option i
  • FIG. 8 illustrates various components of an example device 800 that can be implemented as any type of client and/or computing device as described with reference to the previous FIGS. 1-7 to implement embodiments of adaptable layouts for social feeds.
  • device 800 can be implemented as any one or combination of a wired and/or wireless device, as any form of television client device (e.g., television set-top box, digital video recorder (DVR), etc.), consumer device, computer device, server device, portable computer device, user device, communication device, video processing and/or rendering device, appliance device, gaming device, electronic device, and/or as any other type of device.
  • Device 800 may also be associated with a user (i.e., a person) and/or an entity that operates the device such that a device describes logical devices that include users, software, firmware, and/or a combination of devices.
  • Device 800 includes communication devices 802 that enable wired and/or wireless communication of device data 804 (e.g., received data, data that is being received, data scheduled for broadcast, data packets of the data, etc.).
  • the device data 804 or other device content can include configuration settings of the device, media content stored on the device, and/or information associated with a user of the device.
  • Media content stored on device 800 can include any type of audio, video, and/or image data.
  • Device 800 includes one or more data inputs 806 via which any type of data, media content, and/or inputs can be received, such as user-selectable inputs, messages, music, television media content, recorded video content, and any other type of audio, video, and/or image data received from any content and/or data source.
  • Device 800 also includes communication interfaces 808 that can be implemented as any one or more of a serial and/or parallel interface, a wireless interface, any type of network interface, a modem, and as any other type of communication interface.
  • the communication interfaces 808 provide a connection and/or communication links between device 800 and a communication network by which other electronic, computing, and communication devices communicate data with device 800 .
  • Device 800 includes one or more processors 810 (e.g., any of microprocessors, controllers, and the like) which process various computer-executable instructions to control the operation of device 800 and to implement embodiments of adaptable layouts for social feeds.
  • processors 810 e.g., any of microprocessors, controllers, and the like
  • device 800 can be implemented with any one or combination of hardware, firmware, or fixed logic circuitry that is implemented in connection with processing and control circuits which are generally identified at 812 .
  • device 800 can include a system bus or data transfer system that couples the various components within the device.
  • a system bus can include any one or combination of different bus structures, such as a memory bus or memory controller, a peripheral bus, a universal serial bus, and/or a processor or local bus that utilizes any of a variety of bus architectures.
  • Device 800 also includes computer-readable storage media 814 , such as one or more memory devices that enable persistent and/or non-transitory data storage (i.e., in contrast to mere signal transmission), examples of which include random access memory (RAM), non-volatile memory (e.g., any one or more of a read-only memory (ROM), flash memory, EPROM, EEPROM, etc.), and a disk storage device.
  • RAM random access memory
  • non-volatile memory e.g., any one or more of a read-only memory (ROM), flash memory, EPROM, EEPROM, etc.
  • a disk storage device may be implemented as any type of magnetic or optical storage device, such as a hard disk drive, a recordable and/or rewriteable compact disc (CD), any type of a digital versatile disc (DVD), and the like.
  • Device 800 can also include a mass storage media device 816 .
  • Computer-readable storage media 814 provides data storage mechanisms to store the device data 804 , as well as various device applications 818 and any other types of information and/or data related to operational aspects of device 800 .
  • an operating system 820 can be maintained as a computer application with the computer-readable storage media 814 and executed on processors 810 .
  • the device applications 818 may include a device manager, such as any form of a control application, software application, signal processing and control module, code that is native to a particular device, a hardware abstraction layer for a particular device, and so on.
  • the device applications 818 also include any system components or modules to implement embodiments of adaptable layouts for social feeds.
  • the device applications 818 include a social network application 822 , such as when device 800 is implemented as a client device.
  • the device applications 818 include an adaptable layout service 824 , such as when device 800 is implemented as a social network service.
  • the social network application 822 and the adaptable layout service 824 are shown as software modules and/or computer applications.
  • the social network application 822 and/or the adaptable layout service 824 can be implemented as hardware, software, firmware, or any combination thereof.
  • Device 800 also includes an audio and/or video rendering system 826 that generates and provides audio data to an audio system 828 and/or generates and provides display data to a display system 830 .
  • the audio system 828 and/or the display system 830 can include any devices that process, display, and/or otherwise render audio, display, and image data. Display data and audio signals can be communicated from device 800 to an audio device and/or to a display device via an RF (radio frequency) link, S-video link, composite video link, component video link, DVI (digital video interface), analog audio connection, or other similar communication link.
  • the audio system 828 and/or the display system 830 are implemented as external components to device 800 .
  • the audio system 828 and/or the display system 830 are implemented as integrated components of example device 800 .

Abstract

Adaptable layouts for social feeds are described. In embodiments, shared content is received as a social network action initiated at a user device by a social network user. An activity is generated based on the social network action to collect metadata associated with the shared content. The shared content and the metadata is then mapped to layout templates that are each generated for different display layout formats associated with different types of client devices. Additionally, the shared content and the metadata is mapped to additional layout templates that are each generated for different social network form factors.

Description

    RELATED APPLICATION
  • This application claims priority to U.S. Provisional Application Ser. No. 61/345,550 filed May 17, 2010, entitled “Adaptable Layouts for Social Feeds” to Obasanjo et al., the disclosure of which is incorporated by reference herein in its entirety.
  • BACKGROUND
  • Many social networking sites, such as FACEBOOK and TWITTER enable users to receive updates on many different types of devices, including via native applications running on mobile phones and Web site applications displayed at a desktop computer or on a television device that is connected to a gaming system. The users can receive social network updates as social activity feeds from multiple devices with varied form factors. Developers that write applications to publish updates to the many different social networking sites do not typically include enough metadata to ensure that published content and updates will display optimally on the many different types of devices. For example, an application that publishes a shared link may include a thumbnail of the Web site which may display well at a desktop computer, but may not display well when viewed on a big-screen television. Further, a user can upload and share a video, but may not be able to indicate or provide alternate video streams for devices that are unable to playback the original format of the video. For example, Flash videos shared on a social networking site may not be viewable in a device application for the social network, such as on a mobile phone that does not support the Flash format.
  • SUMMARY
  • This summary is provided to introduce simplified concepts of adaptable layouts for social feeds that are further described below in the Detailed Description. This summary is not intended to identify essential features of the claimed subject matter, nor is it intended for use in determining the scope of the claimed subject matter.
  • Adaptable layouts for social feeds are described. In embodiments, shared content is received as a social network action initiated at a user device by a social network user. The shared content can include a status update from the social network user, uploaded photos, a shared URL link, or other shared content. An activity is generated based on the social network action to collect metadata associated with the shared content. The shared content and the metadata is then mapped to layout templates that are each generated for different display layout formats associated with different types of client devices. Additionally, the shared content and the metadata is mapped to additional layout templates that are each generated for different social network form factors.
  • In other embodiments, a request for the shared content is received to display the shared content at a client device in a social network application, where the request includes a designated social network form factor. A layout template is determined that corresponds to the shared content and the designated social network form factor. The shared content is then communicated to the client device in the layout template for display in the designated social network form factor. In another embodiment, a request for the shared content is received to display the shared content at a client device, where the request includes a designated display layout format for the client device. A layout template is determined that corresponds to the shared content and the designated display layout format for the client device. The shared content is then communicated to the client device in the layout template for display in the designated display layout format.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Embodiments of adaptable layouts for social feeds are described with reference to the following drawings. The same numbers are used throughout the drawings to reference like features and components:
  • FIG. 1 illustrates an example system in which embodiments of adaptable layouts for social feeds can be implemented.
  • FIG. 2 illustrates an example template in accordance with one or more embodiments.
  • FIG. 3 illustrates an example system with multiple devices that can implement various embodiments of adaptable layouts for social feeds for a seamless user experience in ubiquitous environments.
  • FIG. 4 illustrates example method(s) of adaptable layouts for social feeds in accordance with one or more embodiments.
  • FIG. 5 illustrates additional example method(s) of adaptable layouts for social feeds in accordance with one or more embodiments.
  • FIG. 6 illustrates additional example method(s) of adaptable layouts for social feeds in accordance with one or more embodiments.
  • FIG. 7 illustrates additional example method(s) of adaptable layouts for social feeds in accordance with one or more embodiments.
  • FIG. 8 illustrates various components of an example device that can implement embodiments of adaptable layouts for social feeds.
  • DETAILED DESCRIPTION
  • Adaptable layouts for social feeds are described. In embodiments, a social network service can receive shared content from a social network user, such as a status update, uploaded photos, a shared URL link, or other shared content. The shared content, and metadata associated with the shared content, can then be mapped to layout templates. The layout templates can each be generated for different display layout formats associated with different types of client devices. Additionally, the layout templates can each be generated for different social network form factors, such as when a social networking site is displayed at a client device. When a social network user requests to view the shared content, such as via a client device of the user, a presentation layout template is determined that corresponds to the shared content and a social network form factor and/or a display layout format for the client device. The shared content can then be communicated or delivered to the requesting client device in the presentation layout template that provides an optimal display of the shared content for the social network user at the client device.
  • In embodiments of adaptable layouts for social feeds, social network updates are defined using a template format. The template format provides a mechanism to define how an update is presented on different form factors and devices, as well as a generic fallback rendering option. Applications that display the social network updates can utilize and extract information specific to rendering an update in a way that matches the capabilities of the form factor or particular device when rendering the update. Presentation layout templates can be selected to optimally display a social network update in various form factors and/or for various client devices.
  • While features and concepts of the described systems and methods for adaptable layouts for social feeds can be implemented in any number of different environments, systems, and/or various configurations, embodiments of adaptable layouts for social feeds are described in the context of the following example systems and environments.
  • FIG. 1 illustrates an example system 100 in which various embodiments of adaptable layouts for social feeds can be implemented. The example system 100 includes a client device 102, which may be configured as any type of client device 104. Some of the various client devices 104 include wired and/or wireless devices, and may also be referred to as user devices and/or portable devices. The example system 100 also includes a social network service 106 that receives shared content 108 as a social network action initiated at a user device by a social network user. For example, a social network user may share content such as a status update from the social network user, uploaded photos, a shared URL link, or any other type of shared content. The shared content 108 can include any type of audio, video, and/or image data received from any client or media content source. The social network service 106 supports social networking by maintaining social network users data 110 that corresponds to social network users of the various client devices, and can communicate the shared content 108 to a client device 104 via a communication network 112.
  • The communication network 112 can be implemented to include a broadcast network, an IP-based network 114, and/or a wireless network 116 that facilitates shared content distribution and communication between the social network service 106 and any number of the various client devices. The communication network 112 can also be implemented using any type of network topology and/or communication protocol, and can be represented or otherwise implemented as a combination of two or more networks. The communication network 112 may also include a mobile operator network that is managed by a communication service provider, such as a cell-phone provider and/or Internet service provider, to facilitate mobile data and/or voice communications for any type of a wireless device or mobile phone (e.g., cellular, VoIP, Wi-Fi, etc.).
  • The social network service 106 may be implemented as any type of social network site that supports social networking for the social network users based on any type of social groups, such as co-workers, friends, family, a group based on common interests, a group of unknown contacts that are linked based on some commonality, and so on. A social network user can utilize the social network service 106 as a basis to permit sharing of media content, photos, blogs, status updates, and the like. The social network service 106 may use a permissioning technique, such as a selected or allowed relationship, to permit or restrict access to content associated with a user account of the social network service. For example, a user of the client device 102 may have an associated user account with the social network service 106, and via the client device 102, the user can select contacts and allow social networking with other users, as well as upload shared content.
  • The social network service 106 can include server devices to communicate, or otherwise distribute, shared content and/or associated content metadata 118 to any number of the various client devices. In this example system 100, the social network service 106 includes storage media 120 to store or otherwise maintain various content and data, such as the shared content 108 and the content metadata 118. The content metadata 118 can include any type of identifying criteria, descriptive information, and/or attributes associated with the shared content 108. The storage media 120 can be implemented as any type of memory and/or suitable electronic data storage. Additionally, the social network service 106 may be implemented as a subscription-based service from which any of the various client devices 104 can request the shared content 108 to download and/or display for viewing, or otherwise render for playback. The social network service 106 manages the shared content distribution to the various client devices 104, such as when a request for shared content is received from a client device 104, and the social network service 106 communicates or provides data segments of the shared content to the client device.
  • In this example system 100, the social network service 106 includes an adaptable layout service 122 that can be implemented as computer-executable instructions and executed by one or more processors to implement the various embodiments described herein for adaptable layouts for social feeds. The social network service 106 can also be implemented with any number and combination of differing components as further described with reference to the example device shown in FIG. 8. Additionally, the adaptable layout service 122 may be implemented as an independent service separate from the social network service (e.g., on a separate server or by a third party service).
  • In various embodiments, the adaptable layout service 122 is implemented to generate an activity to collect metadata associated with shared content based on a social network action, such as when a social network user uploads shared content. Social network updates include properties that describe how an update (e.g., shared content 108) can be rendered in various form factors. This information (e.g., content metadata 118) is associated with each type of update. For example, an update to share a set of photos when uploaded may include information describing that the photos can be displayed for viewing as a filmstrip of small thumbnail images on a social feed for a social networking Web page. The information may also describe that the photos be displayed for viewing as a slideshow with full resolution images on a desktop version of the same social feed.
  • When an application is publishing an update on behalf of a user to the social network service 106, the adaptable layout service 122 can correlate the information needed to render the update in different form factors, as well as behaviors if included with the update. In the example of the uploaded photos, the information may include the thumbnail images for rendering on the Web page, as well as the full resolution images for rendering at the desktop computer. The notion of an upload activity 124 summarizes an action, such as when shared photos are uploaded, and for any given upload activity 124, there are corresponding layout properties.
  • The adaptable layout service 122 is implemented to map the shared content 108 and the content metadata 118 to layout templates 126 that can each be generated for different display layout formats 128 and/or for different social network form factors 130. Each of the layout templates 126 include layout properties that correlate to template data for an upload activity 124 that is generated based on a social network action. The different display layout formats 128 are associated with different types of client devices 104, and the different social network form factors 130 are associated with different types of social network Web sites. An example layout template is shown in FIG. 2. For an action to share a URL link (e.g., shared content), an upload activity may be generated to obtain the URL from the link, get a thumbnail image for the link, generate a large image for display on larger displays, and include the name of the social network user that is sharing the link in the template data.
  • The social network service 106 can receive a request for the shared content 108 to display at a client device 104 in a social network application, and the request from the client device includes a designated social network form factor. The adaptable layout service 122 is implemented to determine a layout template 126 that corresponds to the shared content and the designated social network form factor 130. The shared content is then communicated to the requesting client device in the layout template for display in the designated social network form factor. Alternatively or in addition, the social network service 106 can receive a request for the shared content 108 to display at a client device 104, and the request from the client device includes a designated display layout format for the client device. The adaptable layout service 122 is further implemented to determine a layout template 126 that corresponds to the shared content and the designated display layout format 128 for the client device. The shared content is then communicated to the requesting client device in the layout template for display in the designated display layout format.
  • In this example system 100, a client device 104 can be implemented as any one or combination of a television client device 132 (e.g., a television set-top box, a digital video recorder (DVR), etc.), a computer device 134, a gaming system 136, an appliance device, an electronic device, and/or as any other type of client device or user device that may be implemented to receive media content in any form of audio, video, and/or image data. The various client devices 104 can also include wireless devices implemented to receive and/or communicate wireless data, such as any one or combination of a mobile phone 138 (e.g., cellular, VoIP, WiFi, etc.), a portable computer device 140, a media device 142 (e.g., a personal media player, portable media player, etc.), and/or any other wireless device that can receive media content in any form of audio, video, and/or image data. A client system can include a respective client device and display device 144 that together render or playback any form of audio, video, and/or image media content and media assets. The display device 144 can be implemented as any type of a television, high definition television (HDTV), LCD, or similar display system.
  • Any of the various client devices 104 can be configured as the client device 102 and implemented with one or more processors, communication components, memory components, signal processing and control circuits, and a media content rendering system. Further, any of the client devices 104 can be implemented with any number and combination of differing components as further described with reference to the example device shown in FIG. 8. The example client device 102 can include any number of social network applications 146 that correlate to the social network service 106 and/or other social networking sites. A social network application 146 interfaces the client device 102 to receive shared content 148 from the social network service 106. The shared content 148 is received at the client device 102 in a display layout format 150 for optimal display of the shared content (e.g., on display device 144 in a client system).
  • FIG. 2 illustrates an example template 200 in accordance with the various embodiments of adaptable layouts for social feeds as described herein. The template 200 is an example of the layout templates 126 described with reference to FIG. 1. Although only one template is shown and described, many templates may be generated that are similar for different activities. A template model may be generic, but include different types of data depending on a social network update action (e.g., to upload photos, share a URL link, update a social network user status, etc.).
  • FIG. 3 illustrates an example system 300 that includes the client device 102 as described with reference to FIG. 1. The example system 300 enables ubiquitous environments for a seamless user experience when running applications on a personal computer (PC), a television device, and/or a mobile device. Services and applications run substantially similar in all three environments for a common user experience when transitioning from one device to the next while utilizing an application, playing a video game, watching a video, and so on.
  • In the example system 300, multiple devices are interconnected through a central computing device. The central computing device may be local to the multiple devices or may be located remotely from the multiple devices. In one embodiment, the central computing device may be a cloud of one or more server computers that are connected to the multiple devices through a network, the Internet, or other data communication link. In one embodiment, this interconnection architecture enables functionality to be delivered across multiple devices to provide a common and seamless experience to a user of the multiple devices. Each of the multiple devices may have different physical requirements and capabilities, and the central computing device uses a platform to enable the delivery of an experience to the device that is both tailored to the device and yet common to all devices. In one embodiment, a class of target devices is created and experiences are tailored to the generic class of devices. A class of devices may be defined by physical features, types of usage, or other common characteristics of the devices.
  • In various implementations, the client device 102 may assume a variety of different configurations, such as for computer 302, mobile 304, and television 306 uses. Each of these configurations includes devices that may have generally different constructs and capabilities, and thus the client device 102 may be configured according to one or more of the different device classes. For instance, the client device 102 may be implemented as the computer 302 class of a device that includes a personal computer, desktop computer, a multi-screen computer, laptop computer, netbook, and so on.
  • The client device 102 may also be implemented as the mobile 304 class of device that includes mobile devices, such as a mobile phone, portable music player, portable gaming device, a tablet computer, a multi-screen computer, and so on. The client device 102 may also be implemented as the television 306 class of device that includes devices having or connected to generally larger screens in casual viewing environments. These devices include televisions, set-top boxes, gaming consoles, and so on. The techniques described herein may be supported by these various configurations of the client device 102 and are not limited to the specific examples of adaptable layouts for social feeds.
  • The cloud 308 includes and/or is representative of a platform 310 for social network services 312. The platform 310 abstracts underlying functionality of hardware (e.g., servers) and software resources of the cloud 308. The social network services 312 may include applications and/or data that can be utilized while computer processing is executed on servers that are remote from the client device 102. For example, the social network services 312 may include the social network service 106 and/or the adaptable layout service 122 as described with reference to FIG. 1. The social network services 312 can be provided as a service over the Internet and/or through a subscriber network, such as a cellular or WiFi network.
  • The platform 310 may abstract resources and functions to connect the client device 102 with other computing devices. The platform 310 may also serve to abstract scaling of resources to provide a corresponding level of scale to encountered demand for the social network services 312 that are implemented via the platform 310. Accordingly, in an interconnected device embodiment, implementation of functionality of the social network application 146 may be distributed throughout the system 300. For example, the social network application 146 may be implemented in part on the client device 102 as well as via the platform 310 that abstracts the functionality of the cloud 308.
  • Example methods 400, 500, 600, and 700 are described with reference to respective FIGS. 4, 5, 6, and 7 in accordance with one or more embodiments of adaptable layouts for social feeds. Generally, any of the functions, methods, procedures, components, and modules described herein can be implemented using software, firmware, hardware (e.g., fixed logic circuitry), manual processing, or any combination thereof A software implementation represents program code that performs specified tasks when executed by a computer processor. The example methods may be described in the general context of computer-executable instructions, which can include software, applications, routines, programs, objects, components, data structures, procedures, modules, functions, and the like. The program code can be stored in one or more computer-readable memory devices, both local and/or remote to a computer processor. The methods may also be practiced in a distributed computing environment by multiple computer devices. Further, the features described herein are platform-independent and can be implemented on a variety of computing platforms having a variety of processors.
  • FIG. 4 illustrates example method(s) 400 of adaptable layouts for social feeds, and is described with reference to a social network service that implements an adaptable layout service. The order in which the method blocks are described are not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement a method, or an alternate method.
  • At block 402, shared content is received as a social network action initiated at a user device by a social network user. For example, the social network service 106 receives shared content 108 as a social network action initiated at a user device (e.g., client device 102) by a social network user. For example, a social network user may share content such as a status update, uploaded photos, a shared URL link, or any other type of shared content.
  • At block 404, an activity is generated based on the social network action to collect metadata associated with the shared content. For example, the adaptable layout service 122 generates an activity to collect metadata associated with shared content based on a social network action. Social network updates include properties that describe how an update (e.g., shared content 108) can be rendered in various form factors, and this information (e.g., content metadata 118) is associated with each type of update. At block 406, the shared content and the metadata is mapped to layout templates that are each generated for different display layout formats associated with different types of client devices.
  • At block 408, the shared content and the metadata is mapped to additional layout templates that are each generated for different social network form factors. For example, the adaptable layout service 122 maps the shared content 108 and the content metadata 118 to layout templates 126 that are generated for different display layout formats 128 and/or for different social network form factors 130. The different display layout formats 128 are associated with different types of client devices 104, and the different social network form factors 130 are associated with different types of social network Web sites. For example, if a user uploads photos to the social network service 106, a mapping can be applied by the adaptable layout service 122 if the upload is going to be re-published to a text-based social networking site like TWITTER or will be displayed on an application, such as a TWITTER client. The mapping can be applied to convert from image references (i.e., references to the images) to URL references (i.e., references to URLs) that are selectable to direct a user to where the images are located online, such as the shared content 108 at the social network service.
  • FIG. 5 illustrates example method(s) 500 of adaptable layouts for social feeds. The order in which the method blocks are described are not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement a method, or an alternate method.
  • At block 502, a request is received for shared content to display at a client device in a social network application, where the request includes a designated social network form factor. For example, the social network service 106 receives a request for the shared content 108 to display at the client device 102 in a social network application 146, and the request from the client device includes a designated social network form factor 130.
  • At block 504, a layout template is determined that corresponds to the shared content and the designated social network form factor. For example, the adaptable layout service 122 determines a layout template 126 that corresponds to the shared content and the designated social network form factor 130. At block 506, the shared content is communicated to the client device in the layout template for display in the designated social network form factor. For example, the social network service 106 communicates the shared content to the requesting client device in the layout template for display in the designated social network form factor.
  • FIG. 6 illustrates example method(s) 600 of adaptable layouts for social feeds. The order in which the method blocks are described are not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement a method, or an alternate method.
  • At block 602, a request is received from a client device for shared content to display at the client device, where the request includes a designated display layout format for the client device. For example, the social network service 106 receives a request for the shared content 108 to display at the client device 102, and the request from the client device includes a designated display layout format 128 for the client device.
  • At block 604, a layout template is determined that corresponds to the shared content and the designated display layout format for the client device. For example, the adaptable layout service 122 determines a layout template 126 that corresponds to the shared content and the designated display layout format 128 for the client device. At block 606, the shared content is communicated to the client device in the layout template for display in the designated display layout format. For example, the social network service 106 communicates the shared content to the requesting client device in the layout template for display in the designated display layout format.
  • At block 608, an additional request is received from an additional client device for the shared content to display at the additional client device, where the additional request includes a different display layout format for the additional client device. For example, the social network service 106 receives an additional request for the shared content 108 to display at an additional client device 104, and the additional request from the client device includes a different display layout format 128.
  • At block 610, a different layout template is determined that corresponds to the shared content and the different display layout format for the additional client device. For example, the adaptable layout service 122 determines a different layout template 126 that corresponds to the shared content and the different display layout format 128 for the additional client device. At block 612, the shared content is communicated to the additional client device in the different layout template for display in the different display layout format for the additional client device. For example, the social network service 106 communicates the shared content to the requesting client device in the different layout template for display in the different display layout format.
  • The method can then repeat at blocks 608-612 to receive requests for the shared content from various client devices, determine different layout templates for respective different type client devices, and communicate the shared content to the requesting client devices for display in the different display layout formats.
  • FIG. 7 illustrates example method(s) 700 of adaptable layouts for social feeds. The order in which the method blocks are described are not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement a method, or an alternate method.
  • At block 702, a request is received from a client device for shared content to display at the client device. For example, the social network service 106 receives a request from the client device 102 for the shared content 108 to display at the client device.
  • At block 704, a determination is made as to whether the shared content has form factor specific features. If the adaptable layout service 122 determines that the shared content 108 does have form factor specific features (i.e., “yes” from block 704), then at block 706, a presentation that is formatted for the form factor is selected. At block 708, the presentation is communicated to client device to display the shared content. For example, the adaptable layout service 122 selects a presentation that is formatted for the form factor and communicates the presentation to the requesting client device to display the shared content.
  • If the adaptable layout service 122 determines that the shared content does not have form factor specific features (i.e., “no” from block 704), then at block 710, a determination is made as to whether there is a fallback rendering option for the requesting client device. If the adaptable layout service 122 determines that there is a fallback rendering option (i.e., “yes” from block 710), then at block 712, a less optimal presentation for the form factor is selected and the presentation is communicated to client device to display the shared content at block 708. For example, the adaptable layout service 122 selects a less optimal presentation that is formatted for the form factor and communicates the less optimal presentation to the requesting client device to display the shared content. If the adaptable layout service 122 determines that there is not a fallback rendering option for the requesting client device (i.e., “no” from block 710), then at block 714, the shared content is not available to the requesting client device.
  • FIG. 8 illustrates various components of an example device 800 that can be implemented as any type of client and/or computing device as described with reference to the previous FIGS. 1-7 to implement embodiments of adaptable layouts for social feeds. In embodiments, device 800 can be implemented as any one or combination of a wired and/or wireless device, as any form of television client device (e.g., television set-top box, digital video recorder (DVR), etc.), consumer device, computer device, server device, portable computer device, user device, communication device, video processing and/or rendering device, appliance device, gaming device, electronic device, and/or as any other type of device. Device 800 may also be associated with a user (i.e., a person) and/or an entity that operates the device such that a device describes logical devices that include users, software, firmware, and/or a combination of devices.
  • Device 800 includes communication devices 802 that enable wired and/or wireless communication of device data 804 (e.g., received data, data that is being received, data scheduled for broadcast, data packets of the data, etc.). The device data 804 or other device content can include configuration settings of the device, media content stored on the device, and/or information associated with a user of the device. Media content stored on device 800 can include any type of audio, video, and/or image data. Device 800 includes one or more data inputs 806 via which any type of data, media content, and/or inputs can be received, such as user-selectable inputs, messages, music, television media content, recorded video content, and any other type of audio, video, and/or image data received from any content and/or data source.
  • Device 800 also includes communication interfaces 808 that can be implemented as any one or more of a serial and/or parallel interface, a wireless interface, any type of network interface, a modem, and as any other type of communication interface. The communication interfaces 808 provide a connection and/or communication links between device 800 and a communication network by which other electronic, computing, and communication devices communicate data with device 800.
  • Device 800 includes one or more processors 810 (e.g., any of microprocessors, controllers, and the like) which process various computer-executable instructions to control the operation of device 800 and to implement embodiments of adaptable layouts for social feeds. Alternatively or in addition, device 800 can be implemented with any one or combination of hardware, firmware, or fixed logic circuitry that is implemented in connection with processing and control circuits which are generally identified at 812. Although not shown, device 800 can include a system bus or data transfer system that couples the various components within the device. A system bus can include any one or combination of different bus structures, such as a memory bus or memory controller, a peripheral bus, a universal serial bus, and/or a processor or local bus that utilizes any of a variety of bus architectures.
  • Device 800 also includes computer-readable storage media 814, such as one or more memory devices that enable persistent and/or non-transitory data storage (i.e., in contrast to mere signal transmission), examples of which include random access memory (RAM), non-volatile memory (e.g., any one or more of a read-only memory (ROM), flash memory, EPROM, EEPROM, etc.), and a disk storage device. A disk storage device may be implemented as any type of magnetic or optical storage device, such as a hard disk drive, a recordable and/or rewriteable compact disc (CD), any type of a digital versatile disc (DVD), and the like. Device 800 can also include a mass storage media device 816.
  • Computer-readable storage media 814 provides data storage mechanisms to store the device data 804, as well as various device applications 818 and any other types of information and/or data related to operational aspects of device 800. For example, an operating system 820 can be maintained as a computer application with the computer-readable storage media 814 and executed on processors 810. The device applications 818 may include a device manager, such as any form of a control application, software application, signal processing and control module, code that is native to a particular device, a hardware abstraction layer for a particular device, and so on.
  • The device applications 818 also include any system components or modules to implement embodiments of adaptable layouts for social feeds. In this example, the device applications 818 include a social network application 822, such as when device 800 is implemented as a client device. Alternatively or in addition, the device applications 818 include an adaptable layout service 824, such as when device 800 is implemented as a social network service. The social network application 822 and the adaptable layout service 824 are shown as software modules and/or computer applications. Alternatively or in addition, the social network application 822 and/or the adaptable layout service 824 can be implemented as hardware, software, firmware, or any combination thereof.
  • Device 800 also includes an audio and/or video rendering system 826 that generates and provides audio data to an audio system 828 and/or generates and provides display data to a display system 830. The audio system 828 and/or the display system 830 can include any devices that process, display, and/or otherwise render audio, display, and image data. Display data and audio signals can be communicated from device 800 to an audio device and/or to a display device via an RF (radio frequency) link, S-video link, composite video link, component video link, DVI (digital video interface), analog audio connection, or other similar communication link. In an embodiment, the audio system 828 and/or the display system 830 are implemented as external components to device 800. Alternatively, the audio system 828 and/or the display system 830 are implemented as integrated components of example device 800.
  • Although embodiments of adaptable layouts for social feeds have been described in language specific to features and/or methods, it is to be understood that the subject of the appended claims is not necessarily limited to the specific features or methods described. Rather, the specific features and methods are disclosed as example implementations of adaptable layouts for social feeds.

Claims (20)

1. A computer-implemented method, comprising:
receiving shared content as a social network action initiated at a user device by a social network user;
generating an activity based on the social network action to collect metadata associated with the shared content; and
mapping the shared content and the metadata to one or more layout templates that are each generated for different display layout formats associated with different types of client devices.
2. A computer-implemented method as recited in claim 1, wherein the shared content includes at least one of a status update from the social network user, uploaded photos, or a shared URL link.
3. A computer-implemented method as recited in claim 1, wherein each layout template includes one or more layout properties that correlate to template data for the activity that is generated based on the social network action.
4. A computer-implemented method as recited in claim 1, further comprising mapping the shared content and the metadata to one or more additional layout templates that are each generated for different social network form factors.
5. A computer-implemented method as recited in claim 4, further comprising:
receiving a request for the shared content to display at a client device in a social network application, the request including a designated social network form factor;
determining a layout template that corresponds to the shared content and the designated social network form factor; and
communicating the shared content to the client device in the layout template for display in the designated social network form factor.
6. A computer-implemented method as recited in claim 1, further comprising:
receiving a request from a client device for the shared content to display at the client device, the request including a designated display layout format for the client device;
determining a layout template that corresponds to the shared content and the designated display layout format for the client device; and
communicating the shared content to the client device in the layout template for display in the designated display layout format.
7. A computer-implemented method as recited in claim 6, further comprising:
receiving an additional request from an additional client device for the shared content to display at the additional client device, the additional request including a different display layout format for the additional client device;
determining a different layout template that corresponds to the shared content and the different display layout format for the additional client device; and
communicating the shared content to the additional client device in the different layout template for display in the different display layout format for the additional client device.
8. A system, comprising:
a social network service configured to receive shared content as a social network action initiated at a user device by a social network user;
at least a memory and a processor to implement an adaptable layout service configured to:
generate an activity based on the social network action to collect metadata associated with the shared content; and
map the shared content and the metadata to one or more layout templates that are each generated for at least one of different display layout formats or different social network form factors.
9. A system as recited in claim 8, wherein the different display layout formats are associated with different types of client devices.
10. A system as recited in claim 8, wherein the different social network form factors are associated with different types of social network Web sites.
11. A system as recited in claim 8, wherein the shared content includes at least one of a status update from the social network user, uploaded photos, or a shared URL link.
12. A system as recited in claim 8, wherein each layout template includes one or more layout properties that correlate to template data for the activity that is generated based on the social network action.
13. A system as recited in claim 8, wherein:
the social network service is further configured to receive a request for the shared content to display at a client device in a social network application, the request including a designated social network form factor;
the adaptable layout service is further configured to:
determine a layout template that corresponds to the shared content and the designated social network form factor; and
communicate the shared content to the client device in the layout template for display in the designated social network form factor.
14. A system as recited in claim 8, wherein:
the social network service is further configured to receive a request from a client device for the shared content to display at the client device, the request including a designated display layout format for the client device;
the adaptable layout service is further configured to:
determine a layout template that corresponds to the shared content and the designated display layout format for the client device; and
communicate the shared content to the client device in the layout template for display in the designated display layout format.
15. Computer-readable storage media devices comprising instructions that are executable and, responsive to executing the instructions, a computer device:
receives shared content as a social network action initiated at a user device by a social network user;
generates an activity based on the social network action to collect metadata associated with the shared content; and
maps the shared content and the metadata to one or more layout templates that are each generated for different display layout formats associated with different types of client devices.
16. Computer-readable storage media devices as recited in claim 15, further comprising additional instructions that are executable and, responsive to executing the additional instructions, the computer device maps the shared content and the metadata to one or more additional layout templates that are each generated for different social network form factors.
17. Computer-readable storage media devices as recited in claim 16, further comprising additional instructions that are executable and, responsive to executing the additional instructions, the computer device:
receives a request for the shared content to display at a client device in a social network application, the request including a designated social network form factor;
determines a layout template that corresponds to the shared content and the designated social network form factor; and
communicates the shared content to the client device in the layout template for display in the designated social network form factor.
18. Computer-readable storage media devices as recited in claim 15, further comprising additional instructions that are executable and, responsive to executing the additional instructions, the computer device:
receives a request from a client device for the shared content to display at the client device, the request including a designated display layout format for the client device;
determines a layout template that corresponds to the shared content and the designated display layout format for the client device; and
communicates the shared content to the client device in the layout template for display in the designated display layout format.
19. Computer-readable storage media devices as recited in claim 15, further comprising additional instructions that are executable and, responsive to executing the additional instructions, the computer device receives the shared content as at least one of a status update from the social network user, uploaded photos, or a shared URL link.
20. Computer-readable storage media devices as recited in claim 15, further comprising additional instructions that are executable and, responsive to executing the additional instructions, the computer device generates each of the one or more layout templates to include one or more layout properties that correlate to template data for the activity that is generated based on the social network action.
US12/814,709 2010-05-17 2010-06-14 Adaptable layouts for social feeds Active 2031-08-22 US9405845B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US12/814,709 US9405845B2 (en) 2010-05-17 2010-06-14 Adaptable layouts for social feeds
EP11784006.6A EP2572330A4 (en) 2010-05-17 2011-05-13 Adaptable layouts for social feeds
PCT/US2011/036547 WO2011146347A2 (en) 2010-05-17 2011-05-13 Adaptable layouts for social feeds
CN201180024386.4A CN102884529B (en) 2010-05-17 2011-05-13 For social activity summary can adaptive layout
HK13108199.7A HK1181139A1 (en) 2010-05-17 2013-07-12 Adaptable layouts for social feeds

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US34555010P 2010-05-17 2010-05-17
US12/814,709 US9405845B2 (en) 2010-05-17 2010-06-14 Adaptable layouts for social feeds

Publications (2)

Publication Number Publication Date
US20110283185A1 true US20110283185A1 (en) 2011-11-17
US9405845B2 US9405845B2 (en) 2016-08-02

Family

ID=44912814

Family Applications (1)

Application Number Title Priority Date Filing Date
US12/814,709 Active 2031-08-22 US9405845B2 (en) 2010-05-17 2010-06-14 Adaptable layouts for social feeds

Country Status (5)

Country Link
US (1) US9405845B2 (en)
EP (1) EP2572330A4 (en)
CN (1) CN102884529B (en)
HK (1) HK1181139A1 (en)
WO (1) WO2011146347A2 (en)

Cited By (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110047248A1 (en) * 2009-08-21 2011-02-24 Samsung Electronics Co., Ltd. Shared data transmitting method, server, and system
US20120072566A1 (en) * 2010-09-17 2012-03-22 Samsung Electronics Co., Ltd. Method and apparatus for managing data
US20120158893A1 (en) * 2010-12-18 2012-06-21 Boyns Mark Methods and apparatus for enabling a hybrid web and native application
US20120167137A1 (en) * 2010-12-22 2012-06-28 Sony Corporation System and method for automated social networking
US20130054714A1 (en) * 2011-08-22 2013-02-28 Salesforce.Com, Inc. Computer Implemented Methods and Apparatus for Sharing Data of an Information Feed of an Online Social Network
WO2013096947A1 (en) * 2011-12-23 2013-06-27 Microsoft Corporation Private interaction hubs
WO2013100974A1 (en) 2011-12-28 2013-07-04 Intel Corporation Layout for dynamic web content management
US20140032726A1 (en) * 2012-07-24 2014-01-30 Adobe Systems Inc. Method and apparatus for configuring social networking site sharing functions
US20140157300A1 (en) * 2012-11-30 2014-06-05 Lenovo (Singapore) Pte. Ltd. Multiple device media playback
US8825814B1 (en) * 2013-05-23 2014-09-02 Vonage Network Llc Method and apparatus for minimizing application delay by pushing application notifications
US20140317184A1 (en) * 2013-04-23 2014-10-23 Facebook, Inc. Pre-Fetching Newsfeed Stories from a Social Networking System for Presentation to a User
US8874162B2 (en) 2011-12-23 2014-10-28 Microsoft Corporation Mobile device safe driving
US9092455B2 (en) 2012-07-17 2015-07-28 Microsoft Technology Licensing, Llc Image curation
US20150356423A1 (en) * 2014-06-09 2015-12-10 Cognitive Scale, Inc. Cognitive Engine for Use within a Cognitive Environment
US9230076B2 (en) 2012-08-30 2016-01-05 Microsoft Technology Licensing, Llc Mobile device child share
WO2016035984A1 (en) * 2014-09-05 2016-03-10 Lg Electronics Inc. Electronic device and method for operating the same
US20160104457A1 (en) * 2014-10-13 2016-04-14 Microsoft Technology Licensing, Llc Buffer Optimization
US9363250B2 (en) 2011-12-23 2016-06-07 Microsoft Technology Licensing, Llc Hub coordination service
US9414417B2 (en) 2014-08-07 2016-08-09 Microsoft Technology Licensing, Llc Propagating communication awareness over a cellular network
US9420432B2 (en) 2011-12-23 2016-08-16 Microsoft Technology Licensing, Llc Mobile devices control
US9467834B2 (en) 2011-12-23 2016-10-11 Microsoft Technology Licensing, Llc Mobile device emergency service
US9665702B2 (en) 2011-12-23 2017-05-30 Microsoft Technology Licensing, Llc Restricted execution modes
US9787576B2 (en) 2014-07-31 2017-10-10 Microsoft Technology Licensing, Llc Propagating routing awareness for autonomous networks
US9820231B2 (en) 2013-06-14 2017-11-14 Microsoft Technology Licensing, Llc Coalescing geo-fence events
US9836464B2 (en) 2014-07-31 2017-12-05 Microsoft Technology Licensing, Llc Curating media from social connections
US9880604B2 (en) 2011-04-20 2018-01-30 Microsoft Technology Licensing, Llc Energy efficient location detection
US9998866B2 (en) 2013-06-14 2018-06-12 Microsoft Technology Licensing, Llc Detecting geo-fence events using varying confidence levels
WO2018113943A1 (en) * 2016-12-21 2018-06-28 Telefonaktiebolaget Lm Ericsson (Publ) First and second icn network nodes and method therein for generating data content
US10152733B1 (en) * 2017-08-02 2018-12-11 Digiprint Ip Llc Wireless transmission-triggered incentives driving social media engagement
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US10325210B2 (en) 2014-06-09 2019-06-18 Cognitive Scale, Inc. Method for providing cognitive insights using a cognition engine
US10324733B2 (en) 2014-07-30 2019-06-18 Microsoft Technology Licensing, Llc Shutdown notifications
US20190205554A1 (en) * 2017-12-28 2019-07-04 Dropbox, Inc. File system authentication
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3126969A4 (en) * 2014-04-04 2017-04-12 Microsoft Technology Licensing, LLC Expandable application representation
CN105359055A (en) 2014-04-10 2016-02-24 微软技术许可有限责任公司 Slider cover for computing device
US10554772B2 (en) * 2016-03-07 2020-02-04 Microsoft Technology Licensing, Llc Sharing personalized entities among personal digital assistant users
US10831981B2 (en) * 2016-03-17 2020-11-10 Facebook, Inc. Updating documents based on user input

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050193054A1 (en) * 2004-02-12 2005-09-01 Wilson Eric D. Multi-user social interaction network
US20080189395A1 (en) * 2007-02-02 2008-08-07 Jed Stremel System and method for digital file distribution
US20080209329A1 (en) * 2007-02-21 2008-08-28 Defranco Robert Systems and methods for sharing data
US20090234815A1 (en) * 2006-12-12 2009-09-17 Marco Boerries Open framework for integrating, associating, and interacting with content objects including automatic feed creation
US20100043017A1 (en) * 2008-08-18 2010-02-18 Infosys Technologies Limited Method and system for providing applications to various devices
US20100070899A1 (en) * 2008-09-12 2010-03-18 Meebo, Inc. Techniques for sharing content on a web page
US20100248701A1 (en) * 2009-03-27 2010-09-30 Michael Steffen Vance Group based information displays
US20100262918A1 (en) * 2009-04-14 2010-10-14 International Business Machines Corporation Management of data on related websites
US20110038470A1 (en) * 2009-04-14 2011-02-17 Carl Ernest Kent Centrally Located Server Delivery Of Personalized Content To Telecommunications Devices
US20110054960A1 (en) * 2009-08-25 2011-03-03 Yahoo! Inc., A Delaware Corporation Dynamic web page creation
US20110055265A1 (en) * 2009-09-03 2011-03-03 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Target outcome based provision of one or more templates
US20120066286A1 (en) * 2009-05-19 2012-03-15 Zipit Wireless, Inc. System and method for coupling a wireless device to social networking services and a mobile communication device

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6772144B2 (en) 2001-01-31 2004-08-03 Microsoft Corporation Method and apparatus for applying an adaptive layout process to a layout template
US20030110297A1 (en) 2001-12-12 2003-06-12 Tabatabai Ali J. Transforming multimedia data for delivery to multiple heterogeneous devices
JP4741424B2 (en) 2006-06-09 2011-08-03 日本放送協会 Screen display information conversion apparatus and screen display information conversion program
US20080177708A1 (en) 2006-11-01 2008-07-24 Koollage, Inc. System and method for providing persistent, dynamic, navigable and collaborative multi-media information packages
JP2008287615A (en) 2007-05-21 2008-11-27 Contents Works Inc Method for creating publication data, software program for making computer execute the same method and system for creating publication data
US9602605B2 (en) 2007-10-26 2017-03-21 Facebook, Inc. Sharing digital content on a social network
US8635248B2 (en) 2008-06-23 2014-01-21 Microsoft Corporation Providing localized individually customized updates from a social network site to a desktop application
US20100107100A1 (en) 2008-10-23 2010-04-29 Schneekloth Jason S Mobile Device Style Abstraction
US20100293105A1 (en) 2009-05-15 2010-11-18 Microsoft Corporation Social networking updates for image display devices

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050193054A1 (en) * 2004-02-12 2005-09-01 Wilson Eric D. Multi-user social interaction network
US20090234815A1 (en) * 2006-12-12 2009-09-17 Marco Boerries Open framework for integrating, associating, and interacting with content objects including automatic feed creation
US20080189395A1 (en) * 2007-02-02 2008-08-07 Jed Stremel System and method for digital file distribution
US20080209329A1 (en) * 2007-02-21 2008-08-28 Defranco Robert Systems and methods for sharing data
US20100043017A1 (en) * 2008-08-18 2010-02-18 Infosys Technologies Limited Method and system for providing applications to various devices
US20100070899A1 (en) * 2008-09-12 2010-03-18 Meebo, Inc. Techniques for sharing content on a web page
US20100248701A1 (en) * 2009-03-27 2010-09-30 Michael Steffen Vance Group based information displays
US20100262918A1 (en) * 2009-04-14 2010-10-14 International Business Machines Corporation Management of data on related websites
US20110038470A1 (en) * 2009-04-14 2011-02-17 Carl Ernest Kent Centrally Located Server Delivery Of Personalized Content To Telecommunications Devices
US20120066286A1 (en) * 2009-05-19 2012-03-15 Zipit Wireless, Inc. System and method for coupling a wireless device to social networking services and a mobile communication device
US20110054960A1 (en) * 2009-08-25 2011-03-03 Yahoo! Inc., A Delaware Corporation Dynamic web page creation
US20110055265A1 (en) * 2009-09-03 2011-03-03 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Target outcome based provision of one or more templates

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Christine Perey, Social Networking Segmentation: Celebrating Community Diversity in a Framework - A W3C Workshop on the Future of Social Networking Position Paper, November 20, 2008, pages: 5 *
Hume et al., Designing Mobile Applications for Multiple Form Factors, Jule 15, 2008, Trutap V1, pages: 10 *

Cited By (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110047248A1 (en) * 2009-08-21 2011-02-24 Samsung Electronics Co., Ltd. Shared data transmitting method, server, and system
US9686354B2 (en) * 2009-08-21 2017-06-20 Samsung Electronics Co., Ltd Shared data transmitting method, server, and system
US20170272517A1 (en) * 2009-08-21 2017-09-21 Samsung Electronics Co. , Ltd. Shared data transmitting method, server, and system
US10193972B2 (en) * 2009-08-21 2019-01-29 Samsung Electronics Co., Ltd Shared data transmitting method, server, and system
US20120072566A1 (en) * 2010-09-17 2012-03-22 Samsung Electronics Co., Ltd. Method and apparatus for managing data
US9952907B2 (en) * 2010-09-17 2018-04-24 Samsung Electronics Co., Ltd Method and apparatus for managing data
US20120158893A1 (en) * 2010-12-18 2012-06-21 Boyns Mark Methods and apparatus for enabling a hybrid web and native application
US8645491B2 (en) * 2010-12-18 2014-02-04 Qualcomm Incorporated Methods and apparatus for enabling a hybrid web and native application
US20120167137A1 (en) * 2010-12-22 2012-06-28 Sony Corporation System and method for automated social networking
US9880604B2 (en) 2011-04-20 2018-01-30 Microsoft Technology Licensing, Llc Energy efficient location detection
US10069841B2 (en) * 2011-08-22 2018-09-04 Salesforce.Com, Inc. Computer implemented methods and apparatus for sharing data of an information feed of an online social network
US9591090B2 (en) * 2011-08-22 2017-03-07 Salesforce.Com, Inc. Computer implemented methods and apparatus for sharing data of an information feed of an online social network
US20130054714A1 (en) * 2011-08-22 2013-02-28 Salesforce.Com, Inc. Computer Implemented Methods and Apparatus for Sharing Data of an Information Feed of an Online Social Network
US9769180B2 (en) 2011-08-22 2017-09-19 Salesforce.Com, Inc. Computer implemented methods and apparatus for sharing data of an information feed of an online social network
WO2013096947A1 (en) * 2011-12-23 2013-06-27 Microsoft Corporation Private interaction hubs
US8874162B2 (en) 2011-12-23 2014-10-28 Microsoft Corporation Mobile device safe driving
US9736655B2 (en) 2011-12-23 2017-08-15 Microsoft Technology Licensing, Llc Mobile device safe driving
US9710982B2 (en) 2011-12-23 2017-07-18 Microsoft Technology Licensing, Llc Hub key service
US9467834B2 (en) 2011-12-23 2016-10-11 Microsoft Technology Licensing, Llc Mobile device emergency service
US9680888B2 (en) 2011-12-23 2017-06-13 Microsoft Technology Licensing, Llc Private interaction hubs
US9665702B2 (en) 2011-12-23 2017-05-30 Microsoft Technology Licensing, Llc Restricted execution modes
US9325752B2 (en) 2011-12-23 2016-04-26 Microsoft Technology Licensing, Llc Private interaction hubs
US9363250B2 (en) 2011-12-23 2016-06-07 Microsoft Technology Licensing, Llc Hub coordination service
US10249119B2 (en) 2011-12-23 2019-04-02 Microsoft Technology Licensing, Llc Hub key service
US9420432B2 (en) 2011-12-23 2016-08-16 Microsoft Technology Licensing, Llc Mobile devices control
US9491589B2 (en) 2011-12-23 2016-11-08 Microsoft Technology Licensing, Llc Mobile device safe driving
US10057369B2 (en) 2011-12-28 2018-08-21 Intel Corporation Layout for dynamic web content management
WO2013100974A1 (en) 2011-12-28 2013-07-04 Intel Corporation Layout for dynamic web content management
CN104094306A (en) * 2011-12-28 2014-10-08 英特尔公司 Layout for dynamic web content management
EP2798606A4 (en) * 2011-12-28 2015-12-02 Intel Corp Layout for dynamic web content management
US9092455B2 (en) 2012-07-17 2015-07-28 Microsoft Technology Licensing, Llc Image curation
US9317890B2 (en) 2012-07-17 2016-04-19 Microsoft Technology Licensing, Llc Image curation
US20140032726A1 (en) * 2012-07-24 2014-01-30 Adobe Systems Inc. Method and apparatus for configuring social networking site sharing functions
US9754327B2 (en) * 2012-07-24 2017-09-05 Adobe Systems Incorporated Method and apparatus for configuring social networking site sharing functions
US9230076B2 (en) 2012-08-30 2016-01-05 Microsoft Technology Licensing, Llc Mobile device child share
US20140157300A1 (en) * 2012-11-30 2014-06-05 Lenovo (Singapore) Pte. Ltd. Multiple device media playback
US10594808B2 (en) * 2013-04-23 2020-03-17 Facebook, Inc. Pre-fetching newsfeed stories from a social networking system for presentation to a user
US20140317184A1 (en) * 2013-04-23 2014-10-23 Facebook, Inc. Pre-Fetching Newsfeed Stories from a Social Networking System for Presentation to a User
US8825814B1 (en) * 2013-05-23 2014-09-02 Vonage Network Llc Method and apparatus for minimizing application delay by pushing application notifications
US9438640B2 (en) 2013-05-23 2016-09-06 Vonage America Inc. Method and apparatus for minimizing application delay by pushing application notifications
US9820231B2 (en) 2013-06-14 2017-11-14 Microsoft Technology Licensing, Llc Coalescing geo-fence events
US9998866B2 (en) 2013-06-14 2018-06-12 Microsoft Technology Licensing, Llc Detecting geo-fence events using varying confidence levels
US10325209B2 (en) * 2014-06-09 2019-06-18 Cognitive Scale, Inc. Cognitive engine for use within a cognitive environment
US10325210B2 (en) 2014-06-09 2019-06-18 Cognitive Scale, Inc. Method for providing cognitive insights using a cognition engine
US20150356423A1 (en) * 2014-06-09 2015-12-10 Cognitive Scale, Inc. Cognitive Engine for Use within a Cognitive Environment
US10324733B2 (en) 2014-07-30 2019-06-18 Microsoft Technology Licensing, Llc Shutdown notifications
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
US9787576B2 (en) 2014-07-31 2017-10-10 Microsoft Technology Licensing, Llc Propagating routing awareness for autonomous networks
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US9836464B2 (en) 2014-07-31 2017-12-05 Microsoft Technology Licensing, Llc Curating media from social connections
US9414417B2 (en) 2014-08-07 2016-08-09 Microsoft Technology Licensing, Llc Propagating communication awareness over a cellular network
US9860321B2 (en) 2014-08-07 2018-01-02 Microsoft Technology Licensing, Llc Propagating communication awareness over a cellular network
US10402592B2 (en) * 2014-09-05 2019-09-03 Lg Electronics Inc. Electronic device and method for operating the same
WO2016035984A1 (en) * 2014-09-05 2016-03-10 Lg Electronics Inc. Electronic device and method for operating the same
US20160104457A1 (en) * 2014-10-13 2016-04-14 Microsoft Technology Licensing, Llc Buffer Optimization
US10283091B2 (en) * 2014-10-13 2019-05-07 Microsoft Technology Licensing, Llc Buffer optimization
WO2018113943A1 (en) * 2016-12-21 2018-06-28 Telefonaktiebolaget Lm Ericsson (Publ) First and second icn network nodes and method therein for generating data content
US10715462B2 (en) 2016-12-21 2020-07-14 Telefonaktiebolaget Lm Ericsson (Publ) First and second ICN network nodes and method therein for generating data content
US10152733B1 (en) * 2017-08-02 2018-12-11 Digiprint Ip Llc Wireless transmission-triggered incentives driving social media engagement
US20190102808A1 (en) * 2017-08-02 2019-04-04 Digiprint Ip Llc Wireless transmission-triggered incentives driving social media engagement
US10909581B2 (en) * 2017-08-02 2021-02-02 Digiprint Ip Llc Wireless transmission-triggered incentives driving social media engagement
WO2019028177A1 (en) * 2017-08-02 2019-02-07 Upsell Direct Llc Wireless transmission-triggered incentives driving social media engagement
US11120039B2 (en) 2017-12-28 2021-09-14 Dropbox, Inc. Updating a remote tree for a client synchronization service
US11461365B2 (en) 2017-12-28 2022-10-04 Dropbox, Inc. Atomic moves with lamport clocks in a content management system
US10929426B2 (en) 2017-12-28 2021-02-23 Dropbox, Inc. Traversal rights
US10997200B2 (en) 2017-12-28 2021-05-04 Dropbox, Inc. Synchronized organization directory with team member folders
US11048720B2 (en) 2017-12-28 2021-06-29 Dropbox, Inc. Efficiently propagating diff values
US11080297B2 (en) 2017-12-28 2021-08-03 Dropbox, Inc. Incremental client synchronization
US20190205554A1 (en) * 2017-12-28 2019-07-04 Dropbox, Inc. File system authentication
US11176164B2 (en) 2017-12-28 2021-11-16 Dropbox, Inc. Transition to an organization directory
US11188559B2 (en) 2017-12-28 2021-11-30 Dropbox, Inc. Directory snapshots with searchable file paths
US11204938B2 (en) 2017-12-28 2021-12-21 Dropbox, Inc. Caching of file system warning queries to determine an applicable file system warning
US11308118B2 (en) 2017-12-28 2022-04-19 Dropbox, Inc. File system warnings
US11314774B2 (en) 2017-12-28 2022-04-26 Dropbox, Inc. Cursor with last observed access state
US11386116B2 (en) 2017-12-28 2022-07-12 Dropbox, Inc. Prevention of loss of unsynchronized content
US11423048B2 (en) 2017-12-28 2022-08-23 Dropbox, Inc. Content management client synchronization service
US11429634B2 (en) 2017-12-28 2022-08-30 Dropbox, Inc. Storage interface for synchronizing content
US10866963B2 (en) * 2017-12-28 2020-12-15 Dropbox, Inc. File system authentication
US11475041B2 (en) 2017-12-28 2022-10-18 Dropbox, Inc. Resynchronizing metadata in a content management system
US11500899B2 (en) 2017-12-28 2022-11-15 Dropbox, Inc. Efficient management of client synchronization updates
US11500897B2 (en) 2017-12-28 2022-11-15 Dropbox, Inc. Allocation and reassignment of unique identifiers for synchronization of content items
US11514078B2 (en) 2017-12-28 2022-11-29 Dropbox, Inc. File journal interface for synchronizing content
US11593394B2 (en) 2017-12-28 2023-02-28 Dropbox, Inc. File system warnings application programing interface (API)
US11630841B2 (en) 2017-12-28 2023-04-18 Dropbox, Inc. Traversal rights
US11657067B2 (en) 2017-12-28 2023-05-23 Dropbox Inc. Updating a remote tree for a client synchronization service
US11669544B2 (en) 2017-12-28 2023-06-06 Dropbox, Inc. Allocation and reassignment of unique identifiers for synchronization of content items
US11704336B2 (en) 2017-12-28 2023-07-18 Dropbox, Inc. Efficient filename storage and retrieval
US11755616B2 (en) 2017-12-28 2023-09-12 Dropbox, Inc. Synchronized organization directory with team member folders
US11782949B2 (en) 2017-12-28 2023-10-10 Dropbox, Inc. Violation resolution in client synchronization
US11836151B2 (en) 2017-12-28 2023-12-05 Dropbox, Inc. Synchronizing symbolic links
US11880384B2 (en) 2017-12-28 2024-01-23 Dropbox, Inc. Forced mount points / duplicate mounts

Also Published As

Publication number Publication date
EP2572330A2 (en) 2013-03-27
US9405845B2 (en) 2016-08-02
CN102884529A (en) 2013-01-16
WO2011146347A2 (en) 2011-11-24
CN102884529B (en) 2015-11-25
HK1181139A1 (en) 2013-11-01
WO2011146347A3 (en) 2012-03-29
EP2572330A4 (en) 2015-07-01

Similar Documents

Publication Publication Date Title
US9405845B2 (en) Adaptable layouts for social feeds
AU2018206841B2 (en) Image curation
US10999650B2 (en) Methods and systems for multimedia content
EP2569750B1 (en) Editable bookmarks shared via a social network
US8825809B2 (en) Asset resolvable bookmarks
EP3107267B1 (en) Techniques to push content to a connected device
US11503356B2 (en) Intelligent multi-device content distribution based on internet protocol addressing
US8904431B2 (en) Current device location advertisement distribution
CN109845283B (en) Customizing media items played back on alternate playback devices paired with user devices
US11870859B2 (en) Relevant secondary-device content generation based on associated internet protocol addressing
US20110314030A1 (en) Personalized media charts
US20130067346A1 (en) Content User Experience
KR20120031176A (en) Synchronized distributed media assets
US9443032B2 (en) Method for determining a device to provide with content based on content attribute and electronic device using the same
EP2590130A1 (en) Similarity and relatedness of content
CN102831536A (en) Middle parter
US20120011014A1 (en) Media purchase techniques
TWI457787B (en) Method and computer-readable memories for content management that addresses levels of functionality
US20110138307A1 (en) Publishing client device usage data
US20140359056A1 (en) Metered Network Synchronization
US20110314416A1 (en) Collected media content data
CN115242743A (en) Comment interaction method and device
US20140344078A1 (en) Electronic device, system for broadcasting advertisement and method thereof

Legal Events

Date Code Title Description
AS Assignment

Owner name: MICROSOFT CORPORATION, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:OBASANJO, OLUDARE V.;PARK, SEUNG-HAE;WALTERS, BENJAMIN C.;AND OTHERS;REEL/FRAME:024701/0565

Effective date: 20100608

AS Assignment

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034544/0001

Effective date: 20141014

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 4

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 8