KR20140142732A - 소셜 네트워킹 서비스(sns) 상의 접촉자들에 통신을 전송하기 - Google Patents

소셜 네트워킹 서비스(sns) 상의 접촉자들에 통신을 전송하기 Download PDF

Info

Publication number
KR20140142732A
KR20140142732A KR20147030002A KR20147030002A KR20140142732A KR 20140142732 A KR20140142732 A KR 20140142732A KR 20147030002 A KR20147030002 A KR 20147030002A KR 20147030002 A KR20147030002 A KR 20147030002A KR 20140142732 A KR20140142732 A KR 20140142732A
Authority
KR
South Korea
Prior art keywords
contacts
location
target
user
communication
Prior art date
Application number
KR20147030002A
Other languages
English (en)
Other versions
KR102048108B1 (ko
Inventor
딘 케이. 잭슨
타일러 제이.씨. 포터
Original Assignee
구글 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구글 인코포레이티드 filed Critical 구글 인코포레이티드
Publication of KR20140142732A publication Critical patent/KR20140142732A/ko
Application granted granted Critical
Publication of KR102048108B1 publication Critical patent/KR102048108B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/52User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/222Monitoring or handling of messages using geographical location information, e.g. messages transmitted or received in proximity of a certain spot or area

Abstract

소셜 네트워킹 서비스 상의 접촉자들에게 통신을 송신하는 것이 컴퓨팅 디바이스의 타겟 지리적 위치를 수신하는 단계와, 상기 타겟 지리적 위치에 기초하여 인접지를 식별하는 단계와, 소셜 네트워킹 서비스 상의 계정과 관련되는 한 세트의 접촉자들을 상기 인접지를 사용하여 식별하는 단계-상기 한 세트의 접촉자들은 상기 인접지 내의 위치들과 관련되지 않는 하나 이상의 접촉자들을 배제하는 접촉자 리스트를 생성하는데 사용됨-와 그리고 상기 접촉자 리스트의 멤버들에게 통신을 송신-상기 통신은 상기 타겟 지리적 위치에 관한 것임-하는 단계를 포함한다.

Description

소셜 네트워킹 서비스(SNS) 상의 접촉자들에 통신을 전송하기{SENDING COMMUNICATIONS TO CONTACTS ON A SOCIAL NETWORKING SERVICE}
2012년 3월 26일자로 출원된 미국 가출원 번호 61/615,447에 우선권이 주장된다. 상기 미국 가출원 번호 61/615,447의 전체내용이 본 발명에 참조로서 통합된다. 본 발명은 일반적으로 SNS 상의 접촉자들에게 통신을 송신하는 것에 관한 것이다.
인터넷-기반의 소셜 네트워크들은, 서로 인터렉션(interaction)하기 위해 그리고 정보를 공유하기 위해 유저들에게 디지털 매체를 제공한다. 예를 들어, 소셜 네트워크에서 유저들이 자신들과 연결될 수 있는 다른 유저들에게 전자 컨텐츠(예를 들어, 텍스트 코멘트(text comment)들, 디지털 이미지들, 디지털 비디오들, 디지털 오디오, 웹사이트들에 대한 하이퍼링크들 등)을 배포할 수 있다. 유저에게 배포되는 전자 컨텐츠는 홈(또는 "스트림(stream)") 페이지에서 컨텐츠 스트림으로 유저에게 디스플레이될 수 있다.
본 발명은 소셜 네트워킹 서비스(SNS) 상의 접촉자들에게 통신을 전송하는 기법들을 설명한다.
예시적인 기법은 컴퓨팅 디바이스의 타겟 지리적 위치를 수신하는 단계와, 상기 타겟 지리적 위치에 기초하여 인접지를 식별하는 단계와, 소셜 네트워킹 서비스 상의 계정과 관련되는 한 세트의 접촉자들을 상기 인접지를 사용하여 식별하는 단계-상기 한 세트의 접촉자들은 상기 인접지 내의 위치들과 관련되지 않는 하나 이상의 접촉자들을 배제하는 접촉자 리스트를 생성하는데 사용됨-와, 상기 접촉자 리스트의 멤버들에게 통신을 송신하는 단계-상기 통신은 상기 타겟 지리적 위치에 관한 것임-를 포함한다. 전술한 예시적인 기법은 하나 이상의 다음의 특징들을 개별로 혹은 이들을 조합하여 포함할 수 있다.
상기 한 세트의 접촉자들을 식별하는 단계는 접촉자들 중 상기 인접지와 관련되는 단어들을 검색하는 것과 상기 인접지와 관련되는 단어들을 가지는 접촉자들을 선택하는 것을 포함할 수 있다.
상기 타겟 지리적 위치를 수신하는 단계는 상기 소셜 네트워킹 서비스를 통해 액세스 가능한 인덱스로부터 상기 타겟 지리적 위치를 검색하는 것을 포함할 수 있다. 상기 타겟 지리적 위치를 수신하는 단계는 지리적-위치로부터 상기 컴퓨팅 디바이스의 현위치를 획득하는 것과 상기 타겟 지리적 위치에 상기 현 위치를 상관(correlation)시키는 것을 포함할 수 있다. 상기 타겟 지리적 위치를 수신하는 단계는 체크인 정보를 포함하는 데이터베이스를 컨설팅(consult)-상기 체크인 정보는 상기 타겟 지리적 위치에 대응하는 상기 컴퓨팅 디바이스의 현 위치를 포함함-하는 것을 포함할 수 있다.
전술한 예시적인 기법은 적어도 부분적으로 상기 컴퓨팅 디바이스와 관련되는 유저의 소셜 그래프에 기초하여 상기 접촉자 리스트의 멤버십을 정제(refine)하는 단계를 포함할 수 있다. 상기 인접지를 식별하는 단계는 상기 통신의 주제(subject matter)를 식별하는 것 그리고 상기 주제에 대응하는 인접지에 대한 데이터베이스를 검색하는 것을 포함할 수 있다. 상기 한 세트의 접촉자들은 상기 타겟 지리적 위치의 인접지에 있는 것으로 알려진 상기 소셜 네트워킹 서비스의 멤버들을 포함할 수 있다.
다른 예시적인 기법은 소셜 네트워킹 서비스에서 한 그룹의 접촉자들을 정의하는 단계-상기 한 그룹의 접촉자들은 지리학에 기초하여 정의됨-와; 컴퓨팅 디바이스의 타겟 위치를 획득하는 단계-상기 타겟 위치는 상기 타겟 위치와 관련되는 명칭(name)에 의해 정의됨-와; 소셜 네트워킹 서비스 상의 계정과 관련되는 한 세트의 접촉자들을 상기 타겟 위치를 사용하여 획득하는 단계-상기 한 세트의 접촉자들은 상기 한 그룹의 접촉자들을 포함하는 접촉자 리스트를 생성하는데 사용됨-와; 그리고 상기 접촉자 리스트에 통신을 송신하는 단계-상기 통신은 상기 타겟 위치에 관한 것임-를 포함한다. 전술한 예시적인 기법은 하나 이상의 다음의 특징들을 개별로 혹은 이들을 조합하여 포함할 수 있다.
상기 타겟 위치를 획득하는 단계는 상기 소셜 네트워킹 서비스를 통해 액세스 가능한 프로파일로부터 상기 타겟 위치를 검색하는 것을 포함할 수 있다. 상기 타겟 위치를 획득하는 단계는 지리적-위치 서비스(geo-location service)를 사용하여 상기 컴퓨팅 디바이스의 현 위치를 획득하고 상기 타겟 위치에 상기 현 위치를 상관시키는 것을 포함할 수 있다. 상기 통신은 상기 타겟 위치에서의 이벤트에 관한 것일 수 있다.
본 명세서에 설명된 시스템들 및 기법들의 전체 또는 부분은 하나 이상의 비-일시적인 기계-판독 가능 저장 매체들 상에 저장된 명령들을 포함하고 그리고 하나 이상의 프로세싱 디바이스들 상에서 실행 가능한 명령들을 포함하는 컴퓨터 프로그램 제품으로서 구현될 수 있다. 본 명세서에 설명된 시스템들 및 기법들의 전체 또는 부분은 장치, 방법 혹은 상기 언급된 기능들을 구현하기 위해 하나 이상의 프로세싱 디바이스들 및 실행 가능 명령들을 저장하기 위한 메모리를 포함할 수 있는 장치, 방법 및 전자 시스템으로 구현될 수 있다.
하나 이상의 구현들의 세부 사항들은 첨부 도면들 및 아래의 상세한 설명에서 제시된다. 기타 특징들, 목적들 및 이점들은 상세한 설명 및 도면들 그리고 청구항들로부터 명백해질 것이다.
도 1은 본 명세서에 설명된 프로세스가 구현될 수 있는 예시적인 네트워크 환경을 도시한 블록도이다.
도 2는 소셜 네트워크의 사용자에 대한 예시적인 메인 페이지(main page)를 도시한다.
도 3은 도 1의 상기 네트워크 환경의 예시적인 부분의 블록도이다.
도 4는 예시적인 소셜 그래프의 개념도이다.
도 5는 소셜 네트워킹 서비스 상의 접촉자에게 통신을 송신하기 위한 예시적인 프로세스를 도시한 플로우 차트이다.
도 6은 본 명세서에 설명된 프로세스들 또는 프로세스들의 부분들이 구현될 수 있는 컴퓨팅 디바이스들의 예들을 도시한다.
다양한 도면들에서의 유사한 참조 부호들은 유사한 엘리먼트를 나타낸다.
SNS(social networking service)상의 접촉자들에게 통신을 송신하기 위한 시스템이 본 명세서에 서술된다. 하나의 구현에서, 시스템은 스마트폰과 같은 컴퓨팅 디바이스의 타겟 위치(target location)를 획득하는 것을 포함할 수 있다. 타겟 위치는 명칭(name)으로 정의될 수 있다. 시스템은 SNS 상의 계정과 관련되는 소셜 접촉자들(social contacts)의 리스트를 식별하기 위해 타겟 위치를 이용한다. 접촉자 리스트는 기 정의된 타겟 위치의 인접지 내에 있지 않은 하나 이상의 접촉자들을 배제한다. 시스템은 전자 통신(electronic communication)을 접촉자 리스트 상의 접촉자들로 송신한다. 예를 들어, 통신은 타겟 위치와 관련되는 이벤트에 관한 것일 수 있다.
위치 명으로 접촉자들을 식별함으로써, 예를 들어, 실제 이벤트에 참가할 수 있는 특정 영역(particular area) 내의 접촉자들을 식별하는 것이 가능하다. 통신은 그러한 접촉자들에 제한될 수 있으며, 그렇게 함으로써 다른 소셜 접촉자들이 참석할 것 같지 않은 이벤트들 혹은 그들이 참가할 것 같지 않은 다른 것들에 대한 통신들을 다른 소셜 접촉자들이 수신하지 않게 한다.
상기 설명된 시스템들은 적절한 디바이스들 및 컴퓨팅 장비를 가진 적절한 네트워크 환경에서 구현될 수 있다. 그러한 환경의 예가 아래에 설명된다.
도 1은 본 명세서의 시스템들이 구현되는 예시적인 네트워크 환경(100)을 도시한 블락도이다. 네트워크 환경(100)은 네트워크(111)를 통해 제 1의 서버 시스템(112) 및/또는 제 2의 서버 시스템(114)과 통신하도록 구성되는 컴퓨팅 디바이스들(102, 104, 108, 108, 110)를 포함한다. 컴퓨팅 디바이스들(102, 104, 106, 108, 110)은 각각의 유저들(122, 124, 126, 128, 130)과 관련된다. 제 1 및 2의 서버 시스템들(112, 114) 각각은 컴퓨팅 디바이스(116) 및 기계-판독 가능 저장소(machine-readable repository) 또는 데이터베이스(118)을 포함한다. 예시적인 환경(100)이 도시되지 않았지만, 수천 개의 웹 사이트(web site)들, 컴퓨팅 디바이스들 및 서버들을 포함할 수 있다.
네트워크(111)는 대형 컴퓨터 네트워크를 포함할 수 있으며, 이의 예들은 다수의 모바일 컴퓨팅 디바이스, 고정 컴퓨팅 디바이스들 및 서버 시스템들을 연결하는 LAN(local area network), WAN(wide area network), 인터넷, 셀룰러 네트워크 또는 그것들의 조합을 포함한다. 네트워크(111)에 포함된 네트워크(들)은 다양한 모드들 또는 프로토콜 하에서 통신을 위해 준비될 수 있으며, 이의 예들은, 여러가지 것들 중에서도 특히, TCP/IP(Transmission Control Protocol/internet Protocol), GSM(Global System for Mobile communication) 음성 전화, SMS(Short Electronci message Service), EMS(Enhanced Messaging Service) 또는 MMS(Multimedia Messaging Service), CDMA(Code Division Multiple Access), TDMA(Time Division Multiple Access), PDC(Personal Digital Cellular), WCDMA(Wideband Code Division Multiple Access), CDMA2000 또는 GPRS(General Packet Radio System)를 포함한다. 통신이 RF(radio-frequency) 트랜시버를 통해 발생한다. 또한 근-거리 통신(shor-range communication)이 예를 들어, 블루투스, 와이파이, NFC(Near Field Communication) 또는 이와 같은 다른 트랜시버 시스템을 사용하여 발생할 수 있다.
컴퓨팅 디바이스들(102, 104, 106, 108, 110)은 각 유저들(122, 124, 128, 128, 130)이 문서들(예를 들어, 웹 사이트들에 포함된 웹 페이지들)을 액세스(access)해서 볼 수 있게 한다. 예를 들어, 컴퓨팅 디바이스(102)의 유저(122)는 웹 브라우저를 이용하여 웹 페이지를 볼 수 있다. 웹 페이지는 서버 시스템(112), 서버 시스템(114) 또는 다른 서버 시스템(미 도시됨)에 의해 컴퓨팅 디바이스에 제공될 수 있다.
예시적인 환경(100)에서, 컴퓨팅 디바이스들(102, 104, 106)은 데스크탑-타입의 컴퓨팅 디바이스들로 도시되며, 컴퓨팅 디바이스(108)은 랩탑-타입의 컴퓨팅 디바이스(108)로 도시되며, 그리고 컴퓨팅 디바이스(110)는 모바일 컴퓨팅 디바이스로 도시된다. 하지만, 컴퓨팅 디바이스들(102, 104, 108, 110)은 예를 들어, 데스크탑 컴퓨터, 랩탑 컴퓨터, 핸드헬드 컴퓨터(handheld computer), PDA, 셀룰러 전화기, 네트워크 어플라이언스(network appliance), 카메라, 스마트폰, EPRS(enhanced general packet radio service) 모바일폰, 미디어 플레이어, 네비게이션 디바이스, 전자 메시징 디바이스, 게임 컨솔 또는 이 데이터 프로세싱 디바이스들 또는 다른 적합한 데이터 프로세싱 디바이스들의 둘 이상의 조합을 포함한다. 일부 구현들에서, 컴퓨팅 디바이스는 모터 비히클(motor vehicle)(예를 들어, 자동차, 응급차(예를 들어, 소방차, 구급차), 버스)의 일부로서 포함될 수 있다.
예를 들어 서버 시스템(112)에 의해 컴퓨팅 디바이스들(102, 104, 106, 108, 110)과 인터렉션하는 유저들이 소셜 네트워크에 전자 컨텐츠를 업로드 및 다운로드함으로써, 소셜 네트워크(123)에 참가할 수 있다. 전자 컨텐츠는 예를 들어 전자 메시지들(예를 들어, 이-메일, 게시물 또는 인스턴트 메시지(instant message)), 문자 코멘트들(예를 들어, 업데이트들, 공지사항들, 답글들), 디지털 이미지들, 비디오들, 오디오 파일들 및/또는 다른 적합한 정보를 포함할 수 있다.
일반적으로, 컴퓨팅 디바이스들(102, 104, 108, 108, 110)과 인터렉션하는 유저들은 자신들과 소셜 네트워크의 다른 유저들과의 관계를 정리하고 분류하기 위해 소셜 써클들(social circles)(또는 다른 유사한 그룹들 또는 리스트들)을 정의하는데 소셜 네트워크(123)를 또한 사용할 수 있다. 소셜 써클들은 유저의 소셜 연결들의 일부가 된다. 전자 컨텐츠는 하나 이상의 소셜 써클들을 포함하는 소셜 네트워크(123) 내의 소셜 접촉자들(또는 단순히 "접촉자들")에게 배포(distribute)될 수 있으며, 그래서 그러한 컨텐츠는 표시된 접촉자들 및/또는 접촉자들 또는 다른 사람들에 의해 볼 수가 있다. 예시적인 동작에서, 소셜 네트워크(123)의 유저가 메시지를 생성할 수 있고 이 생성된 메시지가 전송되는, 예를 들어 하나 이상의 개별 소셜 네트워크 연락처들 및/또는 소셜 써클들을 표시할 수 있다. 컨텐츠 쓰기-시간 동안, (예를 들어, 전자 메시지, 게시물 등에 대한) 컨텐츠 데이터 세트가 유저의 고객 컴퓨팅 디바이스(예를 들어, 도 1의 컴퓨팅 디바이스(102))로부터 분포 허브(distribution hub)(예를 들어, 컨텐츠 분포 엔진(125))에 전송될 수 있으며, 이는 서버(예를 들어, 도 1의 서버 시스템(112) 또는 네트워크 상의 다른 곳)에 제공될 수 있다. 일부 구현들에서, 컨텐츠 데이터 세트는 컨텐츠 데이터(예를 들어, 문자, 컨텐츠 저자의 신원(identity), URI, 저자의 위치, 타임 스탬프 데이터(예를 들어, 타임 스탬프는 컨텐츠가 생성되었던 시간을 표시함), 분포 데이터(distribution data)(예를 들어, 연락처들 및/또는 하나 이상의 소셜 써클들을 식별하는 데이터) 및 신원(ID) 데이터(예를 들어, 컨텐츠의 생성시 컨텐츠 데이터에 할당되는 ID))를 포함할 수 있다.
일부 구현들에서, 다른 데이터는 컨텐츠 데이터 세트들에 첨부될 수 있다. 다른 예시적인 데이터는 점수 데이터(scoring data)를 포함할 수 있다. 일부 예들에서, 데이터 점수는 다른 가능한 점수 데이터 중 소셜 친화성 점수를 포함할 수 있다. 아래에 보다 상세히 설명된 바와 같이, 친화성(affinity)은 소셜 그래프 상으로 당사자들의 친밀감(closeness of parties)을 식별한다.
도 2는 소셜 네트워크의 멤버에 대한 예시적인 메인 페이지(200)을 도시한다. 예를 들어, 페이지(200)는 소셜 네트워크(123)의 웹 사이트 내의 웹 페이지로서 제공될 수 있고, 페이지(200)와 관련되는 멤버(201)와 공유된, 메시지들을 포함하는 전자 컨텐츠를 디스플레이할 수 있다. 도시된 예에서, 멤버는 "제인 맥더비스"이고, 페이지(200)은 다른 멤버들이 멤버와 공유한 항목들(예를 들어, 전자 컨텐츠) 및/또는 멤버가 다른 멤버들과 공유한 항목들을 디스플레이한다. 페이지(200)는 소셜 네트워크 메뉴(208) 및 컨텐츠 스트림(207)을 또한 포함하며, 여기에서 컨텐츠의 항목들이 프리젠트(present)된다. 멤버에게 송신된 예시적인 컨텐츠 항목들(209)은 컨텐츠 스트림에 디스플레이된다. 일반적으로, 컨텐츠 스트림(207)에 디스플레이 되는 항목들(209)은 소셜 네트워크 내에 설정된 접촉자들로부터 멤버에게 배포되는 전자 컨텐츠를 포함한다. 컨텐츠 공유 인터페이스(210)이 페이지(200) 상에 또한 제공될 수 있다. 멤버는 전자 컨텐츠를 입력하기위해 인터페이스(210)을 활성화(예를 들어, 클릭)할 수 있다. 비록 12 개의 컨텐츠 항목들이 도 2에 도시되었지만, 페이지(200)는 멤버에게 12 개 이상 또는 이하의 컨텐츠 아이템을 디스플레이 할 수 있음이 이해된다. 검색 필드(211)가 컨텐츠에 대한 소셜 네트워크(123)을 검색하기 위해 페이지(200) 상에 또한 제공될 수 있다.
다른 피처들 중, 소셜 네트워크는 메시징 서비스를 포함하며, 이는 SNS의 유저들이 전자적으로 서로 통신하게 한다. 일부 예들에서, 메시지들은 컨텐츠 스트림으로 보일 수 있는 반면에, 다른 예들에서는 별개의 메시지 인터페이스(미 도시됨)가 있다.
SNS 유저들은 프로파일들을 또한 가지고 있다. 일부 경우에서, 각 유저는 그들의 유저 네임 및 패스워드과 관련되는 프로파일을 갖는다. 프로파일은 가능하면 유저의 집 위치(예를 들어, 지역, 도시, 주, 국가 등) 및 유저의 현 위치와 같은 개인 정보를 포함하는 필드들을 가질 수 있다. 유저의 현 위치는 예를 들어, GPS 서비스 및 적절한 승인을 거쳐 유저의 모바일 디바이스의 지리적 좌표들 획득하고 그리고 이 좌표들을 특정 장소명(들)에 상관 시킴으로써 결정될 수 있다.
도 3은 도 1의 네트워크 환경의 예시적인 부분의 블락도이다. 구체적으로, 도 3은 예시적인 네트워크 환경(100)의 부분(300)을 도시한다. 이 예시적인 구현에서, 서버 시스템(112)은 리소스들(3O4, 306 308)을 저장한다. 리소스는 관련된 리소스 식별기(리소스 ID)를 가진다. 예를 들어, 리소스들(304, 306, 308)은 동일한 웹 사이트의 서로 다른 웹 페이지들에 대응할 수 있거나 혹은 서로 다른 웹 사이트들의 웹 페이지들에 대응할 수 있다. 아래 설명된 바와 같이, 이 예시적인 동작에서 컴퓨팅 디바이스(104)는 검색 엔진 웹 사이트의 홈 웹 페이지("홈 페이지")(302) 및/또는 소셜 네트워크의 홈페이지(예를 들어, 유저의 컨텐트 스트림을 포함하는 도 2의 페이지(200))를 디스플레이하기 위해 서버 시스템(112)과 통신한다.
웹 페이지를 보기 위해, 유저(124)는 컴퓨팅 디바이스(104) 상에서 실행되는 웹 브라우저를 이용하여 리소스 ID를 입력하거나 또는 선택할 수 있다. 리소스 ID는 예를 들어, URI 또는 URL을 포함할 수 있다. 리소스 ID를 포함한 요청이 네트워크(111)를 통해 컴퓨팅 디바이스(104)로부터 서버 시스템(112)으로 전송된다. 이에 응답하여, 서버 시스템은 리소스 ID에 기초하여 요청된 리소스를 식별하고 네트워크(111)을 통해 요청된 리소스를 컴퓨팅 디바이스(104)로 전송한다. 예를 들어, 리소스는 소셜 네트워크(123)의 홈 페이지(200) 또는 검색 시스템(312)의 홈 페이지(302)일 수 있다. 일부 구현들에서, 검색 시스템(312)은 소셜 네트워크(123)의 일부이거나, 또는 소셜 네트워크(123)로부터의 컨텐츠에 액세스 가능한 소셜 네트워크로부터 이미 독립한 시스템이다.
검색 시스템(312)에 대한 페이지(302)는 검색 시스템에 전송되는 검색 쿼리(search query)를 입력하기 위한 필드(303)를 포함할 수 있다. 대안적으로, 검색 쿼리는 적합한 검색 서비스들을 통해 입력될 수 있다. 검색 쿼리는 예를 들어, 하나 이상의 용어들, 이미지들, 오디오, 비디오 또는 다른 컨텐츠를 포함할 수 있다. 쿼리에 응답하여, 검색 시스템은 하나 이상의 검색 인덱스들을 포함하는 인덱스된 캐시의 검색을 수행하고 유저 또는 다른 컴퓨터 프로그램(예를 들어, 메시징 서비스)에 검색결과들을 돌려준다. 검색 시스템(312)은 예를 들어, 도시된 서버 시스템(112) 또는 다른 적절한 하드웨어 상에 구현될 수 있다. 검색 시스템(312)은 검색 엔진(318) 및 하나 이상의 검색 인덱스들을 포함한다.
검색 시스템(312)은 리소스들을 크롤(crawl) 하기 위한 크롤 엔진(crawl engine)(319) 및 예를 들어 인덱스된 캐시(314)에 저장된 ("검색 인덱스"로 통칭되는) 하나 이상의 검색 인덱스들에서 이 리소스들을 인덱스 하기 위한 인덱싱 엔진(313)을 포함한다. 검색 엔진(318)은 (예를 들어, 쿼리 문자 매칭 루틴(query text matching routine)을 구현함으로써) 쿼리에 대응하고, 쿼리와 상관될 수 있는 검색 인덱스 내의 리소스들을 식별하기 위한 리소스 탐지기 엔진(resource locator engine)(316)을 또한 포함한다. 순위 엔진(ranking engine)(315)이 검색 쿼리와 관련되는 것으로 간주 되는 리소스들의 순위를 매긴다.
소셜 그래프 정보가 다른 리소스들과 동일한 검색 인덱스에 포함되거나 또는 별도의 검색 인덱스(미 도시됨)에 포함될 수 있다. 아래에 보다 상세하게 설명되는 소셜 그래프 정보는 예를 들어, 유저의 소셜 그래프 상의 인덱스된 컨텐츠 및 접촉자들과 관련된 코멘트들, 지지들(endorsements), 접속들(connections), 친화성(affinities) 등을 포함한다. 소셜 그래프 정보는 소셜 네트워크(123)로부터의 컨텐츠를 포함할 수 있다. 쿼리에 응답하여 일반적인 검색 결과들 및 유저의 소셜 그래프(예를 들어, 지지된 웹 컨텐츠)를 위한 별도의 검색이 수행될 수 있으며, 관련되는 리소스들을 식별하는 특정 검색 결과들이 수행될 수 있다.
일부 구현들에서, 유저의 소셜 그래프와 관련되는 정보가 적절한 데이터 구조들, 예를 들어 소셜 제한들(social restricts)을 생성하고 기존의 검색 인덱스에 통합함으로써 인덱스될 수 있다. 일부 예들에서, 인덱싱 엔진은 식별된 정보를 검색 인덱스에서 참조된 대응하는 웹 리소스들에 맵핑하고 그리고 웹 리소스들과 유저들 사이의 소셜 연결을 결정함으로써 소셜 제한들을 생성할 수 있다. 예를 들어, 시스템은 그러한 소셜 연결들을 결정하기 위해 유저의 소셜 그래프를 설명하는 관계 데이터(relationship data)를 포함하는 관계 룩업 테이블(relationship lookup table)을 액세스할 수 있다. 일부 예들에서, 소셜 제한들은 검색 인덱스에 포함되는 참조 웹 리소스와 관련되는 정보 태그 또는 다른 데이터의 형태로 제공될 수 있다.
유저-생성 컨텐츠(예를 들어, 소셜 네트워크 컨텐츠)가 상기 주지된 바와 같이 다른 리소스들처럼 동일한 인덱스 또는 별도의 인덱스에 포함될 수 있다. 이와 관련하여, 크롤링 엔진(crawling enginer)(319)은 적절한 승인을 얻어서 (검색자 및 다른 사람들, 예를 들어 검색자의 소셜 그래프의 멤버들의) 유저-생성 컨텐츠를 크롤할 수 있고, 인덱스 엔진(313)은 이 컨텐츠를 적절한 검색 인덱스로 통합할 수 있다. 리소스 탐지기 엔진(316)은 예를 들어 검색 쿼리에 대한 유저-생성 컨텐츠의 관련 점수(relevance score) 및 예를 들어 컨텐츠 자체 또는 컨텐츠의 저자에 대한 검색자의 소셜 연결을 포함하는, 예를 들어 다른 정보에 기초하여 (승인되는) 유저 프로파일들 및 다른 유저-특정 정보를 포함하는 그런 유저-생성 컨텐츠를 식별할 수 있다. 이와 관련하여, 컨텐츠 또는 저자에 대한 소셜 연결의 유무가 관계 점수에 영향을 줄 수 있다. 이런 맥락에서, 저자는 컨텐트를 생성하는 사람에 제한되지 않고 그 대신에 컨텐츠를 인터렉션했고, 컨텐츠를 공유했고, 컨텐츠를 지지했고, 컨텐츠를 게시했던 등을 했던 누구라도 포함될 수 있다.
검색 쿼리에 응답하여, 검색 엔진(318)은 검색 쿼리에 관련되는 리소스들을 식별하기 위해 인덱스된 캐시(314)를 액세스할 수 있다. 리소스 탐색기 엔진(316)은 검색 결과들의 형태로 리소스를 식별하고 그리고 검색 결과들의 페이지에서 이 검색 결과들을 요청 디바이스로 돌려보낼 수(return) 있다. 검색 결과가 리소스를 식별하는 검색 시스템(312)에 의해 생성된 데이터를 포함할 수 있고, 리소스 자체 또는 리소스, 이미지, 비디오 또는 다른 적절한 컨텐츠에 대한 링크를 포함할 수 있다. 일부 경우들에 있어, 검색 결과들은 소셜 정보를 포함할 수 있다. 예를 들어, 일부 검색 결과들과 함께 포함된 것은 예를 들어 유저의 소셜 그래프로부터 멤버에 관해 획득된 멤버의 위치, 코멘트들, 지지들 또는 다른 정보가 될 수 있다. 검색 결과들은 독자적으로 디스플레이되거나 또는 관련된 소셜 정보(예를 들어, 컨텐츠 저자의 프로파일)와 관련하여 디스플레이되는 유저-생성 컨텐츠를 또한 포함할 수 있다. 검색 결과들은 본 명세서에 설명된 방식대로 인접지에서의 접촉자들에게 메세지를 보내는데 이용될 수 있다.
전술한 바와 같이, 소셜 그래프는 동일하거나 또는 동일하지 않은 네트워크 상에 있는 두 당사자(two parties) 간의 소셜 연결들을 나타내고 그리고 당사자들과 컨텐츠 사이의 접속들을 나타내기 위한 방법이다. 당사자는 예를 들어, 회사, 조직, 국가 등의 개인 또는 엔티티일 수 있다. 소셜 그래프들에서의 연결들의 타입들은 유저가 직접 접촉(예를 들어, 유저 메시징 또는 채팅 접촉, 소셜 사이트들 상의 직접 접촉들)하는 다른 유저들 및 유저가 직접 접촉(예를 들어, 접촉자들의 접촉들, 유저에 직접 연결하는 유저들의 연결들)하는 유저들을 포함할 수 있지만, 이에 한정되지는 않는다. 일부 예들에서, 직접 연결은 일방향 또는 쌍방향일 수 있다. 일부 구현들에서, 소셜 그래프는 유저에 대한 연결로서 개인들(예를 들어, 블로그 게시물들, 리뷰들)에 의해 생성되는 컨텐츠를 포함한다. 소셜 그래프는 단일 네트워크 내의, 또는 다중 네트워크들을 거치는 연결들을 포함할 수 있다.
별개의 소셜 그래프들이 서로 다른 타입들의 연결들에 대해 생성될 수 있다. 예를 들어, 유저는 하나의 소셜 그래프에 채팅 접촉자들, 제 2의 소셜 그래프에 전자 메시지 접촉자들 및 제 3의 소셜 그래프에 특정 소셜 네트워크로부터의 연결들과 연결될 수 있다. 소셜 그래프는 유저로부터 보다 큰 정도로 분리된 추가적인 당사자들에 대한 엣지(edge)들을 포함할 수 있다. 예를 들어, 전자 메시지 접촉자가 유저로부터의 분리의 정도(예를 들어, 유저→전자 메시지 접촉자→전자 메시지 접촉자의 접촉자)를 추가하는 다른 접촉자들에 대해 자체의 전자 메시지 접촉들을 가질 수 있다. 이러한 접촉자들은 유저로부터 다른 정도로 분리되어 추가적인 접촉들을 가질 수 있다. 유사하게, 특정 소셜 네트워크에서 어떤 사람에 대한 상대방의 연결은 그 사람의 연결들에 기초하여 추가적인 연결들을 식별하는데 사용될 수 있다. 별개의 소셜 그래프들은 하나 이상의 소셜 그래프를 하나 이상의 소셜 그래프들에 연결하는 엣지들을 포함할 수 있다. 따라서, 소셜 그래프는 여러가지 서로 다른 타입들로 연결되었지만 별개의 소셜 그래프들을 포함할 수 있는 꽉찬 소셜 그래프(full social graph)를 포함할 수 있다.
전술된 바와 같이, 유저들은 컨텐츠를 지지하는 것으로 지정하거나, 컨텐츠를 공유 또는 코멘트하거나 URL들을 인용하거나 혹은 다른 방식으로 컨텐츠의 관심 또는 좋아함을 지시할 수 있으며, 이의 예들은 특정 리소스, 웹 페이지 또는 검색 결과를 포함하지만, 이에 한정되지는 않는다. 예를 들어, 어플리케이션, 위젯 또는 스크립트는 검색 결과들의 페이지들, 웹 페이지들로 제공되거나 또는 유저가 관련 리소스 또는 검색 결과에 대한 좋아함, 공유함 또는 다른 평가를 표시하게 하는 브라우저 어플리케이션 내에 제공될 수 있다. 유저는 (관련된 컨텐츠로 프리젠트되는 브라우저 컨트롤 또는 유저 인터페이스 엘리먼트를 통해) 지지 또는 다른 평가를 표시하기 위해 특정 웹 리소스, 웹 사이트 또는 검색 결과들을 마킹할 수 있다. 다른 사람들로부터의 정보에 관한 그러한 관계들은 유저의 소셜 그래프에 캡처될 수 있다.
소셜 그래프의 엔티티들 간의 친화성은 유저의 소셜 그래프에서 전술된 엣지에 의해 표시될 수 있다. 전술된 바와 같이, 친화성은 유저에 대한 상대방의 친밀감을 식별할 수 있다. 예를 들어, 유저와 5명의 공통의 중간 접촉자을 가지는 접촉자의 접촉은 단 한 명의 공통의 중간 접촉자를 가지는 접촉자의 접촉보다 (예를 들어, 유저에 더 친밀한 것으로 간주 되는)유저와 더 많은 친화성을 가진다. 친화성을 결정하는 요인들은 예를 들어: 유저(예를 들어, 접속의 소스) 에게 어떻게 접촉자가 연결되는가, 접촉자가 어느 소셜 네트워킹 사이트의 멤버인지, 접촉자 인지 또는 접촉자의 접촉자인지 그리고 접촉자(공통의 중간 접촉자들)의 접촉자에 도달하는 길들이 얼마나 많은 지를 포함할 수 있다. 엣지들은 소셜 그래프에서의 연결들(예를 들어, 당사자들) 간의 친화도(level of affinity)를 반영하기 위해 소셜 그래프를 포함하는 데이터베이스 또는 다른 곳의 어느 하나에서 가중될 수 있다.
당사자들 간의 친화성은 일부 경우들에서 특정한 컨텐츠일 수 있다. 예를 들어, 소셜 그래프 데이터는 당사자들과 그 컨텐츠에 대한 특정 친화성들 사이의 엣지와 관련되는 특정 타입들의 컨텐츠를 식별할 수 있다. 하나의 예에서, 소셜 그래프 데이터는 연결된 두 당사자들 간에 제 1의 당사자는 제 2의 당사자의 비디오들에 대한 제 1의 수준의 친화성을 가지고 제 2의 당사자의 기록 작업(written work)에 대한 서로 다른 제 2의 친화성을 가짐을 명시할 수 있다. 유사하게, 소셜 그래프는 제 2의 당사자는 제 1의 블로그들에 대한 서로 다른 제 3의 수준의 친화성을 가짐을 명시할 수 있다. 컨텐츠 주제에 대해서도 동일하게 적용된다. 예를 들어, 소셜 그래프 데이터는 두 연결된 당사자들 사이에서, 제 1의 당사자는 야구에 대한 제 2의 당사자의 컨텐츠에 대해 제 1의 수준의 친화성을 가지고, 제 2의 당사자는 야구에 대한 제 2의 당사자의 컨텐츠에 대해 서로 다른 수준의 친화성을 가짐을 명시할 수 있다.
친화성은 소셜 그래프(예를 들어, 인터렉션의 빈도, 인터렉션의 타입 등)의 멤버들과 유저의 인터렉션들에 또한 기초할 수 있다. 예를 들어, 특정 접촉자에 의해 게시판들을 자주 클릭하는 유저는 그들이 각각의 게시판들을 덜 자주 클릭되는 다른 접촉자들보다 그 특정 접촉자에 더 가까운 것으로 간주 될 수 있다. 이와 같이, 만일 유저가 자주 저자(예를 들어, 검색 결과 링크)에 의한 컨텐츠를 "마우스-오버(mouses-over)" 하지만 그 컨텐트를 선택하지 않는다면, 친화도는 링크가 선택되었을 경우보다 내려갈 것이다. 유사하게, 컨텐츠 보는 시간량이 하나의 당사자가 다른 당사자로부터의 컨텐츠를 좋아하는지의 지시자(indicator)가 될 수 있다. 특정 컨텐츠를 보는 시간량은 하나의 당사자가 다른 당사자로부터의 다른 타입들의 컨텐츠에 반대되는 다른 당사자로부터의 특정 타입의 컨텐츠를 좋아하는지를 나타내는 지시자가 될 수 있다.
다른 예들에서, 친화성은 유저들 사이의 간접적인 인터렉션에 의해 정의될 수 있다. 예를 들어, 만일 두 유저들이 정기적으로 또는 자주 동일한 컨텐츠를 인터렉션한다면, 그 두 유저들은 서로 친화성을 가질 것으로 간주 될 수 있다. 또한, 다른 예들에서, 만일 두 유저들이 정기적으로 또는 자주 동일한 사람들과 인터렉션한다면, 그 두 유저들은 서로 친화성을 가지는 것으로 간주 될 수 있다.
도 4는 예시적인 소셜 그래프(400)의 개념도이다. 여러가지 것들 중에서도 특히, 도 4는 소셜 그래프에 대한 정보의 소스들을 도시한다. 이 예에서, 유저의 소셜 그래프는 어느 정도의 분리 내의 유저(402)("나")와 관계를 갖는 것으로 식별된 연결들(예를 들어, 유저들, 리소스들/컨텐츠들 등)의 집합이다. 유저의 소셜 그래프는 서로 다른 분리의 정도들로 당사자들 및 특정 컨텐츠를 포함할 수 있다. 예를 들어, 유저의 소셜 그래프는 접촉자들, (유저, 소셜 그래프 사이트 또는 다른 메트릭에 의해 정의되는)접촉자들의 접촉자들, 유저의 소셜 써클, 유저에 의해 팔로우(follow)되는 사람들(예를 들어, 구독하는 블로그들, 피드들 또는 웹 사이트들), 동료들 및 구체적으로 유저가 관심을 갖는 것으로 식별된 다른 컨텐츠(예를 들어, 특정 웹 사이트들)을 포함할 수 있다.
도 4는 단일 네트워크 내와 하나 이상의 외부 네트워크들에 걸치는 양자 모두에서 유저의 소셜 그래프를 사람들 및 컨텐츠로 확장하는 것이 가능함을 도시한다. 예를 들어, 유저는 외부 리소스들(예를 들어, 웹 페이지들)에 대한 한 세트의 식별된 접촉자들, 한 세트의 관심들, 한 세트의 링크들 및 시스템(예를 들어, 전자 메시지들, 채팅, 비디오, 포토 앨범들, 피드(feed)들 또는 블로그들을 포함하는 다양한 컨텐츠 및 어플리케이션들을 제공하는 시스템)의 컨텐츠에 대한 구독들을 포함하는 프로파일 또는 접촉자들의 리스트를 가질 수 있다. 이와 같이, 유저의 접촉자들에 대한 링크들을 포함하는 블로그들은 유저의 소셜 그래프의 부분이 될 수 있다. 이 그룹들은 유저로부터 다른 정도로 분리된 다른 유저들 또는 리소스들에 연결될 수 있다. 예를 들어, 유저의 접촉들은 리소스들에 대한 접속들 및 각 접촉자들의 접촉들, 한 세트의 관심들 등을 포함하는 그들 자신의 프로파일들을 가질 수 있다. 다른 예에서, 유저는 소셜 네트워크 계정에 연결될 수 있다. 그 소셜 네트워크 계정은 신문 기사를 참조할 수 있다. 그래서 소셜 연결이 유저와 그 기사의 저자 사이에 확립될 수 있다.
일부 구현들에서, 특정 수의 분리의 정도 내에서의 유저에 대한 연결들은 유저의 소셜 그래프의 경계(bounds)로 간주 될 수 있다. 소셜 그래프에서의 멤버십 및 분리의 정도는 인터렉션의 빈도를 포함하는 다른 인자들에 기초할 수 있다. 예를 들어, 인터렉션의 빈도는 유저에 의해(예를 들어, 얼마나 자주 유저가 특정 소셜 네트워킹 사이트를 방문하는가) 혹은 (예를 들어, 접촉자들과 관련된 아이템들을 지지하거나, 선택하거나 또는 선택하지 않는) 하나의 접촉 타입일 수 있다. 인터렉션들이 변화함에 따라, 소셜 그래프에서의 특정 접촉자의 관계는 또한 극적으로 변할 수 있다. 따라서, 소셜 그래프는 정적이라기보다 동적일 수 있다.
소셜 신호들이 (예를 들어, 소셜 그래프에서의 연결들 간의 가중된 엣지들 또는 다른 가중치들을 이용하여) 소셜 그래프 위로 계층화될 수 있다. 이 신호들은 예를 들어, 유저와 특정 연결 사이의 인터렉션의 빈도 또는 인터렉션의 타입이 실질적인 소셜 그래프 연결들을 수정함이 없이 소셜 그래프 또는 소셜 그래프들에서의 특정 연결들을 가중하는데 사용될 수 있다. 이러한 가중치들은 유저와의 인터렉션이 변함에 따라 변할 수 있다.
소셜 그래프들은 적합한 데이터 구조들(예를 들어, 리스트 또는 매트릭스 타입 데이터 구조들)을 이용하여 저장될 수 있다. 저장된 소셜 그래프의 양상을 설명하는 정보는 관계 데이터로 간주 될 수 있다. 예를 들어, 관계 데이터는 유저의 소셜 그래프의 특정 멤버들이 (예를 들어, 어떤 소셜 패스(social path)가 유저에 연결된 특정 엔티티인가를 통해) 유저에 어떻게 연결되었는지를 설명하는 정보를 포함할 수 있다. 관계 데이터는 유저의 소셜 그래프에 통합된 소셜 신호들을 설명하는 정보를 또한 포함할 수 있다. 일부 구현들에서, 관계 데이터는 관계 룩업 테이블(예를 들어, 해시 테이블(hash table)에 저장될 수 있다. 룩업 테이블 내의 값들(예를 들어, 관계 데이터)을 찾기 위한 적합한 키(key)들은 유저 및 유저의 소셜 그래프의 멤버 양자의 신원들을 설명하는 정보를 포함할 수 있다. 예를 들어, 룩업 테이블 내의 관계 데이터를 찾아내기 위한 적합한 키는 (유저 X, 유저 Y)일 수 있으며, 여기에서 유저 Y가 유저 X의 소셜 그래프의 멤버이다.
위에 설명된 소셜 그래프 정보를 포함하는 소셜 그래프 정보는 정보 검색에 사용하기 위해 인덱스 될 수 있다. 소셜 그래프 정보는 도 3의 인덱스된 캐시(314)에서의 검색 인덱스의 부분일 수 있다. 따라서, 검색 인덱스는 예를 들어, 유저의 소셜 그래프의 하나 이상의 양상들과 관련되는 소셜 신호들에 따르는 관련된 검색 결과들을 식별하기 위해 검색될 수 있으며, 이러한 예들은 위에 제공되어 있다. 예를 들어, 검색 시스템이 쿼리를 수신할 수 있고 예를 들어, 일반적인 검색 결과들 및 유저-생성 컨텐츠를 식별할 수 있다. 유저-생성 컨텐츠는 예를 들어, 인덱스된 소셜 그래프 정보(예를 들어, 검색자의 소셜 그래프의 멤버들의 전자 메시지들, 게시판들, 블로그들, 채팅들 등으로부터의 컨텐츠)에 기초하여 검색 결과들을 포함할 수 있다. 인덱스된 소셜 그래프 정보는 유저의 소셜 그래프(예를 들어, 유저의 현 위치, 과거 위치, 미래 위치 등)와 관련되는 최근 추가 정보를 포함하기 위해 간헐적 또는 주기적으로 업데이트 될 수 있다. 인덱스 소셜 그래프 정보는 예를 들어, 본 명세서에 설명된 프로세스들에 따라 결정되는 관계들을 반영하기 위해, 지속적으로 또한 업데이트 될 수 있다.
유저는 예를 들어, 옵션을 사용하거나 또는 소셜 그래프를 생성하는데 사용되는 특정 그룹들로부터 접촉을 피함으로써 유저의 소셜 그래프에 멤버들이 추가되는 것을 막을 수 있다. 일부 구현들에서, 프라이버시 기능(privacy feature)들은 다른 사람의 소셜 그래프의 멤버로서 각각 포함되는(또는 이미 포함되었다면 유저를 제거하는) 것을 허용하거나 또는 막기 위해 유저에게 옵션을 제공한다. 따라서, 유저들은 어떤 개인적인 정보 또는 접속 정보가, 만약 존재한다면 그들의 소셜 그래프들에 포함되는가를 제어할 수 있고, 결과적으로 그 정보는 본 발명에 포함된 컨텐츠 스트림들 및 검색 결과들에 포함된다.
도 1을 다시 참조하면, 이 예에서, 모바일 디바이스(110)는 메사추세츠 주의 보스턴에 위치하고 있다. 모바일 디바이스(110)에 합체되어 사용된 GPS는 지리적 좌표들을 사용하여 모바일 디바이스(110)의 현 위치를 식별한다. GPS는 모바일 디바이스(110)의 현 위치의 장소 명을 또한 제공할 수 있으며, 이 예에서는 보스톤이다. 대안적으로, GPS를 제외한 시스템이 지리학적 좌표들을 그 장소 명에 상관되게 할 수 있다. 예를 들어, 일부 구현들에서, 셀 삼각 측량법(Cell Triangulation)과 같은 Assisted GPS(A-GPS)는 모바일 폰/유저의 위치가 결정될 수 있는 다른 메카니즘이다. 추가적으로, 디바이스의 IP 주소는 IPGeo 서비스들을 사용하여 대략의 지리적인 위치를 결정하는데 사용될 수 있다.
식별자들은 장소 명을 증가시키는 데 사용될 수 있다. 예를 들어, 우편 번호들 또는 지역 번호들은 실명을 증가시키는데 사용될 수 있다. 일부 실시 예들에서, 그러한 식별자들은 실 장소 명들 대신에 사용될 수 있다.
임의의 경우에서, 이 예에서는, 모바일 디바이스의 현 위치(예를 들어, 보스톤)와 관련되는 명칭이 그 위치에 또는 그 인접지 내에 있을 수 있는 유저의 소셜 네트워크에서 접촉자들 또는 다른 접촉자들을 식별하는데 사용된다. 예를 들어, 유저의 신원 및 디바이스의 현 지리적 위치들의 명칭은 검색 엔진(318)에 하나 이상의 쿼리들로 입력될 수 있다. 검색 엔진(318), 특히 리소스 탐색기 엔진(318)은 명칭으로 그들의 지리적 위치를 포함하는 (i)유저의 소셜 접촉들 및 (ii) 그 소셜 접촉들에 대한 정보를 식별하기 위해 인덱스(314)를 검색할 수 있다. 만일 검색 엔진(318)은 접촉자의 지리적 위치의 명칭이 유저의 현 위치의 명칭과 매칭하는 것으로 결정된다면, 유저 및 접촉(들)은 아래 설명된 바와 같이 동일한 위치에 있는 것으로 여겨지며, 메시지는 그 접촉자에게 송신될 수 있다.
일부 경우들에 있어서, 하지만 장소 명들은 비록 두 장소들이 지리적으로 가깝더라도 매칭하지 않을 수 있다. 예를 들어, 보스톤 및 캠브릿지는 지리학적으로 가깝다. 그러나 단순 명칭 검색은 보스톤 및 캠브릿지에 대한 어떤 매칭을 생성하지 않을 수 있다. 따라서, 서버 시스템(112)에서 데이터 엔진(322)은 위치 명을 지리적인 좌표 또는 다른 지리적 식별자(들)(예를 들어, 지역 번호, 우편 번호 등)로 해결할 수 있다. 그러한 지리 좌표들은 위치 명의 특정 거리 내에 있는 다른 지역들(예를 들어, 타운들, 도시들, 근교들, 우편번호 등)을 식별하는데 사용될 수 있다.
이러한 다른 지역들의 명칭들은 그 명칭으로 위에서 원래 특정되었던 위치의 인접지 내에 있는 장소들의 그룹과 관련될 수 있다. 따라서, 인덱스(314)는 그 그룹 내의 임의의 명칭들과 매칭하는 명칭들의 위치에 있거나 또는 거기에 사는 유저들의 접촉자들을 식별하기 위해 검색될 수 있다. 전술한 바와 같이, 멤버들의 현 위치들은 멤버들의 모바일 디바이스들의 지리적-위치를 통하거나 또는 모바일 디바이스 유저들이 특정 시간에 위치들에 체크인하게 하는 서비스를 참조함으로써 (승인과 함께) 식별될 수 있다. 멤버들은 이러한 서비스들을 활성화 또는 비활성화할 기회가 주어질 수 있다.
인접지의 경계선(boundary)들은 (예를 들어, 그들의 소셜 네트워크 프로파일에서의) 무선 디바이스 유저에 의해 세팅될 수 있거나 또는 경계선들은 SNS에 의해 자동적으로 세팅될 수 있다. 일부 구현 들에서, 인접지의 경계선은 메시지의 주제에 좌우될 수 있다. 예를 들어, 보스톤 시의회 회의와 같은 보스톤에서의 이벤트에 관한 메시지는 보스톤에 거주하는 소셜 접촉자들에만 단지 관심 있는 것일 수 있다. 이 경우에, 검색 엔진(318)은 메시지의 주제를 식별하고 보스톤 인접지의 경계선만으로 제한할 수 있다. 대조적으로, 레드 삭스 게임(Red Sox game)은 예를 들어, 보스톤 캠브릿지, 서머 빌, 노스쇼트, 케이프 코드 등을 포함한 보스톤 지역 내의 모든 소셜 접촉자들에게 관심있는 게임일 수 있다. 이 경우에, 데이터 엔진(322) 및 검색 엔진(318)은 세팅들에 따라 동부 메사추세츠 또는 그 이상에 있는 모든 장소 명들을 포함하도록 메시지의 주제를 식별하고 인접지의 경계선을 확장할 수 있다.
이와 관련하여, 데이터 엔진(322)은 검색에서 사용되는 주요 단어들을 식별하기 위해 메시지를 파싱(parsing)함으로써 메시지의 주제를 식별할 수 있다. 파싱은 적합한 기법들을 이용하여 수행될 수 있다. 파싱을 통해 획득된 단어들은 소셜 네트워크(123)의 내부 또는 외부의 어느 하나의 데이터베이스에 저장되는 주제들과 비교될 수 있어서, 메시지가 그 주제들에 관한 것인지가 결정된다. 키워드 또는 다른 적합한 기법들에 의해 비교될 수 있다. 데이터베이스는 이벤트들 또는 다른 발생들(occurrences)을 적합한 인접지에 상관시킬 수 있다. 예를 들어, 데이터베이스는 레드삭스 게임과 같은 일부 이벤트들이 하나의 크기의 인접지(예를 들어, 메사추세츠 주의 스프링필드의 동쪽의 모든 타운들)를 가지며, 반면에 보스톤에 특정된 회의들과 같은 다른 이벤트들은 다른 크기의 인접지(예를 들어, 단지 보스톤 만한 도시)를 가진다.
데이터베이스는 예를 들어 유저의 과거 행위들 또는 소셜 네트워크의 다른 멤버들의 행위들에 기초하여 채워질(populated) 수 있다. 예를 들어, 시스템은 "레드 삭스"에 관한 이전 메시지 요청들의 임계 수를 식별할 수 있고 소셜 네트워크의 다른 멤버들에 의해 이전의 메시지들에 특정된 인접지들에 기초하여 적합한 인접지를 결정할 수 있다. 데이터베이스는 유저 그 자신의 행위들에 기초하여(예를 들어, "레드 삭스" 주제에 관한 과거 메시징 동작들에 기초하여) 유사하게 채워질 수 있다. 예를 들어, 유저에 의한 "레드 삭스"에 관한 이전 메시지 요청들의 임계 수를 식별할 수 있고 유저에 의한 이전 메시지들에 특정된 인접지들에 기초하여 적합한 인접지를 결정할 수 있다. 다른 구현들에서, 유저는 메시지 주제가 송신되는 곳의 인접지들을 직접적으로 명시할 수 있다. 일부 구현들에서, 타겟 인접지는 유저의 현 위치에 기초할 수 있다. 예를 들어, 만일 유저의 현위치가 보스톤인 것으로 결정된다면, 타겟 인접지가 동부 메사추세츠가 될 수 있다. 한편, 유저의 위치가 시애틀이고, 그날 저녁 시애틀에서 레드 삭스 게임이 있다면, 타겟 위치는 시애틀에 가까운 타운들, 도시들, 지역들 등이 될 수 있다. 이 경우에 인접지는 현 위치를 "시애틀"로 식별함으로써 그리고 시애틀 인접지 내에 있는 것으로 기 결정된 그 유저에 대해서 타운들, 도시들 및 다른 지역들의 데이터베이스를 참조함으로써 결정될 수 있다.
모바일 디바이스(110)의 유저는 예를 들어, 소셜 네트워크(123)를 통해 메시지를 현재 유저의 인접지 내에 있는 것으로 결정된 접촉자들에게만 보낼 수 있다. 따라서, 예를 들어, 유저(130)는 그날 저녁 보스톤에 있을 수 있고 레드 삭스 게임에 참석할 수 있다. 유저(130)는 보스톤이나 또는 메사추세츠의 적절한 다른 타운들이나 또는 그 주위에 있는 소셜 접촉자들을 식별하기 위해 본 명세서의 프로세스들을 사용할 수 있다. 소셜 접촉자들을 그 특정 레드 삭스 게임에 초대하는 메시지는 따라서 보스톤이나 그 주위에 있거나 또는 메사추세츠의 적절한 다른 타운들에 있는 그 접촉자들에게만 보내질 수 있다. 일부 경우들에서, 멤버는 보스톤이나 또는 메사추세츠의 적절한 다른 타운들이나 또는 그 주위에 있는 접촉자들을 포함하는 소셜 써클을 설정할 수 있고 그 소셜 써클에 있는 접촉자들에게만 메시지들을 송신할 수 있다. 어느 하나의 경우에, 보스톤 또는 그 인접지에 연결되지 않은 접촉자들 또는 다른 유저들은 아마도 자신들이 그날 밤에 레드 삭스 게임에 참석할 입장에 있지 않기 때문에 메시지를 송신되지 않을 것이다.
위에 설명된 방식으로 메시징을 한정함으로써 SNS에서의 메시지 트래픽량은 감소할 수 있다. 더우기, 보스톤에 연결되지 않은 유저의 접촉자들은 자신들과 관련되지 않을 수 있는 메시지들(예를 들어, 그들이 시간에 맞춰 도착할 수 없었던 도시에서 스포츠 이벤트를 관람하기 위한 메시지)을 수신하지 않게 된다.
도 5는 도 1에 관해 개념적으로 설명된 프로세스(500)를 도시한 플로우 차트이며, 이는 도 1 및 3에 도시된 네트워크 환경에서 검색 엔진(318) 및 데이터 엔진(322)에 의해 수행될 수 있다.
도 5를 참조하면, 메시지가 예를 들어, 모바일 디바이스(110)로부터 수신된다(501). 예를 들어, 데이터 엔진(322)은 메시지를 수신할 수 있다. 메시지는 예를 들어 모바일 디바이스 유저의 소셜 네트워크에서 접촉자들에게 보내진다. 메시지는 메시지가 어느 접촉자들에 보내지는지를 나타내는 하나 이상의 필드들을 포함할 수 있다. 예를 들어, 메시지는 그것이 유저와 동일한 도시, 인접지 또는 지역에 있는 접촉자들에게 보내짐을 나타낼 수 있다. 일부 구현들에서, 메시지는 예를 들어, 보스톤 캠브릿지, 뉴톤 등 하나 이상의 장소 명들을 특정할 수 있다. 일부 구현들에서, 메시지는 그러한 정보를 포함하지 않을 수 있고 프로세스(500)는 본 명세서에 설명된 바와 같이 메시지의 주제에 기초하여 메시지를 어느 접촉자에게 보낼지를 결정할 수 있다.
모바일 디바이스(110)의 위치가 획득된다(502). 만일 메시지가 예를 들어, 모바일 디바이스 유저들은 예를 들어 보스톤과 같은 특정 위치의 인접지에 있는 접촉자들에게 메시지를 송신하기 원한다는 것을 명시한다면 이 동작은 수행될 필요가 없다. 그러나 만일 메시지가 모바일 유저의 인접지에 있는 유저들에게 전송됨을 단지 요청하거나 또는 수신자(들)를 특정하지 않는다면, 프로세스(500)는 모바일 디바이스 유저의 위치를 획득할 수 있다(502). 이와 관련하여 모바일 디바이스는 GPS(또는 다른) 시스템과 통신하기 위해 소프트웨어를 갖출 수 있으며, 이렇게 함으로써, GPS(또는 다른) 시스템이 모바일 디바이스의 위치를 결정하게 한다. 프로세스(500)는 좌표들을 주기적으로 또는 수신된 메시지로 수신(501)할 수 있거나 또는 프로세스(500)는 좌표들을 포함하는 데이터베이스에 대해 액세스할 수 있다. 다른 구현들에서, 프로세스(500)는 정보를 체크인하기 위해 액세스할 수 있으며, 이는 지리적인 좌표들 또는 장소 명에 의해 모바일 디바이스의 현 위치를 식별할 수 있게 한다. 현 위치가 지리적인 좌표들에 의해 식별되는 경우, 프로세스(500)(예를 들어, 데이터 엔진(322))는 그 지리적 좌표들을 하나 이상의 장소 명들에 서로 상관시킬 수 있다. 프로세스(500)는 로컬 데이터베이스 또는 네트워크(111) 상에 사용 가능한 원격 서비스를 이용하여 상관성을 수행할 수 있다.
네트워크(123) 상에 모바일 디바이스 유저의 접촉자들의 위치들이 획득된다(503). 이 정보는 예를 들어, 검색 인덱스(314)에서 유저의 소셜 그래프를 검색함으로써 획득될 수 있다. 예를 들어, 정보는 소셜 접촉 프로파일들에서 이용가능할 수 있다. 이와 관련하여, 유저 소셜 그래프로부터의 임의의 적절한 컨텐츠는 그러한 컨텐츠의 소유자들이 적절한 승인을 했다면 검색될 수 있다. 정보는 예를 들어, 각 접촉자의 거주지 주소, 각 접촉자의 현 위치 및 다른 유사한 정보를 포함할 수 있다. 만일 접촉자의 현 위치들이 그들의 프로파일들로부터 이용 가능하지 않다면, 프로세스(500)는 프로파일들로부터 다른 위치 정보를 이용할 수 있다. 또한, 프로세스(500)는 현 지리적 위치 정보에 액세스하거나 또는 그러한 접촉자들에 대한 정보를 체크인하는 정도로, 위에 설명된 방식으로 그러한 접촉자들의 현 위치의 장소 명들을 식별할 수 있다.
타겟 위치 예를 들어, 모바일 디바이스 유저의 현재의 인접지에 있는 접촉자들이 식별된다(504). 예를 들어, 검색 엔진(318)은 예를 들어, 모바일 디바이스 유저의 현 위치의 특정한 인접지에 현재 있거나 또는 (예를 들어, 검색 인덱스(314)에 의해 결정된) 그 특정한 인접지에 사는 접촉자들의 리스트를 출력할 수 있다. 예를 들어, 위에 설명된 바와 같이 데이터 엔진(322)은 예를 들어, 최초 메시지의 컨텐츠에 기초한 데이터베이스를 참조한다. 그 데이터베이스는 접촉자들을 검색하기 위한 인접지의 한도를 특정할 수 있다. 데이터베이스로부터의 정보(예를 들어, 장소 명들, 우편 번호들, 지리적 좌표들, 지역 번호들 등)는 검색 쿼리에 합체되고 특정 인접지에 있는 유저의 소셜 접촉자들을 식별하는데 사용될 수 있다
유저의 소셜 그래프로부터의 정보가 식별된 접촉자들의 리스트를 정제하는데 사용될 수 있다. 예를 들어, 메시지(예를 들어, 키워드들로부터의)의 주제에 관한 코멘트들, 지지들, 연결들, 친화성 등은 메시지의 주제에 관심을 가지는 기 정의된 인접지에 있는 유저의 소셜 그래프의 멤버들을 식별하기 위해 검색될 수 있다. 예를 들어, 유저의 소셜 그래프는 (예를 들어, 하나 이상의 소셜 그래프의 노드들 내에) 특정 친화성을 가지고 그리고 게시판에 코멘트하거나 혹은 그렇지 않으면 레드 삭스에 대해 코멘트 하거나 또는 관심이 있는 인접지 내의 접촉자들을 식별하기 위해 검색될 수 있다. 특정 기준을 만족하는 그러한 사용자들은 메시징을 위한 접촉자 리스트 상에 포함될 수 있고, 다른 사람들은 그렇지 않을 수 있다.
프로세스(500)에 따르면, 메시지가 단지 접촉자 리스트의 접촉자에게 전송되고 메시지가 관련이 있을 것 같지 않은 다른 접촉자들에게는 전송되지 않는다. 이를 위해, 접촉자 리스트의 접촉자의 신원들은 (직접 또는 유저와의 인터렉션을 통해) 검색 엔진에 의해 메시징 서비스에 제공되고 메시지들이 적절한 형식을 갖추고(format) 전송된다.
일부 구현들에서, 상기 동작들의 적어도 일부가(예를 들어, 유저 인터렉션 없이) 자동적으로 수행될 수 있다. 예를 들어, 유저가 메시지의 타겟 인접지 또는 수신자들을 특정함이 없이 "오늘 밤 저하고 레드 삭스 게임에서 만나요"와 같은 메시지를 송신할 수 있다. 프로세스(500)는 메시지의 주제를 식별할 수 있으며, 스포츠, 레드삭스, 야구 등에 관심을 가지는 보스톤 인접지에서의 유저의 소셜 그래프의 멤버들을 식별하고 자동으로 메시지를 형식을 갖추게 하고 전송할 수 있다. 메시지는 기 정의된 타입의 메시지(예를 들어, 컨텐츠 스트림 게시판, 이메일, 인스턴트 메시지(instant message) 등) 일 수 있거나 또는 시스템은 접촉자 리스트 상의 각 개인에 대한 바람직한 통신 방법을 식별할 수 있고 그리고 메시지의 적절한 타입을 송신할 수 있다. 이 정보는 예를 들어, 멤버의 소셜 그래프들, 프로파일들 또는 소셜 네트워크에 사용 가능한 다른 데이터베이스(들)를 검색함으로써 획득될 수 있다.
다른 구현들에서, 프로세스(500)는 이벤트 명을 식별하고 이 이벤트 명에 근거하여 이벤트의 인접지 내의 접촉자들을 식별하고 이벤트 인접지 내의 접촉자들에게만 메시지를 보내도록 구성될 수 있다. 위에 설명된 프로세싱은 이 경우에 장소 명(예를 들어, 보스톤)들 대신에 대체된 이벤트 명(예를 들어, 펜웨이 공원에 롤링 스톤즈)들을 가지고 사용될 수 있다. 하지만 프로세싱은 위에 설명된 것과 실질적으로 유사하다.
본 명세서에 설명된 시스템은 많은 소셜 네트워킹 유저들에 링크된 많은 컴퓨팅 디바이스들의 위치를 획득하는 것을 또한 포함할 수 있다. 예를 들어, 만일 유저가 레드 삭스 경기에 구경 가고, 시스템은 유저가 랜즈다운 거리(펜웨이 공원 근처의 거리)에 있는 것을 발견한다면, 시스템은 랜즈다운 거리 지역에 가장 최근에 지리적으로-위치한 다른 유저들 또는 그 지역에 있었던 가장 최근에 소셜 네트워크에 체크인 했던 다른 유저들을 찾을 것이다.
도 6은 본 명세서에 설명된 프로세스들 또는 그 프로세스들의 부분들이 구현될 수 있는 컴퓨팅 디바이스들의 예들을 도시한다. 이와 관련하여, 도 8은 컴퓨팅 디바이스(800) 및 일반적인 모바일 컴퓨팅 디바이스(650)의 예를 도시하며, 이는 본 명세서에 설명된 프로세스들의 전부 또는 일부를 구현하는데 사용될 수 있다. 예를 들어, 서버 시스템(112) 및 소셜 네트워크(123)은 컴퓨팅 디바이스(600) 상에 구현될 수 있다. 모바일 컴퓨팅 디바이스(650)는 도 1의 클라이언트 디바이스를 나타낼 수 있다. 도 1의 다른 클라이언트 디바이스들은 컴퓨팅 디바이스(600)의 아키텍처를 또한 가질 수 있다.
컴퓨팅 디바이스(600)는 랩탑들, 데스크 탑들, 워크스테이션들, PDA들, 서버들, 블레이드 서버(blade server)들, 메인 프레임들, 데이터 센터 스케일 컴퓨터(data center scale computer)들 및 다른 적절한 컴퓨터들과 같은 다양한 형태들의 디지털 컴퓨터들을 나타내도록 의도된다. 컴퓨팅 디바이스(650)는 PDA들, 셀룰라 전화기들, 스마트폰들 및 다른 유사한 컴퓨팅 디바이스들과 같은 다양한 형태의 모바일 디바이스들을 나타내도록 의도된다. 여기에 도시된 컴포넌트들, 그 연결들 및 관계들 그리고 그 기능들은 단지 대표적이고 본 발명에 설명 및/또는 청구된 구현들에 한정되려는 의도는 아니다.
컴퓨팅 디바이스(800)는 프로세서(602), 메모리(604), 저장 디바이스(606), 메모리(604)를 연결하는 고속 인터페이스(608) 및 고속 확장 포트들(610) 및 저속 버스(614) 및 저장 디바이스(606)를 연결하는 저속 인터페이스(612)를 포함한다. 컴포넌트들(602, 604, 606, 608, 610 및 612)의 각각은 다양한 버스들을 사용하여 상호 연결되고 일반적인 마더보드 또는 기타 적절한 방식들로 장착될 수 있다. 프로세서(602)는 고속 인터페이스(608)에 결합된 디스플레이(616)와 같은 외부 입/출력 디바이스 상의 GUI에 대해 그래픽 정보를 디스플레이하기 위해 메모리(604) 내에 또는 저장 디바이스(606)에 저장된 명령들을 포함하는 컴퓨팅 디바이스(600) 내의 실행을 위한 명령들을 프로세스 할 수 있다. 다른 구현들에서, 다중 프로세서들 및/또는 다중 버스들이 다중 메모리들 및 메모리 타입들과 함께 적절하게 사용될 수 있다. 또한, 다중 컴퓨팅 디바이스들(600)은 (예를 들어, 서버 뱅크, 블레이트 서버들의 그룹 또는 다중 프로세서 시스템과 같은) 필요한 동작들의 부분들을 제공하는 각 디바이스와 연결될 수 있다.
메모리(604)는 컴퓨팅 디바이스(600) 내에 정보를 저장한다. 하나의 구현에서, 메모리(604)는 비휘발성 메모리 유닛 또는 유닛들이다. 다른 구현에서, 메모리(604)는 비휘발성 유닛 또는 유닛들이다. 메모리(604)는 또한 자기 또는 광학 디스크와 같은 컴퓨터-판독 가능 매체들의 다른 형태일 수 있다.
저장 디바이스(608)는 컴퓨팅 디바이스(600)에 대용량 저장(mass storage)를 제공할 수 있다. 하나의 구현에서, 저장 디바이스(608)는 플라피 디스크 디바이스, 하드 디스크 디바이스, 광학 디스크 디바이스 또는 테이프 디바이스, 플래시 메모리 또는 다른 유사한 고체 상태 메모리(solid state memory) 디바이스 또는 저장 영역 네트워크 또는 다른 구성들로 된 디바이스들을 포함하는 디바이스들의 어레이와 같은 컴퓨터-판독 가능 매체들이거나 또는 이를 포함할 수 있다. 컴퓨터 프로그램 제품이 정보 캐리어로 실체적으로 구현될 수 있다. 컴퓨터 프로그램 제품은 실행시에 위에 설명된 것들과 같은 하나 이상의 방법들을 수행하는 명령들을 또한 포함할 수 있다. 정보 캐리어는 메모리(604), 저장 디바이스(608), 프로세서상의 메모리(602) 또는 전파 신호와 같은 비-일시적인 컴퓨터 또는 기계-판독 가능 매체들일 수 있다. 예를 들어, 정보 캐리어는 비-일시적인, 기계-판독 가능 저장 매체들일 수 있다.
고속 제어기(608)는 컴퓨터 디바이스(600)에 대한 대역폭-집약적인 동작들을 관리하는 반면에, 저속 제어기(812)는 더 낮은 대역폭-집약적인 동작들을 관리한다. 이와 같은 기능들의 할당은 단지 예시적이다. 하나의 구현에서 고속 제어기(608)는 메모리(604), (예를 들어, 그래픽 프로세서 또는 가속기를 통한)디스플레이(616) 및 고속 확장 포트들(610)에 결합 되며, 이는 다양한 확장 카드들(미 도시됨)을 수용할 수 있게 한다. 구현에서, 저속 제어기(612)는 저장 디바이스(606) 및 저속 확장 포트(614)에 결합된다. 다양한 통신 포트들(예를 들어, USB, 블루투스, 이더넷, 무선 이더넷)을 포함할 수 있는 저속 확장 포트는 키보드, 포인팅 디바이스, 스캐너 또는 예를 들어, 네트워크 어댑터를 통한 스위치 또는 라우터와 같은 네트워킹 디바이스와 같은 하나 이상의 입/출력 디바이스들에 결합 될 수 있다.
컴퓨팅 디바이스(600)는 도면에 도시된 바와 같이 서로 다른 형태들의 수로 구현될 수 있다. 예를 들어, 컴퓨팅 디바이스(600)는 표준 서버(620)로서 또는 그러한 서버들의 그룹으로 여러 번 구현될 수 있다. 컴퓨팅 디바이스(600)는 랙 서버 시스템(rack server system)(624)의 부분으로서 또한 구현될 수 있다. 또한, 컴퓨팅 디바이스(600)는 랩탑 컴퓨터(622)와 같은 개인용 컴퓨터로 구현될 수 있다. 대안적으로, 컴퓨팅 디바이스(600)으로부터의 컴포넌트들이 디바이스(650)와 같은 모바일 디바이스(미 도시됨)에서의 다른 컴포넌트들과 조합될 수 있다. 그러한 디바이스들 각각은 하나 이상의 컴퓨팅 디바이스(600, 650)를 포함할 수 있고 전체 시스템은 상호 통신하는 다중 컴퓨팅 디바이스들(600, 650)로 구성될 수 있다.
컴퓨팅 디바이스(650)는 여러가지 것들 중에서도 특히, 프로세스(652), 메모리(664), 디스플레이(654)와 같은 입/출력 디바이스, 통신 인터페이스(666) 및 트랜시버(668)를 포함한다. 추가적인 저장을 제공하기 위해 마이크로 드라이브 또는 다른 디바이스와 같은 저장 디바이스가 디바이스(650)에 또한 제공될 수 있다. 컴포넌트들(650, 652, 664, 654, 666 및 668) 각각은 다양한 버스들을 이용하여 상호 연결되고, 여러 컴포넌트들은 일반적인 마더보드 상에 또는 기타 적절한 방식들로 장착될 수 있다.
프로세서(652)는 메모리(664)에 저장된 명령들을 포함하는 컴퓨팅 디바이스(650) 내의 명령들을 실행할 수 있다. 프로세서는 별도의 다중 아날로그 및 디지털 프로세서들을 포함하는 칩들의 칩셋으로 구현될 수 있다. 프로세서는 예를 들어 유저 인터페이스들, 디바이스(650)에 의해 실행되는 어플리케이션들 및 디바이스(650)에 의한 무선 통신의 제어와 같은 디바이스(650)의 다른 컴포넌트들의 조정을 위해 제공될 수 있다.
프로세서(652)는 디스플레이(654)에 결합된 제어 인터페이스(658) 및 디스플레이 인터페이스(656)를 통해 유저와 통신할 수 있다. 디스플레이(654)는 예를 들어, TFT LCD 또는 OLED 디스플레이 또는 다른 적절한 디스플레이 기술일 수 있다. 디스플레이 인터페이스(656)는 유저에게 그래픽 및 다른 정보를 프리젠트 하도록 디스플레이(654)를 구동하기 위한 적절한 회로를 포함할 수 있다. 제어 인터페이스(658)는 유저로부터 명령어들을 수신하고 이 명령어들을 프로세서(652)에 제출하기 위해 그 명령어들을 변환할 수 있다. 또한, 외부 인터페이스(662)는 디바이스(650)의 다른 디바이스들과의 주변 지역 통신을 가능하게 하기 위해 프로세서(652)와 통신하여 제공될 수 있다. 외부 인터페이스(662)는 예를 들어, 일부 구현들에서의 유선 통신 또는 다른 구현들에서의 무선 통신을 위해 제공될 수 있고, 다중 인터페이스들은 또한 사용될 수 있다.
메모리(664)는 컴퓨팅 디바이스(650) 내에 정보를 저장한다. 메모리(664)는 하나 이상의 컴퓨터-판독 가능 매체 또는 매체들, 휘발성 메모리 유닛 또는 유닛들 또는 비-휘발성 메모리 유닛 또는 유닛들로 구현될 수 있다. 확장 메모리(674)는 확장 인터페이스(674)를 통해 디바이스(650)에 또한 제공되고 연결될 수 있으며, 이는 예를 들어, SIM 카드 인터페이스를 포함할 수 있다. 그러한 확장 메모리(674)는 디바이스(650)을 위한 추가 저장 공간을 제공할 수 있거나 또는 디바이스(650)에 대한 어플리케이션들 또는 다른 정보를 또한 저장할 수 있다. 구체적으로, 확장 메모리(674)는 위에 설명된 프로세스들을 수행하거나 또는 보충하기 위한 명령들을 포함하고 그리고 보안 정보를 또한 포함한다. 따라서, 예를 들어 확장 메모리(674)는 보안 모듈로서 디바이스(650)에 제공될 수 있고 디바이스(650)의 안전한 사용을 허용하는 명령들로 프로그램될 수 있다. 또한 비-해킹 가능 방식으로 SIMM 카드 상의 식별정보를 배치하는 것과 같은 추가 정보와 함께 보안 어플리케이션들이 SIMM 카드를 통해 제공될 수 있다.
메모리는 예를 들어, 아래에 논의될 플래시 메모리 및/또는 NVRAM 메모리를 포함할 수 있다. 하나의 구현에서, 컴퓨터 프로그램 제품이 정보 캐리어(information carrier)로 실체적으로 구현된다. 컴퓨터 프로그램 제품은 실행시에 위에 설명된 것처럼 하나 이상의 방법들을 수행하는 명령들을 포함한다. 정보 캐리어는 메모리(664), 확장 메모리(674), 프로세서(652) 상의 메모리 또는 예를 들어 트랜시버(668) 또는 외부 인터페이스(662)를 통해 수신될 수 있는 전파 신호(propagated signal)와 같은 컴퓨터-판독 가능 매체 또는 기계-판독 가능 매체이다.
디바이스(650)는 통신 인터페이스(666)을 통해 무선으로 통신할 수 있으며, 이는 필요한 경우 디지털 신호 프로세싱 회로를 포함할 수 있다. 통신 인터페이스(666)는 여러가지 것들 중에서도 특히, GSM 음성 통화, SMS, EMS 또는 MMS 메시지, CDMA, TDMA, PDC, WCDMA, CDMA2000, 또는 GPRS와 같은 다양한 모드들 또는 프로토콜들 하에서 통신을 위해 제공될 수 있다. 그러한 통신은 예를 들어, 라디오-주파수 트랜시버(668)를 통해 발생할 수 있다. 또한 단거리 통신이 블루투스, 와이파이 또는 다른 그러한 트랜시버(미 도시됨)와 같은 것을 사용하여 발생할 수 있다. 또한, GPS 수신 모듈(670)이 추가적인 네비게이션- 및 위치-관계된 무선 데이터를 디바이스(650)에 제공할 수 있으며, 이는 디바이스(650) 상에 동작하는 어플리케이션들에 적절하게 사용될 수 있다.
디바이스(650)는 오디오 코덱(660)을 사용하여 또한 들을 수 있게 통신할 수 있으며, 이는 유저로부터의 구두 정보를 수신하고 그것을 사용 가능한 디지털 정보로 변환할 수 있게 한다. 오디오 코덱(660)은 마찬가지로 예를 들어, 디바이스(650)의 핸드셋에서 스피커와 같은 것을 통해 유저를 위한 오디오 사운드를 생성할 수 있다. 그러한 사운드는 음성 전화 호출(voice telephone call)들로부터의 사운들 포함할 수 있으며 녹음된 사운드(예를 들어, 음성 메시지들, 음악 파일들 등)를 포함할 수 있고 그리고 디바이스(650) 상에 동작하는 어플리케이션들에 의해 생성된 사운드를 또한 포함할 수 있다.
컴퓨터 디바이스(650)는 도면에 도시된 바와 같이 서로 다른 형태들의 수로 구현될 수 있다. 예를 들어, 컴퓨터 디바이스(650)는 셀룰라 전화(680)로 구현될 수 있다. 컴퓨터 디바이스(650)는 스마트폰(682), PDA 또는 다른 유사한 모바일 디바이스의 부분으로 또한 구현될 수 있다.
본 명세서에 설명된 시스템들과 기법들의 다양한 구현들이 디지털 전자 회로, 집적 회로, 특히 디자인된 ASIC(application specfific integrated circuit)들, 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및/또는 그것들의 조합들로 실현될 수 있다. 이러한 다양한 구현들은 적어도 하나의 프로그래머블 프로세서를 포함하는 프로그래머블 시스템 상에 실행 가능 및/또는 해석 가능한 하나 이상의 컴퓨터 프로그램들로의 구현을 포함할 수 있으며, 이 프로그래머블 프로세서는 특수 또는 범용의 목적일 수 있으며, 데이터 및 명령들을 적어도 하나의 입력 디바이스에서의 저장 시스템으로부터 수신하고 그리고 데이터 및 명령들을 적어도 하나의 출력 디바이스에서의 저장 시스템으로 전송하도록 결합 될 수 있다.
(프로그램들, 소프트웨어, 스프트웨어 어플리케이션들 또는 코드로 또한 알려진) 이 컴퓨터 프로그램들은 프로그래머블 프로세서에 대한 기계 명령들을 포함하고 하이-레벨의 절차 및/또는 객체 지향의 프로그래밍 언어 및/또는 어셈블리/기계 언어로 구현될 수 있다. 본 명세서에 사용된 바와 같이, "기계-판독 가능 매체" "컴퓨터-판독 가능 매체"의 용어들은 임의의 컴퓨터 프로그램 제품, 기구(apparatus) 및/또는 디바이스(예를 들어, 자기 디스크들, 광학 디스크들, 메모리, 프로그래머블 프로세서에 기계 명령들 및/또는 데이터를 제공하는데 사용되는 프로그래머블 로직 디바이스들(PLD들))을 언급하며, 기계-판독 가능 신호로서 기계 명령들을 수신하는 기계-판독 가능 매체을 포함한다. "기계-판독 가능 신호"의 용어는 프로그래머블 프로세서에 기계 명령들 및/또는 데이터를 제공하는데 사용되는 임의의 신호를 언급한다.
유저와의 인터렉션을 제공하기 위해, 본 명세서에 설명된 시스템들 및 기법들은 정보를 유저에게 디스플레이하기 위한 디스플레이 디바이스(예를 들어, CRT 또는 LCD 모니터), 키보드 및 유저가 컴퓨터에 입력을 제공할 수 있는 포인팅 디바이스(예를 들어, 마우스 또는 트랙볼(trackball))를 갖는 컴퓨터로 구현될 수 있다. 다른 종류의 디바이스들이 유저와의 인터렉션을 위해 마찬가지로 제공되는데 사용될 수 있다; 예를 들어, 유저에게 제공되는 피드백은 임의의 형태의 감각 피드백(예를 들어, 비주얼 피드백, 청각 피드백 또는 촉각 피드백)일 수 있다; 그리고 유저로부터의 입력은 음향(acoustic), 말(speech) 또는 촉각의 입력을 포함하는 임의의 형태로 수신될 수 있다.
본 명세서에 설명된 시스템들 및 기법들은 (예를 들어, 데이터 서버로서) 백 엔드(back end) 컴포넌트를 포함하거나 또는 미들웨어 컴포넌트(예를 들어, 어플리케이션 서버)를 포함하거나 프론트 엔드(front end) 컴포넌트(예를 들어, 유저가 본 명세서에 설명된 시스템들과 기법들의 구현과 인터렉션할 수 있는 그래픽 유저 인터페이스 또는 웹 브라우저를 갖는 클라이언트 컴퓨터) 또는 그러한 백 엔드, 미들 엔드 또는 프런트 엔드 컴포넌트들의 임의의 조합을 포함하는 컴퓨팅 시스템으로 구현될 수 있다. 시스템의 컴포넌트들은 디지털 데이터 통신(예를 들어, 통신 네트워크)의 임의의 형태 또는 매체에 의해 상호 연결될 수 있다. 통신 네트워크들의 예들은 LAN, WAN 및 인터넷을 포함한다.
컴퓨팅 시스템은 클라이언트들 및 서버들을 포함할 수 있다. 클라이언트 및 서버가 일반적으로 서로 멀리 떨어져 있고 전형적으로 통신 네트워크를 통해 인터렉션한다. 클라이언트 및 서버의 관계는 각 컴퓨터들 상에 실행되고 서로 클라이언트-서버 관계를 가지는 컴퓨터 프로그램들 때문에 발생한다.
다수의 구현들이 설명되었다. 그럼에도 불구하고, 본 발명의 사상 및 범위를 벗어남이 없이 다양한 변형들이 이루어질 수 있음을 이해할 수 있을 것이다.
본 출원의 맥락에서, "소셜 네트워크" 및 "소셜 네트워킹 서비스(SNS)"는 상호 교환적으로 사용될 수 있다.
또한, 도면들에서 설명된 로직 플로우들은 바람직한 결과들을 달성하기 위해 도시된 특정 순서 또는 순차적인 순서를 필요로 하지 않는다. 또한, 설명된 플로우들로부터 다른 단계들이 제공될 수 있거나 또는 제거될 수 있고 다른 컴포넌트들이 설명된 시스템들에 또는 설명된 시스템들로부터 추가 또는 삭제될 수 있다. 따라서 기타 구현들은 후속 청구항들의 청구 범위 내에 있다.
일부 예들에서, 어떤 데이터가 저장되거나 또는 사용되기 전에 하나 이상의 방법들로 익명 처리될 수 있어서, 개인적으로 식별 가능한 정보가 제거된다. 예를 들어, 유저의 신원이 익명 처리될 수 있다.
본 명세서에 설명된 프로세스들 및 이의 변형들은 상대방의 프라이버시가 보호되는 것을 보장하기 위한 기능을 포함한다. 이 목적을 위해, 유저가 멤버임이 다른 상대방에게 누설되기 전에 소셜 네트워킹 계정에서의 유저의 멤버십이 공개적으로 알려짐을 확인하기 위해 프로세스들이 프로그램될 수 있다. 마찬가지로, 그 정보를 다른 상대방에게 누설되기 전에 또는 심지어 그 정보를 소셜 그래프에 통합하기 전에 상대에 대한 정보가 공개적으로 알려짐을 확인하기 위해 프로세스들이 프로그램될 수 있다.
본 명세서에 논의된 시스템들은 유저들에 대한 개인 정보를 수집하는 상황들에 있어서, 개인 정보(예를 들어, 유저의 환경 설정들 또는 유저의 현 위치에 대한 정보)를 수집할 수 있는 프로그램들 또는 특징들을 활성화/비활성화하기 위한 기회가 유저들에게 제공된다. 또한, 어떤 데이터는 저장되거나 사용되기 전에 하나 이상의 방법들로 익명 처리될 수 있어서, 개인적으로 식별 가능한 정보는 제거된다. 예를 들어, 개인적으로 식별 가능한 어떤 정보도 유저에 대해 결정할 수 없도록 유저의 신원이 익명처리되거나 또는 (도시, 우편 번호, 국가 수준에 관한)위치 정보가 획득되는 유저의 지리적인 위치가 일반화될 수 있어서 유저의 특정 위치는 결정될 수 없다.
본 명세서에 설명된 서로 다른 구현들의 엘리먼트들은 위에서 구체적으로 정해지지 않은 기타 구현들을 형성하도록 조합될 수 있다. 엘리먼트들은 동작에 부정적인 영향을 끼침이 없이 본 명세서에 설명된 프로세스들, 컴퓨터 프로그램들, 웹 페이지들 등으로부터 제외될 수 있다. 더우기, 다양한 개별 엘리먼트들은 본 명세서에 설명된 기능들을 수행하기 위해 하나 이상의 개별 엘리먼트들에 결합 될 수 있다.
본 명세서에 구체적으로 설명되지 않은 기타 구현들이 또한 후속되는 청구항들의 범위 내에 있다.

Claims (16)

  1. 방법으로서,
    컴퓨팅 디바이스의 타겟 지리적 위치(target geographical location)를 수신하는 단계와;
    상기 타겟 지리적 위치에 기초하여 인접지(vicinity)를 식별하는 단계와;
    상기 인접지를 이용해서 소셜 네트워킹 서비스(SNS) 상의 계정과 관련되는 한 세트의 접촉자들을 식별하는 단계-상기 한 세트의 접촉자들은 상기 인접지의 위치들과 관련되지 않는 하나 이상의 접촉자들을 배제하는 접촉자 리스트를 생성하는데 사용됨-와;
    상기 접촉자 리스트의 멤버들에게 통신을 송신하는 단계를 포함하며, 상기 통신은 상기 타겟 지리적 위치에 관한 것임을 특징으로 하는 방법.
  2. 제 1항에 있어서,
    상기 한 세트의 접촉자들을 식별하는 단계는:
    접촉자들 중 상기 인접지와 관련되는 단어들을 검색하는 것과;
    상기 인접지와 관련되는 상기 단어들을 가지는 접촉자들을 선택하는 것을 포함하는 것을 특징으로 하는 방법.
  3. 제 1항에 있어서,
    상기 타겟 지리적 위치를 수신하는 단계는,
    상기 소셜 네트워킹 서비스를 통해 액세스 가능한 인덱스로부터 상기 타겟 지리적 위치를 검색하는 것을 포함하는 것을 특징으로 하는 방법.
  4. 제 1항에 있어서,
    상기 타겟 지리적 위치를 수신하는 단계는:
    지리적-위치 서비스로부터 상기 컴퓨팅 디바이스의 현 위치를 획득하는 것과;
    상기 현 위치를 상기 타겟 지리적 위치에 상관시키는 것을 포함하는 것을 특징으로 하는 방법.
  5. 제 1항에 있어서,
    상기 컴퓨팅 디바이스와 관련되는 유저의 소셜 그래프에 적어도 부분적으로 기초하여 상기 접촉자 리스트의 멤버십을 정제(refining)하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  6. 제 1항에 있어서,
    상기 타겟 지리적 위치를 수신하는 단계는 체크인 정보를 포함하는 데이터베이스를 컨설팅(consulting)하는 것을 포함하며, 상기 체크인 정보는 상기 컴퓨팅 디바이스의 현 위치를 포함하며, 상기 현 위치는 상기 타겟 지리적 위치인 것을 특징으로 하는 방법.
  7. 제 1항에 있어서,
    상기 인접지를 식별하는 단계는:
    상기 통신의 주제를 식별하는 것과;
    상기 주제에 대응하는 인접지에 대한 데이터베이스를 검색하는 것을 포함하는 것을 특징으로 하는 방법.
  8. 제 1항에 있어서,
    상기 한 세트의 접촉자들은 상기 타겟 지리적 위치의 인접지에 있는 것으로 알려진 상기 소셜 네트워킹 서비스의 멤버들을 포함하는 것을 특징으로 하는 방법.
  9. 방법으로서,
    소셜 네트워킹 서비스에서 한 그룹의 접촉자들을 정의하는 단계-상기 한 그룹의 접촉자들은 지리학에 기초하여 정의됨-와;
    컴퓨팅 디바이스의 타겟 위치를 획득하는 단계-상기 타겟 위치는 상기 타겟 위치와 관련되는 명칭에 의해 정의됨-와;
    소셜 네트워킹 서비스 상의 계정과 관련되는 한 세트의 접촉자들을 상기 타겟 위치를 사용하여 획득하는 단계-상기 한 세트의 접촉자들은 상기 한 세트의 접촉자들을 포함하는 접촉자 리스트를 생성하는데 사용됨-와;
    상기 접촉자 리스트에 통신을 송신하는 단계를 포함하며, 상기 통신은 상기 타겟 위치에 관한 것임을 특징으로 하는 방법.
  10. 제 9항에 있어서,
    상기 타겟 위치를 획득하는 단계는 상기 소셜 네트워킹 서비스를 통해 액세스 가능한 프로파일로부터 상기 타겟 위치를 검색하는 것을 포함하는 것을 특징으로 하는 방법.
  11. 제 9항에 있어서,
    상기 타겟 위치를 획득하는 단계는:
    지리적-위치 서비스를 사용하여 상기 컴퓨팅 디바이스의 현 위치를 획득하는 것과;
    상기 현 위치를 상기 타겟 위치에 상관시키는 것을 포함하는 것을 특징으로 하는 방법.
  12. 제 9항에 있어서,
    상기 통신은 상기 타겟 위치에서의 이벤트에 관한 것임을 특징으로 하는 방법.
  13. 동작들을 수행하도록 실행 가능한 명령들을 저장하는 하나 이상의 비-일시적인 기계-판독 가능 매체들로서, 상기 동작들은:
    컴퓨팅 디바이스의 타겟 지리적 위치를 수신하고;
    상기 타겟 지리적 위치에 기초하여 인접지를 식별하고;
    소셜 네트워킹 서비스 상의 계정과 관련되는 한 세트의 접촉자들을 상기 인접지를 사용하여 식별-상기 한 세트의 접촉자들은 상기 인접지 내의 위치들과 관련되지 않는 하나 이상의 접촉자들을 배제하는 접촉자 리스트를 생성하는데 사용됨-하고; 그리고
    상기 접촉자 리스트의 멤버들에게 통신을 송신-상기 통신은 상기 타겟 지리적 위치에 관한 것-하는 것을 포함하는 것을 특징으로 하는 하나 이상의 비-일시적인 기계-판독 가능 매체들.
  14. 동작들을 수행하도록 실행 가능한 명령들을 저장하는 하나 이상의 비-일시적인 기계-판독 가능 매체들로서, 상기 동작들은:
    소셜 네트워킹 서비스에서 한 그룹의 접촉자들을 정의-상기 한 그룹의 접촉자들은 지리학에 기초하여 정의됨-하고;
    컴퓨팅 디바이스의 타겟 위치를 획득-상기 타겟 위치는 상기 타겟 위치와 관련되는 명칭에 의해 정의됨-하고;
    소셜 네트워킹 서비스 상의 계정과 관련되는 한 세트의 접촉자들을 상기 타겟 위치를 사용하여 획득-상기 한 세트의 접촉자들은 상기 한 그룹의 접촉자들을 포함하는 접촉 리스트를 생성하는데 사용됨-하고; 그리고
    상기 접촉자 리스트에 통신을 송신-상기 통신은 상기 타겟 위치에 관한 것임-하는 것을 포함하는 것을 특징으로 하는 하나 이상의 비-일시적인 기계-판독 가능 매체들.
  15. 시스템으로서,
    컴퓨팅 디바이스의 타겟 지리적 위치를 수신하고 그리고 상기 타겟 지리적 위치에 기초하여 인접지를 식별하기 위한 데이터 엔진과;
    소셜 네트워킹 서비스 상의 계정과 관련되는 한 세트의 접촉자들을 인접지를 사용하여 식별하기 위한 검색 엔진을 포함하며, 상기 한 세트의 접촉자들은 상기 인접지 내의 위치들과 관련되지 않는 하나 이상의 접촉자들을 배제하는 접촉자 리스트를 생성하는데 사용되고 그리고 상기 접촉자 리스트의 멤버들에게 통신을 송신하며, 상기 통신은 상기 타겟 지리적 위치에 관한 것인 것을 특징으로 하는 시스템.
  16. 시스템으로서,
    실행 가능한 명령들을 저장하는 하나 이상의 비-일시적인 기계-판독 가능 매체들과;
    동작들을 수행하도록 상기 명령들을 실행하기 위한 하나 이상의 프로세싱 디바이스들을 포함하며, 상기 동작들은:
    소셜 네트워킹 서비스에서 한 그룹의 접촉자들을 정의-상기 한 그룹의 접촉자들은 지리학에 기초하여 정의됨-하고;
    컴퓨팅 디바이스의 타겟 위치를 획득-상기 타겟 위치는 상기 타겟 위치와 관련되는 명칭에 의해 정의됨-하고;
    소셜 네트워킹 서비스 상의 계정과 관련되는 한 세트의 접촉자들을 상기 타겟 위치를 사용하여 획득-상기 한 세트의 접촉자들은 상기 한 그룹의 접촉자들을 포함하는 접촉자 리스트를 생성하는데 사용됨-하고; 그리고
    상기 접촉자 리스트에 통신을 송신-상기 통신은 상기 타겟 위치에 관한 것-하는 것을 포함하는 것을 특징으로 하는 시스템.
KR1020147030002A 2012-03-26 2013-03-12 소셜 네트워킹 서비스(sns) 상의 접촉자들에 통신을 전송하기 KR102048108B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261615447P 2012-03-26 2012-03-26
US61/615,447 2012-03-26
US13/792,493 US9521105B2 (en) 2012-03-26 2013-03-11 Sending communications to contacts on a social networking service
US13/792,493 2013-03-11
PCT/US2013/030388 WO2013148153A1 (en) 2012-03-26 2013-03-12 Sending communications to contacts on a social networking service

Publications (2)

Publication Number Publication Date
KR20140142732A true KR20140142732A (ko) 2014-12-12
KR102048108B1 KR102048108B1 (ko) 2019-11-22

Family

ID=49213379

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147030002A KR102048108B1 (ko) 2012-03-26 2013-03-12 소셜 네트워킹 서비스(sns) 상의 접촉자들에 통신을 전송하기

Country Status (6)

Country Link
US (1) US9521105B2 (ko)
EP (1) EP2831747B1 (ko)
JP (1) JP6262199B2 (ko)
KR (1) KR102048108B1 (ko)
CN (1) CN104285220B (ko)
WO (1) WO2013148153A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180100371A (ko) * 2016-05-12 2018-09-10 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 데이터 전송 방법 및 디바이스

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130290439A1 (en) * 2012-04-27 2013-10-31 Nokia Corporation Method and apparatus for notification and posting at social networks
US9412136B2 (en) * 2012-07-09 2016-08-09 Facebook, Inc. Creation of real-time conversations based on social location information
US9177347B2 (en) 2012-09-06 2015-11-03 Facebook, Inc. Group recommendations based on answered questions in a social networking system
US8938512B2 (en) * 2012-09-06 2015-01-20 Facebook, Inc. Recommending groups to create in a social networking system
US9971830B2 (en) 2012-09-06 2018-05-15 Facebook, Inc. Recommending users to add to groups in a social networking system
US8935346B2 (en) * 2012-09-06 2015-01-13 Facebook, Inc. Recommending groups to join in a social networking system
US8909559B1 (en) * 2013-03-28 2014-12-09 Linkedin Corporation Techniques to facilitate recommendations for non-member connections
US11082388B2 (en) * 2013-07-02 2021-08-03 Nokia Technologies Oy Apparatus and method for providing connections to contacts based on associations with content
US20150163258A1 (en) * 2013-12-05 2015-06-11 Facebook, Inc. Indicating User Availability for Communication
US11030708B2 (en) 2014-02-28 2021-06-08 Christine E. Akutagawa Method of and device for implementing contagious illness analysis and tracking
US9704205B2 (en) 2014-02-28 2017-07-11 Christine E. Akutagawa Device for implementing body fluid analysis and social networking event planning
CN105992141A (zh) * 2015-02-04 2016-10-05 Tcl集团股份有限公司 联系人查找方法及装置
US10127311B2 (en) * 2015-03-05 2018-11-13 Google Llc Personalized content sharing
US10620812B2 (en) * 2016-06-10 2020-04-14 Apple Inc. Device, method, and graphical user interface for managing electronic communications
CN106685802A (zh) * 2016-12-28 2017-05-17 珠海市魅族科技有限公司 一种基于电子地图的通信方法及装置
CN106506345A (zh) * 2016-12-30 2017-03-15 珠海市魅族科技有限公司 一种信息提示的方法及装置
US11140232B2 (en) * 2017-06-26 2021-10-05 Facebook, Inc. Analyzing geo-spatial data in layers
US10852945B2 (en) * 2017-08-03 2020-12-01 Facebook, Inc. Generating social media communications based on low-data messages
CN109657164B (zh) * 2018-12-25 2020-07-10 广州华多网络科技有限公司 发布消息的方法、装置及存储介质
CN109951578B (zh) * 2019-01-17 2023-04-07 平安科技(深圳)有限公司 一种查询联系人的方法、装置及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070282621A1 (en) * 2006-06-01 2007-12-06 Flipt, Inc Mobile dating system incorporating user location information
US20090248807A1 (en) * 2008-03-26 2009-10-01 Ami-Go Group, Inc. System and Method of Matching Presence for Subscribers in a Social Network
US20100293029A1 (en) * 2009-05-13 2010-11-18 Hugh Olliphant System and Method for Automatically Scheduling Appointments
US20110119133A1 (en) * 2009-08-03 2011-05-19 Unomobi, Inc. System and Method for Adding Advertisements to a Location-Based Advertising System

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7237201B2 (en) 2003-05-20 2007-06-26 Aol Llc Geographic location notification based on identity linking
US7593740B2 (en) 2004-05-12 2009-09-22 Google, Inc. Location-based social software for mobile devices
JP5671234B2 (ja) * 2007-02-28 2015-02-18 フェイスブック,インク. ウェブに基づくソーシャルネットワークのメンバーを自動的に見つけるためのシステムおよび方法
US8010601B2 (en) * 2007-12-21 2011-08-30 Waldeck Technology, Llc Contiguous location-based user networks
US8762459B2 (en) * 2008-09-16 2014-06-24 Verizon Patent And Licensing Inc. Selectable mode based social networking interaction systems and methods
US20100228590A1 (en) * 2009-03-03 2010-09-09 International Business Machines Corporation Context-aware electronic social networking
US8832093B2 (en) * 2010-08-18 2014-09-09 Facebook, Inc. Dynamic place visibility in geo-social networking system
US20120226757A1 (en) * 2011-03-01 2012-09-06 Mcfarland Keith Location Filtered Messaging
US20150005010A1 (en) * 2011-08-30 2015-01-01 Nokia Corporation Method and apparatus for managing the presenting of location-based events

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070282621A1 (en) * 2006-06-01 2007-12-06 Flipt, Inc Mobile dating system incorporating user location information
US20090248807A1 (en) * 2008-03-26 2009-10-01 Ami-Go Group, Inc. System and Method of Matching Presence for Subscribers in a Social Network
US20100293029A1 (en) * 2009-05-13 2010-11-18 Hugh Olliphant System and Method for Automatically Scheduling Appointments
US20110119133A1 (en) * 2009-08-03 2011-05-19 Unomobi, Inc. System and Method for Adding Advertisements to a Location-Based Advertising System

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180100371A (ko) * 2016-05-12 2018-09-10 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 데이터 전송 방법 및 디바이스

Also Published As

Publication number Publication date
KR102048108B1 (ko) 2019-11-22
JP2015512538A (ja) 2015-04-27
EP2831747A4 (en) 2015-11-18
WO2013148153A1 (en) 2013-10-03
EP2831747B1 (en) 2019-11-06
US9521105B2 (en) 2016-12-13
JP6262199B2 (ja) 2018-01-17
CN104285220B (zh) 2018-02-23
CN104285220A (zh) 2015-01-14
EP2831747A1 (en) 2015-02-04
US20130254309A1 (en) 2013-09-26

Similar Documents

Publication Publication Date Title
KR102048108B1 (ko) 소셜 네트워킹 서비스(sns) 상의 접촉자들에 통신을 전송하기
US9129026B1 (en) Displaying social content in search results
US10949429B1 (en) Scoring authors of posts
US10511652B2 (en) Recommending posts to non-subscribing users
US8938500B1 (en) Retrieving social network content
JP6441847B2 (ja) モバイル・デバイスに対する示唆された検索クエリのプッシュ
US9299059B1 (en) Generating a summary of social media content
US20180350009A1 (en) Using Metadata to Summarize Social Media Content
US9268865B2 (en) Ranking search results by social relevancy
US9141656B1 (en) Searching using access controls
CA2813037C (en) Presenting social search results
US9294537B1 (en) Suggesting a tag for content
US8983948B1 (en) Providing electronic content based on a composition of a social network
US9519683B1 (en) Inferring social affinity based on interactions with search results
US10657165B1 (en) Inferring membership in a group
US9536015B1 (en) Using social networking information

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant