KR20130095827A - 통신 네트워크에서 존재 정보 교환 - Google Patents

통신 네트워크에서 존재 정보 교환 Download PDF

Info

Publication number
KR20130095827A
KR20130095827A KR1020137017705A KR20137017705A KR20130095827A KR 20130095827 A KR20130095827 A KR 20130095827A KR 1020137017705 A KR1020137017705 A KR 1020137017705A KR 20137017705 A KR20137017705 A KR 20137017705A KR 20130095827 A KR20130095827 A KR 20130095827A
Authority
KR
South Korea
Prior art keywords
user device
sub
group
frequency
presence update
Prior art date
Application number
KR1020137017705A
Other languages
English (en)
Other versions
KR101576929B1 (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 KR20130095827A publication Critical patent/KR20130095827A/ko
Application granted granted Critical
Publication of KR101576929B1 publication Critical patent/KR101576929B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
    • 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/54Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/08User group management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • 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
    • 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/1044Group management mechanisms 

Abstract

본 발명은 사용자 디바이스에서 수행된 통신 시스템 내의 분산된 존재 관리에 관한 것이다. 본 발명의 일 실시형태는, 사용자 디바이스가 사용자 디바이스와 연관된 연락처 그룹에 속하는 하나 또는 그 초과의 다른 사용자 디바이스들에 존재 업데이트 메시지들을 송신하는 적어도 하나의 빈도를 선택적으로 업데이트하는 것을 포함한다. 실시형태는, 선택적으로 업데이트된 빈도에 따라 하나 또는 그 초과의 존재 업데이트 메시지들을 송신하는 것을 더 포함한다. 본 발명의 다른 실시형태는, 존재 업데이트 그룹을 형성하는, 사용자 디바이스를 동작시키는 가입자의 연락처들의 서브세트를 획득하는 것을 포함한다. 실시형태는, 연락처들의 서브세트의 우선순위들에 기초하여 존재 업데이트 그룹 내의 복수의 서브-그룹들을 식별하는 것을 더 포함한다. 실시형태는, 식별된 복수의 서브-그룹들 전부보다 적은 서브-그룹들에 하나 또는 그 초과의 존재 업데이트 메시지들을 송신하는 것을 더 포함한다.

Description

통신 네트워크에서 존재 정보 교환{EXCHANGING PRESENCE INFORMATION IN A COMMUNICATIONS NETWORK}
35 U.S.C.§119(e) 하의 우선권 주장
본 출원은, 명칭이 "METHOD AND APPARATUS FOR CLIENT-SIDE DISTRIBUTED AND DYNAMICALLY UPDATED NETWORK PRESENCE" 으로 2010년 12월 8일자로 출원된 미국 가출원 제 61/421,032호에 대한 35 U.S.C.§119(e) 하의 우선권을 주장하며, 그 가출원의 전부는 여기에 인용에 의해 포함된다.
기재된 실시형태들은 네트워킹에 관한 것으로, 특히, 네트워크와 관련한 존재의 관리에 관한 것이다.
무선 통신 시스템들은, 1세대 아날로그 무선 전화 서비스(1G), (중간의 2.5G 및 2.75G 네트워크들을 포함하는) 2세대(2G) 디지털 무선 전화 서비스 및 3세대(3G) 고속 데이터/인터넷-가능 무선 서비스를 포함하는 다양한 세대들을 통해 개발되어 왔다. 셀룰러 및 개인 통신 서비스(PCS) 시스템들을 포함하는 사용 중인 많은 상이한 타입들의 무선 통신 시스템들이 현재 존재한다. 알려진 셀룰러 시스템들의 예들은 셀룰러 아날로그 진보된 모바일 전화 시스템(AMPS), 및 코드 분할 다중 액세스(CDMA), 주파수 분할 다중 액세스(FDMA), 직교 FDMA(OFDMA), 시분할 다중 액세스(TDMA), TDMA의 모바일 액세스를 위한 글로벌 시스템(GSM) 변형, 및 TDMA 및 CDMA 기술들 양자를 사용하는 더 새로운 하이브리드 디지털 통신 시스템들에 기초한 디지털 셀룰러 시스템들을 포함한다.
CDMA 모바일 통신들을 제공하기 위한 방법은, IS-95로서 여기에서 지칭되는 "Mobile Station-Base Station Compatibility Standard for Dual-Mode Wideband Spread Spectrum Cellular System" 란 명칭의 TIA/EIA/IS-95-A의 원격통신 산업 협회/전자 산업 협회에 의해 미국에서 표준화되었다. 결합된 AMPS & CDMA 시스템들은 TIA/EIA 표준 IS-98에서 설명된다. 다른 통신 시스템들은, 광대역 CDMA(W-CDMA), (예를 들어, CDMA2000 1xEV-DO 표준들과 같은) CDMA2000 또는 TD-SCDMA로서 지칭되는 것을 커버링하는 표준들인, IMT-2000/UM, 또는 국제 모바일 원격통신 시스템 2000/유니버셜 모바일 원격통신 시스템에 설명되어 있다.
W-CDMA 무선 통신 시스템들에서, 사용자 장비(UE)들은, 기지국들에 인접한 또는 기지국들을 둘러싸는 특정한 지리적 영역들 내에서 통신 링크들 또는 서비스를 지원하는 고정 위치 노드 B들(또한 셀 사이트들 또는 셀들로서 지칭됨)로부터 신호들을 수신한다. 노드 B들은, 일반적으로 서비스 품질(QoS) 요건들에 기초하여 트래픽을 구별하기 위한 방법들을 지원하는 표준 인터넷 엔지니어링 태스크 포스(IETF) 기반 프로토콜들을 사용하는 패킷 데이터 네트워크인 액세스 네트워크(AN)/무선 액세스 네트워크(RAN)에 대한 엔트리 포인트들을 제공한다. 따라서, 노드 B들은 일반적으로, 오버 디 에어 인터페이스를 통해 UE들과 그리고 인터넷 프로토콜(IP) 네트워크 데이터 패킷들을 통해 RAN과 상호작용한다.
종래의 무선 통신 시스템들에서, 사용자 디바이스들은, 특정한 개인들 및 회사들, 및 그들 각각의 전화 번호들 및 이메일 어드레스들을 리스트하는 주소록들을 저장할 수도 있다. 사용자는, 예를 들어, 디바이스의 사용자 인터페이스를 통해 적절한 커맨드들을 입력함으로써 주소록에 리스트된 파티(party)와의 통신을 개시할 수도 있다. 호출된 파티가 그 호에 대답할 경우에만, 디바이스 사용자는, 호출한 파티가 대화에 참가하기 위해 이용가능하고 대화에 참가할 의지가 있다고 알게 된다. 호출된 파티가 그 호에 대답하지 않으면, 디바이스의 사용자는 호를 개시하는 시간을 낭비할 수도 있다. 디바이스의 사용자가 제 2 시도를 행하기를 원할 경우 이러한 프로세스가 반복되며, 이 때, 대안적인 수단, 예를 들어, 동일한 전화번호로 텍스트 메시지를 전송하는 것, 또는 주소록으로부터 다른 전화번호를 사용하는 것, 또는 이메일 메시지를 전송하는 것을 사용한다.
상기 예들은, 하나의 호출된 파티와의 통신을 개시하기 위한 것이다. 무선 시스템에 접속된 사용자 디바이스를 통한 그룹 통신을 개시하기 위해 부가적인 활동들이 요구된다. 예를 들어, 사용자는 먼저 초청객들의 리스트를 회의 호출 벤더(vendor) 서비스에 제공할 수도 있고, 그 후, 벤더 서비스는 이메일 초청을 각각의 초청객에 전송할 수도 있다. 회의 호의 스케줄링된 시간보다 더 이른 데드라인에 앞서 사용자가 수락을 요청하더라도, 회의 호가 시작될 때까지 사용자는 어느 특정한 사람이 사실상 참가할지를 알지 못할 것이다. 부가적으로, 참가자들의 수가 너무 작을 것이거나 특정한 중요(key) 사람들이 참가하지 않을 것이라고 사용자가 수락 카운트로부터 결정하면, 사용자는 재스케줄링해야 하며, 다른 세트의 초청들을 전송해야 한다.
본 발명은 사용자 디바이스에서 수행되는 통신 시스템 내의 분산된 존재 관리에 관한 것이다. 본 발명의 일 실시형태는, 사용자 디바이스가 사용자 디바이스와 연관된 연락처 그룹에 속하는 하나 또는 그 초과의 다른 사용자 디바이스들에 존재 업데이트 메시지들을 송신하는 적어도 하나의 빈도를 선택적으로 업데이트하는 것을 포함한다. 실시형태는, 선택적으로 업데이트된 빈도에 따라 하나 또는 그 초과의 존재 업데이트 메시지들을 송신하는 것을 더 포함한다.
본 발명의 또 다른 실시형태는, 존재 업데이트 그룹을 형성하는 사용자 디바이스를 동작시키는 가입자의 연락처들의 서브세트를 획득하는 것을 포함한다. 실시형태는, 연락처들의 서브세트의 우선순위들에 기초하여 존재 업데이트 그룹 내에서 복수의 서브-그룹들을 식별하는 것을 더 포함한다. 실시형태는, 모든 식별된 복수의 서브-그룹들 미만의 서브-그룹에 하나 또는 그 초과의 존재 업데이트 메시지들을 송신하는 것을 더 포함한다.
첨부한 도면들은 실시형태들의 설명을 보조하도록 제공되며, 실시형태들의 임의의 제한이 아니라 실시형태들에 관련된 예들의 예시를 위해서만 제공된다.
도 1은 적어도 하나의 실시형태에 따른 사용자 장비 및 네트워크들을 지원하는 무선 네트워크 아키텍처의 다이어그램이다.
도 2a는 예시적인 실시형태에 따른 도 1의 코어 네트워크를 도시한다.
도 2b는 도 1의 무선 통신 시스템의 일 예를 더 상세히 도시한다.
도 3은 적어도 하나의 실시형태에 따른 사용자 장비의 도면이다.
도 4a는 업데이트 요청들을 전송하는 사용자 디바이스들의 빈도를 업데이트하기 위한 예시적인 실시형태를 도시한다.
도 4b는 사용자 디바이스에 의해 보유되는 존재 업데이트 그룹들에 보유된 가입자들의 수를 업데이트하기 위한 예시적인 실시형태를 도시한다.
도 5는 적어도 하나의 실시형태에 따른 하나의 예시적인 존재 방법을 도시한 기능 블록 흐름도이다.
도 6은 하나 또는 그 초과의 예시적인 실시형태들에 따라 실시하기 위한, 활성 가입자 상태의 로컬 모니터링을 위한 조직화 방식의 일 예를 도시한다.
도 7은 하나 또는 그 초과의 예시적인 실시형태들에 따라 실시하기 위한 로컬 디스플레이 방식의 일 예를 도시한다.
도 8은 하나의 "오프 더 레코드(off the record)" 양상에 따른 하나의 방법의 기능 흐름과 결합된, 적어도 하나의 실시형태에 따른 하나의 예시적인 존재 방법을 도시한 기능 블록 흐름도이다.
도 9는 하나의 채널 옵션 양상에 따른 하나의 예시적인 존재 통신을 도시한 기능 블록 흐름도이다.
도 10은 기능을 수행하도록 구성된 로직을 포함하는 통신 디바이스를 도시한다.
본 발명의 양상들은, 본 발명의 특정한 실시형태들에 관한 다음의 설명 및 관련 도면들에서 기재되어 있다. 대안적인 실시형태들이 본 발명의 범위를 벗어나지 않으면서 고안될 수도 있다. 부가적으로, 본 발명의 잘 알려진 엘리먼트들은 상세히 설명되지 않을 것이거나 본 발명의 관련 세부사항들을 불명료하지 않게 하기 위해 생략될 것이다.
"예시적인" 이라는 단어는 "예, 예시, 또는 예증으로서 기능하는 것" 을 의미하도록 여기에서 사용된다. "예시적인" 것으로서 여기에 설명된 임의의 실시형태는 반드시 다른 실시형태들에 비해 바람직하거나 유리한 것으로서 해석되지는 않는다. 유사하게, "본 발명의 실시형태들" 이라는 용어는, 본 발명의 모든 실시형태들이 설명된 특성, 이점 또는 동작 모드를 포함하는 것을 요구하지는 않는다.
여기에 사용된 용어는 단지 특정한 실시형태들을 설명하는 목적을 위한 것이며, 본 발명의 실시형태들의 제한하도록 의도되지 않는다. 여기에 사용된 바와 같이, 단수형들 "한(a)", "일(an)" 및 "그것(the)" 은, 콘텍스트가 그렇지 않다는 것을 명확히 표시하지 않으면, 또한 복수형들을 포함하도록 의도된다. 여기에 사용될 경우, 용어들 "구비하다", "구비하는", "포함하다" 및/또는 "포함하는" 이 나타낸 특성들, 정수들, 단계들, 동작들, 엘리먼트들, 및/또는 컴포넌트들의 존재를 특정하지만, 하나 또는 그 초과의 다른 특성들, 정수들, 단계들, 동작들, 엘리먼트들, 컴포넌트들, 및/또는 그들의 그룹들의 존재 또는 부가를 배제하는 것이 아님을 추가적으로 이해할 것이다.
추가적으로, 많은 실시형태들은, 예를 들어, 컴퓨팅 디바이스의 엘리먼트들에 의해 수행될 동작들의 시퀀스들의 관점들에서 설명된다. 여기에 설명된 다양한 동작들이 특정한 회로들(예를 들어, 주문형 집적 회로(ASIC)들)에 의해, 하나 또는 그 초과의 프로세서들에 의해 실행되는 프로그램 명령들에 의해, 또는 이 둘의 조합에 의해 수행될 수 있음을 인식할 것이다. 부가적으로, 여기에 설명된 동작들의 이들 시퀀스는, 실행 시에 연관 프로세서로 하여금 여기에 설명된 기능을 수행하게 할 컴퓨터 명령들의 대응하는 세트가 저장된 임의의 형태의 컴퓨터 판독가능 저장 매체 내에서 전체적으로 구현되는 것으로 고려될 수 있다. 따라서, 본 발명의 다양한 양상들은 다수의 상이한 형태들로 구현될 수도 있으며, 그 양상들 모두는 청구된 요지의 범위 내에 있는 것으로 고려된다. 부가적으로, 여기에 설명된 실시형태들의 각각에 대해, 임의의 그러한 실시형태들의 대응하는 형태는, 예를 들어, (도 10과 관련하여 더 상세히 후술됨) 설명된 동작을 수행 "하도록 구성된 로직" 으로서 여기에서 설명될 수도 있다.
도 1은 본 발명의 적어도 하나의 실시형태에 따른 무선 통신 시스템(100)의 하나의 예시적인 실시형태의 블록도를 도시한다. 시스템(100)은, 패킷 교환 데이터 네트워크(예를 들어, 인트라넷, 인터넷, 및/또는 코어 네트워크(126))와 UE들(102, 108, 110, 112) 사이의 데이터 접속을 제공하는 네트워크 장비에 액세스 단말(102)을 접속시킬 수 있는 액세스 네트워크 또는 무선 액세스 네트워크(RAN)(120)와 에어 인터페이스(104)를 통해 통신하는 셀룰러 전화기(102)와 같은 UE들을 포함할 수 있다. 여기에 도시된 바와 같이, UE는 셀룰러 전화기(102), 개인 휴대 정보 단말(108), 양방향 텍스트 페이저로서 여기에 도시된 페이저(110), 또는 심지어 무선 통신 포탈을 갖는 별개의 컴퓨터 플랫폼(112)일 수 있다. 따라서, 본 발명의 실시형태들은, 무선 모뎀들, PCMCIA 카드들, 개인용 컴퓨터들, 전화기들, 또는 이들의 임의의 조합 또는 서브-조합을 제한없이 포함하는 무선 통신 능력들을 갖거나 무선 통신 포탈을 포함하는 임의의 형태의 액세스 단말 상에서 실현될 수 있다. 추가적으로, 여기에 사용된 바와 같이, (즉, W-CDMA 이외의) 다른 통신 프로토콜들에서 "UE" 라는 용어는 "액세스 단말", "AT", "무선 디바이스", "클라이언트 디바이스", "모바일 단말", "모바일 스테이션" 및 이들의 변형들로서 상호교환가능하게 지칭될 수도 있다.
도 1을 다시 참조하면, 무선 통신 시스템(100)의 컴포넌트들 및 본 발명의 예시적인 실시형태들의 엘리먼트들의 상호관련성이 도시된 구성으로 제한되지 않는다. 시스템(100)은 단지 예시적일 뿐이며, 무선 클라이언트 컴퓨팅 디바이스들(102, 108, 110, 112)과 같은 원격 UE들로 하여금 서로 사이에서 및/또는 코어 네트워크(126), 인터넷, PSTN, SGSN, GGSN 및/또는 다른 원격 서버들을 제한없이 포함하는 RAN(120) 및 에어 인터페이스(104)를 통해 접속된 컴포넌트들 사이에서 오버-디-에어로 통신하게 하는 임의의 시스템을 포함할 수 있다.
RAN(120)은 RNC(122)로 전송된 (통상적으로 데이터 패킷들로서 전송된) 메시지들을 제어한다. RNC(122)는 서빙 범용 패킷 무선 서비스들(GPRS) 지원 노드(SGSN)와 UE들(102/108/110/112) 사이에서 베어러(bearer) 채널들(즉, 데이터 채널들)을 시그널링, 설정, 및 분해(tear down)하는 것을 담당한다. 링크 계층 암호화가 인에이블링되면, RNC(122)는 오버 디 에이 인터페이스(104)로 콘텐츠를 포워딩하기 전에 그 콘텐츠를 또한 암호화한다. RNC(122)의 기능은 당업계에 잘 알려져 있으며, 간략화를 위해 추가적으로 설명되지 않을 것이다. 코어 네트워크(126)는 네트워크, 인터넷 및/또는 공용 교환 전화 네트워크(PSTN)에 의해 RNC(122)와 통신할 수도 있다. 대안적으로, RNC(122)는 인터넷 또는 외부 네트워크에 직접 접속될 수도 있다. 통상적으로, 코어 네트워크(126)와 RNC(122) 사이의 네트워크 또는 인터넷 접속은 데이터를 전달하며, PSTN은 음성 정보를 전달한다. RNC(122)는 다수의 노드 B들(124)에 접속될 수 있다. 코어 네트워크(126)에 대해 유사한 방식으로, RNC(122)는 통상적으로, 데이터 전달 및/또는 음성 정보를 위해 네트워크, 인터넷 및/또는 PSTN에 의하여 노드 B들(124)에 접속된다. 노드 B들(124)은 셀룰러 전화기(102)와 같은 UE들에 데이터 메시지들을 무선으로 브로드캐스팅할 수 있다. 당업계에 알려진 바와 같이, 노드 B들(124), RNC(122) 및 다른 컴포넌트들은 RAN(120)를 형성할 수도 있다. 그러나, 대안적인 구성들이 또한 사용될 수도 있으며, 본 발명은 도시된 구성으로 제한되지 않는다. 예를 들어, 또 다른 실시형태에서, RNC(122) 및 노드 B들(124) 중 하나 또는 그 초과의 기능은, RNC(122) 및 노드 B(들)(124) 양자의 기능을 갖는 단일 "하이브리드" 모듈로 통합될 수도 있다.
도 2a는 본 발명의 일 실시형태에 따른 코어 네트워크(126)를 도시한다. 특히, 도 2a는 W-CDMA 시스템 내에 구현된 범용 패킷 무선 서비스들(GPRS) 코어 네트워크의 컴포넌트들을 도시한다. 도 2a의 실시형태에서, 코어 네트워크(126)는 서빙 GPRS 지원 노드(SGSN)(160), 게이트웨이 GPRS 지원 노드(GGSN)(165) 및 인터넷(175)을 포함한다. 그러나, 인터넷(175)의 일부들 및/또는 다른 컴포넌트들이 대안적인 실시형태에서 코어 네트워크 외부에 위치될 수도 있음을 인식한다.
일반적으로, GPRS는 인터넷 프로토콜(IP) 패킷들을 송신하기 위한 모바일 통신들을 위한 글로벌 시스템(GSM) 전화기들에 의해 사용되는 프로토콜이다. GPRS 코어 네트워크(예를 들어, GGSN(165) 및 하나 또는 그 초과의 SGSN들(160))는 GPRS 시스템의 중앙화된 부분이며, 또한 W-CDMA 기반 3G 네트워크들에 대한 지원을 제공한다. GPRS 코어 네트워크는 GSM 코어 네트워크의 통합된 부분이며, GSM 및 W-CDMA 네트워크들에서 IP 패킷 서비스들에 대한 모바일러티 관리, 세션 관리 및 전달을 제공한다.
GPRS 터널링 프로토콜(GTP)은 GPRS 코어 네트워크의 정의한 IP 프로토콜이다. GTP는, GSM 또는 W-CDMA 네트워크의 엔드 사용자들(예를 들어, 액세스 단말들)로 하여금 GGSN(165)의 일 위치로부터와 같이 인터넷에 계속 접속하면서 이곳저곳을 이동하게 하는 프로토콜이다. 이것은, 가입자의 현재 SSGN(160)으로부터 가입자의 세션을 핸들링하고 있는 GGSN(165)로 가입자의 데이터를 전달하여 달성한다.
GTP의 3개의 형태들, 즉, (i) GTP-U, (ii) GTP-C 및 (iii) GTP'(GTP 프라임)는 GPRS 코어 네트워크에 의해 사용된다. GTP-U는 각각의 패킷 데이터 프로토콜(PDP) 콘텍스트에 대해 분리된 터널들에서의 사용자 데이터의 전달을 위해 사용된다. GTP-C는 제어 시그널링(예를 들어, PDP 콘텍스트들의 셋업 및 삭제, GSN 도달-능력의 검증, 예를 들어, 가입자가 하나의 SGSN으로부터 다른 SGSN으로 이동할 경우의 업데이트들 또는 변경들 등)을 위해 사용된다. GTP'는 GSN들로부터 과금(charging) 기능으로의 과금 데이터의 전달을 위해 사용된다.
도 2a를 참조하면, GGSN(165)은 GPRS 백본 네트워크(미도시)와 외부 패킷 데이터 네트워크(175) 사이에서 인터페이스로서 작동한다. GGSN(165)은, SGSN(160)으로부터 도래하는 GPRS 패킷들로부터 연관 패킷 데이터 프로토콜(PDP) 포맷(예를 들어, IP 또는 PPP)을 갖는 패킷 데이터를 추출하고, 대응하는 패킷 데이터 네트워크 상에서 패킷들을 외부로 전송한다. 다른 방향에서, 인커밍 데이터 패킷들은, RAN(120)에 의해 서빙된 목적지 UE의 무선 액세스 베어러(RAB)를 관리 및 제어하는 SGSN(160)으로 GGSN(165)에 의해 안내된다. 그에 의해, GGSN(165)은 자신의 위치 레지스터에 (예를 들어, PDP 콘텍스트 내에서) 타겟 UE의 현재 SGSN 어드레스 및 자신의 프로파일을 저장한다. GGSN은 IP 어드레스 할당을 담당하며, 접속된 UE에 대한 디폴트 라우터이다. 또한, GGSN은 인증 및 과금 기능들을 수행한다.
일 예에서, SGSN(160)은 코어 네트워크(126) 내의 많은 SGSN들 중 하나를 대표한다. 각각의 SGSN은 연관된 지리적 서비스 영역 내의 UE들로부터 및 UE들로의 데이터 패킷들의 전달을 담당한다. SGSN(160)의 태스크들은 패킷 라우팅 및 전달, 모바일러티 관리(예를 들어, 부착/부착해제 및 위치 관리), 로지컬 링크 관리, 및 인증 및 과금 기능들을 포함한다. SGSN의 위치 레지스터는, 예를 들어, 각각의 사용자 또는 UE에 대한 하나 또는 그 초과의 PDP 콘텍스트들 내에서 SGSN(160)에 등록된 모든 GPRS 사용자들의 위치 정보(예를 들어, 현재의 셀, 현재의 VLR) 및 사용자 프로파일들(예를 들어, IMSI, 패킷 데이터 네트워크에서 사용된 PDP 어드레스(들))을 저장한다. 따라서, SGSN들은 (i) GGSN(165)으로부터의 다운링크 GTP 패킷들을 디-터널링(de-tunnel)하고, (ii) GGSN(165)을 향해 IP 패킷들을 업링크 터널링하고, (iii) SGSN 서비스 영역들 사이에서 UE들이 이동할 때 모바일러티 관리를 수행하며, (iv) 모바일 가입자들에 비용청구(bill)하는 것을 담당한다. 당업자에 의해 인식될 바와 같이, (i) 내지 (iv)를 제외하고, GSM/EDGE 네트워크들을 위해 구성된 SGSN들은 W-CDMA 네트워크들을 위해 구성된 SGSN들과 비교하여 약간 상이한 기능을 갖는다.
RAN(120)(예를 들어, 또는 유니버셜 모바일 원격통신 시스템(UMTS) 시스템 아키텍처의 UTRAN)은 프레임 중계 또는 IP와 같은 송신 프로토콜을 이용하여 Iu 인터페이스를 통해 SGSN(160)과 통신한다. SGSN(160)은, SGSN(160)과 다른 SGSN들(미도시) 및 내부 GGSN들 사이의 IP 기반 인터페이스인 Gn 인터페이스를 통해 GGSN(165)과 통신하고, 위에서 정의된 GTP 프로토콜(예를 들어, GTP-U, GTP-C, GTP' 등)을 사용한다. 도 2a에 도시되지는 않았지만, Gn 인터페이스는 도메인 명칭 시스템(DNS)에 의해 또한 사용된다. GGSN(165)은, 직접적으로 또는 무선 애플리케이션 프로토콜(WAP) 게이트웨이를 통해 IP 프로토콜을 사용하여 Gi 인터페이스를 통해 공용 데이터 네트워크(PDN)(미도시), 그리고 차례로 인터넷(175)에 접속된다.
PDP 콘텍스트는, UE가 활성 GPRS 세션을 갖는 경우 특정한 UE의 통신 세션 정보를 포함하는 GGSN(165) 및 SGSN(160) 양자 상에 존재하는 데이터 구조이다. UE가 GPRS 통신 세션을 개시하기를 원할 경우, UE는 먼저 SGSN(160)에 부착하고, 그 후, GGSN(165)을 이용하여 PDP 콘텍스트를 활성화시켜야 한다. 이것은, 가입자가 현재 방문하고 있는 SGSN(160) 및 UE의 액세스 포인트를 서빙하는 GGSN(165)에 PDP 콘텍스트 데이터 구조를 할당한다.
도 2b는 도 1의 무선 통신 시스템(100)의 일 예를 더 상세히 도시한다. 특히, 도 2b를 참조하면, UE들 1...N은 상이한 패킷 데이터 네트워크 엔드-포인트들에 의해 서비스되는 위치들에서 RAN(120)에 접속하는 것으로 도시되어 있다. 도 2b의 도면은 W-CDMA 및 용어에 특정되지만, 도 2b가 1x EV-DO 시스템에 따르도록(confirm) 어떻게 변경될 수 있는지가 인식될 것이다. 따라서, UE들 1 및 3은, (예를 들어, SGSN, GGSN, PDSN, 홈 에이전트(HA), 외부 에이전트(FA) 등에 대응할 수도 있는) 제 1 패킷 데이터 네트워크 엔드-포인트(162)에 의해 서빙된 부분에서 RAN(120)에 접속한다. 차례로, 제 1 패킷 데이터 네트워크 엔드-포인트(162)는 인증, 인가 및 어카운팅(AAA) 서버(182), 프로비져닝(provisioning) 서버(184), 인터넷 프로토콜(IP) 멀티미디어 서브시스템(IMS)/세션 개시 프로토콜(SIP) 등록 서버(186) 및/또는 애플리케이션 서버(170) 중 하나 또는 그 초과 및/또는 인터넷(175)에 라우팅 유닛(188)을 통해 접속한다. UE들 2 및 5...N은 (예를 들어, SGSN, GGSN, PDSN, FA, HA 등에 대응할 수도 있는) 제 2 패킷 데이터 네트워크 엔드-포인트(164)에 의해 서빙된 부분에서 RAN(120)에 접속한다. 제 1 패킷 데이터 네트워크 엔드-포인트(162)와 유사하게, 차례로, 제 2 패킷 데이터 네트워크 엔드-포인트(164)는 AAA 서버(182), 프로비져닝 서버(184), IMS/SIP 등록 서버(186) 및/또는 애플리케이션 서버(170) 중 하나 또는 그 초과 및/또는 인터넷(175)에 라우팅 유닛(188)을 통해 접속한다. UE(4)는 인터넷(175)에 직접 접속하며, 그 후, 인터넷(175)은 상술된 시스템 컴포넌트들 중 임의의 컴포넌트에 접속할 수 있다.
도 2b를 참조하면, UE들 1, 3 및 5...N은 무선 셀-전화기들로서 도시되고, UE 2는 무선 태블릿-PC로서 도시되며, UE 4는 유선 데스크탑 스테이션으로서 도시된다. 그러나, 다른 실시형태들에서, 무선 통신 시스템(100)이 임의의 타입의 UE에 접속할 수 있으며, 도 2b에 도시된 예들이 시스템 내에 구현될 수도 있는 UE들의 타입들을 제한하도록 의도되지 않음을 인식할 것이다. 또한, AAA(182), 프로비져닝 서버(184), IMS/SIP 등록 서버(186) 및 애플리케이션 서버(170) 각각이 구조적으로 별개인 서버들로서 도시되지만, 이들 서버들 중 하나 또는 그 초과가 본 발명의 적어도 하나의 실시형태에서는 통합될 수도 있다.
추가적으로, 도 2b를 참조하면, 애플리케이션 서버(170)는 복수의 매체 제어 복합체(complex)(MCC)들 1...N(170B) 및 복수의 지역적 디스패처들 1...N(170A)을 포함하는 것으로 도시되어 있다. 집합적으로, 지역적 디스패처들(170A) 및 MCC들(170B)은, 적어도 하나의 실시형태에서, 무선 통신 시스템(100) 내의 통신 세션들(예를 들어, IP 유니캐스팅 및/또는 IP 멀티캐스팅 프로토콜들을 통한 하프-듀플렉스 그룹 통신 세션들)을 조정하도록 집합적으로 기능하는 서버들의 분산된 네트워크에 대응할 수 있는 애플리케이션 서버(170) 내에 포함된다. 예를 들어, 애플리케이션 서버(170)에 의해 조정된 통신 세션들이 이론적으로는 시스템(100) 내의 임의의 장소에 위치된 UE들 사이에서 발생할 수 있기 때문에, 다수의 지역적 디스패처들(170A) 및 MCC들은 (예를 들어, 북미의 MCC가 중국에 위치된 세션 참가자들 사이에서 앞뒤로 매체를 중계하지 않도록) 조정된 통신 세션들에 대한 레이턴시를 감소시키도록 분산된다.
상술된 바와 같은 원인들 때문에, 애플리케이션 서버(170)에 대한 참조가 행해질 경우, 연관 기능이 지역적 디스패처들(170A) 중 하나 또는 그 초과 및/또는 MCC들(170B) 중 하나 또는 그 초과에 의해 시행될 수 있음을 인식할 것이다. 지역적 디스패처들(170A)은 일반적으로, 통신 세션을 설정하는 것(예를 들어, UE들 사이의 시그널링 메시지들을 핸들링하는 것, 공시 메시지들을 스케줄링 및/또는 전송하는 것 등)에 관련된 임의의 기능을 담당하지만, MCC들(170B)은, 호-내(in-call) 시그널링 및 조정된 통신 세션 동안 매체의 실제 교환을 수행하는 것을 포함해서, 호 인스턴스(instance)의 지속기간 동안 통신 세션을 호스팅하는 것을 담당한다.
도 3을 참조하면, 셀룰러 전화기와 같은 UE(200)(여기에서는 무선 디바이스)는, 궁극적으로는 코어 네트워크(126), 인터넷 및/또는 다른 원격 서버들 및 네트워크들로부터 도래할 수도 있는 RAN(120)으로부터 송신된 소프트웨어 애플리케이션들, 데이터 및/또는 커맨드들을 수신 및 실행할 수 있는 플랫폼(202)을 갖는다. 플랫폼(202)은 주문형 집적 회로(ASIC)(208) 또는 다른 프로세서, 마이크로프로세서, 로직 회로, 또는 다른 데이터 프로세싱 디바이스에 동작적으로 커플링된 트랜시버(206)를 포함할 수 있다. ASIC(208) 또는 다른 프로세서는, 무선 디바이스의 메모리(212) 내의 임의의 상주 프로그램들과 인터페이싱하는 애플리케이션 프로그래밍 인터페이스(API)(210) 계층을 실행한다. 메모리(212)는 판독-전용 또는 랜덤-액세스 메모리(RAM 및 ROM), EEPROM, 플래시 카드들, 또는 컴퓨터 플랫폼들에 공통인 임의의 메모리를 포함할 수 있다. 플랫폼(202)은 메모리(212)에서 활성으로 사용되지 않는 애플리케이션들을 보유할 수 있는 로컬 데이터베이스(214)를 또한 포함할 수 있다. 로컬 데이터베이스(214)는 통상적으로 플래시 메모리 셀이지만, 자기 매체들, EEPROM, 광학 매체들, 테이프, 소프트 또는 하드 디스크 등과 같은 당업계에 알려진 바와 같은 임의의 2차 저장 디바이스일 수 있다. 내부 플랫폼(202) 컴포넌트들은 또한, 당업계에 알려진 바와 같이 다른 컴포넌트들 중에서 안테나(222), 디스플레이(224), 푸쉬-투-토크 버튼(228) 및 키패드(226)와 같은 외부 디바이스들에 동작적으로 커플링될 수 있다.
따라서, 본 발명의 실시형태는 여기에 설명된 기능들을 수행하기 위한 능력을 포함한 UE를 포함할 수 있다. 당업자들에 의해 인식될 바와 같이, 다양한 로직 엘리먼트들은, 여기에 기재된 기능을 달성하기 위해 별개의 엘리먼트들, 프로세서 상에서 실행된 소프트웨어 모듈들 또는 소프트웨어와 하드웨어의 임의의 조합으로 구현될 수 있다. 예를 들어, ASIC(208), 메모리(212), API(210) 및 로컬 데이터베이스(214) 모두는 여기에 기재된 다양한 기능들을 로딩, 저장 및 실행하도록 협력하여 사용될 수도 있으며, 따라서, 이들 기능들을 수행하기 위한 로직은 다양한 엘리먼트들에 걸쳐 분산될 수도 있다. 대안적으로, 기능은 하나의 별개의 컴포넌트로 포함될 수 있다. 따라서, 도 3의 UE(200)의 특성들은 단시 예시적인 것으로 고려될 것이며, 본 발명은 도시된 특성들 또는 배열로 제한되지 않는다.
UE(102 또는 200)와 RAN(120) 사이의 무선 통신은 코드 분할 다중 액세스(CDMA), W-CDMA, 시분할 다중 액세스(TDMA), 주파수 분할 다중 액세스(FDMA), 직교 주파수 분할 멀티플렉싱(OFDM), 모바일 통신들을 위한 글로벌 시스템(GSM), 또는 무선 통신 네트워크 또는 데이터 통신 네트워크에서 사용될 수도 있는 다른 프로토콜들과 같은 상이한 기술들에 기초할 수 있다. 예를 들어, W-CDMA에서, 데이터 통신은 통상적으로 클라이언트 디바이스(102), 노드 B(들)(124), 및 RNC(122) 사이에 존재한다. RNC(122)는 코어 네트워크(126), PSTN, 인터넷, 가상 사설 네트워크, SGSN, GGSN 등과 같은 다수의 데이터 네트워크들에 접속될 수 있으며, 따라서, 더 넓은 통신 네트워크로의 UE(102 또는 200)의 액세스를 허용한다. 앞서 설명되고 당업계에 알려진 바와 같이, 음성 송신 및/또는 데이터는 다양한 네트워크들 및 구성들을 사용하여 RAN으로부터 UE들로 송신될 수 있다. 따라서, 여기에 제공된 예시들은 본 발명의 실시형태들을 제한하도록 의도되지 않으며, 단지 본 발명의 실시형태들의 양상들의 설명을 보조할 것이다.
아래에서, 본 발명의 실시형태들은 일반적으로, W-CDMA 프로토콜들 및 (예를 들어, 모바일 스테이션(MS), 모바일 유닛(MU), 액세스 단말(AT) 등 대신 UE, EV-DO의 BSC와는 대조적으로 RNC, 또는 EV-DO의 BS 또는 MPT/BS와는 대조적으로 노드 B등과 같은) 연관 용어에 따라 설명된다. 그러나, 본 발명의 실시형태들이 W-CDMA 이외의 무선 통신 프로토콜들과 관련하여 어떻게 적용될 수 있는지가 당업자에 의해 용이하게 인식될 것이다.
일 실시형태에 따른 일 예에서, 가입자 소셜 통신 시스템은 복수의 가입자들을 가질 수도 있으며, 각각의 가입자는 액세스에 대한 정의가능한 세트의 특권들을 갖고, 가입자 시스템 내에서 다양한 종류들의 통신들에 참가 및 그 통신을 실행할 수 있다. 가입자 사용자 디바이스들은, 사용자 디바이스들의 이전에 설명된 타입들 및 종류들 중 임의의 타입 및 종류, 예를 들어, 셀룰러 전화기들, PDA들, 및 넷북들일 수도 있다.
"사용자 디바이스" 가 반드시 특정한 가입자에 고유한 하드웨어 유닛일 필요는 없을 수도 있음을 이해할 것이다. 일 예시로서, (소셜 네트워크에 관한) 공용 프로파일 인증들, 내부 우선순위 셋팅들, 프라이버시 셋팅들, 및 다른 가입자들과의 다른 인터페이스를 포함하는 (이들 각각은 아래의 섹션들에서 더 상세히 설명될 것임) 가입자의 평소의 소셜 네트워크 구성들 및 셋팅들을 그 가입자가 갖기 위해 사용자-액세스가능한 디바이스를 임시적으로 구성하도록 허용하는 휴대가능한 인증/검증 메커니즘을 그 가입자가 제공받을 수도 있다고 고려한다.
하나 또는 그 초과의 실시형태들에 따르면, 가입자의 사용자 디바이스는, 그 가입자가 통신하고 있거나 통신한 다른 가입자들을 표시하고, 네트워크에 관해 서로의 각각의 현재 상태를 표시하는 리스트 또는 다른 로컬 데이터베이스를 설정 및 동적으로 업데이트한다. 리스트를 분류하고, 부가, 유지 및 그 리스트로부터 다른 가입자들을 제거하기 위한 기준들 및 법칙들은, 다른 가입자들의 존재의 사용자 디바이스의 현재 저장된 특징, 그러한 다른 가입자들과의 최신 통신, 알파벳 순서 뿐만 아니라 아래에서 더 상세히 후술될 다른 기준들 및 법칙들을 포함한다.
간략화를 위해, 각각의 가입자의 사용자 디바이스(들)에 의해 로컬적으로 보유될 수도 있는 이들 기준들을 충족시키는 가입자들의 이러한 리스트 또는 데이터베이스는 "존재 업데이트 그룹" 으로 명칭될 것이다. "존재 업데이트 그룹" 이라는 어구가 본 발명 내에서 참조의 목적들을 위해 사용된 임의의 명칭이며, 그 어구가 임의의 특정한 방법, 동작, 그래픽 형태, 배열, 동작들을 수행하는 순서, 또는 구조(들)에 관한 임의의 의미를 갖거나 운반하도록 의도되지 않음을 이해할 것이다. 따라서, 여기에 사용된 바와 같이, 존재 업데이트 그룹은, 특정한 가입자가 존재 상태 업데이트들을 지시하고 (예를 들어, 가입자가 바쁘거나, 여유가 있을 때 등을 존재 업데이트 그룹에 통지함), 또한 그 가입자가 존재 상태 업데이트들(예를 들어, 연락처(들)가 바쁘거나, 여유가 있는지 등을 표시함)을 수신하는 그 가입자에 대한 연락처들의 세트를 포함한다. 가입자가 존재 업데이트 그룹의 일부가 아닌 하나 또는 그 초과의 부가적인 연락처들을 포함할 수 있어서, 특정한 구현들에서는 존재 업데이트 그룹이 가입자의 연락처들의 서브세트에 대응할 수 있음을 인식할 것이다.
일 양상에서, 다른 가입자의 사용자 디바이스를 식별하는 존재 업데이트 그룹 내의 엔트리들 또는 레코드들은, 그러한 가입자들 중에서 전체적으로 또는 부분적으로 공유될 수도 있는 네트워크에 관해 그 가입자의 참가 및 여유있음, 또는 존재를 특성화한다. 존재의 상태는, "존재값" 또는 "PV" 에 의해 집합적으로 표현될 수도 있는 다양한 파라미터들에 의해 정의된다.
일 실시형태에 따르면, 주어진 가입자의 사용자 디바이스는, 인스턴트 가입자의 사용자 디바이스가 가까운 기일 내에 통신할 가능성이 있는 그러한 다른 가입자들만을 자신의 존재 업데이트 그룹에 보유하기 위해 자신의 존재 업데이트 그룹을 업데이트하도록 구성될 수도 있다. 다른 이점들 중에서, 이러한 특성은 사용자 디바이스들에서의 불필요한 프로세싱 및 저장에서의 감소를 제공하며, 관련없는 사용자 디바이스들의 상태 변화들을 반영하기 위해 그들의 존재 업데이트 그룹을 업데이트하는 사용자 디바이스들로 인한 불필요한 메시징 오버헤드에서의 감소를 추가적으로 제공한다. 이러한 방식으로, 존재 업데이트 그룹은 주어진 가입자의 연락처 북으로부터 감소된 연락처들의 리스트 또는 서브세트에 대응할 수도 있다.
일 양상에서, 주어진 가입자의 사용자 디바이스는, 주어진 가입자의 사용자 디바이스와 연락처 사이의 통신의 현재 참가, 및 더 적은 정도로는 주어진 가입자의 사용자 디바이스와 연락처 사이의 통신의 최근 참가에 기초하여 연락처와의 장래 통신의 가능도를 추정할 수도 있다. 추가적인 양상에서, 사용자 디바이스는, 가입자가 현재 통신하고 있는 가입자 그룹들, 또는 가입자가 최근에 참가한 그룹들에 대한 PV를 보유할 수도 있으며, "그룹" 은 이후의 섹션들에서 더 상세히 설명된다. 일 예에서, 각각의 가입자 그룹은 존재 업데이트 그룹의 서브-그룹에 대응할 수도 있다.
일 실시형태에 따르면, 주어진 가입자의 사용자 디바이스는 자신의 존재 업데이트 그룹을 보유할 시에, 로컬 존재 업데이트 그룹의 분산된 동적 업데이팅을 추가적으로 제공하는 방식으로 다른 사용자 디바이스들과 상호작용할 수 있다. 일 양상에서, 주어진 가입자의 사용자 디바이스는, 네트워크에서 다른 사용자 디바이스들의 존재를 특성화하는 업데이트된 정보에 대한 요청들을 다른 가입자들의 사용자 디바이스들로 송신할 때를 표시하도록 구성될 수도 있다. 간략화를 위해, 이들 요청들은 이하, "PV 업데이트 요청들" 로서 지칭될 것이다. 전송하는 사용자 디바이스는, 자신의 존재 업데이트 그룹으로부터 엔트리들을 업데이트(제거를 포함함) 할시에 응답들을 사용한다. 더 상세히 설명될 바와 같이, 일 양상에서, 사용자 디바이스들은 메시징 오버헤드에 관한 효율성 목적들 및 존재 업데이트 그룹을 업데이트하는 빈도를 충족시키는 방식으로 PV 업데이트 요청들을 전송하는 타이밍을 표시하도록 구성될 수도 있다.
추가적인 양상에서, 주어진 가입자의 사용자 디바이스들은, 사용자 디바이스가 그 특정한 다른 가입자로부터 PV 업데이트를 최종적으로 수신한 이후의 시간의 길이에 기초하여 그들의 존재 업데이트 그룹 내의 엔트리들에 대한 PV 업데이트 요청들을 전송할 수도 있다. 이러한 양상에 추가적으로, 주어진 가입자의 사용자 디바이스는, 자신의 존재 업데이트 그룹 내의 가입자들의 각각에 대한 타임아웃 카운터를 설정 및 보유하도록 구성될 수도 있다. 또 다른 예시적인 기준들은 사용자-선택가능한 우선순위들, 또는 애플리케이션-특정 우선순위들, 예를 들어, 존재 업데이트 그룹 내의 다른 가입자와의 통신들이 상호적인 실시간 활성화들에 따르는지 아닌지일 수도 있다.
자신의 로컬 존재 업데이트 그룹의 주어진 가입자의 사용자 디바이스에 의한 동적 업데이팅의 일 양상에서, 주어진 가입자의 사용자 디바이스는, PV 업데이트 요청들을 전송할 때를 결정할 시에 하나 또는 그 초과의 트리거링 이벤트들을 검출 및 이용하도록 구성될 수도 있다. 일 예시로서, 트리거링 이벤트는 이전의 파워-다운 상태로부터의 주어진 가입자의 사용자 디바이스의 초기 스위치-온, 또는 파워-업일 수도 있다. 다른 트리거링 이벤트들은 주어진 가입자가 자신의 사용자 디바이스를 언록(unlock)하는 것(예를 들어, 문자숫자식 언록 코드를 입력하는 것)이거나, 주어진 가입자가 소셜 네트워킹을 수행하기 위한 애플리케이션을, 예를 들어, 사용자 디바이스 상의 터치-스크린 아이콘을 통해 개시하는 것일 수도 있다.
하나의 부가적인 양상에서, 주어진 가입자의 사용자 디바이스는, 그 사용자 디바이스가 록될 경우 자신의 존재 업데이트 그룹을 업데이트하는 것을 중지하고, 배터리 전력을 보존하며 및/또는 네트워크 상에서 불필요한 메시지 트래픽을 감소시키도록 구성될 수도 있다. 이러한 양상은, 사용자 디바이스를 언록할 시에 PV 업데이트 요청을 전송하는 상술된 예시적인 트리거링 이벤트와 커플링할 수도 있다. 이러한 양상에 따른 주어진 가입자의 사용자 디바이스가, 존재 업데이트 그룹을 업데이트하는 것을 중지할지를 결정할 시에 사용자 디바이스 록(lock)의 상이한 모드들 사이를 구별하도록 구성될 수도 있음을 이해할 것이다. 예를 들어, 사용자 디바이스는 미인가된 사람들이 디바이스를 사용하는 것을 방지하기 위한 하나의 록 모드, 및 예를 들어, 사용자의 포켓에 배치되는 경우 발생할 수도 있는 바와 같은 부주의한 키 누름을 방지하기 위한 다른 록 모드를 가질 수도 있다. 후자의 록 모드는 "부주의한 키 디스에이블링 록 모드" 로 지칭될 수도 있다. 이러한 양상에 대해 추가적으로, 가입자는, 사용자 디바이스가 부주의한 키 디스에이블링 록 모드에 있으면서, 존재 업데이트 그룹 업데이팅을 유지하기를 원할 수도 있다.
부가적으로, 주어진 가입자의 사용자 디바이스는, 가입자가 디바이스의 디스플레이를 보고 있지 않을 가능성이 있는 경우, 예를 들어, 가입자가 그 디바이스를 내려 놓거나 통화중이어서 자신의 귀에 그 디바이스를 대고 있을 경우, 자신의 존재 업데이트 그룹, 자신의 존재 업데이트 그룹의 시각적인 표현, 또는 그 양자를 업데이트하는 것을 중지하도록 구성될 수도 있다. 사용자 디바이스는, 그 디바이스가 내려져 있거나 (예를 들어, 움직임이 없어지거나 임의의 이동이 임계치 미만이거나) 가입자가 통화중에 있다고 감지하자마자, 또는 시간의 임계 기간이 경과한 이후, 자신의 존재 업데이트 그룹을 업데이트하는 것을 중지할 수도 있다. 사용자 디바이스는 또한, 그 디바이스가 내려져 있다는 것을 감지하는 것과 함께 다른 정보를 사용할 수도 있다. 예를 들어, 예컨데, 한밤중이고 사용자 디바이스가 한 시간 동안 움직임이 없다고 그 디바이스가 결정하면, 그 디바이스는 가입자가 수면중이라고 가정할 수도 있고, 자신의 존재 업데이트 그룹을 업데이트하는 것을 중지할 수도 있다. 당업자에 의해 용이하게 이해될 바와 같이, 사용자 디바이스는, 사용자 디바이스의 자이로스코프 및 가속기를 레버리징함으로써 가입자가 그 디바이스를 내려놓았다고 감지할 수 있다.
또 다른 양상에서, 상기 양상과 부분적으로 유사하게, 사용자 디바이스는, 연장된 지속기간 (예를 들어, 비교적 긴 또는 비-일시적인 기간) 동안 실행을 계속할 가능성이 있는 애플리케이션, 예를 들어, 미디어 플레이어 또는 게임을 주어진 가입자의 사용자 디바이스가 실행하고 있을 경우, PV 업데이트 요청들을 전송하는 자신의 빈도를 감소시키거나, 중지하도록 구성될 수도 있다.
또 다른 양상에서, 주어진 가입자의 사용자 디바이스는, 존재 업데이트 그룹으로 이슈된 자신의 PV 업데이트 요청들 중 하나 또는 그 초과에 자신의 업데이트된 PV를 포함할 수도 있다. 예를 들어, 타겟 가입자의 사용자 디바이스가 전송중인 사용자 디바이스로부터 PV 업데이트 요청을 수신하는 각각의 시간에서, 타겟 사용자 디바이스는 전송중인 사용자 디바이스의 업데이트된 PV를 반영하기 위해 자신의 존재 업데이트 그룹을 업데이트할 수 있다. 인식될 바와 같이, 이러한 특성은, 가입자들의 각각의 사용자 디바이스들이 그들의 존재 업데이트 그룹을 계속 업데이트하는 것을 초래하는 어그리게이트(aggregate) 트래픽을 감소시킬 수도 있다.
본 발명을 판독할 시에 당업자들에 의해 인식될 바와 같이, 예시적인 실시형태들의 상술된 및 다른 특성들은 다른 이점들 중에서, 중앙화된 서버-기반 제어에 대한 필요성을 감소시키는 분산된 모니터링을 제공하며, 서버-관련된 병목들 없이 증가된 그리고 변하는 가입자의 로드들을 핸들링할 수 있는 안정되고 자체-적응적인 소셜 네트워킹 시스템을 추가적으로 제공한다.
도 4a는 주어진 사용자 디바이스가 PV 업데이트 요청들을 전송하는 빈도를 업데이트하는 프로세스를 도시한다.
도 4a를 참조하면, 주어진 가입자의 사용자 디바이스("UE 1")는 UE 1과 연관된 존재 정보(예를 들어, UE 1이 바쁘거나, 여유가 있음)를 결정한다 (500A). (500A)에서 결정된 존재 정보(예를 들어, PV)는 특정한 멀티미디어 애플리케이션 클라이언트와 관련될 수 있어서, 멀티미디어 애플리케이션 클라이언트와 연관된 통신 세션들(예를 들어, VoIP 통신 세션들, PTT 통신 세션들 등)에 참가하기 위해 (500A)에서 결정된 존재 정보가 주어진 가입자의 존재 또는 여유있음을 표시하게 한다. 이러한 예에서, 존재 업데이트 그룹 내의 타겟 연락처들은, 멀티미디어 애플리케이션 클라이언트의 버전을 또한 사용하는 주어진 가입자의 연락처들에 대응할 수 있다. 추가적인 예에서, 존재 정보는 멀티미디어 애플리케이션 클라이언트와 연관된 동작 상태에 기초할 수 있다 (예를 들어, 존재 정보는, 멀티미디어 애플리케이션 클라이언트가 UE 1의 실행 환경의 전경(foreground) 또는 주요 부분에서 실행하고 있는지, 멀티미디어 애플리케이션 클라이언트가 UE 1의 실행 환경의 배경 또는 비-주요 부분에서 실행하고 있는지 등을 표시할 수 있다).
도 4a를 참조하면, UE 1은, 빈도들의 제 1 세트에 따라 자신의 존재 업데이트 그룹 내의 하나 또는 그 초과의 연락처들로 존재 업데이트 메시지들을 송신한다 (505A). 일 예에서, (505A)에서 송신된 존재 업데이트 메시지들은 (i) (500A)로부터의 결정된 존재 정보, (ii) 존재 업데이트 메시지들이 송신되는 대응하는 타겟 연락처들로부터의 존재 정보 피드백에 대한 요청들 및/또는 (iii) (i)과 (ii)의 조합을 포함할 수 있다. 추가적인 예에서, 존재 업데이트 그룹은 하나 또는 그 초과의 서브-그룹들로 분할될 수도 있으며, 하나 또는 그 초과의 서브-그룹들의 각각은 주어진 우선순위 레벨을 갖는 연락처들로 상주되거나 주어진 우선순위 레벨 범위 내에 있다. 그 후, 타겟 존재 업데이트 빈도는 각각의 서브-그룹에 할당될 수 있어서, 존재 업데이트 메시지들이 (505A)에서 송신되는 빈도들의 제 1 세트를 초래한다. 예를 들어, 높은-우선순위 연락처들을 갖는 서브-그룹은 낮은-우선순위 연락처들을 갖는 서브-그룹과 비교하여 더 높은 빈도를 할당받을 수 있다. 또 다른 예에서, (500A)에서 결정된 존재 정보는 빈도들의 제 1 세트에 영향을 줄 수 있다. 예를 들어, 멀티캐스트 애플리케이션 클라이언트가 UE 1의 실행 환경의 전경 또는 주요 부분에서 실행하고 있다는 것을 (500A)에서 결정된 존재 정보가 표시하면, 빈도들의 제 1 세트는 (예를 들어, 하나의 서브-그룹에 대해, 각각의 서브-그룹에 대해 등) 더 높은 레벨로 셋팅될 수 있다. 또 다른 예에서, 멀티캐스트 애플리케이션 클라이언트가 UE 1의 실행 환경의 배경 또는 비-주요 부분에서 실행하고 있다는 것을 (500A)에서 결정된 존재 정보가 표시하면, 빈도들의 제 1 세트는 (예를 들어, 하나의 서브-그룹에 대해, 각각의 서브-그룹에 대해 등) 더 낮은 레벨로 셋팅될 수 있다.
추가적인 예에서, 상술된 바와 같이 네트워크 트래픽을 감소시키기 위해, 존재 업데이트 메시지들은 타겟팅된 연락처들 또는 서브-그룹들로부터 존재 정보를 추가적으로 요청하도록 구성될 수 있다. 도 4a의 예에서, 존재 업데이트 그룹이 N개의 서브-그룹들을 포함하고 (여기서, N≥2), UE 1이 (예를 들어, 서브-그룹들의 각각의 우선순위들 및/또는 각각의 서브-그룹들 내의 연락처들에 기초하여 상술된 바와 같이 서브-그룹마다 변할 수 있어서, UE 1이 제 1 빈도로 서브-그룹 1에 존재 업데이트 메시지들을 송신할 수 있게 하고, UE 1이 제 2 빈도로 서브-그룹 2에 존재 업데이트 메시지들을 송신할 수 있게 하는 등을 위한) 빈도들의 제 1 세트에 따라 (505A)에서 N개의 서브-그룹들의 각각 내의 각각의 연락처로 존재 업데이트 메시지들을 송신한다고 가정한다. 그러나, 다른 예들에서, UE 1은 단일 서브-그룹(예를 들어, N=1)에 존재 업데이트 메시지들을 송신할 수도 있다.
도 4a를 참조하면, 서브-그룹들 1...N의 각각 내의 각각의 연락처는 (505A)에서 UE 1에 의해 송신된 적어도 하나의 존재 업데이트 메시지를 수신하고, UE 1에 존재 업데이트 피드백을 제공한다 (510A 및 515A). 예를 들어, 서브-그룹들 1...N 내의 각각의 연락처는 (505A)에서 빈도들의 제 1 세트 중 하나의 빈도에 따라 UE 1의 존재 업데이트 메시지(들)를 수신하며, 피드백을 제공하는 연락처의 존재 정보(또는 PV)에 관해 UE 1을 업데이트하는 자신의 존재 업데이트 메시지를 이용하여 응답한다.
도 4a를 참조하면, 이후의 몇몇 시점에서, UE 1은 빈도들의 제 1 세트를 업데이트할지를 결정한다 (520A). 예를 들어, (520A)에서, UE 1은 업데이트가 전송될 하나 또는 그 초과의 다른 연락처들(또는 사용자 디바이스들)의 수에 기초하여 빈도들의 제 1 세트를 업데이트하도록 결정할 수도 있다. 이러한 예에서, 타겟 연락처들의 수가 임계 레벨을 초과하여 증가하면, 빈도들의 제 1 세트 중 적어도 하나의 빈도는 관리가능한 레벨로 시스템 트래픽을 유지하도록 감소된다. 대안적인 예에서, 타겟 연락처들의 수가 임계 레벨 미만으로 감소하면, 더 적은 타겟 연락처들이 더 많은 존재 업데이트 메시지들로 하여금 전체 시스템 트래픽을 증가시키지 않으면서 송신되도록 허용하기 때문에, 빈도들의 제 1 세트 중 적어도 하나의 빈도가 증가된다.
도 4a의 (520A)를 참조하면, 또 다른 예에서, UE 1은 이전의 존재 업데이트 메시지가 서브-그룹들 1...N에 속하는 하나 또는 그 초과의 연락처들로부터 수신된 이후의 시간의 양에 기초하여 빈도들의 제 1 세트를 업데이트하도록 결정할 수도 있다. 예를 들어, 이전의 존재 업데이트 메시지가 주어진 서브-그룹으로부터 수신된 이후의 시간의 양이 시간 임계치 미만이면, UE 1은 주어진 서브-그룹에 할당된 빈도들의 제 1 세트로부터의 주어진 빈도를 증가시키도록 결정할 수도 있으며, 이전의 존재 업데이트 메시지가 주어진 서브-그룹으로부터 수신된 이후의 시간의 양이 시간 임계치를 초과하면, UE 1은 주어진 빈도를 감소시키도록 결정할 수도 있다.
도 4a의 (520A)를 참조하면, 또 다른 예에서, UE 1은 서브-그룹들 1...N과 연관된 우선순위들(예를 들어, 서브-그룹들 내의 구성요소인 UE들의 우선순위들, 또는 서브-그룹들 그 자체들과 연관된 우선순위 프로파일)의 세트를 결정할 수도 있다. 그 후, 우선순위들의 결정된 세트는 빈도들의 제 1 세트를 업데이트할지를 결정하는데 사용된다. 예를 들어, 서브-그룹 1이 서브-그룹 2보다 더 높은 우선순위와 연관되고 빈도들의 제 1 세트가 서브-그룹 1보다 서브-그룹 2에 더 높은 빈도를 할당한다고 우선순위들의 세트가 표시하면, UE 1은 서브-그룹 1에 할당된 빈도를 증가시키고 및/또는 서브-그룹 2에 할당된 빈도를 감소시키는 빈도들의 제 2 세트를 생성하기 위해 빈도들의 제 1 세트를 업데이트하도록 결정할 수도 있다.
도 4a의 (520A)를 참조하면, 또 다른 예에서, UE 1은, UE 1이 록되는지에 부분적으로 기초하여 우선순위들의 제 1 세트를 업데이트하도록 결정할 수도 있다. 예를 들어, UE 1은 (존재한다면) UE 1에 적용된 록의 타입을 결정하고, 그 후, 결정된 타입의 록에 기초하여 빈도들의 제 1 세트를 업데이트할지를 결정한다. 이러한 양상은 더 상세히 후술된다.
도 4a의 (520A)를 참조하면, 또 다른 예에서, UE 1은, UE 1이 UE 1 상에서 특정한 애플리케이션을 동작 또는 실행하는 것을 유지하도록 기대되는 지속기간을 결정할 수도 있다. 결정된 지속기간이 임계 지속기간보다 크면, UE 1은 (520A)에서 빈도들의 제 1 세트를 업데이트하도록 결정할 수도 있다. 특정한 예에서, UE 1은, UE 1이 임계 지속기간을 초과하는 지속기간 동안 애플리케이션과 인게이지(engage)될 것이라는 결정에 기초하여 빈도들의 제 1 세트 중 하나 또는 그 초과의 빈도들을 감소시키도록 결정할 수도 있다.
도 4a의 (520A)를 참조하면, 또 다른 예에서, 가입자의 하나 또는 그 초과의 연락처들에 의해 동작되는 하나 또는 그 초과의 사용자 디바이스들은, 단계(505A)에서 UE 1가 존재 업데이트 메시지들에 대해 결정했던 빈도로 그 존재 업데이트 메시지들을 수신 및/또는 송신하기를 원치 않을 수도 있다. 그 경우, 연락처의 사용자 디바이스는, 그 디바이스가 특정한 빈도로만 또는 최대 레이트보다 크지 않은 빈도로 존재 업데이트 메시지들을 수신 및/또는 전송하기를 원한다는 것을 표시하는 정책을 포함한 존재 업데이트 피드백을 UE 1에 송신할 수도 있다. 예를 들어, 단계(505A)에서, UE 1은 존재 정보에 대한 요청을 포함하는 존재 업데이트 메시지를 특정한 연락처의 사용자 디바이스에 10분마다 전송하도록 결정할 수도 있다. 그러나, 그 연락처의 사용자 디바이스 또는 그 연락처는, 자신이 한시간마다 한번만, 존재 업데이트 메시지들을 수신 및/또는 UE 1으로 또는 가급적 자신의 존재 업데이트 그룹 내의 모든 연락처들로 전송하기를 원한다고 결정할 수도 있다. 그 경우, 그것은 그 법칙을 표시하는 존재 업데이트 메시지를 UE 1으로부터 수신하는 것에 응답하여 UE 1에 정책을 전송할 것이다. 그 후, UE 1은 그 UE 1이 그 연락처의 사용자 디바이스에 존재 업데이트 메시지들을 송신하는 빈도를 업데이트할 것이다. 또 다른 예에서, UE 1은 단계(505A)에서, 존재 정보에 대한 요청을 포함하는 존재 업데이트 메시지를 특정한 연락처 또는 연락처들의 그룹으로 5분마다 전송하도록 결정할 수도 있다. 그러나, 그들 연락처의 사용자 디바이스들 중 하나 또는 그 초과, 또는 연락처들 그 자체는, 그들이 존재 업데이트 메시지들을 수신하고 및/또는 UE 1으로 또는 가급적 자신의 존재 업데이트 그룹 내의 모든 연락처들로 존재 업데이트 메시지들을 매 15분보다 크지 않은 빈도로 (즉, 15분의 최대 레이트로) 전송하기를 원한다고 결정할 수도 있다. 그 경우, 그들 각각은, 그 법칙을 표시하는 존재 업데이트 메시지를 UE 1으로부터 수신하는 것에 응답하여 UE 1에 정책을 전송할 것이다. 그 후, UE 1은, 그 UE 1이 그 연락처들의 사용자 디바이스들로 존재 업데이트 메시지들을 송신하는 빈도를 업데이트할 것이다.
도 4a를 참조하면, UE 1이 (520A)에서 빈도들의 제 1 세트를 업데이트하지 않도록 결정하면, 프로세스는 (500A)로 복귀하며, UE 1은 (505A)에서 빈도들의 제 1 세트에 따라 서브-그룹들 1...N에 존재 정보를 계속 전송한다. 그렇지 않고, UE 1이 (520A)에서 빈도들의 제 1 세트를 업데이트하도록 결정하면, UE 1은 빈도들의 제 2 세트를 계산하고, 그 후, 빈도들의 제 2 세트에 따라 서브-그룹들 1...N에 존재 업데이트 메시지들을 송신한다 (525A). 도 4a에 명시적으로 도시되지는 않았지만, (525A)에서 송신된 존재 업데이트 메시지들은 (505A, 510A, 및 515A)에 관해 상술된 바와 같은 존재 업데이트 피드백을 요청(solicit)하기 위한 피드백 요청들을 또한 포함할 수 있다.
도 4b는 본 발명의 실시형태에 따른, 주어진 사용자 디바이스에 의해 보유되는 존재 업데이트 그룹에 보유된 가입자들의 수를 업데이트하는 프로세스를 도시한다.
도 4b를 참조하면, UE 1은 UE 1과 연관된 존재 정보(예를 들어, UE 1이 바쁘거나, 여유가 있음)를 결정한다 (500B). 일 예에서, (500B)의 결정은 상술된 도 5a의 (500A)의 결정과 유사하며, 그 결과, 간략화를 위해 추가적으로 설명되지 않을 것이다. UE 1은 단계(505B)에서, 주어진 가입자가 (500B)에서 결정된 존재 정보와 같은 존재 정보를 교환할 사용자 디바이스를 동작하는 주어진 가입자의 연락처들의 세트를 포함하는 존재 업데이트 그룹을 또한 획득한다. 예를 들어, 존재 업데이트 그룹은 UE 1 상의 연락처들의 리스트에 저장된 주어진 가입자의 연락처들 모두를 포함할 수도 있다. 대안적으로, 존재 업데이트 그룹 내의 연락처들의 세트는, 주어진 가입자의 연락처들의 서브세트에 대응할 수도 있다 (예를 들어, 주어진 가입자의 존재 정보가 특정한 멀티미디어 애플리케이션 클라이언트에 관한 것일 경우, 연락처들의 서브세트는 멀티미디어 애플리케이션 클라이언트의 버전을 또한 사용하는 연락처들을 포함할 수 있다).
도 4b를 참조하면, 존재 업데이트 그룹 내의 연락처들은 도 4a에 관해 상술된 바와 같이, (510B)에서 UE 1에 의해 식별되는 하나 또는 그 초과의 서브-그룹들로 분할될 수도 있다. (510B)에서 복수의 서브-그룹들의 식별은, (i) 복수의 서브-그룹들의 초기 생성, (ii) 서브-그룹들의 이전에 존재하는 세트에 대한 변형 또는 업데이팅 또는 (iii) (예를 들어, 로컬 메모리 또는 외부 메모리로부터의) UE 1에서의 서브-그룹들의 이전에 존재하는 세트의 로딩에 대응할 수 있다. 상술된 바와 같이, 하나 또는 그 초과의 서브-그룹들의 각각은, 주어진 우선순위 레벨을 갖거나 주어진 우선순위 레벨 범위 내에 있는 연락처들에 대응한다. 각각의 서브-그룹은 하나 또는 그 초과의 연락처들을 포함하며, 예를 들어, 도 4b에 도시된 예시적인 서브-그룹 1은 UE들 2...N과 연관된 연락처들을 포함하고, 여기서, N≥3이다.
서브-그룹들을 생성하기 위해, 존재 업데이트 그룹 내의 연락처들의 각각은 하나 또는 그 초과의 기준들의 세트에 대해 평가되고, 그 평가에 기초하여 우선순위를 할당받는다. 예를 들어, 기준들은, 연락처의 사용자-할당된 우선순위, 가입자 및/또는 UE 1이 연락처 및/또는 그 연락처에 의해 동작된 주어진 사용자 디바이스와 통신하는 빈도, 가입자 및/또는 UE 1이 연락처 및/또는 그 연락처에 의해 동작된 사용자 디바이스와 이전에 통신한 이후의 시간의 양, 가입자와 연락처 사이의 소셜 관계 특징들(예를 들어, 직장, 가족, 친구들 등), 가입자가 시간의 임계 기간 내에서 연락처와 통신할 가능도, 및/또는 UE 1이 연락처에 의해 동작된 사용자 디바이스로부터 존재 업데이트 메시지를 이전에 수신한 이후의 시간의 양을 포함할 수 있다. 일단 존재 업데이트 그룹 내의 각각의 연락처가 우선순위를 할당받으면, 연락처들은 그 우선순위에 기초하여 서브-그룹들로 분할된다. 예를 들어, 기준이 소셜 관계들이면, 가족 멤버들의 서브-그룹, 친구들의 서브-그룹, 직장 연락처들의 서브-그룹 등이 존재할 수도 있다. 또 다른 예에서, 기준이 가입자가 연락처와 마지막으로 통신한 이후의 시간의 양이면, 전날에 통신된 연락처들의 서브-그룹, 지난주에 통신한 연락처들의 서브-그룹, 지난달에 통신한 연락처들의 서브-그룹 등이 존재할 수도 있다.
도 4b의 (510B)를 참조하면, 일 예에서, 가입자의 하나 또는 그 초과의 연락처들에 의해 동작된 하나 또는 그 초과의 사용자 디바이스들은, 도 4a의 단계(520A)를 참조하여 설명된 바와 같이, 특정한 빈도로 또는 특정한 최대 레이트보다 크지 않은 빈도로 존재 업데이트 메시지들을 수신하고 및/또는 송신하기를 원할 수도 있다. UE 1이 동일한 선호된 업데이트 빈도 또는 최대 레이트를 갖는 그들 연락처들을 동일한 서브-그룹들로 결합할 수도 있음을 안다면, 그들의 선호된 빈도 정보에 따라 그들로 존재 업데이트 메시지들을 송신한다.
도 4b의 (510B)를 계속 참조하면, 특정한 연락처가 여기서 "멀티-그룹 연락처" 로서 지칭되는 하나 초과의 서브-그룹과 연관된 기준들을 충족시킬 수 있음을 인식한다. 예를 들어, 주어진 가입자는 자신의 형제와 함께 작업할 수도 있으며, 그 형제를 가족 및 직장 동료 서브-그룹들 양자의 구성요소인 것으로 자격을 부여한다. 또 다른 예에서, 주어진 가입자는 주어진 연락처와의 전화 통화를 직전에 종료할 수도 있으며, 이는 그 주어진 연락처를 지난주에 주어진 가입자에 의해 연락된 연락처들에 대한 제 1 서브-그룹 및 지난 24시간 내에 주어진 가입자에 의해 연락된 연락처들에 대한 제 2 서브-그룹의 구성요소인 것으로 자격을 부여한다. 이러한 경우, UE 1은 가장 높은 우선순위와 연관되도록 기대된 자격이 부여된 서브-그룹에 멀티-그룹 연락처를 할당하기를 시도할 것이다.
도 4b의 (510B)를 계속하면, 연락처들이 서브-그룹들로 분할된 이후, UE 1은 그들의 구성요소 연락처들의 우선순위들에 기초하여 각각의 서브-그룹의 우선순위를 결정한다. 일 예에서, 서브-그룹들의 우선순위가 이미 알려져 있고 (510B)의 결정이 단지 어느 서브-그룹들이 적어도 하나의 연락처를 포함하는지를 결정하도록, 서브-그룹들은 특정한 우선순위 범위 내의 연락처들로 상주될 수 있다. 또 다른 예에서, (510B)의 우선순위 결정은 서브-그룹의 우선순위를 계산하기 위해 각각의 서브-그룹의 구성요소 연락처들의 우선순위들을 평균할 수 있다. 어느 경우든, 더 높은 우선순위 연락처들의 서브-그룹이 일반적으로 더 낮은 우선순위 연락처들의 서브-그룹보다 더 높은 우선순위를 가질 것이다. 예를 들어, 가족 멤버들의 서브-그룹은 직장 동료들의 서브-그룹보다 더 높은 우선순위를 가질 수도 있다 (예를 들어, 이들 우선순위들이 시간에 걸쳐 시프트할 수도 있지만, 가족 멤버들은 주말 동안 우선순위화되고, 직장 동료들은 정상 근무 시간 동안 우선순위화된다). 또 다른 예에서, 가입자가 이전의 24시간 내에서 통신한 연락처들의 서브-그룹은, 가입자가 지난주에 통신한 연락처들보다 더 높은 우선순위를 가질 수도 있다.
도 4b의 (510B)를 참조하면, 빈도들의 제 1 및 제 2 세트들에 대해 도 4a에 관해 상술된 바와 같이, 서브-그룹 우선순위들에 기초하여, UE 1이 서브-그룹들에 존재 업데이트 메시지들을 송신할 빈도에 관한 결정이 행해진다. 각각의 서브-그룹은 상이한 빈도로 존재 업데이트 메시지들을 송신받을 수도 있지만, 요구되지는 않는다. 예를 들어, 가족 멤버들의 서브-그룹에 할당된 우선순위가 직장 동료들의 서브-그룹에 할당된 우선순위보다 더 높으면, 존재 업데이트 메시지들은 직장 동료들의 서브-그룹으로보다 더 빈번하게 가족 멤버들의 서브-그룹으로 송신될 수도 있다.
추가적으로, 모든 서브-그룹들이 할당된 빈도에 따라 존재 업데이트 메시지를 송신받아야만 하지는 않는다. 예를 들어, 서브-그룹 우선순위들을 획득한 이후, UE 1은 임의의 서브-그룹 우선순위들이 주어진 임계치 아래에 있는지를 결정할 수 있고, 그 후, 존재 업데이트 빈도 할당으로부터 주어진 임계치 미만의 우선순위를 갖는 연관된 서브-그룹들(존재한다면)을 배제시킬 수 있다. 예를 들어, 임의의 연락처들을 할당받지 못했던 서브-그룹은 존재 업데이트 메시지들을 수신하지 않을 것이다. 또 다른 예에서, 낮은 우선순위 연락처들만을 포함하는 서브-그룹은 존재 업데이트 메시지들을 수신하지 않을 것이다. 도 4b에서, 서브-그룹 3은, UE 1으로부터 존재 업데이트 메시지들을 수신하지 않는 서브-그룹의 일 예로서 제공된다.
이제 도 4b의 (515B)를 참조하면, UE 1은 서브-그룹들 1 및 2의 각각 내의 각각의 연락처로 적어도 하나의 존재 업데이트 메시지를 송신한다. 도 4b에 명시적으로 도시되지는 않았지만, (515B)의 송신(들)은 도 4a에 도시된 바와 같이, 각각의 서브-그룹의 각각의 빈도에 따라 수행될 수 있다. 일 예에서, (515B)에서 송신된 존재 업데이트 메시지들은 (i) (500B)로부터의 결정된 존재 정보, (ii) 존재 업데이트 메시지들이 송신된 대응하는 타겟 연락처들로부터의 존재 정보 피드백에 대한 요청들 및/또는 (iii) (i)과 (ii)의 조합을 포함할 수 있다. 도 4b에 도시된 예시적인 실시형태에서, UE 2를 제외한 각각의 연락처는 (520B 및 525B)에서 존재 업데이트 피드백을 UE 1에 제공한다. 이는, UE 1의 존재 업데이트 메시지들이 다른 연락처들로부터의 존재 정보 피드백만을 요청했다면, 및/또는 UE 2가 UE 1의 존재 업데이트 메시지를 수신하지 않거나 UE 1의 존재 업데이트 메시지에 응답하지 않기로 선택했다면(예를 들어, UE 2의 사용자가 존재 업데이트 송신들을 차단하는 등), 발생할 수도 있다.
도 4b의 (535B)를 참조하면, 임의의 연락처들 및/또는 서브-그룹들의 우선순위가 변할지에 관한 결정이 행해진다. 우선순위들이 변하지 않으면, 프로세스는 (515B)로 복귀하며, UE 1은 이전에 결정된 빈도들로 연락처들의 이전에 결정된 서브-그룹들(즉, 서브-그룹들 1 및 2)에 존재 업데이트 메시지들을 계속 송신한다. 임의의 연락처들 및/또는 서브-그룹들의 우선순위들이 변하면, 이제 (540B)를 참조하여, UE 1은 서브-그룹 포메이션들을 재계산 또는 업데이트한다. 예를 들어, (540B)에서, UE 1은 상이한 서브-그룹들 사이에서 연락처들을 전달하고 및/또는 존재 업데이트 그룹으로부터 연락처들을 완전히 제거할 수도 있다.
도 4b에 도시된 예에서, UE 2는 UE 1의 존재 업데이트 메시지에 응답하지 않는다. 그 결과, UE 2와 연관된 우선순위 레벨은 낮춰질 수도 있으며, UE 2가 서브-그룹 1로부터 그리고 또한 존재 업데이트 그룹으로부터 제거되는 것을 초래한다. 또 다른 예에서, 가입자가 하루 동안 통신하지 않았던 연락처는, 한주 동안 통신하지 않았던 연락처가 될 수도 있으며 (예를 들어, UE 2와 같은 특정한 연락처에 대한 연락처 비활성 타이머는 단지 24시간 마크를 경과했을 수도 있는 등), 따라서, 그 연락처는 적절한 서브-그룹에 재할당될 것이다. 또 다른 예에서, 더 이상 가입자의 친구가 아닌 연락처는 (예를 들어, 주어진 가입자가 친구로부터 비-친구로의 연락처의 소셜 상태를 변경한 평가에 기초하여) 가입자의 친구들에 대응하는 서브-그룹으로부터 제거될 것이거나, 친구가 결혼을 통해 가족 멤버가 될 수 있다. 상술된 바와 같이, 특정한 서브-그룹으로부터 제거된 연락처는 존재 업데이트 그룹으로부터 완전히 제거될 수 있거나 (예를 들어, 더 이상 친구가 아닌 이전의 친구가 완전히 제거됨), 연락처의 우선순위에서의 각각의 변화에 기초하여 하나의 서브-그룹으로부터 또 다른 서브-그룹으로 간단히 전달될 수 있다 (예를 들어, 이제 가족 멤버인 친구가 더 높은 우선순위 서브-그룹으로 이동될 수 있음). 또 다른 양상에서, 주어진 서브-그룹 내의 충분한 연락처들의 우선순위들이 변하면, 그 서브-그룹의 전체 우선순위는 변할 수 있다. 예를 들어, 우선순위 기준이 주어진 서브-그룹, 예를 들어, 직장 동료들의 서브-그룹 내의 연락처들과 가입자 사이의 통신 없이 경과한 시간의 임계 기간이며, 가입자가 휴가중이기 때문에 그 임계치가 초과되면, 그들 연락처들 및 그에 따른 서브-그룹의 우선순위가 감소될 수 있다. UE 1은, 그것이 우선순위에서의 감소에 응답했던 것보다 더 낮은 빈도로 존재 업데이트 메시지들을 전송할 것이다.
또 다른 예에서, 도 4a의 단계(520A)를 참조하여 설명된 바와 같이, 가입자의 하나 또는 그 초과의 연락처들에 의해 동작된 하나 또는 그 초과의 사용자 디바이스들은, 특정한 빈도로 또는 특정한 최대 레이트보다 크지 않게 자주 존재 업데이트 메시지들을 수신 및/또는 송신하기를 원할 수도 있다. 그러나, 몇몇 포인트에서, 그들 연락처들 중 하나 또는 그 초과는 자신의 선호된 빈도를 변경시킬 수도 있고, 존재 업데이트 피드백을 통해 그 변경을 UE 1에게 통지할 수도 있다. 그러한 변경은 단계(535B)의 목적들을 위한 우선순위 변경을 구성할 것이며, 단계(540B)에 도시된 바와 같이, 존재 업데이트 그룹 내의 복수의 서브-그룹들을 재식별하도록 UE 1에게 요구할 것이다.
도 4b의 (545B)를 참조하면, UE 1은 존재 업데이트 메시지들을 업데이트된 서브-그룹들로 송신한다. 도시된 바와 같이, UE 2는 존재 업데이트 메시지를 송신받지 않는다. 몇몇 포인트에서, UE 1이 UE 2로부터 응답을 수신하면, UE 1은 (535B)를 참조하여 설명된 바와 같이, UE 2에 할당된 우선순위를 재평가할 수도 있다. 즉, 존재 업데이트 그룹으로부터의 UE 2의 제거가 영구적일 필요는 없다.
이제 도 5를 참조하면, 도 4a 및 4b의 하나 또는 그 초과의 예시적인 실시형태들의 추가적인 양상들이 설명될 것이다. 도 5는 하나 또는 그 초과의 실시형태들에 따른 네트워크의 예시적인 흐름 블록도(400)를 도시한다. 도 5는, 클라이언트-투-서버 링크들(406ME, 406A, 406D, 및 406F)을 통하여 서버(또는 분산된 서버 리소스)(404)를 통해 상호접속되는 (402A, 402D 및 402F)로 라벨링된 3개의 다른 가입자 사용자 디바이스들과 상호접속되는 자신의 사용자 디바이스(402ME)를 갖는 "ME" 로 명칭된 가설적인 가입자 사용자의 대표적인 예를 도시한다. 사용자 디바이스들(402ME, 402A, 402D 및 402F)은 총칭하여 (402)로서 참조되며, 클라이언트-투-서버 링크들(406ME, 406A, 406D, 및 406F)은 총칭하여 (406)으로서 참조된다.
클라이언트-투-서버 링크들(406)이 반드시 기재된 실시형태에 특정되지는 않음을 이해할 것이다. 하나의 예시적인 예로서, 클라이언트-투-서버 링크들(406)은 무선 네트워크 프로토콜 내의 제어 채널일 수도 있다. 이것은 단지 하나의 예일 뿐이며, 구현들의 범위에 대한 임의의 제한으로서 의도되지 않는다. 추가적으로, 각각의 도 5의 "링크"(406)가 기능적인 양상이며, 반드시 단일 링크 또는 임의의 특정한 물리 링크이지는 않음을 이해할 것이다. 당업자들은 본 발명을 판독할 시에, 이것을 이해할 것이며, 클라이언트-투-서버 링크들(406) 또는 등가물들을 구현하기 위해 적절한 매체들 및 프로토콜(들)을 용이하게 선택할 수 있음을 이해할 것이다. 따라서, 링크들(406)의 추가적인 상세한 설명은 생략된다.
도 5를 계속 참조하면, 사용자 디바이스(402ME)에 의해 개시된 하나의 업데이팅 동작을 위한 메시지 송신의 다양한 스테이지들 또는 단계들이 도시되어 있다. 설명된 메시지들이 도시된 클라이언트-투-서버 링크(406) 상에서 이동한다고 가정될 수 있다. 그러나, 사용자 디바이스(402ME)에 의해 전송된 메시지들 중 하나 또는 그 초과, 예를 들어, PV 업데이트 요청(408ME)이 (도 5에 도시되지 않은) 대안적인 링크들을 통해 통신될 수도 있음을 이해할 것이다.
도 5의 예(400)에서, (도 4a의 (505A) 및 4b의 (515B)에 도시된 바와 같이) 사용자 디바이스(402ME)에 의해 전송된 PV 업데이트 요청(408ME)은, (도 4a의 (500A) 및 도 4b의 (500B)에 도시된 바와 같이) PV 업데이트 요청(408ME)이 전송되는 시간의 그 사용자 디바이스(402ME)의 PV를 포함한다. 예시의 목적들을 위해, 사용자 디바이스(402ME)의 PV는 "pv1"로 명칭될 것이다. 유사하게, "pv2", "pv5", 및 "pv7" 이 사용자 디바이스들(402A, 402D 및 402F)에 의해 전송되고 그들과 연관된 각각의 PV 값들이고, 이들 PV들이 이들 사용자 디바이스들의 각각의 통신 상태를 특성화한다고 가정할 것이다.
도 5를 계속 참조하면, PV 업데이트 요청(408ME)은 "MyIP"로 라벨링된 필드값을 갖는 가입자 "ME"를 식별한다. MyIP가 가입자 ME에 고유한 식별자를 포함하고, 예시의 목적들을 위해 ME의 IP 어드레스를 포함한다고 가정할 수도 있다. 도 5에 도시된 바와 같은 실시형태들을 실시하려는 목적들에 있어서, IP 어드레스가 불필요함을 이해할 것이다. 유사하게, (예를 들어, 도 4a의 (510A 및 515A) 또는 도 4b의 (520B 및 525B)와 같이) PV 업데이트 요청(408ME)을 수신한 이후 사용자 디바이스들(402A, 402D 및 402F)이 전송하는 응답들은, 전송기의 IP 어드레스를 갖는 것으로서 도시되어 있으며, 또한 유사하게, 이들 IP 어드레스들은 도 5에 도시된 바와 같은 실시형태들을 실시하는데 불필요하다.
가입자 ME의 통신 상태를 특성화하는 이전에 설명된 "MyIP" 필드 및 "pv1" 필드에 부가하여, PV 업데이트 요청(408ME)은 타겟 어드레스들 A, D 및 F를 갖는다. 타겟들이 사용자 디바이스들(402A, 402D 및 402F)인 이유가 A, D 및 F 가입자들이 사용자 디바이스(402ME)에 의해 보유된 존재 업데이트 그룹 내에 있기 때문이라고 가정할 수도 있다. 하지만, 도 5에 도시된 개념들을 이해하려는 목적들에 있어서, PV 업데이트 요청(408ME)을 사용자 디바이스들(402A, 402D 및 402F)에 전송하는 (402ME)에 대한 특정한 원인들은 관련성이 없다.
도 5를 계속 참조하면, PV 업데이트 요청(408ME)은 서버(404)에 진입하고, 응답하여, 서버(404)는 PV 업데이트 요청을 (410ME)로서 사용자 디바이스(402A)에, (412ME)로서 사용자 디바이스(402D)에, 그리고 (414ME)로서 사용자 디바이스(402F)에 송신한다. 사용자 디바이스(402A)는, (예를 들어, 도 4a의 (510A 및 515A) 또는 도 4b의 (520B 및 525B)와 같이) 사용자 디바이스(402A)의 pv2 존재값을 갖는 응답 메시지(416ME)를 전송함으로써 PV 업데이트 요청 메시지(410ME)에 응답하며, 서버(404)는 이것을 PV 응답 메시지(418ME)로서 사용자 디바이스(402ME)에 포워딩한다. 유사하게, 사용자 디바이스(402D)는, (도 4a의 (510A 및 515A) 및 도 4b의 (520B 및 525B)에 도시된 바와 같이) 서버(404)가 PV 응답 메시지(422ME)로서 사용자 디바이스(402ME)에 포워딩하는 PV 응답 메시지(420ME)에서 자신의 pv5 존재값을 전송함으로써 PV 업데이트 요청 통신(412ME)에 응답한다.
도 5의 예(400)에서, 사용자 디바이스(402F)는 (예를 들어, 도 4b의 (515B)로부터의 UE 1의 존재 업데이트 메시지에 UE 2가 응답하지 못하는 것으로 도시된 바와 같이) PV 업데이트 요청 통신(414ME)에 응답하지 않는 것으로서 도시되어 있다. 이러한 응답 실패는, 예를 들어, 낮은 수신 품질을 갖는 사용자 디바이스(402F)에 의해 초래될 수도 있다. 일 양상에서, 사용자 디바이스(402ME) (및 또한 다른 사용자 디바이스들)는 이것 및 후속하는 응답 수신 실패들을 검출하기 위한 메커니즘을 갖는다. 예시의 목적들을 위해, 사용자 디바이스(402)는 PV 업데이트 요청이 전송된 경우에 타이머를 셋팅할 수도 있으며, 시간이 만료하면, 요청을 재전송할 수도 있다. 일 양상에서, 사용자의 디바이스들은 최대 수의 재시도들을 가질 수도 있으며, 그 수가 초과되면, (도 4b의 (535B)에 도시된 바와 같이) 타겟 사용자 디바이스가 여유가 있지 않다(UNAVAILABLE)는 것을 사용자 디바이스 존재 업데이트 그룹에 지정할 수도 있다. 도 5의 예(400)에서, 사용자 디바이스(402ME)는 재전송 PV 업데이트 요청들을 (424ME)로서 서버(404)에 전송하고, 서버(404)는 PV 업데이트 요청 통신(426ME)으로서 사용자 디바이스(402F)에 포워딩한다. 이러한 예시에서, 사용자 디바이스(402F)는 PV 업데이트 응답 메시지(428ME)를 이용하여 응답하며, 서버(404)는 이러한 PV 업데이트 응답 메시지(428ME)를 (430ME)로서 사용자 디바이스(402ME)에 포워딩한다. 이제, 사용자 디바이스(402ME)는 업데이트된 존재 업데이트 그룹을 가지며, 그 업데이트된 존재 업데이트 그룹은 사용자 디바이스(402ME)가 사용자 디바이스들(402A, 402D 및 402F)로부터 수신했던 pv2, pv5 및 pv7 값들을 반영한다.
일 양상에서, 사용자 디바이스들(402)은 수신된 PV 업데이트 요청들과 그들의 PV 업데이트 요청들에 대한 수신된 응답들 사이를 구별하기 위한 메커니즘을 포함할 수도 있으며, 이는 이들 메시지들의 조사에 기초한다. 예를 들어, 사용자 디바이스들(402)은, 그들이 다른 가입자들의 사용자 디바이스들로부터 수신된 PV 업데이트 요청들에 대한 그들의 응답들에 적용한 포맷과는 상이한 포맷을 그들의 PV 업데이트 요청들에 적용할 수도 있다. 일 양상에서, 사용자 디바이스들(402)은 그들의 PV 업데이트 요청들 및 PV 업데이트 요청들에 대한 그들의 응답들 양자에 비트 필드를 포함시키고, PV 업데이트 요청들과 PV 업데이트 요청들에 대한 응답들 사이를 구별하는 플래그로서 비트값을 그 필드 내에 셋팅하도록 구성될 수도 있다. 예를 들어, 그러한 비트 필드는 단일 비트 폭일 수도 있으며, 플래그 방식은, PV 업데이트 요청들에 대해 로지컬 "1" 및 PV 업데이트 요청들에 대한 응답들에 대해 로지컬 "0"의 값을 할당할 수도 있다. 예시하기 위해 도 5의 예를 참조하면, PV 업데이트 요청에 대한 응답으로부터 권면 상(on its face) 구별가능할 PV 업데이트 요청의 그러한 형성의 일 이점은, (402ME)와 같은 사용자 디바이스가, 사용자 디바이스(402A)에 의해 전송된 PV 응답 메시지(418ME)와 같은 수신된 메시지의 간단한 조사에 의해, 사용자 디바이스(402A)에 의해 전송된 PV 업데이트 요청으로서 그 응답 메시지(418ME)를 해석하지 않을 것이라는 것이다. 적어도 이러한 예에서, 그러한 오해석이 사용자 디바이스(402ME)가 그 PV 응답 메시지(418ME)에 대한 응답을 다시 사용자 디바이스(402A)에 전송하는 것을 초래할 수 있음이 상상가능하다. 또한, 적어도 사용자 디바이스들(402)이 PV 업데이트 요청들과 PV 업데이트 요청들에 대한 응답들 사이를 구별하기 위한 다른 메커니즘을 갖지 않는 가설의 구성에서, 수용가능하지 않은 전후 메시징이 잠재적으로 초래될 수 있다는 것이 상상가능하다.
플래그의 상술된 사용이 사용자 디바이스들(402)이 그들의 PV 업데이트 요청들에 대한 응답들에 응답하는 것을 방지하거나 또는 그렇지 않으면 그러할 가능성을 제거하기 위한 메커니즘의 일 예일 뿐임을 이해할 것이다. 이들 실시형태들에 관계한 당업자들은, 본 발명을 판독하거나 본 발명의 실시형태들에 따라 실시할 시에, 다양한 대안적인 수단들 및 방법들을 식별할 수 있을 것이다.
이전에 설명된 바와 같이, 사용자 디바이스들(402)은 사용자 디바이스들(402)을 타겟팅하기 위한 PV 업데이트 요청들을 전송하기 위해 다양하고 상이한 트리거링 이벤트들을 적용하도록 구성될 수도 있다. 하나의 예시적인 트리거 이벤트는, (도 4b의 (535B)에 도시된 바와 같이) 사용자 디바이스가 또 다른 가입자의 사용자 디바이스에 대해 자신의 존재 업데이트 그룹에서 엔트리를 보유하기 위한 주어진 최대 허용된 시간을 (업데이트되는 그 엔트리에 대한 PV 없이) 기준으로서 사용하는 타임아웃일 수도 있다. 일 양상에서, 이것은 디폴트 타임아웃일 수도 있다. 또 다른 양상에서, 사용자 디바이스는 (도 4b의 (510B)에 도시된 바와 같이) 자신의 존재 업데이트 그룹 내의 가입자 사용자 디바이스들의 상이한 디바이스들에 상이한 타임아웃들을 적용하도록 구성가능할 수도 있다. 이러한 양상에 대해 추가적으로, 사용자 디바이스는, 그 사용자 디바이스가 현재 갖고 있거나 최근에 가졌었던 자신의 존재 업데이트 그룹 내의 각각의 가입자의 사용자 디바이스와의 통신(들)의 타입(들)에 기초하여 그 각각의 가입자의 사용자 디바이스에 그 사용자 디바이스가 적용하는 특정한 타임아웃을 선택하도록 구성될 수도 있다.
PV 업데이트 요청들의 타임아웃 기반 전송의 일 예시로서, 도 5의 예(400)의 사용자 디바이스(402ME)가 자신의 사용자 디바이스(402ME)를 통해 사용자 디바이스(402A)와 통신한다고 가정한다. 따라서, 사용자 디바이스(402ME)의 존재 업데이트 그룹이 사용자 디바이스(402A)에 대한 엔트리를 갖는다는 것이 가정될 것이다. 시간 T0에서, 사용자 디바이스(402ME)가 사용자 디바이스(402A)의 PV 값의 업데이트를 수신한다고 가정한다. 도 5의 예에서, 이것은 pv2이다. (402ME)가 시간 T0에서 수신한 이러한 업데이트는, 사용자 디바이스(402ME)가 사용자 디바이스(402A)에 이전에 전송했던 PV 업데이트 요청에 대한 응답일 수도 있다. 대안적으로, 사용자 디바이스(402ME)는, 사용자 디바이스(402A)에 의해 전송된 (도 5에는 명시적으로 도시되지 않은) PV 업데이트 요청에서 업데이트된 pv2를 수신할 수도 있다. 다음으로, 사용자 디바이스(402ME)가 자신의 존재 업데이트 그룹 내의 사용자 디바이스(402A)에 대한 엔트리의 자신의 업데이팅을 위해 EX의 타임아웃 값을 적용한다고 가정한다. 따라서, 시간 T0+EX에서, 사용자 디바이스(402ME)가 사용자 디바이스(402A)로부터 또 다른 PV 업데이트를 수신하지 않으면, 사용자 디바이스(402ME)는 사용자 디바이스(402A)에 PV 업데이트 요청을 자동적으로 전송할 것이다.
일 양상에서, 그 후, 사용자 디바이스(402ME)는 사용자 디바이스(402A)로부터의 응답을 대기할 수도 있다. 예를 들어, 사용자 디바이스(402ME)는 PV 업데이트 요청을 사용자 디바이스(402A)로 전송하는 것과 함께, "응답 대기" 타임아웃을 갖는 또 다른 타이머를 셋팅할 수도 있다. 대안적으로, 사용자 디바이스(402ME)는, 그 디바이스가 먼저 이러한 PV 업데이트 요청을 사용자 디바이스(402A)에 전송할 때를 결정하기 위해 사용했던 동일한 타이머 및 동일한 타임아웃을 간단히 사용할 수도 있다. 즉, 시간 T0+EX에서, 사용자 디바이스(402ME)가 상술된 PV 업데이트 요청을 전송하면, 그 디바이스는 (증분 또는 감분 카운터가 사용되는지에 의존하여 제로 또는 EX 중 어느 하나로) 타이머를 리셋한다.
사용자 디바이스(402ME)가 사용자 디바이스(402A)에 대해 저장했었던 pv2를 그 사용자 디바이스(402ME)가 업데이트하는 상기 예시적인 시나리오로 계속하여, 일 양상에서, 모든 사용자 디바이스들(402)이 적어도 그들의 존재 업데이트 그룹을 업데이트하기 위한 그들의 방식들에 관하여, 다른 가입자들의 사용자 디바이스들(402)의 업데이트된 PV들을 반영하도록 유사하게 구성될 수도 있음을 이해할 것이다. 따라서, T0에서 사용자 디바이스(402ME)가 사용자 디바이스(402A)와 통신했으므로, 그 후, 사용자 디바이스(402A)의 관점으로부터, 그 디바이스(402A)는 사용자 디바이스(402ME)와 통신했었다. 따라서, 시간 T0에서, 사용자 디바이스(402A)는 사용자 디바이스(402ME)의 PV 값 pv1의 자신의 로컬 저장된 카피를 보유했었고, 또한, 사용자 디바이스(402ME)의 자신의 로컬 저장된 pv1을 업데이트하기 위한 (사용자 디바이스(402ME)에 의해 적용된 방식과 동일할 수도 있거나 동일하지 않을 수도 있는) 방식을 적용했었다. 따라서, 사용자 디바이스들(402ME 및 402A) 중 자신이 저장한 PV에 대한 자신의 타임아웃 값에 다른 사용자 디바이스에 비해 먼저 도달하는 사용자 디바이스(또는, 이러한 사용자 디바이스들(402ME, 402A) 중 다른 사용자 디바이스에 의한 타임아웃 이전에 그 다른 사용자 디바이스에 자신의 PV를 전송하기 위한 다른 타입의 트리거링 이벤트를 먼저 경험하는 사용자 디바이스)는 PV 업데이트 요청을 먼저 전송하는 사용자 디바이스(402)일 것이다.
본 발명의 실시형태들에 따른 고려된 예시적인 시나리오는, 도 5의 예(400)에 대한 예시의 목적들을 위해 참조하면, (402)와 같은 수천 개의 사용자 디바이스들이 임의의 주어진 시간에 (예를 들어, (404)와 같은 서버 또는 서버 리소스를 통해) 상호접속되는 것을 제공할 수도 있음을 이해할 것이다. 추가적으로, 그들 각각의 사용자 디바이스들(402)을 통한 수천개의 가입자-투-가입자 통신들이 임의의 주어진 인스턴트에 존재할 수도 있으며, 이들의 대부분은 멀티-멤버, 멀티-참가자 또는 멀티-참석자 그룹들일 수도 있음이 고려된다. 따라서, 각각의 사용자 디바이스(402)가 그들 각각의 PV 업데이트 요청들을 전송할 때를 결정하기 위해 적용하는 타임아웃들 및 다른 인자들의 셋팅을 위한 규격들 및 법칙들을 설정할 경우, 그러한 시나리오들이 고려될 수도 있음을 인식할 것이다. 본 발명으로부터 관련 분야의 당업자들에 의해 용이하게 이해될 바와 같이, 그러한 규격들 및 법칙들을 설정하기 위한 하나의 일반적인 가이드라인은 다음과 같다: 사용자 디바이스들이 너무 많은 다른 가입자 PV들을 보유하고, 및/또는 사용자 디바이스들이 PV 업데이트 요청들을 너무 빈번하게 전송하면, 네트워크 또는 사용자 디바이스들 중 하나 또는 그 양자는 불필요하게 오버로딩될 수도 있다. 그러한 오버로드의 하나의 부가적인 예로서, 너무 짧은 타임아웃들이 특히, 그룹 통신에서, 다수의 참가자들의 사용자 디바이스들이 PV 업데이트 요청들을 다른 참가자 디바이스들로 불필요하게 전송하는 가능성을 증가시킬 수도 있음을 용이하게 인식할 것이다. 또한, 도 6 및 7을 참조하여 상세한 설명으로부터 추가적으로 이해될 바와 같이, 너무 많은 가입자 PV들이 사용자 디바이스에 의해 보유되고 있으면, 그 결과는 그 사용자 디바이스 상에서 이들 PV들을 디스플레이하는 것이 실용적이지 않게 될 것이라는 것일 수 있다. 한편, 사용자 디바이스들이 너무 적은 다른 가입자 PV들을 보유하고, 및/또는 이들 PV들을 충분히 빈번하게 업데이트하지 않으면, 너무 많은 통신들이 여유가 있지 않은 가입자들 또는 더 이상 참가하지 않는 가입자들로 전송될 수도 있다.
상기 고려들 및 시나리오들에 대해 추가적으로, 하나 또는 그 초과의 예시적인 실시형태들은, 도 4b에 도시된 바와 같이 사용자 디바이스에 의해 보유되는 존재 업데이트 그룹들에 보유된 가입자들의 수, 및 도 4a에 도시된 바와 같이 사용자 디바이스들이 PV 업데이트 요청을 전송하는 빈도의 수의 스로틀링(throttling) 및 다른 적응성을 제공한다.
그러한 예시적인 실시형태들 중 적어도 하나에 따른 일 양상에서, 사용자 디바이스들은 (도 4a의 (505A, 520A, 및 525A)에 도시된 바와 같이) 사용자 디바이스가 보유하는 PV들의 수에 관해 타임아웃 값을 증가(즉, PV 업데이트들 사이의 최대 허용된 시간을 증가)시키도록 구성될 수도 있다. 달리 나타내면, 그러한 일 양상에 따르면, 존재 업데이트 그룹이 길어질수록, 전송되는 PV 업데이트 요청들 사이의 시간이 길어진다. 이러한 일 양상에 대해 추가적으로, 사용자 디바이스들은 큰 그룹들 내의 다른 가입자들의 PV들에 대한 타임아웃을 (증분적으로 또는 임계 단계 방식으로) 증가시키도록 구성될 수도 있다. 타임아웃을 증가시키기 위한 각각의 그룹 사이즈 임계치들은 통신의 타입과 독립적으로 고정될 수도 있거나, 통신의 타입(예를 들어, 그룹이 상호적인 게임을 플레이하고 있는지)에 기초하도록 추가적으로 적응가능할 수도 있다.
또 다른 스로틀링 양상에서, 다른 가입자들이 사용자 디바이스의 존재 업데이트 그룹으로부터 삭제되는 임계치 "최종 통신 이후의 시간" 또는 등가물은 존재 업데이트 그룹의 길이에서의 증가와 대응하여 감소될 수도 있다. 즉, 일 예에서, 통신 시간-기반 서브-그룹의 기준들은 변경될 수 있으며, 이는 도 4b의 (535B)에서 발생할 수도 있다.
상기 적응적인 "최종 통신 이후의 시간"에 대한 추가적인 일 양상에서, 사용자 디바이스들은, (도 4b의 단계(510B 및 515B)에 도시된 바와 같이) 각각의 PV의 연관된 "최종 통신 이후의 시간"에 기초하여 존재 업데이트 그룹을 서브-그룹들로 카테고리화하고, (예를 들어, 도 4b의 단계들(535B, 540B, 및 545B)에 도시된 바와 같이) 더 긴 "최종 통신 이후의 시간"을 갖는 서브-그룹들에 더 큰 타임아웃 값들을 적용하도록 구성될 수도 있다.
하나의 스로틀링 양상에서, 사용자 디바이스의 존재 업데이트 그룹 내의 다른 가입자들은, 특정한 리스트된 가입자의 하나 또는 그 초과의 특징들에 따라 카테고리화될 수도 있다. 예를 들어, 카테고리 1(또는 서브-그룹 1)은 중요한 비지니스 연락처들일 수도 있고, 카테고리 2(또는 서브-그룹 2)는 그의 사용자 디바이스가 그러한 존재 업데이트 그룹을 보유하고 있는 가입자와 관련하여, 정확한 (즉, 최근에 업데이트된) PV를 요구하지 않을 수도 있는 사람들일 수도 있다.
네트워크 상에서 불필요한 메시지 트래픽을 감소시키는 유사한 목적을 위해, 사용자 디바이스는 이전에 설명된 바와 같이, 그 사용자 디바이스가 록될 경우 존재 업데이트 그룹 업데이팅을 수행하는 것을 중지하도록 구성될 수도 있다. 이것은 또한 사용자 디바이스의 배터리 전력을 보존할 수도 있다. 일 양상에서, 사용자 디바이스는 다수의 록 모드들을 가질 수도 있으며, 그러한 사용자 디바이스는, 어느 록 모드들에 사용자 디바이스가 위치되는지에 기초하여 존재 업데이트 그룹 업데이팅을 수행하는 것을 중지할지를 결정하도록 구성될 수도 있다. 예를 들어, 이전에 설명된 바와 같이, 사용자 디바이스는, 미인가된 사람들이 디바이스를 사용하는 것을 방지하기 위한 하나의 록 모드, 및 사용자의 주머니에 위치되는 경우 발생할 수도 있는 부주의한 키 누름을 방지하기 위한 부주의한 키 디스에이블링 록 모드를 가질 수도 있다. 이러한 양상에 따른 사용자 디바이스는, 사용자 디바이스가 부주의한 키 디스에이블링 록 모드에 있는 동안 존재 업데이트 그룹 업데이팅을 보유하는 옵션을 가입자에게 제공하도록 구성될 수도 있다. 도 4b에 관련해서, 사용자 디바이스가 록되는 경우, (535B)의 결정은, 구성요소 연락처들 및/또는 서브-그룹들의 우선순위들이 변했다고 결정되더라도, (540B 및 545B)로의 진행 대신 (515B)로의 복귀를 초래할 것이다.
또한 이전에 설명된 또 다른 양상에서, 사용자 디바이스는 가입자가 자신이 연장된 지속기간 동안 유지하길 원하는 애플리케이션, 예를 들어, 미디어 플레이어 또는 게임에 있는 경우 PV 업데이트 요청들을 전송하는 빈도를 감소시키거나 이를 중지하도록 구성될 수도 있다(예를 들어, 일 예에서 도 4a의 (520A)에서 결정됨).
일 양상에서, 가입자가 실시형태들에 따른 네트워킹 애플리케이션을 개시하는 것과 같은 트리거링 이벤트 시에, 가입자의 사용자 디바이스는 (예를 들어, 도 4b의 단계(505B)에 도시된 바와 같이) (존재한다면) 자신의 존재 업데이트 그룹의 콘텐츠를 반영하는 초기 디스플레이를 제공할 수도 있다. 일 양상에서, 이들은 이러한 가입자가 최근에 통신했던 다른 가입자들일 수도 있다. 관련 양상에서, 이들은 이러한 가입자가 여전히 통신을 진행하고 있지만, 예시적인 일 예로서, 네트워킹 애플리케이션을 임시적으로 종료시키고 또 다른 일에 참가하도록 강제되었던 다른 가입자들일 수도 있다.
존재 정보는 일반적으로 매우 짧은 시간 기간 동안에만 관련성이 있다. 따라서, 본 발명의 또 다른 양상에서, 존재 정보는 전달될 수 없거나 전달가능하지 않은 존재 업데이트 메시지들로부터 없어지게 된다(strip). 추가적으로, 존재 업데이트 메시지들은 네트워크 이력으로부터 생략될 수도 있다. 즉, 네트워크 이력에서 일반적으로 큐잉될 존재 업데이트 메시지들은, 생략되거나, 비-존재 업데이트 메시지들과 비교하여 짧은 시간 기간 동안에만 저장될 수도 있다.
도 6은, 복수의 레코드들(506)을 갖는 일 예시적인 존재 업데이트 그룹(500)을 도시하며, 각각의 레코드는 가입자 명칭 필드(502) 및 대응하는 가입자 PV 필드(504)를 갖는다. 도 6의 존재 업데이트 그룹(500)이 시간 스냅샷을 나타냄을 이해할 것이다. 더 상세하게 나타내면, 일 양상에서, 도 6의 예(500)와 같은 존재 업데이트 그룹은 현재 및 최근의 통신들을 반영하도록 동적으로 업데이트하며, 가입자가 현재 멤버 또는 참가자인 그룹들 뿐만 아니라 가입자가 더 이상 활성 멤버는 아니지만 자신의 현재(또는 이전의) 멤버들과의 후속(follow-on) 통신의 가능성을 갖는 그룹들을 포함한다. 도 6의 예에서 나타난 레코드들(506)의 수가 반드시 실제 수, 또는 그룹들과, 존재 업데이트 그룹(500)과 같은 다른 가입자들의 주어진 사용자 디바이스의 리스트에 나타날 개별 다른 가입자들 사이의 실제의 관련 수를 나타낼 필요는 없다는 것을 이해할 것이다. 본 발명으로부터 당업자들에 의해 용이하게 인식될 수 있는 바와 같이, 실제 수는 상이한 가입자들 사이에서 상당히 변할 뿐만 아니라 하루의 시간 또는 날씨와 같은 인자들에 기초하거나 그들과 관련하여 변할 수도 있다.
도 6의 예시적인 존재 업데이트 그룹(500)은 그의 도시된 상태에서, 이러한 리스트를 저장하는 사용자 디바이스와 연관된 가입자에 대한 레코드(506)를 갖고, 5명의 다른 가입자들 각각에 대한 레코드(506)를 가지며, 이들은 "A", "B", "D", "E" 및 "F"의 가입자 명칭 필드 값들을 갖는다. 예시적인 존재 업데이트 그룹(500)은 또한 "C"로 명칭된 하나의 서브-그룹 엘리먼트를 갖는다. "A" ... "F"가 실제 명칭들일 수도 있거나 별칭들일 수도 있음을 이해할 것이다. 존재 업데이트 그룹(500) 내의 각각의 개별 가입자에 대한 레코드(506)는 자신의 필드(504)에서 연관된 PV 값을 갖는다. 서브-그룹 엘리먼트 C에 대한 레코드는 PV 값을 갖지 않는다. 관련 분야의 당업자들에 의해 용이하게 이해될 바와 같이, 그 원인은, 서브-그룹 엘리먼트 C가 적어도 사용자 디바이스를 통해 도달가능한 것에 관해 단일의 통신 상태를 갖지 않기 때문이다. 그러나, 도 6의 예시적인 존재 업데이트 그룹(500)을 저장하는 사용자 디바이스와 연관된 가입자는 서브-그룹 C의 각각의 멤버에 대한 PV를 안다. 더 상세하게 나타내면, 존재 업데이트 그룹(500)은, 자신의 가입자 명칭 필드(502-C)에서 자신의 멤버 가입자들 A, D, 및 E의 명칭을 표시하며, 이들 및 그들 각각의 PV들 모두는 또한 리스트에 나타난다. 따라서, 서브-그룹 엘리먼트 C는 일 예이며, 그에 의해, 특정한 서브-그룹 내의 구성요소 연락처는 연락처들의 요약 또는 그룹에 실제로 대응할 수 있고, 특정한 단일 연락처일 필요는 없다.
도 6의 예시적인 존재 업데이트 그룹(500)은 서브-그룹 1, 서브-그룹 2, 및 서브-그룹 3으로의 존재 상태 레코드들(506)의 예시적인 그룹화를 도시한다. 일 양상에 따른 예가 이들 예시적인 서브-그룹들을 사용하여 도 7을 참조하여 설명될 것이다. 이전에 설명된 바와 같이, 서브-그룹들 1, 2 및 3이 보유될 수도 있는 파라미터들은 통신의 최신성, 다른 가입자들의 다양한 특성화들(예를 들어, 중요한 비지니스 연락처 또는 덜 중요한 엔티티), 및 알파벳 순서이다.
도 7은, 도 6의 예시적인 존재 업데이트 그룹(500)과 함께, 그러한 존재 업데이트 그룹으로부터 사용자 디바이스를 갖는 가입자로 정보를 제공하기 위한 로컬 디스플레이 방식의 일 예시적인 디스플레이 방식(604)을 도시한다.
도 7의 예시적인 디스플레이 방식(604)은, 존재 업데이트 그룹(500)의 서브-그룹 1 내의 가입자들만을 활성 스크린 영역들(606)에서 디스플레이하도록 (초기에 또는 가입자에 의해) 구성된 사용자 디바이스를 가정할 것이다. 따라서, 활성 스크린 영역(606)은 가입자들 A 및 B, 및 서브-그룹 엘리먼트 C를 도시한다. 일 양상에서, 활성 스크린 영역들(606) 중 하나 또는 그 초과는 컬러, 밝기, 또는 도 7의 예에 도시된 바와 같이 전경 대 배경 배열에 의해 하이라이트될 수도 있다. 디폴트 하이라이트 또는 다른 지정 방식이 사용될 수도 있거나, 활성 영역들 중 하나 또는 그 초과는, 예를 들어, 지정하기 위한 단일 탭을 사용하여 사용자에 의해 즉흥적으로(on-the-fly) 선택될 수도 있다. 도 7의 예에서, 서브-그룹 엘리먼트 C는 전경(608)으로서 셋팅되지만, 나머지 서브-그룹 1의 가입자들은 배경 영역(610)에 존재한다. 일 양상에서, 사용자 디바이스는, 예시적인 서브-그룹 엘리먼트 C와 같은 그룹을 지정하는 사용자가 서브-그룹 엘리먼트 C를 특성화하는 존재 업데이트 그룹(500)으로부터의 상태 정보의 선택(602)에 영향을 주도록 구성될 수도 있으며, 그 엘리먼트는 아래의 섹션들에서 설명되는 (612)와 같은 자세한 디스플레이 영역 상에 디스플레이될 수도 있다.
도 7의 예시적인 디스플레이 방식(604) 및 그의 배경-전경 특성이, 사용자 디바이스가 가입자에게 통지하거나 가입자의 편리한 검색을 위해 존재 업데이트 그룹(500) 내의 다른 가입자들에 관한 정보를 보유하기 위한 이들 실시형태들에 따른 유일한 방식이 아님을 이해할 것이다. 예를 들어, 이들 실시형태들에 따른 사용자 디바이스는, 존재 업데이트 그룹(500)으로부터의 다른 가입자들 중 하나만을 제공하도록 구성될 수도 있으며, 일 양상에서, 존재 업데이트 그룹(500)으로부터의 부가적인 다른 가입자들 또는 그룹들이 "온-데크(on-deck)" 에 있다는 것을 가입자에게 통지할 수도 있다. 추가적인 일 양상에 있어서, 가입자는 사용자 디바이스가 "온-데크" 가입자(들) 및/또는 그룹(들)을 디스플레이하게 할 수도 있다. 추가적인 일 양상에서, 이들 실시형태들에 따른 사용자 디바이스는, 통신의 타입(예를 들어, 음성, 이미지, 상호적인 활동), 통신의 최신성, 가입자 이력과 같은 인자들에 기초하여, 가입자가 통신하길 원하는 더 높은 추정된 가능성을 갖는 존재 업데이트 그룹(500)으로부터의 다른 가입자들 또는 그룹들을 "온-데크"로서 선택할 수도 있다.
도 7을 다시 참조하면, 일 양상에서, 사용자 디바이스는 서브-그룹에 관한 및/또는 개별 가입자에 관한 정보를 디스플레이하도록 구성될 수도 있다. 이것은 디폴트 셋팅에 의해 또는 사용자로부터의 즉흥적인 입력에 의한 것일 수도 있다. 이전에 설명된 바와 같이, 일 양상에서, 상술된 하이라이트 또는 다른 지정 방식은 또한, 사용자 디바이스로 하여금 그러한 정보를 선택(602) 및 디스플레이하게 할 수도 있다. 도 7은 서브-그룹 엘리먼트 C의 멤버들을 디스플레이하는 자세한 디스플레이 영역(612)에 의한 이러한 양상의 일 예를 도시한다. 일 양상에서, 사용자 디바이스는 서브-그룹 엘리먼트를 제외하고 서브-그룹 1에 있지 않은 멤버들을 디스플레이하도록 구성될 수도 있다. 이것은, 이들 가입자들 D 및 F가 서브-그룹 2 및 서브-그룹 3에 각각 존재하는지에 관계없이 그룹 C의 멤버들 D 및 F가 자세한 디스플레이 영역(612)에 나타나는 것으로서 도 7의 예에 도시되어 있다.
도 7은, 커버리지의 손실 또는 사용자 디바이스 파손과 같은 인터럽트 이벤트들을 갖지 않을 수도 있는 가입자로부터의 존재 업데이트 그룹의 일부들의 하나의 예시적인 디스플레이를 도시한다. 일 양상에서, 사용자 디바이스는 그러한 인터럽션 이후 존재 상태 정보의 초기 디스플레이를 위한 방식을 갖도록 구성될 수도 있다.
하나의 그러한 초기 디스플레이 양상에서, 초기 디스플레이는, 파워-업 또는 재부팅과 같은 트리거링 이벤트 시에, 사용자 디바이스가 마지막으로 유효한 디스플레이, 예를 들어, 배터리 레벨이 자신의 디바이스로 하여금 셧다운하게 하였던 때를 가입자가 봤었던 디스플레이를 초기에 제공할 "긍정적인 존재" 로서 구성될 수도 있다. 그 후, 사용자 디바이스는 PV 업데이트 요청들을 외부로 전송하고, 다른 가입자들로부터 PV 업데이트 요청들을 수신하며, 새로운 유효한 상태가 획득될 때까지 그러한 PV 업데이트 요청들에 응답할 것이다.
또 다른 초기 디스플레이 양상에서, 사용자 디바이스 개시 디스플레이는, 파워-업 또는 재부팅과 같은 트리거링 이벤트 시에, 사용자 디바이스가 새로운 PV의 "여유없는" 부재 수신일 자신의 주소록들 내의 모든 연락처들을 가입자에게 초기에 제공할 "부정적인 존재" 로서 구성될 수도 있다.
다시 도 5의 예시적인 기능 블록 흐름(400)을 참조하면, 이러한 도면은 사용자 디바이스(402ME)로부터 사용자 디바이스들(402A, 402D 및 402F)로의 예시적인 PV 업데이트 요청만을 도시하며, 이들 사용자 디바이스들(402) 사이의 다른 통신의 명시적인 도시를 갖지 않는다. 그러한 통신은 데이터를 포함할 수도 있으며, 데이터는 음성, 이미지, 텍스트 및 일 양상에서는 사용자 디바이스 조정 데이터를 포함할 수도 있다. 그러한 데이터를 통신하기 위한 매체, 링크 및 프로토콜은 이들 실시형태들에 따른 분산된 클라이언트-측 존재 관리를 실시하는 것에 특정될 필요는 없다. 도 8을 참조하면, 그러한 데이터 공유는, 서버 데이터 공유 링크들(702, 704, 706 및 708)로의 예시적인 사용자 디바이스에 의해 도시된 바와 같이 서버(404)를 통해 중재될 수도 있다.
도 8은 "오프-더-레코드(off-the-record)" 양상으로서 지칭될 하나 또는 그 초과의 실시형태들에 따른 또 다른 양상을 도시한다. 오프-더-레코드 양상의 개념들에 더 상세하게 포커싱하기 위해, 도시된 예(700)는 도 5의 예시적인 기능 블록 흐름(400)을 포함한다. 따라서, 라벨링되지 않은 도 8의 블록들, 링크들, 및 메시지 흐름들이 도 5에 도시된 대응하는 블록들, 링크들, 및 메시지들과 동일할 수도 있음을 이해할 것이다.
도 5를 참조하여 상술되었던 바와 같이, 일 양상에서, 예시적인 PV 업데이트 요청(408ME)과 같은 PV 업데이트 요청들은 전송기의 IP 어드레스를 포함할 수도 있다. 예시적인 PV 업데이트 요청(예를 들어, 도 4a의 (505A 및/또는 525A), 도 4b의 (515B 및/또는 545B) 등)은 MyIP로서 사용자 디바이스(402ME)의 IP 어드레스를 포함한다. 유사하게, 모든 타겟 사용자 디바이스들은, 다른 사용자 디바이스의 PV 업데이트 요청들에 대한 그들 각각의 응답들에 그들의 IP 주소를 다시 포함시킨다 (예를 들어, 도 4a의 (510A 및/또는 515A), 도 4b의 (520B 및/또는 525B) 등). 예를 들어, 도 5에서, 사용자 디바이스(402D)로부터 사용자 디바이스(402ME)에 역으로 전송된 응답(420ME)은 "D-IP" 로서 사용자 디바이스(402D)의 IP 어드레스를 포함한다.
도 5에 의해 표현된 것과 같은 가입자 사용자 디바이스 시나리오에서, 각각의 가입자의 사용자 디바이스가, 그 사용자 디바이스가 통신했던 각각의 다른 가입자의 사용자 디바이스의 IP 어드레스를 이론적으로 획득할 수 있음을 이해할 것이다 (예를 들어, 손실된 패킷들이 존재하지 않는 것, 각각의 사용자 디바이스에서의 프라이버시(privacy) 셋팅들이 존재 정보의 공유를 허용하며, 및 기타 등등을 가정함).
일 양상에서, 하나 또는 그 초과의 가입자들은 서버(404)의 외부에 있는, 즉, 그 서버에 관해 "오프-더-레코드" 인 데이터 공유 링크들을 설정하기 위해 서로의 IP 어드레스를 이용할 수도 있다. 도 8은 그러한 "오프-더-레코드" 링크의 일 예(710)를 도시한다. 하나의 부가적인 양상에 따르면, 사용자 디바이스들은 가입자가 그러한 "오프-더-레코드" 링크들을 설정하도록 촉구(prompt)하도록 구성될 수도 있다. 예를 들어, 도 8의 디스플레이(712)에 도시된 바와 같이, 사용자는 또 다른 가입자를 표현하는 이미지 필드, 예를 들어, 가입자 F를 표현하는 (716)과 같은 이미지 필드를 하이라이트하거나 전경으로 끌어올 수도 있으며, 응답하여, 사용자 디바이스는 예시적인 요청(714)에 의해 도시된 바와 같이, 요청을 통해 촉구할 수도 있다.
사용자 디바이스(402ME)가 PV 업데이트 요청(408ME)을 타겟 사용자 디바이스들(402A, 402D 및 402F)에 전송(예를 들어, 도 4a의 (505A 및/또는 525A), 도 4b의 (515B 및/또는 545B) 등)하는 것을 도시한 도 5의 예에 대한 이전에 설명된 참조에서, (408ME) 통신은 먼저 시간 T0에서 링크(406ME)를 통해 서버(404)에 전송된다. 먼저 사용자 디바이스(402A)를 참조하면, 서버(404)는 그 PV 업데이트 요청(408ME)을 링크(406A)를 통해 사용자 디바이스(402A)에 PV 업데이트 요청 메시지(410ME)로서 포워딩하고, 사용자 디바이스(402A)는 동일한 링크(406A)를 통해 PV 업데이트 요청 응답 메시지(416ME)를 이용하여 PV 업데이트 요청 메시지에 응답하며(예를 들어, 도 4a의 (510A 및/또는 515A), 도 4b의 (520B 및/또는 525B) 등), 차례로, 서버(404)는 이것을 설명된 링크(406ME)를 통해 PV 업데이트 요청 응답 메시지(418ME)로서 포워딩한다.
이제 도 8을 참조하면, 상기 예에서, 데이터 공유 링크가, 시간 T0에서, 사용자 디바이스(402ME)와 사용자 디바이스(402A) 사이에 이미 설정되었다고 가정한다. 설정된 데이터 공유 링크가, 예를 들어, 사용자 디바이스(402ME)-서버(404) 데이터 공유 링크(702) 및 사용자 디바이스(402A)-서버(404) 데이터 공유 링크(704)에 의해 형성된다고 가정한다. 다음으로, 데이터 공유를 위한 세션이, 예를 들어, 활성 매체 공유이고, 추가적으로, 시간 T0에서, 사용자 디바이스(402ME)가 사용자 디바이스(402A)로의 데이터 푸쉬(push)를 (예시적인 데이터 공유 링크들(702, 704)을 통해) 수행하고 있다고 가정한다. 이들 양상들에 따른 실시가 활성 매체 세션 이외의 데이터 공유 세션들을 이용하여 수행될 수도 있으며, 활성 매체 세션이 단지 개념들의 예시의 목적들을 위한 것임을 이해할 것이다.
일 양상에 따르면, PV 업데이트 요청을 연락처들 중 다른 연락처에 전송하기 위해 데이터 공유 세션에서 연락처들 중 하나에서 (예를 들어, 예컨데, PV 업데이트 요청을 전송하기 위한 송신 시간이, PV 업데이트 요청들이 송신될 연관된 빈도를 충족시키도록 발생한다는 것을 표시하는 타이머와 같은) 트리거링 이벤트가 발생할 경우, 데이터 공유 링크는 그 PV 업데이트 요청을 운반할 수도 있다. 사용자 디바이스(402ME) 및 사용자 디바이스(402A)의 상기 예에서, 링크(406ME)를 통해 지나가는 시간 T0에서 전송된 PV 업데이트 요청(408ME) 대신에, 그것은, 사용자 디바이스(402ME)가 데이터 공유 링크들(702 및 704)을 통해 사용자 디바이스(402A)로 푸쉬하고 있는 (예를 들어, 도 4a의 (505A 및/또는 525A), 도 4b의 (515B 및/또는 545B) 등) 멀티미디어 세션 데이터에 삽입될 수도 있다. 차례로, 사용자 디바이스(402A)는 그 디바이스가 다시 사용자 디바이스(402ME)로 전송하는 확인응답(예를 들어, ACK) 메시지에 그의 응답을 삽입할 수도 있다 (예를 들어, 도 4a의 (510A 및/또는 515A), 도 4b의 (520B 및/또는 525B) 등).
이러한 양상에 따르면, 데이터 공유 세션에서의 연락처들 중 양자 내의 타이머들이 다른 것에 대해 그들 각각의 업데이트 타이머들을 리셋해야 함을 이해할 것이다. 즉, 수신중인 사용자 디바이스는, 제 2 사용자 디바이스로부터 삽입된 PV 업데이트 요청을 수신할 시에, 그 디바이스에 대한 자신의 타이머를 리셋할 수 있다. 유사하게, 전송중인(실제로는 지금 수신중인) 사용자 디바이스는, 수신중인(실제로는 지금 전송중인) 사용자 디바이스로부터, 예를 들어, ACK 메시지에 삽입된 요청된 업데이트된 존재 PV를 수신할 시에, 그 수신중인 사용자 디바이스에 대해 자신의 업데이팅 타이머를 리셋할 수 있다.
일 양상에서, 사용자 디바이스들은, 서로와의 데이터 공유 세션들에 있는 동안, PV 업데이트 요청들을 전송하기 위해 사용하도록 어느 채널, 링크 또는 통신 모드(즉, (702, 704, 706 및/또는 708)과 같은 데이터 공유 링크, 또는 제어 또는 다른 링크, 예를 들어, (406ME, 406A, 406D 및/또는 406F))를 사용할지를 결정하도록 구성될 수도 있다. 그러한 결정들을 행하기 위한 법칙들 및 임계치들은 애플리케이션-특정적 및/또는 환경 특정적일 수도 있다. 본 발명을 판독한 이후 관련 업계의 당업자에게 명백할 바와 같이, 어느 채널 또는 링크가 이들 실시형태들에 따른 존재 업데이팅 정보를 더 실제적으로 운반할 수도 있는지에 대한 결정 인자들은 다음을 포함할 수도 있다: i) 존재 업데이팅 통신들의 사이즈, 및 ii) 데이터 세션이 높은 성능 시그널링 또는 베스트 에포트(best effort) 시그널링인지 여부.
더 상세하게, 데이터 통신들을 공통 채널들 상에서 운반했던 높은-성능 시그널링 세션들은 최대 또는 임계 사이즈 버짓(budget)과 연관될 수 있다. 그러한 세션들에서, 존재 정보의 포함은, 그러한 정보의 사이즈에 의존하여, 사이즈 버짓 위에 시그널링을 놓을 수도 있다. 한편, 통신 사이즈는 일반적으로 베스트-에포트 시그널링에서는 덜 중요하다. 따라서, 가입자 사용자 디바이스들 사이의 베스트 에포트 시그널링 데이터 공유 세션들에서, 존재 정보를 공유된 데이터에 삽입하는 것은 그러한 존재 정보의 사이즈에 관해 덜 중요하게 수행될 수도 있다.
도 9는 상술된 바와 같은 하나의 채널 또는 링크 옵션 양상에 따른 하나의 예시적인 존재 통신을 도시한 기능 블록 흐름도(800)이다. 이러한 도 9의 기능 흐름이, 예를 들어, 하나 또는 그 초과의 실시형태들에 따라 가입자 사용자 디바이스(예를 들어, UE 1)에서 프로그래밍가능한 프로세서 리소스들에 의해 실행될 수도 있다고 가정할 것이다. 먼저, 결정 블록(802)에서, 전송할 통신이 존재할 때까지 흐름이 대기한다. 통신은, 예를 들어, 매체 공유 세션에서 푸쉬될 매체 데이터일 수도 있다. 대안적으로, 통신은 푸쉬에 대한 응답인 ACK/NAK일 수도 있다. 대답이 예라면, 흐름은, 제한된 용량을 갖는 것으로서 가정된 공통 채널이 통신을 위해 사용될지를 결정하기 위한 (804)로 진행한다. 블록(804)에서의 대답이 아니오라면, 흐름은 블록(806)으로 진행하며, 여기서, 그것은 존재 정보, 예를 들어, PV 업데이트 요청(예를 들어, 도 4a의 (505A 및/또는 525A), 도 4b의 (515B 및/또는 545B) 등) 또는 통신에 대한 PV 업데이트 요청에 대한 응답(예를 들어, 도 4a의 (510A 및/또는 515A), 도 4b의 (520B 및/또는 525B) 등)을 부착하거나 삽입하고, 그것을 데이터 공유 세션의 다른 엔드의 사용자 디바이스에 전송하며, 전송할 또 다른 통신을 대기하기 위해 블록(802)으로 복귀한다. 블록(804)에서의 대답이 제한된 용량의 공통 채널이 사용되고 있다는 것을 의미하는 예라면, 흐름은, 존재 정보를 부착 또는 삽입하기 위한 적절한 용량이 존재하는지를 결정하기 위한 블록(808)로 진행한다. 블록(808)에서의 대답이 예라면, 흐름은 블록(806)으로 진행하고, 존재 정보(예를 들어, PV 업데이트 요청 또는 PV 업데이트 요청에 대한 응답)를 통신에 부착 또는 삽입하며, 또 다른 공유된 데이터 세션 통신을 대기하기 위해 블록(802)으로 복귀한다. 블록(808)에서의 대답이 존재 정보를 운반하기 위한 적절한 용량이 존재하지 않는다는 것을 의미하는 아니오라면, 흐름은 블록(802)으로 복귀한다. 일 양상에서, 사용자 디바이스의 프로세서는, 블록(808)에서의 아니오의 발생들에서 특정한 통계치 또는 임계치를 검출한 이후, 비-공유된 채널에 의해 존재 업데이팅 정보를 전송하도록 스위칭할 수도 있다. 일 예에서, 도 9의 프로세스는, 존재 업데이트 그룹의 특정한 서브-그룹이 특정한 UE로부터 존재 업데이트 메시지들을 수신할 타겟 빈도와 관련하여 실행될 수도 있다. 예를 들어, 도 9를 도 4a 및/또는 4b에 관련시키면, 이것은, 도 9의 프로세스가 도 4a의 (505A, 510A, 515A 및/또는 525A) 및/또는 도 4b의 (515B, 520B, 525B 및/또는 545B)의 송신에 대한 프리-커서(pre-cursor)로서 실행할 수도 있다는 것을 의미한다.
도 10은 기능을 수행하도록 구성된 로직을 포함한 통신 디바이스(1000)를 도시한다. 통신 디바이스(1000)는, UE들(102, 108, 110, 112 또는 200), 노드 B들 또는 기지국들(120), RNC 또는 기지국 제어기(122), 패킷 데이터 네트워크 엔드-포인트(예를 들어, SGSN(160), GGSN(165), 롱텀 에볼루션(LTE)에서의 모바일러티 관리 엔티티(MME) 등), 서버들(170 내지 186) 중 임의의 서버 등을 포함하는 (하지만 이에 제한되지 않음) 상술된 통신 디바이스들 중 임의의 디바이스에 대응할 수 있다. 따라서, 통신 디바이스(1000)는, 네트워크를 통해 하나 또는 그 초과의 다른 엔티티들과 통신하도록 (또는 그들과의 통신을 용이하게 하도록) 구성된 임의의 전자 디바이스에 대응할 수 있다.
도 10을 참조하면, 통신 디바이스(1000)는 정보를 수신 및/또는 송신하도록 구성된 로직(1005)을 포함한다. 일 예에서, 통신 디바이스(1000)가 무선 통신 디바이스(예를 들어, UE(200), 노드 B(124) 등)에 대응하면, 정보를 수신 및/또는 송신하도록 구성된 로직(1005)은, 무선 트랜시버 및 연관된 하드웨어(예를 들어, RF 안테나, 모뎀, 변조기 및/또는 복조기 등)와 같은 무선 통신 인터페이스(예를 들어, 블루투스, WiFi, 2G, 3G 등)를 포함할 수 있다. 또 다른 예에서, 정보를 수신 및/또는 송신하도록 구성된 로직(1005)은 유선 통신 인터페이스(예를 들어, 시리얼 접속, USB 또는 파이어와이어 접속, 인터넷(175)이 액세스될 수 있게 하는 이더넷 접속 등)에 대응할 수 있다. 따라서, 통신 디바이스(1000)가 몇몇 타입의 네트워크-기반 서버(예를 들어, SGSN(160), GGSN(165), 애플리케이션 서버(170) 등)에 대응하면, 정보를 수신 및/또는 송신하도록 구성된 로직(1005)은, 일 예에서, 이더넷 프로토콜을 통해 다른 통신 엔티티들에 네트워크-기반 서버를 접속시키는 이더넷 카드에 대응할 수 있다. 추가적인 예에서, 정보를 수신 및/또는 송신하도록 구성된 로직(1005)은, 통신 디바이스(1000)가 자신의 로컬 환경을 모니터링할 수 있게 하는 지각(sensory) 또는 측정 하드웨어(예를 들어, 가속기, 온도 센서, 광 센서, 로컬 RF 신호들을 모니터링하기 위한 안테나 등)를 포함할 수 있다. 정보를 수신 및/또는 송신하도록 구성된 로직(1005)은 또한, 실행될 경우, 정보를 수신 및/또는 송신하도록 구성된 로직(1005)의 연관된 하드웨어로 하여금 그의 수신 및/또는 송신 기능(들)을 수행하게 하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 수신 및/또는 송신하도록 구성된 로직(1005)은 소프트웨어 단독에만 대응하지 않으며, 정보를 수신 및/또는 송신하도록 구성된 로직(1005)은 자신의 기능을 달성하기 위해 하드웨어에 적어도 부분적으로 의존한다.
도 10을 참조하면, 통신 디바이스(1000)는 정보를 프로세싱하도록 구성된 로직(1010)을 더 포함한다. 일 예에서, 정보를 프로세싱하도록 구성된 로직(1010)은 적어도 프로세서를 포함할 수 있다. 정보를 프로세싱하도록 구성된 로직(1010)에 의해 수행될 수 있는 프로세싱의 타입의 예시적인 구현들은, 결정들을 수행하는 것, 접속들을 설정하는 것, 상이한 정보 옵션들 사이에서 선택들을 행하는 것, 데이터에 관련된 평가들을 수행하는 것, 측정 동작들을 수행하기 위해 통신 디바이스(1000)에 커플링된 센서들과 상호작용하는 것, 하나의 포맷으로부터 다른 포맷으로 (예를 들어, .wmv 내지 .avi 등과 같은 상이한 프로토콜들 사이에서) 정보를 변환하는 것 등을 포함한다 (하지만 이에 제한되지는 않는다). 예를 들어, 정보를 프로세싱하도록 구성된 로직(1010)에 포함된 프로세서는 범용 프로세서, 디지털 신호 프로세서(DSP), 주문형 집적 회로(ASIC), 필드 프로그래밍가능 게이트 어레이(FPGA) 또는 다른 프로그래밍가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 여기에 설명된 기능들을 수행하도록 설계된 이들의 임의의 조합에 대응할 수 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안적으로, 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 프로세서는 또한, 컴퓨팅 디바이스들의 결합, 예를 들어, DSP와 마이크로프로세서의 결합, 복수의 마이크로프로세서들, DSP 코어와 결합한 하나 또는 그 초과의 마이크로프로세서들, 또는 임의의 다른 그러한 구성으로서 구현될 수도 있다. 정보를 프로세싱하도록 구성된 로직(1010)은 또한, 실행될 경우, 정보를 프로세싱하도록 구성된 로직(1010)의 연관된 하드웨어로 하여금 그의 프로세싱 기능(들)을 수행하게 하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 프로세싱하도록 구성된 로직(1010)은 소프트웨어 단독에만 대응하지 않으며, 정보를 프로세싱하도록 구성된 로직(1010)은 자신의 기능을 달성하기 위해 하드웨어에 적어도 부분적으로 의존한다.
도 10을 참조하면, 통신 디바이스(1000)는 정보를 저장하도록 구성된 로직(1015)을 더 포함한다. 일 예에서, 정보를 저장하도록 구성된 로직(1015)은 적어도 비-일시적인 메모리 및 연관된 하드웨어(예를 들어, 메모리 제어기 등)를 포함할 수 있다. 예를 들어, 정보를 저장하도록 구성된 로직(1015)에 포함된 비-일시적인 메모리는 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드 디스크, 착탈형 디스크, CD-ROM, 또는 당업계에 알려진 임의의 다른 형태의 저장 매체에 대응할 수 있다. 정보를 저장하도록 구성된 로직(1015)은 또한, 실행될 경우, 정보를 저장하도록 구성된 로직(1015)의 연관된 하드웨어로 하여금 그의 저장 기능(들)을 수행하게 하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 저장하도록 구성된 로직(1015)은 소프트웨어 단독에만 대응하지 않으며, 정보를 저장하도록 구성된 로직(1015)은 자신의 기능을 달성하기 위해 하드웨어에 적어도 부분적으로 의존한다.
도 10을 참조하면, 통신 디바이스(1000)는 정보를 제공하도록 구성된 로직(1020)을 선택적으로 더 포함한다. 일 예에서, 정보를 제공하도록 구성된 로직(1020)은 적어도 출력 디바이스 및 연관된 하드웨어를 포함할 수 있다. 예를 들어, 출력 디바이스는 비디오 출력 디바이스(예를 들어, 디스플레이 스크린, USB와 같이 비디오 정보를 운반할 수 있는 포트, HDMI 등), 오디오 출력 디바이스(예를 들어, 스피커들, 마이크로폰 잭과 같이 오디오 정보를 운반할 수 있는 포트, USB, HDMI 등), 진동 디바이스 및/또는 정보가 출력을 위해 포맷팅되거나 통신 디바이스(1000)의 사용자 또는 오퍼레이터에 의해 실제로 출력될 수 있는 임의의 다른 디바이스를 포함할 수 있다. 예를 들어, 통신 디바이스(1000)가 도 3에 도시된 바와 같은 UE(200)에 대응하면, 정보를 제공하도록 구성된 로직(1020)은 디스플레이(224)를 포함할 수 있다. 추가적인 예에서, 정보를 제공하도록 구성된 로직(1020)은, 로컬 사용자를 갖지 않는 네트워크 통신 디바이스들(예를 들어, 네트워크 스위치들 또는 라우터들, 원격 서버들 등)과 같은 특정한 통신 디바이스들에 대해 생략될 수 있다. 정보를 제공하도록 구성된 로직(1020)은 또한, 실행될 경우, 정보를 제공하도록 구성된 로직(1020)의 연관된 하드웨어로 하여금 그의 제공 기능(들)을 수행하게 하는 소프트웨어를 포함할 수 있다. 그러나, 정보를 제공하도록 구성된 로직(1020)은 소프트웨어 단독에만 대응하지 않으며, 정보를 제공하도록 구성된 로직(1020)은 자신의 기능을 달성하기 위해 하드웨어에 적어도 부분적으로 의존한다.
도 10을 참조하면, 통신 디바이스(1000)는 로컬 사용자 입력을 수신하도록 구성된 로직(1025)을 선택적으로 더 포함한다. 일 예에서, 로컬 사용자 입력을 수신하도록 구성된 로직(1025)은 적어도 사용자 입력 디바이스 및 연관된 하드웨어를 포함할 수 있다. 예를 들어, 사용자 입력 디바이스는 버튼들, 터치-스크린 디스플레이, 키보드, 카메라, 오디오 입력 디바이스(예를 들어, 마이크로폰, 마이크로폰 잭과 같이 오디오 정보를 운반할 수 있는 포트 등), 및/또는 정보가 통신 디바이스(1000)의 사용자 또는 오퍼레이터로부터 수신될 수 있게 하는 임의의 다른 디바이스를 포함할 수 있다. 예를 들어, 통신 디바이스(1000)가 도 3에 도시된 바와 같은 UE(200)에 대응하면, 로컬 사용자 입력을 수신하도록 구성된 로직(1025)은 (터치-스크린을 구현했다면) 디스플레이(224), 키패드(226) 등을 포함할 수 있다. 추가적인 예에서, 로컬 사용자 입력을 수신하도록 구성된 로직(1025)은, 로컬 사용자를 갖지 않는 네트워크 통신 디바이스들(예를 들어, 네트워크 스위치들 또는 라우터들, 원격 서버들 등)과 같은 특정한 통신 디바이스들에 대해 생략될 수 있다. 로컬 사용자 입력을 수신하도록 구성된 로직(1025)은 또한, 실행될 경우, 로컬 사용자 입력을 수신하도록 구성된 로직(1025)의 연관된 하드웨어로 하여금 그의 입력 수신 기능(들)을 수행하게 하는 소프트웨어를 포함할 수 있다. 그러나, 로컬 사용자 입력을 수신하도록 구성된 로직(1025)은 소프트웨어 단독에만 대응하지 않으며, 로컬 사용자 입력을 수신하도록 구성된 로직(1025)은 자신의 기능을 달성하기 위해 하드웨어에 적어도 부분적으로 의존한다.
도 10을 참조하면, (1005 내지 1025)의 구성된 로직들이 도 10에 분리된 또는 별개의 블록들로서 도시되어 있지만, 각각의 구성된 로직이 자신의 기능을 수행하게 하는 하드웨어 및/또는 소프트웨어가 부분적으로 중첩할 수 있음을 인식할 것이다. 예를 들어, (1005 내지 1025)의 구성된 로직들의 기능을 용이하게 하는데 사용되는 임의의 소프트웨어는, 정보를 저장하도록 구성된 로직(1015)과 연관된 비-일시적인 메모리에 저장될 수 있어서, (1005 내지 1025)의 구성된 로직들 각각이 정보를 저장하도록 구성된 로직(1015)에 의해 저장된 소프트웨어의 동작에 적어도 부분적으로 기초하여 그들의 기능(즉, 이러한 경우에서는 소프트웨어 실행)을 수행하게 한다. 유사하게, 구성된 로직들 중 하나와 직접적으로 연관된 하드웨어는 때때로 다른 구성된 로직들에 의해 차용되거나 사용될 수 있다. 예를 들어, 정보를 프로세싱하도록 구성된 로직(1010)의 프로세서는, 정보를 수신 및/또는 송신하도록 구성된 로직(1005)에 의해 송신되기 전에 적절한 포맷으로 데이터를 포맷팅할 수 있어서, 정보를 수신 및/또는 송신하도록 구성된 로직(1005)이, 정보를 프로세싱하도록 구성된 로직(1010)과 연관된 하드웨어(즉, 프로세서)의 동작에 부분적으로 기초하여 그의 기능(즉, 이러한 경우에는 데이터의 송신)을 수행하게 한다. 추가적으로, (1005 내지 1025)의 구성된 로직들 또는 "하도록 구성된 로직"은 특정한 로직 게이트들 또는 엘리먼트들로 제한되는 것이 아니라, 일반적으로 (하드웨어 또는 하드웨어와 소프트웨어의 결합 중 어느 하나를 통해) 여기에 설명된 기능을 수행하기 위한 능력으로 지칭된다. 따라서, (1005 내지 1025)의 구성된 로직들 또는 "하도록 구성된 로직"은 반드시 "로직" 이라는 단어를 공유함에도 불구하고, 로직 게이트들 또는 로직 엘리먼트들로서 구현될 필요는 없다.
당업자들은, 정보 및 신호들이 다양한 다른 기술들 및 기법들 중 임의의 기술 및 기법을 사용하여 표현될 수도 있음을 인식할 것이다. 예를 들어, 상기 설명 전반에 걸쳐 참조될 수도 있는 데이터, 명령들, 커맨드들, 정보, 신호들, 비트들, 심볼들, 및 칩들은 전압들, 전류들, 전자기파들, 자기장들 또는 자기 입자들, 광학 필드들 또는 광학 입자들, 또는 이들의 임의의 조합에 의해 표현될 수도 있다.
추가적으로, 당업자들은, 여기에 기재된 실시형태들과 관련하여 설명된 다양한 예시적인 로지컬 블록들, 모듈들, 회로들, 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이 둘의 조합들로서 구현될 수도 있음을 인식할 것이다. 하드웨어와 소프트웨어의 이러한 상호교환가능성을 명확히 예시하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들, 및 단계들은 그들의 기능의 관점들에서 일반적으로 상술되었다. 그러한 기능이 하드웨어 또는 소프트웨어로서 구현되는지는 특정한 애플리케이션 및 전체 시스템에 부과된 설계 제약들에 의존한다. 당업자들은 각각의 특정한 애플리케이션에 대해 다양한 방식들로 설명된 기능을 구현할 수도 있지만, 그러한 구현 결정들이 본 발명의 범위를 벗어나게 하는 것으로서 해석되지는 않아야 한다.
여기에 기재된 실시형태들과 관련하여 설명된 방법들, 시퀀스들 및/또는 알고리즘들은 하드웨어로 직접, 프로세서에 의해 실행되는 소프트웨어 모듈로, 또는 이 둘의 조합으로 구현될 수도 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드 디스크, 착탈형 디스크, CD-ROM, 또는 당업계에 알려진 임의의 다른 형태의 저장 매체에 상주할 수도 있다. 예시적인 저장 매체는 프로세서에 커플링되어, 프로세서가 저장 매체로부터 정보를 판독할 수 있고 저장 매체에 정보를 기입할 수 있게 한다. 대안적으로, 저장 매체는 프로세서에 통합될 수도 있다.
따라서, 본 발명의 실시형태는, 기재된 실시형태들 중 하나 또는 그 초과에 따른 클라이언트-측 분산된 존재 관리를 위한 방법을 구현한 컴퓨터 판독가능 매체들을 포함할 수 있다. 따라서, 실시는 예시된 예들로 제한되지 않으며, 여기에 설명된 기능을 수행하기 위한 임의의 메커니즘들은 본 발명의 실시형태들에 포함된다.
상기 설명이 본 발명의 예시적인 실시형태들을 도시하지만, 다양한 변화들 및 변경들이 첨부된 청구항들에 의해 정의된 바와 같은 본 발명의 범위를 벗어나지 않으면서 여기에 행해질 수 있음을 유의해야 한다. 여기에 설명된 본 발명의 실시형태들에 따른 방법 청구항들의 기능들, 단계들 및/또는 동작들은 임의의 특정한 순서로 수행될 필요는 없다. 또한, 본 발명의 엘리먼트들이 단수로 설명 또는 청구될 수도 있지만, 단수로의 제한이 명시적으로 지정되지 않으면, 복수가 고려된다.

