Map-based graphical user interface indicating geospatial activity metrics

By introducing a map-based GUI into the social media platform, using geotagging and timer systems, users solve the efficiency and resource consumption problems when finding and accessing short-term social media content, and achieve more intuitive and efficient content management and Visit experience.

CN119313494APending Publication Date: 2025-01-14SNAP INC
View PDF 0 Cites 4 Cited by

Patent Information

Application Number
CN202411372451.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2017-09-08
Filing Date
2018-04-27
Publication Date
2025-01-14

AI Technical Summary

Technical Problem

In social media platforms, when users look for content they are interested in, the server side is very resource-consuming and the search results are not satisfactory, making it difficult to effectively locate and access short-term social media content.

Method used

Provides a map-based graphical user interface (GUI), allowing users to access and manage short-term social media content through map views, and use geotagging and timer systems to realize the location and timeliness of content. Users can view and playback through map GUI. Location-based social media items.

Benefits of technology

It improves the efficiency of users to find and access short-term content in social media platforms, reduces server-side resource consumption, and provides a more intuitive and user-friendly geochemical content management and access experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119313494A_ABST
    Figure CN119313494A_ABST
Patent Text Reader

Abstract

A server-side management interface for a social media platform allows limiting a defined geographic area. Social media items originating from such restricted areas are automatically filtered or age-restricted for availability via a map-based graphical user interface of the social media platform.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of a patent application with an application date of April 27, 2018, application number 201880043121.0, and invention name “Map-based graphical user interface for indicating geospatial activity metrics”.

[0002] Priority claim

[0003] This application is a non-provisional application claiming the benefit of priority to U.S. Provisional Application Serial No. 62 / 556,134 filed on September 8, 2017, U.S. Provisional Application Serial No. 62 / 552,958 filed on August 31, 2017, and U.S. Provisional Application Serial No. 62 / 491,115 filed on April 27, 2017, the entire contents of which are incorporated herein by reference. Background Art

[0004] Social media applications implement computer-mediated technologies that allow the creation and sharing of content to convey information, ideas, professional interests, and other forms of expression via virtual communities and networks. Social media platforms use web-based technologies, desktop computers, and mobile technologies (e.g., smartphones and tablets) to create highly interactive platforms through which individuals, communities, and organizations can share, co-create, discuss, and modify user-generated or pre-made content posted online.

[0005] Mobile electronic devices (on which end-user social media applications may be executed) typically provide geolocation services that determine the geographic location of the mobile electronic device by extending an indication of the geographic location of the associated user. Social media content posted by a user is typically geotagged based on the geographic location of the mobile electronic device (e.g., a mobile phone) by using the mobile electronic device to collect the social media content and / or post the social media content to a social media platform. In other embodiments, social media content may be explicitly geotagged by a user using a computer device that does not have an activated geolocation service and / or is not a mobile device (e.g., a desktop PC).

[0006] In many social media platforms, the total number of individual social media items available for viewing by any particular user may be very large. Search mechanisms that enable users to find social media content that they may be interested in may consume a large amount of server-side resources and often provide unsatisfactory search results. BRIEF DESCRIPTION OF THE DRAWINGS

[0007] Some aspects of the disclosure are illustrated in the accompanying drawings. Note that the accompanying drawings illustrate example embodiments of the disclosure and are not to be considered as limiting the scope of the disclosure.

[0008] Figure 1is a block diagram illustrating an example social media platform system for exchanging, publishing, and consuming social media data (eg, messages and associated content) over a network.

[0009] Figure 2 is a block diagram showing further details regarding a social media platform system according to an example embodiment.

[0010] Figure 3 is a schematic diagram illustrating data that may be stored in a database of a social media platform system according to certain example embodiments.

[0011] Figure 4 is a schematic diagram illustrating the structure of a message according to some embodiments generated by a social media client application according to an example embodiment.

[0012] Figure 5 is a schematic diagram illustrating an example access restriction process by which access to content (e.g., ephemeral messages and associated multimedia data payload) or a collection of content (e.g., an ephemeral message library or story) can be time-restricted (e.g., ephemeral).

[0013] Fig. 6A and 6B are respective schematic diagrams of a client device providing a map-based graphical user interface for a social media application according to various respective example embodiments.

[0014] Figures 7A-7C are respective schematic diagrams of a client device providing a destination selection interface forming part of a map-based graphical user interface for a social media application according to some example embodiments.

[0015] Figures 8A-8C are respective screenshots of a map-based graphical user interface providing features related to the display of user icons in a map forming part of the interface in accordance with an example embodiment.

[0016] Fig.9A and 9B are respective screenshots of functionality of a map-based graphical user interface providing a chat interface and access to friend content via friend icons displayed as part of a map in accordance with an example embodiment.

[0017] Figures 10A-10D is a series of screen shots of a search interface provided as part of a map-based graphical user interface according to respective example embodiments.

[0018] Figures 11A-11Bis a series of illustrative screen shots illustrating a location-based search mechanism provided by a map-based graphical user interface according to an example embodiment.

[0019] Fig.12 is a schematic diagram of a server system for providing social media platform services according to an example embodiment.

[0020] Fig.13A and 13B is a screenshot of an administration interface according to an example embodiment.

[0021] Fig.14 is a flow chart of a method for limiting social media activity from being presented on a social media platform by geography, according to an example embodiment.

[0022] Fig.15 is a schematic flow chart of a method of providing variable collection intervals of social media items by geography according to an example embodiment.

[0023] Fig.16 is a flow chart illustrating an example embodiment of a method for automatically estimating the quality of social media items.

[0024] Figures 17A-17D is a series of alternative mechanisms for training a neural network to perform automatic quality assessment of social media items according to example embodiments.

[0025] Figures 18A-18B A labeling mechanism for training a neural network according to an example embodiment is shown.

[0026] Fig.19 is a flow chart illustrating a method of accessing expired ephemeral items on a social media platform according to an example embodiment.

[0027] Fig. 20 is a schematic diagram of a social media platform system for providing a map-based graphical user interface for social media applications according to an example embodiment.

[0028] Fig.21 is a block diagram illustrating a representative software architecture that may be used in conjunction with the various hardware architectures described herein.

[0029] Fig. 22 is a block diagram illustrating components of a machine capable of reading instructions from a machine-readable medium (eg, a machine-readable storage medium) and performing any one or more of the methodologies discussed herein, according to some example embodiments.

[0030] The headings provided herein are for convenience only and do not necessarily affect the scope or meaning of the terms used. DETAILED DESCRIPTION

[0031] One aspect of the present disclosure provides a geographical map-based graphical user interface (GUI) for a social media platform or application to allow users to access ephemeral social media content via a map-based GUI. The interface is also referred to herein as a "map GUI."

[0032] As will be described in more detail below, ephemeral social media content includes social media items that are available for viewing via a social media application only for a limited period of time. For example, a ephemeral social media item or message (also referred to herein as a "snap") submitted by a user to a social media application can be viewed by other users via the map GUI of the social media application only within a predetermined time period after submission. In an example embodiment, each ephemeral item or snapshot has an availability lifespan of 24 hours after submission (also referred to herein as a "library participation timer"), after which the ephemeral item "disappears" and is no longer available for viewing by other users via the map GUI. The ephemeral social media item (also referred to herein as a short message) typically includes photo or video content, which can be submitted with or without enhancement of the underlying photo or video content by the user.

[0033] Short messages submitted by multiple different users may be available on a map forming part of a map GUI based at least in part on corresponding location information (e.g., geotag information) of the short messages. In some embodiments, the map GUI may provide location-based access to one or more collections of short-term social media items (also referred to and referred to herein as libraries or "stories"). In some example embodiments, multiple short messages submitted by different users are included in a common geo-anchored library or story based at least in part on corresponding geotagging information of multiple short messages. In some embodiments, the location-based library or story is represented on the map GUI by a corresponding library icon displayed at a corresponding map location, and the library icon may be selected by a user to trigger automatic continuous display of multiple short messages in the gallery on a user device (on which the map GUI is rendered).

[0034] These and additional aspects of the present disclosure will be described below with reference to specific example embodiments. Figure 1-5 To describe the platform architecture and technical background used to implement various embodiments. Figure 6A-20 Specific example embodiments are described. Figure 21-22 Finally, aspects of software and hardware components are described, which in some cases are used to implement the described example embodiments.

[0035] Detailed Description

[0036] The following description includes systems, methods, devices, techniques, instruction sequences, and computing machine program products that embody illustrative embodiments of the present disclosure. In the following description, for the purpose of explanation, many specific details are set forth to provide an understanding of the various embodiments of the inventive subject matter. However, it will be apparent to those skilled in the art that embodiments of the disclosed subject matter can be practiced without these specific details. Typically, known instruction instances, protocols, structures, and techniques need not be shown in detail.

[0037] System architecture and operating environment

[0038] Figure 1 1 is a block diagram illustrating an exemplary social media platform system 100 for exchanging data (e.g., social media items or messages and associated content) over a network. In this description, items transmitted from one user to one or more other users via a social media application or platform, as well as items uploaded or provided by a user to a social media application or platform for use or consumption by other users via the social media application or platform, are referred to as "messages." Thus, the term "message" as used herein is not limited to communications from one user to a designated recipient user, but includes messages that may be consumed by the public via the associated social media platform.

[0039] The social media platform system 100 includes a plurality of client devices 102, each hosting a plurality of applications including a social media client application 104. Each social media client application 104 is communicatively coupled to other instances of the social media client application 104 and a social media application server system 108 via a network 106 (e.g., the Internet).

[0040] Thus, each social media client application 104 is able to communicate and exchange data with another social media client application 104 and with the social media application server system 108 via the network 106. The data exchanged between the social media client applications 104 and the data exchanged between the social media client applications 104 and the social media application server system 108 includes functions (e.g., commands to invoke functions) and payload data (e.g., text, audio, video, or other multimedia data).

[0041] The social media application server system 108 provides server-side functionality to a particular social media client application 104 via the network 106. Although certain functions of the social media platform system 100 are described herein as being performed by the social media client application 104 or by the social media application server system 108, it is understood that the location of certain functions within the social media client application 104 or within the social media application server system 108 is a design choice. For example, it may be technically convenient to first deploy certain technologies and functions within the social media application server system 108, but then move the technologies and functions to the social media client application 104 where the client device 102 has sufficient processing power.

[0042] The social media application server system 108 supports various services and operations provided to the social media client applications 104. The operations include sending data to the social media client applications 104, receiving data from the social media client applications 104, and processing data generated by the social media client applications 104. As examples, the data may include message content, client device information, geographic location information, media annotations and overlays, message content persistence conditions, social network information, and live event information. The data exchange within the social media platform system 100 is invoked and controlled via functions available through the user interface (UI) of the social media client application 104.

[0043] Turning now specifically to the social media application server system 108, an application programming interface (API) server 110 is coupled to and provides a programming interface to an application server 112. The application server 112 is communicatively coupled to a database server 118, which facilitates access to a database 120 in which data associated with messages processed by the application server 112 is stored.

[0044] Specifically, the API server 110 is addressed, which receives and sends message data (e.g., commands and message payloads) between the client device 102 and the application server 112. Specifically, the API server 110 provides a set of interfaces (e.g., routines and protocols) that can be called or queried by the social media client application 104 to invoke functions of the application server 112. The API server 110 exposes various functions supported by the application server 112, including account registration, login functionality, sending messages from a particular social media client application 104 to another social media client application 104 via the application server 112, sending media files (e.g., images or videos) from the social media client application 104 to the social media server application 114 for access by another social media client application 104, setting of media data collections (e.g., stories or libraries), retrieval of such collections, retrieval of a friend list of a user of the client device 102, retrieval of messages and content, adding and removing friends from a social graph, locating friends in a social graph, opening application events (e.g., application events related to the social media client application 104), and the like.

[0045] The application server 112 hosts a number of applications and subsystems, including a social media server application 114, an image processing system 116, and a social networking system 122. The social media server application 114 implements a variety of message processing techniques and functions, particularly techniques and functions related to the aggregation and other processing of content (e.g., text and multimedia content) contained in messages received from multiple instances of the social media client application 104. As will be described in further detail, text and media content from multiple sources can be aggregated into content collections (e.g., referred to as "stories" or "libraries"). The social media server application 114 can then provide these collections to the social media client application 104. Given the hardware requirements for this processing, the social media server application 114 can also perform other processor- and memory-intensive data processing on the server side.

[0046] The application server 112 also includes an image processing system 116 that is dedicated to performing various image processing operations, typically related to images or videos received within the payload of messages from the social media server application 114 .

[0047] The social networking system 122 supports various social networking functions and services and makes these functions and services available to the social media server application 114. To this end, the social networking system 122 maintains and accesses the entity graph 304 in the database 120 (see below). Figure 3Examples of functions and services supported by the social networking system 122 include identifying other users in the social media platform system 100 who have a relationship with a particular user or who are "followed" by the particular user, as well as identifying other attributes and interests of the particular user. In some embodiments, the social networking system 122 includes identification of other users whose locations can be viewed by the particular user using the corresponding social media client application 104 via a map-based GUI that can be displayed on the client device 102.

[0048] Figure 2 1 is a block diagram showing further details about the social media platform system 100 according to an example embodiment. Specifically, the social media platform system 100 is shown to include a social media client application 104 and an application server 112, which in turn contains some subsystems, namely a short timer system 202, a collection management system 204, and an annotation system 206.

[0049] The short-term timer system 202 is responsible for enforcing temporary access to content permitted by the social media client application 104 and the social media server application 114. To this end, the short-term timer system 202 incorporates a number of timers that selectively display and enable access to messages and related content via the social media client application 104 based on duration and display parameters associated with a message or collection / library of messages (e.g., SNAPCHAT stories). Further details regarding the operation of the short-term timer system 202 are provided below.

