KR101098730B1 - 클라이언트 디바이스에 동기화 통지를 제공하기 위한 방법 - Google Patents
클라이언트 디바이스에 동기화 통지를 제공하기 위한 방법 Download PDFInfo
- Publication number
- KR101098730B1 KR101098730B1 KR1020040078253A KR20040078253A KR101098730B1 KR 101098730 B1 KR101098730 B1 KR 101098730B1 KR 1020040078253 A KR1020040078253 A KR 1020040078253A KR 20040078253 A KR20040078253 A KR 20040078253A KR 101098730 B1 KR101098730 B1 KR 101098730B1
- Authority
- KR
- South Korea
- Prior art keywords
- notification
- client device
- synchronization
- syncguid
- trackingguid
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/275—Synchronous replication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/12—Arrangements for remote connection or disconnection of substations or of equipment thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/224—Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/02—Speed or phase control by the received code signals, the signals containing no special synchronisation information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/58—Message adaptation for wireless communication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
동기화 통지들을 클라이언트 디바이스에 제공하기 위한 방법이 기재된다. 본 발명은 디바이스 상태 정보를 관리한다. 관심의 이벤트가 모바일 디바이스에 발생했을 때, 서버는 디바이스가 동기화가 촉구될 필요가 있는지의 여부를 판정한다. 관심의 이벤트가 서버 관점에서 디바이스를 더 이상 업데이트하여 랜더링하지 않는지의 여부, 또는 관심의 이벤트가 발생하고 디바이스는 특정 시간 동안 서버와 연락하지 않았는지의 여부를 지시하는 파라미터는 그 디바이스에 최종 알려진 파라미터와 비교된다. 파라미터가 매치하고 현재 시간이 타임아웃 (timeout) 값 보다 더 크면, 동기화 통지가 전송된다. 파라미터들이 매치하지 않으면, 동기화 통지가 전송된다. 방법은 각 관심의 이벤트마다 반복된다.
동기화 통지
Description
도 1은 본 발명이 구현된 컴퓨터 시스템의 예를 일반적으로 도시하는 블럭도이다.
도 2는 본 발명이 동작할 수 있는 환경의 예를 일반적으로 도시하는 블럭도이다.
도 3은 동기화 통지를 클라이언트에게 제공하는 프로세스를 도시하는 흐름도이다.
도 4는 도 2의 환경에서 도 3의 프로세스의 통신 흐름을 도시하는 블럭도이다.
<주요 도면 부호 설명>
402: 스토어(store)
410: 에어 동기화 프로토콜(Air Sync Protocol)
본 발명은 일반적으로 컴퓨터 기반 통지 시스템들에 관한 것이고, 더 구체적 으로, 사용자에게 사용자 관심의 이벤트들을 통지하는 방법 및 시스템에 관한 것이다.
랩탑 컴퓨터들, 개인 디지탈 비서 (personal digital assistant) 디바이스들, 셀 폰들 등과 같은, 모바일 디바이스들의 개발 및 디플로이먼트 (deployment)와 인프라구조들에 의해, 소비자들 및 기업들은 실제 모바일 컴퓨팅, 공동 작업, 및 정보 교환의 잇점들을 점점 더 깨달아 가고 있다. 비지니스 여행자들은 더 이상 이메일 메세지들을 검색수취하고, 파일들을 다운로드하고, 또는 정보 교환을 위해, 여러 종류의 케이블들을 갖고 다니고 통신망에 단순히 연결하기 위해 이용가능한 데이타 포트(port)를 끝없이 찾아 다니지 않아도 된다. 회사들 및 홈(home) 소비자들은 더 이상 벽에 설치된 이써넷(Ethernet) 잭들의 위치에 의해 그들의 통신망들을 액세스할 수 있는 장소에 구애받지 않는다. 모임 참가자들과 친구들의 그룹들은 이제 그들 간에 케이블들을 연결하거나 어떤 기존의 통신망에 로그인하지 않고 그들 자체의 목적에 부합하는 통신망들을 형성할 수 있다.
모바일 디바이스들과 함께, 인터넷 상에서 전송되는 전자 메일("이메일") 및 인스턴트 메세징(instant messaging)과 같은 전자 메세징은, 사회에서 매우 빨리 퍼베이시브(pervasive)해지고 있을 뿐만 아니라, 그것의 약식(informality), 사용의 편리성, 및 저렴한 비용으로 인해, 다수의 개인들 및 조직들을 위한 선호된 통신 방법이 되고 있다. 그러나, 전자 메세징은 모바일 디바이스들의 사용자들이 메세지들을 수신하기 위해 그들이 연결되거나 가입한 무선망들의 범위 내에 있을 것을 요구한다. 사용자들이 범위 밖에 있다가 그 통신망으로 다시 돌아왔을 때, 또 는 처음 로그인 했을 때, 사용자들은 종종 기다리는 메세지들이 있는지 여부를 알고 싶어 한다. 추가로, 다수의 사용자들은 특정 메세지의 도착, 이벤트의 뉴스(예를 들어, 캘랜더 업데이트(calendar update)) 등과 같은 관심 이벤트들이 발생했을 때 통지되어, 사용자들이 통신망 서버에 접속해서 그 메세지/이벤트/기타를 검색수취할 수 있도록 하는 것을 원한다.
사용자가 서버와 동기화(sync)가 유지되도록 보장하는 가장 쉬운 방법은 관심 이벤트가 서버에서 발생할 때마다 클라이언트들에게 동기화 통지(sync notification(예를 들어, 핑(ping)))를 전송하는 것이다. 그 다음, 클라이언트는 그 데이타를 검색수취하기 위해 서버에 다시 접속한다. 이 방법은 다수의 통지들을 하게 하고, 추가 서버 CPU 사이클, 통신망 대역 및 클라이언트의 배터리 시간을 소비시킨다. 통신망 사용자들이 시간대, 경과 시간, 및/또는 대역 사용에 기초해서 비용이 청구되는 오늘날의 통신망 환경들에서, 통지들은 사용자들의 비용을 증가시킬 수 있다. 예를 들어, 통지들이 SMS (Short Messaging Service)을 통해 배달되면, 이 접근법은 사용자의 월 사용료를 크게 증가시키고 캐리어 리소스들( carrier resources)을 낭비할 수 있다.
산업계에서는 통지 비용을 감소시키기 위해 몇 가지 단계들을 채택했다. 일부 감소책들은 통지를 전송하기 전에 특정 시간이 경과하거나 특정 수의 항목들이 누적되도록 기다리는 단계를 포함한다. 그러나, 모든 그런 접근법들은 있을 필요가 없는 지연을 시스템에게 유발시킨다. 이러한 접근법들은 사용자가 바로 받을 수 있을 때도 5분이나 10분, 또는 그 이상을 기다리게 만든다.
본 발명은, 서버 관점에서 모바일 디바이스가 업데이트 되었는지 여부를 표시하는 모바일 디바이스 상태 정보를 관리한다. 모바일 디바이스에 관심있을 이벤트가 발생할 때, 서버는 저장된 상태를 참조해서 디바이스가 동기화를 촉구해야 할지의 여부를 판정한다.
서버는 관심 이벤트가 도착했다는 통지를 수신한다. 관심 이벤트가 서버 관점에서 디바이스를 더 이상 업데이트시키지 않았는지 여부, 또는 관심 이벤트가 발생했고 서버가 특정 시간 동안 디바이스에 의해 연락되지 않았는지 여부를 표시하는 파라미터(즉, syncGUID)는 디바이스에게 그 파라미터의 최종으로 알려진 값과 비교된다. 파라미터는 사용자/디바이스를 위해 설정 파일에 저장된다.
파라미터가 메모리에 저장된 파라미터의 최종 알려진 값과 매치하고, 현재 시간이 타임아웃 값 보다 더 크면, 동기화 통지가 전송되고 새 타임아웃 값이 세트된다. 동기화 통지가 SMTP (simple mail transfer protocol) 프로토콜을 사용해서 전송될 수 있다. 파라미터가 최종 알려진 값과 일치하지 않으면, 그 최종 알려진 값은 그 파라미터 값으로 세트되고 동기화 통지가 전송된다. 타임아웃 값은 또한 새 값으로 세트된다.
타임아웃을 위한 새 값은 현재 시간과 미리 설정된 값을 합한 것과 같도록 세트된다. 미리 설정된 값은 서버에 의해 세트된 파라미터이고, 일 실시예에서, 통신망의 신뢰 레벨에 기초해서 통상적으로 세트되고, 통지를 디바이스에게 전송하는 것을 재시도하기 위해 얼마나 기다려야 하는지를 나타낸다. 그 값은 임의의 값 에 세트될 수 있다. 1 시간 또는 2 시간의 값은 다수의 통신망들에게 충분하며, 15 분의 값이 다른 통신망들에게 필요된다.
본 발명의 추가 특징들 및 장점들은 첨부 도면들을 참조해서 진행되는 다음의 설명적 실시예들에 대한 상세한 기재로부터 명백해질 것이다.
본 발명은 사용자 디바이스가 서버와 동기화가 되지 않았으면 동기화 통지들을 통해 사용자에게 관심 이벤트들을 통지하는 프로세스를 제공한다. 본 발명은, 서버 관점에서 그 디바이스가 업데이트 되었는지 여부를 표시하는 모바일 디바이스의 상태 정보를 관리한다. 그 모바일 디바이스에 관심있는 이벤트가 발생할 때, 서버는 저장된 상태를 참조해서 그 디바이스가 동기화하도록 촉구해야 할 필요가 있는지의 여부를 판정한다. 모바일 디바이스는 서버가 그 디바이스는 동기화하기 위해 촉구되어야 한다고 판정하면 동기화되도록 촉구된다. 이 접근법을 사용해서, 사용자가 몇 시간 동안 그의 모바일 디바이스를 끄는 것과 같은 일반적 시나리오들은 클라이언트를 관리하기 위해 더욱 소수의 통지들을 요구할 것이다. 예를 들어, 사용자가 점심을 먹기 위해 나가는 동안 사용자는 몇 시간 동안 그의 모바일 디바이스를 끈다. 그 시간 동안, 그는 25 이메일들을 갖는다. 그가 그의 디바이스를 다시 가동하자마자, 그는 한 개 동기화 통지를 수신할 것이고, 그의 디바이스는 수 분 내에 업데이트될 것이다. 종래 통지 시스템들은 25 통지들을 전송하거나, 적어도 한 개 통지를 전송하기 전에 한 동안 기다릴 것이다.
본 발명은, 프로세서에 의해 실행되는, 프로그램 모듈들과 같은, 명령들을 사용해서, 셀 폰들, 핸드핼드 디바이스들, 무선 감시 디바이스들, 마이크로프로세서 기반 프로그램 가능한 소비자 전자제품들 등을 포함하는 다양한 타입들의 머신들을 채택하는 시스템에 구현될 수 있다. 일반적으로, 프로그램 모듈들은 특정 작업들을 수행하거나 특정 추상 데이타 타입들을 구현하는 루틴들, 객체들, 컴포넌트들, 데이타 구조들 등을 포함한다. "프로그램"이라는 용어는 한 개 이상의 프로그램 모듈들을 포함한다.
참조 번호들이 해당 소자들을 가리키하는 도면들을 참조하면, 본 발명은 적절한 컴퓨팅 환경에서 구현되게 설명된다. 요구 사항은 아니지만, 본 발명은, 개인 컴퓨터에 의해 실행되는, 프로그램 모듈들과 같은, 컴퓨터 실행 가능 명령들의 일반 컨텍스트로 기재될 것이다. 일반적으로, 프로그램 모듈들은 특정 작업들을 수행하거나 특정 추상 데이타 타입들을 구현하는 루틴들, 프로그램들, 객체들, 컴포넌트들, 데이타 구조들 등을 포함한다. 더욱이, 그 기술의 숙련자들이라면, 본 발명이, 핸드핼드 디바이스들, 멀티 프로세서 시스템들, 마이크로프로세서 기반 또는 프로그램 가능한 소비자 전자 제품들, 통신망 PC들, 미니 컴퓨터들, 메인프레임 컴퓨터들 등을 포함하는, 기타 컴퓨터 시스템 구조들과 함께 실시될 수 있음을 이해할 것이다. 본 발명은, 작업들이 통신망을 통해 접속된 원격 프로세싱 디바이스들에 의해 수행되는 분산 컴퓨팅 환경들에서 또한 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈들은 로컬 및 원격 메모리 스토리지 디바이스들 모두에 위치될 수 있다.
도 1은 본 발명의 일 실시예를 구현하기 위해 컴퓨팅 디바이스(100)의 예를 도시한다. 그것의 가장 기본 구조에서, 컴퓨팅 디바이스(100)는 적어도 프로세싱 유닛(102) 및 메모리(104)를 포함한다. 컴퓨팅 디바이스의 정확한 구조 및 타입에 의존해서, 메모리(104)는 휘발성(RAM과 같은), 비휘발성(ROM, 플래쉬 메모리 등과 같은), 또는 그 둘의 어떤 조합일 수 있다. 이 가장 기본 구조는 점선(106)으로 도 1에 도시된다. 추가로, 디바이스(100)는 또한 추가 특징들/기능을 갖는다. 예를 들어, 디바이스(100)는, 자기 또는 광 디스크들 또는 테입들을, 하지만 거기에 국한되지 않고, 포함하는 추가 스토리지(분리형 및/또는 비분리형)를 또한 포함할 것이다. 그런 추가 스토리지는 분리형 스토리지(108) 및 비분리형 스토리지(110)에 의해 도 1에 도시된다. 컴퓨터 스토리지 매체들은, 컴퓨터 판독 가능 명령들, 데이타 구조들, 프로그램 모듈들 또는 기타 데이타와 같은 정보 스토리지를 위한 임의의 방법 또는 기술로 구현된, 휘발성 및 비휘발성, 분리형 및 비분리형 매체들을 포함한다. 메모리(104), 분리형 스토리지(108), 및 비분리형 스토리지(110)는 모두 컴퓨터 스토리지 매체의 예들이다. 컴퓨터 스토리지 매체들은, RAM, ROM, EEPROM, 플래쉬 메모리 또는 기타 메모리 기술, CDROM, DVD, 또는 기타 광 스토리지, 자기 카세트들, 자기 테입, 자기 디스크 스토리지 또는 기타 자기 스토리지 디바이스들, 또는 원하는 정보를 저장하기 위해 사용될 수 있고 디바이스(100)에 의해 액세스될 수 있는 임의의 기타 매체를, 하지만 거기에 국한되지 않고, 포함한다. 임의의 그런 컴퓨터 스토리지 매체들은 디바이스(100)의 일부일 수 있다.
디바이스(100)는 또한 디바이스가 다른 디바이스들과 통신하도록 하는 한 개 이상의 통신 연결들(112)을 포함한다. 통신 연결들(112)은 통신 매체들의 한 예이 다. 통신 매체들은 통상적으로 컴퓨터 판독 가능 명령들, 데이타 구조들, 프로그램 모듈들, 또는 캐리어 웨이브(carrier wave)나 기타 트랜스포트 메카니즘(transport mechanism)과 같은 변조 데이타 신호의 기타 데이타를 구현하고, 임의의 정보 전달 매체들을 포함한다. "변조 데이타 신호"라는 용어는 신호에 정보를 인코딩하는 방식에서 한 개 이상의 그 자체의 특성들을 세트하거나 변경하는 신호를 의미한다. 예를 들어, 하지만 거기에 국한되지 않고, 통신 매체들은 유선망 또는 직접 유선 연결과 같은 유선 매체들, 및 음향, RF, 적외선, 및 기타 무선 매체들과 같은 무선 매체들을 포함한다. 상술된 바와 같이, 본 명세서에서 사용되는 것처럼 컴퓨터 판독 가능 매체들이라는 용어는 스토리지 매체들 및 통신 매체들 모두를 포함한다.
디바이스(100)는 또한 키보드, 마우스, 펜, 음성 입력 디바이스, 터치(touch) 입력 디바이스 등과 같은 한 개 이상의 입력 디바이스들(114)을 갖는다. 디스플래이, 스피커들, 프린터 등과 같은 한 개 이상의 출력 디바이스들(116)은 또한 포함될 수 있다. 모든 이러한 디바이스들은 그 기술 분야에 잘 알려졌고, 본 명세서에서 더 길게 기재할 필요가 없다.
디바이스(100)는 모바일 디바이스로서 구성된다. 디바이스(100)가 모바일 디바이스로 구성되는 가운데, 그 기술에 숙련된 자들이라면, 그 디바이스는 모바일 디바이스일 필요는 없음을 인식할 것이다; 그것은 데스크탑 디바이스일 수도 있다. 디바이스(100)는 배터리 팩(battery pack), 연료 셀(fuel cell) 등과 같은, 포터블(portable) 전원 소스(120)가 제공된다. 전원 소스(120)는, 유선망에 접속하기 위 한 AC 어뎁터 또는 전원 도킹 크래들(powered docking cradle)과 같은, 빌트-인(built-in) 배터리들/연료 셀을 오버라이드(override) 또는 재충전하는 외부 전원 소스를 더 포함할 것이다. 모바일 디바이스(100)는 상이한 타입들의 무선망들과 무선 통신하기 위한 통신망 인터페이스 카드(NIC)를 더 포함할 수 있다. NIC는 적절한 주파수 채널을 통해 무선으로 데이타를 전송하기 위한 안테나에 연결되는 전송기를 포함한다. 수신기는 또한, 디바이스가 통신하고 있는 통신망들로부터 무선 전송된 통신 패킷들을 수신하는 안테나에 연결된다. 통신망 인터페이스 모듈 카드 및 안테나는 통신 연결들(112)의 일부이다. 통신망 인터페이스 모듈의 인터페이스 타입 및 물리 구조는 본 발명에 중요하지 않다. 예를 들어, 인터페이스 타입은 PCI 또는 다른 타입일 수 있고, 통신망 인터페이스 모듈은 분리된 카드에 있을 필요가 없다. 그것은 컴퓨터의 마더보드(motherboard)에 포함되거나 또는 미래에는 프로세서 내에 구성되는 것도 가능할 것이다.
무선망 인터페이스 모듈을 통해, 모바일 디바이스(100)는 상이한 타입들의 무선망들과 통신할 수 있다. 예를 들어, 모바일 디바이스(100)는 액세스 포인트(access point)를 통해 인프라구조 통신망에 무선 연결될 수 있다. 모바일 디바이스(100)는 또한 기타 무선 디바이스들을 포함하는 에드혹(ad hoc) 통신망으로서 또한 참조될 수 있는 피어-투-피어(peer-to-peer) 통신망의 일부일 수 있다.
다음 설명에서, 본 발명은, 달리 지시되지 않는 한, 한 개 이상의 컴퓨터들에 의해 수행되는 작업들의 동작들 및 심볼릭 표현들을 참조해서 기재될 것이다. 그렇게, 때때로 컴퓨터 실행되는 것으로 언급되는 그런 동작들 및 작업들은 컴퓨터 의 프로세싱 유닛에 의해 구조화된 형태로 데이타를 나타내는 전기 신호들을 조작(manipulation)하는 것을 포함함을 이해할 것이다. 그 기술의 숙련자들이 쉽게 이해할 수 있는 방식으로 컴퓨터 작업을 재구성하거나 그렇지 않으면 변경하는, 이 조작은 데이타를 변환하거나 컴퓨터의 메모리 시스템의 위치들에 데이타를 유지한다. 데이타가 유지되는 데이타 구조들은 데이타 포맷에 의해 정의된 특정 특성들을 갖는 메모리의 물리 위치들이다. 그러나, 본 발명이 앞의 컨텍스트로 기재되는 가운데, 그 기술의 숙련자들이라면 본 명세서에 기재된 다양한 동작들 및 작업이 또한 하드웨어로 구현 가능할 수 있음을 이해할 것처럼, 그것은 제한적일 의도는 아니다.
본 발명이 동작하는 환경의 일 예(200)가 도 2에 도시된다. 익스체인지(Exchange) 이메일 서버(202)는 본 발명을 기재하기 위해 사용될 것이다. 익스체인지는 마이크로소프트사에 의해 생산된 이메일 서버이다. 익스체인지가 사용되는 가운데, 본 발명은 인스턴트 메세징 서버들을 포함하는 기타 메세징 서버들과 함께 사용될 수 있다. 익스체인지 서버(202)는 유선망(208) 상의 디바이스들(204,206), 및 무선망(218) 범위 내에서 디바이스들(210-216)과 통신한다. 도 2에 도시된 바와 같이, 모바일 디바이스(216)는 통신망(218)의 범위에 있지 않다.
도 3을 참조하면, 서버(202)는 사용자를 위한 관심 이벤트가 발생했을 때 감지한다. 관심 이벤트는 이메일 도착, 새로운 또는 편집된 캘랜더 항목, 질의에 대한 답신, 트래픽(traffic) 업데이트, 인스턴트 메세징 등일 수 있다. 디바이스/사용자 설정 파일은 사용자를 위해 검색수취된다(단계(300)). 디바이스/사용자 설정 파일은 전화 번호(적용가능하다면), 사용자 이름, 및 사용자에 대한 기타 사항들을 갖는다. 디바이스/설정 파일에서 한 파라미터는 디바이스 상태 표현을 제공하고, 관심 이벤트가 서버 관점에서 더 이상 디바이스를 업데이트하지 않는지의 여부, 또는 관심 이벤트가 발생하고 서버가 특정 시간 동안 디바이스에 의해 연락되지 않았는지의 여부의 표시를 제공한다.
디바이스가, 서버가 아는 한, 서버와 완전히 동기화되었을 때(아래 기술된 바와 같이 바로 동기화 통지를 트리거링(triggering) 이벤트의 가능한 예를 제외함) 업데이트된다. 디바이스는 동기화 통지가 디바이스에 전송되어 서버와 동기화함을 알릴 때 동기화가 임박한 것이지만, 디바이스는 아직 동기화를 수행한 것은 아니다. 주로 스푸핑/리플레이(spoofing/replay) 어택들을 방지하기 위해 syncGUID라고 불리우는 파라미터가 사용될 수 있다. syncGUID는 동일 세만틱을 갖기 위해 발생한다. 디바이스에 대한 syncGUID는 서버와의 각각의 성공적인 디바이스 동기화 후에 업데이트된다. 디바이스/사용자 설정 파일은 syncGUID 또는 syncGUID로의 링크를 포함한다. 본 명세서에 사용된 바와 같이, syncGUID는 디바이스 상태 표현을 제공하는 파라미터를 표시하기 위해 사용될 것이고, 관심 이벤트가 서버 관점에서 디바이스를 더 이상 업데이트시키지 않았는지의 여부, 또는 관심 이벤트가 발생하고 서버가 특정 시간 동안 디바이스에 의해 연락되지 않았는지의 여부를 표시한다.
서버는, 설명 목적으로 trackingGUID이라고 명칭된, 각 디바이스에 대해 "최종 알려진" syncGUID들의 표를 메모리에 관리한다. syncGUID가, 주어진 디바이스 에 대해 trackingGUID와 매치하면, 디바이스가 최종 이벤트/통지가 프로세스된 이후 수행하지 않았다고 결론지을 수 있다. 이것은, 디바이스가 임박한 동기화 상태에 있음을 의미한다. GUID들이 매치하지 않으면, 디바이스가 바로 통지를 트리거링한 이벤트 이전의 업데이트 상태에 있음을 나타내는, 디바이스가 최종 이벤트/통지가 프로세스된 이후 동기화가 수행되었다고 결론지을 수 있다.
서버는 사용자가 그 메세지를 검색수취했는지 여부를 보기 위해 체크한다. 사용자가 그 메세지를 검색수취했으면, 동기화 통지는 전송되지 않는다. 사용자가 그 메세지를 검색수취하지 않았으면, 다음 단계들이 수행된다. 사용자 설정 파일에 리스트된 각각의 디바이스에 대해, trackingGUID가 syncGUID에 비교된다. trackingGUID가 syncGUID와 동일하지 않으면, trackingGUID는 syncGUID에 동일하게 세트된다(단계(302)). 타임아웃 값은 현재 시간과 X 분을 합한 시간에 세트된다(단계(304)). X 분은 서버에 의해 세트되는 파라미터이고, 일 실시예에서, 통신망(208,218)의 신뢰 레벨에 기초해서 통상적으로 세트된다. 예를 들어, 통신망이 신뢰적이지 않고 메세지들이 드랍핑(dropping)되면, X 파라미터는 얼마나 오랫 동안 디바이스에 통지 전송을 재시도하기 위해 기다려야 하는가를 나타낸다. X 파라미터의 값은 임의의 값으로 세트될 수 있다. 1 내지 2 시간의 값은 다수의 통신망들에게 충분하고, 15 분의 값은 다른 통신망들을 위해 필요된다. 일단 타임아웃 값이 세트되면, 동기화 통지는 디바이스에 전송된다(스텝(306)).
trackingGUID가 syncGUID와 동일하면, 현재 시간은 타임아웃 시간과 비교된다. 시간이 타임아웃 시간보다 적으면, 동기화 통지는 전송되지 않는다. 시간이 타임아웃 값보다 크면, 동기화 통지는 전송되고(단계(308)), 새 타임아웃 값이 세트된다(단계(310)). 타임아웃 값은 상술된 바와 같이 현재 시간과 X 분의 합으로 세트된다. 도 3은 시간이 타임아웃 값보다 적으면 다른 이벤트가 발생하기를 기다리는 것을 나타내는 가운데, 다른 경우는, 시간이 타임아웃 값보다 같거나 클 때 사용자가 메세지를 검색수취했는지를 판정하는 것이고, 그 다음, 사용자가 인터림(interim) 시간 동안 메세지를 검색수취하지 않았으면 단계들(308,310)을 수행한다.
도 4를 참조하면, 프로세스의 구현이 도 2의 익스체인지(Exchange) 서버(202) 및 디바이스(216)를 사용해서 도시된다. 이메일과 같은 관심 이벤트는 서버(202)에 도착하고 스토어(store)(402)에 저장된다. 스토어는 이벤트를 지원하는 임의의 정보 스토어를 나타낸다. 이벤트의 도착은 모듈(406)에 전송되는 트리거(404)를 생성한다. 모듈(406)은 트리거(404)를 수신한 후에 단계들(300 내지 310)의 프로세스를 수행한다. 적용가능하면, 동기화 통지(408)는 SMS를 통해 디바이스(216)으로 전송된다. 단계들(300 내지 310)의 프로세스를 따르면, 통지들(408)은 디바이스(216)가 동기화될 때까지 디바이스(216)에 전송된다. 익스체인지(Exchange) 서버(202)는, 디바이스들이(예를 들어, 포켓 PC들 및 전화들) 디바이스들 및 모듈(406)이 데이타를 전송하고 검색수취하기 위해 읽고 쓰는 스토어(store)(402)로부터 데이타를 검색수취하기 위해 통신하는 에어 동기화 프로토콜(air sync protocol)(410)을 갖는다. 일단 디바이스(216)가 라인(412)에 의해 나타낸 것처럼 서버와 동기화하면, 에어 동기화 프로토콜은 라인(414)에 의해 나타낸 것처럼 디바이스/사용자 설정 파일에 syncGUID를 업데이트한다.
동기화 통지 타입은 텍스트 메세지이거나, 디바이스 타입에 기초할 수 있다. 디바이스가 이미지 랜더링(image rendering)을 지원하면 동기화 통지는 그래픽 이미지 또는 텍스트 이미지의 형태를 일 수 있고, 단지 텍스트 랜더링만 지원하는 디바이스는 단지 텍스트 기반의 동기화 통지들을 수신할 것이다. 예를 들어, 관심 이벤트가 사용자 캘런더의 매일 써머리(summary)이면, 그 써머리의 그래픽 이미지는 디바이스가 그래픽 랜더링을 지원하면 전송된다. 텍스트 써머리는 디바이스가 텍스트 랜더링만을 지원하면 전송된다.
일 실시예에서, 사용자 세트가능한 필터들은 언제 동기화 통지가 전송되는지를 결정하기 위해 사용된다. 이런 필터들은 특정 타입들의 통지들을 즉시 전송하고, 다음 타임아웃 이벤트 이후에 다른 타입들의 통지들을 전송하고, 비지니스 시간 동안에만 또는 오프(off) 시간 동안에만 통지들을 전송하는 등을 위해 셋업될 수 있다. 모듈(406)은 필터 셋팅에 따라 동기화 통지들을 전송한다. 필터 셋팅은 디바이스/사용자 설정 파일 또는 분리된 파일에서 저장될 수 있다.
앞에서 디바이스에 동기화 통지들을 제공하는 방법이 기재된 것을 볼 수 있다. 본 발명은 디바이스 상태 정보를 관리한다. 관심 이벤트가 모바일 디바이스에 대해 발생할 때, 서버는 디바이스가 동기화를 위해 촉구될 필요가 있는지 여부를 판정한다. 디바이스는 서버가 디바이스는 동기화가 촉구될 필요가 있다고 판정하면 동기화가 촉구된다. 이 방법은 종래 시스템들보다 통신망 리소스들의 더욱 효율적 사용을 하게 하고, 시스템에 추가 지연을 초래하지 않고 더 낮은 최종 사용 자 비용을 제공한다.
본 발명의 원칙들이 적용될 수 있는 다수의 가능한 실시예들의 관점에서, 도면들에 대해 본 명세서에서 기재된 실시예는 설명을 위한 것일 뿐이고 본 발명의 범위를 제한하는 것으로 받아들여져서는 안됨을 인식해야 한다. 예를 들어, 그 기술의 숙련자들이라면 소프트웨어에서 나타난 설명적 실시예들의 소자들이 하드웨어에서 구현될 수 있고, 그 반대도 가능하며, 설명된 실시예는 본 발명의 취지에서 벗어나지 않고 배치 및 상세성에서 수정될 수 있다. 그러므로, 본 명세서에서 기재된 바와 같이 본 발명은 다음의 청구범위와 그것의 임의의 동격들의 범위 내에 올 수 있는 모든 그런 실시예들을 고려한다.
서버 관점에서 모바일 디바이스가 업데이트되었는지를 표시하는 모바일 디바이스 상태 정보를 메모리에 저장 관리하여, 모바일 디바이스 사용자에게 관심 있을 이벤트가 발생했을 시에, 서버는 저장된 모바일 디바이스 업데이트 상태를 참조해서 필요한 조건이 만족했을 때 동기화 통지를 보내고 동기화를 수행한다.
Claims (22)
- 클라이언트 디바이스에 동기화 통지(sync notification)를 제공하기 위한 방법으로서,관심 이벤트가 수신되었다는 통지를 서버에 의해 수신하는 단계;상기 서버가 상기 통지를 수신하는 것에 응답하여, 상기 클라이언트 디바이스의 상태를 판정하는 단계 - 상기 상태는 상기 클라이언트 디바이스가 미결 동기화 통지들을 갖고 있는지의 여부를 지시하며, 상기 상태는 trackingGUID 및 syncGUID에 기초하여 판정됨 -;수신된 통지의 수신 전에 상기 클라이언트 디바이스가 미결 동기화 통지를 갖고 있지 않다는 것을 상기 클라이언트 디바이스의 상태가 지시하는 경우에:trackingGUID를 syncGUID와 동일하게 셋팅하는 단계 - 상기 syncGUID는 상기 클라이언트 디바이스의 각각의 성공적인 디바이스 동기화 후에 업데이트됨 -;타임아웃을 현재 시간과 미리 설정된 값의 합과 동일하게 셋팅하는 단계; 및상기 동기화 통지를 상기 클라이언트 디바이스로 전송하는 단계; 및상기 클라이언트 디바이스가 적어도 하나의 미결 동기화 통지를 갖는다는 것을 상기 클라이언트 디바이스의 상태가 지시하는 경우에:상기 현재 시간이 상기 타임아웃보다 작은 경우에 상기 동기화 통지를 상기 클라이언트 디바이스로 전송하지 않는 단계 - 상기 타임아웃은 동기화 통지들 사이의 최대 시간을 결정하는 데 사용됨 -; 및상기 현재 시간이 상기 타임아웃보다 큰 경우에 상기 동기화 통지를 상기 클라이언트 디바이스로 전송하는 단계를 포함하는 방법.
- 제1항에 있어서,상기 trackingGUID가 상기 syncGUID와 동일하고, 상기 현재 시간이 상기 타임아웃보다 큰 경우에, 상기 동기화 통지를 상기 클라이언트 디바이스로 전송하는 단계를 더 포함하는 방법.
- 제2항에 있어서,상기 타임아웃을 상기 현재 시간과 상기 미리 설정된 값의 합과 동일하게 셋팅하는 단계를 더 포함하는 방법.
- 제1항에 있어서,상기 trackingGUID와 상기 syncGUID 중의 적어도 하나를 갖는 디바이스/사용자 설정 파일을 수신하는 단계를 더 포함하는 방법.
- 제4항에 있어서,상기 디바이스/사용자 설정 파일로부터 상기 trackingGUID와 상기 syncGUID 중의 상기 적어도 하나를 읽는 단계를 더 포함하는 방법.
- 제1항에 있어서,상기 미리 설정된 값은 15 분인, 방법.
- 제1항에 있어서,상기 미리 설정된 값은 1 내지 2 시간의 범위에 있는, 방법.
- 제1항에 있어서,상기 동기화 통지를 전송하는 단계는 SMTP(simple mail transfer protocol) 프로토콜을 사용해서 상기 동기화 통지를 전송하는 단계를 포함하는, 방법.
- 제1항에 있어서,상기 클라이언트 디바이스가 상기 관심 이벤트를 수신했는지를 판정하는 단계를 더 포함하는 방법.
- 제1항에 있어서,관심 이벤트가 수신되었다는 통지를 수신하는 상기 단계는 트리거(trigger) 이벤트를 수신하는 단계를 포함하는, 방법.
- 클라이언트 디바이스에 동기화 통지를 제공하기 위한 시스템으로서,메모리; 및프로세서를 포함하고,상기 프로세서는관심 이벤트가 수신되었다는 통지를 수신하는 단계;상기 통지의 수신에 응답하여, 상기 클라이언트 디바이스의 상태를 판정하는 단계 - 상기 상태는 수신된 통지의 수신 전에 상기 디바이스가 미결 동기화 통지들을 갖고 있는지의 여부를 지시하며, 상기 상태는 trackingGUID 및 syncGUID에 기초하여 판정됨 -;현재 시간이 통신망의 신뢰 레벨에 기초하여 설정된 타임아웃보다 작은지를 판정하는 단계 - 상기 타임아웃은 상기 통지의 상기 디바이스로의 전송을 재시도하기 위해 얼마나 오래 기다려야 하는지를 지시함 -;상기 수신된 통지의 수신 전에 상기 클라이언트 디바이스가 적어도 하나의 미결 동기화 통지를 갖고 있다는 것을 상기 클라이언트 디바이스의 상태가 지시하고, 상기 현재 시간이 상기 타임아웃보다 작지 않은 경우에, 상기 동기화 통지를 상기 클라이언트 디바이스로 전송하는 단계; 및상기 수신된 통지의 수신 전에 상기 클라이언트 디바이스가 적어도 하나의 미결 동기화 통지를 갖고 있다는 것을 상기 클라이언트 디바이스의 상태가 지시하고, 상기 현재 시간이 상기 타임아웃보다 작은 경우에, 상기 동기화 통지를 상기 클라이언트 디바이스로 전송하지 않는 단계를 수행하도록 구성되는 시스템.
- 제11항에 있어서,상기 프로세서는상기 trackingGUID가 상기 syncGUID와 동일하지 않은 경우에,상기 trackingGUID를 상기 syncGUID와 동일하게 셋팅하는 단계;타임아웃을 상기 현재 시간과 미리 설정된 값의 합과 동일하게 셋팅하는 단계; 및상기 동기화 통지를 상기 클라이언트 디바이스로 전송하는 단계를 포함하는 단계들을 수행하도록 더 구성되는 시스템.
- 제12항에 있어서,상기 프로세서는 상기 trackingGUID가 상기 syncGUID와 동일한지를 판정하는 단계를 포함하는 단계를 수행하도록 더 구성되는 시스템.
- 제13항에 있어서,상기 프로세서는 상기 타임아웃을 상기 현재 시간과 상기 미리 설정된 값의 합과 동일하게 셋팅하는 단계를 포함하는 단계를 수행하도록 더 구성되는 시스템.
- 제14항에 있어서,상기 미리 설정된 값은 15 분인, 시스템.
- 제14항에 있어서,상기 미리 설정된 값은 1 내지 2 시간의 범위에 있는, 시스템.
- 제11항에 있어서,상기 프로세서는 상기 trackingGUID와 상기 syncGUID 중의 적어도 하나를 갖는 디바이스/사용자 설정 파일을 수신하는 단계를 포함하는 단계를 수행하도록 더 구성되는 시스템.
- 제17항에 있어서,상기 프로세서는 상기 디바이스/사용자 설정 파일로부터 상기 trackingGUID와 상기 syncGUID 중의 상기 적어도 하나를 읽는 단계를 포함하는 단계를 수행하도록 더 구성되는 시스템.
- 제11항에 있어서,상기 동기화 통지를 전송하는 단계는 SMTP 프로토콜을 사용하여 상기 동기화 통지를 전송하는 단계를 포함하는, 시스템.
- 제11항에 있어서,상기 프로세서는 상기 클라이언트 디바이스가 상기 관심 이벤트를 수신했는지를 판정하는 단계를 포함하는 단계를 수행하도록 더 구성되는 시스템.
- 제11항에 있어서,관심 이벤트가 수신되었다는 통지를 수신하는 상기 단계는 트리거(trigger) 이벤트를 수신하는 단계를 포함하는, 시스템.
- 클라이언트 디바이스에 동기화 통지를 제공하기 위한 방법으로서,관심 이벤트가 수신되었다는 통지를 컴퓨터에 의해 수신하는 단계;상기 통지에 응답하여, 상기 컴퓨터에 의해 상기 클라이언트 디바이스의 디바이스/설정 파일을 검색 수취하는 단계 - 상기 디바이스/설정 파일은 syncGUID 및 trackingGUID를 포함하고, 상기 syncGUID는 상기 클라이언트 디바이스의 상태를 지시하기 위해 상기 클라이언트 디바이스의 각각의 성공적인 디바이스 동기화 후에 업데이트되며, 상기 trackingGUID는 상기 클라이언트 디바이스에 대한 최종 공지된 syncGUID와 동일하게 셋팅됨 -;상기 trackingGUID에 기초하여, 수신된 통지의 수신 전에 상기 클라이언트 디바이스의 상태를 판정하는 단계 - 상기 trackingGUID가 상기 syncGUID와 동일하지 않을 때, 상기 클라이언트 디바이스는 이전 통지가 처리된 이후에 상기 클라이언트 디바이스가 동기화를 수행하였음을 지시하는 최신 상태에 있고, 상기 trackingGUID가 상기 syncGUID와 동일할 때, 상기 클라이언트 디바이스는 상기 이전 통지가 처리된 이후에 상기 클라이언트 디바이스가 동기화를 수행하지 않았음을 지시하는 미결 동기화 상태에 있음 -;상기 수신된 통지의 수신 전의 상기 클라이언트 디바이스의 결정된 상태가 상기 최신 상태일 때, 상기 동기화 통지를 상기 클라이언트 디바이스로 전송하고, 상기 trackingGUID를 상기 syncGUID와 동일하게 리셋팅하는 단계; 및상기 수신된 통지의 수신 전의 상기 클라이언트 디바이스의 결정된 상태가 상기 미결 동기화 상태일 때, 상기 동기화 통지를 상기 클라이언트 디바이스로 전송하지 않는 단계를 포함하는 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/719,866 | 2003-11-21 | ||
US10/719,866 US7925754B2 (en) | 2003-11-21 | 2003-11-21 | Method and computer program product to provide synch notifications to client devices |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110022060A Division KR101037233B1 (ko) | 2003-11-21 | 2011-03-11 | 클라이언트 디바이스에 동기화 통지를 제공하기 위한 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050049334A KR20050049334A (ko) | 2005-05-25 |
KR101098730B1 true KR101098730B1 (ko) | 2011-12-23 |
Family
ID=34435814
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020040078253A KR101098730B1 (ko) | 2003-11-21 | 2004-10-01 | 클라이언트 디바이스에 동기화 통지를 제공하기 위한 방법 |
KR1020110022060A KR101037233B1 (ko) | 2003-11-21 | 2011-03-11 | 클라이언트 디바이스에 동기화 통지를 제공하기 위한 방법 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110022060A KR101037233B1 (ko) | 2003-11-21 | 2011-03-11 | 클라이언트 디바이스에 동기화 통지를 제공하기 위한 방법 |
Country Status (5)
Country | Link |
---|---|
US (3) | US7925754B2 (ko) |
EP (1) | EP1533717B1 (ko) |
JP (1) | JP4546801B2 (ko) |
KR (2) | KR101098730B1 (ko) |
CN (1) | CN1620059B (ko) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6360221B1 (en) | 1999-09-21 | 2002-03-19 | Neostar, Inc. | Method and apparatus for the production, delivery, and receipt of enhanced e-mail |
US20040024910A1 (en) * | 2001-06-01 | 2004-02-05 | Marl Coyle B. | Adaptive synchronization of service data |
US7275073B2 (en) * | 2003-05-07 | 2007-09-25 | Good Technology, Inc. | System and method for notifying mobile devices based on device type and network capabilities |
US7925754B2 (en) | 2003-11-21 | 2011-04-12 | Microsoft Corporation | Method and computer program product to provide synch notifications to client devices |
US20070190978A1 (en) * | 2005-01-13 | 2007-08-16 | Ianywhere Solutions, Inc. | System and Methodology for Extending Enterprise Messaging Systems to Mobile Devices |
US7685291B2 (en) | 2005-11-08 | 2010-03-23 | Mediatek Inc. | Messaging service interoperability methods and related devices |
CN100450108C (zh) * | 2006-03-23 | 2009-01-07 | 华为技术有限公司 | 一种采用数据同步处理电子邮件的系统、装置及方法 |
US8478310B2 (en) | 2006-10-05 | 2013-07-02 | Verizon Patent And Licensing Inc. | Short message service (SMS) data transfer |
CN1997015B (zh) * | 2006-11-24 | 2011-04-20 | 华为技术有限公司 | 缓存应用方法与装置以及文件传输系统 |
KR101280437B1 (ko) * | 2007-01-04 | 2013-06-28 | 엘지전자 주식회사 | 이동통신 단말기 및 데이터 동기화 방법 |
US20080183623A1 (en) * | 2007-01-29 | 2008-07-31 | Zhangwei Xu | Secure Provisioning with Time Synchronization |
US9009292B2 (en) * | 2007-07-30 | 2015-04-14 | Sybase, Inc. | Context-based data pre-fetching and notification for mobile applications |
US8204870B2 (en) * | 2007-08-03 | 2012-06-19 | Sybase, Inc. | Unwired enterprise platform |
US20090327354A1 (en) * | 2008-06-26 | 2009-12-31 | Microsoft Corporation | Notification and synchronization of updated data |
KR101289944B1 (ko) | 2008-12-12 | 2013-07-26 | 엘지전자 주식회사 | 초고처리율 무선랜 시스템에서 채널 추정 방법 및 이를 위한 장치 |
US8676914B2 (en) * | 2010-03-04 | 2014-03-18 | Canon Kabushiki Kaisha | Synchronizing services across network nodes |
CN102611724B (zh) * | 2011-01-25 | 2015-04-22 | 中国移动通信集团公司 | 服务器通知数据同步及同步服务器迁移方法、系统及装置 |
US9294565B2 (en) * | 2011-07-12 | 2016-03-22 | Microsoft Technology Licensing, Llc | Efficient data access on a shared data network |
KR101383341B1 (ko) * | 2011-11-25 | 2014-04-14 | 건국대학교 산학협력단 | 이기종 기반 소셜미디어 응용을 위한 업데이트 주기를 다이나믹하게 조정하는 시스템 및 그 방법 |
US10210480B2 (en) | 2012-05-31 | 2019-02-19 | Apple Inc. | Avoiding a redundant display of a notification on multiple user devices |
KR102015534B1 (ko) | 2012-12-24 | 2019-08-28 | 삼성전자주식회사 | 복수의 단말들간의 메시지 싱크 방법, 기계로 읽을 수 있는 저장 매체 및 서버 |
US10530649B2 (en) * | 2015-01-15 | 2020-01-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Event signaling in a wireless backhaul network |
WO2017197010A1 (en) | 2016-05-10 | 2017-11-16 | Google Llc | Implementations for voice assistant on devices |
EP3455747B1 (en) | 2016-05-13 | 2021-07-28 | Google LLC | Voice-controlled closed caption display |
CN108418746B (zh) * | 2018-02-13 | 2020-06-12 | 论客科技(广州)有限公司 | 一种邮件同步方法、装置与计算机可读存储介质 |
US11082514B2 (en) | 2019-05-24 | 2021-08-03 | International Business Machines Corporation | Push notification management |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030004917A1 (en) * | 2001-06-27 | 2003-01-02 | Microsoft Corporation | Method and system for processing notifications |
WO2003083667A1 (en) * | 2002-03-29 | 2003-10-09 | Good Technology, Inc. | System and method for full wireless synchronization of a data processing apparatus with a data service |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE431104B (sv) * | 1982-05-27 | 1984-01-16 | Akab Of Sweden Ab | Fallformningsdon fallformningsdon |
US4454174A (en) * | 1982-05-31 | 1984-06-12 | Hakko Co., Ltd. | Method for lining pipes of a pipeline |
US6044205A (en) * | 1996-02-29 | 2000-03-28 | Intermind Corporation | Communications system for transferring information between memories according to processes transferred with the information |
US5862325A (en) * | 1996-02-29 | 1999-01-19 | Intermind Corporation | Computer-based communication system and method using metadata defining a control structure |
US5918013A (en) * | 1996-06-03 | 1999-06-29 | Webtv Networks, Inc. | Method of transcoding documents in a network environment using a proxy server |
JP3781213B2 (ja) | 1996-06-20 | 2006-05-31 | ソニー株式会社 | 電子メールシステム、コンピユータ装置及び着信通知方法 |
US6064646A (en) * | 1997-09-26 | 2000-05-16 | Delco Electronics Corporation | Data communication apparatus and method |
US6295541B1 (en) * | 1997-12-16 | 2001-09-25 | Starfish Software, Inc. | System and methods for synchronizing two or more datasets |
EP1093626A1 (en) * | 1998-07-08 | 2001-04-25 | BRITISH TELECOMMUNICATIONS public limited company | Requirements matching |
US6449622B1 (en) * | 1999-03-08 | 2002-09-10 | Starfish Software, Inc. | System and methods for synchronizing datasets when dataset changes may be received out of order |
WO2000067106A1 (en) | 1999-05-05 | 2000-11-09 | Contact Networks, Inc. | Automatically generating a request to an online service utilizing personal information maintained by a management application |
US6510439B1 (en) * | 1999-08-06 | 2003-01-21 | Lucent Technologies Inc. | Method and system for consistent update and retrieval of document in a WWW server |
US6341316B1 (en) * | 1999-09-10 | 2002-01-22 | Avantgo, Inc. | System, method, and computer program product for synchronizing content between a server and a client based on state information |
US6882659B1 (en) * | 1999-09-20 | 2005-04-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Wide area network synchronization |
US6694336B1 (en) * | 2000-01-25 | 2004-02-17 | Fusionone, Inc. | Data transfer and synchronization system |
US6816944B2 (en) * | 2000-02-02 | 2004-11-09 | Innopath Software | Apparatus and methods for providing coordinated and personalized application and data management for resource-limited mobile devices |
US20010049613A1 (en) * | 2000-02-29 | 2001-12-06 | Gramann Henry T. | Synchronizing reservation database |
US6505200B1 (en) * | 2000-07-06 | 2003-01-07 | International Business Machines Corporation | Application-independent data synchronization technique |
US7213077B2 (en) * | 2000-07-21 | 2007-05-01 | Hughes Network Systems, Inc. | Method and system for providing buffer management in a performance enhancing proxy architecture |
US6823373B1 (en) * | 2000-08-11 | 2004-11-23 | Informatica Corporation | System and method for coupling remote data stores and mobile devices via an internet based server |
JP2002111707A (ja) | 2000-09-26 | 2002-04-12 | Matsushita Electric Ind Co Ltd | メール着信通知システムおよびメール配信装置 |
US7099660B2 (en) * | 2000-12-22 | 2006-08-29 | Bellsouth Intellectual Property Corp. | System, method and apparatus for a network-organized repository of data |
US7224775B1 (en) * | 2000-12-29 | 2007-05-29 | Cisco Technology, Inc. | System and method for providing prioritized access to a messaging system |
US6952708B2 (en) | 2001-06-27 | 2005-10-04 | Microsoft Corporation | Method and system for using a sync key |
US6993522B2 (en) * | 2001-06-27 | 2006-01-31 | Microsoft Corporation | System and method for resolving conflicts detected during a synchronization session |
JP3758554B2 (ja) * | 2001-10-31 | 2006-03-22 | ソニー株式会社 | 情報提供システム及び情報提供方法、記憶媒体、並びにコンピュータ・プログラム |
US7844688B2 (en) * | 2001-11-20 | 2010-11-30 | P-Cube Ltd. | Apparatus, method, and software for analyzing network traffic in a service aware network |
US7640491B2 (en) * | 2001-12-05 | 2009-12-29 | Microsoft Corporation | Outputting dynamic local content on mobile devices |
CN100361476C (zh) * | 2002-02-05 | 2008-01-09 | 国际商业机器公司 | 发送、呈现电子邮件的方法和电子邮件客户机 |
US20030154254A1 (en) * | 2002-02-14 | 2003-08-14 | Nikhil Awasthi | Assisted messaging for corporate email systems |
US7139748B1 (en) * | 2002-05-02 | 2006-11-21 | Palmsource, Inc. | N-way synchronization of computer databases |
JP3926712B2 (ja) * | 2002-09-06 | 2007-06-06 | セイコーインスツル株式会社 | 同期拍報知システム |
US7180912B1 (en) | 2003-01-06 | 2007-02-20 | At&T Corp. | System and method for providing a plurality of multi-media services using a number of media servers to form a preliminary interactive communication relationship with a calling communication device |
US20050086306A1 (en) * | 2003-03-14 | 2005-04-21 | Lemke Ralph E. | Providing background delivery of messages over a network |
US7925754B2 (en) | 2003-11-21 | 2011-04-12 | Microsoft Corporation | Method and computer program product to provide synch notifications to client devices |
US7347382B2 (en) * | 2004-02-06 | 2008-03-25 | T-Ink, Llc | System for securing personal cards |
JP4286876B2 (ja) * | 2007-03-01 | 2009-07-01 | 富士通テン株式会社 | 画像表示制御装置 |
-
2003
- 2003-11-21 US US10/719,866 patent/US7925754B2/en not_active Expired - Fee Related
-
2004
- 2004-09-21 CN CN2004100119271A patent/CN1620059B/zh not_active Expired - Fee Related
- 2004-10-01 KR KR1020040078253A patent/KR101098730B1/ko active IP Right Grant
- 2004-10-18 JP JP2004303484A patent/JP4546801B2/ja not_active Expired - Fee Related
- 2004-10-22 EP EP04105253.1A patent/EP1533717B1/en not_active Expired - Lifetime
-
2011
- 2011-03-02 US US13/039,134 patent/US8307034B2/en not_active Expired - Fee Related
- 2011-03-11 KR KR1020110022060A patent/KR101037233B1/ko active IP Right Grant
-
2012
- 2012-10-01 US US13/632,415 patent/US8495249B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030004917A1 (en) * | 2001-06-27 | 2003-01-02 | Microsoft Corporation | Method and system for processing notifications |
WO2003083667A1 (en) * | 2002-03-29 | 2003-10-09 | Good Technology, Inc. | System and method for full wireless synchronization of a data processing apparatus with a data service |
Also Published As
Publication number | Publication date |
---|---|
EP1533717B1 (en) | 2019-01-16 |
US20130031272A1 (en) | 2013-01-31 |
EP1533717A1 (en) | 2005-05-25 |
JP4546801B2 (ja) | 2010-09-22 |
JP2005158039A (ja) | 2005-06-16 |
US20050144293A1 (en) | 2005-06-30 |
US8307034B2 (en) | 2012-11-06 |
CN1620059B (zh) | 2010-12-08 |
KR20110033168A (ko) | 2011-03-30 |
CN1620059A (zh) | 2005-05-25 |
KR20050049334A (ko) | 2005-05-25 |
US8495249B2 (en) | 2013-07-23 |
US20110153745A1 (en) | 2011-06-23 |
US7925754B2 (en) | 2011-04-12 |
KR101037233B1 (ko) | 2011-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101037233B1 (ko) | 클라이언트 디바이스에 동기화 통지를 제공하기 위한 방법 | |
US20230034472A1 (en) | Method and system for updating message threads | |
US8812614B2 (en) | Data backup for a mobile computing device | |
US8381096B2 (en) | Managing list tailoring for a mobile device | |
US9055417B2 (en) | Notification infrastructure for sending device-specific wireless notifications | |
US8583602B2 (en) | Restoring of data to mobile computing device | |
US9119052B2 (en) | Content sharing for mobile devices | |
TWI387919B (zh) | 用於線索式行動本文訊息之網路式存檔技術之裝置、方法以及系統 | |
US20110295958A1 (en) | Email system providing conversation update features and related methods | |
US8407181B2 (en) | Email system providing enhanced conversation and category search features and related methods | |
CN102769640B (zh) | 用户信息的更新方法、服务器以及系统 | |
US6901415B2 (en) | Method and system for processing notifications | |
US20080130812A1 (en) | Data synchronization system | |
US8050693B2 (en) | Employing the SMS protocol as a transport layer protocol | |
US20110050437A1 (en) | System and method of processing sensor information | |
KR101634822B1 (ko) | 상이한 네트워크들을 통해 데이터를 동기화하기 위한 어댑터 | |
US8898110B2 (en) | Electronic device and method for managing storage of data | |
CN113238808B (zh) | 一种消息推送方法和装置 | |
US9043390B2 (en) | Communication system with PIM entry synchronization and related methods | |
JP2004005199A (ja) | 共有情報管理方法、移動通信端末及び共有情報管理システム | |
JP2007066051A (ja) | メールアドレス変更通知システム | |
CA2693729A1 (en) | Communications system with polling server providing dynamic record id polling and related methods |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
A107 | Divisional application of patent | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20141117 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20151118 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20161123 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20171117 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20181115 Year of fee payment: 8 |