Claims (48)

  1. 사용자 디바이스에서 수행된 통신 시스템 내의 분산된 존재(presence) 관리의 방법으로서,
    상기 사용자 디바이스가 상기 사용자 디바이스와 연관된 연락처 그룹에 속하는 하나 또는 그 초과의 다른 사용자 디바이스들로 존재 업데이트 메시지들을 송신하는 적어도 하나의 빈도(frequency)를 선택적으로 업데이트하는 단계; 및
    선택적으로 업데이트된 빈도에 따라 하나 또는 그 초과의 존재 업데이트 메시지들을 송신하는 단계를 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  2. 제 1 항에 있어서,
    상기 사용자 디바이스와 연관된 존재 정보는, 상기 사용자 디바이스 상에서의 실행을 위해 구성된 멀티미디어 애플리케이션 클라이언트와 연관된 동작 상태에 기초하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  3. 제 2 항에 있어서,
    상기 동작 상태는, 멀티미디어 애플리케이션이 상기 사용자 디바이스의 실행 환경의 전경(foreground) 또는 주요 부분에서 실행되고 있다는 것인, 통신 시스템 내의 분산된 존재 관리의 방법.
  4. 제 3 항에 있어서,
    상기 멀티미디어 애플리케이션 클라이언트가 상기 사용자 디바이스의 실행 환경의 전경 또는 주요 부분에서 실행되고 있다는 결정에 응답하여, 상기 사용자 디바이스가 존재 업데이트 메시지들을 송신하는 적어도 하나의 빈도를 증가시키는 단계를 더 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  5. 제 2 항에 있어서,
    상기 동작 상태는, 멀티미디어 애플리케이션이 상기 사용자 디바이스의 실행 환경의 배경 또는 비-주요 부분에서 실행되고 있다는 것인, 통신 시스템 내의 분산된 존재 관리의 방법.
  6. 제 5 항에 있어서,
    상기 멀티미디어 애플리케이션 클라이언트가 상기 사용자 디바이스의 실행 환경의 배경 또는 비-주요 부분에서 실행되고 있다는 결정에 응답하여, 상기 사용자 디바이스가 존재 업데이트 메시지들을 송신하는 적어도 하나의 빈도를 감소시키는 단계를 더 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  7. 제 2 항에 있어서,
    상기 하나 또는 그 초과의 다른 사용자 디바이스들은 상기 멀티미디어 애플리케이션 클라이언트의 버전을 실행하도록 구성되는, 통신 시스템 내의 분산된 존재 관리의 방법.
  8. 제 1 항에 있어서,
    상기 사용자 디바이스와 연관된 연락처 그룹에 속하는 상기 하나 또는 그 초과의 다른 사용자 디바이스들은, 존재 업데이트 그룹을 형성하는 가입자의 연락처들의 서브세트에 대응하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  9. 제 8 항에 있어서,
    상기 존재 업데이트 그룹은, 상기 사용자 디바이스가 상기 존재 업데이트 메시지들을 송신하는 제 1 빈도와 연관된 연락처들의 제 1 서브-그룹을 포함하고,
    상기 존재 업데이트 그룹은, 상기 사용자 디바이스가 상기 존재 업데이트 메시지들을 송신하는 제 2 빈도와 연관된 연락처들의 제 2 서브-그룹을 포함하며,
    상기 선택적으로 업데이트하는 단계는, 상기 제 1 빈도 및/또는 상기 제 2 빈도를 업데이트할지를 결정하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  10. 제 9 항에 있어서,
    상기 연락처들의 제 1 서브-그룹은 상기 연락처들의 제 2 서브-그룹보다 더 높은 우선순위를 갖는, 통신 시스템 내의 분산된 존재 관리의 방법.
  11. 제 9 항에 있어서,
    상기 제 1 빈도는 상기 제 2 빈도보다 더 높은, 통신 시스템 내의 분산된 존재 관리의 방법.
  12. 제 1 항에 있어서,
    상기 선택적으로 업데이트하는 단계는, 업데이트가 전송될 상기 하나 또는 그 초과의 다른 사용자 디바이스들의 수에 기초하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  13. 제 12 항에 있어서,
    상기 수가 임계치를 초과한다는 결정에 응답하여 상기 적어도 하나의 빈도를 감소시키는 단계를 더 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  14. 제 12 항에 있어서,
    상기 수가 임계치를 초과하지 않는다는 결정에 응답하여 상기 적어도 하나의 빈도를 증가시키는 단계를 더 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  15. 제 1 항에 있어서,
    상기 하나 또는 그 초과의 존재 업데이트 메시지들 중 적어도 하나는, 대응하는 타겟 사용자 디바이스가 상기 대응하는 타겟 사용자 디바이스와 연관된 존재 정보를 이용하여 응답하는 것을 요청하도록 구성되는, 통신 시스템 내의 분산된 존재 관리의 방법.
  16. 제 1 항에 있어서,
    상기 선택적으로 업데이트하는 단계는, 이전의 존재 업데이트 메시지가 상기 하나 또는 그 초과의 다른 사용자 디바이스들 중 적어도 하나로부터 수신된 이후의 시간의 양에 기초하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  17. 제 16 항에 있어서,
    상기 시간의 양이 임계치를 초과한다는 결정에 응답하여 상기 적어도 하나의 빈도를 감소시키는 단계를 더 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  18. 제 1 항에 있어서,
    상기 하나 또는 그 초과의 다른 사용자 디바이스들과 연관된 우선순위들의 세트를 결정하는 단계를 더 포함하며,
    상기 하나 또는 그 초과의 다른 사용자 디바이스들은 존재 업데이트 그룹을 형성하는 가입자의 연락처들의 서브세트에 대응하고,
    상기 선택적으로 업데이트하는 단계는 결정된 우선순위들의 세트에 기초하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  19. 제 18 항에 있어서,
    연락처들의 제 2 서브-그룹과 연관된 제 2 우선순위보다 더 높은 제 1 우선순위와 연관된 연락처들의 제 1 서브-그룹에 대한 존재 업데이트 송신 빈도를 증가시키는 단계를 더 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  20. 제 18 항에 있어서,
    연락처들의 제 2 서브-그룹과 연관된 제 2 우선순위보다 더 낮은 제 1 우선순위와 연관된 연락처들의 제 1 서브-그룹에 대한 존재 업데이트 송신 빈도를 감소시키는 단계를 더 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  21. 제 1 항에 있어서,
    상기 선택적으로 업데이트하는 단계는, 상기 사용자 디바이스가 록(lock)되는지에 기초하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  22. 제 21 항에 있어서,
    상기 선택적으로 업데이트하는 단계는,
    상기 사용자 디바이스와 연관된 록의 타입을 결정하는 단계; 및
    결정된 록의 타입에 기초하여 상기 적어도 하나의 빈도를 업데이트하는 단계를 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  23. 제 1 항에 있어서,
    상기 선택적으로 업데이트하는 단계는,
    가입자가 시간의 임계 기간을 초과하는 기간 동안 애플리케이션을 동작하도록 기대되는지를 결정하는 단계; 및
    상기 결정에 응답하여 상기 적어도 하나의 빈도를 감소시키는 단계를 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  24. 제 1 항에 있어서,
    상기 하나 또는 그 초과의 다른 사용자 디바이스들로 송신되는 하나 또는 그 초과의 존재 업데이트 메시지들 중 적어도 하나는, 상기 사용자 디바이스의 현재 존재 상태를 표시하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  25. 제 24 항에 있어서,
    상기 적어도 하나의 존재 업데이트 메시지는, 대응하는 타겟 사용자 디바이스가 상기 대응하는 타겟 사용자 디바이스와 연관된 존재 정보를 이용하여 응답하는 것을 요청하도록 추가적으로 구성되는, 통신 시스템 내의 분산된 존재 관리의 방법.
  26. 제 1 항에 있어서,
    상기 송신하는 단계는,
    상기 사용자 디바이스가 상기 하나 또는 그 초과의 다른 사용자 디바이스들 중 하나 또는 그 초과에 미디어를 현재 송신하고 있는지를 결정하는 단계; 및
    상기 사용자 디바이스가 상기 하나 또는 그 초과의 다른 사용자 디바이스들 중 하나 또는 그 초과에 미디어를 송신하고 있으면, 송신되는 미디어와 함께 상기 하나 또는 그 초과의 존재 업데이트 메시지들을 포함시키는 단계를 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  27. 제 1 항에 있어서,
    상기 선택적으로 업데이트하는 단계는,
    상기 하나 또는 그 초과의 다른 사용자 디바이스들 중 임의의 디바이스가 특정한 존재 업데이트 메시지 빈도를 요청했는지를 결정하는 단계; 및
    상기 하나 또는 그 초과의 다른 사용자 디바이스들 중 임의의 디바이스가 특정한 존재 업데이트 메시지 빈도를 요청했다면, 상기 사용자 디바이스가 결정된 하나 또는 그 초과의 다른 사용자 디바이스들로 존재 업데이트 메시지들을 송신하는 빈도를 요청된 빈도로 셋팅하는 단계를 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  28. 제 1 항에 있어서,
    상기 선택적으로 업데이트하는 단계는,
    상기 하나 또는 그 초과의 다른 사용자 디바이스들 중 임의의 디바이스가 존재 업데이트 메시지들을 수신할 최대 빈도를 요청했는지를 결정하는 단계; 및
    상기 하나 또는 그 초과의 다른 사용자 디바이스들 중 임의의 디바이스가 최대 빈도를 요청했다면, 상기 사용자 디바이스가 존재 업데이트 메시지들을 결정된 하나 또는 그 초과의 다른 사용자 디바이스들로 송신하는 빈도를 요청된 최대 빈도보다 크지 않은 빈도로 셋팅하는 단계를 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  29. 제 1 항에 있어서,
    상기 선택적으로 업데이트하는 단계는, 상기 사용자 디바이스를 동작시키는 가입자가 상기 사용자 디바이스와 연관된 디스플레이를 볼 수 있을 가능성이 있는지 없는지의 결정에 기초하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  30. 제 29 항에 있어서,
    상기 결정은,
    가입자가 상기 사용자 디바이스를 내려놓았는지 아닌지를 결정하는 단계; 또는,
    가입자가 상기 사용자 디바이스를 상기 가입자의 귀에 대고 있는지 아닌지를 결정하는 단계
    중 적어도 하나를 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  31. 사용자 디바이스에서 수행된 통신 시스템 내의 분산된 존재 관리의 방법으로서,
    존재 업데이트 그룹을 형성하는 상기 사용자 디바이스를 동작시키는 가입자의 연락처들의 서브세트를 획득하는 단계;
    상기 연락처들의 서브세트의 우선순위들에 기초하여 상기 존재 업데이트 그룹 내의 복수의 서브-그룹들을 식별하는 단계; 및
    식별된 복수의 서브-그룹들 전부보다 적은 서브-그룹들로 하나 또는 그 초과의 존재 업데이트 메시지들을 송신하는 단계를 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  32. 제 31 항에 있어서,
    상기 식별하는 단계는,
    임계치 미만의 우선순위 레벨과 연관된 상기 존재 업데이트 그룹 내의 연락처들의 주어진 서브-그룹을 결정하는 단계, 및
    상기 식별된 복수의 서브-그룹들로부터 상기 연락처들의 주어진 서브-그룹을 배제시키는 단계를 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  33. 제 31 항에 있어서,
    상기 식별하는 단계는, 연관된 우선순위에 기초하여 상기 복수의 서브-그룹들 중에서 각각의 서브-그룹을 상주(populate)시키는, 통신 시스템 내의 분산된 존재 관리의 방법.
  34. 제 33 항에 있어서,
    상기 복수의 서브-그룹들에 대한 연관된 우선순위들은, 각각의 서브-그룹에 포함된 각각의 연락처의 하나 또는 그 초과의 기준들에 기초하며,
    상기 기준들은,
    상기 연락처의 사용자-할당된 우선순위;
    상기 가입자 및/또는 상기 사용자 디바이스가 상기 연락처 및/또는 상기 연락처에 의해 동작되는 주어진 사용자 디바이스와 통신하는 빈도;
    상기 가입자 및/또는 상기 사용자 디바이스가 상기 연락처 및/또는 상기 연락처에 의해 동작되는 상기 사용자 디바이스와 이전에 통신한 이후의 시간의 양;
    상기 가입자와 상기 연락처 사이의 소셜 관계 특징들;
    상기 가입자가 시간의 임계 기간 내에서 상기 연락처와 통신하도록 기대되는 가능성;
    상기 사용자 디바이스가 상기 연락처에 의해 동작되는 상기 사용자 디바이스로부터 존재 업데이트 메시지를 이전에 수신한 이후의 시간의 양;
    상기 연락처 및/또는 상기 연락처에 의해 동작되는 상기 사용자 디바이스가 존재 업데이트 메시지들을 수신하도록 요청한 빈도; 및/또는
    상기 연락처 및/또는 상기 연락처에 의해 동작되는 상기 사용자 디바이스가 존재 업데이트 메시지들을 수신하도록 요청한 최대 빈도를 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  35. 제 33 항에 있어서,
    상기 식별된 복수의 서브-그룹들 중에서 제 1 서브-그룹에 대한 제 1 우선순위를 결정하는 단계;
    상기 사용자 디바이스가 상기 제 1 우선순위에 기초하여 상기 제 1 서브-그룹에 상기 존재 업데이트 메시지를 송신할 제 1 빈도를 결정하는 단계;
    상기 식별된 복수의 서브-그룹들 중에서 제 2 서브-그룹에 대한 제 2 우선순위를 결정하는 단계; 및
    상기 사용자 디바이스가 상기 제 2 우선순위에 기초하여 상기 제 2 서브-그룹에 상기 존재 업데이트 메시지를 송신할 제 2 빈도를 결정하는 단계를 더 포함하며,
    상기 송신하는 단계는, 상기 제 1 빈도 및 제 2 빈도에 따라 상기 제 1 서브-그룹 및 상기 제 2 서브-그룹에 상기 하나 또는 그 초과의 존재 업데이트 메시지들을 송신하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  36. 제 35 항에 있어서,
    상기 제 1 우선순위는 상기 제 2 우선순위보다 더 높고,
    상기 제 1 빈도는 상기 제 2 빈도보다 더 높은, 통신 시스템 내의 분산된 존재 관리의 방법.
  37. 제 31 항에 있어서,
    상기 식별된 복수의 서브-그룹들로부터 하나 또는 그 초과의 연락처들을 제거하는 단계; 및
    상기 제거된 하나 또는 그 초과의 연락처들이 제외된 상기 식별된 복수의 서브-그룹들로 상기 하나 또는 그 초과의 존재 업데이트 메시지들을 계속 송신하는 단계를 더 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  38. 제 37 항에 있어서,
    상기 식별된 복수의 서브-그룹들 중 하나에 속하는 적어도 하나의 연락처에 대한 우선순위에서의 감소를 검출하는 단계를 더 포함하며,
    상기 제거된 하나 또는 그 초과의 연락처들은 검출된 적어도 하나의 연락처에 대응하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  39. 제 38 항에 있어서,
    상기 검출하는 단계는, 상기 사용자 디바이스와 상기 적어도 하나의 연락처에 의해 동작되는 사용자 디바이스 사이의 통신 없이 경과한 시간의 임계 기간에 응답하여, 우선순위에서의 감소를 검출하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  40. 제 31 항에 있어서,
    상기 사용자 디바이스를 동작시키는 가입자와 연관된 존재 정보를 결정하는 단계를 더 포함하며,
    상기 하나 또는 그 초과의 존재 업데이트 메시지들은 결정된 존재 정보를 포함하는, 통신 시스템 내의 분산된 존재 관리의 방법.
  41. 제 40 항에 있어서,
    상기 적어도 하나의 존재 업데이트 메시지는, 모든 서브-그룹들보다 적은 서브-그룹들이 존재 정보를 이용하여 응답하는 것을 요청하도록 추가적으로 구성되는, 통신 시스템 내의 분산된 존재 관리의 방법.
  42. 제 31 항에 있어서,
    상기 적어도 하나의 존재 업데이트 메시지는,
    모든 서브-그룹들보다 적은 서브-그룹들이 존재 정보를 이용하여 응답하는 것을 요청하도록 구성되는, 통신 시스템 내의 분산된 존재 관리의 방법.
  43. 사용자 디바이스에서 수행된 통신 시스템 내의 분산된 존재 관리를 위한 장치로서,
    상기 사용자 디바이스가 상기 사용자 디바이스와 연관된 연락처 그룹에 속하는 하나 또는 그 초과의 다른 사용자 디바이스들로 존재 업데이트 메시지들을 송신하는 적어도 하나의 빈도를 선택적으로 업데이트하도록 구성된 로직; 및
    선택적으로 업데이트된 빈도에 따라 하나 또는 그 초과의 존재 업데이트 메시지들을 송신하도록 구성된 로직을 포함하는, 통신 시스템 내의 분산된 존재 관리를 위한 장치.
  44. 사용자 디바이스에서 수행된 통신 시스템 내의 분산된 존재 관리를 위한 장치로서,
    존재 업데이트 그룹을 형성하는 상기 사용자 디바이스를 동작시키는 가입자의 연락처들의 서브세트를 획득하도록 구성된 로직;
    상기 연락처들의 서브세트의 우선순위들에 기초하여 상기 존재 업데이트 그룹 내의 복수의 서브-그룹들을 식별하도록 구성된 로직; 및
    식별된 복수의 서브-그룹들 전부보다 적은 서브-그룹들로 하나 또는 그 초과의 존재 업데이트 메시지들을 송신하도록 구성된 로직을 포함하는, 통신 시스템 내의 분산된 존재 관리를 위한 장치.
  45. 사용자 디바이스에서 수행된 통신 시스템 내의 분산된 존재 관리를 위한 장치로서,
    상기 사용자 디바이스가 상기 사용자 디바이스와 연관된 연락처 그룹에 속하는 하나 또는 그 초과의 다른 사용자 디바이스들로 존재 업데이트 메시지들을 송신하는 적어도 하나의 빈도를 선택적으로 업데이트하기 위한 수단; 및
    선택적으로 업데이트된 빈도에 따라 하나 또는 그 초과의 존재 업데이트 메시지들을 송신하기 위한 수단을 포함하는, 통신 시스템 내의 분산된 존재 관리를 위한 장치.
  46. 사용자 디바이스에서 수행된 통신 시스템 내의 분산된 존재 관리를 위한 장치로서,
    존재 업데이트 그룹을 형성하는, 상기 사용자 디바이스를 동작시키는 가입자의 연락처들의 서브세트를 획득하기 위한 수단;
    상기 연락처들의 서브세트의 우선순위들에 기초하여 상기 존재 업데이트 그룹 내의 복수의 서브-그룹들을 식별하기 위한 수단; 및
    식별된 복수의 서브-그룹들 전부보다 적은 서브-그룹들로 하나 또는 그 초과의 존재 업데이트 메시지들을 송신하기 위한 수단을 포함하는, 통신 시스템 내의 분산된 존재 관리를 위한 장치.
  47. 사용자 디바이스에서 수행된 통신 시스템 내의 분산된 존재 관리를 위한 비-일시적인 컴퓨터-판독가능 매체로서,
    상기 사용자 디바이스가 상기 사용자 디바이스와 연관된 연락처 그룹에 속하는 하나 또는 그 초과의 다른 사용자 디바이스들로 존재 업데이트 메시지들을 송신하는 적어도 하나의 빈도를 선택적으로 업데이트하기 위한 적어도 하나의 명령; 및
    선택적으로 업데이트된 빈도에 따라 하나 또는 그 초과의 존재 업데이트 메시지들을 송신하기 위한 적어도 하나의 명령을 포함하는, 컴퓨터-판독가능 매체.
  48. 사용자 디바이스에서 수행된 통신 시스템 내의 분산된 존재 관리를 위한 비-일시적인 컴퓨터-판독가능 매체로서,
    존재 업데이트 그룹을 형성하는, 상기 사용자 디바이스를 동작시키는 가입자의 연락처들의 서브세트를 획득하기 위한 적어도 하나의 명령;
    상기 연락처들의 서브세트의 우선순위들에 기초하여 상기 존재 업데이트 그룹 내의 복수의 서브-그룹들을 식별하기 위한 적어도 하나의 명령; 및
    식별된 복수의 서브-그룹들 전부보다 적은 서브-그룹들로 하나 또는 그 초과의 존재 업데이트 메시지들을 송신하기 위한 적어도 하나의 명령을 포함하는, 컴퓨터-판독가능 매체.
KR1020137017705A 2010-12-08 2011-12-08 통신 네트워크에서 존재 정보 교환 KR101576929B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US42103210P 2010-12-08 2010-12-08
US61/421,032 2010-12-08
US13/303,751 2011-11-23
US13/303,751 US9036545B2 (en) 2010-12-08 2011-11-23 Exchanging presence information in a communications network
PCT/US2011/063994 WO2012078903A1 (en) 2010-12-08 2011-12-08 Exchanging presence information in a communications network

Publications (2)

Publication Number Publication Date
KR20130095827A true KR20130095827A (ko) 2013-08-28
KR101576929B1 KR101576929B1 (ko) 2015-12-11

Family

ID=45422365

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137017705A KR101576929B1 (ko) 2010-12-08 2011-12-08 통신 네트워크에서 존재 정보 교환

Country Status (8)

Country Link
US (1) US9036545B2 (ko)
EP (1) EP2649819B1 (ko)
JP (2) JP6040160B2 (ko)
KR (1) KR101576929B1 (ko)
CN (2) CN103314604B (ko)
BR (1) BR112013014295A2 (ko)
ES (1) ES2541286T3 (ko)
WO (1) WO2012078903A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015134340A1 (en) * 2014-03-05 2015-09-11 Manalto, Inc. Social network presence management

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9913300B2 (en) * 2011-12-14 2018-03-06 Kodiak Networks, Inc. Push-to-talk-over-cellular (PoC)
KR101826327B1 (ko) * 2011-08-02 2018-02-07 삼성전자주식회사 와이파이 피투피 그룹의 생성 방법
US10198716B2 (en) * 2011-11-11 2019-02-05 Microsoft Technology Licensing, Llc User availability awareness
US9374328B1 (en) * 2012-01-11 2016-06-21 Google Inc. Selective messaging using online presence information
US20130191451A1 (en) * 2012-01-19 2013-07-25 Microsoft Corporation Presence-based Synchronization
CN103297248B (zh) * 2012-03-01 2018-07-27 腾讯科技(北京)有限公司 一种微博客户端信息的通知方法及装置
US10965775B2 (en) * 2012-11-20 2021-03-30 Airbnb, Inc. Discovering signature of electronic social networks
US9258292B2 (en) * 2013-01-14 2016-02-09 Futurewei Technologies, Inc. Adapting federated web identity protocols
ES2641164T3 (es) * 2013-06-21 2017-11-08 Huawei Technologies Co., Ltd. Método, aparato y producto de programa de ordenador para seleccionar una entidad de gestión de movilidad
WO2015100272A1 (en) * 2013-12-23 2015-07-02 Qualcomm Incorporated Optimization of the presence information refresh for a wireless device
US9571427B2 (en) * 2013-12-31 2017-02-14 Google Inc. Determining strength of association between user contacts
US9282181B2 (en) * 2014-03-21 2016-03-08 Microsoft Technology Licensing, Llc Efficient retrieval of 4G LTE capabilities
US20170028865A1 (en) * 2015-07-31 2017-02-02 Nissan North America, Inc. System and method for managing power consumption
US9935857B1 (en) * 2015-12-17 2018-04-03 8X8, Inc. Analysis of system conditions from endpoint status information
NL2016079B1 (en) * 2016-01-11 2017-07-24 Zens Group B V System and method of determining the location of an occupied physical space.
US11206223B2 (en) * 2016-06-30 2021-12-21 Microsoft Technology Licensing, Llc Signal upload optimization
WO2018153469A1 (en) * 2017-02-24 2018-08-30 Telefonaktiebolaget Lm Ericsson (Publ) Classifying an instance using machine learning
CN111124952B (zh) * 2019-12-04 2022-09-30 北京奇艺世纪科技有限公司 一种数据管理方法、装置、电子设备及可读存储介质

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3967617B2 (ja) 2002-04-08 2007-08-29 日本電信電話株式会社 プレゼンス方法,プレゼンスプログラムおよびそのプログラムの記録媒体
JP3964719B2 (ja) * 2002-04-09 2007-08-22 日本電信電話株式会社 プレゼンス情報バックアップサービス提供方法及びそのシステム並びに情報要求プログラム及び該プログラムを記録した媒体
JP2004021420A (ja) * 2002-06-13 2004-01-22 Nippon Telegr & Teleph Corp <Ntt> 通信端末
JP4046654B2 (ja) * 2003-07-04 2008-02-13 日本電信電話株式会社 P2p通信システム
EP2192724B1 (en) 2003-09-16 2013-10-23 BlackBerry Limited A method for creating a peer-to-peer immediate messaging solution without using an instant messaging server
JP4363942B2 (ja) * 2003-09-30 2009-11-11 株式会社エヌ・ティ・ティ・データ サーバ、通信制御方法、および、プログラム
JPWO2006011628A1 (ja) 2004-07-27 2008-05-01 日本電気株式会社 プレゼンス情報通知システム及び方法、コンピュータプログラム、充電システム、充電装置並びに携帯装置
US7525432B2 (en) * 2004-09-15 2009-04-28 Radarfind Corporation Methods, identification tags and computer program products for automated location and monitoring of mobile devices
US8176086B2 (en) * 2004-11-30 2012-05-08 Avaya Inc. Methods and apparatus for determining a presence of a user
US20060114882A1 (en) 2004-11-30 2006-06-01 Mills James L Presence management in packet-switched networks using circuit-switched USSD signaling
US20060194596A1 (en) 2005-02-26 2006-08-31 Li Deng System and method for direct peer to peer mobile messaging
US20060242235A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Presence monitoring in a serverless peer-to-peer system
US7469149B2 (en) * 2005-06-03 2008-12-23 Motorola, Inc. Method and apparatus for serially establishing a group call session
US9454735B2 (en) * 2005-09-26 2016-09-27 Nokia Corporation Integrating data with a contact
JP4420955B2 (ja) 2005-09-29 2010-02-24 富士通株式会社 プレゼンス通信システム及び方法
US20070192735A1 (en) * 2006-02-15 2007-08-16 Julia Lehto Mobile communication terminal and method therefore
US8015249B2 (en) * 2006-10-10 2011-09-06 Microsoft Corporation Mitigating data usage in messaging applications
US20080184170A1 (en) * 2007-01-16 2008-07-31 Shape Innovations Inc Systems and methods for customized instant messaging application for displaying status of measurements from sensors
US7746226B2 (en) 2007-03-30 2010-06-29 International Business Machines Corporation System and method for providing dynamic presence information as collected by a mobile device
US8180407B1 (en) * 2007-05-23 2012-05-15 Sprint Spectrum L.P. Automatic reduction of background wireless communication in a media player mode
US8136125B2 (en) * 2007-10-02 2012-03-13 International Business Machines Corporation Prioritization for online contact status updates
US8943560B2 (en) * 2008-05-28 2015-01-27 Microsoft Corporation Techniques to provision and manage a digital telephone to authenticate with a network
JP5223561B2 (ja) 2008-09-24 2013-06-26 日本電気株式会社 通信システム、無線端末、プレゼンスサーバ、圏外判定方法及びプログラム
EP2239921B1 (en) 2009-04-08 2014-07-16 BlackBerry Limited A method, system and mobile device for implementing a serverless presence system
US8966054B2 (en) * 2009-04-08 2015-02-24 Blackberry Limited Method, system and mobile device for implementing a serverless presence system
US20100332597A1 (en) * 2009-06-30 2010-12-30 Alcatel-Lucent Usa Inc. Method and system for reducing the number of presence events within a network
US8363644B2 (en) * 2009-09-14 2013-01-29 Skype Presence information
US8244816B2 (en) * 2009-09-14 2012-08-14 Skype System and method for controlling regularity of presence status transmission based on resource usage of a user transmitting node
EP2510672B1 (en) * 2009-12-10 2013-07-17 Telefonaktiebolaget LM Ericsson (publ) Method, apparatus and computer program product for presence data updates

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015134340A1 (en) * 2014-03-05 2015-09-11 Manalto, Inc. Social network presence management

Also Published As

Publication number Publication date
ES2541286T3 (es) 2015-07-17
US20120300698A1 (en) 2012-11-29
CN105681465A (zh) 2016-06-15
JP6040160B2 (ja) 2016-12-07
CN103314604A (zh) 2013-09-18
JP6153983B2 (ja) 2017-06-28
CN103314604B (zh) 2017-02-15
JP2014506351A (ja) 2014-03-13
JP2016036158A (ja) 2016-03-17
WO2012078903A1 (en) 2012-06-14
KR101576929B1 (ko) 2015-12-11
BR112013014295A2 (pt) 2016-09-20
EP2649819A1 (en) 2013-10-16
US9036545B2 (en) 2015-05-19
EP2649819B1 (en) 2015-05-06

Similar Documents

Publication Publication Date Title
KR101576929B1 (ko) 통신 네트워크에서 존재 정보 교환
EP2838282B1 (en) Client-managed group communication sessions within a wireless communications system
US8886756B2 (en) Exchanging data between a user equipment and an application server
JP6121444B2 (ja) ワイヤレス通信システムにおける通信セッション開始情報の取得
US8688843B2 (en) Selectively granting a floor during set-up of a communication session within a wireless communications system
EP2795868B1 (en) Exchanging a compressed version of previously communicated session information in a communications system
WO2011133648A1 (en) Supporting a multimedia application based on network zone recognition
WO2012044365A1 (en) Selectively transitioning between physical-layer networks during a streaming communication session within a wireless communications system

Legal Events

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