[0050] The collection management system 204 is responsible for managing collections of media (e.g., collections of text, images, video, and audio data). In some examples, collections of content (e.g., messages including images, videos, text, and audio) may be organized into "event libraries" or "event stories." Such collections may be available for a specified time period, such as the duration of an event associated with the content or until the last message or snap in the library expires. For example, content related to a concert may be provided as a "story" for the duration of the concert. The collection management system 204 may also be responsible for publishing an icon to the user interface of the social media client application 104 that provides notification of the existence of a particular collection. As will be described in more detail with reference to specific example embodiments later, the collection management system 204 may also be responsible for compiling and managing multiple location-based social media libraries based at least in part on geo-tagged data of social media items or messages uploaded to the social media platform by multiple users. Other types of repositories that may be provided by collection management system 204 include "place stories" (which collect short messages with geo-tagged data indicating locations within a pre-defined geographic area of ​​interest), and ad-hoc stories or spike stories (which are dynamically presented on a map GUI as described herein based on underlying location-based social media activity (e.g., based on geo-temporal volumes or anomality / abnormality of social media items submitted by users for public consumption (e.g., for inclusion in "Live Stories" or "Our Stories")). "Anomaly" means a metric indicating the degree to which something is abnormal.

[0051] The collection management system 204 further includes a curation interface 208 that allows an operator (e.g., a collection manager) to manage and curate a particular collection of content. For example, the curation interface 208 enables an event organizer to curate a collection of content related to a particular event (e.g., to delete inappropriate content or redundant messages). Alternatively or additionally, the collection management system 204 can automatically compile and / or curate a collection of content using machine vision (or image recognition technology), geo-tag data, and / or content rules. In some embodiments, a user may be paid to include user-generated content in a collection. In this case, the curation interface 208 operates so as to automatically pay the user for use of the user's content.

[0052] The annotation system 206 provides various functions that enable users to annotate or otherwise enhance, modify or edit media content associated with a message. For example, the annotation system 206 provides functions related to the generation and publication of media overlays for messages processed by the social media platform system 100. The annotation system 206 is operable to provide a media overlay (e.g., a SNAPCHAT filter) to the social media client application 104 based on the geographic location of the client device 102. In another example, the annotation system 206 is operable to provide a media overlay to the social media client application 104 based on other information (e.g., social network information of the user of the client device 102). The media overlay may include audio and visual content and visual effects. Examples of audio and visual content include pictures, text, logos, animations, and sound effects. Examples of visual effects include color overlays. Audio and visual content or visual effects can be applied to media content items (e.g., photos) at the client device 102. For example, the media overlay includes text that can be overlaid on a photo taken by the client device 102. In another example, the media overlay includes a location identification overlay (e.g., Venice Beach), a live event name or a business name overlay (e.g., Beach Cafe). In another example, the annotation system 206 uses the geographic location of the client device 102 to identify a media overlay that includes the name of a business at the geographic location of the client device 102. The media overlay may include other tags associated with the business. The media overlay may be stored in the database 120 and may be accessed by the database server 118.

[0053] In one example embodiment, the annotation system 206 provides a user-based publishing platform that enables users to select a geographic location on a map and upload content associated with the selected geographic location. Users can also specify circumstances under which specific media overlays should be provided to other users. The annotation system 206 generates a media overlay that includes the uploaded content and associates the uploaded content with the selected geographic location.

[0054] In another example embodiment, the annotation system 206 provides a merchant-based publishing platform that enables merchants to select specific media coverage associated with a geographic location through a bidding process. For example, the annotation system 206 associates the media coverage of the merchant with the highest bid with the corresponding geographic location within a predetermined amount of time.

[0055] Figure 3 is a schematic diagram illustrating data 300 that may be stored in a database 120 of a social media application server system 108 according to certain example embodiments. Although the contents of the database 120 are illustrated as including a plurality of tables, it is understood that the data may also be stored in other types of data structures (e.g., as an object-oriented database).

[0056] The database 120 includes message data stored in a message table 314. The entity table 302 stores entity data including an entity graph 304. The entity (the record of which is maintained in the entity table 302) may include a person, a corporate entity, an organization, an object, a place, an event, etc. Regardless of the type, any entity for which the social media application server system 108 stores data may be an identified entity. Each entity has a unique identifier and an entity type identifier (not shown).

[0057] The entity graph 304 also stores information about the relationships and associations between entities. By way of example only, the relationships may be social, professional (e.g., working in a common company or organization), interest-based, or activity-based.

[0058] The database 120 also stores annotation data in the annotation table 312, for example, including filter forms. The filter (whose data is stored in the annotation table 312) is associated with a video (whose data is stored in the video table 310) and / or an image (whose data is stored in the image table 308) and is applied to the video and / or image. In one example, a filter is an overlay displayed as an overlay on an image or video during presentation to a recipient user. The filter can be of various types, including a user-selected filter in a filter library presented to a sending user by the social media client application 104 when the sending user is writing a message. Other types of filters include geographic location filters (also referred to as geographic filters), which can be presented to the sending user based on the geographic location. For example, the social media client application 104 can present a geographic location filter specific to a neighborhood or a specific location in a user interface based on geographic location information determined by a global positioning system (GPS) unit of the client device 102. Another type of filter is a data filter, which may be selectively presented to the sending user by the social media client application 104 based on other input or information collected during the message creation process by the client device 102. Examples of data filters include the current temperature at a particular location, the current speed the sending user is traveling, the battery life of the client device 102, or the current time.

[0059] Other annotation data that may be stored in the image table 308 is so-called "shot" data. A "shot" may be real-time special effects and sounds that may be added to an image or video.

[0060] Another annotation data that can be stored in the annotation table 312 is a user-generated annotation or enhancement provided by the user to overlay the underlying photo image or video. The enhancement / annotation can include, for example, textual annotations and graphical annotations or enhancements provided by the user (e.g., via a client device touch screen).

[0061] As mentioned above, the video table 310 stores video data, which in one embodiment is associated with messages (whose records are maintained within the message table 314). Similarly, the image table 308 stores image data associated with messages (whose message data is stored in the message table 314). The entity table 302 can associate various annotations from the annotation table 312 with various images stored in the image table 308 and various videos stored in the video table 310.

[0062] The story table 306 stores data about a collection of messages and related image, video or audio data that are compiled into a collection (e.g., a SNAPCHAT story or library). The creation of a particular collection can be initiated by a particular user (e.g., any user whose record is maintained in the entity table 302). A user can create a "personal story" in the form of a collection of content that the user has created and sent / broadcast. To this end, the user interface of the social media client application 104 may include a user-selectable icon to enable the sending user to add specific content to his or her personal story. In the context of this specification, the messages and stories / libraries are understood to be for private consumption, limited to viewing by a specific user identified by the submitting user or a user who is a member of the submitting user's social network via a social media application. This will be in contrast to social media items provided to public or non-private consumption via a social media application, which is not limited to a user-specific or user-specified subset of all users of the social media application. An example of a publicly viewable collection or library is "Live Stories" or "Our Stories."

[0063] As mentioned, a collection may also constitute a "live story," which is a collection of content from multiple users that is created manually, automatically, or using a combination of manual and automatic techniques. For example, a "live story" may constitute a curated stream of user-submitted content from various locations and events. For example, a user whose client device has location services enabled and is at a common event location at a particular time may be presented with an option via a user interface of a social media client application 104 to contribute content to a particular live story. Live stories may be identified by the social media client application 104 for a user based on his / her location. The end result is a "live story" told from a public perspective. According to some example embodiments of the present disclosure, a submitting user may submit a social media item or message to a non-specific public live story. The content may be accessible to other users via a map-based graphical user interface, where the social media item or message may be accessed via a map GUI based on a corresponding location indicated by corresponding geo-tag data, by forming part of a location-based library or story, or by other users using a location-based search mechanism to form part of a map GUI.

[0064] Another type of content collection is called a "location story," which enables users whose client devices 102 are located within a particular geographic location (e.g., on a college or university campus) to contribute to a particular collection. In some embodiments, contributions to location stories may require secondary authentication to verify that the end user belongs to a particular organization or other entity (e.g., is a student on a college campus). In some embodiments of the present disclosure, messages uploaded to Live Stories or Our Stories are typically automatically or semi-automatically included in a location story based on at least a portion of the geotag data of the message, without the user specifying a particular location story in which the message will be included.

[0065] According to some embodiments of the present disclosure, the map tile table 320 stores a plurality of map tiles that can be used to present a map in a map viewport of a map-based GUI. In a specific example embodiment, each map view consists of 9 or 16 map tiles stitched together. Multiple map tile groups can be maintained for different map zoom levels. In some example embodiments, a superset of map tiles is maintained on the server side and forwarded to the requesting client device 102 for use in composing a map representation of a specific requested area.

[0066] The user location table 326 stores current or recent user location data for a plurality of users of the social media application. The user location data may be based on location data received from the respective client devices 102 associated with the respective users. In some example embodiments, the user location data is used to display the respective locations of a plurality of users in a map-based GUI, the plurality of users forming part of the requesting user's social network and / or having provided the requesting user with permission to view their locations. Each of the users may be represented on a map forming part of the map GUI by a respective user icon or bitmoji.

[0067] Figure 4 1 is a schematic diagram illustrating the structure of a social media item or message 400 generated by one instance of a social media client application 104 for communication with another instance of a social media client application 104 or a social media server application 114 according to some embodiments. The content of a particular message 400 is used to populate a message table 314 stored in a database 120 accessible by a social media server application 114. Similarly, the content of the message 400 is stored in memory as "in transit" or "in-flight" data of a client device 102 or application server 112. The message 400 is shown to include the following components:

[0068] Message identifier 402 : a unique identifier that identifies the message 400 .

[0069] Message text payload 404 : text to be generated by a user via the user interface of the client device 102 and included in the message 400 .

[0070] Message image payload 406 : Image data captured by a camera component of the client device 102 or retrieved from a memory of the client device 102 and included in the message 400 .

[0071] Message video payload 408 : Video data captured by a camera component or retrieved from a memory component of the client device 102 and included in the message 400 .

[0072] Message audio payload 410 : audio data captured by a microphone or retrieved from a memory component of the client device 102 and included in the message 400 .

[0073] Message annotation 412: Annotation data (eg, filter, sticker, or other enhancement) representing an annotation to be applied to the message image payload 406, message video payload 408, or message audio payload 410 of the message 400.

[0074] Display duration parameter 414: A parameter value indicating the amount of time, in seconds, that the message content (e.g., message image payload 406, message video payload 408, and message audio payload 410) will be presented to or accessible by the user via the social media client application 104. Display duration parameter 414 is also referred to herein as a "display duration timer."

[0075] Message geolocation parameters 416: Geolocation data or geotag data (e.g., latitude and longitude coordinates) associated with the content payload of the message 400. Multiple message geolocation parameter 416 values ​​may be included in the payload, with each of these parameter values ​​being associated with a respective content item included in the content (e.g., a specific image in the message image payload 406 or a specific video in the message video payload 408).

[0076] Message story identifier 418: An identifier value used to identify one or more content collections (e.g., "stories") that are associated with a particular content item in the message image payload 406 of the message 400. For example, multiple images within the message image payload 406 may each be associated with multiple content collections using an identifier value. In some embodiments, examples of this message story identifier 418 may include one or more thumbnail images.

[0077] Message tags 420: Each message 400 may be tagged with a plurality of tags, each tag indicating the subject of the content included in the message payload. For example, where a particular image included in the message image payload 406 depicts an animal (e.g., a lion), a tag value indicating the relevant animal may be included within the message tags 420. The tag values ​​may be manually generated based on user input or may be automatically generated using, for example, image recognition.

[0078] Message sender identifier 422 : An identifier (eg, a messaging system identifier, an email address, or a device identifier) ​​that indicates the user of the client device 102 on which the message 400 was generated and from which the message 400 was sent.

[0079] Message recipient identifier 424: An identifier (eg, a messaging system identifier, an email address, or a device identifier) ​​that indicates the user of the client device 102 to which the message 400 is addressed.

[0080] The content (e.g., value) of the various components of message 400 may be pointers to locations in a table storing content data values. For example, the image value in message image payload 406 may be a pointer to a location (or its address) within image table 308. Similarly, the value in message video payload 408 may point to data stored within video table 310, the value stored in message annotation 412 may point to data stored in annotation table 312, the value stored in message story identifier 418 may point to data stored in story table 306, and the values ​​stored in message sender identifier 422 and message receiver identifier 424 may point to user records stored in entity table 302.

[0081] Figure 5 is a schematic diagram illustrating an access restriction process 500, according to which access to content (e.g., a short message 502 and associated multimedia data payload) or a collection of content (e.g., a short message story 504) can be time-restricted (e.g., short-term).

[0082] The short message 502 is shown as being associated with a display duration parameter 506, the value of which determines the amount of time that the short message 502 is displayed by the social media client application 104 to the receiving user of the short message 502. In one embodiment, where the social media client application 104 is a SNAPCHAT client application, the short message 502 may be viewed by the receiving user for up to 10 seconds, depending on the amount of time specified by the sending user using the display duration parameter 506. In some embodiments, the system automatically appends a default display duration parameter 506 to a photographic or still image message, such as having a default display duration of 5 seconds. The display duration parameter 506 of a video-based message may automatically correspond to the duration of the underlying video, with an automatically implemented upper limit. Thus, in an example embodiment where a 10-second upper limit is implemented, a 7-second video message will have a display duration parameter of 7 seconds.

[0083] The display duration parameter 506 and the message recipient identifier 424 are shown as being input to a message timer 512, which is responsible for determining the amount of time that the short message 502 is displayed to the specific receiving user identified by the message recipient identifier 424. In particular, the short message 502 will only be displayed to the associated receiving user for a period of time determined by the value of the display duration parameter 506. The message timer 512 is shown as providing an output to a more general short timer system 202, which is responsible for the overall timing of displaying content (e.g., short message 502) to the receiving user.

[0084] exist Figure 5502 is shown in the figure, which will be included in the social media library in the form of a short message story 504 (e.g., a personal SNAPCHAT story or an event story). The short message story 504 has a story duration parameter 508, and the value of the story duration parameter 508 determines the duration for which the short message story 504 is available and accessible to users of the social media platform system 100. For example, the story duration parameter 508 may be the duration of a music concert, where the short message story 504 is a collection of content related to the concert. Alternatively, when performing the establishment and creation of the short message story 504, the user (owner user or curator user) can specify the value of the story duration parameter 508. In some embodiments, the story duration parameter 508 is determined at least in part based on the corresponding story participation parameter 510 (or lifetime) of one or more short messages 502 that form part of a particular short message story 504. In an example embodiment, the story duration parameter 508 corresponds to the story participation parameter 510 or lifetime of the last short message 502 in the related short message story 504. In this case, the short message story 504 expires (e.g., by becoming unavailable for viewing via the social media platform) when the last published short message 502 expires (e.g., when the story engagement parameter 510 or lifetime of the last short message 502 expires).

[0085] As mentioned above, each short message 502 within a short message story 504 has an associated story participation parameter 510 (also referred to herein as a "library participation parameter" or "library participation timer"), the value of which determines the duration for which the short message 502 can be accessed within the context of the short message story 504. Thus, a particular short message 502 may "expire" and become inaccessible within the context of the short message story 504 before the short message story 504 itself expires according to the story duration parameter 508. Each of the story duration parameter 508, the story participation parameter 510, and the message recipient identifier 424 provide input to the story timer 514, which first operatively determines whether a particular short message 502 of the short message story 504 will be displayed to a particular receiving user, and if so, how long to display it. Note that, by virtue of having the message recipient identifier 424, the short message story 504 also knows the identity of the particular receiving user.

[0086] Thus, in some embodiments, the story timer 514 operatively controls the overall lifespan of the associated short message story 504 and the individual short messages 502 contained in the short message story 504. In one embodiment, each and all of the short message stories 504 remain visible and accessible for a period of time specified by the story duration parameter 508. In another embodiment, certain short messages 502 may expire within the context of the short message story 504 based on the story engagement parameter 510. Note that even within the context of the short message story 504, the corresponding display duration parameter 506 may still determine the duration for which a particular short message 502 is displayed to a receiving user upon playback of the short message 502. Thus, the display duration parameter 506 determines the duration for which a particular short message 502 is displayed to a receiving user, regardless of whether the receiving user is viewing the short message 502 within or outside the context of the short message story 504.

[0087] The short timer system 202 may also be operable to remove a particular short message 502 from the short message story 504 based on determining that the associated story engagement parameter 510 has been exceeded. For example, when the sending user has established a story engagement parameter 510 of 24 hours from posting, the short timer system 202 will remove the associated short message 502 from the short message story 504 after the specified 24 hours. The short timer system 202 also operates to remove the short message story 504 when the story engagement parameter 510 of each and all short messages 502 within the short message story 504 has expired, or when the short message story 504 itself has expired according to the story duration parameter 508. Note that in the present disclosure, at least some short messages 502 may be submitted by a user to the social media application for general or public viewing via the map-based GUI without being included by the user in any particular event gallery and without being included in any location-based gallery represented by a corresponding gallery icon on the map GUI. In some embodiments, the short message 502 also has a corresponding story participation parameter 510 that specifies a time period during which the short message 502 is accessible as part of a collective live story or our story via the map GUI, as described below with reference to certain example embodiments. In certain example embodiments, each short message 502 submitted for public or non-private viewing therefore has a default gallery participation parameter or story participation parameter 510 of 24 hours. Thus, the short message 502 is only viewable via the map GUI within 24 hours of submission.

[0088] In some use cases, the creator of a particular short message story 504 may specify an indefinite story duration parameter 508. In this case, the expiration of the story engagement parameter 510 for the last remaining short message 502 within the short message story 504 will determine when the short message story 504 itself expires. In this case, a new short message 502 with a new story engagement parameter 510 added to the short message story 504 effectively extends the life of the short message story 504 to a value equal to the story engagement parameter 510.

[0089] In response to the short timer system 202 determining that the short message story 504 has expired (e.g., is no longer accessible), the short timer system 202 communicates with the social media platform system 100 (and, for example, specifically, the social media client application 104) so ​​that the indicia (e.g., icon) associated with the relevant short message story 504 is no longer displayed within the user interface of the social media client application 104. Similarly, when the short timer system 202 determines that the story engagement parameters 510 of a particular short message 502 have expired, the short timer system 202 causes the social media client application 104 to no longer display the indicia (e.g., icon or text logo) associated with the short message 502.

[0090] Example Embodiment of Map GUI Functionality

[0091] First, the various aspects and features of the present disclosure will be directed to reference Figure 6A-11B The specific example embodiments discussed and illustrated therein are described conceptually.

[0092] Map-based GUI architecture

[0093] Fig. 6AAn example embodiment of a map-based graphical user interface (also referred to as a map GUI 612) displayed on a client device 102 in the example form of a mobile phone is shown. In this example embodiment, the map GUI 612 is generated on a display in the form of a touch screen 606 capable of receiving tactile input. The map GUI 612 includes an interactive map 618, which shows a stylized aerial or satellite representation of a specific geographic area. The map 618 is displayed in a map viewport 621, which uses the entire available area of ​​the touch screen 606 in this example embodiment. In other example embodiments, the map viewport 621 can be a bordered panel or window in a larger display screen. The map GUI 612 also includes a plurality of user-selectable graphical user interface elements displayed at specific individual geographic locations on the map 618. In this example embodiment, each such geographically anchored GUI element is represented by individual marks or icons overlaid on the map 618. Different types of icons and their respective functions will be described in more detail below. As will also be briefly described, the map GUI 612 may further include one or more information overlays rendered on the base geographic map 618, which in this example embodiment includes a heat map 625 representing the geographic distribution of base social media activity on the social media platform provided by the associated social media application.

[0094] As mentioned above, the map GUI 612 includes a plurality of different user-selectable icons or UI elements indicating different geographic-based content or information. In this example embodiment, the map GUI 612 includes a plurality of different library icons, also referred to as "story icons" in this specification. The location of each story icon on the map 618 corresponds to a corresponding location-based social media library or collection, in this example embodiment, corresponding to a story of location-based short messages in the example form of so-called "snaps", as discussed elsewhere herein. Each of these stories represented by a corresponding story icon on the map 618 includes a corresponding set of snapshots (including enhanced or unenhanced photos or video content, respectively), which are aggregated together based at least in part on corresponding geotag data associated with the corresponding snapshots.

[0095] exist Fig. 6AIn an example embodiment, the map GUI 612 includes two different types of gallery icons for two different types of location-based social media galleries, namely a location icon 631 for a location gallery / story and a spike icon 633 for a spike gallery / story, the spike icon 633 being dynamically presented on the map GUI 612 based on one or more metrics of underlying social media activity associated with social media items / snapshots submitted to the social media platform with geo-tagged data indicating the corresponding associated geographic area. Note that these different types of galleries are represented by different types of icons 631, 633. The distinction between these different types of galleries and the corresponding visually different gallery icons 631, 633 will be discussed below. In this example embodiment, the map GUI 612 further includes a friend icon in the example form of a bitmoji 640, which is displayed on the map GUI 612 based on the current or most recently known geographic location of each friend of the user associated with the client device 102.

[0096] Short-lived nature of news and / or stories

[0097] In this example embodiment, the social media items that can be selectively played by selecting the corresponding story icons 631, 633 in the map GUI 612 are short-term social media items or messages. As previously described, short-term content is social media content (e.g., enhanced and / or unenhanced video clips, pictures and / or other messages) that can be used to be viewed by social media users via the map GUI 612 only within a predetermined limited time period, which can also be referred to as a corresponding library participation parameter or timer in this article. After the corresponding library participation parameter or timer of any short message or snapshot uploaded by a particular user expires, other users can no longer view the short message or snapshot via the map GUI 612 generated on their corresponding client device 102. Examples of this short-term social media content include individual snapshots or messages contained in the so-called "story" in the SNAPCHAT or INSTAGRAM social media application.

[0098] Instead of or in addition to managing the temporality of each snapshot level using a corresponding library participation timer, in some cases, the availability of temporal messages for the map GUI 612 may also be centrally managed (e.g., for each story level). In this case, each story may have a corresponding story duration parameter 508 (e.g., which is based on a corresponding story timer 514, see Figure 5), when the story duration parameter 508 expires, viewing of the corresponding story via the map GUI 612 is terminated. In some embodiments, the story duration parameter 508 is calculated based on the story engagement parameter 510 of one of the short messages included in the related story. For example, in some embodiments, a story may expire when the last uploaded item in the story expires, and in response to the story expiration, the corresponding story icon 631, 633 is no longer displayed on the map GUI 612. In an example embodiment, the map GUI 612 may include one or more event icons corresponding to the corresponding event story (e.g., similar in appearance to the event story). Fig. 6A 631 ), wherein the story duration parameter 508 of the event story is set to expire after a predetermined time period from the start or end of the base event. Upon expiration of the story duration parameter 508, the corresponding library icons 631, 633 are removed from the map GUI 612 regardless of the respective timers associated with the respective snapshots included in the event story.

[0099] Story Replay

[0100] The user may select any of the library icons 631, 633 by making tactile contact with the touch screen 606 at the on-screen location of the selected library icon 631 / 633. In response to the selection, automatic sequential playback of the corresponding set of short messages or snapshots in the selected story is performed by the client device 102 on the touch screen 606. The automatic sequential playback of the selected story includes:

[0101] - displaying the content or media payload of the first short message on the touch screen 606 for a corresponding display duration (e.g., a default value of 5 seconds for photo-based messages and a maximum of 10 seconds for video-based snapshots), in this example embodiment temporarily replacing the map GUI 612 on the touch screen 606 with full-screen playback of the associated snapshot;

[0102] - upon expiration of the display duration, displaying the content of the next snapshot / message for its display duration; and

[0103] - Thus, all snapshots in the selected story are processed sequentially until all snapshots in the story have been played, or until the user selectively cancels the play sequence.

[0104] In some embodiments, not all snapshots in a particular story / library must be included in the playback sequence. For example, if there are many overlapping snapshots (e.g., snapshots showing substantially the same content), some of these snapshots are automatically skipped to maintain a continuous narrative and not repeat certain portions of the event that are commonly captured by different snapshots. Alternatively or additionally, in some embodiments, the social media server application 114 can be automatically programmed to identify and curate overlapping or concurrent snapshots based on timestamp information associated with the corresponding snapshots.

[0105] In this example embodiment, the snapshots that are automatically collected together in a replayable spike story or location story are arranged to be automatically played back in chronological order based on the corresponding timestamps (e.g., played in order from earliest to latest or played in order from earliest published to most recently published). The benefit of this chronological playback is that viewing the story provides the user with a sequentially arranged picture of events that occurred at the relevant locations. However, in some cases, the curator may choose to rearrange the snapshots so that they are not in chronological order, for example to improve the narrative flow of the story. In other embodiments, the snapshots can be played in reverse chronological order from newest to earliest.

[0106] Thus, it can be seen that the example map GUI 612 includes a plurality of location-based gallery icons in the example form of story icons 631, 633 that are selectable by a user to trigger playback of a respective collection of ephemeral social media items, which in this example embodiment are respective ephemeral stories including respective sets of ephemeral messages (also referred to herein as "snapshots"). In this example embodiment, each of the plurality of location-based stories represented by respective story icons 631, 633 may include media content contributed by a plurality of different users.

[0107] Our stories and short messages about our stories

[0108] In this example embodiment, respective short stories are compiled from short messages submitted by a plurality of users based at least in part on the geo-tags of the respective snapshots. Note that in this example embodiment, the short messages available for viewing via the map GUI 612 are not limited to content provided by other users who are members of the in-application social network of the user on whose client device 102 the map device GUI 612 is generated. Rather, in this example embodiment, the social media content that the map GUI 612 allows access to is provided through snapshots uploaded or submitted by any user and will be publicly accessible via the map GUI 612.

[0109] One aspect of the exemplary map GUI 612 provides the user with the ability to submit publicly viewable social media content via the map GUI 612. Simply turn to Fig. 7A, which shows an example embodiment of a destination selection interface 707 forming part of a map GUI 612 to provide a mechanism for presenting a user with selectable options that are publicly viewable via the map GUI 612 when a snapshot is captured.

[0110] In this example embodiment, when the camera soft button 650 ( Fig. 6A ) operation displays the map viewport 621 (such as Fig. 6A ), a snapshot can be captured via the map GUI 612. After capturing a photo or video content by operating the camera soft button 650, the captured media content is displayed on the touch screen 606 ( Fig. 7A In this example embodiment, the user can select Fig. 7A One or two destination options identified in Fig. 7A 612 by respective radio buttons 714, 721. By selecting the "Our Story" radio button 721 and then selecting the "Send" soft button 728, the user may submit the snapshot to the application server 112 via the network 106 and indicate that the snapshot is available for non-private disclosure via the map GUI 612. If the user does not tag the snapshot, e.g., the snapshot is associated only with the selection of the "My Story" radio button 714, the snapshot is not available for inclusion in any story associated with the story icons 631, 633 and is not available for inclusion in search results of location-based searches via the map GUI 612, as described below. Snapshots included only in the "My Story" library are available only to friends of the user (e.g., members of the uploading user's social network). The "My Story" library is a library of each user's location-independent short messages that are available only to friend users and is therefore a non-public or private library.

[0111] In other example embodiments described herein, the superset of short messages that are viewed by multiple users via the map GUI 612 for public viewing may alternatively be referred to as a "live story" or simply a "live" library. For the purposes of describing the example embodiments herein, "live stories" and "our stories" should therefore be understood as synonyms. In this example embodiment, the compilation and / or presentation of the library icons 631, 633 and the rendering of the heat map 625 are entirely based on the publicly available social media content provided by the snapshots uploaded to our stories. In this example embodiment, the calculation of the metrics or attributes of social media activity (e.g., unique or anomaly metrics that indicate geo-temporal uniqueness or anomalies of social media activity within a corresponding geographic area) on which one or more aspects of the map GUI 612 are based is also entirely based on snapshots uploaded to our stories.

[0112] Visual differences between story icons for different story types

[0113] Returning now to the visual distinction or difference between the different types of gallery icons 631, 633, note that in this example embodiment, each gallery icon 631 / 633 includes a circular user interface element with a thumbnail provided by one of the snapshots contained in the corresponding story. However, each location icon 631 also includes an associated label 635 with a textual indication of the associated location. In this example embodiment, the labels 635 indicate that the corresponding locations of the location story presented in the geographic window currently displayed in the example map 618 are Rockefeller Center, Bryant Park, and the Empire State Building, respectively.

[0114] In other example embodiments, visual distinctions between different types of story icons may be provided in different ways. Figure 6B Shows something like Fig. 6A Another example embodiment of the map GUI 612 of the example embodiment of FIG. The main difference between the two is that the visual difference between the location icon 631 and the peak icon 633 is at least partially provided by the thumbnail images of different shapes. Figure 6B In the example of , the thumbnail of the location icon 631 is rectangular, while the thumbnail of the peak icon 633 is circular.

[0115] exist Fig. 6A and Figure 6B In an example embodiment of , the respective thumbnail images for the spike icon 633 are automatically selected by the social media server application 114. In this case, the thumbnail image for the spike icon 633 is automatically selected based on the time of publication of the respective snapshots that form part of the corresponding spike story, in this case the most recently published snapshot in the relevant story. In other embodiments, the automatic selection of the thumbnail image to be used in the spike icon 633 may be based on selecting the earliest published short message / snapshot that is still viewable as part of the spike story. In some embodiments, the thumbnail image for the location icon 631 (or icons associated with other curated stories (e.g., event stories)) may be similarly automatically selected. However, in this embodiment, the thumbnail image for the location icon 631 may be selected by an operator from the snapshots included in the corresponding story / library via a content management interface that forms part of the social media server application 114. In the absence of an explicit designation of a particular snapshot to be used for the thumbnail image, the thumbnail selection may revert to an automatic default selection, as previously described.

[0116] The difference between different story types

[0117] Placement Story

[0118] Back to Fig. 6A, the differences between the different types of social media libraries or stories accessible via the corresponding story icons 631 , 633 on the map GUI 612 will now be briefly discussed.

[0119] The place stories represented by the corresponding place icons 631 are social media galleries for defined places or locations, which are typically locations that consistently have a relatively large amount of activity (e.g., Times Square, Universal Studios, etc.). Note that in this example embodiment, not all defined locations are presented by default in the map GUI 612 via the corresponding place icons 631. Instead, geo-anchored location stories are presented based on the amount of activity (e.g., the raw number of uploaded snapshots) collected within a defined geographic area (as indicated by the associated geotag data) associated with the relevant location. This can ensure that locations that regularly or consistently attract a large number of snapshots are identified on the map 618.

[0120] In this example embodiment, the defined locations are used by one or more operators to communicate with the server-side social media platform system 1200 ( Fig.12 ) provided by the server-side library management system or content management system (CMS) 1224, and the location icons 631 of the defined locations are presented in the map GUI 612. In this example embodiment, each defined location has:

[0121] (a) an associated operator-defined polygon marking the geographic boundaries of the location, which specifies the specific geographic area of ​​the location story;

[0122] (b) a thumbnail location or icon location, typically within an associated polygon, that specifies the on-map location of a location icon 631 for the gallery or story associated with the location displayed in map 618; and

[0123] (c) A name identifying the location. Fig. 6A In the example embodiment of , this is the name displayed on the associated label 635 of the location icon 631.

[0124] In other embodiments, the location and related location stories are automatically identified from a historical snapshot volume. In some such embodiments, defined locations and their related stories / libraries are automatically created and curated by a server-side process.

[0125] In some cases, each location story includes all snapshots with geo-tagged information indicating geographic locations within the associated polygon. In this case, (e.g., Fig. 6AIn the example embodiment of , selection of a particular location icon 631 (either by clicking in a desktop application or by tapping on the touch screen 606) plays all snapshots from within the corresponding polygon. In this example embodiment, the CMS 1224 provides the operator or administrator with the ability to curate a collection of snapshots associated with any operator-selected defined location (e.g., a particular geographic area defined by the corresponding polygon). Thus, an operator or one or more automated processes can, for example, delete a single snapshot from a location story, or can choose to include a single snapshot in a location story.

[0126] When a snapshot is played in response to selection of a location icon 631, the name of the location is presented on the screen along with the playback content or payload of the corresponding snapshot. As mentioned, in this example embodiment, the snapshot represented by the corresponding thumbnail within the associated location icon 631 is played first, and then the remaining snapshots are played in chronological order.

[0127] Peak Story

[0128] Unlabeled circular spike icons 633 are automatically presented for particularly active geographic areas, with the corresponding associated spike stories or ephemeral libraries including unexpired snapshots within the relevant geographic area. Fig. 6A In an example embodiment of the present invention, all ad hoc libraries associated with a spike icon 633 are unmoderated, such that selection of a spike icon 633 triggers an automatic sequential replay of all snapshots within a geographic region associated with the spike icon 633. In a specific example embodiment, the geographic region associated with the spike icon 633 includes all geographic location points within a predetermined radius of the on-map location of the selected spike icon 633.

[0129] Thus, clicking or tapping the spike icon 633 will play all of the snapshots in that cluster, displaying the snapshots in the thumbnail first, and then displaying the remaining snapshots in chronological order. Note again that in this example, the snapshots clustered under the common spike icon 633 were uploaded to our stories by multiple different respective social media users and are not curated by the moderator. In other embodiments, the stories collected under the spike thumbnail may be curated.

[0130] In this example embodiment, the automatic selection of the spike icon 633 (and therefore the associated social media library, collection or story) for presentation in the map GUI 612 is based at least in part on the calculation of corresponding abnormal or unique metric values ​​for different geographic regions. Therefore, in this case, a higher level of abnormality or uniqueness of user activity in a specific geographic time will increase the possibility of presenting a specific spike story on the map GUI 612 by displaying the corresponding spike icon 633. As mentioned above, the abnormality metric provides an indication of the geographical time abnormality or unique level of social media activity. In some embodiments, the calculation of the abnormality metric may include calculating the level or percentage of the difference between the historical activity level in a given area and the activity level in the current time window. It is understood that the coloring of the heat map and the content presentation increase with the increase of the positive abnormality level (i.e., indicating abnormally high social media activity). It should also be noted that in some embodiments, the social media activity metric based on which the heat map generation and / or content presentation is based is a combination of factors including the abnormality metric. In a specific example embodiment, the social media activity metric is provided by a combination of the original activity metric and the abnormality metric.

[0131] Alternatively or additionally, curators may also tag specific spike stories or clusters as "interesting" via CMS 1224, thereby increasing the anomaly or uniqueness score of the corresponding spike.

[0132] Note that in reference Fig. 6A In the described example embodiment, different social media activity attributes or metrics are used to present the location icon 631 and the peak icon 633, respectively. As discussed, in this example embodiment, the peak icon 633 is presented based on the abnormality metric value, while the location icon 631 is presented based on the raw snapshot amount. In other embodiments, the presentation of the location icon 631 may also be based at least in part on the relevant abnormal value. Note that in some embodiments, various aspects of the social media presentation described herein (including heat map calculation and generation, story presentation, etc.) are based on attributes other than abnormalities. For example, in one embodiment, the heat map 625 and story presentation are based on the raw activity level. Therefore, in other embodiments, the various aspects of the present disclosure discussed herein related to information coverage (e.g., heat map 625) and content presentation based on abnormality metrics are understood to be performed based on different social media activity values ​​(such as, the number of raw snapshots, snapshot frequency, snapshot density, etc. in a given time period).

[0133] Stories or other types of short-lived social media libraries

[0134] Other embodiments may alternatively or additionally be provided with reference to Fig. 6A and 6BThe described location stories and spike stories are different types of social media galleries. Each such different type of gallery can be represented on the map 618 by a visually different type of icon or other user interface element.

[0135] An example embodiment provides an event library related to a specific event occurring at a specific location. The event may include, for example, a concert, a festival, a sporting event, etc. In one embodiment, these event libraries are created and curated by an operator using CMS 1224.

[0136] Some embodiments provide for presenting story icons or thumbnails associated with non-public snapshots on the map 618, such as snapshots or stories that are restricted from access based at least in part on social network information. For example, in some embodiments, individual stories uploaded by friend users may be represented on the map 618 by corresponding icons or thumbnails. For example, a friend user's "My Story" may be accessed directly via the map 618 in some embodiments. In some embodiments, the story icon is indicated by a corresponding friend icon or bitmoji 640, which is located on the map 618 at a location corresponding to the location where the corresponding story was generated. In other embodiments, each such user story icon may be indicated on the map GUI 612 by a circular thumbnail similar to the example story icons 631, 633 described previously.

[0137] Snap submissions for user-selected location-based stories

[0138] Another feature of the present disclosure enables users to submit publicly viewable snapshots designated for inclusion in any and all live stories or ephemeral libraries, which may have occurred at a location that the user is eligible to post (e.g., geographically proximate to the user's current location as indicated by the associated client device 102). In this way, users can designate snapshots for inclusion in location stories, event stories, or other location-based ephemeral social media libraries as mentioned above.

[0139] Figure 7B and 7C An example embodiment of a destination selection interface 707 providing a mechanism for destination selection is shown, replacing the previous reference Fig. 7A In response to a user initiating a snapshot submission process (eg, by capturing a snapshot), displaying a snapshot on the client device 102 Figure 7B The destination selection interface 707 is shown.

[0140] Figure 7B The destination selection interface 707 and Fig. 7ASimilar to the destination selection interface 707 in the example embodiment of , two different user-selectable user interface elements in the form of corresponding radio buttons 714, 721 are presented to publish the snapshot to the user-specified My Story (radio button 714) or to the publicly viewable Our Story (radio button 721). Fig. 7A Destination selection interface 707 and Figure 7B The differences between the destination selection interface 707 are: Figure 7B The Our Stories cell in the Stories app automatically expands based on selection of radio button 721 to display subheadings of local location stories and / or event stories to which a snapshot can be submitted based on the associated snapshot's geotag or device location.

[0141] Figure 7C Additional options are shown that are presented as a result of selecting the "Our Stories" radio button 721, which opens a list showing corresponding local stories for which the snapshot is eligible. In this example embodiment, all sub-options are selected by default via corresponding radio buttons 750. In other embodiments, individual sub-options may need to be selected separately. If the user chooses to submit a snapshot of all options selected, the snapshot is automatically associated with each of the selected sub-options and made available as part of "Our Stories" for geo-location based viewing, separate from any curated place-based location or event gallery / stories, as described above.

[0142] The user can deselect any particular sub-option by clicking or tapping the corresponding default selected radio button 750, such as Figure 7C As shown, the bottommost sub-option has been deselected. If all sub-options are deselected, the snapshot is not published to any curated location-based story, but only to our story so that it can be publicly viewed via the map GUI 612, as described elsewhere herein.

[0143] Heatmap considerations

[0144] like Fig. 6AAs shown, in this example embodiment, the social media application map GUI 612 includes a heat map layer overlaid on the geographic map 618, thereby providing a heat map 625 indicating the geographic distribution of one or more attributes of user activity within the social media application. As previously discussed, the heat map 625 indicates the user activity level with respect to posting publicly viewable geotagged content (e.g., live stories / our stories). Alternatively or additionally, in some embodiments, the heat map 625 may be based on snapshots available for viewing by a particular user, where the map GUI 612 is displayed on the client device 102 of the particular user, in which case the heat map 625 may be different depending on who has authorized the viewer to view his snapshots.

[0145] In this example embodiment, map 618 is color coded with warmer colors corresponding to higher levels of abnormality (as indicated by higher abnormality metric values). Fig. 6A In the illustrated map 618, the red areas of the heat map 625 indicate the geographic areas having snapshot clusters corresponding to the highest abnormality metric values. Again, in other embodiments, different metrics or attributes for generating the heat map 625 may be used, such as based on acquisition density (e.g., the raw amount of acquisitions per unit area of ​​the map 618).

[0146] In some embodiments, the map GUI 612 displays information related to the heat map 625 at different magnification levels. For example, in some embodiments, the calculation of the abnormality metric and the subsequent rendering of the heat map 625 based on the abnormality metric are performed separately for each zoom level in the plurality of zoom levels. In addition, different groups of spike icons 633 can be presented at different magnification levels. In an example embodiment, the heat map 625 can be displayed at a first zoom level in the map GUI 612 without presenting a separate spike icon 633, while a plurality of gallery or story icons 631, 633 are automatically presented in response to a user-controlled zoom in on a particular portion of the map 618 shown at the first zoom level.

[0147] Abnormality metric calculation

[0148] In this example embodiment, some features of the map GUI 612 provide for calculating an anomalousness metric that quantifies the anomalies or uniqueness of a geographic space of social media content relative to the social media content, and for presenting the social media content in the map GUI 612 based on the corresponding values ​​of the anomalousness metric. In this example embodiment, respective collections of snapshots associated with different geographic locations are sorted based at least in part on the corresponding anomalousness metric values, and a predetermined number of collections are automatically selected based on the anomalousness levels of the collections of snapshots for presentation on the map GUI 612 with corresponding spike icons 633. Alternatively or additionally, all spike stories having positive anomalousness metric values ​​above a predetermined threshold (i.e., reflecting unusually high activity, rather than low activity) may be automatically presented through display of corresponding spike icons 633. As described elsewhere herein, in some embodiments, the calculation and display of heat map information is based at least in part on the anomalousness metric calculation.

[0149] In some embodiments, the abnormality metric may be calculated for a single social media item. However, in this example embodiment, the abnormality metric is calculated for a collection of user behaviors. Specifically, the abnormality metric is calculated for multiple snapshots (which are corresponding geotagged social media submissions in this example) based on a comparison between the geo-temporal distribution of the multiple snapshots and the historical geo-temporal social media behaviors in or around the relevant geographic locations.

[0150] Note that in this example embodiment, the calculation of the abnormality metric is time-sensitive. Thus, at a particular location, the same volume of snapshots may be identified as abnormal at one time of day, but not at another time. For example, at the Empire State Building, a certain level of social media activity (here, the posting of snapshots for "Our Stories") would be flagged as abnormal above a threshold at 4 a.m., but would not be identified as abnormal during the day.

[0151] One aspect of the present disclosure provides for determining one or more geo-temporal attributes of social media activity by a process that includes, for each of a plurality of social media posts, representing the post as having a temporal and / or spatial distribution. In some embodiments, representing the respective posts as having a geo-temporal distribution includes viewing the respective social media items as a probability cloud, e.g., having a Gaussian distribution. Alternatively or additionally, the method may include generating or extrapolating a historical model or historical representation of social media activity based at least in part on a resampling process performed on a diversity of social media items having historical geo-tags. In an example embodiment, the resampling process includes a bootstrapping operation.

[0152] In some embodiments, representing social media posts as having corresponding temporal and / or spatial distributions is performed as part of the operation of a geo-temporal reference profile or model for representing historical social media activity for a particular geographic area. Alternatively or additionally, representing social media posts as having corresponding temporal and / or spatial distributions may be performed as part of a process for representing recent or near live social media activity in a particular geographic area. In this case, the geo-temporal reference profile and the representation of recent or near live social media activity may be used in combination to identify one or more areas of interesting or anomalous social media activity within a geographic area, for example, by calculating a geographic distribution of a quantified anomalousness metric based on the difference between the geo-temporal reference profile and the corresponding representation of recent or near live social media activity.

[0153] Dynamic changes in icon size

[0154] Simple steering Figure 6B , it will be seen that the map GUI 612 shown therein provides an example embodiment according to an aspect of the present disclosure to provide automatic changes in one or more visual attributes of user interface elements associated with corresponding social media content based at least in part on the quantitative attributes of the underlying social media activity. In particular, Figure 6B The example embodiment of provides for dynamic changes in the screen size of the corresponding spike icons 633 based on the corresponding abnormality metric values ​​of the corresponding cluster or spike library. Thus, the screen size of each spike icon 633 indicates the abnormal or unique level of the underlying social media activity. In other words, the size of the spike icon 633 indicates the degree to which the related activity volume will be abnormal at that point, with larger spike icons 633 indicating larger levels of abnormality.

[0155] Alternatively or additionally, the visual attributes of the location icon 631 (e.g., its on-screen size) may also vary based on the corresponding outlier value. Figure 6B In the example embodiment of , the on-screen size of the location icon 631 is variable based on the number of snapshots, where a greater number of snapshots included in any location story corresponds to a greater on-screen size of the associated location icon 631. Figure 6B The example screenshots shown make it intuitively understandable that the story of Universal Studios has more snapshots than the story of Venice Boulevard.

[0156] Location sharing and user icons

[0157] User location display

[0158] As previously described, the map GUI 612 includes a graphical representation of the relative locations of the user and / or other users associated with the client device 102, each user represented by a corresponding user icon or friend icon (for users who are members of the in-application social graph associated with the viewing user), in the illustrated embodiment, represented in the form of a corresponding bitmoji 640. In this example embodiment, users of the social media platform will not share their location if they have never interacted with the map GUI 612. The first time a user interacts with the map GUI 612, the user is guided through an onboarding process that allows for setting a single location sharing preference.

[0159] Regardless of whether the user chooses to show their location to anyone, the user can always see their current location on the map, and if the user's Bitmoji 640 is no longer in view, the map will quickly return to focus on the user's location. Fig. 8A An example embodiment is shown in which the location of the viewing user is indicated by a custom user-selected or user-generated user interface element in the form of the user's bitmoji 640.

[0160] Can be obtained from Fig. 8A In this embodiment, the location sharing preferences can be changed in a graphical user interface of the user. In this embodiment, the change of location sharing preferences can be affected by: (a) entering an invisible mode in which the user's location is not visible to any other user (also referred to herein as "Ghost Mode"), and (b) changing the default location sharing settings and / or corresponding settings for different friend users and / or groups of friend users.

[0161] Location sharing can be turned off or on from the map GUI 612, thereby entering or exiting ghost mode. In this embodiment, ghost mode can be turned on / off via the map pin icon 808 in the upper right corner (see Fig. 8A ). When location sharing is turned off (i.e., when in "ghost mode"), the user's location is no longer displayed in the map GUI 612 on other users' client devices 102. However, the user can still see his / her location in the map GUI on his / her own device. When in ghost mode, a ghost icon (not shown) slowly pulses in the upper right corner of the screen to replace the map pin icon 808.

[0162] Note that the ghost mode functionality described herein is distinct from turning off location services on a mobile user device. Thus, when ghost mode is turned on, the device location services of the client device 102 are still running, so that the user's location can still be determined and displayed on the map GUI 612 of the user's own device 102, wherein social media content collected in ghost mode is still geo-tagged.

[0163] When a user turns on ghost mode after previously appearing on the map, the user's Bitmoji 640 disappears from other people's maps within a few seconds. While in ghost mode, the user can still be seen on the map by anyone who has chosen to share their location with the user.

[0164] If the user selects their own bitmoji 640, a user bubble or user panel 816 is launched at the bottom of the touch screen 606, enabling the user to access location sharing preferences via the settings soft button 824. The user panel 816 further includes a location-independent collection icon in the form of a My Story icon 832. The My Story icon 832 is selectable to launch a replay of the My Story of the user being viewed, which is a location-independent collection (here a short-term snapshot) of social media items submitted by the user. Similar to other location-independent GUI features disclosed herein, location-independent in this context means that the collection of social media items that can be played via the My Story icon 832 is organized and displayed without regard to any location constraints, and is therefore not affected by the geo-tag information associated with the corresponding items, the user's current location, or the current focus of the map 618.

[0165] Location Sharing Preferences

[0166] Selecting the settings soft button 824 causes the location sharing preferences interface 840 to be displayed in the map GUI 612 ( Figure 8B ), in this example embodiment, the interface provides users with options for specifying who will see their location, and at what granularity. The default sharing granularity options provided in this example embodiment include:

[0167] - accurate, which in this embodiment means that the user's bitmoji 640 is displayed to the friend user via the map GUI 612 at the user's actual location (e.g., as indicated by the location service of the client device 102). In other words, the user's displayed location and actual location are substantially the same; and

[0168] - City, which means that the displayed location of the user's bitmoji 640 will be different from the actual location, but will be within a defined geographic area corresponding to the current actual location. In this example embodiment, the defined geographic area (in which the user's location is displayed) is at the city level (e.g., Venice, CA, London, etc.).

[0169] When the city option is selected for a particular user group or for a particular individual, in this example embodiment, the user's bitmoji 640 will be shown in the map GUI 612 generated on the user device 102 of the selected person (or people in the selected group) as a random location within that city, and in this embodiment, the location does not change if the user does not leave the city. Figure 8C An example of displaying a user bitmoji 640 in the interactive map 618 of the map GUI 612 at this city-level display granularity is shown, wherein the user bitmoji 640 is displayed at a random location in the city along with an associated tag 860 that broadly specifies the city in which the user is located (Santa Monica in the example embodiment shown).

[0170] Note that features related to intentionally inaccurately displaying a user's location have the effect of displaying the user's location differently, both on instances of the map GUI 612 generated on their own device 102 (e.g., on Fig. 8A , where the displayed location of the user's bitmoji 640 corresponds to the user's actual location), and on the other hand, on an instance of a map GUI 612 generated on a user device 102 of a friend user with non-precise viewing permissions (e.g., as Figure 8C 640 is displayed at a different random location than the user's actual location). In this example embodiment, the display location of the user's bitmoji 640 at a non-precise regional level (e.g., at a city level) is the same between different friend user devices 102, so that different friends see the user's bitmoji 640 displayed at the same random location. In other embodiments, the display location may be different for different friend users.

[0171] It will be seen that this aspect of the disclosure therefore provides a method comprising: determining a location of a user device associated with a user of a social media application; determining a user-selected location display setting that specifies the manner in which the user's location is to be displayed on a map-based GUI displayed to other users of the social media application, the location display setting being selected from a predetermined set of location display settings corresponding to displaying the user's location on the map-based GUI at different respective levels of accuracy; and representing the user on the map-based GUI of a friend user by rendering a UI element associated with the user at the location on the map-based GUI in accordance with the selected location display setting.

[0172] exist Figure 8BIn the example embodiment of FIG. 1 , the defined geographic regions are only available at the city level. In other embodiments, different or additional levels of display granularity may be provided, for example, different levels of identifying cartographically and / or politically defined geographic regions, such as the county, city, town, or neighborhood level. Note that in FIG. Figure 8B In an example embodiment of , ghost mode may be toggled not only on a general level (via ghost mode switch 841), but may also be selected for a group of users or for individual friend users via group selector 842 and friend selector 843, respectively. In some embodiments, the displayed user location remains fixed at the randomly selected display location until the user device 102 leaves the defined geographic area. Thus, in some embodiments, a new display location is determined each time the user enters the relevant area.

[0173] As mentioned, the user may also select different groups of other users to whom his location will be displayed via the location sharing preference interface 840, and in some embodiments may specify different display attributes for different respective groups or for different respective individuals. In this example, the audience options available via the group selector 842 include: best friends, friends, and custom (which is a personal level whitelist of individuals specified by the friend selector 843).

[0174] If Friends is selected, all new people added to the user's friends list will automatically be able to see their location, consistent with the level of granularity selected in group selector 842 (e.g., in Figure 8B 842, which can be selected as either exact or city level). If they have been shared with the user, they will appear on the user's map within a few seconds.

[0175] In this example embodiment, the location sharing relationship is bidirectional, if John shares his location with Jack, Jack will not see John on his map 618 unless Jack has added John as a friend. The user cannot add anyone who is not a friend to the custom section. In addition, the user can define more specific permissions for specific people via the friend selector 843, which will override the default settings.

[0176] When viewing the map GUI 612, the user will therefore be able to see the locations of all of his / her friends who have shared locations with him / her on the map 618. As discussed, each user is represented by a bitmoji 640 in this example embodiment. If a friend does not have a bitmoji 640, a profile picture within the generic UI element is displayed. If there is no profile picture available for a particular friend, a default icon (e.g., a blank profile) is displayed in the corresponding location.

[0177] Friend level access via friend icon / friend carousel

[0178] In this example embodiment, friend-level access to friend information and friend-targeted content is enabled via the interactive map 618. This friend-level access is distinct from a location-based access mechanism, such as a location-based search or a collection of snapshots accessible via corresponding geo-anchored story icons 631, 633. An example of this friend-level access mechanism is a friend bubble or friend panel 909 ( Fig.9A , which pops up at the bottom of the screen when the user clicks on the displayed friend's bitmoji 640). The friends panel 909 and its component friends carousel 918 provide the user with many functions.

[0179] exist Fig.9A In the example embodiment of FIG. 1 , the friends panel 909 displays summary information about the user. Fig.9A As shown, the friend panel 909 forms part of a friend carousel 918, which enables the user to selectively switch focus between different friends. Note that in addition to the main friend panel 909, the friend carousel 918 also includes a next friend panel 909, whose left edge is exposed on the right side of the touch screen 606.

[0180] The user can swipe between friends on the map 618 via the friends carousel 918. In this example embodiment, switching between friends is accomplished by swiping the currently focused friend panel 909 left or right. Swiping left or right on the friend panel 909 may view the next or previous friend panel 909, as appropriate. In this example embodiment, swiping to a particular friend will automatically center the map 618 on that friend's bitmoji 640. Note that all friends (for whom the user has viewing permissions) should be part of the friends carousel 918, not just those visible in the map viewport 621. In this embodiment, the friends are sorted in the carousel by update recency.

[0181] The friend panel 909 also includes a chat soft button 918 that can be selected in a short-lived replacement of the interactive map 618 to launch a chat interface 950 (see Fig. 9B ) without leaving the map GUI 612. In another embodiment, clicking on the friend bitmoji 640 causes a pop-up menu to be displayed, and the initiation of a chat session is one of the selectable options.

[0182] In this example embodiment, selection of the chat soft button 918 causes a chat interface 950 to pop up in a modal on the map 618, which can be swiped down to dismiss. Incoming chat notifications can be opened in this modal view.

[0183] In addition, the friend carousel 918 provides location-independent access to social media content provided by the corresponding friend user via the map GUI 612. In this example embodiment, this location-independent access is accessible via a location-independent collection icon in the form of a corresponding friend story icon 932 displayed in the friend panel 909. The friend story icon 932 is selectable to trigger the replay of the corresponding story (in this example, it is the my story of the selected friend), which includes a series of snapshots uploaded by the corresponding friend user without any location restrictions on the replay material. In other words, the location information has no effect on the availability and identification of these snapshots. The friend carousel 918 provides a link from the user's location to social media content that is not located anywhere via the friend story icon 932, wherein the snapshots or stories that are thus available will be the same, regardless of the current location of the friend user, the current focus of the map viewport 621, or the current location of the viewing user. In other words, this and other location-independent access features of the map GUI 612 provide access to friend content via the map GUI 612 in a manner similar to that provided by a GUI that is not based on a map. Thus, in the example embodiment, selecting a particular friend bitmoji 640 results in the display of a menu or user interface element (in the Fig.9A In an example embodiment of the invention, the corresponding friend story icon 932 of the selected user is displayed, through which the available snaps and / or stories of the target user can be viewed without considering any geo-tag information of the corresponding snaps / stories.

[0184] As will be described below, certain aspects of the search mechanism provided by the map GUI 612 similarly provide access to the location-independent social media content of friend users via the map GUI 612 .

[0185] Search Function

[0186] In addition to viewing aggregated stories by selecting story icons 631, 633, the user may also access snapshots using one or more search functions provided by the map GUI 612. In this example embodiment, the map GUI 612 provides a number of different search mechanisms by which the user may access targeted social media content, including:

[0187] -Search bar 665( Fig. 6A ), which enables entry of a text string search query to result in a list of items that satisfy the search query ( Fig. 10C )’s search results;

[0188] - Location-based searches to search for social media content based at least in part on their corresponding geo-tag information. In some embodiments, these location-based search mechanisms include:

[0189] o Set a location-targeted search, which is triggered by clicking or tapping a target location on the map 618 (in Fig.11A and 11B Schematically shown in ); and

[0190] ○ Friend-based location search to locate social media content based at least in part on the location of a selected friend user; and

[0191] -One or more friend-level access mechanisms that provide access to social media content of selected friend users. In certain embodiments, these include:

[0192] o Access to location-independent friend content via user icons, friends carousel 918, and / or individual friends panel 909; and

[0193] o Displaying a location-independent collection icon in association with the corresponding friend user in the search result list (e.g., as shown below with reference to Figures 10A-10C Friend story icon 932) as described.

[0194] Search bar mechanism

[0195] Reference Fig. 10A and Figures 10B to 10D Two example embodiments of the operation of the search mechanism provided via the search bar 665 are schematically illustrated. Fig. 10A , you will see a search bar 665 ( Fig. 6A ) results in display of a drop-down search interface 1010 that includes a search box 1020 for entering a text-based search query and a number of suggestion lists 1030 in corresponding user interface elements displayed below the search box 1020. Figures 10B-10D In the example embodiment of , each suggestion unit corresponds to each snapshot, story, location and / or friend. Fig. 10C As can be seen in the corresponding screenshot of the search interface 1010 in , the specific cells displayed as part of the suggestions 1030 are dynamically filtered in response to text input in the search box 1020 to include only stories, friends, or locations that satisfy the entered search query.

[0196] When the user clicks on a selected cell in the suggestion list 1030, the map GUI 612 in this example automatically flies over to the corresponding point on the map 618. If the selected cell is for a spike collection or cluster (also referred to elsewhere in this document as a spike story), the snapshots in the corresponding story begin playing in sequence. If the selected cell is a friend cell, the map viewport 621 navigates to the corresponding friend bitmoji 640, as appropriate, and the associated friend panel 909 pops up. Fig. 10A In the example embodiment of , at least some aspects of displaying search results or suggestions 1030 are location independent, returning search results from any location without any constraints based on the user's current location or the display area of ​​map 618. In particular, in Fig. 10A The "My Friends" portion of suggestions 1030 in the embodiment of includes any friends that the user has viewing permission for.

[0197] Therefore, by Fig. 10A Features provided by the search interface 1010 include:

[0198] - Search for a location anywhere in the world and navigate to it by selecting the corresponding suggestion cell; and

[0199] - View suggestions 1030 for social media content of interest before typing, and view suggestions that dynamically satisfy search queries during or after typing. Fig. 10A In an example embodiment, these include:

[0200] o In segment 1032, the user's friends are identified as "My Friends";

[0201] o In segment 1034, popular location stories, event stories, and / or peaking stories or clusters, regardless of location, are identified as "Popular Locations";

[0202] o In segment 1036, nearby location stories, event stories and / or peaking stories or clusters are identified as "Nearby Popular".

[0203] Note that Fig. 10A In the example embodiment of , "My Friends" and "Popular Places" display friends / content from all over the world, not just those that are displayed in your viewport. All friends are shown in segment 1032 in order of most recently viewed. In contrast, the "Popular Nearby" entry has a location restriction, which in this example embodiment is limited to stories that fall within the area of ​​the current map viewport 621. In other embodiments, the location restriction is based on the user's current location, as indicated by the client device 102.

[0204] "Hot Locations" and "Popular Nearby" stories are globally ranked according to a metric based on underlying social media activity, in this example embodiment, they are ranked according to the number of unique users who contributed to the story. In some embodiments, hot locations can be ranked according to an unusualness metric or attention score. In other embodiments, the presentation of stories in the search interface 1010 can be based on raw snapshot volume, snapshot density over time, rate of increase in snapshot volume, etc.

[0205] When the user clicks on an entry in the search box drop-down menu, the map GUI will fly-through navigate to the corresponding point on the map 618, after which the story / spike will begin playing or the friends panel 909 will pop up, as appropriate.

[0206] Now refer to Figures 10B-10D Search functionality available via other example embodiments of the map GUI 612 is described. Fig. 10C and 10D The behavior of the search interface 1010 is shown during and after a user types in a search box that forms part of the search interface 1010. Understandably, the items listed during and after typing are limited to items that satisfy the search string entered so far (e.g., friends, places, events, or stories). Each of the multiple different segments of suggestions 1030 will be described separately below, with the corresponding items in each segment sorted by priority. Different embodiments may employ different combinations of these suggestion segments.

[0207] Friends on the Map - This segment is by Fig. 10B , which shows friends on the map 618. In this example embodiment, the friends displayed are limited to those visible in the map viewport 621 (i.e., in the geographic area of ​​the map 618 displayed immediately before the search 1010 was initiated). In other embodiments, the friends displayed include any friends that can currently be found somewhere on the map 618. In this example, the first four friends are listed, followed by a view more button if desired. The user can tap the friend cell to find them on the map 618.

[0208] Each friend unit (if available) includes a location-independent collection icon in the form of a friend story icon 932. Any friend story icon 932 can be tapped to view the corresponding friend story in a modal manner. Viewing of a story includes sequential playback of a series of snapshots contained in the story. In this example embodiment, each friend story icon 932 includes a user interface element in the form of a circular thumbnail to the right of the corresponding friend name. In this example, the playable stories therefore include any story of a friend, regardless of any location information that may be associated with the story or associated with any snapshot that forms part of the story, and it is therefore a map-based access to the location-independent social media content of the target friend user according to the disclosed features. However, in other embodiments, the stories presented for playback are limited to stories that are geotagged on the current map view.

[0209] In addition to the friend story icon 932, in this example embodiment, each friend entry also includes an associated bitmoji, name, last viewed timestamp, and associated location indicator. The listed friends are sorted by update time.

[0210] All Friends - This segment is by Fig. 10C Reference numeral 1050 in FIG. 1 is similar to Fig. 10A , both present friends that satisfy the search string, regardless of whether the friend appears on the map. In addition to the availability of the "My Story" icon 832, the username and score indicator are shown as subtext for each friend. In this example embodiment, the score indicated is the user's score used to represent the user's engagement throughout the application. In some embodiments, as previously described, tapping a friend cell navigates the map to focus on the displayed location of that friend. However, in this example embodiment, tapping a cell will modally launch the chat interface 950 (see Fig. 9B ). Canceling the chat will return the user to the search interface 1010.

[0211] Headline Story - This segment is by Fig. 10B Reference numeral 1042 in the example embodiment of shows the top stories from around the world (selected daily by curators, either sorted by quality score or number of viewers).

[0212] Nearby Stories - This segment is by Fig. 10BReference numeral 1044 in , shows a cluster of interesting events near or within the viewport. These will be sorted in descending order of quality score. In some embodiments, nearby stories can be sorted according to an abnormality metric or a ranking score based at least in part on the abnormality metric. Thus, it will be seen that some embodiments of the present disclosure provide a social media application search interface that automatically displays short-term libraries based at least in part on the geographic proximity between a user device and a geographic location associated with each library. The sorting of the presented short-term libraries can be based at least in part on the respective abnormality metrics.

[0213] Location - This segment consists of Fig. 10D , which is indicated by reference numeral 1060 in FIG. 1064 , shows all points of interest (POIs) or locations (defined by CMS 1224) that match the search query. In some embodiments, the presentation and ordering of locations that satisfy the search string includes locations that have stories available for playback, i.e., locations that have associated stories. Thus, for example, in Fig. 10D In the screenshot of , Blue Lagoon is ranked higher than Blue Bottle Coffee because Blue Lagoon has an associated collaborative story, even though the latter is closer to the location of the user device 102.

[0214] If the location has a story, then in this example embodiment, a story icon 1063 in thumbnail form is shown before the title (see Fig. 10D ). Tapping the story icon 1063 (or anywhere in the cell) centers the location on the map and automatically plays the story. If there is no thumbnail for that location, in this example embodiment, tapping the cell will revert to the map viewport 621, focusing on the relevant location without playing any story. The back priority depends on the proximity to the current viewport (after POIs and / or locations with playable stories are prioritized to the top).

[0215] Location-based search via target location on a map

[0216] As an alternative to entering a text-based search query, a user can initiate a location-based search by selecting a target location on the map 618 separate from the story icons 631, 633, the friend bitmoji 640, or any selectable user interface element overlaid on the map 618. In this way, the map 618 itself provides an interactive search mechanism. Fig.11A and Fig. 11B An example embodiment of this location-based search is schematically illustrated.

[0217] In response to a user clicking or tapping a particular location on the map viewport 621, a search is performed for social media items within a predefined radius of the clicked or tapped location. In this example embodiment, this location-based search does not return a list of graphical user interface elements that can be selected for playing corresponding items, but rather automatically triggers automatic sequential playback of the items returned as search results.

[0218] exist Fig.11A In the example embodiment of , the target location 1110 is selected by tactile contact at the selected on-screen location, which includes tapping the touch screen 606 with a single finger 1120 of the user. Thus, tapping a non-thumbnail location on the map 618 will radiate a search around the target location 1110, such as Fig. 11B Schematically shown, a substantially circular geographic search area 1130 is centered at the target location 1110. The location-based search can have a predetermined search radius from the touch location. As previously described, if any snapshots are found in the geographic search area 1130, they will be automatically played back in sequence. If no snapshots exist in the area, the search will bounce back to show that no results were found.

[0219] In some embodiments, the location-based search is dynamically limited by a predefined search limit, so that the size of the geographic search area 1130 can be variable in different situations. In some embodiments, the search limit for the location-based search is a predefined maximum size defined by the number of snapshots located in the search. In an example embodiment, the geographic search area 1130 will therefore radiate from the target location 1110 to the point where a predetermined maximum number of snapshots are found, after which all snapshots from the area will begin to play in sequence. In other words, in some embodiments, a predefined search metric or limit is provided to determine when the search should be stopped. As mentioned, the search limit can be an upper limit on the number of located snapshots, where no further radiation continues outward from the target location after the number of located snapshots reaches the upper limit. Therefore, it will be seen that different location-based searches can return snapshots from geographic search areas 1130 of different sizes, depending on the density of snapshots near the target location 1110.

[0220] In some example embodiments, such location-triggered social media content searches (i.e., searches of social media content uploaded by other users that are triggered by a user clicking / tapping a target location 1110 that does not coincide with a story icon 631 / 633 or a friend bitmoji 640) may be automatically configured to exclude social media items included in one or more cluster sets represented on the map by the corresponding icons 631, 633. Thus, in this embodiment, the social media application will not include any snapshots included in any location story or any spiked story in the search results or replayed on the map.

[0221] As mentioned, in this example embodiment, a location-based search is initiated by clicking or tapping a non-thumbnail area, triggering automatic playback of snapshots located within a geographic search area 1130 centered around a target location 1110. In other embodiments, a search input via a target location selection may result in the display of a graphical user interface element that lists the snapshots found within the search area, e.g., including a thumbnail and user name for each found snapshot. Thereafter, the user may select a snapshot to be replayed from the list of found snapshots.

[0222] In some embodiments, snapshots located in a location-based search are played back in chronological order, as indicated by corresponding timestamp data indicating when the corresponding snapshots were uploaded. In some example embodiments, sequencing operations may be performed on a subset of the snapshots identified in the location-based search so that the playback order does not strictly follow chronological order. In one example embodiment, improved ordering of media playback in response to a user tap on a map viewport is achieved through a series of operations that include: (a) finding all snapshots within a fixed radius of the tap point, (b) performing geo-temporal clustering of the snapshots, (c) sorting the clusters according to distance from the tap, and (d) sorting by time within the clusters.

[0223] In some embodiments, a location-based search is performed by default for material uploaded within a predetermined default time period. For example, a location-based search may identify all snapshots that (a) are within the geographic search area 1130; (b) are not included in any story represented by the corresponding story icon 631 / 633; (c) have a timestamp within a default previous short time span. Thus, in an exemplary embodiment where snapshots are available via the map GUI 612 within 24 hours by default, a location-based search may by default locate snapshots with timestamps indicating an upload date within the past 24 hours.

[0224] However, in some embodiments, the previous time period (for which the search is performed) can be selectively changed by the user. For example, in response to an interval at which a search input gesture or signal is provided by the user, the search period time span is automatically variable.

[0225] In an embodiment where the map GUI 612 is displayed on the touch screen 606 (eg, Fig.11A and 11BIn some embodiments, the geo-temporal search is triggered by making a tactile contact at a particular location within the map 618, wherein the search is geographically centered at a target location 1110 defined by the on-screen location of the tactile contact. In some embodiments, the input interval indicated by the time period during which the tactile contact is maintained with the touch screen 606 automatically determines a previous time span for which the search was performed. In this case, for example, a tap on the screen will trigger a geo-temporal search within a default time period, while a press and hold will automatically trigger a geo-temporal search for material within an extended time period that is longer than the default time period. In one example embodiment, a tap input will trigger a geo-temporal search with a time span of 12 hours, while a tap and hold will trigger a geo-temporal search with a time span of 24 hours. In other embodiments, the extended time span may vary in a gradual manner, so that a plurality of different search time spans may be selected based on the press and hold intervals. Note that in the case where the user input is provided by a cursor control mechanism such as a mouse, the operations described with reference to the tactile contact on the touch screen 606 may be similarly performed by a click and hold input.

[0226] Alternatively or additionally, the search radius (ie, the size of the geographic search area 1130) may vary based on the length of the input interval, where a longer input interval (eg, a longer hold time) corresponds to a larger search range.

[0227] Location-based searches by friend location or for friend content

[0228] Some embodiments of the map GUI 612 provide functionality for searching for social media content with location restrictions based at least in part on a location attribute of a selected friend user. For example, the location restriction may be operable to restrict the search to social media content with geo-tags within a predefined geographic range centered on the geographic location of the selected friend user.

[0229] For example, in some example embodiments, a user may trigger a location-based search with location constraints based on the location of a selected friend user. In one example embodiment, the search may be performed in a manner similar to the following with respect to reference Fig.11A and 11B The general location-based search described herein performs the location-based search for a specific friend location in the manner described herein. Thus, in some example embodiments, the various considerations and features discussed for the general location-based search may be applied (mutatis mutandis) to the location-based search based on the friend location.

[0230] In one example embodiment, a search based on the location of a targeted friend may be triggered by a user's interaction with a friend icon or bitmoji 640 of a target friend user. In this example embodiment, a click or tap input on bitmoji 640 presents a menu or friend panel 909, while a press and hold input or a click and hold input automatically triggers a location-based search, such as previously described, with the search area centered on the location of the selected user. Alternatively or additionally, in some embodiments, the menu or friend panel 909 launched in response to selection of bitmoji 640 includes a selectable user interface element to trigger a search for social media content targeted to a location constraint defined with respect to the location of the selected user.

[0231] In some embodiments, the friend-based social media content search additionally has an owner constraint so that the search results are limited to the social media items of the selected friend user. In other embodiments or instances, the friend-based social media content search can search for content including, but not limited to, content uploaded or provided by the selected friend user.

[0232] Other example embodiments in which social media content searches conducted via the map GUI 612 have location constraints based on the location of a selected friend user include instances in which (when the map is focused on the selected user) search results are limited to items currently displayed in the map viewport 621. Fig. 10B The results section 1030 in the embodiment of provides one such example. In other instances, the map GUI 612 provides an option for searching content contributed exclusively by the selected target user. In response to triggering the friend-specific search, the user can change the focus and / or zoom level of the map viewport 621, wherein the social media items presented in the map viewport 621 are limited to social media content posted by the target friend user.

[0233] As described herein with reference to some example embodiments, in some embodiments a social media application executed on a user device generates a map GUI having a map viewport on which the displayed geographic locations of at least some friend users may differ from the actual geographic locations of those users. In some embodiments, a friend-centric location-based social media content search may be centered on the actual geographic location of a selected friend user, which differs from the displayed location of the selected friend user on the map GUI. In other embodiments, the search may be performed for the displayed location of the selected friend user.

[0234] Overview of Map GUI functionality

[0235] In use, the map GUI 612 thus presents different types of location-based stories that the user can view from the map 618. Fig. 6A and 6B In the example embodiment of FIG. 6A , a user can access snapshots posted to our story from anywhere in the world via the map GUI 612. This can be accomplished by navigating to different geographic areas displayed within the map viewport 621. In particular, the displayed geographic area can be changed by zooming in or out and by moving the focus area of ​​the map viewport 621. Fig. 6A and Figure 6B In an example embodiment of the invention, in which a map GUI 612 is provided on a touch screen 606, zooming in and out can be achieved through tactile gestures in the form of pinch-in or pinch-out tactile inputs. Movement of the map 618 within the map viewport 621 can be achieved through tactile drag gestures at any point on the map 618, thereby changing the displayed geographic area.

[0236] In this example embodiment, the user cannot selectively rotate the map 618, and the map 618 has a fixed default orientation relative to the touch screen 606. In other embodiments, the map 618 may have a fixed orientation relative to the earth. In some embodiments, the map 618 is selectively rotatable, for example, all map content rotates around a fixed anchor.

[0237] As discussed in detail above, in any particular map viewport 621, the information displayed may include:

[0238] - A color-coded heat map 625 that visually displays the geographic distribution of snapshot upload activity within the previous window (e.g., the default snapshot lifespan, which is 24 hours in this example), allowing the user to easily identify locations with more activity or with less activity. This enables the user to more efficiently locate location-based searches via the map GUI 612. In some embodiments, the color-coded heat map 625 is only displayed at the highest zoom level. However, in this example embodiment, the color-coded heat map 625 is rendered at all zoom levels.

[0239] - Thumbnail icons 631, 633 for presenting content that forms part of an ephemeral gallery or story. As previously described, in this example embodiment these include location icons 631 for geo-anchored stories associated with a particular tagged location, and spike icons 633 for location-based stories presented based on unusual levels of geospatial activity.

[0240] - The user's friend bitmojis 640 of the user's most frequently connected friends logged into the social media client application 104 executing on the client device 102, and the map GUI 612 is generated therefrom.

[0241] In some embodiments, at some zoom levels, no spike icon 633 is shown. In a particular example embodiment, at the original zoom level that the map GUI 612 loads by default, no spike icon 633 is shown. In this example, only the heat map 625, the friend bitmoji 640, and the plurality of location icons 631 are displayed on the map 618 at the original zoom level. As the user zooms in, the spike icons 633 are presented, representing the corresponding activity clusters.

[0242] It will be appreciated that different icons 631, 633 are presented at different zoom levels. In this example embodiment, the map GUI 612 displays no more than a predetermined maximum number of location icons 631 and no more than a predetermined maximum number of spike icons 633 in any particular view. For example, at any zoom level, the top three location stories (sorted by snapshot volume) are displayed by displaying the corresponding location icons 631 in the map viewport 621. Similarly, at any zoom level, the top three spike stories (sorted by anomaly or uniqueness metric value) are presented by displaying the corresponding spike icons 633 in the map viewport 621.

[0243] In addition to viewing stories presented in the map 618 via corresponding story icons 631, 633, users may also use one or more of the search functions described above to access any snapshots uploaded to Our Stories and whose library participation timer or availability lifetime has not expired.

[0244] It will be appreciated that the map GUI 612 is dynamic because the information displayed therein changes dynamically over time. New snapshots may be continuously uploaded to our story, and the underlying social media items upon which the presentation of the story icons 631, 633 and the generation of the heat map 625 are based may in turn continue to change due to the expiration of the availability of the snapshots. However, in this example embodiment, the information displayed in the map viewport 621 is not dynamically updated during the display of any particular geographic area. Instead, the change in the focus of the map viewport 621 is associated with receiving update information for the story icons 631, 633 and the heat map 625 from the application server 112.

[0245] As described in the example embodiment, the benefit of the map GUI 612 is that it provides user-friendly and intuitive interaction with geographically distributed social media content. Providing different types of social media libraries (e.g., represented by spike icon 633 and location icon 631, respectively) provides a system that automatically presents only the content that is most relevant to the user's selection (in a manner that reduces the complexity of the very large number of individual social media items that can be obtained via the social media platform) and allows selection of target content that may be of interest to the user.

[0246] Example System

[0247] Fig.12 An example embodiment of a social media platform system 1200 is shown, which is configured to provide a map-based graphical user interface for social media applications, such as reference FIG. 6B to FIG. 11B In some embodiments, the map GUI 612 may be displayed, for example, via the social media application server system 108 ( Figure 1 ) provides the system 1200 and its associated components on the server side. In this case, the various components of the system 1200 can be provided by the execution of the social media server application 114 on the application server 112. In other embodiments, one or more components of the system 1200 are provided, for example, by a corresponding client device 102 ( Figure 1 ) is provided by the client side. In another embodiment, the system 1200 is provided by the server side and the client side in cooperation, and the application server 112 and the client device 102 communicating therewith are configured to provide corresponding system components by executing the social media client application 104 on the client device 102 and by executing the social media server application 114 on the application server 112.

[0248] The system 1200 includes a map engine 1208 to generate a map GUI 612 that includes location-based social media information displayed in the map GUI 612. Thus, the map engine 1208 is configured to generate a map 618 ( Fig. 6A ) or facilitate the generation of the map 618. To this end, the map engine 1208 may be configured to present and cause the display of specific story icons 631, 633, to identify the corresponding friend bitmoji 640 and cause the display of the corresponding friend bitmoji 640, to generate heat map information and display the heat map 625 overlaid on the map 618 or cause the display of the heat map 625, and to perform reference Figure 6A-11B The operation of other related functions of the map GUI 612 is described.

[0249] The system 1200 also includes a replay mechanism 1216 that is configured to cause an automatic sequential replay of the content of a set of social media items or snapshots on the client device 102. The replay mechanism 1216 can thus cause a sequential display of all snapshots. As previously described herein, the replay mechanism 1216 can thus cause a sequential display of all snapshots in a selected location story or spike story. In some embodiments, the replay mechanism 1216 can provide a set of snapshots to be sent to the client device 102 in response to the selection of the corresponding story icon 631 / 633. In some such embodiments, upon initial rendering of the map view in the map GUI 612, the information automatically sent by the application server 112 to the client device 102 may include the first few snapshots (e.g., the first 2 or 3) for each story icon 631, 633 presented in the map viewport 621. Upon selecting a particular story icon 631 / 633, the first few snapshots in the story are immediately available for replay, while subsequent snapshots in the story are pulled up from the application server 112 during the presentation of the first few snapshots.

[0250] The system 1200 also includes a content management system (CMS) 1224 that enables server-side management functions. The CMS 1224 provides a management interface that enables operators to manage content, for example, by defining various attributes of different locations and / or event stories. In this example embodiment, the CMS 1224 also includes the collection management system 204 ( Figure 2 ). CMS 1224 is configured for automatic or semi-automatic compilation of various social media libraries or stories as described above. This may include curating or reviewing various stories by using a server-side curation interface provided by CMS 1224.

[0251] The system 1200 also includes a search engine 1233 that is configured to provide search functionality for social media content via the map GUI 612. In particular, in this example embodiment, the search engine 1233 provides a search function for social media content via the search interface 1010 ( Figures 10A-10D ) and via location-based search (by directly selecting map 618 ( Figures 11A-11B ) on the target location) of both user-directed searches.

[0252] The system 1200 also includes a user location service mechanism 1237, which is configured to determine the corresponding user location (in this example embodiment, indicated by the corresponding device location) so as to determine, for each user, specific friend users that can be viewed via the map GUI 612, and provide corresponding user location information to display the relevant user icons at the corresponding display locations. In some embodiments, the user location service mechanism 1237 includes (as part of the server system 108) a user location data store and a per-user access control list (ACL) that lists the specific friend users that can be viewed by each user. In some embodiments, the per-user ACL specifies a corresponding viewing level granularity for each viewable user. In this example embodiment, the user location service mechanism 1237 is also additionally configured to determine and manage the corresponding user display granularity. This includes calculating the imprecise display location of some users and displaying the corresponding user icons at the imprecise display location.

[0253] The system 1200 also includes an analyzer 1250 that is configured to process social media activity data to calculate abnormality metrics for different areas to be served by the map GUI 612. In some embodiments, the analyzer 1250 uses probabilistic rendering of a single snapshot to generate a historical model of the geospatial distribution of social media activity. Activity data from the current or near live time window is mapped to the historical model and corresponding abnormality scores for different corresponding locations in the map are calculated. The abnormality scores can be used by the map engine 1208 to present content via the map GUI 612 to determine the size of the spike icon 633 and heat map rendering information, etc.

[0254] Example Method

[0255] Place CMS

[0256] Placement restrictions and / or exclusions

[0257] Another aspect of the present disclosure relates to a mechanism or tool for providing one or more administrators of a social media application with one or more management functions regarding different locations in a map. As will be described below, the management functions may include the ability to select locations to be displayed on the map GUI 612, and the ability to blacklist or otherwise restrict or change user access to selected areas of the map. Such blacklisting or limiting the availability of social media items based on geo-tag information may include inputting moderate data to identify locations from which a large number of bad snapshots originate. Automatically identifying problem areas in this manner facilitates blacklisting or, for example, age-restricting the identified problem areas.

[0258] Some embodiments provide automatic geographic-based restrictions or adjustments based on user feedback or anticipated complaint information. In one example embodiment, when the volume or frequency of complaints or reports received for social media items (e.g., snaps) from within a defined region exceeds a predetermined threshold, the availability parameters for a defined geographic region (also referred to herein as a "location," as described in more detail below) may be automatically set to age-restrict or exclude. In other embodiments, such automatic identification of problem areas results in the curation interface 1229 ( Fig.12 ) where a human administrator can determine and apply the appropriate settings.

[0259] These and other functions are described in more detail below as being provided by the internal administrator platform in the exemplary form of an internal website, also referred to herein as a Places CMS 2048, see Fig.12 and Fig. 20 ), multiple administrators can collaboratively perform management functions for different geographic locations and their attributes via the system. However, it is understood that similar internal management tools or mechanisms can also be provided in different forms, and the functions described herein are also applicable to this alternative architecture.

[0260] The location CMS 2048 provides administrators with the ability to mark specific geographic locations using thumbnails and associated labels. In embodiments where location icons 631 are displayed on the map GUI 612 for both administrator-defined locations and for self-organized locations based on high activity (e.g., spike icons 633 for spike stories or clusters), these different types of location icons 631 may be distinguished by associated labels. Note that some embodiments may provide for displaying gallery icons associated with only administrator-defined locations on the map, without displaying self-organized locations based on high or unusual activity levels.

[0261] exist Fig.11A , wherein the marked location icons 631 Rockefeller Center, Bryant Park, and Empire State Building are locations defined and marked via location CMS 2048, while other unmarked icons (here including circular thumbnails without associated labels) are spike icons 633 of a self-organizing geo-anchored ephemeral library presented based on high activity levels and / or high abnormality levels as previously described. In other embodiments, the only geo-anchored library icons displayed on the map are for administrator-defined locations. However, in this case, a specific predetermined location in the current map viewport 621 is automatically determined based on social media activity metrics (such as abnormality levels discussed elsewhere), and a corresponding location icon 631 for the predetermined location is displayed on the map GUI 612.

[0262] For areas of the map that have high activity levels permanently or periodically, administrators can choose to define and mark that location with a persistent "hot places" thumbnail, such as Fig.11A The situation is shown with thumbnails of the three markers.

[0263] As described above, location CMS 2048 is an internal website in which locations can be defined. Fig.12 As shown, when the administrator uses a terminal device that communicates with the location CMS 2048 to access the location CMS 2048, the location CMS 2048 provides a curation interface 1229. It can be understood that the curation interface 1229 is displayed on the administrator's user device or terminal.

[0264] In the example embodiment, location CMS 2048 is used to cause locations to be displayed on a map, blacklist locations from a map, and selectively change availability parameters for different geographic areas. Fig.13A A screenshot of a curation interface 1229 for Location CMS 2048 is shown.

[0265] An existing feature of some social media platforms is the ability for users to define geo-fences and apply geo-filters to social media items with geo-tags that are within the corresponding geo-fences. In this case, a geo-filter is a decorative overlay applied to a social media item (e.g., a photo or snapshot). In this example embodiment, the location CMS 2048 uses existing geo-filters to help build a location list. This generation and curation of a location list may include:

[0266] Based on the popularity of the filter (if possible), a predefined number of popular locations are displayed in the tool. Alternatively, the popularity of a location could be measured based on how many snapshots are taken on average within the fence and how many snapshots are contributed to our stories on average.

[0267] In this example, the geofilters are only used for locations or types of locations that the administrator wishes to tag, so in this case geofences of neighborhoods, cities, etc. are excluded.

[0268] The geofilter fence is used as a location fence. In this example, the location fence is also used when the user taps a location in the map 618. In response to using the location fence, the resulting search is limited to social media items with geotags that are within the location fence. The search is referenced Fig.11A and 11B A variation of the described location-based search, except that the search area is restricted to defined boundaries of a specific location where the target location is located.

[0269] If the geofilter has a center point, that center point is used for the location displayed on the map GUI 612. Additionally, the center of the fence polygon is used as the center point of the location fence.

[0270] In order to be able to display a location on a map, the location is named and a thumbnail is assigned to the location via the location CMS 2048. In this case, the administrator can use the original geofilter name if deemed appropriate. In addition, the administrator can manually tag various locations. Regarding the selection of thumbnails, the administrator is enabled to scroll through a predetermined number of the most recent snapshots (in this example embodiment, 100 counts) in the relevant polygon, from which a specific snapshot can be selected for use as a thumbnail. In other embodiments, the thumbnail image of the relevant location can be automatically selected, such as the most recent thumbnail.

[0271] As previously described, the location CMS 2048 also provides the map GUI 612 with the ability to blacklist or otherwise limit the presentation of social media content based on the geographic origin of the corresponding social media items. Fig.13A A screenshot of an example of a curation interface 1229 provided by location CMS 2048 is shown, which is used to define a location as a specific geographic area and / or assign different availability parameters to different defined locations. In this example embodiment, a general availability parameter is assigned to a location by default, which means that access to snapshots from that location is unrestricted. An administrator can modify the availability parameter to blacklist / exclude it (in which case snapshots from that area are not available to all users) or to age-restrict it (in which case snapshots from that area are only available to users older than a predefined threshold age). It is understood that other availability parameters and states may be applied in other embodiments. In other embodiments, the default availability parameters may also be different, for example, requiring it to be whitelisted by an administrator for access.

[0272] Note that Fig.13A In the screenshot of certain places, hidden and unviewed entries are related to the visibility of the associated story icon, indicating whether the snapshots from the associated location are viewable. Therefore, snapshots originating from hidden or unviewed locations can still be viewed via the map GUI 612 (e.g., through one of the described search mechanisms). In contrast, snapshots from blacklisted or age-restricted locations are therefore inaccessible.

[0273] like Fig. 13B As shown in the screenshot of , the curation interface 1229 includes an "add new location" UI 1305 that provides the administrative user with the ability to draw a polygon over a disposable area of ​​the map to blacklist or otherwise restrict it. In this example, this is done by Fig.13AThis is accomplished by adding a new location to the curation interface 1229 (using UI 1305) and marking it as "blacklisted". Fig.13A In the screenshot of , an example is shown in which the availability status of the Cheetah Strip Club is set to "blacklisted" using the drop-down status selector mechanism 1313. It will be appreciated that the blacklisting functionality can be used to regularly exclude defined areas from the social media application, such that social media items with geotags indicating origination within the blacklisted area are excluded from accessibility to the user via the map GUI 612. Blacklisted areas are therefore typically areas associated with inappropriate content, such as adult events or locations.

[0274] As mentioned, in some example embodiments, the location CMS 2048 provides functionality to provide geographic-based content filtering, not only in a binary manner where any particular location is included in or excluded from the map for all users, but also allows for changes in the availability of social media items from a particular geographic region based at least in part on one or more attributes of the requesting user. In a particular example embodiment, an administrator is enabled to associate a corresponding age rating with various selected geographic regions, responsive to which association social media content from the region is made available via the map GUI 612 only to users older than the corresponding age rating.

[0275] Thus, for example, an administrator may create a location associated with a particular adult venue by drawing a polygon around it on the curation interface 1229 using the location CMS 2048, and may then specify an age limit of 18 years old for the defined location. Thereafter, only users whose age (e.g., as indicated by an age attribute associated with each user in the database of the social media platform) is greater than 18 years old may view snapshots originating from the adult venue via the map GUI 612. It can be seen that in this manner, different content may be made available to different users on the map GUI 612 based on their respective user attributes.

[0276] As illustrated in the foregoing description, one aspect of the present disclosure therefore provides a method that includes making social media content available on a social media platform via a map-based GUI (map GUI 612) generated on a user device so that the availability of individual social media items is variable based on associated geo-tag information.

[0277] In some embodiments, a number of defined geographic regions may be blacklisted, wherein a user may not view any social media items having geo-tag information corresponding to one of the blacklisted regions via the map GUI 612. Alternatively or additionally, various defined geographic regions may be defined as restricted regions, wherein a user may view any social media items having geo-tag information corresponding to one of the restricted regions via the map GUI 612 only if one or more user attributes meet predefined availability criteria. In some embodiments, the availability criteria may define age restrictions for various restricted regions, such that only users older than a predefined threshold age may use social media content from the restricted regions. Different age restrictions may be applied to different restricted regions.

[0278] Therefore, some embodiments provide a method comprising:

[0279] receiving an administrator input assigning an availability parameter for a particular geographic region, the assigned availability parameter being different from a default availability parameter associated with the geographic region, the default availability parameter not having the administrator assigned availability parameter associated with the geographic region;

[0280] generating a map-based GUI (e.g., map GUI 612) on the user device having an interactive map via which geotagged social media items are accessible for viewing on the user device; and

[0281] Geo-tagged social media content is made available via a map GUI, the method including limiting the availability of each social media item having associated geo-tag information corresponding to a particular geographic area based at least in part on the assigned availability parameters.

[0282] The method may include, for each social media item, determining, based on geo-tag information associated with the social media item, a location of the social media item; determining an availability parameter associated with the determined location; and determining an availability status of each social media item based on the corresponding associated availability parameter. As previously described, in some embodiments, the availability parameters for at least some geographic regions include an age limit value. In this case, for each social media item originating from a restricted region, limiting the availability of social media content includes: determining a corresponding age limit value corresponding to the location of the social media item; determining an associated age value of a user associated with a particular instance of the map GUI 612; and making the social media item accessible via the map GUI 612 based on the condition that the user's age value is greater than a threshold age indicated by the corresponding age limit value.

[0283] Some embodiments provide for geographic variation in automatic social media content filtering and / or quality assessment. In this embodiment, an administrator can define different filtering / quality estimation parameters (e.g., such as by using the following references) for different geographic regions (e.g., geographic regions defined by polygons drawn by the administrator via the location CMS 2048 described above). Figures 16 to 17C In this case, the administrator can, for example, specify that different metadata fields and / or different quality assessment models be used for quality-based content filtering for different geographic regions.

[0284] To facilitate identification of locations that are candidates for blacklisting and / or age restriction, Location CMS 2048 has functionality to present locations that have been identified by user reports. Based on user reports of inappropriate or objectionable content, these blacklisted candidates are presented in Fig.13A In the curation interface 1229 of , source = "reported". In some embodiments, the location CMS 2048 provides a restriction resolution channel that allows users to object to blacklisting, age restrictions, or any other form of restriction on availability associated with their respective areas.

[0285] Now turn to Fig.14 , which illustrates an example method 1400 in which geographic variations in the availability of social media items via a social media platform are implemented. The method 1400 is again described with reference to the map GUI 612 and location CMS 2048 described earlier, but it is understood that the described technology is not limited to these example embodiments.

[0286] In operation 1412, different non-default availability parameters are applied to the respective defined geographic regions (further, locations). For example, using the curation interface 1229 ( Fig.13A ), some locations are blacklisted, others are age-restricted, and others retain the default availability settings.

[0287] In some embodiments, the location restriction can be implemented or prompted in an automated or semi-automated process that includes accessing moderation input or complaint information indicating user complaints or reports about snapshots originating from different locations in operation 1404. At operation 1408, a list of candidate locations for restriction is identified, for example, based on a volume, frequency, or spike in complaints above a threshold. In some embodiments, restriction suggestions are presented in curation interface 1229 based on the candidate list. In one embodiment, the identified candidate locations are automatically blacklisted, where an administrator can change the availability parameter if it is believed that the availability parameter was applied incorrectly.

[0288] At operation 1416 , social media content is received in the form of geo-tagged social media items (e.g., snapshots) posted to a social media platform for general availability (e.g., submitted to Our Stories), forming a set of snapshots potentially accessible via the map GUI 612 .

[0289] At operation 1420, the map engine 2008 automatically filters out all snapshots received from the blacklisted locations. This provides a filtered set of snapshots that can be used via the map GUI 612.

[0290] In operation 1424, the client device 102 sends a request or call to view a specific area within the map viewport 621. In response thereto, the map engine 2008 identifies an age value associated with the user account of the requesting client device 102, and then, in operation 1428, filters out or blocks access to all snapshots that the user is not permitted to access based on the user's age, thereby allowing access to only the set of snapshots filtered by age. For example, the process may be in response to a location-based search in a specific area. Alternatively or additionally, age filtering is performed to include snapshots in stories accessible via the map GUI 612 (e.g., location stories, spike stories, and / or event stories).

[0291] Finally, the requested content (excluding any filtered out snapshots) is transmitted to the client device 102 for display on the client device.

[0292] The above-described aspects of the present disclosure include various example embodiments listed below as Examples 1-20, which are to be read in light of at least the foregoing portion of the specification.

[0293] Variable catchment intervals for social media available by geographic location

[0294] As an alternative or in addition to enabling restrictions on access to specific geographic areas, in some embodiments, the location CMS 2048 provides management functionality to provide changes in the interval after publication by geography for which social media items are (a) available via the map GUI 612 and / or (b) included in social media content to generate, for example, heat map information, etc. As previously discussed in detail, ephemeral social media content is social media content that can be used via the relevant social media platform only for a predetermined limited amount of time. Thus, for example, a snapshot uploaded to a user's "My Story" has an availability interval or lifespan (persistent in some common embodiments) of 24 hours after the publication time. In the terminology further used herein, the My Story library therefore has a 24-hour collection interval, which means that only items uploaded to the library within the last 24 hours can be viewed via the library.

[0295] In some embodiments, the location CMS 2048 allows administrators to specify the location of different geographic regions (e.g., Fig. 13B Different collection intervals can be defined for each location (defined in the curation interface 1229 of the example). Thus, for example, some areas with high activity levels and / or some areas where the administrator deems activity to be particularly important recently can be assigned a reduced collection interval relative to the default collection interval. In one example, Times Square is assigned a 4-hour collection interval instead of the default 24-hour collection interval.

[0296] Alternatively or additionally, certain areas may be assigned an increased collection interval relative to the default collection interval. In some embodiments, the increased collection interval is specifically defined based on the occurrence of an unusual event associated with a particular geographic area. For example, an administrator may define a geographic area where a hurricane has made landfall and assign an increased collection interval of 48 hours to that area, rather than the default collection interval of 24 hours.

[0297] In some embodiments, geographic variations in collection intervals are applied exclusively to playback availability of corresponding social media items, e.g., via location stories, spike stories, and / or location-based searches associated with defined geographic regions. In this case, other social media activity data (e.g., heat maps generated based on activity levels and / or anomaly or uniqueness metrics) are not affected by administrative definitions of different collection intervals for different geographic regions. Thus, for example, in some embodiments, the variable size of the spike icon 633 is determined by an anomaly value calculated for an associated region based on a default collection interval, even if the associated region has a non-default assigned collection interval.

[0298] In other embodiments, the variation in the collection interval is generally applied to the accessibility of various social media items, as well as to other information and content displayed on the map GUI 612 as described elsewhere herein. In this case, for example, the variable size of the spike icon 633 is determined by the outlier value calculated for the associated region based on the non-default assigned collection interval.

[0299] Now turn to Fig.15 , which shows an exemplary method 1500 that enables generation of a map-based graphical user interface for a social media platform for ephemeral content, thereby allowing collection intervals to vary with geographic location. The exemplary method 1500 is described again with reference to the previously discussed exemplary map GUI 612.

[0300] In operation 1517, the administrator uses an embodiment of the curation interface 1229 with collection allocation functionality to allocate different collection intervals to different geographic regions so that at least two different geographic regions have different collection intervals. For purposes of description, consider assigning a collection interval to a specific defined location (e.g., Fig. 6A 6 (the Empire State Building with location icon 631 shown in FIG. 6 ) assigns a 4-hour collection interval instead of the default 12-hour collection interval.

[0301] At operation 1524, a request for a replay of the snapshot of the target area is received from the client device 102. In one example, this includes a user selecting the Empire State Building location icon 631. In another example, the request may include a location-based search, either via the search bar 665 or by clicking at a target location near the Empire State Building.

[0302] At operation 1531, a corresponding set of snapshots originating from the location (i.e., from within the defined boundaries of the location) is limited based on the corresponding collection interval. In particular, the result set contains only snapshots with timestamps no earlier than the corresponding collection interval. Typically, the limiting of the result set occurs before the request is received. For example, a set of snapshots that together form a location story for the Empire State Building is based on being continuously filtered to exclude any snapshots that fall outside of its 4-hour collection interval.

[0303] In response to the request, the map engine 2008 provides the result set to the client device 102 at operation 1538. Note that result sets of different age spans will therefore be returned for different areas within the same map view. For example, no returned snapshots originating from the Empire State Building will be published for more than 4 hours, while a location-based search in an adjacent area may return snapshots for up to 12 hours.

[0304] These mechanisms advantageously allow manageable snapshot set sizes for regions with different snapshot densities, thereby reducing computational and communication loads on various elements of server system 108 .

[0305] In this way, different collection intervals can be assigned to different geographic areas. These assignments can be permanent, semi-permanent, or temporary. In the described example embodiment, the collection interval assignments are performed manually by an administrator. However, in some embodiments, the collection interval assignments can be performed at least partially automatically based on the identification of candidates for collection interval changes based on predefined social media activity metrics. In one embodiment, the location CMS 2048 is automatically configured to assign modified collection intervals to defined locations (or present a list of suggestions in the curation interface 1229) for which the corresponding snapshot frequency exceeds a threshold for more than a threshold number of days within a predetermined time window.

[0306] The above-described aspects of the present disclosure include various example embodiments listed below as Examples 21-31, which are to be read in light of at least the preceding portions of the specification.

[0307] Automatic quality estimation and curation of social media content

[0308] Another aspect of the present disclosure provides for automatic curation of a collaborative social media collection (e.g., a generally accessible ephemeral library, such as social media items posted to a live stream or our stories in the previously described example embodiments) based at least in part on automatic quality estimates of individual social media items. Thus, for example, the platform server system 108 for a social media platform described previously in some example embodiments includes a quality assessment system 2054 that calculates quality estimates for corresponding geotagged social media items posted to our stories. A quality filter is then applied based at least in part on the quality estimates to automatically exclude at least some user-provided social media items from availability via the map GUI 612. In an example embodiment, any social media item having an automatically calculated quality score lower than a predetermined threshold is excluded from any location story or from location-based search results via the map GUI 612.

[0309] Fig.16 An example method 1600 for automatic curation of social media content based at least in part on automatic quality estimation for individual social media items (in this example embodiment, snapshots) is shown. At operation 1609, a target set of snapshots for automatic evaluation is obtained. In some embodiments, the target set of snapshots may be all snapshots uploaded to the platform within a certain previous time window, a collection of snapshots associated with a location or event for providing a corresponding story, or any other suitable set of snapshots.

[0310] At operation 1627, a quality estimate or quality score is automatically determined for each snapshot. In this example embodiment, the quality score determination is performed by a trained neural network. Thus, method 1600 includes the prior operations of labeling a set of training snapshots with quality values ​​at operation 1618, and training the neural network by feeding the set of labeled training snapshots to the neural network at operation 1636.

[0311] At operation 1645, the original set of snapshots is filtered based on the respective quality scores of the individual snapshots. For example, in some embodiments, snapshots with quality scores below a threshold may be assigned a rejected acceptable status, thereby automatically excluding them from the original set. At operation 1654, the filtered subset of snapshots may be made available for public access via the map GUI 612 of the social media platform.

[0312] In some embodiments, it will therefore be seen that automatic quality estimation is performed using machine learning techniques, which include, for example, training a deep neural network using example social media items (e.g., snapshots) with varying quality assessment values ​​and associating them with corresponding attributes or signals at operation 1618. Then, based on the model trained in this manner, an AI engine (e.g., see Figures 17A-17D ) performs automatic quality assessment on new social media items submitted thereto. For ease of description, automatic quality assessment for snapshots is further described, but it should be understood that the described techniques are similarly or similarly applied to other social media items, such as images and enhanced messages.

[0313] In some example embodiments, the quality assessment is based at least in part on the visual media content (e.g., photographic or video content) and / or audio data of the associated snapshot. Figures 18A-18B The labeled data set created by the labeling strategy shown in the example labeling flowchart 1800 of the training data set is trained. As can be seen with reference to the labeling flowchart 1800, each snapshot in the training data set is evaluated by an operator based on the content of the corresponding snapshot and is assigned a quality label. In this example embodiment, the quality level is binary, identified as good or bad based on the decision flowchart 1800.

[0314] The score from the trained machine learning model thus generates a score about the content of the new snapshot based on the trained model. Fig.17A An example embodiment of the scheme is schematically shown. During training, the visual media content 1707 of each snapshot (further, only the content 1707, which may include audio content in some embodiments) is fed with associated tags 1714 to train the AI ​​engine 1721. At evaluation time, a content quality score (CQS) is generated by the AI ​​engine 1721 for the content 1707 of each snapshot submitted thereto. In this example embodiment, quality assessment and filtering are based only on the content quality score, so in this case, the quality score (QS) can be considered equal to the content quality score.

[0315] Alternatively or additionally, in some embodiments, at least some of the signals upon which the automatic quality assessment is based include metadata associated with each snapshot. Thus, some embodiments provide for including device and / or application metadata associated with each snapshot, meaning that this information is used as a signal (among other signals) when training a model to derive quality scores for the snapshots. For example, in some cases very shaky video (which in some cases may be indicated by metadata derived from a device accelerometer) may be excluded from the map GUI 612.

[0316] In one example embodiment, a non-exhaustive list of metadata fields included by a client-side instance of a social media application, at least some of which are obtained from a device operating system (e.g., an Android or iOS client), includes:

[0317] -The number of times the camera switched from back to front while taking a snapshot.

[0318] - Shake in the video recording. In some embodiments, this may be indicated by the device accelerometer reading.

[0319] - The speed at which the device moved during the snapshot capture.

[0320] - The height of the device during the snapshot acquisition.

[0321] - Whether the user is an official account or a collaborator.

[0322] -Whether the device's flash was used during the video recording.

[0323] -Device camera quality, e.g. determined with reference to the device model.

[0324] - Whether the user is a tourist or a local with respect to the location of the snapshot indicated by the geo-tag information. For these purposes, historical geographic information associated with the device can be compared with the geographic location of the relevant social media items to identify whether the user was traveling when the snapshot was taken.

[0325] -The nature of your internet connection, for example, whether you are using WiFi vs. WWAN.

[0326] In some embodiments, in addition to these metadata fields, a content quality score from a machine learning model trained on a manually labeled dataset is generated and associated with each corresponding uploaded snapshot as an additional metadata field. Note that in some embodiments, the estimated content quality storage is thus used in conjunction with one or more additional metadata fields derived from device information or from application information (as listed above) to calculate a quality score on which quality estimation and filtering are based.

[0327] In some embodiments, the quality estimation is performed by a trained machine learning model. Fig. 17B An example embodiment is schematically shown. During training, AI engine 1729 is trained by feeding it snapshot metadata 1726 and associated content quality scores (e.g., as determined by AI engine 1721). Keep in mind that for ease of description, AI engines 1721 and 1729 are described as separate entities, while in other embodiments they may be separate neural networks provided by the same AI engine.

[0328] During the evaluation period ( Fig. 17B ), a content quality score is determined by AI engine 1721 for the content 1707 of each snapshot. AI engine 1729 then determines a corresponding quality score for the snapshot based on the content quality score and the associated metadata 1724.

[0329] Alternatively, if Fig. 17C As schematically shown in the example embodiment of , the content quality score can be used together with at least some other descriptive metadata fields for algorithmically calculating the quality estimate. Thus, at the time of evaluation, the content quality score is determined by the AI ​​engine 1721 as previously, and the result is fed to the deterministic or algorithmic analyzer 1736 forming part of the quality assessment system 2054. In some embodiments, as previously, the analyzer 1736 outputs the quality score. In other cases, a binary acceptable value (i.e., inclusion or exclusion) output may be provided.

[0330] In some other embodiments, for example Fig.17D An example embodiment similar to Figures 18A-18B The example tagging flow chart may include one or more decision points based at least in part on metadata fields based on user device sensor data and / or information. Fig.17D The data flow of the scheme during training and evaluation can be clearly seen.

[0331] In some embodiments, the filtered snapshots are excluded from all aspects of the map GUI 612, e.g., from social media activity / anomality calculations and heat map renderings, and are not available as part of any publicly available ephemeral library, location story, or location-based search. In other embodiments, snapshots that are filtered out from online availability due to a quality score below a threshold are factored into heat map or other activity calculations, but are not available for viewing via the map GUI 612.

[0332] As previously described, this metadata is stored in the server-side database in association with the corresponding snapshots and is used to filter out bad snapshots from the map GUI 612. Note that the collected database is secure and remains private to ensure user privacy.

[0333] Note that in some embodiments, the automatic rating and filtering functionality is applied only to Snaps posted or submitted for general availability (e.g., submissions to "Our Stories"), and no such quality filtering is applied to submissions to a user's "My Stories". In this context, the term "general availability" refers to the posting of the corresponding social media item to the social media platform for general public access (e.g., posted to "Our Stories"), as distinct from being available only to users with a defined relationship to the posting user (e.g., posted to "My Stories" and available only for viewing by friends of a particular user).

[0334] The above-described aspects of the present disclosure include various example embodiments listed below as Examples 32-45, which should be read in light of at least the foregoing portions of the specification.

[0335] Location-based memory

[0336] In addition to providing access to ephemeral social media content during its limited availability interval, in some example embodiments, the map GUI 612 also provides location-based access to the user's own expired social media content. In this context, ephemeral social media content refers to social media items that are only available on the relevant social media platform for a limited period of time (i.e., its availability interval or lifetime), after which others cannot view it online. Thus, for example, the default availability interval for snapshots on some existing social media platforms is 24 hours. After the availability interval expires, the ephemeral social media item can no longer be accessed by others via the social media platform, and is referred to herein as an expired social media item or expired snapshot.

[0337] However, even after the availability interval expires, users may still wish to view their own uploaded social media items. To this end, a map GUI 612 (such as the map GUI 612 described in some embodiments herein) provides location-based users with access to their own out-of-date snapshots. This feature is also referred to herein as memory.

[0338] In one embodiment, the map GUI 612 enables the user to switch to historical (also referred to as memory mode) and then browse their own expired snapshots by geographic location and / or search their expired snapshots with geographic constraints through the map GUI 612. In some embodiments, the map GUI 612 in memory mode can provide the user with the designation of a search period, thereby enabling the user to search for expired snapshots published on a specified date or a specified date span.

[0339] In some embodiments, a blanket search may be initiated for the geographic area currently displayed in the map viewport 621, wherein the results of the search are limited to expired snapshots having geo-tag information corresponding to the current map viewport 621. Alternatively or additionally, a location-based search for expired snapshots (either generally or within a specified limited time period) may be initiated by clicking or tapping the map GUI 612 at a selected location, similar to the location-based search for live snapshots described above.

[0340] Thus, some embodiments provide a search function for a user's own expired snapshots that is substantially equivalent to the search function provided for searching for unexpired snapshots (i.e., live short-lived content) by all users. Additionally, in some embodiments, the map GUI 612 provides a display of social media activity information about the user's own historical snapshot activity provided for live content (e.g., see Fig.19 Operation 1970).

[0341] Fig.19 An example method 1900 of providing a map-based graphical user interface that can enable location-based access to expired ephemeral content of a requesting user is shown. These functions are further described with reference to the example embodiments of the map GUI 612 previously discussed with respect to other aspects of the present disclosure.

[0342] At operation 1910 , the map GUI 612 operates in a normal mode, wherein access is provided at operation 1930 to live snapshots uploaded by all users for general availability (eg, posted to Our Stories) using the various mechanisms previously described.

[0343] However, at operation 1920, the user can switch the map GUI 612 to a history mode. In some embodiments, the map GUI 612 includes a toggle key that can be operated to switch back and forth between a normal mode and a memory mode. Alternatively or additionally, searching in memory mode can include launching a memory search interface and / or text box.

[0344] In memory mode, the user can browse their own outdated snapshots via the map 618 of the map GUI 612 at operation 1950. This can include navigating to an area of ​​interest and triggering a location-based search by tapping a target location at operation 1960. In response, the user can browse to the outdated snapshots of the map 618 of the map GUI 612 at operation 1950. Figures 11A-11B The described location-based search performs the location-based search similarly, with the result set limited to the outdated snapshot of the requesting user. At operation 1970, the returned result set is again generated on the requesting client device 102.

[0345] Conversely, the user may enter a search string in operation 1960, in response to which search results are returned in operation 1970. In some embodiments, the result set for the search is limited to out-of-date snapshots having geo-tag information within the current map viewport 621.

[0346] During browsing via the map, at operation 1950, in some embodiments, the map GUI 612 also provides a display of historical activity information of the user's geographical distribution in the history of snapshots. For example, in some embodiments, the map 618 includes a heat map 625 that indicates the geographical distribution of the snapshot density of the user's expired snapshots (i.e., the number of snapshots per unit area). Alternatively or additionally, expired stories and / or temporary stories based on expired snapshots can be presented on the map 618 in memory mode.

[0347] The benefit of the location-based memory function is that it provides users with the ability to more intuitively and accurately investigate their historical media activities than would otherwise be the case. Thus, for example, when a user wishes to view a specific snapshot posted from a known location (e.g., a concert or sporting event), it is easier to locate the target snapshot by navigating to the relevant location on the map GUI 612 and initiating a location-based memory search for that location. In the absence of this location-targeted historical search, the user would need more information about the exact date and / or other tag information in order to accurately locate the desired snapshot.

[0348] The above-described aspects of the present disclosure include various example embodiments listed below as Examples 46-57, which are to be read in light of at least the preceding portions of the specification.

[0349] Example System

[0350] Fig. 20 An example embodiment of a social media platform system 2000 is shown, which is configured to provide a map-based graphical user interface for social media applications, such as reference Figure 6A-11B In some embodiments, the map GUI 612 may be displayed, for example, via the social media application server system 108 ( Figure 1 ) provides the system 2000 and its associated components on the server side. In this case, the corresponding components of the system 2000 can be provided by executing the social media server application 114 on the application server 112. In other embodiments, one or more components of the system 2000 are provided on the client side, for example, by a corresponding client device 102 ( Figure 1 ). In another embodiment, the system 2000 is provided in cooperation on the server side and the client side, and the application server 112 and the client device 102 communicating therewith are configured to provide corresponding system components by executing the social media client application 104 on the client device 102 and executing the social media server application 114 on the application server 112.

[0351] The system 2000 includes a map engine 2008 for generating a map GUI 612 that includes location-based social media information displayed in the map GUI 612. Thus, the map engine 2008 is configured to generate or facilitate generation of a map 618 ( Fig. 6A To this end, the map engine 2008 may be configured to present and cause display of specific story icons 631, 633, to identify and cause display of corresponding friend bitmoji 640, to generate heat map information and display or cause display of a heat map 625 overlaid on the map 618, and to perform reference FIG. 6A to FIG. 11B The operation of other related functions of the map GUI 612 is described.

[0352] The system 2000 also includes a replay mechanism 2016 configured to cause an automatic sequential replay of the content of a set of social media items or snapshots on the client device 102. The replay mechanism 2016 can thus cause a sequential display of all snapshots in a selected location story or spike story as previously described herein. In some embodiments, the replay mechanism 2016 can provide for sending a set of snapshots to the user device 102 in response to a selection of a corresponding story icon 631 / 633. In some such embodiments, upon initial rendering of a map view in the map GUI 612, the information automatically sent by the application server 112 to the client device 102 can include the first few snapshots (e.g., 2 or 3) for each story icon 631, 633 presented in the map viewport 621. Upon selection of a particular story icon 631 / 633, the first few snapshots in the story are immediately available for replay, while subsequent snapshots in the story are pulled from the application server 112 during the presentation of the first few snapshots.

[0353] The system 2000 also includes a content management system (CMS) 2024 that enables server-side management functions. The CMS 2024 provides a management interface that enables operators to manage content, for example, by defining various attributes of different locations and / or event stories. In this example embodiment, the CMS 2024 also includes the collection management system 204 ( Figure 2 ). CMS2024 is configured for automatic or semi-automatic compilation of corresponding social media libraries or stories as previously described. This may include curating or adjusting individual stories by using a server-side curation interface provided by CMS2024.

[0354] The system 2000 further includes a search engine 2033 configured to provide a search function for social media content via the map GUI 612. In particular, in this example embodiment, the search engine 2033 provides a search function for social media content via the search interface 1010 ( Figures 10A-10D ) and by directly selecting map 618 ( Figures 11A-11B ) via both user-directed searches for target locations on the Internet and via location-based searches.

[0355] The system 2000 further includes a user location service mechanism 2037, which is configured to determine the corresponding user location (in this example embodiment, indicated by the corresponding device location) so as to determine the specific friend users that can be viewed through the map GUI 612 for each user, and to provide the corresponding user location information to display the relevant user icons at the corresponding display locations. In some embodiments, the user location service mechanism 2037 includes (as part of the server system 108) a user location data store and a per-user access control list (ACL) that lists the specific friend users that can be viewed by each user. In some embodiments, the per-user ACL specifies a respective viewing level granularity for each viewable user. In this example embodiment, the user location service mechanism 2037 is also configured to determine and manage the corresponding user display granularity. This includes calculating the imprecise display location of some users and displaying the corresponding user icons at the imprecise display location.

[0356] The system 2000 also includes an analyzer 2050 that is configured to process social media activity data to calculate abnormality metrics for different areas to be served by the map GUI 612. In some embodiments, the analyzer 2050 generates a historical model of the geospatial distribution of social media activity using probabilistic rendering of a single snapshot. Activity data from the current or near live time window is mapped to the historical model and corresponding abnormality scores are calculated for different corresponding locations in the map. The abnormality score can be used by the map engine 2008 to render content, to determine the size of the spike icon 633, and to render heat map information, etc.

[0357] Machine and software architecture

[0358] In some embodiments, in combination Figure 1-20 The systems, system components, methods, applications, etc. described are implemented in the context of a machine and associated software architecture. The following paragraphs describe representative software architectures and machine (eg, hardware) architectures suitable for use with the disclosed embodiments.

[0359] Software architectures are used in conjunction with hardware architectures to create devices and machines configured for specific purposes. For example, a specific hardware architecture coupled with a specific software architecture will create a mobile device, such as a mobile phone, a tablet device, etc. Slightly different hardware and software architectures may produce smart devices for the "Internet of Things", while another combination produces a server computer for use within a cloud computing architecture. The software and hardware architectures presented herein are example architectures for implementing the present disclosure and are not intended to be exhaustive of possible architectures that may be used to implement the present disclosure.

[0360] Summary of Selected Example Embodiments

[0361] From the foregoing description, it will be seen that many example embodiments and combinations of example embodiments are disclosed.The disclosed embodiments include, but are not limited to, the following enumerated list of example embodiments.

[0362] Example 1: A method comprising:

[0363] assigning, on a server system for a social media platform, an availability parameter to a defined geographic region, the assigned availability parameter being different than a default availability parameter associated by default with a plurality of geographic regions managed by the server system;

[0364] causing generation of a map-based graphical user interface (GUI) on a user device, the map-based GUI having an interactive map providing access to geo-tagged social media items, each geo-tagged social media item having an associated geographic location; and

[0365] Based at least in part on the assigned availability parameters, social media content uploaded to the social media platform can be viewed via a map-based GUI such that the availability of each social media item having an associated geographic location corresponding to a defined geographic area is automatically restricted based on the assigned availability parameters.

[0366] Example 2: The method of claim 1, wherein making the social media content available comprises filtering the social media content to exclude each social media item having a geographic location corresponding to a defined geographic region.

[0367] Example 3: The method of claim 2, wherein, for each of a plurality of social media items comprising social media content, the filtering comprises:

[0368] identifying a geographic location of the social media item based on geo-tag information associated with the social media item;

[0369] identifying a specific geographic area among a plurality of defined geographic areas, wherein the identified geographic location falls within the specific geographic area;

[0370] identifying corresponding availability parameters associated with the identified defined geographic area; and

[0371] An availability status of the social media item is determined based on the identified availability parameter.

[0372] Example 4: The method of claims 1-3, wherein the assigned availability parameter indicates exclusion from availability such that any social media item having a geographic location within a defined geographic area is excluded from availability for all users via a map-based GUI.

[0373] Example 5: A method according to claims 1-3, wherein the assigned availability parameters indicate conditional exclusion based on one or more user attributes such that the availability of each social media item having a geographic location within a defined geographic area varies via a map-based GUI depending on one or more attributes of a user associated with the user device.

[0374] Example 6: The method of claim 5, wherein the availability parameter indicates an age limit value.

[0375] Example 7: The method of claim 6, wherein, for each social media item having a geographic location within a defined geographic area, making the social media content available comprises:

[0376] determining an age value of a user associated with the user device; and

[0377] The social media item is made available via the map-based GUI, conditional upon the user's age value being greater than a threshold age indicated by an age limit value associated with a defined geographic area.

[0378] Example 8: The method according to claims 1-7, further comprising:

[0379] A curation interface is provided at the server system, the curation interface enabling management of a plurality of defined geographic regions, wherein assignment of availability parameters to the defined geographic regions is responsive to selective user input by an operator via the curation interface.

[0380] Example 9: The method of claim 8, further comprising allowing an operator to define a geographic region via a curation interface.

[0381] Example 10: The method of claims 1-9, wherein assigning the availability parameter is performed in an automated process based at least in part on received user reports related to social media items originating from a defined geographic area.

[0382] Example 11: A system comprising:

[0383] one or more computer processor devices; and

[0384] One or more memories having machine-readable instructions stored thereon that, when executed, configure one or more computer processor devices to perform operations comprising:

[0385] assigning, on a server system for a social media platform, an availability parameter to a defined geographic region, the assigned availability parameter being different than a default availability parameter associated by default with a plurality of geographic regions managed by the server system;

[0386] causing generation of a map-based graphical user interface (GUI) on a user device, the map-based GUI having an interactive map providing access to geo-tagged social media items, each geo-tagged social media item having an associated geographic location; and

[0387] Based at least in part on the assigned availability parameters, social media content uploaded to the social media platform can be viewed via a map-based GUI such that the availability of each social media item having an associated geographic location corresponding to a defined geographic area is automatically restricted based on the assigned availability parameters.

[0388] Example 12: The system of claim 11, wherein making the social media content available comprises filtering the social media content to exclude each social media item having a geographic location corresponding to a defined geographic region.

[0389] Example 13: The system of claim 12, wherein the instructions configure one or more computer processor devices to filter the social media content in a process for each of a plurality of social media items that include the social media content, the process comprising:

[0390] identifying a geographic location of the social media item based on geo-tag information associated with the social media item;

[0391] identifying a specific geographic area among a plurality of defined geographic areas, wherein the identified geographic location falls within the specific geographic area;

[0392] identifying corresponding availability parameters associated with the identified defined geographic area; and

[0393] An availability status of the social media item is determined based on the identified availability parameter.

[0394] Example 14: The system of claims 11 to 13, wherein the assigned availability parameter indicates exclusion from availability such that any social media item having a geographic location within a defined geographic area is excluded from availability for all users via a map-based GUI.

[0395] Example 15: A system as described in claims 11-13, wherein the assigned availability parameters indicate conditional exclusion based on one or more user attributes such that the availability of each social media item having a geographic location within a defined geographic area varies via a map-based GUI depending on one or more attributes of a user associated with the user device.

[0396] Example 16: The system of claim 15, wherein the availability parameter indicates an age limit value.

[0397] Example 17: The system of claim 16, wherein the instructions configure the one or more computer processor devices to, for each social media item having a geographic location within a defined geographic area, make the social media content available in a process comprising:

[0398] determining an age value of a user associated with the user device; and

[0399] The social media item is made available via the map-based GUI, conditional upon the user's age value being greater than a threshold age indicated by an age limit value associated with a defined geographic area.

[0400] Example 18: The system of claims 11-17, wherein the instructions further configure one or more computer processor devices to:

[0401] A curation interface is provided at the server system, the curation interface enabling management of a plurality of defined geographic regions, wherein assignment of availability parameters to the defined geographic regions is responsive to selective user input by an operator via the curation interface.

[0402] Example 19: The system of claims 11-18, wherein the instructions configure one or more computer processor devices such that assignment of availability parameters is performed in an automated process based at least in part on received user reports related to social media items originating from a defined geographic area.

[0403] Example 20: A computer-readable storage medium having instructions stored thereon, which when executed cause a machine to perform operations, the operations comprising:

[0404] assigning, on a server system for a social media platform, an availability parameter to a defined geographic region, the assigned availability parameter being different than a default availability parameter associated by default with a plurality of geographic regions managed by the server system;

[0405] causing generation of a map-based graphical user interface (GUI) on a user device, the map-based GUI having an interactive map providing access to geo-tagged social media items, each geo-tagged social media item having an associated geographic location; and

[0406] Based at least in part on the assigned availability parameters, social media content uploaded to the social media platform can be viewed via a map-based GUI such that the availability of each social media item having an associated geographic location corresponding to a defined geographic area is automatically restricted based on the assigned availability parameters.

[0407] Example 21: A method comprising:

[0408] At a server system for a social media platform, defining a plurality of geographic regions;

[0409] associating a corresponding collection interval with each of the plurality of geographic regions such that at least two different geographic regions have different corresponding collection intervals; and

[0410] A set of short-lived social media items is provided to a user via a social media platform, each short-lived social media item having:

[0411] corresponding geo-tag information indicating the corresponding geographic location; and

[0412] corresponding timestamp, an age value of the short-lived social media item, which is indicated by the time elapsed from the corresponding timestamp;

[0413] The short-term social media item set is limited to items whose corresponding age values ​​are less than an applicable collection interval, and the applicable collection interval is a collection interval for a geographical area corresponding to the corresponding geographical location of the item among multiple geographical areas of each item.

[0414] Example 22: The method according to claim 21, further comprising:

[0415] Assigning a default collection interval to a geographic area by default; and

[0416] Assign a modified collection interval to a specific geographic area, the modified collection interval being different from the default collection interval.

[0417] Example 23: The method according to claim 22, further comprising:

[0418] enabling generation of a map-based graphical user interface (GUI) for a social media platform on a user device, the map-based GUI having an interactive map via which geo-tagged social media content can be accessed on the user device;

[0419] receiving, via the map-based GUI, a user request to access social media items associated with a particular geographic area; and

[0420] In response to a user request, causing a plurality of social media items selected from the set of ephemeral social media items to be displayed in association with a particular geographic area of ​​an interactive map, the plurality of social media items being limited to the following items:

[0421] A geographic location with a geo-tagged indication of being within a specific geographic area; and

[0422] Has an age value that is less than the modified collection interval.

[0423] Example 24: The method of claim 23, wherein the modified collection interval is longer than the default collection interval.

[0424] Example 25: The method of claim 23, wherein the modified collection interval is shorter than a default collection interval.

[0425] Example 26: The method according to any one of claims 23-25, further comprising:

[0426] causing display of social media activity information in a map indicating underlying social media activity metrics for a particular geographic area,

[0427] Therein, the social media items on which the base social media activity metric is based are restricted to items having corresponding age values ​​that are less than the modified collection interval.

[0428] Example 27: The method according to any one of claims 23-25, further comprising:

[0429] causing display of social media activity information on a map indicating underlying social media activity metrics for a particular geographic area;

[0430] Therein, the method further includes calculating the base social media activity metric similarly for different geographic regions without considering differences between corresponding collection intervals.

[0431] Example 28: The method of any of claims 23-27, wherein the assignment of the modified collection interval is performed by operator input received via a curation interface generated by the server system.

[0432] Example 29: The method of any of Claims 23-27, wherein the assignment of modified collection intervals comprises an at least partially automated process based on automatic identification of candidates for changes in collection intervals based on predetermined social media activity metrics.

[0433] Example 30: A system comprising:

[0434] one or more computer processor devices; and

[0435] One or more memories having computer readable instructions stored thereon, which when executed configure one or more computer processor devices to perform operations including the method of any one of claims 21-29.

[0436] Example 31: A computer-readable storage medium having instructions stored thereon for causing a machine to perform operations including the method described in any one of claims 21-29 when executing the instructions.

[0437] Example 32: A method comprising:

[0438] accessing, via the social media platform, a plurality of social media items posted to the social media platform for general availability, each social media item including visual media content;

[0439] generating a respective quality estimate for each of the plurality of social media items in an automated process performed using a quality assessment system comprising one or more computer processor devices configured to perform the automated process; and

[0440] A subset of the plurality of social media items is made available for viewing online on a social media platform by a respective user device, one or more of the plurality of social media items being excluded from the subset of items based on their respective quality estimates.

[0441] Example 33: The method of claim 32, further comprising:

[0442] In an automated operation performed using one or more computer devices configured to perform an automated process, determining a respective acceptable status for each of the plurality of social media items based at least in part on the corresponding quality estimates; and

[0443] One or more social media items are excluded from availability via the social media platform based on their respective acceptable statuses.

[0444] Example 34: The method of any of claims 32 or 33, further comprising forming a subset of social media items by excluding from availability each social media item in a plurality of social media items having a corresponding quality estimate below a predetermined threshold.

[0445] Example 35: The method of any of Claims 32-34, wherein, for each social media item, generation of a corresponding quality estimate is based at least in part on generation of a content quality score associated with visual media content of the social media item.

[0446] Example 36: The method of claim 35, wherein generating the content quality score is performed using a trained artificial neural network.

[0447] Example 37: The method according to claim 36 also includes: training the previous operation of the neural network by inputting training data related to multiple historical social media items into the artificial neural network, the training data of each historical social media item including corresponding visual media content and related quality labels.

[0448] Example 38: The method of claim 37, wherein the quality label is binary, indicating whether the visual media content of each corresponding historical social media item is acceptable or unacceptable.

[0449] Example 39: The method of any one of claims 32-38, wherein generation of the quality estimate is based at least in part on metadata collected about one or more device properties of a user device through which visual media content of the corresponding social media item is collected.

[0450] Example 40: The method of claim 39, wherein the one or more device attributes include metadata indicating which user device's camera captured the corresponding visual media content.

[0451] Example 41: The method of claim 39 or claim 40, wherein the one or more device attributes include movement data indicating a speed of movement of the user device during image capture.

[0452] Example 42: The method of any of claims 39-41, wherein the one or more device properties include altitude data indicating an altitude of the device during image acquisition.

[0453] Example 43: The method of any of claims 39-42, wherein the one or more device properties include image jitter indicated by accelerometer data of the user device during image acquisition.

[0454] Example 44: A system comprising:

[0455] one or more computer processor devices; and

[0456] One or more memory devices having instructions stored thereon that configure one or more computer processor devices to perform operations including the method of any of claims 32-43 when the instructions are executed.

[0457] Example 45: A non-transitory computer-readable medium having instructions stored thereon for causing a machine to perform operations including the method described in any one of claims 32-43 when the instructions are executed.

[0458] Example 46: A method comprising:

[0459] causing a map-based graphical user interface (GUI) of the social media platform to be displayed on a user device associated with the particular user, the map-based GUI including enabling user navigation to display a target geographic area; and

[0460] Providing access to geo-tagged historical social media content previously uploaded by a specific user via an interactive map.

[0461] Example 47: The method of claim 46, wherein the historical social media content includes expired ephemeral social media items.

[0462] Example 48: The method of claim 46 or claim 47, wherein the map-based GUI is selectively switchable between:

[0463] a default mode, in which the map-based GUI provides access to social media content uploaded by multiple other users; and

[0464] History mode, where the map-based GUI specifically provides access to historical geo-tagged social media content previously uploaded by a specific user.

[0465] Example 49: The method according to any one of claims 46-49, further comprising:

[0466] receiving, via the map-based GUI, a search query for historical social media content posted by a particular user, the search query including a geographic constraint; and

[0467] Based on the search query, identifying a result set including social media items previously uploaded by a particular user and having associated geo-tag data that satisfy the geographic constraint; and

[0468] The identified result set is caused to be displayed on a user device.

[0469] Example 50: The method of claim 49, wherein the geographic constraint comprises: geo-tag information of social media items included in the result set falls within a specified geographic area.

[0470] Example 51: The method of claim 50, wherein the specified geographic area corresponds to an area displayed in a map viewport of a map-based GUI.

[0471] Example 52: The method of claim 50, wherein the specified geographic area is defined based on a target location indicated by a user interaction with the interactive map.

[0472] Example 53: The method of any of Claims 46-52, further comprising: displaying social media activity information about the geographic distribution of historical social media content with geo-tags previously uploaded by a specific user on a map of the map-based GUI.

[0473] Example 54: The method of claim 53, wherein the geographically distributed social media activity information includes a heat map indicating a geographical distribution of activity metrics for historical social media content for a particular user.

[0474] Example 55: The method of claim 54, wherein the activity metric is based at least in part on a density metric of historical geo-tagged social media content for a particular user.

[0475] Example 56: A system comprising:

[0476] One or more computer processor devices:

[0477] One or more memory devices having instructions stored thereon that configure one or more computer processor devices to perform operations including the method of any one of claims 46-55 when executing the instructions.

[0478] Example 57: A non-transitory computer-readable storage medium having instructions stored thereon for causing a machine to perform operations including the method described in any one of claims 46-55 when the instructions are executed.

[0479] Software Architecture

[0480] Fig.21 is a block diagram illustrating an example software architecture 2106 that may be used in conjunction with the various hardware architectures described herein. Fig.21 is a non-limiting example of a software architecture, and it will be appreciated that many other architectures may be implemented to facilitate the functionality described herein. Software architecture 2106 may be implemented in a system such as Fig. 222200, which includes a processor 2204, a memory 2214, and an I / O component 2218, among others. The representative hardware layer 2152 includes a processing unit 2154 with associated executable instructions 2104. The executable instructions 2104 represent executable instructions of the software architecture 2106, including implementations of the methods, components, etc. described herein. The hardware layer 2152 also includes a memory and / or storage module memory / storage device 2156, which also has executable instructions 2104. The hardware layer 2152 may also include other hardware 2158.

[0481] exist Fig.21 In the exemplary architecture of , software architecture 2106 can be conceptualized as a stack of layers, wherein each layer provides specific functionality. For example, software architecture 2106 may include layers such as operating system 2102, library 2120, framework / middleware 2118, application 2116, and presentation layer 2114. In operation, application 2116 and / or other components within a layer may call application programming interface (API) call 2108 through a software stack, and receive a response from message 2108. The layers shown are representative in nature, and not all software architectures have all layers. For example, some mobile or dedicated operating systems may not provide framework / middleware 2118, while other operating systems may provide such layers. Other software architectures may include additional layers or different layers.

[0482] The operating system 2102 can manage hardware resources and provide public services. The operating system 2102 may include, for example, a kernel 2122, services 2124, and drivers 2126. The kernel 2122 may be used as an abstraction layer between the hardware and other software layers. For example, the kernel 2122 may be responsible for memory management, processor management (e.g., scheduling), component management, networking, security settings, etc. Services 2124 may provide other public services to other software layers. Drivers 2126 are responsible for controlling or interfacing with the underlying hardware. For example, drivers 2126 include display drivers, camera drivers, drivers, flash drivers, serial communication drivers (e.g., Universal Serial Bus (USB) drivers), Wi-Fi drivers, audio drivers, power management drivers, etc., depending on the hardware configuration.

[0483] The library 2120 provides a common infrastructure used by the application 2116 and / or other components and / or layers. The library 2120 provides functions that allow other software components to perform tasks in an easier manner than directly interfacing with the underlying operating system 2102 functions (e.g., kernel 2122, service 2124, and / or driver 2126). The library 2120 may include a system library 2144 (e.g., a C standard library), which may provide functions such as memory allocation functions, string manipulation functions, mathematical functions, etc. In addition, the library 2120 may include an API library 2146, such as a media library (e.g., a library for supporting the presentation and operation of various media formats (such as MPREG4, H.264, MP3, AAC, AMR, JPG, PNG)), a graphics library (e.g., an OpenGL framework that can be used to present 2D and 3D in graphics content on a display), a database library (e.g., SQLite that can provide various relational database functions), a web library (e.g., WebKit that can provide web browsing functions), etc. The library 2120 may also include various other libraries 2148 to provide many other APIs to the applications 2116 and other software components / modules.

[0484] The framework / middleware 2118 provides a higher level common infrastructure that can be used by the applications 2116 and / or other software components / modules. For example, the framework / middleware 2118 can provide various graphical user interface (GUI) functions, advanced resource management, advanced location services, etc. The framework / middleware 2118 can provide a wide range of other APIs that can be used by the applications 2116 and / or other software components / modules, some of which can be targeted to a specific operating system 2102 or platform.

[0485] Applications 2116 include built-in applications 2138 and / or third-party applications 2140. Examples of representative built-in applications 2138 may include, but are not limited to, contact applications, browser applications, book reader applications, location applications, media applications, messaging applications, and / or game applications. Third-party applications 2140 may include applications that are hosted by entities other than the vendor of a particular platform using ANDROID TM or IOS TM Software Development Kit (SDK) for developing applications and can be used on platforms such as IOS TM ANDROID TM , Mobile software running on the mobile operating system of the phone or other mobile operating systems. The third-party application 2140 can call the API call 2108 provided by the mobile operating system (such as the operating system 2102) to implement the functions described herein.

[0486] Applications 2116 may use built-in operating system functionality (e.g., kernel 2122, services 2124, and / or drivers 2126), libraries 2120, and framework / middleware 2118 to create user interfaces to interact with users of the system. Alternatively or additionally, in some systems, interaction with the user may occur through a presentation layer, such as presentation layer 2114. In these systems, the application / component "logic" may be separated from aspects of the application / component that interact with the user.

[0487] Hardware Architecture

[0488] Fig. 22 2200 is a block diagram illustrating components of a machine 2200 capable of reading instructions from a machine-readable medium (e.g., a machine-readable storage medium) and performing any one or more of the methods discussed herein, according to some example embodiments. Specifically, Fig. 22 A graphical representation of a machine 2200 in the form of an example of a computer system is shown, within which instructions 2210 (e.g., software, programs, applications, small applications, application software or other executable code) for causing the machine 2200 to perform any one or more of the methods discussed herein can be executed. In this way, instructions 2210 can be used to implement the modules or components described herein. Instructions 2210 transform a general non-programmed machine 2200 into a specific machine 2200 that is programmed to perform the functions described and shown in the described manner. In alternative embodiments, the machine 2200 operates as a stand-alone device or can be coupled (e.g., networked) to other machines. In a networked deployment, the machine 2200 can operate in the capacity of a server machine or a client machine in a server-client network environment, or as a peer machine in a peer (or distributed) network environment. The machine 2200 may include, but is not limited to, a server computer, a client computer, a personal computer (PC), a tablet computer, a laptop computer, a netbook, a set-top box (STB), a personal digital assistant (PDA), an entertainment media system, a cellular phone, a smart phone, a mobile device, a wearable device (e.g., a smart watch), a smart home device (e.g., a smart appliance), other smart devices, a network device, a network router, a network switch, a network bridge, or any machine capable of sequentially or otherwise executing instructions 2210 that specify actions to be taken by the machine 2200. In addition, while only a single machine 2200 is shown, the term "machine" may also be taken to include a collection of machines that individually or jointly execute instructions 2210 to perform any one or more of the methodologies discussed herein.

[0489] The machine 2200 may include a processor 2204, a memory / storage 2206, and an I / O component 2218, which may be configured to communicate with each other, for example, via a bus 2202. The memory / storage 2206 may include a memory 2214 (such as a main memory or other memory storage) and a storage unit 2216, both of which are accessible by the processor 2204, such as via the bus 2202. The storage unit 2216 and the memory 2214 store instructions 2210 that embody any one or more of the methods or functions described herein. During execution of the machine 2200, the instructions 2210 may also reside, in whole or in part, within the memory 2214, within the storage unit 2216, within at least one of the processors 2204 (e.g., within a cache memory of a processor), or any suitable combination thereof. Thus, the memory 2214, the storage unit 2216, and the memory of the processor 2204 are examples of machine-readable media. In some embodiments, processor 2204 includes multiple distributed processors 2208 - 2212 , each of which has access to an associated memory storing instructions 2210 .

[0490] I / O components 2218 may include various components to receive input, provide output, generate output, send information, exchange information, collect measurements, etc. The specific I / O components 2218 included in a particular machine 2200 will depend on the type of machine. For example, a portable machine such as a mobile phone may include a touch input device or other such input mechanism, while a headless server machine may not include such a touch input device. It will be appreciated that I / O components 2218 may include Fig. 22 Many other components not shown in the figure. The I / O components 2218 are grouped according to function only to simplify the following discussion, and the grouping is by no means limiting. In various example embodiments, the I / O components 2218 may include output components 2226 and input components 2228. The output components 2226 may include visual components (e.g., displays such as plasma display panels (PDPs), light emitting diode (LED) displays, liquid crystal displays (LCDs), projectors, or cathode ray tubes (CRTs)), acoustic components (e.g., speakers), tactile components (e.g., vibration motors, resistor mechanisms), other signal generators, and the like. The input components 2228 may include alphanumeric input components (e.g., keyboards, touch screens configured to receive alphanumeric input, optical keyboards, or other alphanumeric input components), point-based input components (e.g., mice, touch pads, trackballs, joysticks, motion sensors, or other pointing instruments), tactile input components (e.g., physical buttons, touch screens that provide the location and / or force of touch or touch gestures, or other tactile input components), audio input components (e.g., microphones), and the like.

[0491] In further example embodiments, the I / O components 2218 may include a biometric component 2230, a motion component 2234, an environment component 2236 or a positioning component 2238, as well as a variety of other components. For example, the biometric component 2230 may include a component for detecting expressions (e.g., hand expressions, facial expressions, voice expressions, body postures, or eye tracking), measuring biosignals (e.g., blood pressure, heart rate, body temperature, sweat, or brain waves), identifying people (e.g., voice recognition, retinal recognition, facial recognition, fingerprint recognition, or EEG-based recognition), etc. The motion component 2234 may include an acceleration sensor component (e.g., an accelerometer), a gravity sensor component, a rotation sensor component (e.g., a gyroscope), etc. Environmental component 2236 may include, for example, an illumination sensor component (e.g., a photometer), a temperature sensor component (e.g., one or more thermometers that detect ambient temperature), a humidity sensor component, a pressure sensor component (e.g., a barometer), an acoustic sensor component (e.g., one or more microphones that detect background noise), a proximity sensor component (e.g., an infrared sensor that detects nearby objects), a gas sensor (e.g., a gas sensor used to detect hazardous gas concentrations or measure pollutants in the atmosphere for safety purposes), or other components that may provide indications, measurements, or signals corresponding to the surrounding physical environment. Positioning component 2238 may include a positioning sensor component (e.g., a global positioning system (GPS) receiver component), an altitude sensor component (e.g., an altimeter or barometer that can detect the altitude from which air pressure can be derived), an orientation sensor component (e.g., a magnetometer), etc.

[0492] Communication can be achieved using a variety of technologies. I / O components 2218 may include a communication component 2240 that is operable to couple machine 2200 to network 2232 or device 2220 via coupler 2222 and coupler 2224, respectively. For example, communication component 2240 may include a network interface component or another suitable device that interfaces with network 2232. In other examples, communication component 2240 includes a wired communication component, a wireless communication component, a cellular communication component, a near field communication (NFC) component, Components (e.g., low power ), Components and other communication components that provide communication via other modes. Device 2220 may be another machine or any of a variety of peripheral devices (eg, a peripheral device coupled via a universal serial bus (USB)).

[0493] In addition, the communication component 2240 can detect an identifier or include a component operable to detect an identifier. For example, the communication component 2240 can include a radio frequency identification (RFID) tag reader component, an NFC smart tag detection component, an optical reader component (e.g., an optical sensor for detecting a one-dimensional barcode such as a universal product code (UPC) barcode, a multi-dimensional barcode such as a Quick Response (QR) code, an Aztec code, a data matrix, a digital graphic, a Max code, a PDF417, a Super code, a UCC RSS-2D barcode, and other optical codes), or an acoustic detection component (e.g., a microphone for identifying an audio signal of a tag). In addition, various information can be derived via the communication component 2240 that can indicate a particular location, such as a location via an Internet Protocol (IP) geographic location, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location via a GPS, a location Location via signal triangulation, location via detection of NFC beacon signals, etc.

[0494] Glossary

[0495] "Carrier signal" in this context refers to any intangible medium capable of storing, encoding or carrying instructions for execution by a machine, and includes digital or analog communications signals or other intangible media to facilitate communication of such instructions. Instructions may be sent or received over a network using a transmission medium via a network interface device and using any of a number of well-known transmission protocols.

[0496] A "client device" in this context refers to any machine that interfaces with a communication network to obtain resources from one or more server systems or other client devices. A client device may be, but is not limited to, a mobile phone, a desktop computer, a laptop computer, a portable digital assistant (PDA), a smart phone, a tablet computer, an ultrabook, a netbook, a laptop computer, a multiprocessor system, a microprocessor-based or programmable consumer electronics product, a game console, a set-top box, or any other communication device with which a user can access a network.

[0497] A "communication network" in this context refers to one or more parts of a network, which may be an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless WAN (WWAN), a metropolitan area network (MAN), the Internet, a part of the Internet, a part of the public switched telephone network (PSTN), a plain old telephone service (POTS) network, a cellular telephone network, a wireless network, A network, another type of network, or a combination of two or more such networks. For example, the network or a portion of the network may include a wireless or cellular network, and the coupling may be a code division multiple access (CDMA) connection, a global system for mobile communications (GSM) connection, or another type of cellular or wireless coupling. In this example, the coupling may implement any of various types of data transmission technologies, such as single carrier radio transmission technology (1xRTT), evolution data optimized (EVDO) technology, general packet radio service (GPRS) technology, enhanced data rates for GSM evolution (EDGE) technology, the third generation partnership project (3GPP) including 3G, fourth generation wireless (4G) networks, universal mobile telecommunications system (UMTS), high speed packet access (HSPA), world wide interoperability for microwave access (WiMAX), long term evolution (LTE) standards, other standards defined by various standards development organizations, other remote protocols, or other data transmission technologies.

[0498] A "short message" in this context refers to a message that is accessible during a time-limited duration. A short message can be text, an image, a video, etc. The access time for a short message can be set by the sender of the message. Alternatively, the access time can be a default setting or a setting specified by the recipient. Regardless of the setting technology, the message is transient. The "snapshot" referenced in this description is a short message. Short messages are not limited to communications with a designated single recipient, but also include social media items uploaded to a library or collection for viewing by multiple users. Therefore, the term "short message" includes photos or video clips (which may be enhanced or not) that can be provided for public viewing within a limited period of time.

[0499] "Machine-readable medium" in this context refers to a component, device, or other tangible medium capable of temporarily or permanently storing instructions and data, and may include, but is not limited to, random access memory (RAM), read-only memory (ROM), buffer memory, flash memory, optical media, magnetic media, cache memory, other types of memory (e.g., erasable programmable read-only memory (EEPROM)), and / or any suitable combination thereof. The term "machine-readable medium" should be deemed to include a single medium or multiple media (e.g., a centralized or distributed database, or associated caches and servers) capable of storing instructions. The term "machine-readable medium" may also be deemed to include any medium or combination of multiple media capable of storing instructions (e.g., code) executed by a machine, such that the instructions, when executed by one or more processors of the machine, cause the machine to perform any one or more of the methods described herein. Thus, "machine-readable medium" refers to a single storage device or device, as well as a "cloud-based" storage system or storage network comprising multiple storage devices or devices. The term "machine-readable medium" excludes the signal itself.

[0500] "Component" in this context refers to a device, physical entity or logic with boundaries defined by function or subroutine calls, branch points, application program interfaces (APIs) or other technologies that provide partitioning or modularization of specific processing or control functions. Components can be combined with other components via their interfaces to perform machine processes. Components can be encapsulated functional hardware units designed for use with other components, and part of a program that generally performs specific functions of related functions. Components can constitute software components (e.g., codes embodied on machine-readable media) or hardware components. "Hardware components" are tangible units that can perform certain operations and can be configured or arranged in a certain physical manner. In various example embodiments, one or more computer systems (e.g., stand-alone computer systems, client computer systems, or server computer systems) or one or more hardware components of a computer system (e.g., a processor or a group of processors) can be configured by software (e.g., an application or an application portion) to operate as hardware components that perform certain operations as described herein. Hardware components can also be implemented mechanically, electronically, or any suitable combination thereof. For example, a hardware component may include a dedicated circuit or logic that is permanently configured to perform certain operations. A hardware component may be a dedicated processor, such as a field programmable gate array (FPGA) or an application specific integrated circuit (ASIC). A hardware component may also include a programmable logic or circuit that is temporarily configured by software to perform certain operations. For example, a hardware component may include software executed by a general purpose processor or other programmable processor. After being configured by the software, the hardware component becomes a specific machine (or a specific component of a machine) that is uniquely customized to perform the configured function and is no longer a general purpose processor. It should be understood that the decision to mechanically implement a hardware component in a dedicated and permanently configured circuit or in a temporarily configured circuit (e.g., configured by software) may be driven by cost and time considerations. Therefore, the phrase "hardware component" (or "hardware-implemented component") should be understood to include a tangible entity, i.e., an entity that is physically constructed, permanently configured (e.g., hardwired) or temporarily configured (e.g., programmed), that operates in a certain manner or performs certain operations described herein. Considering an embodiment in which a hardware component is temporarily configured (e.g., programmed), it is not necessary to configure or instantiate each hardware component in the hardware component at any one time. For example, where a hardware component includes a general purpose processor that is configured by software to be a special purpose processor, the general purpose processor may be configured as corresponding different special purpose processors (e.g., including different hardware components) at different times. The software configures a particular processor or processors accordingly, e.g., to constitute a particular hardware component at one time and to constitute a different hardware component at a different time. Hardware components may provide information to and receive information from other hardware components. Thus, the described hardware components may be viewed as being communicatively coupled.In the case of multiple hardware components existing at the same time, communication can be achieved by signal transmission between two hardware components or more hardware components (for example, through appropriate circuits and buses). In embodiments where multiple hardware components are configured or instantiated at different times, communication between the hardware components can be achieved, for example, by storing and obtaining information in a memory structure accessible to multiple hardware components. For example, a hardware component can perform an operation and store the output of the operation in a memory device coupled to it in communication. Then, another hardware component can access the memory device later to obtain and process the stored output. The hardware component can also initiate communication with an input or output device and can operate on a resource (for example, a collection of information). The various operations of the example methods described herein can be performed at least in part by one or more processors that are temporarily configured (for example, by software) or permanently configured to perform related operations. Whether temporarily configured or permanently configured, the processor can constitute a processor-implemented component that is used to perform one or more operations or functions described herein. As used herein, a "processor-implemented component" refers to a hardware component implemented using one or more processors. Similarly, the method described herein can be implemented at least in part by a processor, wherein a specific processor or multiple processors are examples of hardware. For example, at least some of the operations in the method can be performed by one or more processors or components implemented by the processor. In addition, one or more processors can also operate to support the performance of related operations in a "cloud computing" environment or as "software as a service" (SaaS). For example, at least some of the operations in the operation can be performed by a group of computers (as an example of a machine including a processor), and these operations can be accessed via a network (e.g., the Internet) and via one or more appropriate interfaces (e.g., application program interface (API)). The performance of some operations in the operation can be distributed between processors, not only residing in a single machine, but also deployed on multiple machines. In some example embodiments, the processor or the component implemented by the processor can be located in a single geographical location (e.g., in a home environment, an office environment, or a server cluster). In other example embodiments, the processor or the component implemented by the processor can be distributed in multiple geographical locations.

[0501] A "processor" in this context refers to any circuit or virtual circuit (a physical circuit emulated by logic executed on an actual processor) that manipulates data values ​​according to control signals (e.g., "commands," "opcodes," "machine code," etc.) and produces corresponding output signals applied to operate a machine. For example, a processor may be a central processing unit (CPU), a reduced instruction set computing (RISC) processor, a complex instruction set computing (CISC) processor, a graphics processing unit (GPU), a digital signal processor (DSP), an application specific integrated circuit (ASIC), a radio frequency integrated circuit (RFIC), or any combination thereof. The processor may further be a multi-core processor having two or more independent processors (sometimes referred to as "cores") that can execute instructions simultaneously.

[0502] In this context, a "timestamp" refers to a sequence of characters or encoded information that identifies when a particular event occurred, such as giving a date and time of day, sometimes with accuracy to fractions of a second.

[0503] language

[0504] Throughout the specification, multiple instances can be implemented as components, operations or structures described as single instances. Although the individual operations of one or more methods are shown and described as individual operations, one or more individual operations can be performed simultaneously, and it is not necessary to perform the operations in the order shown, unless the context and / or logic clearly indicate otherwise. The structure and function presented as the individual components in the example configuration can be implemented as a combined structure or component. Similarly, the structure and function presented as a single component can be implemented as a plurality of components separated. These and other variations, modifications, additions and improvements fall within the scope of this paper theme.

[0505] Although an overview of the inventive subject matter has been described with reference to specific example embodiments, various modifications and changes may be made to these embodiments without departing from the broader scope of the embodiments of the present disclosure.

[0506] The embodiments shown herein are described in sufficient detail to enable those skilled in the art to practice the disclosed teachings. Other embodiments may be used and derived therefrom, so that structural and logical substitutions and changes may be made without departing from the scope of the present disclosure. Therefore, the specific embodiments should not be considered restrictive, and the scope of the various embodiments is limited only by the appended claims and the full scope of equivalents granted by these claims.

[0507] As used herein, the term "or" may be interpreted in an inclusive or exclusive manner. In addition, multiple instances may be provided for a resource, operation, or structure described herein as a single instance. Moreover, the boundaries between various resources, operations, modules, engines, and data stores are somewhat arbitrary, and specific operations are shown in the context of specific illustrative configurations. Accordingly, the specification and drawings are to be regarded as illustrative rather than restrictive.

Claims

1. A method comprising: At a server system for a social media platform, assigning an availability parameter to a defined geographic area, the assigned availability parameter being different than a default availability parameter associated with a plurality of geographic areas managed by the server system; causing generation of a map-based graphical user interface (GUI) on a user device, the map-based GUI having an interactive map providing access to geo-tagged social media items, each geo-tagged social media item having an associated geographic location; as well as Based at least in part on the assigned availability parameters, social media content uploaded to the social media platform is made available for viewing via the map-based GUI such that the availability of each social media item having an associated geographic location corresponding to the defined geographic area is automatically limited based on the assigned availability parameters.

2. The method according to claim 1, wherein: Making the social media content available includes filtering the social media content to exclude each social media item having a geographic location corresponding to the defined geographic area.

3. The method according to claim 2, wherein: The filtering includes, for each of a plurality of social media items that include the social media content: identifying the geographic location of the social media item based on geo-tag information associated with the social media item; identifying a particular defined geographic region within which the identified geographic location of the plurality of defined geographic regions falls; identifying corresponding availability parameters associated with the identified defined geographic area; as well as An availability status of the social media item is determined based on the identified availability parameter.

4. The method according to claim 1, wherein: The assigned availability parameter indicates an exclusion of availability such that any social media item having a geographic location within the defined geographic area is excluded from availability to all users via the map-based GUI.

5. The method according to claim 1, wherein: The assigned availability parameters indicate conditional exclusion based on one or more user attributes such that the availability of each social media item having a geographic location within the defined geographic area via the map-based GUI can vary depending on the one or more attributes of a user associated with the user device.

6. The method according to claim 5, wherein: The availability parameter indicates an age limit value.

7. The method according to claim 6, wherein: Making the social media content available includes, for each social media item having a geographic location within the defined geographic area: determining an age value of the user associated with the user device; as well as The social media item is enabled to be accessible via the map-based GUI conditional upon the age value of the user being greater than a threshold age indicated by the age limit value associated with the defined geographic area.

8. The method according to claim 1, further comprising: At the server system, a curation interface is provided that enables management of a plurality of defined geographic regions, wherein assigning the availability parameters to the defined geographic regions is responsive to selective user input by an operator via the curation interface.

9. The method of claim 8, further comprising enabling definition of the geographic area by the operator via the curation interface.

10. A system comprising: one or more computer processor devices; as well as one or more memories having machine-readable instructions stored thereon, the machine-readable instructions, when executed, configuring the one or more computer processor devices to perform operations comprising: At a server system for a social media platform, assigning an availability parameter to a defined geographic area, the assigned availability parameter being different than a default availability parameter associated with a plurality of geographic areas managed by the server system; causing generation of a map-based graphical user interface (GUI) on a user device, the map-based GUI having an interactive map providing access to geo-tagged social media items, each geo-tagged social media item having an associated geographic location; and Based at least in part on the assigned availability parameters, social media content uploaded to the social media platform is made available for viewing via the map-based GUI such that the availability of each social media item having an associated geographic location corresponding to the defined geographic area is automatically limited based on the assigned availability parameters.

11. The system according to claim 10, wherein: The instructions configure the one or more computer processor devices such that the assigning of the availability parameter is performed in an automated process based at least in part on received user reports related to social media items originating from the defined geographic area.

12. A computer-readable storage medium having instructions stored thereon, wherein the instructions cause a computer system to perform operations when the instructions are executed, the operations comprising: At a server system for a social media platform, assigning an availability parameter to a defined geographic area, the assigned availability parameter being different than a default availability parameter associated with a plurality of geographic areas managed by the server system; causing generation of a map-based graphical user interface (GUI) on a user device, the map-based GUI having an interactive map providing access to geo-tagged social media items, each geo-tagged social media item having an associated geographic location; as well as Based at least in part on the assigned availability parameters, social media content uploaded to the social media platform is made available for viewing via the map-based GUI such that the availability of each social media item having an associated geographic location corresponding to the defined geographic area is automatically limited based on the assigned availability parameters.

13. A method comprising: accessing, via a social media platform for general availability, a plurality of social media items posted to the social media platform, each social media item comprising visual media content; generating a respective quality estimate for each of the plurality of social media items in an automated process performed using a quality assessment system, the quality assessment system comprising one or more computer processor devices configured to perform the automated process; as well as A subset of the plurality of social media items is enabled for viewing online on the social media platform by a respective user device, one or more of the plurality of social media items being excluded from the subset of items based on their respective quality estimates.

14. The method according to claim 13, further comprising: In an automated operation performed using one or more computer devices configured to perform the automated process, determining a respective acceptable status for each of the plurality of social media items based at least in part on the corresponding quality estimate; as well as The one or more social media items are excluded from availability via the social media platform based on their respective acceptable statuses.

15. The method according to claim 13, wherein: For each social media item, generating a corresponding quality estimate is based at least in part on generating a content quality score associated with the visual media content of the social media item.

16. The method according to claim 15, wherein: The generation of the content quality score is performed using a trained artificial neural network.

17. The method of claim 16, further comprising training a prior operation of the artificial neural network by feeding training data related to a plurality of historical social media items to the artificial neural network, the training data for each historical social media item comprising corresponding visual media content and associated quality labels.

18. The method according to claim 17, wherein: The quality label is binary, indicating whether the visual media content of each corresponding historical social media item is acceptable or unacceptable.

19. The method according to claim 13, wherein: The generation of the quality estimate is based at least in part on metadata collected about one or more device properties of a user device through which visual media content of a corresponding social media item is collected.

20. A system comprising: one or more computer processor devices; as well as One or more memory devices having instructions stored thereon, the instructions configuring the one or more computer processor devices to perform operations when the instructions are executed, the operations comprising: accessing, via a social media platform for general availability, a plurality of social media items posted to the social media platform, each social media item comprising visual media content; generating, in an automated process, a corresponding quality estimate for each of the plurality of social media items; and A subset of the plurality of social media items is enabled for viewing online on the social media platform by a respective user device, one or more of the plurality of social media items being excluded from the subset of items based on their respective quality estimates.

Citation Information

Cited By

  • Map-based graphical user interface for ephemeral social media content

    US12393318B2

  • Selective location-based identity communication

    US12520101B2

  • Location-based search mechanism in a graphical user interface

    US12524128B2

  • Location-based social media search mechanism with dynamically variable search period

    US12530408B1