KR101861050B1 - 모바일 디바이스 그룹 간의 정보의 동기화 및 협업 - Google Patents

모바일 디바이스 그룹 간의 정보의 동기화 및 협업 Download PDF

Info

Publication number
KR101861050B1
KR101861050B1 KR1020177014655A KR20177014655A KR101861050B1 KR 101861050 B1 KR101861050 B1 KR 101861050B1 KR 1020177014655 A KR1020177014655 A KR 1020177014655A KR 20177014655 A KR20177014655 A KR 20177014655A KR 101861050 B1 KR101861050 B1 KR 101861050B1
Authority
KR
South Korea
Prior art keywords
information
group
communication device
server
shareable
Prior art date
Application number
KR1020177014655A
Other languages
English (en)
Other versions
KR20170063994A (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 KR20170063994A publication Critical patent/KR20170063994A/ko
Application granted granted Critical
Publication of KR101861050B1 publication Critical patent/KR101861050B1/ko

Links

Images

Classifications

    • 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
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/26
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/001Synchronization between nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/001Synchronization between nodes
    • H04W56/002Mutual synchronization

Abstract

그룹의 사용자들 간의 정보의 자동 공유, 동기화 및 협업을 위한 실시예들이 제공된다. 실시예에서, 방법은 멤버 디바이스 상에 위치된 정보를 업데이트하는 단계, 및 정보가 그룹의 멤버들과의 공유용으로 마킹되어 있는지를 결정하는 단계를 포함한다. 공유용으로 마킹된 업데이트된 정보는 네트워크 내의 서버에 있는 정보의 복제본과 자동으로 비교된다. 업데이트된 정보가 서버에 있는 복제본보다 더 새로운 경우, 업데이트된 정보는 클라우드 서비스를 통해 서버에 업로드된다. 디바이스가 턴온되거나 네트워크에 접속될 때, 디바이스는 자동으로 디바이스 상의 대응하는 복제본보다 서버에 더 새로운 공유가능한 정보가 존재하는지 또는 디바이스에 송신되도록 마킹된 푸시 메시지가 존재하는지를 서버를 이용하여 체크하고, 디바이스 상의 복제본을 서버에 있는 더 새로운 정보와 동기화시킨다.

Description

모바일 디바이스 그룹 간의 정보의 동기화 및 협업{SYNCHRONIZING AND COLLABORATION OF INFORMATION AMONG A MOBILE DEVICE GROUP}
이 출원은, Jianyu Zhang에 의해 2014년 3월 14일에 "Systems and Methods for Automatic Sharing, Synchronizing and Collaboration of Information among Users of a Group"라는 명칭으로 출원된 미국 정식출원 제14/212,296호, 및 Jianyu Zhang에 의해 2013년 3월 15일에 "Method and System for Automatic Sharing and Synchronizing of Information among Users of a Group"라는 명칭으로 출원된 미국 가출원 제61/800,586호의 이익을 주장하며, 이들은 그 전체가 복제된 것처럼 참조로 본원에 포함된다.
본 발명은 네트워크 통신 분야에 관한 것이며, 특정 실시예들에서는, 그룹의 사용자들 간의 정보의 자동 공유, 동기화 및 협업을 위한 시스템들 및 방법들에 관한 것이다.
전자 디바이스들(예를 들어, 데스크톱 컴퓨터, 랩톱, 태블릿 컴퓨터, 스마트폰)은 비즈니스 활동 및 소셜(social) 활동 모두를 위해 사람들의 일상생활에서 점점 더 큰 역할을 수행하고 있다. 디바이스들은 또한 Smartwatch™, Google Glass™와 같은 웨어러블 스마트 디바이스들, 또는 다른 센서 및 쌍방향 디바이스들을 포함한다. 워크 또는 소셜 그룹과 같은 그룹들(예를 들어, 프로젝트 팀, 회사, 가족, 친구들)에서, 일부 정보는 그룹의 모든 멤버들에게 공통 관심대상이며, 따라서, 모든 그룹 멤버들에 의해 공유되고 사용된다. 예를 들어, 가족에 있어서, 가족 멤버들은 부모님 또는 배우자의 친척들 또는 친구들에 대한 연락처 정보(예를 들어, 전화 번호)를 알 필요가 있지만, 이들은 종종 오직 직계가족의 연락처 정보에 대한 변경들만을 통지받는다. 따라서, 일부 가족 멤버들의 연락처 리스트들은 이들의 직계 가족들 이외의 다른 사람들의 연락처 정보에 대한 변경들을 반영하도록 적시적 방식으로(in a timely manner) 업데이트되지 않는다. 현재, 서비스 제공자들에 의해 공급되는 서비스들은 소셜 그룹 멤버들의 연락처들을 공유하고 업데이트하는 것에 제한된다. 그러나, 이들 서비스들은 소셜 그룹 멤버들의 관련 정보를 공유하고 업데이트하지는 않는다. 또한, 이러한 서비스들은 멤버들 간의 정보를 자동으로 공유하고 업데이트하지 않는다. 위의 관점에서, 멤버들의 모바일 통신 디바이스들을 사용하여 액세스 가능하고 멤버들 사이에서 그룹에 의해 공유되는 중요 정보를 계속 업데이트하는 방법에 대한 필요성이 존재한다.
실시예에 따르면, 그룹의 멤버들 간의 정보의 공유, 동기화 및 협업을 위해 통신 디바이스에 의해 수행되는 방법은 멤버들 중 하나와 연관된 통신 디바이스 상에 위치된 정보를 업데이트하는 단계, 및 정보가 그룹의 멤버들과의 공유용으로 마킹되어 있는지를 결정하는 단계를 포함한다. 방법은, 정보가 공유용으로 마킹되어 있다는 것을 검출할 시에, 업데이트된 정보를 네트워크 내의 서버에 있는 정보의 복제본과 자동으로 비교하는 단계를 더 포함한다. 업데이트된 정보가 서버에 있는 정보의 복제본보다 더 새롭다는 것을 검출할 시에, 업데이트된 정보는 클라우드 서비스를 통해 서버에 업로드된다.
또다른 실시예에서, 그룹의 멤버들 간의 정보의 공유, 동기화 및 협업을 위해 통신 디바이스에 의해 수행되는 방법은 통신 디바이스 상에 위치된 정보를 업데이트하는 단계, 및 정보가 그룹의 멤버들과의 공유용으로 마킹되어 있는지를 결정하는 단계를 포함한다. 정보가 공유용으로 마킹되어 있다는 것을 검출할 시에, 통신 디바이스는 피어-투-피어 프로토콜을 사용하여 그룹의 다른 멤버들과 연관된 다른 디바이스들을 검출한다. 방법은 피어-투-피어 프로토콜을 통해 다른 멤버들의 디바이스들에 푸시 메시지를 송신하는 단계를 더 포함한다. 푸시 메시지는 통신 디바이스에 있는 정보가 업데이트되었음을 디바이스들에 통지한다.
또다른 실시예에 따르면, 그룹의 멤버들 간의 정보의 공유, 동기화 및 협업을 지원하는 서버에 의해 수행되는 방법은 그룹의 멤버와 연관된 디바이스로부터 업데이트된 정보를 클라우드 서비스를 통해 수신하는 단계를 포함한다. 업데이트 정보는 그룹의 멤버들에 의해 공유가능하다. 방법은 그룹의 다른 멤버들의 다른 디바이스들에 푸시 메시지를 송신하는 단계를 더 포함한다. 푸시 메시지는 디바이스에서 업데이트된 정보를 다른 멤버들에게 통지한다. 업데이트된 정보는 이후 다른 디바이스들에 있는 대응하는 복제본들과 동기화된다.
또다른 실시예에 따르면, 그룹의 멤버들 간의 정보의 공유, 동기화 및 협업을 지원하는 통신 디바이스는 적어도 하나의 프로세서 및 적어도 하나의 프로세서에 의한 실행을 위한 프로그래밍을 저장하는 비-일시적 컴퓨터 판독가능한 저장 매체를 포함한다. 프로그래밍은 멤버들 중 하나와 연관된 통신 디바이스에 위치된 정보를 업데이트하고, 정보가 그룹의 멤버들과의 공유용으로 마킹되어 있는지를 결정하기 위한 명령들을 포함한다. 정보가 공유용으로 마킹되어 있다는 것을 검출할 시에, 통신 디바이스는 업데이트된 정보를 네트워크 내의 서버에 있는 정보의 복제본과 비교하도록 구성되고, 업데이트된 정보가 서버에 있는 정보의 복제본보다 더 새롭다는 것을 검출할 시에, 클라우드 서비스를 통해 업데이트된 정보를 서버에 업로드시킨다.
또다른 실시예에 따르면, 그룹의 멤버들 간의 정보의 공유, 동기화 및 협업을 지원하는 통신 디바이스는 적어도 하나의 프로세서 및 적어도 하나의 프로세서에 의한 실행을 위한 프로그래밍을 저장하는 비-일시적 컴퓨터 판독가능한 저장 매체를 포함한다. 프로그래밍은 통신 디바이스 상에 위치된 정보를 업데이트하고, 정보가 그룹의 멤버들과의 공유용으로 마킹되어 있는지를 결정하기 위한 명령들을 포함한다. 정보가 공유용으로 마킹되어 있다는 것을 검출할 시에, 디바이스는 피어-투-피어 프로토콜을 사용하여 그룹의 다른 멤버들과 연관된 디바이스들을 검출하고, 피어-투-피어 프로토콜을 통해 다른 멤버들의 디바이스들에 푸시 메시지를 송신하도록 구성된다. 푸시 메시지는 통신 디바이스에 있는 정보가 업데이트되었음을 디바이스들에 통지한다.
또다른 실시예에 다르면, 그룹의 멤버들 간의 정보의 공유, 동기화 및 협업을 지원하는 네트워크 서버는 적어도 하나의 프로세서 및 적어도 하나의 프로세서에 의한 실행을 위한 프로그래밍을 저장하는 비-일시적 컴퓨터 판독가능한 저장 매체를 포함한다. 프로그래밍은 그룹의 멤버와 연관된 디바이스로부터 업데이트 정보를 클라우드 서비스를 통해 수신하기 위한 명령들을 포함한다. 업데이트된 정보는 그룹의 멤버들에 의해 공유가능하다. 프로그래밍은 그룹의 다른 멤버들의 다른 디바이스들에 푸시 메시지를 송신하기 위한 명령들을 더 포함한다. 푸시 메시지는 디바이스에 있는 업데이트된 정보를 다른 멤버들에게 통지한다. 디바이스는 업데이트된 정보를 다른 디바이스들에 있는 대응하는 복제본들과 동기화시키도록 추가로 구성된다.
전술내용은 후속하는 발명의 상세한 설명이 더욱 잘 이해될 수 있도록 하기 위해 본 발명의 실시예의 특징들을 다소 넓게 개요화하였다. 발명의 실시예들의 추가적인 특징들 및 장점들은 하기에 기술될 것이며, 이는 발명의 청구항들의 발명대상(subject)을 형성한다. 개시된 개념 및 특정 실시예들이 본 발명의 동일한 목적들을 수행하기 위한 다른 구조들 또는 프로세스들을 수정하거나 설계하기 위한 기반으로서 용이하게 이용될 수 있다는 점이 통상의 기술자에 의해 인식되어야 한다. 또한, 이러한 등가적 구성들이 첨부된 청구항들에서 설명된 바와 같은 발명의 사상 및 범위로부터 벗어나지 않는다는 점이 통상의 기술자에 의해 인지되어야 한다.
본 발명, 및 그 장점들의 보다 완전한 이해를 위해, 이제 첨부 도면들과 함께 취해진 후속하는 기재들에 대한 참조가 이루어진다.
도 1은 본 개시내용의 실시예에 따른 전자 디바이스들 간의 정보의 공유, 동기화 및 협업을 위한 시스템의 블록도이다.
도 2는 본 개시내용의 실시예에 따라 전자 디바이스들 간의 정보의 공유, 동기화 및 협업을 위한 시스템의 구조 및 동작을 도시하는 블록도이다.
도 3a 및 3b는 본 개시내용의 실시예에 따라 전자 디바이스들 간의 정보의 공유, 동기화 및 협업을 위한 방법을 도시하는 흐름도를 예시한다.
도 4a, 4b 및 4c는 본 개시내용의 또다른 실시예에 따라 전자 디바이스들 간의 정보의 공유, 동기화 및 협업을 위한 방법을 도시하는 흐름도를 예시한다.
도 5는 본 개시내용의 또다른 실시예에 따라 전자 디바이스들 간의 정보의 공유, 동기화 및 협업을 위한 시스템의 블록도이다.
도 6은 본 개시내용의 또다른 실시예에 따라 전자 디바이스들 간의 정보의 공유, 동기화 및 협업을 위한 시스템의 구조 및 동작을 도시하는 블록도이다.
도 7a, 7b 및 7c는 본 개시내용의 또다른 실시예에 따라 전자 디바이스들 간의 정보의 공유, 동기화 및 협업을 위한 방법을 도시하는 흐름도를 예시한다.
도 8은 다양한 실시예들을 구현하기 위해 사용될 수 있는 모바일 통신 디바이스의 블록도이다.
상이한 도면들 내의 대응하는 참조번호들 및 심볼들은 다른 방식으로 지시되지 않는 한 일반적으로 대응하는 부분들을 지칭한다. 도면들은 실시예의 관련 양상들을 명료하게 예시하도록 그려지며, 반드시 축척에 맞게 그려지지는 않는다.
본원의 바람직한 실시예들의 제작 및 사용은 하기에 상세히 논의된다. 그러나, 본 발명이 매우 다양한 특정 상황들에서 구현될 수 있는 많은 응용가능한 발명의 개념들을 제공한다는 점이 인식되어야 한다. 논의된 특정 실시예들은 발명을 제작하거나 사용하기 위한 특정 방식들을 예시할 뿐이며, 발명의 범위를 제한하지 않는다.
Google Docs™와 같은 이용가능한 협업 소프트웨어에서, 그룹이 세션으로 로그인 한 이후, 하나의 멤버에 의해 이루어진 문서에 대한 변경들은 동일한 세션에 있는 또다른 사람에게 보일 수 있다. 그러나, 기존의 협업 소프트웨어는 통상적으로 문서화 변경의 가장 최근 버전을 획득하기 위해 모든 멤버들이 접속될 것을 요구한다. 또한, 기존의 협업 소프트웨어는 통상적으로 세션에 서명한 임의의 사용자들 간에 정보를 공유하며, 따라서 그다지 안전하지는 않다. 또한, 기존의 협업 소프트웨어는 클라우드 서비스가 "협업 공간(collaboration room)"을 호스팅할 것을 요구한다.
그룹 내의 복수의 멤버들에 의해 공통으로 사용되는 정보의 공유, 동기화 및 협업을 위한 시스템들 및 방법들의 예시적인 실시예들이 본원에 개시된다. 시스템들 및 방법들이 멤버들의 공통으로 사용된 또는 공유된 정보를 자동으로 공유하고 업데이트하며, 따라서 멤버들은 자신의 전자 디바이스들을 통해 최신 정보에 대한 액세스를 가지며 최신 정보를 사용할 수 있다. 본원에서 사용된 바와 같이, 용어 자동적으로는 방법 단계가 최소의 사용자 입력 또는 상호작용을 가지고, 또는 사용자 입력 또는 상호작용을 가지지 않고, 전자 디바이스에 의해 수행될 수 있음을 나타낸다. 그러나, 일부 실시예들에서, 단계는 여전히 그 단계를 진행하거나 취소하기 위해 사용자로부터의 확인을 요청할 수 있다.
멤버들의 그룹은 일반적으로, 공통적인 관계를 가지거나, 또는 작업 또는 비즈니스 그룹, 소셜 그룹, 가족 그룹 또는 다른 그룹들과 같이, 공통적인 조직과 연계된 사용자들로 구성된다. 공통적으로 사용되는 정보는 일반적으로 그룹의 멤버와 연관된 정보로 구성되지만, 또한 그룹의 다른 멤버들에 의해 관심대상이 되거나 사용될 수 있다. 정보는 그룹의 멤버에게 속할 수 있거나 또는 그룹의 멤버에 의해 보유되거나 유지된다. 정보는 멤버 자신의 전화 번호 또는 주소와 같은 멤버 자신의 정보에 제한되는 것이 아니라, 또한, 그룹 외부의 다른 사람들, 예를 들어, 그룹의 멤버와 일부 방식으로 관련된 사람들에 대한 이러한 정보를 포함하는데, 이는 그룹의 모든 멤버들에 의해 알려질 필요가 있다. 따라서, 모든 멤버들은 정보의 가장 새로운 복제본들을 사용할 수 있다. 정보는 데이터, 문서들, 및/또는 멤버들에 대한 임의의 관련 정보일 수 있다. 정보는 날짜 스탬프, 그것이 공유되어야 하는지를 나타내는 마크, 및 정보가 어느 그룹(들)에 대해 공유되는지를 나타내는 마크 중 적어도 하나를 가질 수 있다.
실시예들이 하기에 상세하게 기술된다. 실시예들 중 일부는 클라우드 환경(예를 들어, 인터넷을 통한 네트워킹)을 통해 그룹 멤버들 간의 정보의 공유,동기화 및 협업을 가능하게 한다. 다른 실시예들은 클라우드 환경 없이, 피어-투-피어 네트워크 또는 접속을 통해 그룹 멤버들 간의 정보의 공유, 동기화 및 협업을 가능하게 한다. 그룹 멤버들 간에 공통으로 사용되는 정보(예를 들어, 연락처, 달력, 문서, 프로젝트 상태, 고객 연락처 번호 또는 주문 상태, 사진, 멀티미디어 파일, 재생 리스트 메모, 노트, 또는 다른 공유가능한 정보)는 클라우드, 피어-투-피어, 또는 다른 적절한 네트워킹을 통해 멤버 디바이스들을 사용하여 자동으로 공유되고 동기화된다. 용어 자동으로는 본원에서 (그의 디바이스 상에서 정보를 업데이트하고 사용하는 것을 제외하고) 사용자 중재 없이 기술된 시스템 컴포넌트들에 의해 취해지는 동작들을 지칭하기 위해 사용된다. 그룹에서 공통으로 공유될 필요가 있는 정보는 멤버에게 속할 수 있거나, 또는 멤버에 의해 유지되거나 변경될 수 있다. 예를 들어, 정보는 멤버에 의해 유지될 수 있고(멤버 자신의 정보가 아님) 그룹 외부의 개인에게 속할 수 있다. 공유 및 업데이트(또는 동기화)는 그룹의 모든 멤버들이 정보의 가장 새로운 버전 또는 복제본을 사용할 수 있게 한다. 최신의 또는 가장 새로운 정보는 언제든, 예를 들어, 디바이스가 온라인이거나 오프라인인 동안, 획득될 수 있고, 각각의 멤버는 그의 디바이스 상에 그 자신의 로컬 복제본을 가질 수 있다.
시스템들 및 방법들은 피어-투-피어 시나리오에서와 같이, 심지어 클라우드 서비스의 사용 없이 공유된 정보를 업데이트하기 위해 각각의 멤버에 있는 푸시 메시지 및 로컬 복제본을 사용한다. 푸시 메시지 또는 통지는 정보를 업데이트할 시에 멤버 디바이스로부터 자동으로 송신된다. 시스템은 이후 멤버로부터 업데이트된 정보를 끌어온다(pull). 끌어오기 동작은, 예를 들어, 디바이스가 턴온되거나 네트워크에 접속될 때, 자동으로 수행된다. 실시예에서, 시스템은 클라우드 서비스 없이, 예를 들어, 피어-투-피어 접속을 통해 그룹 내에서 가장 새로운 정보를 가지는 임의의 디바이스로부터 정보를 끌어옴으로써 가장 새로운 정보를 획득한다. 복제본은 임의의 시간에 사용하기 위해 각각의 멤버에 의해 그의 디바이스 상에 국부적으로 유지된다. 이러한 방식은 정보 업데이트의 손실 없이, 그룹의 모든 멤버들이 그들이 국부적으로 공유하고 사용할 수 있는 가장 새로운 정보를 가질 수 있게 한다.
멤버들의 디바이스가 턴온되었는지 턴오프되었는지의 여부 및 멤버의 디바이스가 정보 업데이트 동안 네트워크로부터 접속되었는지 접속해제되었는지의 여부와는 무관하게, 업데이트된 정보는 가능할 때(예를 들어, 디바이스가 턴온되고 그리고/또는 접속될 때) 멤버들의 모바일 디바이스들에 푸시된다. 사용자의 디바이스가 턴온되거나 네트워크에 접속될 때, 디바이스는 시스템으로부터 가장 새로운 정보를 자동으로 체크하고 끌어온다.
공유는 멤버의 연관 정보 및 멤버들에 의해 공통으로 사용되는 다른 정보(예를 들어, 연락처, 달력, 문서, 프로젝트 상태, 고객 연락처 번호 또는 주문 상태, 사진, 멀티미디어 파일, 재생리스트, 메모, 노트)에 적용될 수 있다. 또한, 허가 제어들은 사용자들에 대한 액세스 허가를 결정하도록 지원될 수 있다. 예를 들어, 멤버가 그룹을 이탈하는 경우, 다른 현재 멤버들은 이탈 멤버의 공통으로 공유된 정보에 대한 자신들의 로컬 복제본들을 자신들의 디바이스들로부터 삭제한다.
도 1은 클라우드 환경을 사용하여 전자 디바이스들 간의 정보의 자동 공유, 동기화 및 협업을 위한 시스템(100)의 실시예를 도시한다. 시스템(100)의 디바이스들 및 서버들은 함께 작용하여 정보를 자동으로 공유하고 동기화시킨다. 단계(1)에서, 디바이스들 중 하나, 예를 들어, 디바이스 1은 정보의 로컬 복제본을 업데이트하고, 이후 그것을 클라우드 내의 하나 이상의 서버들에 업로드시킨다. 이 단계는 디바이스 1 내의 클라이언트(예를 들어, 소프트웨어 애플리케이션)에 의해 자동으로 수행된다. 단계(2)에서, 클라우드 내의 하나 이상의 서버들은 그룹 내의 모든 다른 현재 디바이스들에 메시지를 푸시(push)한다. 푸시 메시지는 디바이스 1에서 업데이트된 정보의 디바이스들로의 통지로서의 역할을 한다. 일 구현예에서, 서버들은 또한 메시지가 목적지 디바이스들에 도착했는지를 결정하기 위해 푸시 메시지를 추적할 수 있다. 예를 들어, 디바이스들은 푸시 메시지의 수신 시에 서버들에 확인응답들을 송신하도록 구성될 수 있다. 또다른 구현예에서, 서버들은 추적 없이, 예를 들어, 메시지가 목적지들에 도착했는지 또는 유실되었는지를 체크하지 않고, 푸시 메시지를 송신한다. 단계(3)에서, 현재 디바이스들이 푸시 메시지를 수신할 때, 디바이스들은 디바이스들 상에서 클라이언트들을 통해 자동으로 클라우드 내의 서버들과 정보를 동기화시킨다.
푸시 메시지들을 송신할 시에, 또다른 디바이스, 예를 들어, 디바이스 2가 턴오프되거나 디바이스들에 대한 네트워크(예를 들어, 클라우드 또는 인터넷)로부터 접속해제되는 경우, 디바이스 2는 정보 업데이트를 위한 통지인 푸시 메시지를 유실할 수 있다. 따라서, 단계(4)에서, 디바이스 2가 이후 턴온되고 네트워크에 접속될 때, 디바이스 2는 가장 새로운 정보의 날짜를 클라우드 내의 서버들로부터 요청하거나 획득한다. 단계(5)에서, 클라우드 내의 서버들은 날짜를 디바이스 2에 송신한다. 단계(6)에서, 디바이스 2가 날짜에 따른 가장 새로운 정보를 가지지 않는 경우, 그것은 정보를 클라우드 내의 서버들과 자동으로 동기화시킨다. 이는 또한, 전술된 바와 같은 푸시 메커니즘을 통해 다른 디바이스들을 이용한 업데이트를 야기할 수 있다. 그렇지 않고 디바이스 2에서 새로운 정보가 존재하지 않은 경우, 디바이스 2는 작동할 필요가 없다.
도 2는 전술된 클라우드 기반 정보 공유 및 업데이트 시스템(100)의 보다 상세한 항목들을 도시한다. 구체적으로, 시스템(100)의 위의 시스템 컴포넌트들 및 단계들의 보다 상세한 항목들이 기재되어 있다. 위의 단계(1)에서, 디바이스 1이 정보에 대한 자신의 로컬 복제본을 업데이트할 때, 디바이스 1 상의 클라이언트의 일부분인 공통의 공유 정보 관리 컴포넌트(101)(예를 들어, 소프트웨어 애플리케이션)는 변경들을 체크하고, 이후 클라우드 내의 서버에서 자동으로 변경들을 업데이트 서비스(102)(예를 들어, 소프트웨어 애플리케이션)에 업로드시킨다. 위의 단계(2)에서, 서버의 업데이트 서비스(102)는 서버 내의 복제본을 업데이트하고, 통지 송신기(103)(예를 들어, 소프트웨어 애플리케이션)로부터 자동으로 그룹 내의 다른 디바이스들에 있는 통지 수신기들(105)에게 통지로서 메시지를 푸시하도록 요청한다. 상이한 구현예들에 따르면, 서버들은 푸시 메시지를 추적할 수 있거나, 또는 푸시 메시지들이 수신되었는지 또는 유실되었는지 모를 수 있다. 메시지를 추적하는 경우, 통지 송신기(103)는 서버에 있는 통지 추적기(104)에게 통지 수신기(105)로부터의 피드백을 기다릴 것을 요청한다.
또다른 디바이스의 통지 수신기(105)가 푸시 메시지를 수신하는 경우, 디바이스에 있는 동기화 모듈(106)은 위의 단계(3)에서 자동으로 정보를 서버들과 동기화시킨다. 동기화 모듈(106)은 서버에 있는 공통 공유 정보 제공자(107)에게 요청을 송신하고, 정보를 공통 공유 정보 제공자(107)로부터 끌어오고, 이후 다른 디바이스에 있는 정보의 복제본을 업데이트한다. 서버가 푸시 메시지를 추적하도록 구성되는 경우, 디바이스들의 통지 수신기들(105)은 자동으로 서버에 있는 통지 추적기(104)에 피드백을 송신한다. 동기화시에, 또다른 디바이스, 예를 들어, 디바이스 2가 턴오프되거나 네트워크로부터 접속해제되는 경우, 디바이스 2는 푸시 메시지를 유실할 수 있다. 따라서, 위의 단계(4)에서, 디바이스 2가 턴온되거나 네트워크에 재접속할 때, 디바이스 2 내의 공통 공유 정보 관리 컴포넌트(101)는 클라우드 내의 서버의 업데이트 서비스(102)에게 자동으로 가장 새로운 정보의 날짜를 획득하도록 요청한다.
위의 단계(5)에서, 서버의 업데이트 서비스(102)는 디바이스 2 내의 동기화 모듈(106)에 날짜를 송신한다. 위의 단계(6)에서, 동기화 모듈(106)은 날짜가 디바이스 2 내의 복제본의 날짜보다 더 새로운지를 체크한다. 날짜가 더 새로운 경우, 동기화 모듈(106)은 자동으로 정보를 클라우드 내의 서버들과 동기화시킨다. 동기화 모듈(106)은 요청을 서버에 있는 공통 공유 정보 제공자(107)에게 송신하고, 공통 공유 정보 제공자(107)로부터 정보를 끌어오고, 이후 디바이스 2에 있는 정보의 복제본을 업데이트한다. 따라서, 디바이스 2의 사용자는 심지어 초기 동기화시에 디바이스가 오프라인이었거나 접속해제되었더라도, 가장 새로운 업데이트된 정보를 유실하지 않는다.
시스템(100)의 위의 상이한 컴포넌트들 또는 기능들은 소프트웨어, 하드웨어, 또는 둘 모두를 통해 디바이스들 및 서버들에서 구현될 수 있다. 하나의 서버가 도 2에 도시되지만, 복수의 서버들이 디바이스들과 통신하기 위해 위의 단계들을 공동으로 구현할 수 있다. 임의의 서버는 적용가능한 경우 디바이스들 중 임의의 것과 통신할 수 있다. 어느 서버들이 어느 디바이스들과 통신할 것인지에 대한 선택은 시스템 기준 또는 제약들에 따르며, 이 개시내용의 범위 밖에 있다. 추가로, 서버들은 서로 통신하여 모든 업데이트된 정보를 동기화시키고 이들의 통신들을 멤버들의 디바이스들과 동기화시킬 수 있다.
도 3a 및 3b는 전자 디바이스들 간의 정보의 공유, 동기화 및 협업을 위한 방법(300)의 실시예를 도시한다. 방법(300)은 전술된 클라우드 기반 시스템(100)에 의해 구현될 수 있다. 구체적으로, 방법(300)에서, 클라우드 내의 서버는 푸시 메시지가 디바이스들에 의해 유실되었는지 또는 수신되었는지를 추적한다 추적하지 않는다. 단계(301)에서, 제1 사용자(사용자 1)는 그의 디바이스 상의 그의 로컬 복제본 내의 정보를 업데이트한다. 단계(302)에서, 사용자의 디바이스 상의 클라이언트는 정보(예를 들어, 문서들 및/또는 데이터)가 공유용으로 마킹되어야 하는지 아닌지를 결정한다. 정보가 공유용으로 마킹되는 경우, 단계(303)에서, 클라이언트는 새로운 또는 업데이트된 정보 및 클라우드 내의 서버들 중 임의의 하나와의 임의의 충돌을 체크한다. 단계(304)에서, 클라이언트는 정보가 서버와 디바이스 사이에서 동기화되어야 하는지 아닌지를 결정한다. 정보가 동기화되어야 하는 경우, 단계(305)에서, 클라이언트는 서버에 새로운 정보를 업로드한다. 단계(306)에서, 서버는, 업로드를 수신한 이후, 그룹 내의 다른 디바이스들에 푸시 메시지를 송신한다. 단계(307)에서, 그룹의 디바이스들에 대한 클라이언트들은 푸시 메시지가 수신되는지를 검출한다. 푸시 메시지가 수신되는 경우, 단계(314)에서, 각각의 클라이언트는 정보(예를 들어, 문서들 및/또는 데이터)에 대한 자신의 로컬 복제본을 클라우드의 서버 내의 대응하는 정보와 동기화시킨다. 동기화는 각각의 디바이스에 대해 가장 새로운 또는 업데이트된 정보로 제한될 수 있다. 동기화는 복제본들이 공유되도록 마킹되는지를 체크하는 것을 포함한다. 이러한 이유로, 시간 또는 날짜 스탬프를 사용하여 복제본들을 비교할 수 있다. 동기화 프로토콜은 디바이스와 서버 사이의 복제본들에서의 충돌을 회피하기 위해 사용될 수 있다. 단계(315)에서, 사용자는 자신의 디바이스 상에서 정보의 가장 새로운 복제본을 사용할 수 있다. 추가로, 단계(312)에서, 그룹의 디바이스는 (그것의 사용자에 의해) 턴온되거나 또는 네트워크(예를 들어, 인터넷 또는 클라우드)에 접속될 수 있다. 따라서, 단계(313)에서, 이 디바이스의 클라이언트는 디바이스가 가장 새로운 정보를 가지는지를 서버를 이용하여 체크한다. 이것이 참이 아닌 경우, 단계(314)의 동기화가 이 디바이스에 대해 수행된다.
도 4a, 4b 및 4c는 전자 디바이스들 간의 정보의 공유, 동기화 및 협업을 위한 방법(400)의 실시예를 도시한다. 방법(400)은 전술된 클라우드 기반 시스템(100)에 의해 수행될 수 있다. 구체적으로, 방법(400)에서, 클라우드 내의 서버는 푸시 메시지가 디바이스들에 의해 유실되었는지 또는 수신되었는지를 추적한다. 방법(400)은 전술된 동일한 단계들(301 내지 307 및 314 내지 315)을 포함한다. 단계(306)에서 서버가 디바이스들에 푸시 메시지를 송신한 이후 푸시 메시지를 추적하기 위해, 서버는 단계(408)에서 각각의 디바이스로부터 확인 또는 확인응답 메시지를 기다린다. 단계(409)에서, 서버는 확인 메시지가 수신되는지를 검출한다. 메시지가 수신된 경우, 서버는 반응하지 않는다. 그렇지 않고, 확인 메시지가 수신되지 않은 경우, 서버는 어느 디바이스가 푸시 메시지를 수신하지 않았는지(예를 들어, 어느 디바이스가 확인 메시지를 다시 송신하지 않았는지)를 마킹한다. 단계(411)에서, 마크는 데이터베이스에 저장되는데, 이는 턴온되거나 네트워크에 재접속한 임의의 디바이스에 의해 체크될 수 있다. 예를 들어, 단계(312)에서, 그룹의 디바이스는 (그것의 사용자에 의해) 턴온되거나 네트워크에 접속할 수 있다. 단계(413)에서, 이 디바이스의 클라이언트 및 서버는 이 디바이스에 대해 서버에 의해 마킹된 푸시 메시지가 존재하는지를 체크한다. 이것이 참인 경우, 단계(314)의 동기화가 이 디바이스에 대해 수행된다.
도 5는 피어-투-피어 네트워크 또는 접속을 사용하여, 전자 디바이스들 간의 정보의 공유, 동기화 및 협업을 위한 시스템(500)의 실시예를 도시한다. 하나의 그룹에서, 멤버 디바이스가 공유를 위해 자신의 정보를 업데이트할 때, 다른 멤버 디바이스들은 디바이스들 간의 피어-투-피어 링크들을 통해, 모바일 폰, 스마트폰, 웨어러블 디바이스, 또는 다른 적절한 디바이스와 같은 디바이스들 간의 정보를 자동으로 동기화시키고 업데이트한다. 따라서, 시스템(500)은 클라우드 서비스를 사용하지 않고 구현될 수 있다. 각각의 디바이스에 대한 서버는 업데이트 서비스를 제공한다. 각각의 멤버는 예를 들어, 전송 제어 프로토콜(TCP)/인터넷 프로토콜(IP)/피어-투-피어(P2P) 프로토콜을 사용하여, 멤버의 디바이스 상에서 클라이언트를 통해 업데이트를 필요로 하는 정보를 동기화시키고 업데이트할 수 있다. 멤버 디바이스가 공유를 필요로 하는 자신의 정보를 업데이트하는 경우, 디바이스 내의 서버는 그룹 내의 멤버들의 모든 다른 디바이스들에 직접 메시지를 푸시할 수 있다. 따라서, 다른 멤버들의 디바이스들 내의 클라이언트들은 업데이트 디바이스의 서버를 이용하여 이 정보를 동기화시키고 업데이트한다.
디바이스가 턴온되거나 네트워크(예를 들어, 피어-투-피어 네트워크)에 접속할 때, 디바이스 내의 클라이언트는 그룹 내의 다른 피어-투-피어 디바이스들로부터 정보 날짜 스탬프를 획득하고, 정보에 대한 그것의 로컬 복제본의 날짜 스탬프가 다른 디바이스들에서와 동일한지를 체크한다. 로컬 정보 날짜가 또다른 디바이스 내의 날짜보다 더 오래된 경우, 체크 디바이스는 또다른 피어 디바이스로부터 정보를 끌어온다. 이 동작은 체크 디바이스가 턴오프되거나 네트워크로부터 접속해제되었을 때 그것이 푸시 메시지를 수신하지 않은 경우에 취해진다. 따라서, 사용자는 디바이스가 오프라인이거나 턴오프되었던 경우라도 가장 새로운 업데이트된 정보를 유실하지 않을 것이다. 디바이스는 그것이 턴온되거나 네트워크에 접속할 때 (예를 들어, 상이한 디바이스들로부터의 날짜 스탬프들을 비교함으로써) 가장 새로운 정보를 자동으로 체크하고 끌어온다. 구현된 동기화 프로토콜에 따라, 디바이스는 수정된 부분만을 끌어오도록 선택할 수 있다. 멤버가 그룹을 이탈한 경우, 다른 멤버들은 이탈 멤버의 디바이스의 공통 공유 정보의 복제본을 삭제할 수 있다.
시스템(500)의 디바이스들 및 서버들은 함께 작동하여 자동으로 정보를 공유하고 동기화시킨다. 단계(1)에서, 디바이스, 예를 들어, 디바이스 1은 정보에 대한 로컬 복제본을 업데이트하고, 이후, 디바이스 1 내의 서버가 자동으로 그룹 내의 모든 다른 디바이스들에 통지로서 메시지를 푸시한다. 다른 디바이스들이 푸시 메시지를 수신하는 경우, 디바이스들에서의 클라이언트들은 단계(2)에서 디바이스 1 내의 서버와 정보를 동기화시킨다. 그때, 디바이스, 예를 들어, 디바이스 2가 턴오프되거나 네트워크로부터 접속해제되는 경우, 그 디바이스는 푸시 메시지를 수신하지 않는다. 따라서, 디바이스 2가 턴온되거나 디바이스들의 네트워크에 접속할 때, 디바이스 2의 클라이언트는 그룹의 다른 디바이스들 내의 서버들에게 자동으로 단계(3)에서 가장 새로운 정보의 날짜를 획득하도록 요청한다. 디바이스 2는 날짜 정보를 획득하기 위해 그룹으로부터 다른 디바이스들 중 하나, 둘 또는 그 이상을 선택할 수 있다. 선택된 디바이스들 내의 서버들은 이후 단계(4)에서 디바이스 2에 날짜를 송신한다. 디바이스 2가 가장 새로운 정보를 가지지 않는 경우, 그것은 자동으로 단계(5)에서 가장 새로운 정보를 가지는 디바이스 내의 서버와 정보를 동기화시킨다.
도 6은 전술된 피어-투-피어 기반 정보 공유 및 업데이트 시스템(500)의 보다 상세한 항목들을 도시한다. 구체적으로, 시스템 컴포넌트들 및 단계들의 보다 상세한 항목들이 기술된다. 위의 단계(1)에서, 디바이스 1은 정보의 로컬 복제본을 업데이트한다. 디바이스 1 내의 클라이언트의 공통 공유 정보 관리 컴포넌트(101)는 이후 자동으로 변경들을 체크하고, 디바이스 1 내의 서버의 통지 송신기(103)에게 자동으로 그룹 내의 다른 디바이스들에 있는 클라이언트들에 있는 통지 수신기들(105)에게 통지로서 메시지를 푸시하도록 요청한다. 다른 디바이스들 내의 클라이언트들의 통지 수신기들(105)이 푸시 메시지를 수신하는 경우, 통지 수신기들(105)은 동일한 디바이스들 내의 클라이언들의 동기화 모듈(106)에게 자동으로, 위의 단계(2)에서 디바이스 1 내의 서버와 정보를 동기화시키도록 요청한다. 동기화 모듈(106)은 디바이스 1 내의 서버의 공통 공유 정보 제공자(107)에게 요청을 송신하고, 자동으로, 디바이스 1 내의 서버의 공통 공유 정보 제공자(107)로부터 정보를 끌어오고, 이후 국부적으로 정보의 복제본을 업데이트한다.
동기화시에, 예를 들어, 디바이스 2가 턴오프되거나 네트워크로부터 접속해제되는 경우, 그것은 푸시 메시지를 유실할 수 있다. 따라서, 디바이스 2가 턴온되거나 디바이스들의 네트워크에 접속할 때, 디바이스 2 내의 공통 공유 정보 관리 컴포넌트(101)는 다른 디바이스들 내의 서버의 공통 공유 정보 제공자(107)에게 자동으로, 위의 단계(3)에서 가장 새로운 정보의 날짜를 획득하도록 요청한다. 디바이스 2는 날짜를 획득하기 위해 하나, 둘 또는 그 이상의 다른 디바이스들을 선택할 수 있다. 선택된 디바이스들 내의 서버의 공통 공유 정보 제공자(107)는 위의 단계(4)에서 디바이스 2 내의 클라이언트에 있는 동기화 모듈(106)에 날짜를 송신한다. 동기화 모듈(106)은 날짜가 디바이스 2 내의 복제본의 날짜보다 더 새로운지를 체크한다. 동기화 모듈(106)은 선택된 디바이스들에 있는 정보의 날짜들로부터 가장 새로운 날짜를 찾고, 이후 가장 새로운 날짜의 정보를 가지는 디바이스를 마킹하는데, 예를 들어, 그 디바이스를 좋은 디바이스(Good Device)로서 설정한다. 동기화 모듈(106)은 자동으로, 위의 단계(5)에서 좋은 디바이스 내의 서버와 정보를 동기화시킨다. 선택된 디바이스(좋은 디바이스)의 가장 새로운 날짜가 디바이스 2 내의 정보의 날짜보다 더 새로운 경우, 동기화 모듈(106)은 좋은 디바이스 내의 서버의 공통 공유 정보 제공자(107)에게 요청을 송신하고, 좋은 디바이스 내의 서버의 공통 공유 정보 제공자(107)로부터 정보를 끌어오고, 이후 국부적으로 정보의 복제본을 업데이트한다. 따라서, 디바이스 2가 초기 동기화 동안 오프라인이었더라도 디바이스 2의 사용자는 가장 새로운 업데이트된 정보를 잃지 않을 것이다.
그러나, 선택된 디바이스(좋은 디바이스)의 가장 새로운 날짜가 디바이스 2에서의 정보의 날짜와 동일한 경우, 동기화 모듈(106)은 선택된 디바이스들에서 정보의 날짜들로부터 가장 새로운 날짜를 다시 탐색함으로써 단계 5를 반복할 수 있다. 단계(5)를 반복하는 것은 단계의 검증으로서의 역할을 한다. 새로 발견된 날짜가 여전히 동일한 경우, 동기화는 종료될 수 있다. 새로 발견된 날짜가 이전에 발견된 날짜보다 더 오래된 경우, 단계(5) 또는 단계(3)가 반복될 수 있다.
도 7a, 7b 및 7c는 전자 디바이스들 간의 정보의 공유, 동기화 및 협업을 위한 방법(700)의 실시예를 도시한다. 방법(700)은 전술된 피어-투-피어 기반 시스템(500)에 의해 구현될 수 있다. 단계(701)에서, 제1 사용자(사용자 1)는 그의 디바이스 상의 그의 로컬 복제본 내의 정보를 업데이트한다. 단계(702)에서, 사용자의 디바이스 상의 클라이언트는 정보(예를 들어, 문서들 및/또는 데이터)가 공유용으로 마킹되어야 하는지 아닌지를 결정한다. 정보가 공유용으로 마킹되는 경우, 단계(703)에서, 클라이언트는 P2P 프로토콜을 사용하여 그룹 내의 모든 다른 디바이스들의 주소를 체크한다. 단계(704)에서, 클라이언트는 그룹 내의 다른 디바이스들에 푸시 메시지를 송신한다. 단계(705)에서, 그룹의 디바이스들에 대한 클라이언트들은 푸시 메시지가 수신되었는지를 검출한다. 푸시 메시지가 수신된 경우, 단계(711)에서, 각각의 클라이언트는 그것의 디바이스 상의 정보(예를 들어, 문서들 및/또는 데이터)의 복제본을 사용자 1의 디바이스 내의 서버로부터의 복제본과 동기화시킨다. 동기화 프로토콜은 복제본들에서의 충돌을 회피하기 위해 사용될 수 있다. P2P 프로토콜은 디바이스들 간의 정보에 대한 전송 방법을 제공한다. 사용자 1의 디바이스 내의 서버가 턴오프되거나 디바이스가 접속해제되는 경우, 클라이언트는 요구를 만족시키는(가장 새로운 정보를 가지는) 다음 서버를 선택한다. 단계(712)에서, 사용자는 자신의 디바이스 상에서 정보의 가장 새로운 복제본을 사용할 수 있다. 추가로, 단계(706)에서, 그룹의 디바이스는 (그것의 사용자에 의해) 턴온되거나 또는 네트워크 또는 디바이스들에 접속할 수 있다. 따라서, 단계(707)에서, 이 디바이스의 클라이언트는 그룹의 다른 디바이스들 상의 둘 이상의 서버들을 선택한다. 단계(708)에서, 클라이언트는 둘 이상의 서버들에서 정보 복제본의 날짜를 획득한다. 단계(709)에서, 클라이언트는 디바이스 상의 복제본과 선택된 디바이스들의 획득된 복제본들 간의 날짜들을 비교한다. 디바이스가 가장 새로운 정보(최근 날짜의 복제본)를 가지지 않는 경우, 단계(710)에서, 클라이언트는, 예를 들어, 사용자 1의 디바이스에서 업데이트된 정보를 획득하기 위해, 선택된 디바이스들에서 가장 새로운 정보를 가지는 서버를 찾는다. 서버는 사용자 1의 디바이스에 또는 동기화 단계(711) 동안 그에 따라 정보의 복제본을 업데이트한 다른 디바이스들 중 임의의 것에 속할 수 있다. 클라이언트가 단계(710)에서 가장 새로운 정보를 가지는 서버를 찾은 이후, 클라이언트는 그 서버와의 동기화 단계(711)를 수행한다.
도 8은 본원에서 개시된 정보의 공유, 동기화 및 협업을 위한 시스템 및 방법을 구현하기 위해 사용될 수 있는 모바일 통신 디바이스(800)를 도시한다. 모바일 통신 디바이스(800)는 보조(secondary) 저장소(821), 판독 전용 메모리(ROM)(822), 및 랜덤 액세스 메모리(RAM)(823)를 포함하는 메모리 디바이스들과 통신하는 프로세서(820)(중앙 처리 장치 또는 CPU로서 지칭될 수 있음)를 포함할 수 있다. 프로세서(820)는 하나 이상의 범용 CPU 칩들, 하나 이상의 코어들(예를 들어, 멀티-코어 프로세서)로서 구현될 수 있거나, 또는 하나 이상의 주문형 집적 회로(ASIC)들 및/또는 디지털 신호 프로세서(DSP)들의 일부분일 수 있다. 프로세서(820)는 본원에 기술된 방식들 중 임의의 것을 구현하도록 구성될 수 있고, 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 조합들을 사용하여 구현될 수 있다.
보조 저장소(821)는 하나 이상의 고체 상태 드라이브들, 디스크 드라이브들 및/또는 다른 메모리 타입들로 구성될 수 있고, 데이터의 비-휘발성 저장을 위해, 그리고 RAM(823)이 모든 작업 데이터를 유지할 만큼 충분히 크지 않은 경우 오버-플로우 데이터 저장 디바이스로서 사용된다. 보조 저장소(821)는 RAM(823)으로 로딩된 프로그램들이 실행을 위해 선택될 때 이러한 프로그램들을 저장하기 위해 사용될 수 있다. ROM(822)은 프로그램 실행 동안 판독되는 명령들 및 가능하게는 데이터를 저장하기 위해 사용될 수 있다. ROM(822)은 보조 저장소(821)의 더 큰 메모리 용량에 비해 작은 메모리 용량을 가질 수 있는 비-휘발성 메모리 디바이스일 수 있다. RAM(823)은 휘발성 데이터를 저장하기 위해 그리고 가능하게는 명령들을 저장하기 위해 사용될 수 있다. ROM(822) 및 RAM(823) 모두에 대한 액세스는 보조 저장소(821)에 대한 액세스보다 더 빠를 수 있다.
모바일 통신 디바이스(800)는 네트워크 액세스 포인트(850)를 통해 네트워크와 무선으로 데이터(예를 들어, 패킷들)를 통신할 수 있다. 따라서, 모바일 통신 디바이스(800)는 다른 컴포넌트들로부터 데이터(예를 들어, 무선 패킷들 또는 프레임들)를 수신하도록 구성될 수 있는 수신기(Rx)(812)를 포함할 수 있다. 수신기(812)는 데이터를 프로세싱하고 데이터가 어느 컴포넌트들에 송신될지를 결정하도록 구성될 수 있는 프로세서(820)에 커플링될 수 있다. 모바일 통신 디바이스(800)는 또한, 프로세서(820)에 커플링되고, 예를 들어, 전기 전자 기술자 협회(IEEE) 802.11, IEEE 802.16, 제3 세대 파트너쉽 프로젝트(3GPP), GSM(Global System for Mobile Communications), 또는 유사한 무선 프로토콜들과 같은 프로토콜들을 사용함으로써, 다른 컴포넌트들에 데이터를 전송하도록 구성된 송신기(Tx)(832)를 포함할 수 있다. 수신기(812) 및 송신기(832)는 무선 라디오 주파수(RF; radio frequency) 신호들을 수신하고 전송하도록 구성될 수 있는 적어도 하나의 안테나(830)에 커플링될 수 있다. 일부 실시예들에서, Tx(832) 및 Rx(812)는 Tx(832) 및 Rx(812) 모두의 기능성을 포함하는 트랜시버로 대체될 수 있다.
모바일 통신 디바이스(800)는 또한, 프로세서(820)에 커플링되며 사용자에게 그것의 출력을 디스플레이하는 디스플레이 디바이스(840)를 포함할 수 있다. 모바일 통신 디바이스(800) 및 디스플레이 디바이스(840)는 사용자에게 데이터의 표현들을 디스플레이하도록 구성될 수 있다. 디스플레이 디바이스(840)는 컬러 수퍼 트위스티드 네마틱(color super twisted nematic, CSTN) 디스플레이, 박막 트랜지스터(TFT) 디스플레이, 박막 다이오드(TFD) 디스플레이, 유기 발광 다이오드(OLED) 디스플레이, 능동-매트릭스 OLED 디스플레이, 또는 임의의 다른 디스플레이 스크린을 포함할 수 있다. 디스플레이 디바이스(840)는 컬러 또는 흑백으로 디스플레이할 수 있고, 저항성 및/또는 용량성 기술들에 기초한 터치 센서가 구비될 수 있다.
모바일 통신 디바이스(800)는, 사용자가 모바일 통신 디바이스(800)에 커맨드들을 입력할 수 있게 하는, 프로세서(820)에 커플링된 입력 디바이스(841)를 더 포함할 수 있다. 디스플레이 디바이스(840)가 터치 센서를 포함하는 경우, 디스플레이 디바이스(840)는 또한 입력 디바이스(841)로서 간주될 수 있다. 추가로 그리고/또는 대안적으로, 입력 디바이스(841)는 마우스, 트랙볼, 내장형 키보드, 외부 키보드, 및/또는 사용자가 모바일 통신 디바이스(800)와 상호작용하기 위해 사용할 수 있는 임의의 다른 디바이스를 포함할 수 있다.
실행가능한 명령들을 모바일 통신 디바이스(800)로 프로그래밍 및/또는 로딩함으로써, 프로세서(820), 메모리(821-823) 및/또는 Rx/Tx(812/832) 중 적어도 하나가 변경되어, 모바일 통신 디바이스(800)를 부분적으로 특정 기계 또는 장치, 예를 들어, 신규한 적응형의 재구성 특성들을 가지는 모바일 통신 디바이스로 변환시킨다는 점이 이해된다. 실행가능한 소프트웨어를 컴퓨터로 로딩하는 것에 의해 구현될 수 있는 기능성이 공지된 설계 규칙들에 의해 하드웨어 구현예로 전환될 수 있다는 점은 전기 엔지니어링 및 소프트웨어 엔지니어링 기술분야에서 기본적이다. 소프트웨어로 개념을 구현하는 것 대 하드웨어로 개념을 구현하는 것 간의 결정들은 통상적으로, 소프트웨어 도메인으로부터 하드웨어 도메인으로 변환(translating)하는 것과 연관된 임의의 이슈들보다는 생산될 유닛들의 설계 및 수들의 안정성의 고려사항들에 전적으로 따른다. 일반적으로, 여전히 빈번하게 변경 대상이 되는 설계는 소프트웨어로 구현되도록 선호될 수 있는데, 왜냐하면, 하드웨어 구현예의 리-스피닝(re-spinning)이 소프트웨어 설계의 리-스피닝보다 더 비싸기 때문이다. 일반적으로, 대량으로 생산될 안정적인 설계가 하드웨어로, 예를 들어, ASIC에서 구현되도록 선호될 수 있는데, 왜냐하면, 대량 생산 실행(large production runs)을 위해, 하드웨어 구현예가 소프트웨어 구현예보다 덜 비쌀 수 있기 때문이다. 종종 설계는 소프트웨어 형태로 개발되고 시험되며, 추후, 공지된 설계 규칙들에 의해, 소프트웨어의 명령들을 하드와이어링하는(hardwire) 주문형 집적 회로에서 등가적 하드웨어 구현예로 변환될 수 있다. 동일한 방식으로, 새로운 ASIC에 의해 제어되는 기계가 특정 기계 또는 장치임에 따라, 마찬가지로, 실행가능한 명령들이 프로그래밍되고 그리고/또는 로딩된 컴퓨터는 특정 기계 또는 장치로서 보일 수 있다.
몇몇 실시예들이 본 개시내용에서 제공되었지만, 개시된 시스템들 및 방법들이 본 개시내용의 사상 또는 범위로부터 벗어나지 않고 많은 다른 특정 형태들로 구현될 수 있다는 점이 이해되어야 한다. 본 예들은 제한적이 아니라 예시적인 것으로서 간주되어야 하며, 그 의도는 본원에 주어진 상세항목들로 제한되는 것이 아니다. 예를 들어, 다양한 엘리먼트들 또는 컴포넌트들이 조합되거나 또는 또다른 시스템에 통합될 수 있거나, 또는 특정 특징들이 생략되거나 구현되지 않을 수 있다.
이산적 또는 별도인 것으로서 다양한 실시예들에서 기술되고 예시된 기법들, 시스템들, 서브시스템들, 및 방법들은 본 개시내용의 범위로부터 벗어나지 않고 다른 시스템들, 모듈들, 기법들 또는 방법들과 조합되거나 통합될 수 있다. 서로 커플링되거나 직접 커플링되거나 통신하는 것으로서 도시되거나 논의된 다른 항목들은 전기적으로, 기계적으로, 또는 다른 방식으로 일부 인터페이스, 디바이스 또는 중간 컴포넌트를 통해 간접적으로 커플링되거나 통신할 수 있다. 변경, 대체 및 변형의 다른 예들은 통상의 기술자에 의해 확인가능하며, 본원에 개시된 사상 및 범위로부터 벗어나지 않고 수행될 수 있다.

Claims (33)

  1. 그룹의 멤버들 간의 정보의 공유 및 동기화를 위해 통신 디바이스에 의해 수행되는 방법으로서,
    서버 상에 위치된 정보와 상기 통신 디바이스 상에 위치된 정보를 동기화시키는 단계 - 상기 서버 상에 위치된 정보는 상기 그룹의 제2 멤버에 의해 업데이트된 데이터를 포함하고, 상기 데이터는 상기 그룹을 위해 공유가능한 것으로 마킹되고, 상기 통신 디바이스는 상기 그룹의 제1 멤버와 관련되고, 상기 통신 디바이스 상에 위치된 정보는 상기 동기화 이후에 상기 데이터를 포함함 -; 및
    상기 제1 멤버가 상기 그룹을 이탈하는 것에 응답하여 상기 통신 디바이스 상에 위치된 정보를 자동으로 삭제하는 단계 - 상기 제1 멤버가 상기 그룹을 이탈할 때, 상기 제2 멤버는 상기 그룹의 현재 멤버임 -
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 통신 디바이스를 턴온(turn on)시키거나 상기 통신 디바이스를 네트워크에 접속시킬 때, 상기 통신 디바이스 상의 대응하는 복제본보다 더 최신의 공유가능한 정보가 상기 서버에 존재하는지를 상기 서버를 이용하여 자동으로 체크하는 단계; 및
    상기 서버에서 상기 더 최신의 공유가능한 정보를 검출할 시에, 상기 통신 디바이스 상의 상기 대응하는 복제본을 상기 서버에 있는 상기 더 최신의 공유가능한 정보와 동기화시키는 단계
    를 더 포함하는 방법.
  3. 제1항에 있어서,
    상기 서버로부터 푸시(push) 메시지를 수신하는 단계 - 상기 푸시 메시지는 상기 서버에 있는 최신의 공유가능한 정보를 상기 통신 디바이스에 통지함 - ; 및
    상기 서버에 있는 상기 최신의 공유가능한 정보를 상기 통신 디바이스에 있는 대응하는 복제본과 동기화시키는 단계
    를 더 포함하는 방법.
  4. 제3항에 있어서,
    상기 푸시 메시지를 수신할 시에, 상기 푸시 메시지의 수신을 확인하는 통지 메시지를 상기 서버에 송신하는 단계
    를 더 포함하는 방법.
  5. 제1항에 있어서,
    상기 통신 디바이스를 턴온시키거나 상기 통신 디바이스를 네트워크에 접속시킬 때, 상기 통신 디바이스에 송신되도록 마킹된 푸시 메시지가 존재하는지를 상기 서버를 이용하여 자동으로 체크하는 단계; 및
    상기 통신 디바이스를 위한 것으로 마킹되어 있는 상기 푸시 메시지가 존재하는 것을 검출할 시에, 상기 서버에 있는 새로운 공유가능한 정보를 상기 통신 디바이스에 있는 대응하는 복제본과 동기화시키는 단계
    를 더 포함하는 방법.
  6. 멤버들의 그룹의 멤버들 간의 정보의 공유, 동기화 및 협업(colloboration)을 위해 통신 디바이스에 의해 수행되는 방법으로서,
    상기 통신 디바이스 상에 위치된 정보를 업데이트하는 단계;
    상기 정보가 상기 그룹의 멤버들과의 공유용으로 마킹되어 있는지를 결정하는 단계 - 상기 통신 디바이스는 상기 그룹의 제1 멤버임 -;
    상기 정보가 공유용으로 마킹되어 있다는 것을 검출할 시에, 피어-투-피어(peer-to-peer) 프로토콜을 사용하여 상기 그룹의 다른 멤버들과 연관된 디바이스들을 검출하는 단계;
    상기 정보를 업데이트하고 상기 그룹과 연관된 상기 디바이스들을 검출할 시에 자동으로, 상기 피어-투-피어 프로토콜을 통해 상기 통신 디바이스에 의하여 직접 상기 다른 멤버들의 상기 디바이스들에 푸시 메시지들을 송신하는 단계 - 상기 푸시 메시지들은 상기 통신 디바이스에 있는 상기 정보가 업데이트되었음을 상기 디바이스들에 통지함 -;
    상기 그룹의 제2 멤버가 상기 그룹을 이탈한다고 결정하는 단계 - 상기 통신 디바이스는 상기 제2 멤버의 공통 공유 파일의 로컬 복제본을 포함함 -; 및
    상기 제2 멤버가 상기 그룹을 이탈하는 것에 응답하여, 상기 제2 멤버의 상기 공통 공유 파일의 상기 로컬 복제본을 삭제하는 단계 - 상기 통신 디바이스는 상기 그룹의 현재 멤버임 -
    를 포함하는 방법.
  7. 제6항에 있어서,
    상기 피어-투-피어 프로토콜을 통해 상기 그룹의 다른 멤버의 제2 디바이스로부터 푸시 메시지를 수신하는 단계 - 상기 푸시 메시지는 상기 제2 디바이스에 있는 최신의 공유가능한 정보를 상기 통신 디바이스에 통지함 - ; 및
    상기 제2 디바이스에 있는 상기 최신의 공유가능한 정보를 상기 통신 디바이스에 있는 대응하는 복제본과 동기화시키는 단계
    를 더 포함하는 방법.
  8. 제6항에 있어서,
    상기 통신 디바이스를 턴온시키거나 상기 통신 디바이스를 상기 다른 멤버들의 상기 디바이스들 중 하나에 접속시킬 때, 상기 디바이스들 중 복수의 디바이스들을 선택하는 단계;
    상기 선택된 디바이스들에 최신의 공유가능한 정보가 존재하는지를 상기 선택된 디바이스들을 이용하여 체크하는 단계; 및
    상기 선택된 디바이스들에서 상기 최신의 공유가능한 정보를 검출할 시에, 상기 선택된 디바이스들에 있는 상기 최신의 공유가능한 정보를 상기 통신 디바이스 상의 대응하는 복제본과 동기화시키는 단계
    를 더 포함하는 방법.
  9. 제8항에 있어서,
    상기 체크하는 단계는 상기 선택된 디바이스들과 상기 통신 디바이스에 있는 공유가능한 정보의 로컬 복제본들에 대한 날짜 및 시간을 비교하는 단계를 포함하는 방법.
  10. 멤버들의 그룹의 멤버들 간의 정보의 공유, 동기화 및 협업을 지원하는 서버에 의해 수행되는 방법으로서,
    상기 그룹의 제1 멤버와 연관된 제1 디바이스로부터 업데이트된 정보를 클라우드 서비스를 통해 수신하는 단계 - 상기 업데이트된 정보는 상기 그룹을 위해 공유가능한 것으로 마킹되고 상기 제1 멤버에 의해 업데이트됨 - ;
    상기 그룹의 제2 멤버와 연관된 제2 디바이스에 푸시 메시지를 송신하는 단계 - 상기 푸시 메시지는 상기 제1 디바이스에 있는 상기 업데이트된 정보를 상기 제2 디바이스에게 통지함 - ;
    상기 업데이트된 정보를 상기 제2 디바이스에 있는 정보와 동기화시키는 단계;
    상기 그룹의 상기 제2 멤버가 상기 그룹을 이탈한다고 결정하는 단계; 및
    상기 제2 멤버가 상기 그룹을 이탈하는 것에 응답하여 상기 제2 디바이스의 상기 업데이트된 정보와 동기화된 상기 정보를 상기 제2 디바이스로부터 삭제하라는 명령을 상기 제2 디바이스에 전송하는 단계 - 상기 제1 멤버는 상기 명령이 전송될 때 상기 그룹의 현재 멤버임 -
    를 포함하는 방법.
  11. 제10항에 있어서,
    통지 메시지가 상기 제2 디바이스로부터 수신되었는지를 결정하는 단계; 및
    상기 제2 디바이스로부터 미수신된 통지 메시지를 검출할 시에, 상기 제2 디바이스를 클라우드 서비스의 데이터베이스 내의 통지되지 않은 디바이스로서 마킹하는 단계
    를 더 포함하는 방법.
  12. 제10항에 있어서,
    상기 그룹의 제3 멤버의 상기 제2 디바이스로부터 새로운 접속을 검출할 시에, 상기 제2 디바이스에 송신되도록 마킹된 푸시 메시지가 존재하는지를 체크하는 단계; 및
    상기 제2 디바이스에 대해 마킹된 푸시 메시지를 검출할 시에, 상기 서버에 있는 최신의 공유가능한 정보를 상기 제2 디바이스에 있는 대응하는 복제본과 동기화시키는 단계
    를 더 포함하는 방법.
  13. 제10항에 있어서,
    상기 그룹의 제3 멤버의 상기 제2 디바이스로부터 새로운 접속을 검출할 시에, 상기 제2 디바이스 상의 대응하는 복제본보다 더 최신의 공유가능한 정보가 상기 서버에 존재하는지를 상기 제2 디바이스를 이용하여 체크하는 단계; 및
    상기 서버에서 상기 더 최신의 공유가능한 정보를 검출할 시에, 상기 서버에서의 상기 더 최신의 공유가능한 정보를 상기 제2 디바이스 상의 대응하는 복제본과 동기화시키는 단계
    를 더 포함하는 방법.
  14. 그룹의 멤버들 간의 정보의 공유 및 동기화를 지원하는 통신 디바이스로서,
    적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서에 의한 실행을 위한 프로그래밍을 저장하는 비-일시적 컴퓨터 판독가능한 저장 매체
    를 포함하고, 상기 프로그래밍은:
    서버 상에 위치된 정보와 상기 통신 디바이스 상에 위치된 정보를 동기화시키고 - 상기 서버 상에 위치된 정보는 상기 그룹의 제2 멤버에 의해 업데이트된 데이터를 포함하고, 상기 데이터는 상기 그룹을 위해 공유가능한 것으로 마킹되고, 상기 통신 디바이스는 상기 그룹의 제1 멤버와 관련되고, 상기 통신 디바이스 상에 위치된 정보는 상기 동기화 이후에 상기 데이터를 포함함 -;
    상기 제1 멤버가 상기 그룹을 이탈하는 것에 응답하여 상기 통신 디바이스 상에 위치된 정보를 삭제하기 위한 명령들을 포함하고, 상기 제1 멤버가 상기 그룹을 이탈할 때 상기 제2 멤버는 상기 그룹의 현재 멤버인, 통신 디바이스.
  15. 제14항에 있어서,
    상기 명령들은:
    상기 통신 디바이스를 턴온시키거나 상기 통신 디바이스를 네트워크에 접속시킬 때, 상기 통신 디바이스 상의 대응하는 복제본보다 더 최신의 공유가능한 정보가 상기 서버에 존재하는지를 상기 서버를 이용하여 체크하고;
    상기 서버에서 상기 더 최신의 공유가능한 정보를 검출할 시에, 상기 통신 디바이스 상의 상기 대응하는 복제본을 상기 서버에 있는 상기 더 최신의 공유가능한 정보와 동기화시키기 위한 명령들을 포함하는 통신 디바이스.
  16. 제14항에 있어서,
    상기 명령들은:
    상기 서버로부터 푸시 메시지를 수신하고 - 상기 푸시 메시지는 상기 서버에 있는 최신의 공유가능한 정보를 상기 통신 디바이스에 통지함 - ;
    상기 서버에 있는 상기 최신의 공유가능한 정보를 상기 통신 디바이스에 있는 대응하는 복제본과 동기화시키기 위한 명령들을 포함하는 통신 디바이스.
  17. 제14항에 있어서,
    상기 명령들은:
    상기 통신 디바이스를 턴온시키거나 상기 통신 디바이스를 네트워크에 접속시킬 때, 상기 통신 디바이스를 위한 것으로 마킹된 푸시 메시지가 존재하는지를 상기 서버를 이용하여 체크하고;
    상기 푸시 메시지가 상기 통신 디바이스를 위한 것으로 마킹되어 있다는 것을 검출할 시에, 상기 서버에 있는 최신의 공유가능한 정보를 상기 통신 디바이스에 있는 대응하는 복제본과 동기화시키기 위한 명령들을 포함하는 통신 디바이스.
  18. 그룹의 멤버들 간의 정보의 공유, 동기화 및 협업을 지원하는 통신 디바이스로서,
    적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서에 의한 실행을 위한 프로그래밍을 저장하는 비-일시적 컴퓨터 판독가능한 저장 매체
    를 포함하고, 상기 프로그래밍은:
    상기 통신 디바이스 상에 위치된 정보를 업데이트하고;
    상기 정보가 상기 그룹의 멤버들과의 공유용으로 마킹되어 있는지를 결정하고 - 상기 통신 디바이스는 상기 그룹의 제1 멤버임 -;
    상기 정보가 공유용으로 마킹되어 있다는 것을 검출할 시에, 피어-투-피어 프로토콜을 사용하여 상기 그룹의 다른 멤버들과 연관된 디바이스들을 검출하고;
    상기 정보를 업데이트하고 상기 그룹의 상기 멤버들을 검출할 시에 자동으로, 상기 피어-투-피어 프로토콜을 통해 상기 다른 멤버들의 디바이스들에 직접 푸시 메시지들을 송신하고 - 상기 푸시 메시지들은 상기 통신 디바이스에 있는 정보가 업데이트되었음을 상기 다른 멤버들의 상기 디바이스들에 통지함 -;
    상기 그룹의 제2 멤버가 상기 그룹을 이탈한다고 결정하고 - 상기 통신 디바이스는 상기 제2 멤버의 공통 공유 파일의 로컬 복제본을 포함함 -;
    상기 제2 멤버가 상기 그룹을 이탈하는 것에 응답하여, 상기 제2 멤버의 상기 공통 공유 파일의 상기 로컬 복제본을 삭제하기 위한 명령들 - 상기 통신 디바이스는 상기 그룹의 현재 멤버임 - 을 포함하는 통신 디바이스.
  19. 제18항에 있어서,
    상기 명령들은:
    상기 피어-투-피어 프로토콜을 통해 상기 그룹의 다른 멤버의 디바이스로부터 푸시 메시지를 수신하고 - 상기 푸시 메시지는 상기 그룹의 상기 다른 멤버의 상기 디바이스에 있는 최신의 공유가능한 정보를 상기 통신 디바이스에 통지함 - ;
    상기 그룹의 상기 다른 멤버의 상기 디바이스에 있는 상기 최신의 공유가능한 정보를 상기 통신 디바이스에 있는 대응하는 복제본과 동기화시키기 위한 명령들을 포함하는 통신 디바이스.
  20. 제18항에 있어서,
    상기 명령들은:
    상기 통신 디바이스를 턴온시키거나 상기 통신 디바이스를 상기 그룹의 상기 다른 멤버들의 디바이스들 중 하나의 디바이스에 접속시킬 때, 상기 디바이스들 중 복수의 디바이스들을 선택하고;
    상기 디바이스들에 최신의 공유가능한 정보가 존재하는지를 상기 선택된 디바이스들을 이용하여 체크하고;
    상기 디바이스들 중 하나에서 상기 최신의 공유가능한 정보를 검출할 시에, 상기 디바이스들 중 상기 하나에 있는 상기 최신의 공유가능한 정보를 상기 통신 디바이스 상의 대응하는 복제본과 동기화시키기 위한 명령들을 포함하는 통신 디바이스.
  21. 그룹의 멤버들 간의 정보의 공유 및 동기화를 지원하는 네트워크 서버로서,
    적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서에 의한 실행을 위한 프로그래밍을 저장하는 비-일시적 컴퓨터 판독가능한 저장 매체
    를 포함하고, 상기 프로그래밍은:
    상기 그룹의 제1 멤버와 연관된 제1 디바이스로부터 업데이트된 정보를 클라우드 서비스를 통해 수신하고 - 상기 업데이트된 정보는 상기 그룹을 위해 공유가능한 것으로 마킹되고, 상기 제1 멤버에 의해 업데이트됨 -;
    상기 그룹의 제2 멤버와 연관된 제2 디바이스에 푸시 메시지를 송신하고 - 상기 푸시 메시지는 상기 제1 디바이스에 있는 상기 업데이트된 정보를 상기 제2 디바이스에게 통지함 -;
    상기 업데이트된 정보를 상기 제2 디바이스에 있는 정보와 동기화시키고;
    상기 그룹의 상기 제2 멤버가 상기 그룹을 이탈한다고 결정하고;
    상기 제2 멤버가 상기 그룹을 이탈하는 것에 응답하여 상기 제2 디바이스의 상기 업데이트된 정보와 동기화된 정보를 상기 제2 디바이스로부터 삭제하기 위한 메시지를 상기 제2 디바이스에 전송하기 위한 명령들을 포함하고, 상기 제1 멤버는 상기 메시지가 전송될 때 상기 그룹의 현재 멤버인, 네트워크 서버.
  22. 제21항에 있어서,
    상기 명령들은:
    통지 메시지가 수신되었는지를 결정하고;
    상기 제2 디바이스로부터 미수신된 통지 메시지를 검출할 시에, 상기 제2 디바이스를 클라우드 서비스의 데이터베이스에 통지되지 않은 디바이스로서 마킹하기 위한 명령들을 포함하는 네트워크 서버.
  23. 제21항에 있어서,
    상기 명령들은:
    상기 그룹의 제3 멤버의 제2 디바이스로부터 새로운 접속을 검출할 시에, 상기 제2 디바이스에 송신되도록 마킹된 푸시 메시지가 존재하는지를 체크하고;
    상기 제2 디바이스에 대해 마킹된 푸시 메시지를 검출할 시에, 상기 네트워크 서버에 있는 최신의 공유가능한 정보를 상기 제2 디바이스에 있는 대응하는 복제본과 동기화시키기 위한 명령들을 포함하는 네트워크 서버.
  24. 제21항에 있어서,
    상기 명령들은:
    상기 그룹의 제3 멤버의 제2 디바이스로부터 새로운 접속을 검출할 시에, 상기 제2 디바이스 상의 대응하는 복제본보다 더 최신의 공유가능한 정보가 상기 네트워크 서버에 존재하는지를 상기 제2 디바이스를 이용하여 체크하고;
    상기 네트워크 서버에서 상기 더 최신의 공유가능한 정보를 검출할 시에, 상기 네트워크 서버에서의 상기 더 최신의 공유가능한 정보를 상기 제2 디바이스 상의 대응하는 복제본과 동기화시키기 위한 명령들을 포함하는 네트워크 서버.
  25. 제1항에 있어서,
    상기 정보는 연락처, 달력, 문서, 프로젝트 상태, 사진들, 멀티미디어 파일, 재생 리스트, 또는 노트를 포함하는, 방법.
  26. 제1항에 있어서,
    상기 통신 디바이스 상에 위치된 정보를 업데이트하는 단계;
    상기 통신 디바이스 상에 위치된 상기 업데이트된 정보가 상기 그룹을 위해 공유용으로 마킹되어 있는지를 결정하는 단계;
    상기 통신 디바이스 상에 위치된 상기 업데이트된 정보가 공유용으로 마킹되어 있다는 것을 검출할 시에, 상기 서버 상에 위치된 정보와 업데이트된 이후의 상기 통신 디바이스 상에 위치된 상기 업데이트된 정보를 자동으로 비교하는 단계; 및
    업데이트된 이후의 상기 통신 디바이스 상에 위치된 상기 업데이트된 정보가 상기 서버 상에 위치된 정보보다 최신인 것을 검출할 시에, 업데이트된 이후의 상기 통신 디바이스 상에 위치된 상기 업데이트된 정보를 클라우드 서비스를 통해 상기 서버에 업로드하는 단계를 더 포함하는, 방법.
  27. 제1항에 있어서,
    상기 제1 멤버가 상기 그룹을 이탈하는 것에 대한 지시를 수신하는 단계를 더 포함하고, 상기 지시를 수신하면 상기 통신 디바이스 상에 위치된 정보가 자동으로 삭제되는, 방법.
  28. 제27항에 있어서,
    상기 지시는 상기 서버로부터 수신되는, 방법.
  29. 제10항에 있어서,
    상기 업데이트된 정보는 연락처, 달력, 문서, 프로젝트 상태, 사진들, 멀티미디어 파일, 재생 리스트, 또는 노트를 포함하는, 방법.
  30. 제14항에 있어서,
    상기 프로그래밍은
    상기 통신 디바이스 상에 위치된 정보를 업데이트하고;
    상기 통신 디바이스 상에 위치된 상기 업데이트된 정보가 상기 그룹의 상기 제2 멤버와의 공유용으로 마킹되어 있는지를 결정하고;
    상기 통신 디바이스 상에 위치된 상기 업데이트된 정보가 공유용으로 마킹되어 있다는 것을 검출할 시에, 상기 서버 상에 위치된 정보와 업데이트된 이후의 상기 통신 디바이스 상에 위치된 상기 업데이트된 정보를 자동으로 비교하고;
    업데이트된 이후의 상기 통신 디바이스 상에 위치된 상기 업데이트된 정보가 상기 서버 상에 위치된 정보보다 최신인 것을 검출할 시에, 업데이트된 이후의 상기 통신 디바이스 상에 위치된 상기 업데이트된 정보를 클라우드 서비스를 통해 상기 서버에 업로드하라는 명령을 더 포함하는, 통신 디바이스.
  31. 제14항에 있어서,
    상기 프로그래밍은:
    상기 제1 멤버가 상기 그룹을 이탈하는 것에 대한 지시를 수신하기 위한 명령들을 더 포함하고,
    상기 지시를 수신하면 상기 통신 디바이스 상에 위치된 정보가 삭제되는, 통신 디바이스.
  32. 제31항에 있어서,
    상기 지시는 상기 서버로부터 수신되는, 통신 디바이스.
  33. 제21항에 있어서,
    상기 업데이트된 정보는 연락처, 달력, 문서, 프로젝트 상태, 사진들, 멀티미디어 파일, 재생 리스트, 또는 노트를 포함하는, 네트워크 서버.
KR1020177014655A 2013-03-15 2014-03-14 모바일 디바이스 그룹 간의 정보의 동기화 및 협업 KR101861050B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361800586P 2013-03-15 2013-03-15
US61/800,586 2013-03-15
PCT/US2014/029433 WO2014144851A1 (en) 2013-03-15 2014-03-14 Synchronizing and collaboration of information among a mobile device group
US14/212,296 US20140280605A1 (en) 2013-03-15 2014-03-14 Systems and Methods for Automatic Sharing, Synchronizing and Collaboration of Information among Users of a Group
US14/212,296 2014-03-14

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020157023494A Division KR20150114530A (ko) 2013-03-15 2014-03-14 모바일 디바이스 그룹 간의 정보의 동기화 및 협업

Publications (2)

Publication Number Publication Date
KR20170063994A KR20170063994A (ko) 2017-06-08
KR101861050B1 true KR101861050B1 (ko) 2018-05-24

Family

ID=51533480

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020177014655A KR101861050B1 (ko) 2013-03-15 2014-03-14 모바일 디바이스 그룹 간의 정보의 동기화 및 협업
KR1020157023494A KR20150114530A (ko) 2013-03-15 2014-03-14 모바일 디바이스 그룹 간의 정보의 동기화 및 협업

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020157023494A KR20150114530A (ko) 2013-03-15 2014-03-14 모바일 디바이스 그룹 간의 정보의 동기화 및 협업

Country Status (7)

Country Link
US (1) US20140280605A1 (ko)
EP (1) EP2941848A4 (ko)
JP (2) JP6265443B2 (ko)
KR (2) KR101861050B1 (ko)
CN (1) CN105359466B (ko)
CA (1) CA2900080C (ko)
WO (1) WO2014144851A1 (ko)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013009337A2 (en) 2011-07-08 2013-01-17 Arnold Goldberg Desktop application for access and interaction with workspaces in a cloud-based content management system and synchronization mechanisms thereof
GB2500152A (en) 2011-11-29 2013-09-11 Box Inc Mobile platform file and folder selection functionalities for offline access and synchronization
US9575981B2 (en) 2012-04-11 2017-02-21 Box, Inc. Cloud service enabled to handle a set of files depicted to a user as a single file in a native operating system
GB2514947B (en) 2012-05-04 2015-06-17 Box Inc Repository redundancy implementation of a system which incrementally updates clients with events that occured via a cloud-enabled platform
US9794256B2 (en) 2012-07-30 2017-10-17 Box, Inc. System and method for advanced control tools for administrators in a cloud-based service
GB2513671A (en) 2012-08-27 2014-11-05 Box Inc Server side techniques for reducing database workload in implementing selective subfolder synchronization in a cloud-based environment
US9553758B2 (en) 2012-09-18 2017-01-24 Box, Inc. Sandboxing individual applications to specific user folders in a cloud-based service
US10235383B2 (en) 2012-12-19 2019-03-19 Box, Inc. Method and apparatus for synchronization of items with read-only permissions in a cloud-based environment
US9396245B2 (en) 2013-01-02 2016-07-19 Box, Inc. Race condition handling in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
US9953036B2 (en) 2013-01-09 2018-04-24 Box, Inc. File system monitoring in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
EP2755151A3 (en) 2013-01-11 2014-09-24 Box, Inc. Functionalities, features and user interface of a synchronization client to a cloud-based environment
EP2757491A1 (en) 2013-01-17 2014-07-23 Box, Inc. Conflict resolution, retry condition management, and handling of problem files for the synchronization client to a cloud-based platform
US9210210B2 (en) * 2013-04-18 2015-12-08 Google Inc. Permission-based snapshots for documents shared on a social media service
US10725968B2 (en) 2013-05-10 2020-07-28 Box, Inc. Top down delete or unsynchronization on delete of and depiction of item synchronization with a synchronization client to a cloud-based platform
US10846074B2 (en) * 2013-05-10 2020-11-24 Box, Inc. Identification and handling of items to be ignored for synchronization with a cloud-based platform by a synchronization client
GB2515192B (en) 2013-06-13 2016-12-14 Box Inc Systems and methods for synchronization event building and/or collapsing by a synchronization component of a cloud-based platform
US9805050B2 (en) 2013-06-21 2017-10-31 Box, Inc. Maintaining and updating file system shadows on a local device by a synchronization client of a cloud-based platform
US9535924B2 (en) 2013-07-30 2017-01-03 Box, Inc. Scalability improvement in a system which incrementally updates clients with events that occurred in a cloud-based collaboration platform
US10530854B2 (en) 2014-05-30 2020-01-07 Box, Inc. Synchronization of permissioned content in cloud-based environments
CN105578017B (zh) * 2014-10-09 2020-06-19 深圳富泰宏精密工业有限公司 拍照及照片分享系统及方法
US10242082B2 (en) * 2014-12-12 2019-03-26 Microsoft Technology Licensing, Llc Context-driven multi-user communication
US10204320B2 (en) 2015-04-30 2019-02-12 Teletracking Technologies, Inc. Integrated system for producing procedural data change sets communicated to client devices
CA2928475C (en) * 2015-04-30 2023-09-19 Teletracking Technologies, Inc. Integrated system for producing procedural data change sets communicated to multiple client devices
CN104883621A (zh) * 2015-05-14 2015-09-02 无锡华海天和信息科技有限公司 一种智能手机与智能电视机顶盒同步通讯录的方法
CN104935657A (zh) * 2015-06-15 2015-09-23 清华大学深圳研究生院 主动推送信息的方法和嵌入式节点操作系统
US9679497B2 (en) 2015-10-09 2017-06-13 Microsoft Technology Licensing, Llc Proxies for speech generating devices
US10148808B2 (en) * 2015-10-09 2018-12-04 Microsoft Technology Licensing, Llc Directed personal communication for speech generating devices
US10262555B2 (en) 2015-10-09 2019-04-16 Microsoft Technology Licensing, Llc Facilitating awareness and conversation throughput in an augmentative and alternative communication system
US10193974B2 (en) * 2015-12-17 2019-01-29 Box, Inc. Managing collaboration of shared content using collaborator indexing
US10075518B2 (en) * 2016-04-06 2018-09-11 Box, Inc. Collaborator network creation using cloud-based metadata
CN105812482B (zh) * 2016-04-21 2019-02-19 北京元心科技有限公司 通讯信息的共享方法及服务器平台
CN107341376B (zh) * 2016-04-29 2020-07-14 深圳富泰宏精密工业有限公司 图片防误传及防偷窥方法以及电子设备
US10405291B2 (en) * 2017-01-12 2019-09-03 Google Llc Base station time offset adjustment
CN108632298A (zh) * 2017-03-15 2018-10-09 长沙博为软件技术股份有限公司 一种实现网络智能多点共享大数据的方法和装置
US10057269B1 (en) * 2017-04-21 2018-08-21 InfoSci, LLC Systems and methods for device verification and authentication
CN107241264A (zh) * 2017-06-30 2017-10-10 北京金山安全软件有限公司 一种信息处理方法、装置、服务器、存储介质
CN107566478B (zh) * 2017-08-29 2020-10-16 泰康保险集团股份有限公司 数据推送方法、系统及计算机可读存储介质
KR102051396B1 (ko) * 2017-09-08 2019-12-03 충북대학교 산학협력단 다중 디바이스 간 클립보드 동기화 및 문서 공유 시스템 및 방법
US11249948B2 (en) 2017-10-31 2022-02-15 Delta Pds Co., Ltd. Smart log file management device and method for creating a system log message containing information about an update to a folder or a file folder
KR102143874B1 (ko) * 2018-10-18 2020-08-28 최재호 폴더 기반의 파일 관리 장치 및 방법
KR102155193B1 (ko) * 2018-10-18 2020-09-11 최재호 스마트 로그파일 관리 장치 및 방법
US11392548B2 (en) 2017-12-05 2022-07-19 Delta Pds Co., Ltd. Apparatus for managing folder and method for the same
US10552125B1 (en) * 2018-09-18 2020-02-04 Inductive Automation, LLC Messaging between components in graphical user interfaces for industrial control systems
CA3132398A1 (en) 2019-03-06 2020-09-10 Huawei Technologies Co., Ltd. Data synchronization in a p2p network
CN110166562B (zh) * 2019-05-24 2022-04-05 东软集团股份有限公司 数据同步的方法、装置、存储介质和电子设备
CN111163221B (zh) * 2019-12-25 2021-05-07 惠州Tcl移动通信有限公司 群组通讯录更新方法、装置、存储介质及终端设备
KR20230017241A (ko) * 2020-05-26 2023-02-03 엘지전자 주식회사 방송 수신 장치 및 그 동작방법
KR102516081B1 (ko) * 2021-08-17 2023-03-29 이보성 팀원 연락처 공유 시스템
KR102615026B1 (ko) * 2023-05-19 2023-12-27 (주)다우기술 클라우드 기반 데이터 공유 플랫폼을 이용한 업무 협업 플랫폼 운영 서버

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080104142A1 (en) 2006-10-26 2008-05-01 Samsung Electronics Co., Ltd. Method of synchronizing information shared between a plurality of universal plug and play devices and apparatus therefor
US20120298744A1 (en) 2009-04-08 2012-11-29 Research In Motion Limited System and method for managing items in a list shared by a group of mobile devices

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1145201A (ja) * 1997-05-28 1999-02-16 Toshiba Corp コンピュータシステム、同システムにおけるデータアクセス処理方法および記録媒体
US6138158A (en) * 1998-04-30 2000-10-24 Phone.Com, Inc. Method and system for pushing and pulling data using wideband and narrowband transport systems
US6938042B2 (en) * 2002-04-03 2005-08-30 Laplink Software Inc. Peer-to-peer file sharing
JP2004112119A (ja) * 2002-09-13 2004-04-08 Nec Corp 携帯電話における電話帳情報の共有方式
US7577960B2 (en) * 2003-06-19 2009-08-18 Microsoft Corporation System and method for managing cached objects using notifications bonds
US7097968B2 (en) * 2003-07-10 2006-08-29 General Atomics Methods and compositions for assaying homocysteine
US7567987B2 (en) * 2003-10-24 2009-07-28 Microsoft Corporation File sharing in P2P group shared spaces
JP2008015630A (ja) * 2006-07-03 2008-01-24 Matsushita Electric Ind Co Ltd 無線端末装置及びファイル共有方法
US7502890B2 (en) * 2006-07-07 2009-03-10 International Business Machines Corporation Method and apparatus for dynamic priority-based cache replacement
US8527660B2 (en) * 2006-12-22 2013-09-03 Palm, Inc. Data synchronization by communication of modifications
JP2009021788A (ja) * 2007-07-11 2009-01-29 Panasonic Electric Works Co Ltd 情報記憶システム
US8825758B2 (en) * 2007-12-14 2014-09-02 Microsoft Corporation Collaborative authoring modes
GB2464948A (en) * 2008-10-29 2010-05-05 Quolos Limited Online collaboration
JP4958936B2 (ja) * 2009-04-13 2012-06-20 三菱電機株式会社 空気調和システム診断装置
US8255571B2 (en) * 2009-06-30 2012-08-28 Apple Inc. Updating multiple computing devices
JP5664273B2 (ja) * 2011-01-21 2015-02-04 ソニー株式会社 無線通信装置、プログラム、および無線通信システム
CN102693235B (zh) * 2011-03-23 2015-10-28 鸿富锦精密工业(深圳)有限公司 变更设备配置文件之信息通知装置及方法
US20120284637A1 (en) * 2011-05-02 2012-11-08 John Edward Boyer Unified Virtual Group Calendar System
CN102857952B (zh) * 2011-06-30 2017-10-27 中兴通讯股份有限公司 支持家庭基站无线接入侧共享机制的配置方法及装置
TWI482031B (zh) * 2012-11-14 2015-04-21 Inst Information Industry 在雲端儲存服務下提供以檔案為關聯之社群互動方法、系統以及儲存有此方法之電腦可讀取記錄媒體
US9426216B2 (en) * 2013-03-10 2016-08-23 Dropbox, Inc. Content item sharing and synchronization system with team shared folders

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080104142A1 (en) 2006-10-26 2008-05-01 Samsung Electronics Co., Ltd. Method of synchronizing information shared between a plurality of universal plug and play devices and apparatus therefor
US20120298744A1 (en) 2009-04-08 2012-11-29 Research In Motion Limited System and method for managing items in a list shared by a group of mobile devices

Also Published As

Publication number Publication date
CA2900080A1 (en) 2014-09-18
JP2016511476A (ja) 2016-04-14
CN105359466A (zh) 2016-02-24
CN105359466B (zh) 2019-08-27
WO2014144851A1 (en) 2014-09-18
JP6265443B2 (ja) 2018-01-24
EP2941848A4 (en) 2016-06-15
EP2941848A1 (en) 2015-11-11
KR20170063994A (ko) 2017-06-08
CA2900080C (en) 2018-01-16
US20140280605A1 (en) 2014-09-18
JP2017224351A (ja) 2017-12-21
KR20150114530A (ko) 2015-10-12

Similar Documents

Publication Publication Date Title
KR101861050B1 (ko) 모바일 디바이스 그룹 간의 정보의 동기화 및 협업
US10489421B2 (en) Data synch notification using a notification gateway
US9648101B2 (en) Synchronization of web service endpoints in a multi-master synchronization environment
US11171903B2 (en) Techniques for intelligent messaging for message syncing
US9119052B2 (en) Content sharing for mobile devices
EP3479546B1 (en) Data management microservice in a microservice domain
US10997203B2 (en) Systems for allowing annotation in real time
US8209437B2 (en) Personal information management data synchronization
KR20180120225A (ko) 서비스 계층에서의 요청 처리
US20140067759A1 (en) Replicating data across data centers
US20140229436A1 (en) Method of File Synchronization and Electronic Device Thereof
US20140012813A1 (en) Method and apparatus for synchronizing personal information
US9078288B2 (en) Independent information network
WO2014206346A1 (zh) 一种终端与服务器进行同步的方法和装置
EP1840770A1 (en) A system and a method for reliable symmetric data synchronization
US10051053B2 (en) System and method for transferring and synchronizing content between electronic devices
US20200213934A1 (en) Method for the identification of a connected object in a network infrastructure
KR20140116604A (ko) 클라이언트 단말기 간의 데이터 동기화 시스템
JP2015099507A (ja) 情報処理装置、情報処理システム、情報処理方法、及び情報処理プログラム

Legal Events

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