Facebook Patents Granted

Patents granted to Facebook by the U.S. Patent and Trademark Office (USPTO).

  • Patent number: 9491251
    Abstract: A notification system provides notifications to a user associated with multiple user devices. The notification system selects a user device to receive a notification based on user behavior, such as user interactions with the notification system via the user device or acknowledgments of notifications received from user devices. The notification is sent to the selected user device, and the notification system waits for an acknowledgment from the selected notification system for an acknowledgement delay period. If no acknowledgment is received within the acknowledgment delay period, an additional user device is selected and the notification is sent to the additional user device.
    Type: Grant
    Filed: November 27, 2012
    Date of Patent: November 8, 2016
    Assignee: Facebook, Inc.
    Inventors: Ken Deeter, Wayne Kao
  • Patent number: 9490996
    Abstract: The present disclosure relates to a home automation system that is automated based on user preferences provided by a social networking system, where the home automation system provides a short-range, high-speed wireless connection that is contained within the safe boundaries of a home. Briefly described, the home automation system employs one or more home automation devices to control various home devices within the home based on detection of one or more users' social profile, where each home automation device is configured to broadcast and communicate via a short-range, multi-gigabit-per-second (MGbps) wireless communication link that can be utilized by the various home devices. Furthermore, each home automation device is configured to be self-tuning, thereby enabling automatic efficient management of the MGbps wireless communication link.
    Type: Grant
    Filed: April 17, 2015
    Date of Patent: November 8, 2016
    Assignee: Facebook, Inc.
    Inventors: Narsing Vijayrao, Giovanni Coglitore
  • Patent number: 9489136
    Abstract: Some embodiments includes an interrupt-driven data transport architecture utilizing a memory channel bus. For example, a first logic component at a first computing device can initiate a data access request involving a second logic component at a second computing device. The first logic component can store request information associated with the data access request in a predefined memory space of a memory module connected via a memory channel bus to the first logic component and the second logic component. The first logic component can then generate a request-ready interrupt signal through one or more redundant pins of the memory channel bus. The second logic component can be triggered by the interrupt signal to read the request information from the predefined memory space. The second logic component can use that information to complete the request.
    Type: Grant
    Filed: February 4, 2015
    Date of Patent: November 8, 2016
    Assignee: Facebook, Inc.
    Inventors: Narsing Vijayrao, Jason Taylor
  • Patent number: 9491133
    Abstract: In particular embodiments, one or more computer systems of a social-networking system determine information associated with a product displayed on a display device and access a database of known products. The one or more computer systems of the social-networking system determine, by comparing the database of known products with the determined information associated with the product, an identity of the product displayed on the display device. The one or more computer systems of the social-networking system provide one or more instructions to display media content related to the identified product.
    Type: Grant
    Filed: September 17, 2015
    Date of Patent: November 8, 2016
    Assignee: Facebook, Inc.
    Inventors: Gregory Joseph Badros, David Harry Garcia, Mark Heynen, Brian Krausz, Cameron Alexander Marlow, Michael John McKenzie Toksvig, Erick Tseng
  • Patent number: 9489391
    Abstract: A file storage system may be implemented by coordinating non-exhaustible and exhaustible storage devices. The exhaustible storage devices may be lower grade flash based storage devices. The non-exhaustible storage devices may be storage devices based on magnetic recording mechanisms or higher grade flash storage. The file storage system may store received content items on the exhaustible storage devices. The file storage system may additionally store metadata for the content items and/or the file storage system on the non-exhaustible storage devices. During operation, the file storage system may globally optimize the content items on the exhaustible storage devices such that more heavily accessed items are moved to exhaustible storage devices that have experienced relatively few data operations. The file storage system can move less frequently accessed content items to exhaustible storage devices that have experienced a relatively large number of data operations.
    Type: Grant
    Filed: October 28, 2014
    Date of Patent: November 8, 2016
    Assignee: Facebook, Inc.
    Inventors: Amir Meir Michael, Song Liu, Jason Matthew Taylor, Yael Maguire, Per Brashers, Eitan Frachtenberg
  • Patent number: 9489711
    Abstract: Systems, methods, and non-transitory computer readable media configured to create, process, and/or modify images are provided. Recipient image data associated with an original image captured by a second computing system can be received by a first computing system. A first intermediate image may be generated based on the recipient image data. A first viewable image for display on the first computing system may be generated based on the first intermediate image.
    Type: Grant
    Filed: August 21, 2014
    Date of Patent: November 8, 2016
    Assignee: Facebook, Inc.
    Inventor: Alexandre Karpenko
  • Patent number: 9491207
    Abstract: A social networking system presents questions to a user on an interface associated with the social networking system to elicit information about the user that is missing from the user's profile or is otherwise outdated. The questions are selected based on a number of factors, such as the need for or value of the information item, probability of a response, or cost of collecting the information item. In presenting the selected question, the social networking system prompts a user for information about the user in a an interface associated with a page from the social networking system, an application external to the social networking system, or using a push notification or prompt. The questions may be formatted in various ways, such as an explicit question, confirmation, a selection of responses, or social context to encourage the user to respond to the question.
    Type: Grant
    Filed: August 27, 2015
    Date of Patent: November 8, 2016
    Assignee: Facebook, Inc.
    Inventors: Samuel Lessin, Robert Taaffe Lindsay, Justin Alexander Shaffer, Nicholas Felton
  • Patent number: 9483200
    Abstract: Various embodiments (“systems”) are described for transferring data from a primary storage (e.g., magnetic disk drives, solid state drives, etc.) to an optical cold storage rack. The optical cold storage rack may include many physical optical storage disks, but a much smaller number of burners and readers (e.g., optical disk drives). When data is to be transferred to the optical cold storage rack, the system may generate a plan for performing the transfer. “Migration worker” components may then implement the plan and may be exclusively dedicated to implementing such plans. In various embodiments, the plan may specify how large data file “aggregates” (collections of portions of one or more data files) are to be distributed across optical disks (“disks”) to improve throughput during subsequent reading operations from the optical cold storage rack. The plan may also anticipate the relation between the limited number of burners/readers and the overall optical cold storage rack disk capacity.
    Type: Grant
    Filed: November 3, 2014
    Date of Patent: November 1, 2016
    Assignee: FACEBOOK, INC.
    Inventors: Giovanni Coglitore, Narsing Vijayrao, Kestutis Patiejunas
  • Patent number: 9485423
    Abstract: Images uploaded by users of a social networking system are analyzed to determine signatures of cameras used to capture the images. A camera signature comprises features extracted from images that characterize the camera used for capturing the image, for example, faulty pixel positions in the camera and metadata available in files storing the images. Associations between users and cameras are inferred based on actions relating users with the cameras, for example, users uploading images, users being tagged in images captured with a camera, and the like. Associations between users of the social networking system related via cameras are inferred. These associations are used beneficially for the social networking system, for example, for recommending potential connections to a user, recommending events and groups to users, identifying multiple user accounts created by the same user, detecting fraudulent accounts, and determining affinity between users.
    Type: Grant
    Filed: January 14, 2015
    Date of Patent: November 1, 2016
    Assignee: Facebook, Inc.
    Inventors: Daniel Gregory Muriello, Stephen Charles Heise, Jie Chen
  • Patent number: 9483659
    Abstract: Some embodiments involve methods and systems for instant personalization security. For example, a social networking system can provide a platform for a user to open applications and/or access external websites. In some cases, an application does not have access to the user's fully identifying profile (e.g., UID or other public information). Instead, the application has access to a pseudonymous profile corresponding to a hashed ID that is generated by the platform and provided to the application. Access to the pseudonymous profile enables the application or an external website to personalize its environment without breaching the security of the platform.
    Type: Grant
    Filed: September 2, 2014
    Date of Patent: November 1, 2016
    Assignee: Facebook, Inc.
    Inventors: Ling Bao, Andrew Chi-An Yang, Pratap Prabhu, Alex Rice, Joey Tyson, Naitik Shah
  • Patent number: 9485772
    Abstract: Techniques for peer-to-peer network sharing are described. In one embodiment, an apparatus may comprise a sharing control component and a local proxy component. The sharing control component may be operative to transmit an offer from the first mobile device to a second mobile device for the second mobile device to act as a proxy for the first mobile device for the performance of network services in return for a transfer of sharing credit from a first account to a second account with a sharing authority, the first account associated with the first mobile device, the second account associated with the second mobile device, and receive an offer acceptance from the second mobile device. The local proxy component may be operative to receive configuration information and configure the first mobile device to use the second mobile device as a network proxy using the configuration information. Other embodiments are described and claimed.
    Type: Grant
    Filed: December 29, 2014
    Date of Patent: November 1, 2016
    Assignee: FACEBOOK, INC.
    Inventor: Roi Tiger
  • Patent number: 9485204
    Abstract: A photo spam detector detects illegitimate non-natively captured images through extracting image features and feeding the extracted features into a probabilistic model. The probabilistic model categorizes the photo as legitimate or illegitimate. Requests to tag one or more users in a photo are analyzed by a tag analyzer that assesses relationships between the tag requests themselves, social relationships between the tagged users, and the presence or absence of faces within the regions specified by the tag requests. Based on the classification of images or tags as illegitimate, a social networking system applies one or more social media distribution policies to the image or tags to suppress or prohibit distribution.
    Type: Grant
    Filed: February 13, 2015
    Date of Patent: November 1, 2016
    Assignee: Facebook, Inc.
    Inventor: Felix Fung
  • Patent number: 9483778
    Abstract: An example method for generating a user profile for a user based on a static profile and a dynamic profile of the user includes compressing dynamic rules into aggregated rules for validation. The dynamic rules associated with a particular user are matched to one or more validated aggregated rules to generate the dynamic profile for that user. The static profile for the user is generated for the user based on factual user information and historical transactional data for the user. The static and dynamic profile are then combined to form the user profile.
    Type: Grant
    Filed: April 8, 2014
    Date of Patent: November 1, 2016
    Assignee: Facebook, Inc.
    Inventors: Alexander S. Tuzhilin, Gediminas Adomavicius
  • Patent number: 9483803
    Abstract: In one embodiment, a method includes receiving, from a client system of a first user, a structured query comprising references to one or more selected objects accessible by the computing device, generating one or more search results corresponding to the structured query, wherein each search result corresponds to a particular object accessible by the computing device, determining one or more search intents based at least on whether one or more of the selected objects referenced in the structured query match objects corresponding to a search intent indexed in a pattern-detection model, and scoring the search results based on one or more of the search intents.
    Type: Grant
    Filed: December 29, 2015
    Date of Patent: November 1, 2016
    Assignee: Facebook, Inc.
    Inventors: Rajat Raina, Kedar Dhamdhere, Olivier Chatot
  • Patent number: 9477725
    Abstract: In one embodiment, a method includes accessing a map comprising a plurality of tiles representing a plurality of geographic areas, respectively, where each tile comprises a plurality of objects having locations within the tile, and each tile has below a threshold number of objects located within the tile; receiving a first query from a first user that includes a first location within a first tile; identifying one or more objects corresponding to the first query, where each identified object has a location within the first tile; and generating search results comprising references to one or more of the identified objects.
    Type: Grant
    Filed: November 11, 2014
    Date of Patent: October 25, 2016
    Assignee: Facebook, Inc.
    Inventors: Sriram Sankar, Stanislav Basovnik
  • Patent number: 9479347
    Abstract: A social networking system aggregates two or more stories having at least one common characteristic to create an aggregated story unit. Each story describes an action performed on an object over the social networking system or external to the social networking system. The aggregated story unit includes one or more input elements allowing a viewing user to interact with the aggregate story unit as a whole or with individual stories in the aggregated story unit. The input elements included in the aggregated story unit may be based on the types of the actions or of the objects described by stories in the aggregated story unit and on one or more input policies.
    Type: Grant
    Filed: March 8, 2016
    Date of Patent: October 25, 2016
    Assignee: Facebook, Inc.
    Inventors: Robert William Cathcart, Mark Tonkelowitz, Xiao Ou Wang
  • Patent number: 9477391
    Abstract: A user interface includes a tactile interface on a client device that allows users to interact with social networking system content in a manner that is optimized for touch screens and mobile devices. The tactile interface allows users to efficiently navigate the social networking system data as well as to capture new content for upload to the social networking system. New content may be captured in a way that allows the user to preview the content in-context.
    Type: Grant
    Filed: December 13, 2011
    Date of Patent: October 25, 2016
    Assignee: Facebook, Inc.
    Inventors: William Joseph Flynn, III, Michael Dudley Johnson
  • Patent number: 9479696
    Abstract: In one embodiment, a method includes receiving a user input, the user input representing a request to begin capturing a multimedia content item. The method also includes, in response to the user input, initiating the capturing of the multimedia content item. The method also includes, after the capturing is complete, presenting a plurality of media types to select from. The method further includes receiving a selection of one of the media types. The method also includes, in response to the received selection, encoding one or more portions of the captured multimedia content item in accordance with the media-type selection to produce a corresponding encoded media object.
    Type: Grant
    Filed: June 24, 2015
    Date of Patent: October 25, 2016
    Assignee: Facebook, Inc.
    Inventors: Joshua Alexander Miller, Leo Litterello Mancini
  • Patent number: 9477598
    Abstract: When multiple regional data clusters are used to store data in a system, maintaining cache consistency across different regions is important for providing a desirable user experience. In one embodiment, there is a master data cluster where all data writes are performed, and the writes are replicated to each of the slave data clusters in the other regions. Appended to the replication statements are invalidations for cache values for the keys whose values have been changed in the master data cluster. An apparatus in the master data cluster logs replication statements sent to the slave databases. When a slave database fails, the apparatus extracts the invalidations intended for the failed database and publishes the invalidations to a subscriber in the region of the failed database. The subscriber sends the invalidations to the local caches to cause stale data for those keys to be deleted from the caches.
    Type: Grant
    Filed: September 4, 2015
    Date of Patent: October 25, 2016
    Assignee: Facebook, Inc.
    Inventors: Yee Jiun Song, Philippe Vincent Ajoux, Harry C. Li, Jason Sobel, Sanjeev Kumar, Rajesh Nishtala
  • Patent number: 9479510
    Abstract: A social networking system maintains a limited user profile associated with a user of the social networking system who does not satisfy one or more criteria for the social networking system to maintain a user profile. The limited user profile includes information describing the user and allows the user to be associated with limited types of interactions with the social networking system. An administrator is associated with the limited user profile and may modify information associated with the limited user profile as well as authorize or deny interactions involving the limited user profile. When the user satisfies criteria for the social networking system maintaining a user profile, the social networking system generates a user profile based on information in the limited user profile and prior interactions involving the limited user profile.
    Type: Grant
    Filed: July 11, 2014
    Date of Patent: October 25, 2016
    Assignee: Facebook, Inc.
    Inventors: Benjamin Michael Holson, Dan Barak
  • Patent number: 9479488
    Abstract: In one embodiment, a method includes receiving a request at a wireless access point from a client system to access a network through the wireless access point. The wireless access point sends an identifier associated with the client system to a social-networking system, the social-networking system including user profiles arranged in one or more social graphs. The social graphs store relationships between the user profiles. The method further includes receiving at the wireless access point from the social-networking system an authorization determination. The authorization determination is based upon a first user profile of the plurality of user profiles. The first user profile includes the identifier associated with the client system. The method further includes providing the client system with access to the network through the wireless access point in accordance with the authorization determination.
    Type: Grant
    Filed: October 24, 2012
    Date of Patent: October 25, 2016
    Assignee: Facebook, Inc.
    Inventors: Erick Tseng, Mohit Talwar, Adrian Potra, Michael John McKenzie Toksvig, David Harry Garcia
  • Patent number: 9477603
    Abstract: A system and method of operation exploit the limited associativity of a single cache set to force observable cache evictions and discover conflicts. Loads are issued to input memory addresses, one at a time, until a cache eviction is detected. After observing a cache eviction on a load from an address, that address is added to a data structure representing the current conflict set. The cache is then flushed, and loads are issued to all addresses in the current conflict set, so that all known conflicting addresses are accessed first, ensuring that the next cache miss will occur on a different conflicting address. The process is repeated, issuing loads from all input memory addresses, incrementally finding conflicting addresses, one by one. Memory addresses that conflict in the cache belong to the same partition, whereas memory addresses belonging to different partitions do not conflict.
    Type: Grant
    Filed: September 5, 2014
    Date of Patent: October 25, 2016
    Assignee: FACEBOOK, INC.
    Inventors: Carl A. Waldspurger, Oded Horovitz, Stephen A. Weis, Sahil Rihan
  • Patent number: 9477760
    Abstract: In one embodiment, a method includes accessing a set of nodes of a social graph of an online social network. The social graph includes a number of nodes and a number of edges connecting the nodes. Each of the edges between two of the nodes representing a single degree of separation between them. The nodes include a first node that corresponds to the first user and a number of nodes that each correspond to a concept or a second user associated with the online social network. The method also includes accessing one or more grammar tokens. Each grammar token includes references to zero or more nodes and one or more edges. Each grammar token corresponds to a particular type of completion token. Each grammar token may be based on a natural-language string. The method also includes receiving from the first user a selection of one or more of the grammar tokens and one or more of the completion tokens.
    Type: Grant
    Filed: February 12, 2014
    Date of Patent: October 25, 2016
    Assignee: Facebook, Inc.
    Inventors: Tao Xie, Rousseau Newaz Kazi, William R. Maschmeyer, Colin William Dunn, Maxime Boucher, Christopher Joseph Kalani
  • Patent number: 9477652
    Abstract: Technology is disclosed for creating and tuning classifiers for language dialects and for generating dialect-specific language modules. A computing device can receive an initial training data set as a current training data set. The selection process for the initial training data set can be achieved by receiving one or more initial content items, establishing dialect parameters of each of the initial content items, and sorting each of the initial content items into one or more dialect groups based on the established dialect parameters. The computing device can generate, based on the initial training data set, a dialect classifier configured to detect language dialects of content items to be classified. The computing device can augment the current training data set with additional training data by applying the dialect classifier to candidate content items. The computing device can then update the dialect classifier based on the augmented current training data set.
    Type: Grant
    Filed: February 13, 2015
    Date of Patent: October 25, 2016
    Assignee: FACEBOOK, INC.
    Inventor: Fei Huang
  • Patent number: 9471692
    Abstract: In one embodiment, a method includes receiving, from a client system of a first user of an online social network, a structured query comprising references to one or more selected objects associated with the online social network, generating a query command based on the structured query, wherein the query command comprises an inner query constraint and an outer query constraint, identifying a first set of objects matching the inner query constraint and at least in part matching the outer query constraint, identifying a second set of objects matching the outer query constraint, and generating one or more search results based on the first and second sets of objects, wherein each search result corresponds to an object of the plurality of objects.
    Type: Grant
    Filed: December 29, 2015
    Date of Patent: October 18, 2016
    Assignee: Facebook, Inc.
    Inventors: Rajat Raina, Kihyuk Hong, Sriram Sankar, Kittipat Virochsiri
  • Patent number: 9471943
    Abstract: A social networking system receives a sponsored story request identifying a story describing an action performed by a social networking system user and generates a sponsored story accordingly. The sponsored story request may also include a bid amount and other information for generating a sponsored story from the sponsored story request. When an action is included in a sponsored story presented to a social networking system user, the social networking system notifies the user associated with the action and provides one or more settings regulating inclusion of actions associated with the user in sponsored story requests. For example, settings allow a user to prevent generation of sponsored stories including a specified type of action, a specific action, or multiple actions associated with the user. Hence, the settings allow a user to limit or prevent generation of sponsored stories describing actions associated with the user.
    Type: Grant
    Filed: June 20, 2013
    Date of Patent: October 18, 2016
    Assignee: Facebook, Inc.
    Inventors: Gianluca Iannaccone, Han Qin
  • Patent number: 9471705
    Abstract: In one embodiment, a method includes receiving a request for a target structured document. In a first response phase, the method includes accessing a data structure comprising an entry for the target structured document and one or more first resources associated with the target structured document, generating a first response portion including a first portion of the target structured document including one or more of the first resources or references for one or more of the first resources, and transmitting the first response portion to the client. The method further includes, in a second response phase, generating a second response portion that includes a second portion of the target structured document including one or more of: one or more second resources, or references for the one or more second resources, associated with the target structured document; and structured document language code, and transmitting the second response portion to the client.
    Type: Grant
    Filed: October 31, 2011
    Date of Patent: October 18, 2016
    Assignee: Facebook, Inc.
    Inventors: Changhao Jiang, Xiaoliang Wei
  • Patent number: 9471554
    Abstract: The functionality of a browser application is enhanced using a browser plug-in, which enables the browser application to access portions of a file system not otherwise accessible to the browser application. The enhanced functionality provided by the browser plug-in is used in one example by an image uploading web application. The browser application may also start a task in the background, such as a task for uploading several images, and then monitor the progress of the task even when the browser application navigates away from the page that initiated the task. The browser application may use a local web server running on the client device to perform tasks, including the rendering of images and monitoring progress of long running tasks.
    Type: Grant
    Filed: October 28, 2013
    Date of Patent: October 18, 2016
    Assignee: Facebook, Inc.
    Inventors: Matthew Cahill, Christopher W. Putnam, Daniel Reed Weatherford
  • Patent number: 9471516
    Abstract: Examples are disclosed for transmitting a command to control a peripheral device through an audio port. In some examples, the peripheral device may be coupled to a computing device via an interconnect. The interconnect may have an audio jack to couple with the computing device through an audio port and a connector to couple with a serial interface at the peripheral device. For these examples, elements of the computing device may receive a command to control the peripheral device and may generate analog signals including the command and a clock signal. The analog signals may then be transmitted through the audio port. The interconnect may be capable of converting the analog signals to a digital signal that includes the command and clock signal then provide the digital signal to the serial interface at the peripheral device. Other examples are described and claimed.
    Type: Grant
    Filed: August 14, 2013
    Date of Patent: October 18, 2016
    Assignee: FACEBOOK, INC.
    Inventors: Kean Wong, Charles Hughes, Shafigh Shirinfar
  • Patent number: 9473221
    Abstract: A Next Generation Data Network is described. It leverages the “cloud” for data management, frequency data computation and analytics. Nodes in the network are arranged into subnets with at least one node per subnet connected to a physical high-speed computer communication link. The wireless network using packet switched beams, the beams are formed and switched electronically. It utilizes advanced signal processing to compensate for low transmit signal power and multipath reflections that can be frequency or flat fades.
    Type: Grant
    Filed: October 8, 2015
    Date of Patent: October 18, 2016
    Assignee: Facebook, Inc.
    Inventor: Sanjai Kohli
  • Patent number: 9465811
    Abstract: In one embodiment, a method includes receiving an identification of a location. The method further includes accessing an inverted index that comprises a plurality of records, where each record corresponds to a map tile and identifies one or more places corresponding to the map tile. At least one of the places identified in the inverted index is identified in multiple records corresponding to multiple map tiles, where the map tiles collectively define an area that circumscribes the place. The method also includes identifying based on the inverted index one or more places associated with the location.
    Type: Grant
    Filed: March 20, 2014
    Date of Patent: October 11, 2016
    Assignee: Facebook, Inc.
    Inventors: Stanislav Basovnik, Abhinav A. Vora
  • Patent number: 9466317
    Abstract: An audio identification system generates a reference audio fingerprint associated with an event. The reference audio fingerprint is generated from samples of an audio signal associated with the event captured by multiple devices. To generate the reference audio fingerprint, fingerprints are generated from each sample, and the generated fingerprints are temporally aligned. Fingerprints associated a temporally overlapping portion of the audio signal are averaged, and the average value is associated with the temporally overlapping portion of the audio signal and included in the reference audio fingerprint. The reference audio fingerprint is stored along with identifying information, such as an event name, an event time, an event date, or other information describing the event associated with the audio signal from which the samples were captured.
    Type: Grant
    Filed: October 11, 2013
    Date of Patent: October 11, 2016
    Assignee: Facebook, Inc.
    Inventor: Sergiy Bilobrov
  • Patent number: 9465830
    Abstract: Indexing and retrieving real time content in a social networking system is disclosed. A user-term index includes user-term partitions, each user-term partition comprising temporal databases. As a post is received from a user, a user identifier, a post identifier, and a post is extracted. An object store communicatively coupled to a temporal database for recently received content is queried to determine whether terms in the post has already been stored. A term identifier is stored in the user-term index with the user and post identifiers. A forward index stores the post by post identifier. Responsive to a search query, the user-term index is searched by the user's connections and the terms. A real time search engine compiles the results of the user-term index query and retrieves the stored posts from the forward index. The search results may then be ranked and cached before presentation to the searching user.
    Type: Grant
    Filed: February 5, 2015
    Date of Patent: October 11, 2016
    Assignee: Facebook, Inc.
    Inventors: Akhil Wable, Hong Yan, Spencer G. Ahrens, Yofay Kari Lee, Guizhen Yang
  • Patent number: 9466126
    Abstract: Techniques for compressing images based on context are provided. A first image and a second image may be identified for display on a client device. One or more contexts of the first image may be identified. One or more contexts of the second image may be identified. A first image quality for the first image may be determined based on the one or more contexts of the first image. A second image quality for the second image may be determined based on the one or more contexts of the second image. The first image may be compressed at the first image quality and the second image at the second image quality. The compressed first image and the compressed second image may be transmitted to the client device.
    Type: Grant
    Filed: November 10, 2015
    Date of Patent: October 11, 2016
    Assignee: Facebook, Inc.
    Inventors: Jan Jezabek, Barak Reuven Naveh
  • Patent number: 9467414
    Abstract: In one embodiment, a request to create a note is received from a first user. The note includes a message and a first location of the first user. A note record is created of the message, the first location, and a first user-interest associated with the first user. A number of second users are identified based on second locations of the second users, and second user-interests associated with the second users. The message is sent to the identified second users. In response to sending the message, the current location of the first user is determined compared to the first location. If the first user is within a predetermined distance from the first location, a notification is sent to the first user indicating that the message has been sent to the second users.
    Type: Grant
    Filed: December 4, 2014
    Date of Patent: October 11, 2016
    Assignee: Facebook, Inc.
    Inventors: Andrew Garrod Bosworth, David Harry Garcia, Kenneth M. Lau
  • Patent number: 9465848
    Abstract: In particular embodiments, a method includes receiving an unstructured text query, parsing the text query to identify n-grams; determining a score that the n-grams correspond to particular nodes and edges from a social graph, identifying those nodes and edges with a score greater than a threshold score, and then generating structured queries that include references to the identified nodes and edges.
    Type: Grant
    Filed: April 11, 2014
    Date of Patent: October 11, 2016
    Assignee: Facebook, Inc.
    Inventors: Yofay Kari Lee, Michael Benjamin Cohen, Maxime Boucher, Alisson Gusatti Azzolini, Xiao Li, Lars Eilstrup Rasmussen
  • Patent number: 9460308
    Abstract: An multi-level privacy evaluation technology is described for increasing the performance of applications or services that experience high volumes of queries for data with privacy attributes. The multi-level privacy evaluation technology evaluates data using a subset of privacy policy rules and privacy information determined for the data at a backend server and thereby reduces the volume of data that need to be filtered at a frontend server. The multi-level privacy evaluation technology first applies an initial privacy check on a large data set at the backend to authoritatively filter out any data that a viewing user is not permitted to view or access and return as results a smaller data set that the viewing user may be permitted to view or access. A full privacy check is then performed at the frontend on the smaller data set, resulting in reduction in the overall cost of performing privacy checks and reducing latency in displaying data to the viewing user.
    Type: Grant
    Filed: May 9, 2014
    Date of Patent: October 4, 2016
    Assignee: Facebook, Inc.
    Inventors: Bhupinder Singh Sethi, Shiyu Zhao, Yang Xia
  • Patent number: 9462066
    Abstract: In one embodiment, a client device of a first user associated with a first node in a social graph of a social-networking system accesses a tag that encodes information regarding a second node in the social graph; determines based on the tag a social action to take one the social graph with respect to the first and second nodes; and transmits to the social-networking system a message configured to effect the social action on the social graph.
    Type: Grant
    Filed: August 21, 2012
    Date of Patent: October 4, 2016
    Assignee: Facebook, Inc.
    Inventors: Sijia Song, Evan Ashton Stratford, Alejandro Jose Marcu
  • Patent number: 9461998
    Abstract: Techniques for call-based user verification are described. In one embodiment, for example, an apparatus may comprise a processor circuit and a storage component. The apparatus may further comprise a session component, an identification (ID) component, a mapping component, and a verification component. The session component may be operative on the processor circuit and configured to receive session data from a client device and store the session data in the storage component. The ID component may be operative on the processor circuit and configured to request ID data from a server, receive ID data from the server, and send the ID data to the client device. The mapping component may be operative on the processor circuit and configured to map the session data with the ID data.
    Type: Grant
    Filed: October 31, 2014
    Date of Patent: October 4, 2016
    Assignee: FACEBOOK, INC.
    Inventors: Bradley Edward Hettervik, Surendra Gadodia, Xiao Liang, Antony T. Fu, Molly Jane Fowler
  • Patent number: 9461950
    Abstract: Providing supplemental contact information for an individual referenced in an electronic message typically includes receiving an electronic message, examining the electronic message, detecting an identifier for a referenced individual contained in the electronic message, and making supplemental contact information for the referenced individual available to a recipient of the electronic message. The supplemental contact information may include information that is in addition to information contained in the electronic message. The supplemental contact information may include at least one of an e-mail address, a screen name, a telephone number, a facsimile number, and a mailing address, each of which is associated with the referenced individual.
    Type: Grant
    Filed: December 30, 2014
    Date of Patent: October 4, 2016
    Assignee: FACEBOOK, INC.
    Inventor: Barry Appelman
  • Patent number: 9459705
    Abstract: In one embodiment, a method includes sending information to display an image on a screen. A scroll range for the image may be determined based on dimensions of the image. An origin position and an initial tilt of a gyroscope may also be determined for the image. Tilt measurements associated with the presentation of the image may be received as the gyroscope detects changes in tilt. A progress parameter may be determined based on at least the scroll range, the origin position, and the initial tilt. A scrolling presentation of the image may then be rendered based on the progress parameter. The scrolling presentation of the image may be smoothed by applying an RK4 solver to the tilt measurements to eliminate jitter due to hand tremors. A virtual spring effect may also be applied to give the scrolling presentation a bouncy effect as the edge of the image is reached.
    Type: Grant
    Filed: March 18, 2013
    Date of Patent: October 4, 2016
    Assignee: Facebook, Inc.
    Inventors: Michael Matas, Brian D. Amerige
  • Patent number: 9462046
    Abstract: A sender's degrees of separation from a recipient may be used to aid in spam filtering or to otherwise handle a communication. The “degrees of separation” represent a metric used to quantify whether/how the recipient is linked to the sender through intermediary people or other entities. For example, a recipient may know a first user (first degree of separation) and the first user may know a second user (second degree of separation) who knows the sender of an e-mail. In this case, the sender is separated from the recipient by two degrees of separation (by two other contacts). A level of “trust” or “legitimacy” about a sender's communication can be inferred by looking at whether the sender is linked to an intended recipient. Typically, user contact lists (e.g., address book, buddy list, and/or white list) are evaluated to determine the number of degrees (or hops) are required to link or relate two users.
    Type: Grant
    Filed: November 26, 2014
    Date of Patent: October 4, 2016
    Assignee: FACEBOOK, INC.
    Inventor: Barry Appelman
  • Patent number: 9461954
    Abstract: In particular embodiments, one or more computer systems of a social-networking system query a social graph of the social-networking system for social content associated with particular media content. The social graph includes nodes and edges connecting the nodes. The nodes include user nodes that are each associated with a particular user of the social-networking system. The one or more computer systems of the social-networking system determine a time associated with each of the social content, determine, using the determined time of each of the social content, a particular point within the particular media content that the social content was generated, and present a content visualization graph for display on a display device. The content visualization graph is a visual indication of the particular points within the particular media content that the social content was generated.
    Type: Grant
    Filed: December 3, 2012
    Date of Patent: October 4, 2016
    Assignee: Facebook, Inc.
    Inventors: Colin Cameron Brennan Campbell, Mark Heynen, Brian Krausz, Erick Tseng
  • Patent number: 9461902
    Abstract: In one embodiment, a method includes receiving first data indicating a current usage of a mobile device by a user. The method includes accessing second data associated with past user states of the user, where each user state corresponds to a temporal, spatial, or modal accessibility of the user. A future user state of the user is determined based on a weighted set of predictor functions, each predictor function comprising a machine-learned algorithm for a particular user state. The probability of each user state is based on past user states of the second data, wherein each past user state is weighted by a decay factor based on the corresponding time. One of the user states is selected as the future user state, and the operation of the mobile device is adapted at a future time to account for that future user state.
    Type: Grant
    Filed: October 14, 2015
    Date of Patent: October 4, 2016
    Assignee: Facebook, Inc.
    Inventors: Michael Dudley Johnson, Joshua Williams
  • Patent number: 9460215
    Abstract: In one embodiment, a method includes accessing a social graph that includes a number of nodes and edges connecting the nodes. Each of the edges between two of the nodes representing a single degree of separation between them. The nodes include a first node corresponding to a first user associated with an online social network and a plurality of second nodes that each correspond to a concept or a second user associated with the online social network. The method also includes generating a card cluster including a number of cards. Each card includes a suggested query referencing a query-domain associated with the online social network and zero or more query-filters. Each query-filter references one or more nodes of the plurality of nodes or one or more edges of the plurality of edges.
    Type: Grant
    Filed: April 22, 2014
    Date of Patent: October 4, 2016
    Assignee: Facebook, Inc.
    Inventors: Avichal Garg, Ming Hua, Michael Vernal, Yang Qin, Dan Ionut Fechete
  • Patent number: 9462027
    Abstract: A content source provides metadata associated with content, such as an audio signal or video data, to a social networking system. The metadata identifies characteristics of the content or specifies an action for the social networking system to perform. A content identifier associated with the metadata is generated by the social networking system, and an association between the content identifier and the metadata is stored. The content identifier is provided to the content source, which encodes the content identifier into the content (e.g., as a watermark). When a client device receives the content encoded with the content identifier, the content identifier is extracted and communicated to the social networking system in connection with a user account associated with the client device. Based on the content identifier, the social networking system retrieves the corresponding metadata and performs an action in connection with the user account based on the metadata.
    Type: Grant
    Filed: February 12, 2016
    Date of Patent: October 4, 2016
    Assignee: Facebook, Inc.
    Inventor: Robert Taaffe Lindsay
  • Patent number: 9461981
    Abstract: Leveraging a persistent connection to provide a client access to a secured service may include establishing a persistent connection with a client in response to a first request from the client, and brokering a connection between the client and a secured service based on a second request from the client by leveraging the persistent connection with the client. The brokering may occur before the client attempts to connect to the secured service directly and the connection may be established between the client and the secured service without provision by the client of authentication information duplicative or additional to authentication information provided by the client to establish the persistent connection.
    Type: Grant
    Filed: July 2, 2014
    Date of Patent: October 4, 2016
    Assignee: FACEBOOK, INC.
    Inventor: Robert Bruce Hirsh
  • Patent number: 9460476
    Abstract: In one embodiment, a social-networking system accesses a social graph, receives a request to access a resource of the social graph, generates an advertisement of a third-party application based on the relevance of the third-party application to the user, wherein the relevance of the third-party application is based on social-graph information associated with the user and the third-party application, and sends the advertisement of the third-party application to the client device of the user for display.
    Type: Grant
    Filed: June 18, 2015
    Date of Patent: October 4, 2016
    Assignee: Facebook, Inc.
    Inventors: Alexander Paul Schultz, Thomas Alison
  • Patent number: 9455824
    Abstract: Various of the disclosed embodiments synchronize transmission/reception timing between nodes in a wireless network of nodes. Some embodiments share GPS reference signals and local clock values between nodes to identify relative offset corrections. These corrections may then be used to synchronize transmission/reception periods. A PLL at each node may adjust a received GPS signal to coincide with a local operational frequency at the node, while pulse detect logic may be used to record when the GPS signal was received. Some embodiments also address scenarios where GPS signals are not available at one of the nodes. The deficient node may instead identify its local offset by maximizing the cross-correlation of a signal received from a node retaining GPS capability. In some embodiments, the cumulative error along paths in the network may be determined to further compensate for the behavior of nodes lacking GPS capability. GPS capability may, e.g., be deliberately omitted from some nodes to reduce costs.
    Type: Grant
    Filed: June 26, 2015
    Date of Patent: September 27, 2016
    Assignee: Facebook, Inc.
    Inventors: Djordje Tujkovic, Sanjai Kohli
  • Patent number: D769294
    Type: Grant
    Filed: July 6, 2015
    Date of Patent: October 18, 2016
    Assignee: Facebook, Inc.
    Inventors: Mark E. Zuckerberg, Eyal Michael Sharon