KR20140134726A - 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법, 시스템 및 장치 - Google Patents

클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법, 시스템 및 장치 Download PDF

Info

Publication number
KR20140134726A
KR20140134726A KR1020147031455A KR20147031455A KR20140134726A KR 20140134726 A KR20140134726 A KR 20140134726A KR 1020147031455 A KR1020147031455 A KR 1020147031455A KR 20147031455 A KR20147031455 A KR 20147031455A KR 20140134726 A KR20140134726 A KR 20140134726A
Authority
KR
South Korea
Prior art keywords
client device
search
data
data acquisition
acquisition request
Prior art date
Application number
KR1020147031455A
Other languages
English (en)
Other versions
KR101526837B1 (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 KR20140134726A publication Critical patent/KR20140134726A/ko
Application granted granted Critical
Publication of KR101526837B1 publication Critical patent/KR101526837B1/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/58Message adaptation for wireless communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/43Querying
    • G06F16/435Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/43Querying
    • G06F16/438Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/7867Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, title and artist information, manually generated time, location and usage information, user ratings

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 시스템들 및 방법들이 개시된다. 방법은 컴퓨터 시스템에서, 제 1 클라이언트 디바이스로부터 제 1 데이터 획득 요청을 얻는 단계 ― 제 1 데이터 획득 요청은 (ⅰ) 제 1 클라이언트 디바이스와는 다른 제 2 클라이언트 디바이스를 식별하는 디바이스 식별자, 및 (ⅱ) 탐색 파라미터 식별자를 포함함 ―; 및 디바이스 식별자에 따라 복수의 클라이언트 디바이스들로부터 제 2 클라이언트 디바이스를 식별하는 단계를 포함한다. 일부 구현들에서, 방법은, 탐색 파라미터 식별자를 포함하는 제 2 데이터 획득 요청을 제 2 디바이스에 발행하는 단계; 탐색 파라미터 식별자와 연관된 탐색 파라미터를 제 2 클라이언트 디바이스로부터 얻는 단계; 탐색 파라미터와 연관된 하나 또는 그보다 많은 탐색 결과들을 얻는 단계; 및 제 1 클라이언트 디바이스의 사용자에게 디스플레이하기 위해 하나 또는 그보다 많은 탐색 결과 중 적어도 하나의 탐색 결과를 제 1 클라이언트 디바이스에 제공하는 단계를 더 포함한다.

Description

클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법, 시스템 및 장치{METHOD, SYSTEM, AND APPARATUS FOR EXCHANGING DATA BETWEEN CLIENT DEVICES}
본 출원은 "METHOD, SYSTEM, AND APPARATUS FOR EXCHANGING DATA BETWEEN CLIENT DEVICES"라는 명칭으로 2012년 6월 20일자 제출된 중국 특허출원 제201210204586.6호에 대한 우선권을 주장하며, 이 특허출원은 그 전체가 인용에 의해 포함된다.
개시되는 구현들은 일반적으로 데이터 교환 기술들에 관한 것으로, 특히 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법, 시스템 및 장치에 관한 것이다.
종래에는 무선 단말(예를 들어, 휴대 전화)로부터의 데이터를 개인용 컴퓨터(PC: personal computer)로 전송하기 위해 두 가지 방식들이 채택된다. 첫 번째 방식에서는 사용자가 데이터 케이블을 사용하여 무선 단말에 PC를 접속하고, 두 번째 방식에서는 데이터 케이블을 사용하지 않고, 사용자가 우선 무선 단말로부터의 데이터를 서버에 업로드한 다음, PC로부터의 다운로드 요청을 서버에 제출함으로써 데이터를 획득한다.
첫 번째 방식에서는, 사용자가 데이터 케이블을 매번 플러그하고 언플러그할 필요가 있는데 이는 불편하고, 두 번째 방식에서는, 사용자가 데이터를 획득하기 위해 2회의 요청들을 포함하는 프로세스를 시작할 필요가 있는데 이 또한 번거롭다.
이에 따라, 클라이언트 디바이스들 간의 데이터 교환을 더 간단한 방법으로 구현할 수 있는, 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법, 시스템 및 장치를 제공할 필요가 있다.
2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 시스템들, 방법들, 및 명령들을 포함하는 비-일시적 컴퓨터 판독 가능 저장 매체가 개시된다.
일부 구현들에서, 2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법은: 프로세서 및 상기 프로세서에 의해 실행될 하나 또는 그보다 많은 프로그램들을 저장하기 위한 메모리를 갖는 컴퓨터 시스템에서, 제 1 클라이언트 디바이스로부터 제 1 데이터 획득 요청을 얻는 단계 ― 상기 제 1 데이터 획득 요청은 (ⅰ) 상기 제 1 클라이언트 디바이스와는 다른 제 2 클라이언트 디바이스를 식별하는 디바이스 식별자, 및 (ⅱ) 탐색 파라미터를 식별하는 탐색 파라미터 식별자를 포함함 ―; 상기 디바이스 식별자에 따라 복수의 클라이언트 디바이스들로부터 상기 제 2 클라이언트 디바이스를 식별하는 단계; 상기 탐색 파라미터 식별자를 포함하는 제 2 데이터 획득 요청을 상기 제 2 디바이스에 발행하는 단계; 상기 탐색 파라미터 식별자에 따라 상기 제 2 클라이언트 디바이스로부터 탐색 파라미터를 얻는 단계; 상기 탐색 파라미터에 따라 하나 또는 그보다 많은 탐색 결과들을 얻는 단계; 및 상기 제 1 클라이언트 디바이스의 사용자에게 디스플레이하기 위해 상기 하나 또는 그보다 많은 탐색 결과 중 적어도 하나의 탐색 결과를 상기 제 1 클라이언트 디바이스에 제공하는 단계를 포함한다.
일부 구현들에서, 2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 컴퓨터 시스템이 개시된다. 일부 구현들에서, 컴퓨터 시스템은 하나 또는 그보다 많은 프로세서들; 메모리; 및 하나 또는 그보다 많은 프로그램들을 포함한다. 상기 하나 또는 그보다 많은 프로그램들은 상기 메모리에 저장되고 상기 하나 또는 그보다 많은 프로세서들에 의해 실행되도록 구성된다. 일부 구현들에서, 하나 또는 그보다 많은 프로그램들은: 제 1 클라이언트 디바이스로부터 제 1 데이터 획득 요청을 얻기 위한 명령 ― 상기 제 1 데이터 획득 요청은 (ⅰ) 상기 제 1 클라이언트 디바이스와는 다른 제 2 클라이언트 디바이스를 식별하는 디바이스 식별자, 및 (ⅱ) 탐색 파라미터를 식별하는 탐색 파라미터 식별자를 포함함 ―; 상기 디바이스 식별자에 따라 복수의 클라이언트 디바이스들로부터 상기 제 2 클라이언트 디바이스를 식별하기 위한 명령; 상기 탐색 파라미터 식별자를 포함하는 제 2 데이터 획득 요청을 상기 제 2 디바이스에 발행하기 위한 명령; 상기 탐색 파라미터 식별자에 따라 상기 제 2 클라이언트 디바이스로부터 탐색 파라미터를 얻기 위한 명령; 상기 탐색 파라미터에 따라 하나 또는 그보다 많은 탐색 결과들을 얻기 위한 명령; 및 상기 제 1 클라이언트 디바이스의 사용자에게 디스플레이하기 위해 상기 하나 또는 그보다 많은 탐색 결과 중 적어도 하나의 탐색 결과를 상기 제 1 클라이언트 디바이스에 제공하기 위한 명령을 포함한다.
일부 구현들에서, 2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 명령들을 저장하는 비-일시적 컴퓨터 판독 가능 저장 매체가 개시된다. 일부 구현들에서, 비-일시적 컴퓨터 판독 가능 저장 매체는 하나 또는 그보다 많은 프로그램들을 저장하며, 하나 또는 그보다 많은 프로그램들은 하나 또는 그보다 많은 프로세서들을 갖는 컴퓨터 시스템에 의해 실행될 때, 상기 컴퓨터 시스템으로 하여금: 제 1 클라이언트 디바이스로부터 제 1 데이터 획득 요청을 얻게 하고 ― 상기 제 1 데이터 획득 요청은 (ⅰ) 상기 제 1 클라이언트 디바이스와는 다른 제 2 클라이언트 디바이스를 식별하는 디바이스 식별자, 및 (ⅱ) 탐색 파라미터를 식별하는 탐색 파라미터 식별자를 포함함 ―; 상기 디바이스 식별자에 따라 복수의 클라이언트 디바이스들로부터 상기 제 2 클라이언트 디바이스를 식별하게 하고; 상기 탐색 파라미터 식별자를 포함하는 제 2 데이터 획득 요청을 상기 제 2 디바이스에 발행하게 하고; 상기 탐색 파라미터 식별자에 따라 상기 제 2 클라이언트 디바이스로부터 탐색 파라미터를 얻게 하고; 상기 탐색 파라미터에 따라 하나 또는 그보다 많은 탐색 결과들을 얻게 하고; 및 상기 제 1 클라이언트 디바이스의 사용자에게 디스플레이하기 위해 상기 하나 또는 그보다 많은 탐색 결과 중 적어도 하나의 탐색 결과를 상기 제 1 클라이언트 디바이스에 제공하게 하는 명령들을 포함한다.
클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법, 시스템 및 장치를 통해, 사용자가 제 1 클라이언트 디바이스로 제 2 클라이언트 디바이스 내의 데이터에 액세스하는 프로세스는 제 1 클라이언트 디바이스 내의 데이터에 액세스하는 프로세스와 거의 동일하고, 둘 다 단 하나의 동작 단계를 필요로 한다. 종래의 데이터 케이블 접속 또는 업로드 및 다운로드에 비해, 동작 프로세스가 더 간단하고 이용 경험이 더 순조롭다. 본 출원의 상기 및 다른 주제들, 특징들 및 이점들을 더 알기 쉽게 하기 위해, 상세한 설명에 대해 첨부 도면들을 참조로 다음에 예시적인 구현들이 고려된다.
도면들과 함께 고려될 때 본 발명의 다양한 양상들의 다음의 상세한 설명의 결과로서, 본 발명의 앞서 언급한 구현뿐 아니라 추가 구현들도 더 명확하게 이해될 것이다. 유사한 참조번호들이 도면들의 여러 관점들 전반에서 대응하는 부분들을 나타낸다.
도 1은 본 출원의 제 1 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법의 흐름도이다.
도 2는 본 출원의 제 1 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법의 다른 흐름도이다.
도 3은 본 출원의 제 1 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법의 특정 응용 예의 개략도이다.
도 4는 본 출원의 제 2 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법의 흐름도이다.
도 5는 본 출원의 제 3 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법의 흐름도이다.
도 6은 본 출원의 제 4 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 시스템의 구조 블록도이다.
도 7은 본 출원의 제 5 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 장치의 구조 블록도이다.
도 8은 본 출원의 제 6 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 장치의 구조 블록도이다.
도 9는 일부 구현들에 따라 컴퓨터 시스템을 나타내는 블록도이다.
도 10 - 도 11은 일부 구현들에 따라 예시적인 클라이언트 디바이스들을 나타내는 블록도들이다.
도 12는 일부 구현들에 따라 예시적인 서버 시스템을 나타내는 블록도이다.
도 13은 일부 구현들에 따라 컴퓨터 시스템에서 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법을 나타내는 흐름도이다.
도 14a - 도 14b는 일부 구현들에 따라 컴퓨터 시스템에서 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법을 나타내는 흐름도들이다.
미리결정된 객체들을 구현하기 위해 본 출원에 의해 채택되는 기술적 측정될과 기능들을 추가적으로 설명하기 위해, 본 출원에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 특정 구현 방법들, 구조들, 특징들과 방법, 시스템 및 장치들이 도면들 및 예시적인 구현들을 참조로 다음에 상세히 설명된다.
도 1은 본 출원의 제 1 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법의 흐름도이다. 클라이언트 디바이스는 예를 들어, 개인용 컴퓨터, 휴대 전화, 태블릿 컴퓨터 등이다. 도 1에 도시된 바와 같이, 방법은 다음의 단계들을 포함한다.
단계 S110: 제 1 클라이언트 디바이스가 서버에 제 1 데이터 획득 요청을 전송한다.
단계 S120: 서버가 제 1 데이터 획득 요청에 따라 제 2 데이터 획득 요청을 생성하고, 제 2 클라이언트 디바이스에 제 2 데이터 획득 요청을 푸시한다.
단계 S130: 제 2 클라이언트 디바이스가 제 2 데이터 획득 요청에 따라 데이터를 획득하고, 획득된 데이터를 서버에 업로드한다.
단계 S140: 서버가 제 2 클라이언트 디바이스에 의해 업로드된 데이터 또는 그 데이터의 메시지 다이제스트를 제 1 클라이언트 디바이스로 리턴한다.
더 상세한 설명을 위해, 도 2가 추가로 참조된다. 도 2는 도 1에 도시된 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법의 더 상세한 개략도이다.
도 2에 도시된 바와 같이, 단계 S110 전에, 방법은 예를 들어, 사용자가 서버에 의해 제공되는 네트워크 서비스에 제 1 클라이언트 디바이스로 액세스하는 것을 더 포함한다. 네트워크 서비스는 예를 들어, 이메일 서비스, (중국에서는 "웨이보(weibo)"로 알려진) 마이크로블로깅과 같은 소셜 네트워킹 서비스, 전자 지도 서비스, 정보 탐색 및 검색 서비스, 온라인 소핑 서비스 및 주문형 비디오 서비스와 같은 다양한 형태들이다. 네트워크 서비스의 사용중에, 사용자의 신원을 인증하기 위한 사용자 인증 동작을 수행하는 것이 요구될 수도 있다.
사용자가 네트워크 서비스를 사용할 때, 예를 들어 정보를 검색하거나 훑어보거나 게재할 때, 사용자가 제 2 클라이언트 디바이스 내의 데이터를 사용할 필요가 있을 수도 있다. 데이터는 예를 들어, 이미지, 오디오 파일, 비디오 파일, 2D 바코드, 및 애플리케이션의 사용중에 생성된 데이터를 포함한다. 애플리케이션의 사용중에 생성된 데이터는 예를 들어, 애플리케이션의 중단점 정보, 지리적 위치 정보, 및 전자 지도 애플리케이션의 사용중에 레코딩된 관심 지점을 포함한다. 중단점 정보는 예를 들어, 비디오 파일 또는 오디오 파일이 플레이되는 시간, 다수의 페이지들을 갖는 웹페이지의 특정 브라우징 위치 또는 전자책의 브라우징 진도를 포함한다. 즉, 데이터의 포맷 및 특정 저장 형태가 제한되지 않는다.
이때, 사용자는 서버에 의해 제공되는 페이지에서 제 2 클라이언트 디바이스 내의 데이터를 선택할 수 있다. 구체적으로, 예를 들어 선택은 네트워크 서비스 페이지에서 제공되는 특정한 입구를 선택함으로써 수행될 수 있다. 이때, 제 1 클라이언트 디바이스는 단계 S110을 수행하여 서버에 제 1 데이터 획득 요청을 전송한다.
제 1 데이터 획득 요청은 제 2 클라이언트 디바이스 내의 데이터가 획득될 필요가 있음을 서버에 알린다. 제 1 데이터 획득 요청은 획득될 데이터를 명백하게 명시할 수 있는 것이 아니라, 획득될 데이터의 타입을 명시할 수도 있다. 이때, 데이터는 제 2 클라이언트 디바이스에 의해 결정된다. 또한, 제 1 데이터 획득 요청은 획득될 데이터를 추가로 직접적으로 명시할 수도 있는데, 예를 들어 최근에 찍은 사진 또는 플레이되는 오디오 파일 또는 비디오 파일을 획득하거나 실시간으로 데이터를 획득할 것을 직접적으로 명시할 수도 있다. 예를 들어, 옐로스톤 국립공원을 방문하는 가족 관광객들이 이 기술을 사용하여 관광객의 스마트폰을 통해 실시간으로 공원을 볼 수 있다. 다른 예에서, 10대의 부모들이 이 방법을 사용하여, 특정 애플리케이션들이 십대의 스마트폰에 설치되는 것을 막을 수도 있다.
서버는 제 1 데이터 획득 요청을 수신한 후 단계 S120을 수행한다. 구체적으로, 단계 S120에서 서버는 예를 들어, 제 1 데이터 획득 요청을 파싱하여, 획득될 데이터의 타입 및 데이터가 명시되는지 여부와 같은 정보를 획득할 수 있다. 데이터의 타입은 예를 들어, 이미지, 오디오 파일, 비디오 파일, 2D 바코드, 및 애플리케이션의 사용중에 생성된 데이터를 포함한다. 다음에, 서버는 획득될 데이터의 타입 및 데이터가 명시되는지 여부와 같은 정보에 따라 제 2 데이터 획득 요청을 생성한다. 제 2 데이터 획득 요청은 미리 정의된 포맷을 따르거나 미리 설정된 프로토콜을 채택함으로써 캡슐화된다.
다음에, 서버가 제 2 클라이언트 디바이스에 제 2 데이터 획득 요청을 푸시한다. 모니터링 모듈이 제 2 클라이언트 디바이스에 제공되며, 서버에 의해 푸시되는 제 2 데이터 획득 요청을 모니터링하도록 구성된다. 다수의 특정 푸시 방식들이 채택될 수 있다. 예를 들어, 제 2 데이터 획득 요청은 단문 메시지, 멀티미디어 메시지 또는 서비스 정보를 통해 휴대 전화 번호에 푸시되거나, 이메일 박스에 푸시되거나, 인스턴트 메시징 계정에 푸시되거나, 다른 애플리케이션 계정들에 푸시되거나, 모니터링 모듈에 의해 모니터링되는 네트워크 포트에 바로 푸시될 수도 있다.
모니터링 모듈에 의해 제 2 데이터 획득 요청이 모니터링되면, 제 2 데이터 획득 요청에 따라 데이터가 획득되는데, 즉, 단계 S130이 수행되기 시작한다. 구체적으로, 제 2 데이터 획득 요청이 획득될 데이터의 타입을 명시하고 데이터를 직접적으로 명시하지 않으면, 제 2 클라이언트 디바이스가 제 2 데이터 획득 요청에 따라, 사용자에 의한 선택을 위해 선택될 데이터를 제시할 수 있는데, 예를 들어 사용자가 이미지를 선택하게 하는 이미지 라이브러리 선택 인터페이스 또는 사용자가 오디오 파일을 선택하게 하는 뮤직 라이브러리 선택 인터페이스를 제시한다. 제 2 데이터 획득 요청이 획득될 데이터를 직접적으로 명시하면, 예를 들어 최근에 찍은 사진 또는 플레이되는 오디오 파일을 명시하면, 해당 사진 또는 오디오 파일이 바로 획득될 수 있다. 제 2 데이터 획득 요청이 데이터를 실시간으로 획득할 것을, 예를 들어 사운드 세그먼트, 비디오 세그먼트 또는 사진을 레코딩할 것을 추가로 요청할 수도 있다. 이때, 제 2 클라이언트 디바이스는 실시간으로 데이터 입력을 획득하기 위한 마이크로폰 또는 카메라와 같은 서로 다른 데이터 획득 장치들을 대응하게 시작한다. 필요한 데이터를 획득한 후, 제 2 클라이언트 디바이스는 서버로 데이터를 업로드한다.
다음에, 단계 S140이 수행된다. 서버는 제 2 클라이언트 디바이스에 의해 업로드된 데이터 또는 그 데이터의 메시지 다이제스트를 제 1 클라이언트 디바이스로 리턴한다. 서버는 제 2 클라이언트 디바이스에 의해 업로드된 데이터를 클라이언트에 바로 리턴할 수도 있고, 클라이언트는 데이터를 출력하거나 데이터를 추가로 처리한다. 출력은 예를 들어, 이미지를 디스플레이하는 것 또는 오디오 파일 또는 비디오 파일을 플레이하는 것을 포함한다. 추가 처리는 예를 들어, 편집 또는 포워딩을 포함한다. 그러나 어떤 경우들에는, 제 2 클라이언트 디바이스에 의해 업로드된 데이터가 제 1 클라이언트 디바이스로 리턴될 필요가 없다. 예를 들어, 사용자가 이메일 서비스를 사용할 때, 제 2 클라이언트 디바이스에 의해 업로드된 데이터는 바로 첨부물로 간주되고, 제 1 클라이언트 디바이스가 데이터를 디스플레이할 필요도 없다. 이 경우, 서버는 메시지 다이제스트, 예를 들어 파일명 또는 제 2 클라이언트 디바이스에 의해 업로드된 데이터의 썸네일을 생성하여, 생성된 메시지 다이제스트를 제 1 클라이언트 디바이스에 리턴할 수 있고, 제 1 클라이언트 디바이스는 대응하는 데이터 동작이 완료되었음을 사용자가 확인하도록 메시지 다이제스트를 디스플레이한다.
클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법을 더 구체적으로 설명하기 위해, 도 3을 참조하여 다음에 특정 응용 예가 소개된다.
제 1 클라이언트 디바이스는 개인용 컴퓨터(PC)이고, 제 2 클라이언트 디바이스는 사용자에 의해 사용되는 스마트폰이고, 이메일 클라이언트 애플리케이션이 스마트폰 상에서 실행된다. 또한, 이메일 클라이언트 애플리케이션은 미리 설정된 포맷, 즉 제 2 데이터 획득 요청에 따르는 이메일을 모니터링하도록 구성된 내장 모니터링 모듈을 갖는다.
사용자는 개인용 컴퓨터 상에서 실행되는 브라우저를 통해, 서버에 의해 제공되는 이메일 서비스에 액세스하고, 새로운 이메일의 편집시 사진을 추가하기 위해, 스마트폰으로 사진을 업로드하는 것이 선택된다. 이때, 서버는 사용자의 이메일 박스로 제 2 데이터 획득 요청을 푸시한다. 대응하게, 이메일 클라이언트 애플리케이션 내의 모니터링 모듈에 의해 제 2 데이터 획득 요청이 모니터링된다. 이때, 모니터링 모듈은 사용자가 업로드될 사진을 선택하도록 사진 선택 인터페이스를 호출한다. 선택 후에, 스마트폰이 선택된 이미지를 서버에 자동으로 업로드한다. 서버는 업로드된 이미지를 수신한 다음, 이미지를 개인용 컴퓨터로 리턴하고 브라우저에 이미지를 디스플레이한다.
이 구현의 특정 응용 예가 이메일 및 스마트폰과 결합하여 위에 소개된다. 이 구현의 특정 응용 시나리오는 위의 이메일 서비스로 한정되지 않는다.
예를 들어, 다른 응용 예에서, 사용자는 개인용 컴퓨터 상에서 실행되는 브라우저를 통해, 서버에 의해 제공되는 온라인 쇼핑 서비스에 액세스하고, 신원 인증 동안, 스마트폰을 통해 2D 바코드를 업로드하는 것이 선택된다. 이때, 서버는 스마트폰 상에서 실행되는 2D 바코드 애플리케이션에 제 2 데이터 획득 요청을 푸시한다. 대응하게, 2D 바코드 애플리케이션 내의 모니터링 모듈에 의해 제 2 데이터 획득 요청이 모니터링된다. 이때, 스마트폰은 2D 바코드를 서버에 자동으로 업로드한다. 서버는 업로드된 2D 바코드를 수신한 다음, 2D 바코드를 신원 인증을 위해 개인용 컴퓨터에 리턴한다.
또한, 하나의 동일한 사용자가 제 1 클라이언트 디바이스와 제 2 클라이언트 디바이스를 사용하는 것으로 한정되지 않는다고 이해될 수 있다.
예를 들어, 다른 응용 예에서, 제 1 사용자는 개인용 컴퓨터 상에서 실행되는 브라우저를 통해, 지리적 위치에 기반하며 서버에서 제공되는 네트워크 서비스에 액세스하여, 예를 들어 인근 호텔 또는 식당을 찾는다. 지정된 위치에서, 제 2 사용자에 의해 사용되는 스마트폰으로 업로드를 수행하는 것이 선택된다. 이때, 서버는 제 2 사용자에 의해 사용되는 스마트폰에 제 2 데이터 획득 요청을 푸시한다. 대응하게, 제 2 사용자에 의해 사용되는 스마트폰은 그 위치 정보를 서버에 업로드한다. 서버는 위치 정보를 수신한 다음, 탐색을 수행하고, 제 1 사용자에 의해 사용되는 개인용 컴퓨터에 결과를 리턴한다.
또한, 사용자가 서버에 의해 제공되는 네트워크 서비스에 브라우저를 통해 액세스한다는 것으로도 한정되지 않는다.
예를 들어, 다른 응용 예에서, 사용자는 주문형 비디오 소프트웨어를 통해 주문형 비디오 서비스에 액세스하고, 플레이될 비디오 파일이 명시되면, 태블릿 컴퓨터에서의 진행 상태를 기초로 계속해서 플레이하는 것이 선택된다. 이때, 서버는 사용자에 의해 사용되는 태블릿 컴퓨터에 제 2 데이터 획득 요청을 푸시한다. 태블릿 컴퓨터는 자원 로케이터 그리고 태블릿 컴퓨터에 의해 플레이되고 있는 비디오 파일의 플레이 시간을 레코딩하고, 자원 로케이터 및 플레이 시간을 서버에 업로드한다. 서버는 자원 로케이터 및 플레이 시간을 주문형 비디오 소프트웨어로 리턴한다. 이때, 주문형 비디오 소프트웨어는 자원 로케이터에 따라 해당 비디오 파일을 획득하고, 태블릿 컴퓨터에서의 진행 상태에 자동으로 로케이팅할 수 있다.
클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법에서, 사용자가 제 1 클라이언트 디바이스로 제 2 클라이언트 디바이스 내의 데이터에 액세스하는 프로세스는 사용자가 제 1 클라이언트 디바이스 내의 데이터에 액세스하는 프로세스와 거의 동일하고, 둘 다 단 하나의 동작 단계를 필요로 한다. 종래의 데이터 케이블 접속 또는 업로드 및 다운로드에 비해, 동작 프로세스가 더 간단하고, 이용 경험이 더 순조롭다.
도 4는 본 출원의 제 2 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법의 흐름도이다. 클라이언트 디바이스는 예를 들어, 개인용 컴퓨터, 휴대 전화, 태블릿 컴퓨터 등이다. 방법은 예를 들어, 네트워크 서비스를 제공하는 서버에 의해 수행된다. 도 4에 도시된 바와 같이, 방법은 다음의 단계들을 포함한다.
단계 S210: 제 1 클라이언트 디바이스에 의해 전송된 제 1 데이터 획득 요청을 수신하며, 여기서 제 1 데이터 획득 요청은 제 2 클라이언트 디바이스로 데이터가 업로드될 필요가 있음을 서버에 알린다. 제 1 데이터 획득 요청은 획득될 데이터를 명확하게 특정하지 않을 수도 있고, 이때 데이터는 제 2 클라이언트 디바이스에 의해 결정된다. 또한, 제 1 데이터 획득 요청은 획득될 데이터를 추가로 직접적으로 명시할 수 있는데, 예를 들어 최근에 찍은 사진 또는 플레이되는 오디오 파일 또는 비디오 파일을 획득하거나 실시간으로 데이터를 획득할 것을 직접적으로 명시할 수 있다.
단계 S220: 제 1 데이터 획득 요청에 따라 제 2 데이터 획득 요청을 생성하며, 여기서 제 2 클라이언트 디바이스가 해당 데이터를 획득하여 업로드할 수 있게 하는데 제 2 데이터 획득 요청이 사용된다.
단계 S230: 제 2 클라이언트 디바이스에 제 2 데이터 획득 요청을 푸시한다. 다수의 특정 푸시 방식들이 채택될 수 있다. 예를 들어, 제 2 데이터 획득 요청은 단문 메시지, 멀티미디어 메시지 또는 서비스 정보를 통해 휴대 전화 번호에 푸시되거나, 이메일 박스에 푸시되거나, 인스턴트 메시징 계정에 푸시되거나, 모니터링 모듈에 의해 모니터링되는 네트워크 포트로 바로 푸시될 수 있다.
단계 S240: 제 2 클라이언트 디바이스에 의해 업로드된 데이터를 수신한다.
단계 S250: 제 2 클라이언트 디바이스에 의해 업로드된 데이터 또는 그 데이터의 메시지 다이제스트를 제 1 클라이언트 디바이스로 리턴한다. 서버는 제 2 클라이언트 디바이스에 의해 업로드된 데이터를 클라이언트에 바로 리턴할 수도 있고, 클라이언트는 데이터를 출력하거나 추가로 처리한다. 출력은 예를 들어, 이미지를 디스플레이하는 것 또는 오디오 파일 또는 비디오 파일을 플레이하는 것을 포함한다. 추가 처리는 예를 들어, 편집 또는 포워딩이다. 그러나 어떤 경우들에는, 제 2 클라이언트 디바이스에 의해 업로드된 데이터가 제 1 클라이언트 디바이스로 리턴될 필요가 없다. 예를 들어, 사용자가 이메일 서비스를 사용할 때, 제 2 클라이언트 디바이스에 의해 업로드된 데이터는 바로 첨부로 간주되고, 제 1 클라이언트 디바이스가 데이터를 디스플레이할 필요도 없다. 이 경우, 서버는 메시지 다이제스트, 예를 들어 파일명 또는 제 2 클라이언트 디바이스에 의해 업로드된 데이터의 썸네일을 생성하여, 생성된 메시지 다이제스트를 제 1 클라이언트 디바이스에 리턴할 수 있고, 제 1 클라이언트 디바이스는 대응하는 데이터 동작이 완료되었음을 사용자가 확인하도록 메시지 다이제스트를 디스플레이한다.
이 구현의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법을 통해, 사용자가 제 1 클라이언트 디바이스로 제 2 클라이언트 디바이스 내의 데이터에 액세스하는 프로세스는 사용자가 제 1 클라이언트 디바이스 내의 데이터에 액세스하는 프로세스와 거의 동일하고, 둘 다 단 하나의 동작 단계를 필요로 한다. 종래의 데이터 케이블 접속 또는 업로드 및 다운로드에 비해, 동작 프로세스가 더 간단하고, 이용 경험이 더 순조롭다.
도 5는 본 출원의 제 3 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법의 흐름도이다. 클라이언트 디바이스는 예를 들어, 개인용 컴퓨터, 휴대 전화, 태블릿 컴퓨터 등이다. 도 5에 도시된 바와 같이, 방법은 다음의 단계들을 포함한다.
단계 S310: 서버에 의해 푸시되는 데이터 획득 요청을 모니터링한다. 다수의 특정 푸시 방식들이 채택될 수 있다. 예를 들어, 데이터 획득 요청은 단문 메시지, 멀티미디어 메시지 또는 서비스 정보를 통해 휴대 전화 번호에 푸시되거나, 이메일 박스에 푸시되거나, 인스턴트 메시징 계정에 푸시되거나, 특정 네트워크 포트로 바로 푸시될 수 있다. 따라서 단계 S310에서는, 서로 다른 방식들이 대응하게 채택될 필요가 있다. 예를 들어, 이는 독립적으로 실행되는 모니터링 모듈 또는 다른 애플리케이션들에 의존하여 실행되는 모니터링 모듈에 의해 구현될 수 있다.
단계 S320: 데이터 획득 요청이 모니터링된 후 해당 데이터를 획득한다. 구체적으로, 데이터 획득 요청이 획득될 데이터의 타입을 명시하고 데이터를 직접적으로 명시하지 않으면, 데이터 획득 요청에 따라 사용자에 의한 선택을 위해 선택될 데이터가 제시될 수 있다. 예를 들어, 사용자가 이미지를 선택하도록 이미지 라이브러리 선택 인터페이스가 제시되거나, 사용자가 오디오 파일을 선택하도록 뮤직 라이브러리 선택 인터페이스가 제시된다. 데이터 획득 요청이 획득될 데이터를 직접적으로 명시하면, 예를 들어 최근에 찍은 사진 또는 플레이되는 오디오 파일을 명시하면, 해당 사진 또는 오디오 파일이 바로 획득될 수 있다. 데이터 획득 요청이 데이터를 실시간으로 획득할 것을, 예를 들어 사운드 세그먼트, 비디오 세그먼트 또는 사진을 레코딩할 것을 추가로 요청할 수도 있다. 이때, 대응하게 데이터 입력을 실시간으로 획득하도록 마이크로폰 또는 카메라와 같은 서로 다른 데이터 획득 장치들이 시작된다.
단계 S330: 획득된 데이터를 서버에 업로드한다.
이 구현의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법에서, 서버에 의해 푸시되는 데이터 획득 요청을 모니터링하는 것을 통해, 필요할 때 해당 데이터가 서버에 업로드될 수 있고, 서버의 처리 프로세스와 결합하여, 다른 클라이언트 디바이스들로 이 구현의 클라이언트 디바이스 내의 데이터에 액세스하는 동작 프로세스가 더 간단하고, 이용 경험이 더 순조롭다.
도 6은 본 출원의 제 4 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 시스템의 구조 블록도이다. 도 6에 도시된 바와 같이, 교환 시스템(400)은: 제 1 클라이언트 디바이스(10), 서버(20) 및 제 2 클라이언트 디바이스(30)를 포함한다.
제 1 클라이언트 디바이스(10)는: 서버에 제 1 데이터 획득 요청을 전송하도록 구성된 데이터 요청 모듈(11)을 포함한다.
서버(20)는: 제 1 데이터 획득 요청에 따라 제 2 데이터 획득 요청을 생성하도록 구성된 데이터 요청 생성 모듈(21); 및 제 2 클라이언트 디바이스에 제 2 데이터 획득 요청을 푸시하도록 구성된 푸시 모듈(22)을 포함한다.
제 2 클라이언트 디바이스(30)는: 제 2 데이터 획득 요청에 따라 데이터를 획득하도록 구성된 데이터 획득 모듈(31); 및 획득된 데이터를 서버에 업로드하도록 구성된 업로드 모듈(32)을 포함한다.
데이터 획득 모듈(31)은 예를 들어, 제 2 데이터 획득 요청에 따라, 선택될 데이터를 제시하도록 구성된 제시 유닛(311)(도 8 참조), 및 선택된 데이터를 획득하도록 구성된 획득 유닛(312)(도 8 참조)을 포함할 수 있다. 또한, 데이터 획득 모듈(31)은 제 2 데이터 획득 요청 내의 규격에 따라 해당 데이터를 직접 획득하도록 구성될 수 있고, 제 2 클라이언트 디바이스(30) 내의 데이터 획득 장치를 시작하여 데이터 입력을 실시간으로 획득하도록 추가로 구성될 수 있다.
서버(20)는: 제 2 클라이언트 디바이스에 의해 업로드된 데이터 또는 그 데이터의 메시지 다이제스트를 제 1 클라이언트 디바이스로 리턴하도록 구성된 리턴 모듈(23)을 더 포함한다.
제 1 클라이언트 디바이스(10)는: 서버에 의해 리턴되는 데이터 또는 그 데이터의 메시지 다이제스트에 따라 결과를 디스플레이하도록 구성된 출력 모듈(12)을 더 포함할 수 있다.
교환 시스템(400)의 다른 세부사항들에 대해서는, 도 1 내지 도 3 그리고 관련 설명이 추가로 참조될 수 있다.
이 구현의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 시스템에서, 사용자가 제 1 클라이언트 디바이스로 제 2 클라이언트 디바이스 내의 데이터에 액세스하는 프로세스는 사용자가 제 1 클라이언트 디바이스 내의 데이터에 액세스하는 프로세스와 거의 동일하고, 둘 다 단 하나의 동작 단계를 필요로 한다. 종래의 데이터 케이블 접속 또는 업로드 및 다운로드에 비해, 동작 프로세스가 더 간단하고, 이용 경험이 더 순조롭다.
도 7은 본 출원의 제 5 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 장치의 구조 블록도이다. 도 7에 도시된 바와 같이, 교환 장치(20a)는 데이터 요청 생성 모듈(21), 푸시 모듈(22), 리턴 모듈(23), 제 1 수신 모듈(24), 및 제 2 수신 모듈(25)을 포함한다.
데이터 요청 생성 모듈(21), 푸시 모듈(22) 및 리턴 모듈(23)은 제 4 구현의 모듈들과 동일하며, 함께 참조될 수 있다.
제 1 수신 모듈(24)은 제 1 클라이언트 디바이스에 의해 전송된 제 1 데이터 획득 요청을 수신하도록 구성되고; 데이터 요청 생성 모듈(21)은 제 1 데이터 획득 요청에 따라 제 2 데이터 획득 요청을 생성하도록 구성되며, 여기서 제 2 클라이언트 디바이스가 해당 데이터를 획득하여 업로드할 수 있게 하는데 제 2 데이터 획득 요청이 사용되고; 푸시 모듈(22)은 제 2 클라이언트 디바이스에 제 2 데이터 획득 요청을 푸시하도록 구성되고; 제 2 수신 모듈(25)은 제 2 클라이언트 디바이스에 의해 업로드된 데이터를 수신하도록 구성되며; 리턴 모듈(23)은 제 2 클라이언트 디바이스에 의해 업로드된 데이터 또는 그 데이터의 메시지 다이제스트를 제 1 클라이언트 디바이스로 리턴하도록 구성된다.
교환 장치(20a)의 더 많은 세부사항들에 대해서는, 도 4 및 관련 설명이 추가로 참조될 수 있다.
이 구현의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 장치를 통해, 사용자가 제 1 클라이언트 디바이스로 제 2 클라이언트 디바이스 내의 데이터에 액세스하는 프로세스는 사용자가 제 1 클라이언트 디바이스 내의 데이터에 액세스하는 프로세스와 거의 동일하고, 둘 다 단 하나의 동작 단계를 필요로 한다. 종래의 데이터 케이블 접속 또는 업로드 및 다운로드에 비해, 동작 프로세스가 더 간단하고, 이용 경험이 더 순조롭다.
도 8은 본 출원의 제 6 구현에 따라 클라이언트 디바이스들 간에 데이터를 교환하기 위한 장치의 구조 블록도이다. 도 8에 도시된 바와 같이, 교환 장치(30a)는: 데이터 획득 모듈(31), 업로드 모듈(32) 및 모니터링 모듈(33)을 포함한다.
데이터 획득 모듈(31) 및 업로드 모듈(32)은 제 4 구현의 모듈들과 동일하며, 함께 참조될 수 있다.
모니터링 모듈(33)은 서버에 의해 푸시되는 데이터 획득 요청을 모니터링하도록 구성되고; 데이터 획득 모듈(31)은 모니터링 모듈에 의해 데이터 획득 요청이 모니터링된 후 해당 데이터를 획득하도록 구성되며, 업로드 모듈(32)은 획득된 데이터를 서버에 업로드하도록 구성된다.
데이터 획득 모듈(31)은 예를 들어, 제 2 데이터 획득 요청에 따라, 선택될 데이터를 제시하도록 구성된 제시 유닛(311), 및 선택된 데이터를 획득하도록 구성된 획득 유닛(312)을 포함할 수 있다. 또한, 데이터 획득 모듈(31)은 제 2 데이터 획득 요청 내의 규격에 따라 해당 데이터를 직접 획득하도록 구성될 수 있고, 제 2 클라이언트 디바이스(30) 내의 데이터 획득 장치를 시작하여 데이터 입력을 실시간으로 획득하도록 추가로 구성될 수 있다.
이 구현의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 장치에서, 서버에 의해 푸시되는 데이터 획득 요청을 모니터링하는 것을 통해, 필요할 때 해당 데이터가 서버에 업로드될 수 있고, 제 5 구현의 교환 장치와 결합하여, 다른 클라이언트 디바이스들로 이 구현의 교환 장치 내의 데이터에 액세스하는 동작 프로세스가 더 간단하고, 이용 경험이 더 순조롭다.
또한, 본 출원의 구현은 컴퓨터 실행 가능 명령들을 저장하는 컴퓨터 판독 가능 저장 매체를 추가로 제공한다. 컴퓨터 판독 가능 저장 매체는 예를 들어, 광 디스크, 하드 디스크 또는 플래시 메모리와 같은 비휘발성 메모리이다.
컴퓨터 실행 가능 명령은 컴퓨터 또는 유사한 동작의 장치가 다음의 동작들을 수행할 수 있게 하는데 사용된다.
제 1 클라이언트 디바이스가 서버에 제 1 데이터 획득 요청을 전송한다.
서버가 제 1 데이터 획득 요청에 따라 제 2 데이터 획득 요청을 생성하고, 제 2 클라이언트 디바이스에 제 2 데이터 획득 요청을 푸시한다.
제 2 클라이언트 디바이스가 제 2 데이터 획득 요청에 따라 데이터를 획득하고, 획득된 데이터를 서버에 업로드한다.
서버가 제 2 클라이언트 디바이스에 의해 업로드된 데이터 또는 그 데이터의 메시지 다이제스트를 제 1 클라이언트 디바이스로 리턴한다.
더욱이, 제 1 클라이언트 디바이스가 제 2 클라이언트 디바이스에 의해 업로드된 데이터 또는 그 데이터의 메시지 다이제스트에 따라 결과를 디스플레이한다.
더욱이, 제 2 클라이언트 디바이스가 제 2 데이터 획득 요청에 따라 데이터를 획득하는 것은: 제 2 데이터 획득 요청에 따라, 선택될 데이터를 제시하고, 선택된 데이터를 획득하는 것을 포함한다.
더욱이, 제 2 클라이언트 디바이스가 제 2 데이터 획득 요청에 따라 데이터를 획득하는 것은: 제 2 데이터 획득 요청 내의 규격에 따라 해당 데이터를 직접 획득하는 것을 포함한다.
더욱이, 제 2 클라이언트 디바이스가 제 2 데이터 획득 요청에 따라 데이터를 획득하는 것은: 제 2 클라이언트 디바이스 내의 데이터 획득 장치를 시작하여 데이터 입력을 실시간으로 획득하는 것을 포함한다.
컴퓨터 실행 가능 명령은 추가로, 컴퓨터 또는 유사한 동작의 장치가 다음의 동작들을 수행할 수 있게 하는데 사용된다.
제 1 클라이언트 디바이스에 의해 전송된 제 1 데이터 획득 요청을 수신한다.
제 1 데이터 획득 요청에 따라 제 2 데이터 획득 요청을 생성하며, 여기서 제 2 클라이언트 디바이스가 해당 데이터를 획득하여 업로드할 수 있게 하는데 제 2 데이터 획득 요청이 사용된다.
제 2 클라이언트 디바이스에 제 2 데이터 획득 요청을 푸시한다.
제 2 클라이언트 디바이스에 의해 업로드된 데이터를 수신한다.
제 2 클라이언트 디바이스에 의해 업로드된 데이터 또는 그 데이터의 메시지 다이제스트를 제 1 클라이언트 디바이스에 리턴한다.
더욱이, 제 2 데이터 획득 요청은 제 2 클라이언트 디바이스 내의 데이터를 직접적으로 명시한다.
컴퓨터 실행 가능 명령은 추가로, 컴퓨터 또는 유사한 동작의 장치가 다음의 동작들을 수행할 수 있게 하는데 사용된다.
서버에 의해 푸시되는 데이터 획득 요청을 모니터링한다.
데이터 획득 요청이 모니터링된 후 해당 데이터를 얻는다.
획득된 데이터를 서버에 업로드한다.
더욱이, 데이터 획득 요청이 모니터링된 후 해당 데이터를 획득하는 것은: 데이터 획득 요청에 따라, 선택될 데이터를 제시하고, 선택된 데이터를 획득하는 것을 포함한다.
더욱이, 데이터 획득 요청이 모니터링된 후 해당 데이터를 획득하는 것은: 데이터 획득 요청 내의 규격에 따라 데이터를 직접 획득하는 것을 포함한다.
더욱이, 데이터 획득 요청이 모니터링된 후 해당 데이터를 획득하는 것은: 클라이언트 디바이스 내의 데이터 획득 장치를 시작하여 데이터 입력을 실시간으로 획득하는 것을 포함한다.
도 9는 일부 구현들에 따른 컴퓨터 시스템(900)을 나타내는 블록도이다 . 컴퓨터 시스템(900)은 클라이언트 디바이스(902-A), 통신 네트워크(904), 서버 시스템(906) 및 클라이언트 디바이스(902-B)를 포함한다.
클라이언트 디바이스(902-A)는 입력 디바이스(910), 탐색 요청 처리 모듈(912), 탐색 결과 처리 모듈(914), 선택적으로 탐색 모듈(924-A), 그리고 선택적으로 미디어 플레이어(916)를 포함한다. 도 12와 관련하여 아래 설명되는 바와 같이, 클라이언트 디바이스(902-A)가 서버 시스템(906) 내의 탐색 모듈(924)로부터 탐색 결과들을 수신한다면, 클라이언트 디바이스(902-A) 내의 탐색 모듈(924-A)은 선택적이다. 하나 또는 그보다 많은 사용자 입력 디바이스들(910)은 키보드, 마우스, 트랙패드 및 터치스크린을 포함한다. 탐색 요청 처리 모듈(912)은 사용자 입력(예를 들어, 사용자-선택된 탐색 파라미터, 예를 들어 탐색 파라미터 식별자(903) 또는 사용자 지정 디바이스 식별자, 예를 들어 디바이스 식별자(901))에 따라 데이터 획득 요청을 결정하여 서버(906)에 발행한다. 선택적인 탐색 모듈(924-A)은 서버(906)로부터 또는 클라이언트 디바이스(902-B)로부터 얻은 탐색 파라미터(예를 들어, 탐색 파라미터(905))에 따라 탐색 결과들을 생성한다. 탐색 결과 처리 모듈(914)은 클라이언트 디바이스(902-A)에 의해 생성된 탐색 결과들, 또는 서버(906)로부터 수신된 탐색 결과들을 선택적으로 얻어(예를 들어, 필터링하어) 제시한다(예를 들어, 디스플레이하고 포맷화한다). 일부 구현들에서, 선택적인 미디어 플레이어(916)는 탐색 결과에 포함된 미디어 콘텐츠(예를 들어, YOUTUBE 또는 YOUKU 비디오, 또는 MP3 곡들)를 디스플레이한다.
일부 구현들에서, 통신 네트워크(904)는 컴퓨팅 클라우드이다. 통신 네트워크(904)는 선택적으로 인터넷, 하나 또는 그보다 많은 근거리 네트워크(LAN: local area network)들, 하나 또는 그보다 많은 광역 네트워크(WAN: wide area network)들, 다른 타입들의 네트워크들, 또는 이러한 네트워크들의 결합을 포함한다.
일부 구현들에서, 서버 시스템(906)은 디바이스 식별 모듈(920), 디바이스 데이터베이스(922), 탐색 모듈(924) 및 탐색 데이터베이스(926)를 포함한다. 디바이스 식별 모듈(920)은 디바이스 식별자(901)에 따라, 한 세트의 디바이스들 중에서 디바이스(예를 들어, 클라이언트 디바이스(902-B))를 고유하게 식별한다. 디바이스 데이터베이스(922)는 한 세트의 디바이스들(예를 들어, 휴대 전화들, 태블릿들, 및 애플 아이패드들이나 아이폰들과 같은 스마트폰들)에 대응하는 정보(예를 들어, 휴대 전화 번호들, 이메일 어드레스들, SIM 카드 번호들, IMEI 번호들, MAC 어드레스 및 디바이스 일련번호들)를 저장한다. 탐색 모듈(924)은 클라이언트 디바이스(902-B)로부터 얻은 탐색 파라미터(예를 들어, 클라이언트 디바이스(902-B)의 위치)에 따라 탐색 결과들(예를 들어, 인근 호텔 또는 식당 정보)을 생성한다.
일부 구현들에서, 탐색 데이터베이스(926)는 탐색 가능 정보(예를 들어, 호텔 어드레스들, 비디오 또는 오디오 파일들, 식당 메뉴들 및 전화 번호들), 또는 그 인덱스들을 저장한다. 일부 구현들에서, 탐색 데이터베이스(926)는 인터넷 또는 그 일부(예를 들어, "Baidu.com," "SOHU.com" 또는 "Yahoo.com.cn"과 같은 특정 도메인 하의 콘텐츠)이다.
일부 구현들에서, 클라이언트 디바이스(902-B)는 프라이버시 제어 모듈(932), 탐색 파라미터 획득 모듈(934) 및 탐색 모듈(924-B)을 포함한다. 프라이버시 제어 모듈(932)은 하나 또는 그보다 많은 프라이버시 설정들에 따라, 클라이언트 디바이스(902-B) 상에 저장되거나, 클라이언트 디바이스(902-B)에 의해 생성되거나, 클라이언트 디바이스(902-B)에 의해 얻을 수 있는 하나 또는 그보다 많은 탐색 파라미터들(예를 들어, 클라이언트 디바이스(902-B)의 위치 또는 고도, 사용자 활동 이력, 클라이언트 디바이스(902-B) 사용자의 브라우징 이력)에 대한 액세스를 제어한다. 예를 들어, 클라이언트 디바이스(902-B)에 의해 생성된 특정 정보에 대한 요청에 응답하여, 프라이버시 제어 모듈(932)이 트리거되어 그 디스플레이 상에 요청 및 연관 정보(예를 들어, 이러한 정보로부터 클라이언트 디바이스 요청이 나옴)를 디스플레이한다. 클라이언트 디바이스(902-B)는 클라이언트 디바이스(902-B)의 사용자로부터 승인을 받고 나서야 요청된 정보를 전송한다.
간혹, 한 사용자가 다른 사용자에 관련된 정보에 액세스할 필요가 있다. 예를 들어, 집에서 데스크톱 앞에 앉아 있는 주부가, 스마트폰이 있고 현재 뉴욕시에서 샌프란시스코로 국토 횡단 도로 여행중인 그녀의 남편을 위해 호텔을 예약할 의향이 있을 수 있다. 이 경우, 그 주부는 남편을 방해하지 않고 그의 현재 위치를 알 필요가 있다. 탐색 파라미터 획득 모듈(934)는 탐색 파라미터 식별자에 따라 탐색 파라미터를 얻는다(예를 들어, 데이터 획득 요청에 포함된 위치 식별자에 따라 클라이언트 디바이스(902-B)의 위치를 얻는다). 일부 구현들에서, 탐색 모듈(924-B)은 탐색 파라미터 획득 모듈(934)로부터 얻은 탐색 파라미터에 따라 탐색 결과들(예를 들어, 클라이언트 디바이스(902-B)의 위치 근처의 인근 호텔 또는 식당 위치들)을 생성한다.
도 10은 일부 구현들에 따라 제 1 클라이언트 디바이스(예를 들어, 클라이언트 디바이스(902-A))를 나타내는 블록도이다. 클라이언트 디바이스(902-A)는 일부 구현들에서, (여기서는 프로세서들로도 또한 지칭되는) 하나 또는 그보다 많은 처리 유닛들(CPU(들))(1002), 하나 또는 그보다 많은 네트워크 인터페이스들(1004), 하나 또는 그보다 많은 입력 디바이스들(910), 메모리(1006), 디스플레이(1003), 그리고 이러한 컴포넌트들을 상호 접속하기 위한 하나 또는 그보다 많은 통신 버스들(1008)을 포함한다. 통신 버스들(1008)은 시스템 컴포넌트들 간의 통신들을 상호 접속 및 제어하는 (간혹 칩셋으로 불리는) 회로를 포함한다. 메모리(1006)는 일반적으로 DRAM, SRAM 또는 다른 랜덤 액세스 고체 상태 메모리 디바이스들과 같은 고속 랜덤 액세스 메모리를 포함하고, 선택적으로는 하나 또는 그보다 많은 자기 디스크 저장 디바이스들, 광 디스크 저장 디바이스들, 플래시 메모리 디바이스들 또는 다른 비휘발성 고체 상태 저장 디바이스들과 같은 비휘발성 메모리를 포함한다. 메모리(1006)는 선택적으로 CPU(들)(1002)로부터 원격 위치하는 하나 또는 그보다 많은 저장 디바이스들을 포함한다. 메모리(1006) 또는 대안으로 메모리(1006) 내의 비휘발성 메모리 디바이스(들)는 비-일시적 컴퓨터 판독 가능 저장 매체를 포함한다. 일부 구현들에서, 메모리(1006) 또는 대안으로 비-일시적 컴퓨터 판독 가능 저장 매체는 다음의 프로그램들, 모듈들 및 데이터 구조들, 또는 이들의 서브세트를 저장한다:
■ 다양한 기본 시스템 서비스들을 다루기 위한 그리고 하드웨어 의존 작업들을 수행하기 위한 프로시저들을 포함하는 운영 시스템(1010);
■ 하나 또는 그보다 많은 네트워크 인터페이스들(1004)(유선 또는 무선) 또는 통신 네트워크(904)(도 9)를 통해 클라이언트 디바이스(902-A)를 다른 디바이스들(예를 들어, 서버(906) 또는 클라이언트 디바이스(902-B))과 접속하기 위한 네트워크 통신 모듈(또는 명령들)(1012);
■ 서로 다른 사용자 인터페이스 제어부들(예를 들어, 탐색 파라미터 식별자들 및 디바이스 식별자들을 입력하기 위한 텍스트 박스들 또는 드롭다운 리스트들)뿐만 아니라 사용자 입력에 따른 사용자 데이터(예를 들어, 탐색 결과들)를 디스플레이하기 위한 사용자 인터페이스 모듈(1014);
■ 사용자 입력(예를 들어, 사용자 선택 탐색 파라미터 또는 디바이스 식별자)에 따라 하나 또는 그보다 많은 데이터 획득 요청들을 생성하여 서버(906)에 발행하기 위한 탐색 요청 처리 모듈(912);
■ 선택적으로, (예를 들어, 서버(906)로부터 또는 클라이언트 디바이스(902-B)로부터 수신된) 탐색 파라미터에 따라 탐색 결과들을 생성하기 위한 탐색 모듈(924);
■ 클라이언트 디바이스(902-A)에 의해 생성된 탐색 결과들 및 서버(906)로부터 수신된 탐색 결과들을 선택적으로 얻거나(예를 들어, 필터링하거나) 제시(예를 들어, 이들을 디스플레이하고 포맷화)하기 위한 탐색 결과 처리 모듈(914);
■ 선택적으로, 탐색 결과에 포함된 미디어 콘텐츠(예를 들어, YOUTUBE 또는 YOUKU 비디오, MP3 곡들)를 디스플레이하기 위한 미디어 플레이어(916); 및
■ 클라이언트 디바이스(902-A) 상에 저장된 데이터(1016), 이는 아래 데이터를 포함한다:
○ 여러 디바이스들로부터 디바이스를 고유하게 식별하기 위한 디바이스 식별자(901);
○ 여러 파라미터들로부터 탐색 파라미터를 고유하게 식별하기 위한 탐색 파라미터 식별자(903); 및
○ 사용자에 의해 발행된 데이터 획득 요청에 응답하여 얻은 하나 또는 그보다 많은 탐색 결과들(907).
일부 구현들에서, 하나 또는 그보다 많은 사용자 입력 디바이스들(910)은 키보드, 마우스, 트랙패드 및 터치스크린을 포함한다.
도 11은 일부 구현들에 따라 제 2 클라이언트 디바이스(예를 들어, 클라이언트 디바이스(902-B))를 나타내는 블록도이다. 클라이언트 디바이스(902-A)는 일부 구현들에서, (여기서는 프로세서들로도 또한 지칭되는) 하나 또는 그보다 많은 처리 유닛들(CPU(들))(1102), 하나 또는 그보다 많은 네트워크 인터페이스들(1104), 위치 식별 디바이스(1105)(예를 들어, GPS), 하나 또는 그보다 많은 입력 디바이스들(1107), 메모리(1106), 디스플레이(1103), 그리고 이러한 컴포넌트들을 상호 접속하기 위한 하나 또는 그보다 많은 통신 버스들(1108)을 포함한다. 통신 버스들(1108)은 시스템 컴포넌트들 간의 통신들을 상호 접속 및 제어하는 (간혹 칩셋으로 불리는) 회로를 포함한다. 메모리(1106)는 일반적으로 DRAM, SRAM 또는 다른 랜덤 액세스 고체 상태 메모리 디바이스들과 같은 고속 랜덤 액세스 메모리를 포함하고, 선택적으로는 하나 또는 그보다 많은 자기 디스크 저장 디바이스들, 광 디스크 저장 디바이스들, 플래시 메모리 디바이스들 또는 다른 비휘발성 고체 상태 저장 디바이스들과 같은 비휘발성 메모리를 포함한다. 메모리(1106)는 선택적으로 CPU(들)(1102)로부터 원격 위치하는 하나 또는 그보다 많은 저장 디바이스들을 포함한다. 메모리(1106) 또는 대안으로 메모리(1106) 내의 비휘발성 메모리 디바이스(들)는 비-일시적 컴퓨터 판독 가능 저장 매체를 포함한다. 일부 구현들에서, 메모리(1106) 또는 대안으로 비-일시적 컴퓨터 판독 가능 저장 매체는 다음의 프로그램들, 모듈들 및 데이터 구조들, 또는 이들의 서브세트를 저장한다:
■ 다양한 기본 시스템 서비스들을 다루기 위한 그리고 하드웨어 의존 작업들을 수행하기 위한 프로시저들을 포함하는 운영 시스템(1110);
■ 하나 또는 그보다 많은 네트워크 인터페이스들(1104)(유선 또는 무선) 또는 통신 네트워크(904)(도 9)를 통해 클라이언트 디바이스(902-B)를 다른 디바이스들(예를 들어, 서버(906) 또는 클라이언트 디바이스(902-A))과 접속하기 위한 네트워크 통신 모듈(또는 명령들)(1112);
■ 하나 또는 그보다 많은 프라이버시 설정들(프라이버시 설정들(1118-1 … 1118-n))에 따라, 클라이언트 디바이스(902-B) 상에 저장되거나, 클라이언트 디바이스(902-B)에 의해 생성되거나, 클라이언트 디바이스(902-B)로부터 얻을 수 있는 탐색 파라미터들(예를 들어, 클라이언트 디바이스(902-B)의 위치 또는 고도, 사용자 활동 이력, 클라이언트 디바이스(902-B) 사용자의 브라우징 이력)에 대한 액세스를 제어하기 위한 프라이버시 제어 모듈(932);
■ 탐색 파라미터 식별자에 따라 탐색 파라미터를 얻기 위한, 예를 들어 위치 식별자(예를 들어, 문자열 "LOCATION")에 따라 클라이언트 디바이스(902-B) 내의 데이터 획득 장치(935)(예를 들어, GPS 모듈)를 호출함으로써 클라이언트 디바이스(902-B)의 위치(예를 들어, CA, 샌프란시스코)를 얻기 위한 탐색 파라미터 획득 모듈(934);
■ 선택적으로, 탐색 파라미터(예를 들어, 클라이언트 디바이스(902-B)의 위치 근처의 호텔 또는 식당 어드레스들)에 따라 탐색 결과들을 생성하거나 아니면 얻기 위한 탐색 모듈(924-B); 및
■ 클라이언트 디바이스(902-B) 상에 저장된 데이터(1114), 이는 아래 데이터를 포함한다:
○ 여러 디바이스들로부터 디바이스를 고유하게 식별하기 위한 디바이스 식별자(901);
○ 여러 파라미터들로부터 탐색 파라미터(905)를 고유하게 식별하기 위한 탐색 파라미터 식별자(903);
○ 사용자에 의해 발행된 데이터 획득 요청에 응답하여 얻은 하나 또는 그보다 많은 탐색 결과들(907);
○ 902-B 상에 저장되거나, 902-B에 의해 생성되거나, 아니면 902-B로부터 얻을 수 있는 하나 또는 그보다 많은 탐색 파라미터들에 액세스할 때 다른 디바이스들(예를 들어, 클라이언트 디바이스(902-A) 또는 서버(906))에 할당된 (예를 들어, 기록 또는 판독 액세스를 제한하거나 가능하게 하는) 액세스 권한들, 또는 그 정도를 명시하기 위한 하나 또는 그보다 많은 프라이버시 설정들(1116)(1118-1 … 1118-n); 및
○ 다양한 레벨들의 정확도(예를 들어, 거리 규모 위치가 요구될 때는 CA 94306, 팔로알토 메인 스트리트 11, 또는 도시 규모 위치가 요구될 때는 CA, 팔로알토)로 클라이언트 디바이스(902-B)의 대략적 또는 정확한 위치를 식별하기 위한 위치 데이터(1120).
일부 구현들에서, 위치 식별 디바이스(1105)는 GPS, 고도 센서 및 높은 정확도의 컴퍼스를 포함한다. 일부 구현들에서, 하나 또는 그보다 많은 사용자 입력 디바이스들(1107)은 키보드, 마우스, 트랙패드 및 터치스크린을 포함한다.
도 12는 일부 구현들에 따라 서버 시스템(예를 들어, 서버(906))을 나타내는 블록도이다. 서버(906)는 일부 구현들에서, (여기서는 프로세서들로도 또한 지칭되는) 하나 또는 그보다 많은 처리 유닛들(CPU(들))(1202), 하나 또는 그보다 많은 네트워크 인터페이스들(1204), 메모리(1206), 그리고 이러한 컴포넌트들을 상호 접속하기 위한 하나 또는 그보다 많은 통신 버스들(1208)을 포함한다. 통신 버스들(1208)은 시스템 컴포넌트들 간의 통신들을 상호 접속 및 제어하는 (간혹 칩셋으로 불리는) 회로를 포함한다. 메모리(1206)는 일반적으로 DRAM, SRAM 또는 다른 랜덤 액세스 고체 상태 메모리 디바이스들과 같은 고속 랜덤 액세스 메모리를 포함하고, 선택적으로는 하나 또는 그보다 많은 자기 디스크 저장 디바이스들, 광 디스크 저장 디바이스들, 플래시 메모리 디바이스들 또는 다른 비휘발성 고체 상태 저장 디바이스들과 같은 비휘발성 메모리를 포함한다. 메모리(1206)는 선택적으로 CPU(들)(1202)로부터 원격 위치하는 하나 또는 그보다 많은 저장 디바이스들을 포함한다. 메모리(1206) 또는 대안으로 메모리(1206) 내의 비휘발성 메모리 디바이스(들)는 비-일시적 컴퓨터 판독 가능 저장 매체를 포함한다. 일부 구현들에서, 메모리(1206) 또는 대안으로 비-일시적 컴퓨터 판독 가능 저장 매체는 다음의 프로그램들, 모듈들 및 데이터 구조들, 또는 이들의 서브세트를 저장한다:
■ 다양한 기본 시스템 서비스들을 다루기 위한 그리고 하드웨어 의존 작업들을 수행하기 위한 프로시저들을 포함하는 운영 시스템(1210);
■ 하나 또는 그보다 많은 네트워크 인터페이스들(1204)(유선 또는 무선) 또는 통신 네트워크(904)(도 9)를 통해 서버(906)를 다른 디바이스들(예를 들어, 클라이언트 디바이스들(902-A, 902-B))과 접속하기 위한 네트워크 통신 모듈(또는 명령들)(1212);
■ 디바이스 식별자에 따라, 한 세트 또는 집합의 디바이스들(예를 들어, 상당수의 휴대 전화들) 중에서 디바이스(예를 들어, 휴대 전화인 클라이언트 디바이스(902-B))를 고유하게 식별하기 위한 디바이스 식별 모듈(920);
■ 한 세트의 디바이스들(예를 들어, 휴대 전화들, 태블릿들, 및 애플 아이패드들이나 아이폰들과 같은 스마트폰들)에 대응하는 정보(예를 들어, 휴대 전화 번호들, 이메일 어드레스들, SIM 카드 번호들, IMEI 번호들, MAC 어드레스 및 디바이스 일련번호들) 또는 그 인덱스들을 저장하기 위한 디바이스 데이터베이스(922);
■ (예를 들어, 클라이언트 디바이스(902-B)가 현재 위치하고 있는 CA, 팔로알토 도시에서) 탐색 파라미터에 따라 탐색 결과들(예를 들어, 인근 COSTCO 창고 위치들 및 시간들)을 생성하거나 얻기 위한 탐색 모듈(924);
■ 탐색 가능 정보(예를 들어, 호텔 어드레스들, 비디오 또는 오디오 파일들, 식당 메뉴들, 전화 번호들 및 변호사 디렉터리들) 또는 그 인덱스들을 포함하기 위한 탐색 데이터베이스(926); 일부 구현들에서, 탐색 데이터베이스(926)는 인터넷 또는 그 일부(예를 들어, "Baidu.com," "SOHU.com" 또는 "Yahoo.com.cn"과 같은 특정 도메인 하의 콘텐츠)임; 및
■ 클라이언트 디바이스(902-B) 상에 저장된 데이터(1214), 이는 아래 데이터를 포함한다:
○ 여러 디바이스들 중에서 특정 클라이언트 디바이스를 고유하게 식별하기 위한 디바이스 식별자(901)(예를 들어, SIM 카드 번호, IMEI 번호, 휴대 전화 번호, 디바이스명, 사용자명, 제조사의 디바이스 일련번호);
○ 여러 파라미터들(예를 들어, 여러 호텔들의 위치, 시간, 가격 및 이용 가능성 정보)로부터 탐색 파라미터(예를 들어, 위치)를 고유하게 식별하기 위한 탐색 파라미터 식별자(903);
○ 어떤 탐색 결과들이 사용자와 가장 관련이 있는지 또는 사용자에 의해 요구되는지를 명시하기 위한 탐색 파라미터(905); 및
○ 탐색 파라미터(905)에 따라 (예를 들어, 탐색 데이터베이스(926)로부터, 인터넷 또는 그 일부로부터, 또는 내부 또는 외부의 사용자 지정 네트워크 위치로부터) 검색된 하나 또는 그보다 많은 탐색 결과들(907).
일부 구현들에서, 상기 식별된 엘리먼트들 중 하나 또는 그보다 많은 엘리먼트는 이전에 언급된 메모리 디바이스들 중 하나 또는 그보다 많은 메모리 디바이스에 저장되고, 위에서 설명한 기능을 수행하기 위한 한 세트의 명령들에 대응한다. 상기 식별된 모듈들 또는 프로그램들(예를 들어, 명령들의 세트들)은 개별 소프트웨어 프로그램들, 프로시저들 또는 모듈들로서 구현될 필요는 없으며, 따라서 이러한 모듈들의 다양한 서브세트들이 결합되거나 아니면 다양한 구현들로 재배치될 수도 있다. 일부 구현들에서, 메모리(1006, 1106 또는 1206)는 선택적으로 위에서 식별된 모듈들 및 데이터 구조들의 서브세트를 저장한다. 더욱이, 메모리(1006, 1106 또는 1206)는 위에서 설명하지 않은 추가 모듈들 및 데이터 구조들을 저장할 수도 있다.
도 12는 서버로도 또한 지칭되는 "서버 시스템(906)"을 보여주지만, 도 12는 본 명세서에서 설명된 구현들의 구조적 개략도보다는, 서버 시스템에 존재할 수 있는 다양한 특징들의 기능적 설명으로서 보다 더 의도된다. 실제로, 그리고 해당 기술분야에서 통상의 지식을 가진 자들에 의해 인식되는 바와 같이, 개별적으로 도시된 아이템들이 결합될 수 있고 일부 아이템들은 분리될 수 있다.
도 13은 일부 구현들에 따라 컴퓨터 시스템에서 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법을 나타내는 흐름도이다.
일부 구현들에서, 제 1 클라이언트 디바이스가 서버(106)(예를 들어, 클라우드)에 제 1 데이터 획득 요청을 전송한다(1302). 일부 구현들에서, 제 1 데이터 획득 요청을 얻은 후(1304), 서버(106)(예를 들어, 클라우드)가 복수의 클라이언트 디바이스들(예를 들어, 모든 ATT 스마트폰들) 중에서, 탐색(예를 들어, 4마일의 위치 내 호텔들의 탐색)을 실행하는데 필요한 또는 이를 위해 요구되는 탐색 파라미터(예를 들어, 위치)가 검색될 제 2 클라이언트 디바이스(예를 들어, 스마트폰)를 식별한다(1306). 일부 구현들에서, 탐색 파라미터를 얻기 위해, 서버(106)(예를 들어, 클라우드)가 제 2 클라이언트 디바이스에 제 2 데이터 획득 요청을 발행한다(1308).
일부 구현들에서, 제 2 클라이언트 디바이스가 서버(106)(예를 들어, 클라우드)로부터 제 2 데이터 획득 요청을 얻고(1310), (예를 들어, 서버(906)도 제 1 클라이언트 디바이스(902-A)도 클라이언트 디바이스(902-B)의 새로운 위치를 알지 못했기 때문에) 이용 가능하지 않았지만 이후에 서버(106)가 찾은 탐색 파라미터(예를 들어, 위치)를 리턴한다(1312).
일부 구현들에서, 다음에 서버(106)가 탐색 파라미터(예를 들어, 클라이언트 디바이스(902-B)의 위치)를 얻고(1314), 그에 따라 탐색 결과들을 얻는다(1318). 다른 구현들에서, 서버(106)가 제 1 클라이언트 디바이스(902-A)에 탐색 파라미터를 전송하고(1314), 제 1 클라이언트 디바이스(902-A)는 탐색 결과들을 얻는다(1316). 일부 구현들에서, 예를 들어 로드 밸런싱을 달성하도록, 일부는 서버(106)에 의해 그리고 일부는 제 1 클라이언트 디바이스에 의해 탐색 결과들이 생성된다.
일부 구현들에서, 서버(106)는 하나 또는 그보다 많은 탐색 결과들 중 적어도 하나의 탐색 결과를 제 1 클라이언트 디바이스에 디스플레이하기 위해 포맷화한다(1320). 다음에 일부 구현들에서는, 사용자가 검토하도록 적어도 하나의 탐색 결과가 제 1 클라이언트 디바이스에 디스플레이된다(1332).
도 14a - 도 14b는 일부 구현들에 따라 컴퓨터 시스템에서(예를 들어, 서버 또는 클라우드(906)에서) 구현되는, 클라이언트 디바이스들 또는 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법(1400)을 나타내는 흐름도들이다.
일부 구현들에서, 컴퓨터 시스템은 우선, 제 1 클라이언트 디바이스(예를 들어, 데스크톱 컴퓨터와 같은 클라이언트 디바이스(902-A))로부터 호텔 어드레스들에 대한 사용자 요청과 같은 제 1 데이터 획득 요청을 얻는다(1402). 일부 구현들에서, 데이터 획득 요청은 브라우저 내의 웹 애플리케이션과 같은 그래픽 사용자 인터페이스, 또는 서버 또는 클라우드(906)와의 접속을 갖는 소프트웨어 애플리케이션에 대한 인터페이스를 통해 입력된 탐색 요청이다.
제 1 데이터 획득 요청(예를 들어, 탐색 요청)은 (ⅰ) 제 1 클라이언트 디바이스와는 다른 제 2 클라이언트 디바이스를 식별하는 디바이스 식별자, 및 (ⅱ) 탐색 파라미터를 식별하는 탐색 파라미터 식별자를 포함한다(1404). 예를 들어, 근처의 호텔 어드레스들에 대한 탐색 요청은 (ⅰ) 전화 번호(예를 들어, "650-785-5985") 및 (ⅱ) 특정 휴대 전화(650-785-5982 번호를 갖는 휴대 전화)의 위치가 근처의 호텔 어드레스들을 탐색하기 위한 탐색 파라미터로서 사용되어야 함을 명시하는 문자열 ("LOCATION")을 포함한다. 일부 구현들에서, 컴퓨터 시스템은 컴퓨팅 클라우드 또는 그 일부(예를 들어, 클라우드 내의 서버 또는 클라우드에 의해 제공되는 특정 타입의 서비스)이다. 예를 들어, 컴퓨터 시스템은 IaaS, PaaS, SaaS, NaaS, DaaS 또는 DBaaS, 또는 그 일부(예를 들어, 클라우드 내의 서버)와 같은 공공 또는 개인 컴퓨팅 클라우드이다. 일부 구현들에서, 컴퓨팅 클라우드에 대한 액세스는 가입 기반(예를 들어, 요금 기반)이거나 무료이다. 일부 구현들에서, 클라우드는 IBM 클라우드, DELL 클라우드, Amazon 클라우드, ORACLE 클라우드, 또는 Google 클라우드이다.
제 1 데이터 획득 요청을 얻은 후, 컴퓨터 시스템은 우선, 디바이스 식별자에 따라 복수의 클라이언트 디바이스들로부터 제 2 클라이언트 디바이스를 식별한다(1408). 예를 들어, 데스크톱 컴퓨터의 사용자로부터의 탐색 요청을 수신한 후, 클라우드는 탐색 요청을 분해(예를 들어, 분석 또는 파싱)하고, 탐색 요청에 포함된 디바이스 식별자(예를 들어, 전화 번호)를 사용하여 여러 휴대 전화들 또는 그와 연관된 사용자 중에서 특정 휴대 전화를 식별한다. 간혹, 사용자가 특정 디바이스 또는 그 사용자에 관련된 탐색 결과들에 더 관심이 있기 때문에, 여러 디바이스들 중에서 특정 디바이스를 식별하는 것이 중요하다. 예를 들어, 지방 순회중인 남편을 위한 호텔을 찾고 있는 주부는 그녀의 아이들의 휴대 전화들의 위치들을 아는 것보다는 (남편이 휴대 전화가 있다고 가정하여) 그녀의 남편의 휴대 전화의 위치를 아는데 더 관심이 있다.
일부 구현들에서, 제 2 클라이언트 디바이스는 태블릿, 랩톱 컴퓨터, 스마트폰, 자동차용 라디오 및 GPS 디바이스, 예컨대 애플 아이패드나 아이폰, 구글 태블릿 또는 삼성 휴대 전화로 구성된 그룹으로부터 선택된 디바이스이다(1410). 일부 구현들에서, 제 2 클라이언트 디바이스는 모바일 또는 휴대용 디바이스(예를 들어, 휴대 전화 또는 핸드헬드 워키토키)인 반면; 예를 들어, (제 1 클라이언트 디바이스를 휴대하기 어렵게 하거나 아니면 불면하게 하는) 그 크기로 인해, 또는 휴대 전화 또는 WIFI 네트워크와 같은 무선 접속을 통하기보다는 케이블 또는 다른 유선 접속을 통하는 것과 같은 제 1 클라이언트 디바이스가 클라우드와 접속되는 방식으로 인해, 제 1 클라이언트 디바이스는 이동성이나 휴대성이 적다(또는 전혀 없다). 일부 구현들에서, 제 1 클라이언트 디바이스는 데스크톱 컴퓨터, 클라우드 인에이블 산업용 프린터, 지능형 가전제품(예를 들어, 요리용 스토브, 에어컨디셔너, 냉장고 또는 가정용 보안 시스템)이다.
제 2 클라이언트 디바이스를 식별한 후, 컴퓨터 시스템은 탐색 파라미터 식별자를 포함하는 제 2 데이터 획득 요청을 제 2 디바이스에 발행한다(1412). 예를 들어, 휴대 전화의 위치 근처의 호텔들에 대한 요청을 수신한 후, 클라우드는 휴대 전화에 요청을 전송하여 그 위치를 얻는다.
일부 구현들에서, 제 1 클라이언트 디바이스와 제 2 클라이언트 디바이스는 집적 접속되지 않는다. 예를 들어, 클라이언트 디바이스(902-A)는 케이블 라인, ADSL 라인, 또는 전화선을 통해 통신 네트워크(904)(예를 들어, 클라우드)에 접속되지만 클라이언트 디바이스(902-A)로부터 원격 위치하는 휴대 전화인 클라이언트 디바이스(902-B)와는 직접 접속되지 않는 데스크톱 컴퓨터이다. 일부 구현들에서, 제 1 클라이언트 디바이스와 제 2 클라이언트 디바이스는 컴퓨터 시스템(예를 들어, 클라우드)을 통해서만 접속된다. 일부 구현들에서, 예를 들어 클라이언트 디바이스들(902-A, 902-B)은 공동으로 어떠한 접속 용량도 공유하지 않기 때문에, 클라이언트 디바이스(902-A)와 클라이언트 디바이스(902-B) 사이에는 직접적인 접속이 존재하지 않는다. 예를 들어, 클라이언트 디바이스(902-A)는 블루투스 어댑터가 없는 데스크톱 컴퓨터이지만; 클라이언트 디바이스(902-B)는 블루투스 인에이블 태블릿이다.
다른 구현들에서, 클라이언트 디바이스(902-A)와 클라이언트 디바이스(902-B)는 하나 또는 그보다 많은 접속들을 통해(예를 들어, 클라우드를 통해서뿐만 아니라, 데이터 케이블, WIFI, 블루투스 및 적외선 접속을 통해서도) 접속되지만, 예를 들어, (예를 들어, 클라우드가 자동으로 착신 및 발신 데이터에 대한 백업을 생성할 때) 강화된 보안을 제공하거나 (예를 들어, 클라우드가 고급 암호화/복호화 알고리즘들을 구비하여 착신 및 발신 데이터에 적용할 때) 기밀성을 보호하기 위해, 클라이언트 디바이스(902-A)와 클라이언트 디바이스(902-B) 간의 임계량(예를 들어, 90%) 또는 미리 정해진 타입(예를 들어, 기밀 정보)의 데이터 송신은 서버(106)(또는 클라우드)를 통해 일어난다.
일부 구현들에서, 제 1 클라이언트 디바이스와 제 2 클라이언트 디바이스는 서로 다른 지리적 영역들에 위치한다(1418). 예를 들어, 클라이언트 디바이스(902-A)는 캘리포니아 팔로알토에 위치하는 데스크톱 컴퓨터인 반면, 클라이언트 디바이스(902-B)는 NY, 뉴욕에 위치하는 다른 데스크톱 컴퓨터이다. 예를 들어, 클라이언트 디바이스(902-A)는 1위 법률 회사의 TX 휴스턴 사무소에 위치하는 프린터인 반면, 클라이언트 디바이스(902-B)는 동일한 법률 회사의 CA 로스앤젤레스 사무소에 위치하는 웹 카메라이다. 일부 구현들에서, 서버(906) 또는 클라우드는 한 세트의 미리 정해진 사용자 요건들(예를 들어, 접속 속도, 가격, 안정성, 성능 및 보안)을 충족하는 클라이언트 디바이스(902-A)와 클라이언트 디바이스(902-B) 간 접속을 제공한다.
제 2 클라이언트 디바이스에 제 2 데이터 획득 요청을 발행한 후, 컴퓨터 시스템(예를 들어 서버(106) 또는 클라우드)은 탐색 파라미터 식별자에 따라 제 2 클라이언트 디바이스로부터 탐색 파라미터를 얻는다(1420). 일부 구현들에서, 제 2 클라이언트 디바이스는 제 2 데이터 획득 요청 내의 규격에 따라 탐색 파라미터를 획득한다(1417). 예를 들어, 제 2 클라이언트 디바이스의 위치를 얻기 위한 사용자 요청에 응답하여, 클라우드는 제 2 클라이언트 디바이스로부터 위치(예를 들어, 타운, 도시, 카운티 또는 주의 명칭)를 얻는다. 제 2 데이터 획득 요청에 응답하여, 제 2 클라이언트 디바이스는 제 2 클라이언트 디바이스 내의 데이터 획득 장치를 호출하여 탐색 파라미터를 실시간으로 획득한다(1419). 예를 들어, 제 2 클라이언트 디바이스(예를 들어, 스마트폰)는 제 2 클라이언트 디바이스의 현재 위치를 결정하기 위한 GPS 모듈을 포함할 수 있다. 다른 예를 들면, 제 2 클라이언트 디바이스(예를 들어, 인터넷 인에이블 DVD 플레이어)로부터 비디오의 중단점(예를 들어, 사용자가 비디오의 어느 부분을 보지 않았는지에 관한, 사용자에 의한 표시자)을 얻기 위한 사용자 요청에 응답하여, 클라우드는 제 2 클라이언트 디바이스로부터 중단점(예를 들어, 사용자가 가장 최근에 시청을 중단한 DVD 비디오의 분초)을 얻는다. 또 다른 예에서, 집에 가능 길에 자신의 스마트폰으로부터 온라인 비디오를 시청하는 사람은, 예를 들어 집에 있는 디바이스가 더 양호한 해상도와 오디오 품질로 비디오를 플레이할 수 있기 때문에, 집에 있는 다른 디바이스(예를 들어, 인터넷에 대한 유선 액세스를 갖는 데스크톱)로 비디오의 플레이는 전환하고자 할 것이다. 이 경우, 집에 있는 디바이스는 비디오의 중단점에 대한 요청을 원격 서버에 전송한다. 다음에, 원격 서버는 스마트폰에서 플레이되고 있는 비디오와 연관된 정보(예를 들어, 그 사람이 비디오 플레이를 중단한 중단점)에 대한 요청을 스마트폰으로 전송한다. 스마트폰에 의해 리턴된 정보를 기초로, 원격 서버는 비디오를 플레이할 시작점을 결정하고 그 시작점을 집에 있는 디바이스로 리턴한다. 시작점을 사용하여, 집에 있는 디바이스는 비디오의 플레이를 재시작할 수 있다. 일부 구현들에서, 원격 서버 또는 집에 있는 디바이스는 중단점에서부터 미리 정해진 양의 시간(예를 들어, 10초)만큼 시작점을 자동으로 롤백하여 그 사람의 비디오 시청 경험에 대한 연속성을 향상시킬 수 있다.
일부 구현들에서, 탐색 파라미터는 지리적 위치, 비디오 중단점, 오디오 중단점, 사진, 이메일, 바코드, 또는 미디어 콘텐츠 아이템의 일부 중 하나를 명시한다(1422). 예를 들어, 탐색 파라미터(예를 들어, 중단점)는 사용자가 어디서 비디오 시청, 오디오 청취, 전자 사진 앨범(예를 들어, 야후 FLICKR 앨범) 보기를 멈추었는지를 명시한다. 다른 예에서, 탐색 파라미터(예를 들어, "읽지 않은" 메시지 플래그)는 이메일 스트림 또는 이메일 박스에서 사용자가 어느 이메일들을 검토하지 않았는지를 표시한다. 이러한 접근들은 유리한데: 이들은 사용자가 동일한 또는 다른 사용자가 가장 최근에 중단한 곳에서 재개할 수 있게 함으로써, 효율을 향상시키고 (예를 들어, 비디오 시청시) 시청 경험을 강화한다.
앞서 언급한 바와 같이, 제 2 클라이언트 디바이스의 사용자의 프라이버시를 보호하기 위해, 제 2 클라이언트 디바이스는 예를 들어, 제 2 클라이언트 디바이스의 현재 위치 또는 제 2 클라이언트 디바이스 상에서 현재 실행중인 애플리케이션을 포함하는 임의의 민감한 정보를 배포하기 전에 사용자의 승인을 구하는 메커니즘을 포함할 수 있다. 제 2 데이터 획득 요청에 응답하여, 제 2 클라이언트 디바이스는 탐색 파라미터 및 제 1 클라이언트 디바이스와 연관된 식별자(예를 들어, 사용자에 의해 시작된 제 1 데이터 획득 요청에 포함된 제 1 클라이언트 디바이스의 사용자명)를 제 2 클라이언트 디바이스에서 디스플레이하고, 제 2 클라이언트 디바이스의 사용자로부터의 승인 후 탐색 파라미터를 컴퓨터 시스템에 리턴한다(1421).
다음에 일부 구현들에서, 컴퓨터 시스템(예를 들어, 서버(106) 또는 클라우드)은 탐색 파라미터에 따라 하나 또는 그보다 많은 탐색 결과들을 얻는다(1424). 일부 구현들에서, 컴퓨터 시스템(예를 들어, 클라우드)은 탐색 데이터베이스(922)에 대해 탐색 파라미터(905)를 사용하여 탐색 질의를 실행함으로써 하나 또는 그보다 많은 탐색 결과들을 생성한다. 다른 구현들에서, 클라이언트 디바이스(902-B)는 적절한 처리 전력이 구비된 경우에 (예를 들어, 도 9에 도시된 탐색 데이터베이스(922) 또는 클라이언트 디바이스(902-B)에 상주하거나 이와 접속된 다른 데이터베이스에 대해 탐색 파라미터(905)를 사용하여 탐색 질의를 실행함으로써) 하나 또는 그보다 많은 탐색 결과들을 생성한다.
일부 구현들에서, 하나 또는 그보다 많은 탐색 결과들을 얻은 후, 컴퓨터 시스템(예를 들어 서버(106) 또는 클라우드)은 하나 또는 그보다 많은 탐색 결과들 중 적어도 하나의 탐색 결과를 제 1 클라이언트 디바이스에서의 디스플레이를 위해 포맷화한다(1428). 일부 구현들에서, 컴퓨터 시스템(예를 들어 클라우드)은 예를 들어, (예를 들어, 제 1 클라이언트와 클라우드 간의 접속이 ADSL 접속인 경우에) 대역폭을 보존하거나; 제 1 클라이언트 디바이스(예를 들어, INTEL 486 프로세서를 가진 10년 된 데스크톱)이 미리 정해진 수(예를 들어, 20, 50, 100 또는 200개)보다 많은 탐색 결과들을 처리하기에 한정된 처리 전력을 갖는 경우에 제 1 클라이언트 디바이스의 오버로딩을 피하기 위해, 하나 또는 그보다 많은 탐색 결과들에 하나 또는 그보다 많은 필터링 기준들을 적용하고, 필터링된 탐색 결과들을 제 1 클라이언트 디바이스에 선택적으로 전송한다. 일부 구현들에서, 하나 또는 그보다 많은 필터링 기준들은 가격 정보(예를 들어, 하룻밤 호텔 숙박에 대해 1박당 50달러 초과), 이용 가능성(예를 들어, 지정된 일자 또는 시간에 대한 호텔방들), 사용자 선호(예를 들어, 4성 호텔, 모텔 또는 B&B 숙박의 예약), 위치 제한(예를 들어, 미리 정해진 거리 이내), 시간 제한(예를 들어, 체크인 시간 요건) 및 시설 제한(예를 들어, 수영장 유무)을 포함한다. 일부 구현들에서, 제 2 클라이언트 디바이스와 연관된 탐색 파라미터(예를 들어, 그 위치 정보)가 제 1 클라이언트 디바이스에 적어도 하나의 탐색 결과와 함께 디스플레이된다(1430).
일부 구현들에서, 컴퓨터 시스템은 예를 들어, (제 1 데이터 획득 요청에 추가적인) 사용자 수고를 필요로 하지 않도록, 탐색 결과를 사용자 개입 없이 자동으로 제 1 클라이언트 디바이스에 전송한다. 이러한 접근들은 유리한데, 이들이 정신적으로도 물리적으로도 사용자에 대한 부담을 줄이기 때문이다. 제 1 클라이언트 디바이스의 사용자는 단지 어떤 디바이스로부터 어떤 탐색 파라미터가 선택될지를 명시할 필요만 있으며, 그에 따른 탐색 결과들이 다음에 자동으로 사용자에게 제공됨으로써 탐색 효율 및 사용자 친화성을 개선한다.
일부 구현들에서, 제 2 클라이언트 디바이스와 연관된 탐색 파라미터(예를 들어, 그 위치 정보)가 제 1 클라이언트 디바이스에서 적어도 하나의 탐색 결과와 함께 디스플레이된다(1430). 일부 구현들에서는, 제 2 클라이언트 디바이스와 제 1 클라이언트 디바이스의 사용자가 동일한 사람이다. 제 2 클라이언트 디바이스 상에서 컴퓨터 시스템으로부터 데이터를 수신하는 동안, 사용자는 제 1 클라이언트 디바이스 상에서 컴퓨터 시스템으로부터 데이터를 계속해서 수신하기 위해 제 1 클라이언트 디바이스로부터의 제 1 데이터 획득 요청을 시작한다. 예를 들어, 사용자가 집에 가는 길에 자신의 스마트폰을 사용하여 비디오를 보고 있는 동안, 사용자는 계속해서 동일한 비디오를 보고 싶지만, 작은 스크린과 느린 데이터 다운로드 속도를 가진 스마트폰에서 집에서 한번 큰 스크린과 높은 데이터 다운로드 속도를 가진 데스크톱 컴퓨터로 옮기고 싶다. 이 경우, 사용자는 비디오의 플레이를 스마트폰에서 데스크톱으로 옮기기 위한 요청을 전송할 수 있다. 그러나 비디오를 시작부터 다시 플레이하는 대신, 데스크톱이 스마트폰에 의해 제공된 중단점 정보를 기초로 비디오의 플레이를 계속한다. 간혹, 데스크톱은 중단점에서부터 몇 초 자동으로 롤백하여 비디오 스트림의 플레이의 연속성을 향상시킬 수 있다.
상기 설명들은 본 출원을 어떤 형태로 한정하기보다는, 단지 본 출원의 예시적인 구현들일 뿐이다. 본 출원은 예시적인 구현들을 참조로 위에 상세히 개시되었지만, 본 출원은 그에 한정되는 것은 아니다. 해당 기술분야에서 통상의 지식을 가진 임의의 자가 본 출원의 기술적 해법들의 범위를 벗어나지 않으면서, 상기에 개시된 기술적 내용들에 어떤 변경들이나 수정들을 수행하여 동일한 변경들을 가진 동등한 구현들을 형성할 수 있다. 본 출원의 기술적 해법들의 내용을 벗어나지 않으면서 본 출원의 기술적 본질에 따라 상기 구현들에 대해 이루어진 임의의 프로파일 변형, 동일한 변경 또는 변형은 모두 본 출원의 기술적 해법들의 범위에 속할 것이다.
위에서는 특정 구현들이 설명되었지만, 본 발명을 이러한 특정 구현들로 한정하는 것으로 의도되지는 않는다고 이해될 것이다. 반면, 본 발명은 첨부된 청구항들의 사상 및 범위 내에 있는 대안들, 변형들 및 등가물들을 포함한다. 본 명세서에 제시된 대상의 완전한 이해를 제공하기 위해 다수의 특정 세부사항들이 제시된다. 그러나 대상이 이러한 특정 세부사항들 없이 실시될 수 있다는 점이 해당 기술분야에서 통상의 지식을 가진 자에게 명백할 것이다. 다른 경우들에, 구현들의 양상들을 쓸데없이 모호하게 하지 않도록, 잘 알려진 방법들, 프로시저들, 컴포넌트들 및 회로들은 상세히 설명되지 않았다.
다양한 엘리먼트들을 설명하기 위해 본 명세서에서 제 1, 제 2 등의 용어들이 사용될 수 있지만, 이러한 엘리먼트들은 이러한 용어들로 한정되지 않아야 한다. 이러한 용어들은 단지 엘리먼트를 서로 구별하는데 사용될 뿐이다. 예를 들어, 본 출원의 범위를 벗어나지 않으면서, 제 1 클라이언트 디바이스는 제 2 클라이언트 디바이스로 지칭될 수 있고, 마찬가지로 제 2 클라이언트 디바이스는 제 1 클라이언트 디바이스로 지칭될 수 있다. 제 1 클라이언트 디바이스와 제 2 클라이언트 디바이스는 둘 다 클라이언트 디바이스들이지만, 이들은 동일한 클라이언트 디바이스는 아니다.
본 명세서에서 본 발명의 설명에 사용된 용어는 단지 특정 구현들을 설명하기 위한 것이며, 본 발명의 한정인 것으로 의도되지는 않는다. 본 발명의 설명 및 첨부된 청구항들에서 사용되는 바와 같이, 맥락상 그렇지 않은 것으로 명확히 표시하지 않는 한, 단수 형태들("a," "an" 및 "the")은 복수 형태들도 포함하는 것으로 의도된다. 본 명세서에서 사용된 "및/또는"이라는 용어는 연관된 기재된 아이템들 중 하나 또는 그보다 많은 아이템의 모든 가능한 결합들 및 임의의 아이템을 의미하고 이들을 포괄한다고 또한 이해될 것이다. "포함한다(includes)," "포함하는(including)," "포함한다(comprises)" 그리고/또는 "포함하는(comprising)"이라는 용어들은 본 명세서에서 사용될 때, 언급된 특징들, 동작들, 엘리먼트들 및/또는 컴포넌트들의 존재를 명시하지만, 하나 또는 그보다 많은 다른 특징들, 동작들, 엘리먼트들, 컴포넌트들, 및/또는 이들의 그룹들의 존재 또는 추가를 배제하는 것은 아니라고 추가로 이해될 것이다.
본 명세서에서 사용된 바와 같이, "~ 라면"이라는 용어는 그 맥락에 따라, 언급된 선행 조건이 사실인 "경우에" 또는 "때" 또는 "결정에 응답하여" 또는 "결정에 따라" 또는 "검출에 응답하여"를 의미하는 것으로 해석될 수 있다. 마찬가지로, "[언급된 선행 조건이 사실이다]라고 결정된다면" 또는 "[언급된 선행 조건이 사실이라면]" 또는 "[언급된 선행 조건이 사실인] 경우"라는 문구는 그 맥락에 따라, 언급된 선행 조건이 사실이라는 "결정시" 또는 "결정에 응답하여" 또는 "결정에 따라" 또는 "검출시" 또는 "검출에 응답하여"를 의미하는 것으로 해석될 수 있다.
다양한 도면들 중 일부는 다수의 로직 스테이지들을 특정 순서로 예시하지만, 순서에 의존하지 않는 스테이지들은 재정렬될 수도 있고 다른 스테이지들은 결합되거나 분해될 수도 있다. 어떤 재정렬이나 다른 그룹화가 구체적으로 언급되지만, 다른 것들이 해당 기술분야에서 통상의 지식을 가진 자들에게 명백할 것이며 대안들의 완전한 리스트를 제시하는 것은 아니다. 더욱이, 스테이지들은 하드웨어, 펌웨어, 소프트웨어 또는 이들의 임의의 결합으로 구현될 수 있다고 인식되어야 한다.
설명을 목적으로, 상기의 설명은 특정 구현들과 관련하여 설명되었다. 그러나 상기의 예시적인 논의들은 본 발명을 개시된 바로 그 형태들로 한정하거나 그에 전적인 것으로 의도되는 것은 아니다. 상기 교시들의 관점에서 많은 변형들 및 수정들이 가능하다. 본 발명의 원리들 및 그 실제 응용들을 가장 잘 설명함으로써, 해당 기술분야에서 통상의 지식을 가진 자들이 본 발명 및 고려되는 특정 용도에 맞는 다양한 변형들에 의한 다양한 구현들을 가장 잘 이용할 수 있게 하기 위해 구현들이 선택되어 설명되었다. 구현들은 첨부된 청구항들의 사상 및 범위 내의 대안들, 변형들 및 등가물들을 포함한다. 본 명세서에 제시된 대상의 완전한 이해를 제공하기 위해 수많은 특정 세부사항들이 제시된다. 그러나 대상이 이러한 특정 세부사항들 없이 실시될 수 있다는 점이 해당 기술분야에서 통상의 지식을 가진 자에게 명백할 것이다. 다른 경우들에는, 구현들의 양상들을 쓸데없이 모호하게 하지 않도록, 잘 알려진 방법들, 프로시저들, 컴포넌트들 및 회로들은 상세히 설명되지 않았다.

Claims (30)

  1. 2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법으로서,
    프로세서 및 상기 프로세서에 의해 실행될 하나 또는 그보다 많은 프로그램들을 저장하기 위한 메모리를 갖는 컴퓨터 시스템에서,
    제 1 클라이언트 디바이스로부터 제 1 데이터 획득 요청을 얻는 단계 ― 상기 제 1 데이터 획득 요청은 (ⅰ) 상기 제 1 클라이언트 디바이스와는 다른 제 2 클라이언트 디바이스를 식별하는 디바이스 식별자, 및 (ⅱ) 탐색 파라미터를 식별하는 탐색 파라미터 식별자를 포함함 ―;
    상기 디바이스 식별자에 따라 복수의 클라이언트 디바이스들로부터 상기 제 2 클라이언트 디바이스를 식별하는 단계;
    상기 탐색 파라미터 식별자를 포함하는 제 2 데이터 획득 요청을 상기 제 2 디바이스에 발행하는 단계;
    상기 탐색 파라미터 식별자에 따라 상기 제 2 클라이언트 디바이스로부터 상기 탐색 파라미터를 얻는 단계;
    상기 탐색 파라미터에 따라 하나 또는 그보다 많은 탐색 결과들을 얻는 단계; 및
    상기 제 1 클라이언트 디바이스의 사용자에게 디스플레이하기 위해 상기 하나 또는 그보다 많은 탐색 결과 중 적어도 하나의 탐색 결과를 상기 제 1 클라이언트 디바이스에 제공하는 단계를 포함하는,
    2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법.
  2. 제 1 항에 있어서,
    상기 탐색 파라미터는 상기 제 2 클라이언트 디바이스와 연관되고 상기 제 1 클라이언트 디바이스에서 상기 적어도 하나의 탐색 결과와 함께 디스플레이되는,
    2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법.
  3. 제 1 항에 있어서,
    상기 제 2 데이터 획득 요청에 응답하여, 상기 제 2 클라이언트 디바이스는 상기 제 2 클라이언트 디바이스에서 상기 제 1 클라이언트 디바이스와 연관된 식별자 및 상기 탐색 파라미터를 디스플레이하고, 상기 제 2 클라이언트 디바이스의 사용자로부터의 승인 후 상기 탐색 파라미터를 상기 컴퓨터 시스템에 리턴하는,
    2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법.
  4. 제 1 항에 있어서,
    상기 제 2 클라이언트 디바이스는 상기 제 2 데이터 획득 요청 내의 규격에 따라 상기 탐색 파라미터를 획득하는,
    2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법.
  5. 제 1 항에 있어서,
    상기 제 2 데이터 획득 요청에 응답하여, 상기 제 2 클라이언트 디바이스는 상기 제 2 클라이언트 디바이스 내의 데이터 획득 장치를 호출하여 상기 탐색 파라미터를 실시간으로 획득하는,
    2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법.
  6. 제 1 항에 있어서,
    상기 제 1 클라이언트 디바이스와 상기 제 2 클라이언트 디바이스는 서로 다른 지리적 영역들에 위치하는,
    2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법.
  7. 제 1 항에 있어서,
    상기 적어도 하나의 탐색 결과를 사용자 개입 없이 자동으로 상기 제 1 클라이언트 디바이스에 전송하는 단계를 더 포함하는,
    2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법.
  8. 제 1 항에 있어서,
    상기 탐색 파라미터는, 지리적 위치, 비디오 중단점, 오디오 중단점, 사진, 이메일, 바코드, 및 미디어 콘텐츠 아이템의 일부로 구성된 그룹으로부터 선택된 파라미터인,
    2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법.
  9. 제 1 항에 있어서,
    상기 제 2 클라이언트 디바이스는 태블릿, 랩톱 컴퓨터 및 스마트폰으로 구성된 그룹으로부터 선택된 디바이스인,
    2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법.
  10. 제 1 항에 있어서,
    상기 제 2 클라이언트 디바이스 상에서 상기 컴퓨터 시스템으로부터 데이터를 수신하는 동안, 상기 컴퓨터 시스템은 상기 제 1 클라이언트 디바이스 상에서 상기 컴퓨터 시스템으로부터 데이터를 계속해서 수신하기 위해 상기 사용자에 의해 시작되는 상기 제 1 클라이언트 디바이스로부터의 제 1 데이터 획득 요청을 수신하는,
    2개의 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법.
  11. 컴퓨터 시스템으로서,
    하나 또는 그보다 많은 프로세서들;
    메모리; 및
    하나 또는 그보다 많은 프로그램들을 포함하며,
    상기 하나 또는 그보다 많은 프로그램들은 상기 메모리에 저장되고 상기 하나 또는 그보다 많은 프로세서들에 의해 실행되도록 구성되며,
    상기 하나 또는 그보다 많은 프로그램들은 명령들을 포함하며,
    상기 명령들은,
    제 1 클라이언트 디바이스로부터 제 1 데이터 획득 요청을 얻기 위한 명령 ― 상기 제 1 데이터 획득 요청은 (ⅰ) 상기 제 1 클라이언트 디바이스와는 다른 제 2 클라이언트 디바이스를 식별하는 디바이스 식별자, 및 (ⅱ) 탐색 파라미터를 식별하는 탐색 파라미터 식별자를 포함함 ―;
    상기 디바이스 식별자에 따라 복수의 클라이언트 디바이스들로부터 상기 제 2 클라이언트 디바이스를 식별하기 위한 명령;
    상기 탐색 파라미터 식별자를 포함하는 제 2 데이터 획득 요청을 상기 제 2 디바이스에 발행하기 위한 명령;
    상기 탐색 파라미터 식별자에 따라 상기 제 2 클라이언트 디바이스로부터 탐색 파라미터를 얻기 위한 명령;
    상기 탐색 파라미터에 따라 하나 또는 그보다 많은 탐색 결과들을 얻기 위한 명령; 및
    상기 제 1 클라이언트 디바이스의 사용자에게 디스플레이하기 위해 상기 하나 또는 그보다 많은 탐색 결과 중 적어도 하나의 탐색 결과를 상기 제 1 클라이언트 디바이스에 제공하기 위한 명령을 포함하는,
    컴퓨터 시스템.
  12. 제 11 항에 있어서,
    상기 제 2 클라이언트 디바이스와 연관된 탐색 파라미터는 상기 제 1 클라이언트 디바이스에서 상기 적어도 하나의 탐색 결과와 함께 디스플레이되는,
    컴퓨터 시스템.
  13. 제 11 항에 있어서,
    상기 제 2 데이터 획득 요청에 응답하여, 상기 제 2 클라이언트 디바이스는 상기 제 2 클라이언트 디바이스에서 상기 제 1 클라이언트 디바이스와 연관된 식별자 및 상기 탐색 파라미터를 디스플레이하고, 상기 제 2 클라이언트 디바이스의 사용자로부터의 승인 후 상기 탐색 파라미터를 상기 컴퓨터 시스템에 리턴하는,
    컴퓨터 시스템.
  14. 제 11 항에 있어서,
    상기 제 2 클라이언트 디바이스는 상기 제 2 데이터 획득 요청 내의 규격에 따라 상기 탐색 파라미터를 획득하는,
    컴퓨터 시스템.
  15. 제 11 항에 있어서,
    상기 제 2 데이터 획득 요청에 응답하여, 상기 제 2 클라이언트 디바이스는 상기 제 2 클라이언트 디바이스 내의 데이터 획득 장치를 호출하여 상기 탐색 파라미터를 실시간으로 획득하는,
    컴퓨터 시스템.
  16. 제 11 항에 있어서,
    상기 제 1 클라이언트 디바이스와 상기 제 2 클라이언트 디바이스는 서로 다른 지리적 영역들에 위치하는,
    컴퓨터 시스템.
  17. 제 11 항에 있어서,
    상기 명령들은, 상기 적어도 하나의 탐색 결과를 사용자 개입 없이 자동으로 상기 제 1 클라이언트 디바이스에 전송하기 위한 명령을 더 포함하는,
    컴퓨터 시스템.
  18. 제 11 항에 있어서,
    상기 탐색 파라미터는, 지리적 위치, 비디오 중단점, 오디오 중단점, 사진, 이메일, 바코드, 및 미디어 콘텐츠 아이템의 일부로 구성된 그룹으로부터 선택된 파라미터인,
    컴퓨터 시스템.
  19. 제 11 항에 있어서,
    상기 제 2 클라이언트 디바이스는 태블릿, 랩톱 컴퓨터 및 스마트폰으로 구성된 그룹으로부터 선택된 디바이스인,
    컴퓨터 시스템.
  20. 제 11 항에 있어서,
    상기 제 2 클라이언트 디바이스 상에서 상기 컴퓨터 시스템으로부터 데이터를 수신하는 동안, 사용자가 상기 제 1 클라이언트 디바이스 상에서 상기 컴퓨터 시스템으로부터 데이터를 계속해서 수신하기 위해 상기 제 1 클라이언트 디바이스로부터의 제 1 데이터 획득 요청을 시작하는,
    컴퓨터 시스템.
  21. 하나 또는 그보다 많은 프로그램들을 저장하는 비-일시적 컴퓨터 판독 가능 저장 매체로서,
    상기 하나 또는 그보다 많은 프로그램들은 명령들을 포함하며,
    상기 명령들은 하나 또는 그보다 많은 프로세서들을 가진 컴퓨터 시스템에 의해 실행될 때, 상기 컴퓨터 시스템으로 하여금,
    제 1 클라이언트 디바이스로부터 제 1 데이터 획득 요청을 얻게 하고 ― 상기 제 1 데이터 획득 요청은 (ⅰ) 상기 제 1 클라이언트 디바이스와는 다른 제 2 클라이언트 디바이스를 식별하는 디바이스 식별자, 및 (ⅱ) 탐색 파라미터를 식별하는 탐색 파라미터 식별자를 포함함 ―;
    상기 디바이스 식별자에 따라 복수의 클라이언트 디바이스들로부터 상기 제 2 클라이언트 디바이스를 식별하게 하고;
    상기 탐색 파라미터 식별자를 포함하는 제 2 데이터 획득 요청을 상기 제 2 디바이스에 발행하게 하고;
    상기 탐색 파라미터 식별자에 따라 상기 제 2 클라이언트 디바이스로부터 탐색 파라미터를 얻게 하고;
    상기 탐색 파라미터에 따라 하나 또는 그보다 많은 탐색 결과들을 얻게 하고; 그리고
    상기 하나 또는 그보다 많은 탐색 결과들 중 적어도 하나의 탐색 결과를 상기 제 1 클라이언트 디바이스에서의 디스플레이를 위해 포맷화하게 하는,
    비-일시적 컴퓨터 판독 가능 저장 매체.
  22. 제 21 항에 있어서,
    상기 제 2 클라이언트 디바이스와 연관된 탐색 파라미터는 상기 제 1 클라이언트 디바이스에서 상기 적어도 하나의 탐색 결과와 함께 디스플레이되는,
    비-일시적 컴퓨터 판독 가능 저장 매체.
  23. 제 21 항에 있어서,
    상기 제 2 데이터 획득 요청에 응답하여, 상기 제 2 클라이언트 디바이스는 상기 제 2 클라이언트 디바이스에서 상기 제 1 클라이언트 디바이스와 연관된 식별자 및 상기 탐색 파라미터를 디스플레이하고, 상기 제 2 클라이언트 디바이스의 사용자로부터의 승인 후 상기 탐색 파라미터를 상기 컴퓨터 시스템에 리턴하는,
    비-일시적 컴퓨터 판독 가능 저장 매체.
  24. 제 21 항에 있어서,
    상기 제 2 클라이언트 디바이스는 상기 제 2 데이터 획득 요청 내의 규격에 따라 상기 탐색 파라미터를 획득하는,
    비-일시적 컴퓨터 판독 가능 저장 매체.
  25. 제 21 항에 있어서,
    상기 제 2 데이터 획득 요청에 응답하여, 상기 제 2 클라이언트 디바이스는 상기 제 2 클라이언트 디바이스 내의 데이터 획득 장치를 호출하여 상기 탐색 파라미터를 실시간으로 획득하는,
    비-일시적 컴퓨터 판독 가능 저장 매체.
  26. 제 21 항에 있어서,
    상기 제 1 클라이언트 디바이스와 상기 제 2 클라이언트 디바이스는 서로 다른 지리적 영역들에 위치하는,
    비-일시적 컴퓨터 판독 가능 저장 매체.
  27. 제 21 항에 있어서,
    상기 하나 또는 그보다 많은 프로그램들은 추가적으로, 상기 컴퓨터 시스템으로 하여금, 상기 적어도 하나의 탐색 결과를 사용자 개입 없이 자동으로 상기 제 1 클라이언트 디바이스에 전송하게 하는 명령들을 포함하는,
    비-일시적 컴퓨터 판독 가능 저장 매체.
  28. 제 21 항에 있어서,
    상기 탐색 파라미터는, 지리적 위치, 비디오 중단점, 오디오 중단점, 사진, 이메일, 바코드, 및 미디어 콘텐츠 아이템의 일부로 구성된 그룹으로부터 선택된 파라미터인,
    비-일시적 컴퓨터 판독 가능 저장 매체.
  29. 제 21 항에 있어서,
    상기 제 2 클라이언트 디바이스는 태블릿, 랩톱 컴퓨터 및 스마트폰으로 구성된 그룹으로부터 선택된 디바이스인,
    비-일시적 컴퓨터 판독 가능 저장 매체.
  30. 제 21 항에 있어서,
    상기 제 2 클라이언트 디바이스 상에서 상기 컴퓨터 시스템으로부터 데이터를 수신하는 동안, 사용자가 상기 제 1 클라이언트 디바이스 상에서 상기 컴퓨터 시스템으로부터 데이터를 계속해서 수신하기 위해 상기 제 1 클라이언트 디바이스로부터의 제 1 데이터 획득 요청을 시작하는,
    비-일시적 컴퓨터 판독 가능 저장 매체.
KR1020147031455A 2012-06-20 2013-05-20 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법, 시스템 및 장치 KR101526837B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201210204568.6 2012-06-20
CN201210204568.6A CN102710789B (zh) 2012-06-20 2012-06-20 智能终端间数据的交互方法、系统及装置
PCT/CN2013/075929 WO2013189221A1 (en) 2012-06-20 2013-05-20 Method, system, and apparatus for exchanging data between client devices

Publications (2)

Publication Number Publication Date
KR20140134726A true KR20140134726A (ko) 2014-11-24
KR101526837B1 KR101526837B1 (ko) 2015-06-05

Family

ID=46903335

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147031455A KR101526837B1 (ko) 2012-06-20 2013-05-20 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법, 시스템 및 장치

Country Status (17)

Country Link
US (1) US9444881B2 (ko)
EP (1) EP2865161B1 (ko)
JP (1) JP2015517706A (ko)
KR (1) KR101526837B1 (ko)
CN (1) CN102710789B (ko)
AP (1) AP2014008032A0 (ko)
AU (1) AU2013280101A1 (ko)
BR (1) BR112014027950B1 (ko)
CA (1) CA2870106C (ko)
CL (1) CL2014002998A1 (ko)
IN (1) IN2014MN01984A (ko)
MX (1) MX2014013175A (ko)
MY (1) MY178261A (ko)
PH (1) PH12014502159A1 (ko)
RU (1) RU2604423C2 (ko)
SG (1) SG11201406191XA (ko)
WO (1) WO2013189221A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190021411A (ko) * 2016-07-12 2019-03-05 후아웨이 테크놀러지 컴퍼니 리미티드 차량 외부 통신 방법, 장치 및 단말

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102710789B (zh) * 2012-06-20 2017-03-22 腾讯科技(深圳)有限公司 智能终端间数据的交互方法、系统及装置
US8595317B1 (en) 2012-09-14 2013-11-26 Geofeedr, Inc. System and method for generating, accessing, and updating geofeeds
US8655983B1 (en) 2012-12-07 2014-02-18 Geofeedr, Inc. System and method for location monitoring based on organized geofeeds
US8639767B1 (en) 2012-12-07 2014-01-28 Geofeedr, Inc. System and method for generating and managing geofeed-based alerts
CN103118068B (zh) * 2012-12-26 2016-05-25 珠海金山办公软件有限公司 由当前应用设备从其它数据源设备获取数据的方法和系统
US9307353B2 (en) 2013-03-07 2016-04-05 Geofeedia, Inc. System and method for differentially processing a location input for content providers that use different location input formats
US8612533B1 (en) 2013-03-07 2013-12-17 Geofeedr, Inc. System and method for creating and managing geofeeds
US8850531B1 (en) 2013-03-07 2014-09-30 Geofeedia, Inc. System and method for targeted messaging, workflow management, and digital rights management for geofeeds
CN103166681A (zh) * 2013-03-13 2013-06-19 北京搜狗科技发展有限公司 近距离场景下的信息传输方法及系统
US9317600B2 (en) 2013-03-15 2016-04-19 Geofeedia, Inc. View of a physical space augmented with social media content originating from a geo-location of the physical space
US8862589B2 (en) 2013-03-15 2014-10-14 Geofeedia, Inc. System and method for predicting a geographic origin of content and accuracy of geotags related to content obtained from social media and other content providers
US8849935B1 (en) 2013-03-15 2014-09-30 Geofeedia, Inc. Systems and method for generating three-dimensional geofeeds, orientation-based geofeeds, and geofeeds based on ambient conditions based on content provided by social media content providers
CN104426589A (zh) * 2013-09-02 2015-03-18 联想(北京)有限公司 一种数据传输的方法及一种电子设备
US9009827B1 (en) 2014-02-20 2015-04-14 Palantir Technologies Inc. Security sharing system
CN105099857B (zh) * 2014-05-08 2020-02-18 腾讯科技(深圳)有限公司 信息展示方法和装置
US9665241B2 (en) * 2014-06-30 2017-05-30 Verizon Patent And Licensing Inc. Media content search systems and methods
CN105205007B (zh) * 2014-06-30 2018-03-30 北京金山安全软件有限公司 数据上传方法及装置
US10572496B1 (en) * 2014-07-03 2020-02-25 Palantir Technologies Inc. Distributed workflow system and database with access controls for city resiliency
CN105721895A (zh) * 2014-12-02 2016-06-29 北京天籁传音数字技术有限公司 数据交互方法及系统
US10747622B2 (en) 2015-03-31 2020-08-18 SkyKick, Inc. Efficient backup, search and restore
US10437515B2 (en) * 2015-03-31 2019-10-08 Pure Storage, Inc. Selecting storage units in a dispersed storage network
CN106161531A (zh) * 2015-04-08 2016-11-23 阿里巴巴集团控股有限公司 一种数据上传的方法及其装置
US9811706B2 (en) 2015-04-23 2017-11-07 Vatche PAPAZIAN System for anonymous communication from a user to the publisher of a scannable label
US10846672B2 (en) * 2015-05-12 2020-11-24 A La Carte Media, Inc. Kiosks for remote collection of electronic devices for value, and associated mobile application for enhanced diagnostics and services
CN104994141B (zh) * 2015-06-16 2018-05-25 四川长虹电器股份有限公司 缓解云服务器存储和计算压力的协同存储系统
US9485318B1 (en) 2015-07-29 2016-11-01 Geofeedia, Inc. System and method for identifying influential social media and providing location-based alerts
CN109076196B (zh) 2016-02-26 2020-01-14 亚马逊技术有限公司 共享来自音频/视频记录和通信装置的视频录像
US10489453B2 (en) * 2016-02-26 2019-11-26 Amazon Technologies, Inc. Searching shared video footage from audio/video recording and communication devices
US9965934B2 (en) 2016-02-26 2018-05-08 Ring Inc. Sharing video footage from audio/video recording and communication devices for parcel theft deterrence
US11393108B1 (en) 2016-02-26 2022-07-19 Amazon Technologies, Inc. Neighborhood alert mode for triggering multi-device recording, multi-camera locating, and multi-camera event stitching for audio/video recording and communication devices
US10748414B2 (en) 2016-02-26 2020-08-18 A9.Com, Inc. Augmenting and sharing data from audio/video recording and communication devices
US10397528B2 (en) 2016-02-26 2019-08-27 Amazon Technologies, Inc. Providing status information for secondary devices with video footage from audio/video recording and communication devices
US10841542B2 (en) 2016-02-26 2020-11-17 A9.Com, Inc. Locating a person of interest using shared video footage from audio/video recording and communication devices
US10650621B1 (en) 2016-09-13 2020-05-12 Iocurrents, Inc. Interfacing with a vehicular controller area network
CN108418885A (zh) * 2018-03-09 2018-08-17 四川高原之宝牦牛网络技术有限公司 数据管理方法及装置
CN112579749B (zh) * 2018-11-14 2024-04-19 深圳市云歌人工智能技术有限公司 提供以及获取服务的方法、系统及存储介质
CN110213522B (zh) * 2019-05-27 2021-07-27 腾讯科技(深圳)有限公司 一种视频数据处理方法、装置以及相关设备
CN111680961B (zh) * 2020-04-29 2023-08-29 北京网聘咨询有限公司 一种空中双选会视频面谈实现方法和设备

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020007350A1 (en) * 2000-07-11 2002-01-17 Brian Yen System and method for on-demand data distribution in a P2P system
US7099871B2 (en) * 2001-05-04 2006-08-29 Sun Microsystems, Inc. System and method for distributed real-time search
US7636792B1 (en) * 2001-07-13 2009-12-22 Oracle International Corporation Methods and systems for dynamic and automatic content creation for mobile devices
JP2003115099A (ja) 2001-10-02 2003-04-18 Tamura Electric Works Ltd 地図情報提供方法及び地図情報提供装置
JP3730578B2 (ja) * 2001-12-04 2006-01-05 エヌ・ティ・ティ・コムウェア株式会社 ナビゲーションシステムおよびそのナビゲーション方法、ナビゲーションプログラムと該プログラムを記録したコンピュータ読取り可能な記録媒体および移動通信端末と該移動通信端末における制御プログラムと該プログラムを記録したコンピュータ読取り可能な記録媒体
US7676675B2 (en) * 2003-06-06 2010-03-09 Microsoft Corporation Architecture for connecting a remote client to a local client desktop
FR2870022B1 (fr) * 2004-05-07 2007-02-02 Canon Kk Procede et dispositif de distribution de donnees numeriques notamment pour reseau pair-a-pair
JP2006120065A (ja) * 2004-10-25 2006-05-11 Nec Commun Syst Ltd 携帯電話端末、サーバ、データ共有システムおよび携帯電話端末のデータ共有方法
JP5011917B2 (ja) 2006-09-29 2012-08-29 株式会社日立製作所 コンテンツ送信装置、再生装置およびコンテンツ再生方法
US8370732B2 (en) * 2006-10-20 2013-02-05 Mixpo Portfolio Broadcasting, Inc. Peer-to-portal media broadcasting
CN101441733A (zh) 2007-08-27 2009-05-27 北京奥腾讯达科技有限公司 基于库存数据的企业生产控制系统
JP4477661B2 (ja) * 2007-09-28 2010-06-09 富士通株式会社 中継プログラム、中継装置、中継方法
US20090094224A1 (en) * 2007-10-05 2009-04-09 Google Inc. Collaborative search results
CN101247364B (zh) 2008-03-31 2012-01-18 腾讯科技(深圳)有限公司 会话消息管理系统和管理方法
JP2011066625A (ja) 2009-09-16 2011-03-31 Oki Networks Co Ltd 位置情報提供方法及び位置情報提供サーバ
CN101674314B (zh) * 2009-10-23 2012-08-08 华为终端有限公司 信息共享方法、数据服务器和终端
JP5464662B2 (ja) * 2010-03-30 2014-04-09 株式会社Kddi研究所 コンテンツ再生制御システムおよびそのプロキシサーバ
JP5565063B2 (ja) * 2010-04-16 2014-08-06 日本電気株式会社 情報取得システム、情報取得方法および情報取得プログラム
CN102469112B (zh) * 2010-11-01 2015-11-25 赵继安 位置跟踪实现方法、装置及系统
CN102355493B (zh) * 2011-09-29 2014-05-21 畅捷通信息技术股份有限公司 数据传输系统和数据传输方法
CN102710789B (zh) 2012-06-20 2017-03-22 腾讯科技(深圳)有限公司 智能终端间数据的交互方法、系统及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190021411A (ko) * 2016-07-12 2019-03-05 후아웨이 테크놀러지 컴퍼니 리미티드 차량 외부 통신 방법, 장치 및 단말
US11340607B2 (en) 2016-07-12 2022-05-24 Huawei Technologies Co., Ltd. Vehicle external communication method and apparatus, and terminal

Also Published As

Publication number Publication date
EP2865161B1 (en) 2018-12-05
BR112014027950B1 (pt) 2021-10-26
AU2013280101A1 (en) 2014-10-23
US9444881B2 (en) 2016-09-13
CN102710789B (zh) 2017-03-22
US20130346563A1 (en) 2013-12-26
WO2013189221A1 (en) 2013-12-27
KR101526837B1 (ko) 2015-06-05
MX2014013175A (es) 2015-04-09
SG11201406191XA (en) 2014-10-30
EP2865161A4 (en) 2016-01-06
EP2865161A1 (en) 2015-04-29
RU2014145226A (ru) 2016-08-10
PH12014502159B1 (en) 2014-12-10
AP2014008032A0 (en) 2014-10-31
IN2014MN01984A (ko) 2015-07-10
CL2014002998A1 (es) 2015-02-06
CN102710789A (zh) 2012-10-03
CA2870106A1 (en) 2013-12-27
WO2013189221A9 (en) 2014-10-02
CA2870106C (en) 2018-03-20
JP2015517706A (ja) 2015-06-22
BR112014027950A2 (pt) 2018-05-29
MY178261A (en) 2020-10-07
RU2604423C2 (ru) 2016-12-10
PH12014502159A1 (en) 2014-12-10

Similar Documents

Publication Publication Date Title
KR101526837B1 (ko) 클라이언트 디바이스들 간에 데이터를 교환하기 위한 방법, 시스템 및 장치
EP2641184B1 (en) Media file access
US8677502B2 (en) Proximity based networked media file sharing
US10251021B2 (en) Venue and event recommendations for a user of a portable media player device
US9317863B2 (en) Media content selection and presentation control
US9720856B2 (en) Sharing content using a dongle device
WO2015200535A1 (en) Methods, systems and media for performing personalized actions on mobile devices associated with a media presentation device
US10091331B1 (en) Prioritized download of social network content
US20150067150A1 (en) Systems and methods for proactive media data sharing
KR101120737B1 (ko) 모바일 단말기를 이용한 소셜 동영상 서비스 방법
TWI442339B (zh) 景點資訊同步方法、系統及電腦程式產品
JP5612544B2 (ja) 情報提示方法および情報提示システム
OA17174A (en) Method, system, and apparatus for exchanging data between client devices.
US20230164289A1 (en) Method and apparatus for storing and sending a computer location
WO2016070371A1 (zh) 移动终端和web终端之间互连及流传输和流媒体播放的方法
EP2413254A1 (en) System and method for accessing collaborative multimedia content
KR101710488B1 (ko) 파일 공유 장치 및 방법
CN104715186A (zh) cookie信息共享方法及系统
KR20130117509A (ko) 휴대용 단말기에 관한 단말기 정보의 관리방법 및 서버와 휴대용 단말기

Legal Events

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

Payment date: 20180517

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190516

Year of fee payment: 5