KR101442322B1 - 액티브 프레즌스 프로파일에 기초한 자동화된 콜 라우팅 - Google Patents

액티브 프레즌스 프로파일에 기초한 자동화된 콜 라우팅 Download PDF

Info

Publication number
KR101442322B1
KR101442322B1 KR1020117006599A KR20117006599A KR101442322B1 KR 101442322 B1 KR101442322 B1 KR 101442322B1 KR 1020117006599 A KR1020117006599 A KR 1020117006599A KR 20117006599 A KR20117006599 A KR 20117006599A KR 101442322 B1 KR101442322 B1 KR 101442322B1
Authority
KR
South Korea
Prior art keywords
end user
computing system
sip
identity
call
Prior art date
Application number
KR1020117006599A
Other languages
English (en)
Other versions
KR20110055688A (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 KR20110055688A publication Critical patent/KR20110055688A/ko
Application granted granted Critical
Publication of KR101442322B1 publication Critical patent/KR101442322B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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
    • 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
    • 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/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • 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

Abstract

액티브 프레즌스 프로파일(active presence profile)에 기초한 다수의 ID들(identities) 중 하나의 ID로 콜을 자동적으로 라우팅하는 방법 및 시스템이 개시된다. 구독 메시지는 사용자의 컨택 주소들로 발송된다. 상기 컨택 주소들은 상기 사용자와, 실시간 통신 시스템들을 관리하는 원격 서버들의 인디케이터들(indicators)을 포함한다. 상기 사용자의 제1 ID의 프레즌스 상태를 포함하는 프레즌스 문서가 수신된다. 상기 프레즌스 상태는 상기 제1 ID가 오프라인이라고 나타낸다. 등록 메시지가 원격 서버로 발행(issue)되고, 그 결과 상기 제1 ID로부터 제2 ID로 콜 리다이렉션이 초래된다. 상기 제2 ID는 액티브 프레즌스 프로파일에 포함되고 상기 리다이렉트된 콜을 수신하는 컴퓨팅 시스템과 연관된다. 만약 상기 사용자의 다수의 프레즌스 프로파일들이 액티브라면, 매칭 알고리즘은 상기 콜 리다이렉션을 결정하기 위해 상기 액티브 프레즌스 프로파일들 중 하나의 컨택 주소를 선택한다.

Description

액티브 프레즌스 프로파일에 기초한 자동화된 콜 라우팅{AUTOMATED CALL ROUTING BASED ON AN ACTIVE PRESENCE PROFILE}
본 발명은 콜리(callee)의 액티브 프레즌스(activel presence) 프로파일에 기초하여 콜리(callee)의 다수의 ID들(identities, 이하에서는 'ID'라고 함) 중 하나의 ID(a identity)로 콜(call)을 자동적으로 라우팅하는 데이터 처리 방법 및 시스템과 관련된다. 더 상세하게는 본 발명은 콜리의 논-액티브 ID 행의(destined for non-active identity) 콜을 콜리의 액티브 ID로 자동적으로 리다이렉트하는 기술과 관련된다.
벤더들(vendors) 및 서비스 제공자들에 의해 제공되는 전통적인 프레즌스 기반의 실시간 인터랙티브 메시징(예를 들어, Google Talk®(이는 GTalk로 일컬어짐), ICQ®, MSN® Messanger 등)은 "프레즌스 아일랜드들(presence islands)" 랜스케이프(landscape)를 생성해 왔는데, 이 프레즌스 아일랜드 랜스케이프에서는 최종 사용자(end user)의 다수의 ID들을 관리 및 상호운영(interoperate)하는 것이 어렵다. 들어오는 메시지들이 전화 번호 또는 주소로 라우트될 수 있도록 하는 메시징 제품상의 전통적인 "팔로우-미(follow-me)" 기능은 최종 사용자가 그 전화 번호 또는 주소를 수동으로 선택 또는 입력할 것을 요구하므로 최종 사용자에게는 불편하다. 따라서, 관련 기술 분야에서는 전술한 결점들 및 한계점들 중 적어도 하나를 극복할 필요가 있다.
제1 실시예에서, 본 발명은 최종 사용자의 액티브 프레즌스 프로파일(active presence profile)에 기초하여 상기 최종 사용자의 다수의 ID들 중 하나의 ID로 콜을 자동적으로 라우팅하는 컴퓨터로 구현되는 방법(computer-implemented method)을 제공한다. 컴퓨팅 시스템은 구독 메시지(subscription message)를 최종 사용자의 컨택 주소들로 발송한다. 컨택 주소들은 최종 사용자의 식별자들과, 복수의 프레즌스 기반의 실시간 인터랙티브 통신 시스템들을 관리하는 원격 서버 컴퓨팅 시스템들의 인디케이터들(indicators)을 포함한다. 각각의 원격 서버 컴퓨팅 시스템은 상기 구독 메시지를 발송하는 컴퓨팅 시스템으로부터 떨어져 있다(remote). 상기 최종 사용자의 다수의 ID들 중 제1 ID의 프레즌스 상태(presence status)를 포함하는 프레즌스 문서(presence document)가 수신된다. 상기 컴퓨팅 시스템은, 상기 프레즌스 상태가 상기 최종 사용자의 상기 제1 ID가 오프라인 또는 어웨이(away)라고 나타냄을 결정한다. 이에 응답하여, 등록 메시지(registration message)는 상기 원격 서버 컴퓨팅 시스템으로 발행(issue)되고, 이에 따라 결국 상기 제1 ID 행의 모든 콜(any call destined for the first identity)의 상기 최종 사용자의 다수의 ID들 중 제2 ID로의 리다이렉션(redirection)이 초래된다. 상기 제2 ID는 상기 최종 사용자의 액티브 프레즌스 프로파일에 포함되고 또한 상기 컴퓨팅 시스템과 연관(associate)된다. 상기 등록 메시지를 발행한 후 그리고 상기 리다이렉션의 결과로, 상기 컴퓨팅 시스템은 상기 콜을 수신한다.
제2 실시예에서, 본 발명은 다수의 액티브 프레즌스 프로파일들로부터 선택된 액티브 프레즌스 프로파일에 기초하여 최종 사용자의 ID로 콜들을 자동적으로 라우팅하는 컴퓨터로 구현되는 방법을 제공한다. 프레즌스 기반의 실시간 인터랙티브 통신 시스템을 관리하는 컴퓨팅 시스템은 제1 프로파일의 세부사항의 제1 세트, 제2 프로파일의 세부사항의 제2 세트, 및 제3 프로파일의 세부사항의 제3 세트를 리트리브(retrieve)한다. 상기 제1 프로파일은 상기 최종 사용자의 다수의 ID들 중 제1 ID의 속성들을 기술한다. 상기 제2 프로파일은 상기 최종 사용자의 다수의 ID들 중 제2 ID의 속성들을 기술한다. 상기 제3 프로파일은 상기 최종 사용자의 다수의 ID들 중 제3 ID의 속성들을 기술한다. 상기 제2 프로파일 및 상기 제3 프로파일은 상기 최종 사용자의 액티브 프레즌스 프로파일들이다. 세부사항의 상기 세트들을 리트리브한 후, 세부사항의 상기 제1 세트는 세부사항의 상기 제2 세트와 비교되고, 그 결과 세부사항의 상기 제1 세트와 세부사항의 상기 제2 세트 사이의 유사성의 제1 척도(first measure of similarity)가 초래된다. 세부사항의 상기 세트들을 리트리브한 후, 세부사항의 상기 제1 세트는 세부사항의 상기 제3 세트와 비교되고, 그 결과 세부사항의 상기 제1 세트와 세부사항의 상기 제3 세트 사이의 유사성의 제2 척도가 초래된다. 상기 컴퓨팅 시스템은 상기 제1 척도가 상기 제2 척도보다 더 크다고 결정하고, 이에 따라 세부사항의 상기 제1 세트와 세부사항의 상기 제2 세트 사이의 유사성이 세부사항의 상기 제1 세트와 세부사항의 상기 제3 세트 사이의 유사성보다 더 크다고 나타낸다. 상기 제1 척도가 상기 제2 척도보다 더 크다고 결정하는 것에 응답하여, 상기 제2 프로파일에 포함된 컨택 주소는 스토리지 디바이스에 보유(retain)되고, 상기 제3 프로파일에 포함된 컨택 주소는 상기 스토리지 디바이스로부터 제거된다. 상기 컴퓨팅 시스템은 상기 제2 프로파일에 포함된 컨택 주소를 통해 원래(originally) 상기 제1 ID 행 콜을 상기 제2 ID로 라우트한다.
일 측면에 따라, 프로세서 및 상기 프로세서에 결합된 컴퓨터 판독가능 메모리 유닛을 포함하는 컴퓨팅 시스템이 제공된다. 상기 메모리 유닛은 명령들을 포함하는데, 상기 명령들은 상기 프로세서에 의해 실행될 경우 상기 최종 사용자의 액티브 프레즌스 프로파일에 기초하여 최종 사용자의 다수의 ID들 중 하나의 ID로 콜을 자동적으로 라우팅하는 방법을 구현한다. 상기 방법은 구독 메시지를 사용자의 복수의 컨택 주소들로 발송하는 단계 - 상기 복수의 컨택 주소들은 상기 최종 사용자의 복수의 ID들과, 복수의 프레즌스 기반의 실시간 인터랙티브 통신 시스템들을 관리하는 복수의 원격 서버 컴퓨팅 시스템들의 복수의 인디케이터들을 포함하고, 각각의 원격 서버 컴퓨팅 시스템은 상기 컴퓨팅 시스템으로부터 떨어져 있음 -; 상기 복수의 원격 서버 컴퓨팅 시스템들 중 하나의 원격 서버 컴퓨팅 시스템으로부터, 프레즌스 문서를 수신하는 단계 - 상기 프레즌스 문서는 상기 최종 사용자의 상기 복수의 ID들 중 제1 ID의 프레즌스 상태를 포함함 -; 상기 프레즌스 상태가 상기 최종 사용자의 상기 제1 ID가 오프라인 또는 어웨이(away)라고 표시한다고 결정하는 단계; 상기 결정에 응답하여, 상기 원격 서버 컴퓨팅 시스템으로 등록 메시지를 발행(issue)하는 단계 - 상기 등록 메시지를 발행하는 것의 결과는 상기 제1 ID 행의 모든 콜(any call destined for the first identity)의 상기 최종 사용자의 상기 복수의 ID들 중 제2 ID로의 리다이렉션이며, 상기 제2 ID는 상기 최종 사용자의 상기 액티브 프레즌스 프로파일에 포함되고 상기 컴퓨팅 시스템과 연관됨 -; 및 상기 등록 메시지의 발행 이후에 상기 콜을 수신하는 단계 - 상기 콜을 수신하는 것은 상기 리다이렉션의 결과임 - 를 포함한다.
또 다른 측면에 따라, 컴퓨터 사용가능 매체 - 상기 컴퓨터 사용가능 매체는 내부에 구현된 컴퓨터 판독가능 프로그램 코드를 가짐 - 를 포함하는 컴퓨터 프로그램 제품이 제공된다. 상기 컴퓨터 판독가능 프로그램 코드는 명령들을 포함하는데, 상기 명령들은 컴퓨팅 시스템의 프로세서에 의해 실행되는 경우 최종 사용자의 액티브 프레즌스 프로파일에 기초하여 상기 최종 사용자의 다수의 ID들 중 하나의 ID로 콜을 자동적으로 라우팅하는 방법을 구현한다. 상기 방법은, 구독 메시지를 최종 사용자의 복수의 컨택 주소들로 발송하는 단계 - 상기 복수의 컨택 주소들은 상기 최종 사용자의 복수의 ID들과, 복수의 프레즌스 기반의 실시간 인터랙티브 통신 시스템들을 관리하는 복수의 원격 서버 컴퓨팅 시스템들의 복수의 인디케이터들을 포함하고, 각각의 원격 서버 컴퓨팅 시스템은 상기 컴퓨팅 시스템으로부터 떨어져 있음 -; 상기 복수의 원격 서버 컴퓨팅 시스템들 중 하나의 원격 서버 컴퓨팅 시스템으로부터, 프레즌스 문서를 수신하는 단계 - 상기 프레즌스 문서는 상기 최종 사용자의 상기 복수의 ID들 중 제1 ID의 프레즌스 상태를 포함함 -; 상기 프레즌스 상태가 상기 최종 사용자의 상기 제1 ID가 오프라인 또는 어웨이라고 표시한다고 결정하는 단계; 상기 결정에 응답하여, 상기 원격 서버 컴퓨팅 시스템으로 등록 메시지를 발행하는 단계 - 상기 등록 메시지의 발행 결과는 상기 제1 ID 행의 모든 콜의 상기 최종 사용자의 상기 복수의 ID들 중 제2 ID로의 리다이렉션이고, 상기 제2 ID는 상기 최종 사용자의 상기 액티브 프레즌스 프로파일에 포함되고 상기 컴퓨팅 시스템과 연관됨 -; 및 상기 등록 메시지의 발행 이후에 상기 콜을 수신하는 단계 - 상기 콜을 수신하는 것은 상기 리다이렉션의 결과임 - 를 포함한다.
또 다른 일 측면에 따라, 컴퓨팅 인프라구조를 지원하는 프로세스가 제공되는데, 상기 프로세스는 제1 컴퓨팅 시스템에 컴퓨터 판독가능 코드를 생성, 통합, 호스팅, 유지, 및 배치(deploy)하는 것 중 적어도 하나를 위해 적어도 하나의 지원 서비스를 제공하는 단계를 포함한다. 상기 제1 컴퓨팅 시스템과 결합하여 상기 코드는 상기 최종 사용자의 액티브 프레즌스 프로파일에 기초하여 최종 사용자의 다수의 ID들 중 하나의 ID로 콜을 자동적으로 라우팅하는 방법을 수행할 수 있다. 상기 방법은, 구독 메시지를 최종 사용자의 복수의 컨택 주소들로 발송하는 단계 - 상기 복수의 컨택 주소들은 상기 최종 사용자의 복수의 ID들과, 복수의 프레즌스 기반의 실시간 인터랙티브 통신 시스템들을 관리하는 복수의 원격 서버 컴퓨팅 시스템들의 복수의 인디케이터들을 포함하고, 각각의 원격 서버 컴퓨팅 시스템은 상기 컴퓨팅 시스템으로부터 떨어져 있음 -; 상기 복수의 원격 서버 컴퓨팅 시스템들 중 하나의 원격 서버 컴퓨팅 시스템으로부터 프레즌스 문서를 수신하는 단계 - 상기 프레즌스 문서는 상기 최종 사용자의 상기 복수의 ID들 중 제1 ID의 프레즌스 상태를 포함함 -; 상기 프레즌스 상태가 상기 최종 사용자의 상기 제1 ID가 오프라인 또는 어웨이라고 표시한다고 결정하는 단계; 상기 결정에 응답하여, 상기 원격 서버 컴퓨팅 시스템으로 등록 메시지를 발행하는 단계 - 상기 등록 메시지를 발행하는 것의 결과는 상기 제1 ID 행의 모든 콜의 상기 최종 사용자의 상기 복수의 ID들 중 제2 ID로의 리다이렉션이고 상기 컴퓨팅 시스템과 연관됨 -; 및 상기 등록 메시지의 발행 이후에 상기 콜을 수신하는 단계 - 상기 콜을 수신하는 것은 상기 리다이렉션의 결과임 - 를 포함한다.
위에서 요약된 방법들에 대응하는 컴퓨팅 인프라구조를 지원하는 시스템들, 컴퓨터 프로그램 제품들, 및 프로세스들이 또한 여기에 기술된다.
이제 본 발명의 바람직한 실시예들이 이하의 도면들을 참조하여 설명될 것이다. 이하의 도면들은 단지 예로서 제시된 것일 뿐이다.
도 1은 본 발명의 실시예들에 따라 콜리(callee)의 액티브 프레즌스 프로파일에 기초하여 콜리의 다수의 ID들 중 하나의 ID로 콜들을 자동적으로 라우팅하는 시스템의 블록도이다.
도 2a-2b는 본 발명의 실시예들에 따라, 도 1의 시스템에 의해 구현된 액티브 프레즌스 프로파일 기반의 자동 콜 라우팅 프로세스의 흐름도를 기술한다.
도 3은 본 발명의 실시예들에 따라, 도 2a-2b의 프로세스에서 식별된 하이퍼ID(hyperidentity) 그룹의 일 예를 기술한다.
도 4는 본 발명의 실시예들에 따라, 도 1의 시스템에서 구현되는 액티브 프레즌스 프로파일 매칭 알고리즘에 의해 선택된 ID로 콜들을 자동적으로 라우팅하는 프로세스이다.
도 5는 본 발명의 실시예들에 따라, 도 4의 프로세스에 포함된 프로파일 매칭에서 이용되는 하이퍼ID 그룹의 일 예를 기술한다.
도 6은 본 발명의 실시예들에 따라 도 2a-2b의 프로세스를 예시하는 사용 예의 시나리오들을 기술하는 블록도이다.
도 7은 본 발명의 실시예들에 따라 도 2a-2b 및 도 4의 프로세스들을 구현하는 도 1의 시스템에 포함되는 컴퓨팅 시스템의 블록도이다.
<개요>
본 발명은 바람직한 실시예에 따라, 최종 사용자의 액티브 프레즌스 프로파일에 기초한 자동화된 콜 라우팅을 제공한다. 세션 개시 프로토콜(Session Initiation Protocol, SIP)과 같은 개방형 표준 프로토콜들, 프레즌스 서비스 및 버디 리스트가 이용될 수 있다. 콜 라우팅 자동화를 용이하게 하기 위해 상기 프레즌스 서비스의 맨 위에 놓일 수 있는 새로운 컴포넌트는 버디 리스트 및 SIP 서비스들로부터 정보를 얻는다. 자동화된 콜 라우팅 기능은 최종 사용자가, 그 또는 그녀가 현재 로그된 프레즌스 스페이스(presence space)(예를 들어, Sametime®, GTalk, Yahoo® Messenger 등)에 관계없이 다수의 프레즌스 스페이스들 행의 실시간 통신 메시지들에 의해 도달가능하게 될 수 있도록 한다. 들어오는 메시지들은 상기 최종 사용자의 액티브 프레즌스 프로파일로 라우팅된다. 예를 들어, 만약 어떤 사람이 GTalk에서 현재 액티브이면, 그 사람의 Second Life® 계정 행의 들어오는 콜들은 자동적으로 GTalk로 라우팅된다.
여기에 개시되는 솔루션은 최종 사용자가 다른 프레즌스 프로파일로 전환할 때마다 "팔로우-미" 주소를 수동으로 업데이트해야 하는 번거로움을 줄일 수 있다. 나아가, 본 솔루션은 바람직하게는, 콜러와 콜리 모두에게 투명한(transparent) 셀프-관리되는 콜 라우팅 기능을 제공한다. 상기 콜러에 대한 상기 콜 라우팅 투명성(transparency)은 상기 콜리에게 프라이버시 보호를 제공할 수 있다.
<정의>
본 섹션에 열거되는 용어들이 명세서 내에 사용되는데, 이것들은 이하에서 정의된다.
컨택 주소(contact address) : 프레즌스 기반의 실시간 인터랙티브 통신 시스템(예, 인스턴트 메시징 시스템(instant messaging system), VoIP(Voice Over Internet Protocol) 시스템, 또는 IMS(Internet Protocol Multimedia Subsystem) 등)의 최종 사용자와 통신하기 위한 주소이다. 상기 컨택 주소는 최종 사용자를 식별하는 ID, 및 상기 프레즌스 기반의 실시간 인터랙티브 통신 시스템을 관리하는 서버 컴퓨팅 시스템의 인디케이션(indication)을 포함한다. 이후에는, 프레즌스 기반의 실시간 인터랙티브 통신 시스템은 또한 실시간 인터랙티브 통신 시스템으로도 일컬어진다.
최종 사용자(end user, 이는 또한 사용자(user)로도 일컬어짐) : ID를 가진, 한 사람, 사람들의 그룹, 또는 엔티티 - 이들은 또 다른 사람, 사람들의 그룹, 또는 엔티티로부터 디바이스 및 실시간 인터랙티브 통신 시스템을 통해 커뮤니케이션(즉, 메시지)을 수신한다(또는 이들은 대상 수신자(intended recipient)이다). 여기서 상기 실시간 인터랙티브 통신 시스템은 ID에 의해 최종 사용자를 식별한다. ID를 가진 최종 사용자는 커뮤니케이션을 수신하거나 여기서는 콜리(callee)로도 일컬어지는 커뮤니케이션의 대상 수신자이다.
프레즌스 정보(presence information) : 최종 사용자의 ID의 프레즌스 상태(presence status)를 포함하는 정보이며, 또한 최종 사용자의 액티비티들에 관한 설명들, 타임스탬프(timestamp) - 이 타임스탬프는 최종 사용자의 ID가 실시간 인터랙티브 통신 시스템에서 사용되고 있는 디바이스 상에서 아이들(idle)인 동안 한 시구간(a period of time)의 시작 시간을 표시함 -, 최종 사용자가 그 디바이스를 이용하고 있는 장소(place)의 종류, 및/또는 그 디바이스의 지리적 위치를 포함할 수 있다.
프레즌스 서비스(presence service) : 프레즌스 정보를 수신, 저장 및 배포하는 서비스.
프레즌스 상태(presence status) : 실시간 인터랙티브 통신 시스템을 통해 통신신호를 수신하기 위한 최종 사용자의 ID의 이용가능성의 인디케이션(indication)(예, 온라인(이는 또한 액티브(active)로도 일컬어짐), 오프라인, 또는 어웨이(away)). 여기에 사용되는 바와 같이, "어웨이"라는 프레즌스 상태는 온라인이지만 한 시구간 동안 아이들(idle)인(예를 들어, 마우스 또는 키보드 액티비티들이 없는) 최종 사용자를 일컫는다.
프레즌티티(presentity) : 프레즌스 정보를 프레즌스 서비스로 제공하는 프레즌스 엔티티(presence entity). 프레즌티티는 인간 또는 인간들의 그룹인데, 이 또는 이들은 실시간 인터랙티브 통신 시스템의 사용자들에게 프레즌스 정보를 기꺼이 제공할 것이다. 인간들의 그룹인 프레즌티티는 실시간 인터랙티브 통신 시스템의 사용자들에 대해 하나의 엔티티인 것처럼 보인다. 프레즌티티는 실시간 인터랙티브 통신 시스템의 최종 사용자이다.
<액티브 프레즌스 프로파일 기반의 자동화된 콜 라우팅 시스템>
도 1은 본 발명의 실시예들에 따라 콜리의 액티브 프레즌스 프로파일에 기초하여 콜리의 다수의 ID들 중 하나의 ID로 콜들을 자동적으로 라우팅하는 시스템의 블록도이다. 시스템(100)은 SIP/프레즌스 서버 컴퓨팅 시스템(102)(이는 또한 SIP 서버로도 일컬어짐), 프레즌티티와 연관된 디바이스(104)(이는 또한 프레즌티티 디바이스로도 일컬어짐), 구독자 디바이스(subscriber device)(106)를 포함한다. 이 섹션에서, 디바이스(104)와 연관된 프레즌티티는 간단히 "프레즌티티"로 일컬어진다. SIP 서버(102)는 SIP 서비스(108), 프레즌스 서비스(110) 및 디렉토리 서비스(112)를 포함한다. SIP 서비스(108)는 SIP 프록시(114) 및 SIP 레지스트라(registrar)(116)를 포함한다. 프레즌스 서비스(110)는 프레즌스 문서들(118) 및 하이퍼아이덴티티(hyperidentity, 이후에는 '하이퍼ID'라 함) 서비스(120)를 포함한다. 디렉토리 서비스는 하이퍼ID 그룹(122)을 포함한다.
SIP 서비스(108)는 콜 개시(call initiation), 세션 수립, 및 디바이스 주소 등록을 관리하는 SIP 시스템이다. SIP 프록시(114)는 SIP 메시지들을 라우팅, 전달, 리다이렉트 및 가를(fork) 수 있다. SIP 프록시(114)는 또한 SIP INVITE 메시지에 응답한다. SIP 레지스트라(116)는 유니폼 리소스 아이덴티파이어(Uniform Resource Identifier, URI)(예를 들어, 십(sip): 또는 텔(tel): 스킴(scheme) 네임을 갖는 URI)에 SIP 클라이언트 디바이스의 컨택 주소(예를 들어, 인터넷 프로토콜(IP) 주소)를 등록하는 것을 책임진다.
프레즌스 서비스(110)는 프레즌스 시스템인데, 이 프레즌스 시스템은 최종 사용자들이 다른 사용자들 각각의 프레즌스 상태들에 대한 구독뿐만 아니라 상기 최종 사용자들의 프레즌스 상태들을 발행(publish)하도록 한다. 각각의 최종 사용자의 프레즌스 상태(즉, 프레즌스 정보에 포함되는 상태)는 프레즌스 문서들(118)에 포함된 프레즌스 문서 내에 밀봉(encapsulate)된다. 프레즌스 서비스(110)는 프레즌티티 디바이스(104)와 같은 클라이어트 디바이스들과 구독자 디바이스(106) 사이에서 프레즌스 문서들(118)을 수신 및 발송한다. 프레즌스 문서들(118) 각각은 프레즌스 정보 데이터 포맷(Presence Information Data Format, PIDF) 표준 및 프레즌스 정보 데이터 포맷으로의 리치 프레즌스 익스텐션들(Rich Presence Extensions to Presence Information Data Format, RPID)과 같은 다른 제안되는 익스텐션들에 기초한다. 상기 PIDF 표준은 인터넷 엔지니어링 태스크 포스(Internet Engineering Task Force, IETF)에 의해 RFC3863으로 발행된다. 상기 PIDF 표준으로의 RPID 익스텐션은 IETF에 의해 RFC4480으로 발행된다. 이후에는, 상기 PIDF 표준 및 RPID와 같은 제안되는 익스텐션들은 총괄하여 PIDF/RPID 표준으로 일컬어진다. 각각의 프레즌스 문서는 프레즌티티와 연관된 프레즌스 정보의 다수의 측면들(aspects)을 기술한다. 상기 프레즌티티는, 예를 들어, (1) 디바이스 상태(즉, 프레즌티티 디바이스의 상태, 예를 들어, 개방(open) 또는 폐쇄(closed)), (2) 최종 사용자의 액티비티들(예를 들어, 통화중(on the phone), 어웨이(away), 약속(appointment), 휴일, 식사 등), (3) 그 디바이스 상에서 아이들 상태인 최종 사용자의 시작 시간을 표시하는 타임스탬프, (4) 장소의 유형(예, 집, 사무실, 조용한 곳(quiet), 시끄러운 곳(noisy), 공항, 버스 등), 및 (5) 로케이션(location)(예를 들어, 글로벌 포지셔닝 시스템(Global Positioning System, GPS) 시스템). 상기 PIDF 표준에서, "개방"인 디바이스 상태는 "온라인"과 동등하고 "폐쇄"인 디바이스 상태는 "오프라인"과 동등하다.
하이퍼ID 서비스(120)는 코어 프로세싱 로직을 포함하는데, 이 코어 프로세싱 로직은 도 2a-2b 및 도 4에 도시된 바와 같은 바람직한 실시예에 따라 본 발명의 방법을 수행한다.
디렉토리 서비스(112)는 권한 있는 최종 사용자(예, 프레즌티티)를 위해 버디 리스트(즉, 컨택 리스트)를 보유하는 데이터 스토리지를 포함하는 시스템이다. 상기 버디 리스트는 상기 권한 있는 최종 사용자가 인스턴트 메시징과 같은 실시간 인터랙티브 통신 시스템을 통해 통신할 수 있는 컨택들(즉, 사람들 및/또는 엔티티들)을 식별한다. 상기 버디 리스트와 연관된 전술한 권한 있는 최종 사용자는 또한 여기서는 소유자(owner)로도 일컬어진다. 상기 버디 리스트는 상기 컨택들을 범주화하는 그룹들을 열거한다. 상기 버디 리스트에서의 그룹들은, 예를 들어, 패밀리 멤버들, 친구들, 직장 동료들 등일 수 있다. 본 솔루션에서, 특정 그룹 명칭은 디렉토리 서비스(112)에 저장된다. 여기에 사용되는 바와 같이, 특정 그룹 명칭은 "하이퍼ID"이다(즉, 하이퍼ID 그룹(122)은 상기 버디 리스트에 포함되고 "하이퍼ID"의 특정 그룹 명칭을 갖는 그룹이다). 본 솔루션은 "하이퍼ID"를 대체할 수 있는 다른 명칭도 고려한다.
디렉토리 서비스(112)는 상기 권한 있는 최종 사용자인 프레즌티티와 연관된 디바이스(예를 들어, 프레즌티티 디바이스(104))가 하이퍼ID 그룹(122)에서 정보를 셋업 및 갱신할 수 있도록 한다. 하이퍼ID 그룹(122)은 상기 권한 있는 최종 사용자에게 속하는 모든 사용자 프로파일들(이는 또한 프레즌스 프로파일들로 일컬어짐)의 리스트를 포함한다. 하이퍼ID 그룹(122)에서 각각의 사용자 프로파일은 상기 권한 있는 최종 사용자의 컨택 주소를 포함한다. 예를 들어, 하이퍼ID 그룹(122)에 포함된 컨택 주소는 최종 사용자의 GTalk ID, Second Life® ID, Sametime® ID 또는 MSN® Messanger ID를 포함할 수 있다.
일 실시예에서, 앞으로의 익스텐션들을 위해 하이퍼ID 그룹(122)은 확장형 마크업 언어(Extensible Markup Language, XML)로 표현된다. 예를 들어, XML로 표현되고 "Tim"으로 식별되는 최종 사용자와 연관된 하이퍼ID 그룹은 도 3에 도시된다.
일 실시예에서, 디렉토리 서비스(112) 및 하이퍼ID 그룹(122)은 XML 설정 억세스 프로토콜(XML Configuration Access Protocol, XCAP) 서비스를 사용하여 구현된다. XCAP는 사용자 또는 어플리케이션이 하이퍼텍스트 트랜스퍼 프로토콜(Hypertext Transfer Protocol, HTTP) 서버에 저장된 XML 문서를 처리하도록 허용하는데, 여기서 상기 XMP 문서의 포맷은 확장가능하다. 또 다른 실시예에서, 디렉토리 서비스(112)는 하이퍼ID 그룹(122)을 저장하기 위해 데이터베이스 스토리지를 이용한다.
프레즌티티 디바이스(104)는 SIP 디바이스인데, 이 SIP 디바이스는 그것의 컨택 주소를 SIP 서비스(108) 상에 등록하고, 그것의 프레즌스 상태를 프레즌스 서비스(110)로 발행하고, 디렉토리 서비스(112)에 포함된 하이퍼ID 그룹(122)의 세부 내용들을 저장, 갱신 및 리트리브한다.
구독자 디바이스(106)는 SIP 디바이스인데, 이 SIP 디바이스는 상기 프레즌티티와 연관된 프레즌스 정보 상의 관찰자(watcher)로서 프레즌스 서비스(110)를 구독한다. 여기에 사용되는 바와 같이, 관찰자는 프레즌스 서비스로부터 프레즌티티에 관한 프레즌스 정보를 요청한다(예를 들어, 상기 프레즌스 서비스가 프레즌티티의 프레즌스 정보에서의 어떤 변화의 즉각적인 통지를 제공하는 것을 요청한다).
<액티브 프레즌스 프로파일 기반의 자동화된 콜 라우팅 프로세스>
도 2a-2b는 본 발명의 실시예들에 따라, 도 1의 시스템에 의해 구현된 액티브 프레즌스 프로파일 기반의 자동적 콜 라우팅 프로세스의 흐름도를 기술한다. 액티브 프레즌스 프로파일에 기초하여 콜을 자동적으로 라우팅하는 프로세스는 단계 200에서 시작한다. 단계 202에서, SIP 서버(102)(도 1 참조)(이는 SIP 서버 A로 일컬어짐)는 실시간 통신 시스템에 대한 최종 사용자에 의한 로그인을 수신한다. 단계 204에서, SIP 서버 A는 디렉토리 서비스(112)(도 1 참조)에 저장된 최종 사용자의 버디 리스트에 대한 구독을 개시한다. 단계 204에서의 구독은 상기 컨택 주소들과 연관된 ID들의 상태를 결정하기 위해(예를 들어, 그 ID들이 온라인인지, 오프라인인지 또는 어웨이인지를 결정하기 위해) 최종 사용자의 버디 리스트에 포함된 컨택 주소들에 대한 요청을 전송하는 것을 포함하는 구독 명령을 발행(issue)함으로써 수행된다.
만약 디렉토리 서비스(112)(도 1 참조)가 단계 206에서 상기 최종 사용자의 버디 리스트가 하이퍼ID 그룹(122)을 포함하지 않는다면, 도 2a-2b의 프로세스는 단계 208로 계속된다. 단계 208에서, SIP 서버 A에 의한 노멀 SIP/프레즌스 프로세싱이 계속되고 사용자들의 프레즌스 상태들은 프레즌스 서비스(110)(도 1 참조)에 의해 발행(publish)된다. 단계 210에서, 하나 또는 그 이상의 원격 SIP/프레즌스 서버들(도 1에는 미도시)에 대한 온고잉 리스닝(ongoing listening)은 SIP 서버 A에 의해 계속된다. 상기 하나 또는 그 이상의 원격 SIP/프레즌스 서버들은 SIP 서버(102)(도 1 참조)에 대해 떨어져 있고(remote) SIP 서버(102)(도 1 참조)의 컴포넌트들과 유사한 컴포넌트들을 갖는다.
단계 206을 참조하면, 만약 디렉토리 서비스(112)(도 1 참조)가 상기 최종 사용자의 버디 리스트가 하이퍼ID 그룹(122)을 포함한다고 결정하면, 단계 212에서 SIP 서버 A는 프레즌스 프로파일이 하이퍼ID 그룹(122)에 포함되는 프레즌스 각각에 구독 메시지를 발송한다. 예를 들어, SIP 서버 A는 단계 212에서 프레즌티티 디바이스(104)(도 1 참조)로 구독 메시지를 발송한다. 단계 214는 단계 212 및 단계 210을 따른다. 단계 212 및 단계 214는 하이퍼ID 서비스(120)에 의해 수행된다.
단계 214에서, SIP 서버 A의 프레즌스 서비스(110)는 하나 또는 그 이상의 프레즌스 문서들을 수신하는데, 각각의 프레즌스 문서는 원격 SIP/프레즌스 서버(들) 중 하나로부터 수신되고 있다. 상기 하나 또는 그 이상의 프레즌스 문서들은 일대일 대응으로 하나 또는 그 이상의 원격 프레즌티티들과 연관된다. 상기 하나 또는 그 이상의 원격 프레즌티티들은 일대일 대응으로 상기 하나 또는 그 이상의 원격 SIP/프레즌스 서버들과 연관된다. 단계 212에서 발송된 구독 메시지에 응답하여 상기 프레즌스 문서들 각각이 수신된다. 도 2b의 단계 216은 단계 214를 따른다.
단계 214에서 수신된 각각의 프레즌스 문서에 있어서, 만약 SIP 서버 A가 단계 216에서 상기 프레즌스 문서의 상태 필드가 프레즌스 문서와 연관된 원격 프레즌티티가 (1) 오프라인 또는 어웨이라고 나타내거나, 또는 (2) 온라인(즉, 액티브)으로부터 오프라인 또는 어웨이로 상태가 변한다고 나타낸다면, 단계 216의 예(Yes) 분기가 취해지고 단계 218이 수행된다. 예를 들어, 만약 상기 원격 프레즌티티가 그것의 해당 SIP/프레즌스 서버(즉, SIP 서버 A로부터 떨어진 SIP/프레즌스 서버)를 로그 오프하면, 단계 216의 예 분기가 취해진다. 단계 218에서, SIP 서버 A는 타겟 SIP 서버의 SIP 레지스트라에 SIP REGISTER 메시지를 발행한다. 여기에 사용된 바와 같이, 타겟 SIP 서버는 그 주소가 콜의 오리지널 목적지인 원격 프레즌티티와 연관된 원격 SIP/프레즌스 서버로 정의된다. 상기 SIP REGISTER 메시지의 발행은 결국 상기 타겟 SIP 서버로부터 SIP 서버로 흐르는 콜의 자동적 리다이렉션이 초래된다. 단계 218 이후에, 도 2a-2b의 프로세스들은 도 2a의 단계 208에서 시작하여 반복된다.
단계 216으로 돌아가서, 만약 SIP 서버 A가 상기 프레즌스 문서의 상태 필드가 상기 프레즌스 문서와 연관된 원격 프레즌티티가, (1) 오프라인 또는 어웨이가 아니고, (2) 온라인(즉, 액티브)에서 오프라인 또는 어웨이로 상태가 변하지 않았다고 표시한다고 결정하면, 단계 222가 수행된다.
만약 SIP 서버 A가 단계 222에서 상기 프레즌스 문서의 상태 필드가 상기 프레즌스 문서와 연관된 원격 프레즌티티가 오프라인 또는 어웨이에서 온라인(즉, 액티브)으로 변한다고 나타냄을 결정하면, 단계 222의 예 분기가 취해지고 단계 224가 수행된다. 예를 들어, 만약 상기 원격 프레즌티티가 그것의 해당 SIP/프레즌스 서버(즉, SIP 서버 A로부터 떨어진 SIP/프레즌스 서버)에 로그온한다면, 단계 222의 예 분기가 취해진다. 단계 224에서, SIP 서버 A가 원격 프레즌티티와 연관된 원격 SIP/프레즌스 서버(즉, 타겟 SIP 서버)의 SIP 레지스트라에 SIP REGISTER 메시지를 발행한다. 결국 SIP REGISTER 메시지의 발행은 상기 타겟 SIP 서버로부터 SIP 서버 A로 흐르는 콜의 리다이렉션을 취소하기 위해 SIP 서버의 주소를 등록해제(un-registering)하는 것을 초래한다. 단계 224를 따라서, 도 2a-2b의 프로세스는 도 2a의 단계 208에서 시작하여 반복된다.
단계 222로 돌아가서, 만약 SIP 서버 A가 상기 프레즌스 문서의 상태 필드가 상기 프레즌스 문서와 연관된 원격 프레즌티티가 오프라인 또는 어웨이에서 온라인(즉, 액티브)으로 변하지 않는다고 표시한다고 결정하면, 하이퍼ID 서비스(120)(도 1 참조)는 어떤 콜 흐름 리다이렉션도 수행하지 않거나 단계 226에서 콜 흐름 리다이렉션의 취소를 수행한다. 단계 222의 아니오 분기를 따라서 단계 226으로 진행하는 것은 원격 프레즌티티의 프레즌스 정보가 변했다는 것을 의미하고, 여기서 그 변화된 프레즌스 정보는 단계 216 및 222에서 체크된 온라인 상태에서의 변화 이외의 것이다. 예를 들어, 원격 프레즌티티의 프레즌스 정보는 공항으로부터 사무실로 원격 프레즌티티와 연관된 장소의 종류를 변경할 수 있다. 단계 226에 이어서, 도 2a-2b의 프로세스는 도 2a의 단계 208에서 시작하여 반복된다.
단계 216, 218, 222, 224 및 226은 하이퍼ID 서비스(120)(도 1 참조)에 의해 수행된다.
도 3은 본 발명의 실시예들에 따라 도 2a-2b의 프로세스에서 식별된 하이퍼ID 그룹의 일 예를 도시한다. 하이퍼ID 그룹(300)은 "Tim"으로 식별된 개개인에 대한 사용자 프로파일들을 포함한다. 하이퍼ID 그룹(300)에서 사용자 프로파일들 각각은 네임, 컨택 주소 및 이메일 주소를 포함한다. 하이퍼ID 그룹(300)은 도 2a의 단계 206에서 식별된 하이퍼ID 그룹의 일 예이다.
<다수의 액티브 프레즌스 프로파일들로 자동화된 콜 라우팅>
도 4는 본 발명의 실시예들에 따라, 도 1의 시스템에서 구현된 액티브 프레즌스 프로파일 매칭 알고리즘에 의해 선택된 ID로 콜들을 자동적으로 라우팅하는 프로세스이다. 만약 액티브 상태인 다수의 사용자 프로파일들에 기인하여 다수의 콜 리다이렉션 주소들이 존재한다면, 도 4의 프로세스에서 프로파일 매칭 알고리즘의 실행은 가장 적절한 콜 리다이렉션 주소를 자동적으로 선택한다. 상기 프로파일 매칭 알고리즘은 하이퍼ID 그룹(122)(도 1 참조)에 기록된 프로파일 세부사항을 확장할 것을 요구한다. 예를 들어, 하이퍼ID 그룹(122)(도 1 참조) 내의 각각의 프로파일은 XML 포맷으로 표현되는데, 이는 확장가능하고, 이에 따라 하이퍼ID 그룹(122)에서 프로파일 세부사항이 그 프로파일 매칭 알고리즘에 의해 요구됨에 따라 확장되도록 허용한다.
일 실시예에서, 상기 프로파일 매칭 알고리즘은 서로 다른 사용자 프로파일들 내의 대응하는 데이터 엘리먼트들 사이에서 정확한 매치들의 수를 총합하는 것에 기초한다. 예를 들어, 제1 프로파일을 표현하는 제1 XML 문서에서 "interest"로 라벨링된 데이터 엘리먼트 내의 "PC Games" 속성은, 제2 프로파일을 나타내는 제2 XML 문서에서 "interest"로 라벨링된 데이터 엘리먼트 내의 "PC Games" 속성과 정확히 매치한다.
또 다른 실시예에서, 상기 프로파일 매칭 알고리즘은 매칭 스코어를 계산하는데 이용되는 퍼지 알고리즘에 기초한다. 예를 들어, 퍼지 알고리즘은 "Fitness Trainer"에 비교한 "Game Player"가 "IT Architect"에 비교한 "Game Player"보다 더 높은 매칭 스코어를 갖는다.
여기에 개시되는 프로파일 매칭 알고리즘에 기초한 리다이렉션 컨택 주소들을 선택할 수 있는 기능은 바람직하게는 가상 교육/가정교육 및 전문적인 지원 서비스들/생활 지원 핫라인들에 적용될 수 있다. 예를 들어, 하이퍼ID 그룹은 가상 강의/가정교사의 그룹을 위해 셋업될 수 있는데, 여기서 각각의 강사/가정교사는 상세한 프로파일과 연관되고, 이 상세한 프로파일은 그 또는 그녀가 가르치고 있는 주제들, 그 또는 그녀가 강의하고 있는 언어들이 무엇인지 등을 포함한다. 온라인이 아닌 제1 강사/가정교사와 컨택하고자 시도하는 학생은 그 프로파일 세부사항이 상기 제1 강사/가정교사와 가장 가깝게 매치하는 속성들을 포함하는 제2 강사/가정교사로 자동적으로 라우팅될 것이다.
액티브 프레즌스 프로파일 매칭 알고리즘에 의해 선택된 ID로 콜들을 자동적으로 라우팅하는 프로세스는 단계 400에서 시작한다. 사용자 B 및 사용자 C는 오프라인이다. 도 2a-2b의 프로세스 동안 그리고 단계 402에 앞서, 사용자 A는 SIP 서버(102)(도 1 참조)(이는 SIP 서버 A 또는 SIP_Server_A로 일컬어짐)로 로그한다. 단계 402에서, SIP 서버 A는 SIP 서버 C로부터 SIP 서버 A로 콜들의 리다이렉션을 표시하기 위해 도 2a-2b의 프로세스 동안 SIP/프레즌스 서버 C(이는 SIP 서버 C 또는 SIP_Server_C로 일컬어짐)에 콜 리다이렉션을 발행한다.
단계 404에서, SIP 프레즌스 서버 B(이는 SIP 서버 B 또는 SIP_Server_B로 일컬어짐)는 사용자 B에 의한 로그인을 수신한다. 사용자 C는 계속해서 오프라인이다. 도 2a-2b의 로직을 사용하여, SIP 서버 B는 SIP 서버 A 및 SIP 서버 C에 컨택할 지 안할 지를 결정한다. SIP 서버 A는 이미 로그온된 사용자 A를 가지며, SIP 서버 B는 SIP 서버 A에 콜 리다이렉션을 발행하지 않는다. 사용자 C는 SIP 서버 C 상에 아직 로그되지 않았으므로, SIP 서버 B는 SIP 서버 C로부터 SIP 서버 B로의 콜 흐름의 리다이렉션을 표시하기 위해 단계 406에서 SIP 서버 C에 SIP REGISTER 메시지를 발행한다.
단계 406에 이어서, 단계 4의 프로세스는 SIP 서버 C의 관점으로부터 기술된다. SIP 서버 C는 도 1에 도시된 SIP 서버(102)의 컴포넌트들과 유사한 컴포넌트들을 포함한다. 예를 들어, SIP 서버 C는 하이퍼ID 서비스(407)를 포함하는데, 이것의 기능은 하이퍼ID 서비스(120)(도 1 참조)의 기능과 유사하다.
단계 408에서, SIP 서버 C의 하이퍼ID 서비스(407)는 등록된 리다이렉션 컨택 주소들(즉, UserA@SIP_Server_A 및 UserB@SIP_Server_B)의 프로파일 세부사항을 리트리브한다. 예를 들어, 하이퍼ID 서비스(407)는 하이퍼ID 그룹(500)의 제1 및 제2 프로파일들에서 "컨택(contact)"으로 라벨링된 데이터 엘리먼트들을 리트리브하는데, 이는 도 5에 도시된 바와 같이 디렉토리 서비스(112)에 포함된다.
단계 410에서, SIP 서버 C의 하이퍼ID 서비스(407)는 현재의 계정(즉, UserC@SIP_Server_C)의 프로파일 세부사항을 리트리브한다. 예를 들어, 하이퍼ID 서비스(407)는 하이퍼ID 그룹(500)(도 5 참조)의 제3 프로파일에서 "컨택"으로 라벨링된 데이터 엘리먼트를 리트리브한다.
단계 402 및 406로부터 초래되는 각각의 리다이렉션 컨택 주소에 있어서, SIP 서버 C의 하이퍼ID 서비스(407)는 리다이렉션 컨택 주소에 대응하는 프로파일이 현재 계정의 프로파일에 가장 가깝게 매치한다고 결정하기 위해, UserC@SIP_Server_C에 대해 단계 412에서 프로파일 매칭을 수행한다. 일 실시예에서, 리다이렉션 컨택 주소에 대응하는 어느 프로파일이 현재 계정의 프로파일에서 일치하는 것으로 라벨링된 데이터 엘리먼트들과 가장 매치하는 데이터 엘리먼트들을 갖는지를 결정함에 의해 결정된다.
예를 들어, UserA@SIP_Server_A에 대응하는 하이퍼ID 그룹(500)(도 5 참조)에서 사용자 A 프로파일은 UserC@SIP_Server_C에 대응하는 하이퍼ID 그룹(500)(도 5 참조)의 사용자 C 프로파일에 비교된다. 그리하여, 상기 사용자 A 프로파일이 상기 사용자 C 프로파일과 얼마나 가깝게 매치하는지를 결정한다. 나아가, UserB@SIP_Server_B에 대응하는 하이퍼ID 그룹(500)(도 5 참조)에서 사용자 B 프로파일은 사용자 C 프로파일에 비교된다. 그리하여, 상기 사용자 B 프로파일이 상기 사용자 C 프로파일에 얼마나 가깝게 매치하는지를 결정한다. 단계 412의 프로파일 매칭은 어느 프로파일(즉, 사용자 A 프로파일 또는 사용자 B 프로파일)이 상기 사용자 C 프로파일에 더 가깝게 매치하는지를 결정한다. 이 예에서, 사용자 A와 사용자 C의 프로파일들 사이에서보다 사용자 B와 사용자 C의 프로파일들 사이에서 서로 매치하는 더 많은 데이터 엘리먼트들이 있기 때문에, 사용자 B 프로파일은 사용자 C 프로파일에 더 가깝게 매치되도록 결정된다. 사용자 A 프로파일은 단지 하나의 데이터 엘리먼트에서 사용자 C 프로파일에 매치하고(즉, 30 이라는 나이(age)는 사용자 A 프로파일과 사용자 C 프로파일 둘 다에서 동일하다, 도 5 참조), 한편 사용자 B 프로파일은 세 개의 데이터 엘리먼트들에서 사용자 C 프로파일과 매치한다(즉, PC 게임들에서의 관심사(interest), 영어라는 언어, 및 30 이라는 나이가 사용자 B 프로파일 및 사용자 C 프로파일 둘 다에서 동일하다. 도 5 참조).
단계 414에서, 하이퍼ID 서비스(407)는 단계 412에서 결정된 가장 가까운 매치와 연관된 프로파일에 포함되는 하나의 리다이렉션 컨택 주소를 보유한다. 단계 414에서, 하이퍼ID 서비스(407)는 SIP 서버 C가 모든 다른 프레즌티티들에 대해 컨택 주소들을 저장하는 방법과 일관되는 방식으로 전술한 리다이렉션 컨택 주소를 저장한다. 일 실시예에서, 하이퍼ID 서비스(407)는 SIP 서버 C에 결합된 메모리에 또는 SIP 서버 C에 결합된 스토리지 디바이스에 상기 리다이렉션 컨택 주소를 저장한다. 나아가, 단계 414에서, 하이퍼ID 서비스(407)는 단계 414에서 비교되었으나 단계 412에서 결정된 가장 가까운 매치와 연관되지 않은 프로파일에 포함되는 또 다른 리다이렉션 컨택 주소를 스토리지로부터 제거한다(예를 들어, SIP 서버 C에 결합된 스토리지 디바이스 또는 메모리로부터 제거한다). 이 제거된 컨택 주소는 오리지널 목적지가 현재의 계정인 리다이렉트된 콜들을 수신하지 않는다. 예를 들어, 단계 414에서, 하이퍼ID 서비스(407)는 원래 UserC@SIP_Server_C 행의 리다이렉트된 콜들을 수신하는 리다이렉션 컨택 주소로서 UserB@SIP_Server_B를 보유하고, UserA@SIP_Server_A는 제거된다(즉, UserA@SIP_Server_A는 원래 UserC@SIP_Server_C 행이었던 리다이렉트된 콜들을 더 이상 수신하지 않는다). 단계 414에 이어, 도 4의 프로세스는 단계 416에서 종료된다.
만약 사용자 C가 SIP_Server_C 상에 로그한다면(즉, 사용자 C의 프레즌스 상태가 오프라인으로부터 온라인으로 변하면), 도 4의 프로세스에서 보유되고 이미 설정된 리다이렉션 주소는 단계 222(도 2b 참조) 및 단계 224(도 2b 참조)의 예 분기에 의해 취소된다.
<사용 예 시나리오들>
도 6은 본 발명의 실시예들에 따라, 도 2a-2b의 프로세스를 예시하는 사용 예 시나리오들을 기술하는 블록도이다. 도 6에 의해 도시된 사용 예 시나리오들은 Tim으로 식별된 최종 사용자와 관련된다. 시스템(600)은 Tim의 통신 디바이스들(601)을 포함하는데, 이는 스마트폰(602), 스마트 디바이스(604) 및 오피스 컴퓨팅 유닛(606)을 포함한다. 스마트폰(602)은 전화번호(0412 345 678)를 통해 컨택될 수 있다. 스마트 디바이스(604)는 SIP 주소 dev1@192.11.22.12를 통해 컨택될 수 있다. 오피스 컴퓨팅 유닛(606)은 Sametime® 주소 121.1.3.12를 통해 컨택될 수 있다. 통신 디바이스들(601) 각각은 프레즌티티 디바이스(104)(도 1 참조)의 일 예이다.
시스템(600)은 또한 Tim의 ID들(즉, SIP/프레즌스 계정들)(607)을 포함하는데, 이는 제1 ID(608)(즉, Tim_1), 제2 ID(610(즉, Tim_2), 및 제3 ID(612)(즉, Tim_3)를 포함한다. Tim_1은 오프라인이고 제1 SIP/프레즌스 서버(614)(즉, SIP/프레즌스 서버 1 또는 sip1.com.au)와 연관된다. Tim_2는 온라인이고 제2 SIP/프레즌스 서버(616)(즉, SIP/프레즌스 서버 2 또는 sip2.com.au)와 연관된다. Tim_3은 어웨이이고 제3 SIP/프레즌스 서버(618)(즉, SIP/프레즌스 서버 3 또는 sip3. com.au)와 연관된다. SIP/프레즌스 서버 1은 가상 세계를 위한 기능을 제공한다. SIP/프레즌스 서버 2는 모바일 서비스 제공자를 위한 기능을 제공한다.
사용 예 1: 제1 사용 예에서, Tim은 사무실 밖에 있고, Tim을 컨택하기 위한 유일한 수단은 스마트폰(602) 및 스마트 디바이스(604)를 통해서인데, 이는 SIP/프레즌스 서버(2)에 위치한 Tim_2 ID와 연관된다. Tim_2에 대응하는 프레즌티티는 온라인이다.
Tim은 Tim의 다른 두 개의 ID들(즉, Tim_1 및 Tim_3) 행의 들어오는 콜들을 Tim_2으로 라우팅하도록 선택할 수 있다. Tim은 하이퍼ID로 일컬어지는 특정 그룹 하에서 그의 ID들(607)의 세 개 모두를 포함시키도록 그의 리소스 리스트를 미리 구성(pre-configure)했다. 리소스 리스트는 상기 버디 리스트를 저장하기 위해 사용되는 SIP/프레즌스 서버에서의 특징이다. 사용 예 1에서, 하이퍼ID는 하이퍼ID 그룹(122)(도 1 참조)을 식별하는 특정 그룹 네임으로서 보유된다.
단계 1에서(도 6에서 화살표로 라벨링된 1 참조), Tim은 Tim_2에 스마트폰(602)을 등록한다. 단계 1에서 성공적인 등록은 SIP/프레즌스 서버(2)를 트리거하여 상기 리소스 리스트에서 Tim의 ID들(607) 각각에 대한 자동 구독을 수행한다. SIP/프레즌스 서버(2)는 상기 리소스 리스트에 ID들(607) 각각에 대해 SIP SUBSCRIBE 메시지들을 발행하고, 그런 다음 PIDF/RPID 표준에 따라 포맷된 프레즌스 문서에서 각각의 SIP SUBSCRIBE 메시지의 결과를 수신한다. 각각의 수신된 프레즌스 문서는 대응하는 ID - SIP SUBSCRIBE 메시지는 SIP/프레즌스 서버(2)에 의해 상기 대응하는 ID로 발행되었음 - 와 연관되는 하나 또는 그 이상의 디바이스들을 위한 속성들 및 상태들을 포함한다.
하이퍼ID 서비스(120)(도 1 참조)에 의해 제공된 로직은 하이퍼ID 그룹(122)(도 1 참조)에 포함된 ID로부터 발생된 프레즌스 문서가 프레즌티티 - 이는 그 프레즌스 상태가 상기 프레즌스 문서에 의해 기술됨 - 가 오프라인이라고 나타내는지를 결정한다. 만약 프레즌스 상태가 상기 프레즌스 문서에 의해 기술되는 프레즌티티가 오프라인이라면, 하이퍼ID 서비스(120)(도 1 참조)는 원래 상기 오프라인 프레즌티티 행의 콜들을 그 SIP SUBSCRIBE 메시지들이 상기 프레즌스 문서로부터 발생된 SIP/프레즌스 서버에 대응하는 온라인 프레즌티티로 리다이렉트한다. 사용 예 1에서, Tim_1로부터 발생된 프레즌스 문서(이는 하이퍼ID에 포함됨)는 Tim_1에 대응하는 프레즌티티가 오프라이라고 나타낸다.(도 2b의 단계 216의 예 분기). 그런 다음, SIP/프레즌스 서버(2)는 SIP/프레즌스 서버 1로 SIP REGISTER 메시지를 발행하여 Tim_1에서 Tim_2로 들어오는 콜들을 리다이렉트한다(도 2b의 단계 218 참조). Tim_1로부터 Tim_2로의 리다이렉션을 불러일으킬 샘플 SIP REGISTER 메시지는 아래와 같이 제시된다.
REGISTER sip:sip1.com.au
From:Tim_2<sip:tim_2@sip2.com.au>;tag=a-tag
To:Tim_1<sip:tim_1@sip1.com.au>
Contact:tel:0412345678@sip2.com.au
REGISTER 헤더는 등록이 의도되는 SIP 서비스의 도메인을 포함한다. FROM 헤더는 상기 등록을 책임지는 사람의 기록의 주소를 표시한다. To 헤더는 등록이 생성될 기록의 주소를 포함한다. Contact 필드는 상기 주소 바인딩들(bindings)을 포함한다.
Tim_3을 위해 발생된 프레즌스 문서는 Tim_3에 대응하는 프레즌티티가 오프라인이라고 나타낸다. SIP REGISTER 메시지는 위에서 제시된 SIP REGISTER 메시지와 유사하여, Tim_3 행의 콜들은 Tim_2(도 2b의 단계 216 및 218 참조)로 리다이렉트된다.
단계 2에서(도 6에서 화살표로 라벨링된 2 참조), Tim은 Tim_2에 스마트 디바이스(604)를 등록한다. 단계 3a에서(도 6에서 화살표로 라벨링된 3a 참조), 가상 세계에서의 아바타는 가상 전화(620)에 의한 콜을 통해 tim_1@sip1.com.au에서 Tim_1을 컨택하려고 시도한다. 단계 3b에서(도 6에서 화살표로 라벨링된 3b 참조), SIP/프레즌스 서버 1은 Tim_1로부터 Tim_2로의 콜들의 전술한 리다이렉션에 따라 0412 345 678로 행해진 콜들을 전송한다.
사용 예 2: 사용 예 2에서(이 사용 예 2는 사용 예 1을 따름), Tim은 사무실로 돌아오고 그의 Sametime® 계정 - 이는 그의 회사의 SIP/프레즌스 서버(즉, SIP/프레즌스 서버 3)에 의해 제공됨 - 상으로 로그한다. Tim의 Sametime® 계정으로의 로그온은 Tim_3 ID를 사용한다. Tim_2는 계속해서 로그온되어 액티브 상태이며 Tim_1은 오프라인될 것이다. 단계 4에서(도 4에서 화살표로 라벨링된 4 참조), Sametime®은 SIP/프레즌스 서버 3으로 SIP REGISTER 메시지를 발행하여, Tim_3의 추가 컨택 주소가 "sametime:121.1.3.12"가 되도록 등록한다. 사용 예 1의 결과로서 Tim_3을 위한 컨택 주소가 이미 존재한다(즉, tel:0412345678). Sametime®에 의한 SIP/프레즌스 서버(3)로의 성공적인 등록은 SIP/프레즌스 서버(3)의 프레즌스 서비스 컴포넌트에 대한 SIP PUBLISH 메시지를 트리거하여 Tim_3에 대응하는 프레즌티티가 온라인이라는 것을 표시한다. SIP/프레즌스 서버(3)의 프레즌스 서비스 컴포넌트는 Tim_3에 대응하는 프레즌티티에서의 상태 변화(즉, 오프라인으로부터 온라인으로)를 검출하고, 그런 다음 Tim_3의 구독자들 - 이들은 Tim_2를 포함함 - 에게 SIP NOTIFY 메시지를 발행한다. 상기 SIP NOTIFY 메시지를 발송하는 것의 결과로서, SIP/프레즌스 서버 2는 Tim_2를 위한 프레즌스 문서를 수신한다.
Tim_2를 위한 프레즌스 문서를 수신하는 것에 응답하여, SIP/프레즌스 서버 2의 하이퍼ID 서비스 컴포넌트는 그 수신된 프레즌스 문서가 그 사용 프로파일이 상기 하이퍼ID 그룹 내에 있는 엔티티로부터 오고 또한 상기 엔티티를 위한 프레즌스 상태가 온라인으로 갱신되었다고 결정한다(도 2b의 단계 22의 예 분기 참조). 그 수신된 프레즌스 문서가 사용자 프로파일이 하이퍼ID 내에 있는 엔티티로부터 오고 또한 그 ID의 프레즌스 상태가 온라인이 되도록 갱신된다고 결정하는 것에 응답하여, SIP/프레즌스 서버 2는 SIP REGISTER 메시지에서 UNREGISTER 요청을 SIP/프레즌스 서버 3으로 발행한다(단계 2b의 단계 224 참조). 상기 UNREGISTER 요청의 결과는 Tim_3으로 들어오는 콜이 이제 Tim_2로 리다이렉트되고 있고, 대신에 sametime:121.1.3.12에 도착한다는 것이다.
Tim_2 및 Tim_3이 이제 둘 다 온라인이므로, SIP/프레즌스 서버 1의 하이퍼ID 서비스 컴포넌트는 원래 Tim_1 행의 콜들이 Tim_2로 리다이렉트될지 또는 Tim_3으로 리다이렉트될지를 결정하기 위해 프로파일 매칭을 수행한다(즉, 도 4의 단계 408, 410, 412 및 414). 사용 예 3에서, SIP/프레즌스 서버 1은 도 4의 SIP/프레즌스 서버 C에 대응한다. 사용 예 3에서, 도 4의 단계 412는 Tim_1의 프로파일에 비해 가장 가까운 프로파일 매치는 Tim_3의 프로파일이라고 결정한다. 도 4의 단계 414는 Tim_1에서부터 원래 Tim_3 행의 콜 흐름을 리다이렉트하기 위해 Tim_3의 프로파일에 컨택 주소를 보유한다.
사용 예 3: 사용 예 3(이는 사용 예 2를 따름)에서, Tim은 미팅을 위해 그의 사무실을 떠나고, Tim_3의 Sametime® 상태는 "어웨이"가 되도록 갱신된다. Tim_2는 계속해서 로그온되고 액티브 상태이며 Tim_1은 오프라인이다. 단계 5에서(도 5에서 화살표로 라벨링된 5 참조), 오피스 컴퓨팅 유닛(606)은 "어웨이" 상태를 SIP/프레즌스 서버 3으로 발행한다. 상기 갱신된 Sametime® 상태를 수신하는 것에 응답하여, SIP/프레즌스 서버 3은 Tim_3의 구독자들 - 이는 Tim_2를 포함함 - 각각에게 SIP NOTIFY 메시지를 발송한다. 상기 SIP NOTIFY 메시지를 발송하는 것의 결과로서, SIP/프레즌스 서버 2는 Tim_3의 Sametime® 상태에서의 갱신을 포함하는 프레즌스 문서를 수신한다.
상기 프레즌스 문서를 수신하는 SIP/프레즌스 서버의 하이퍼ID 서비스 컴포넌트는 상기 프레즌스 문서가 하이퍼ID 그룹(122)(도 1 참조) 내의 엔티티로부터 오는지 그리고 상기 프레즌스 상태가 "오프라인" 또는 "어웨이"로 갱신되는지를 결정한다. 사용 예 3에서, SIP/프레즌스 서버 2에 포함된 하이퍼ID 서비스 컴포넌트는 상기 프레즌스 문서가 상기 하이퍼ID 그룹 내의 엔티티로부터 오고 또한 상기 프레즌스 상태가 "어웨이"로 갱신된다고 결정한다(도 2b의 단계 216의 예 분기 참조). 그런 다음, SIP/프레즌스 서버 2의 하이퍼ID 서비스 컴포넌트는 SIP REGISTER 메시지를 SIP/프레즌스 서버 3으로 발행하여, 원래 Tim_3 행의 콜들을 Tim_2로 리다이렉트한다(도 2b의 단계 218 참조).
단계 6a에서(도 6에서 화살표로 라벨링된 6a 참조), 최종 사용자 John은 John의 스마트 디바이스(622)로부터의 콜을 통해 Tim_3@sip3.com.au에 컨택하려고 시도하고 있다. 단계 6b에서(도 6에서 화살표로 라벨링된 6b 참조), sip3.com.au는 단계 6a에서 수행된 콜을 0412 345 678로 전송한다.
더 나아가, SIP/프레즌스 서버(2)에 포함된 하이퍼ID 서비스 컴포넌트는 Tim_1과 연관된 프레즌티티로부터의 제2 프레즌스 문서가 Tim_1이 오프라인이라고 표시한다고 결정한다(도 2b의 단계 216의 예 분기 참조). 그런 다음, SIP/프레즌스 서버 2의 하이퍼ID 서비스 컴포넌트는 SIP REGISTER 메시지를 SIP/프레즌스 서버 1로 발행한다. 그리하여, 앞서 Tim_3으로 리다이렉트된 콜들(사용 예 2 참조)은 Tim_2로 리다이렉트된다(도 2b의 단계 218 참조).
<컴퓨팅 시스템>
도 7은 본 발명의 실시예들에 따라, 도 1의 시스템에 포함되고 또한 도 2a-2b 및 도 4의 프로세스들을 구현하는 컴퓨팅 시스템의 블록도이다. SIP/프레즌스 서버 컴퓨팅 시스템(102)은 일반적으로 중앙처리장치(CPU)(702), 메모리(704), 입력/출력(I/O) 인터페이스(706), 및 버스(708)를 포함한다. 나아가, 컴퓨팅 시스템(102)은 I/O 디바이스들(710) 및 컴퓨터 데이터 스토리지 유닛(712)에 결합된다. CPU(702)는 컴퓨팅 시스템(102)의 계산 및 제어 기능들을 수행한다. CPU(702)는 하나의 처리 유닛을 포함할 수도 있고, 하나 또는 그 이상의 위치들(예를 들어, 클라이언트 및 서버)에서 하나 또는 그 이상의 처리 유닛들에 걸쳐 분산될 수 있다.
메모리(704)는 알려진 어떤 유형의 컴퓨터 데이터 스토리지 및/또는 전송 매체를 포함할 수도 있다. 그 예에는, 벌크 스토리지, 자기 매체, 광 매체, RAM, ROM, 데이터 캐시, 데이터 객체 등이 포함된다. 일 실시예에서, 메모리(704)의 캐시 메모리 엘리먼트들은 실행 동안 벌크 스토리지로부터 코드가 리트리브되어야 하는 횟수를 감소시키기 위해 적어도 몇몇의 프로그램 코드의 임시 스토리지를 제공한다. 더욱이, CPU(702)에 유사하게, 메모리(704)는 예를 들어, 하나 또는 그 이상의 유형의 데이터 스토리지를 포함하는 하나의 물리적 위치에 상주하거나, 여러가지 형태들의 복수의 물리적 시스템들에 걸쳐 분산될 수 있다. 나아가, 메모리(704)는 예를 들어, LAN(local area network) 또는 WAN(wide area network)에 걸쳐 분산된 데이터를 포함할 수 있다.
I/O 인터페이스(706)는 외부 소스로 또는 외부 소스로부터 정보를 교환하기 위한 시스템을 포함한다. I/O 디바이스들(710)은 알려진 유형의 외부 디바이스를 포함한다. 그 예들에는, 디스플레이 디바이스(예, 모니터), 키보드, 마우스, 프린터, 스피커들, 핸드헬드 디바이스, 팩시밀리 등이 포함된다. 버스(708)는 컴퓨팅 시스템(102) 내의 컴포넌트들 각각 사이에 통신 링크를 제공한다. 버스(708)는 전기, 광학, 무선 등을 포함하는 전송 링크의 종류를 포함할 수 있다.
I/O 인터페이스(706)는 또한 컴퓨터 데이터 스토리지 유닛(712)과 같은 보조 스토리지 디바이스로부터 정보(예를 들어, 프로그램 명령 또는 데이터)를 컴퓨팅 시스템(102)이 저장 및 리트리브하도록 한다. 컴퓨터 데이터 스토리지 유닛(712)은 자기 디스크 드라이브(즉, 하드 디스크 드라이브) 또는 광 디스크 드라이브(예를 들어, CD-ROM 디스크를 수용하는 CD-ROM 드라이브)dhk 같은 비휘발성 스토리지 디바이스일 수 있다.
메모리(704)는 컴퓨터 프로그램 코드(714)를 포함하는데, 이 컴퓨터 프로그램 코드(714)는 액티브 프레즌스 프로파일에 기초하여 콜들을 자동적으로 라우팅하는 로직을 제공한다(도 2a-2b의 프로세스 및/또는 도 4의 프로세스 참조). 일 실시예에서, 코드(714)는 하이퍼ID 서비스(120)(도 1 참조)에 의해 실행된다. 나아가, 메모리(704)는 도 7에 도시되지 않은 다른 시스템들, 예를 들어, CPU(702) 상에서 실행되고 컴퓨팅 시스템(102) 내에서 및/또는 컴퓨팅 시스템(102)에 연결되어 여러 가지 컴포넌트들의 제어를 제공하는 운영 체제(예를 들어, 리눅스)와 같은 다른 시스템들을 포함할 수 있다.
하이퍼ID 그룹(122)(도 1 참조)는 컴퓨터 데이터 스토리지 유닛에 저장되는데, 이는 스토리지 유닛(712), 또는 컴퓨팅 시스템(102) 또는 또 다른 컴퓨팅 시스템(미도시)에 결합되는 또 다른 컴퓨터 데이터 스토리지 유닛(미도시)일 수 있다.
당해 기술 분야에서 숙련된 자라면 알 수 있는 바와 같이, 본 발명은 시스템, 방법 또는 컴퓨터 프로그램 제품으로 구현될 수 있다. 따라서, 본 발명은 전적으로 하드웨어 실시예의 형태를 취할 수도 있고, 전적으로 소프트웨어 실시예(펌웨어, 상주 소프트웨어, 마이크로코드 등을 포함함)의 형태를 취할 수도 있으며, 또는 소프트웨어와 하드웨어 측면들 - 이것들은 모두 여기서는 일반적으로 "시스템"(예를 들어, 도 1의 시스템(100) 또는 컴퓨팅 시스템(102))으로 일컬어질 수 있음 - 을 조합하는 실시예의 형태를 취할 수도 있다. 더 나아가, 본 발명은 실체적인 표현 매체(예를 들어 메모리(704) 또는 컴퓨터 데이터 스토리지 유닛(712))에 구현된 컴퓨터 프로그램 제품의 형태를 취할 수도 있다. 상기 실체적인 표현 매체는 그 매체 내에 구현된 컴퓨터 사용가능 프로그램 코드(예를 들어, 코드 714)를 갖는다.
하나 또는 그 이상의 컴퓨터 사용가능 또는 컴퓨터 판독가능 매체(들)(예를 들어, 메모리(704) 및 컴퓨터 데이터 스토리지 유닛(712)의 어떤 조합이든지 이용될 수 있다. 상기 컴퓨터 사용가능 매체 또는 컴퓨터 판독가능 매체는, 예를 들어, 전자, 자기, 광학, 전자기, 적외선, 또는 반도체 시스템, 장치, 디바이스 또는 전파 매체일 수 있으나, 이러한 예들로 한정되는 것은 아니다. 컴퓨터 판독가능 매체의 더 구체적인 예들에는, 하나 또는 그 이상의 와이어들을 갖는 전기 접속, 휴대용 컴퓨터 디스켓, 하드 디스크, RAM, ROM, 소거가능 프로그램형 ROM(EPROM 또는 플래시 메모리), 광섬유, 휴대용 CD-ROM, 또는 광 스토리지 디바이스, 인터넷 또는 인터라넷을 지원하는 전송 매체, 또는 자기 스토리지 디바이스 등이 포함된다. 그러나, 모든 예들을 총망라한 것은 아니다. 상기 컴퓨터 사용가능 매체 또는 컴퓨터 판독가능 매체는 심지어 프로그램(714)이 인쇄되기에 적합한 종이 또는 또 다른 매체일 수 있음을 주목하자. 왜냐하면, 프로그램(714)은 예를 들어, 상기 종이 또는 다른 매체의 광학 스캐닝을 통해 전기적으로 캡쳐되고 그런 다음 컴파일, 인터프리트, 또는 만약 필요하다면, 그 밖의 적절한 방법으로 처리되어, 컴퓨터 메모리(704)에 저장될 수 있기 때문이다. 본 명세서의 맥락에서, 컴퓨터 사용가능 매체 또는 컴퓨터 판독가능 매체는 명령 실행 시스템, 장치, 또는 디바이스에 의해 사용하기 위한 또는 상기 명령 실행 시스템, 장치, 또는 디바이스와 함께 사용하기 위한 프로그램을 포함, 저장, 전달, 전파, 또는 전송할 수 있는 매체일 수 있다. 상기 컴퓨터 사용가능 매체는 전파되는 데이터 신호 - 이 데이터 신호는 이 데이터 신호에서, 기저대역 또는 반송파의 일부로서, 구현되는 컴퓨터 사용가능 프로그램 코드를 가짐 - 를 포함할 수 있다. 상기 컴퓨터 사용가능 프로그램 코드는 적절한 매체를 사용하여 전송될 수 있다. 상기 적절한 매체의 예들에는, 무선, 유선, 광섬유 케이블, RF 등이 포함되나, 이러한 예들로 한정되는 것은 아니다.
본 발명의 동작들을 수행하기 위한 컴퓨터 프로그램 코드(예, 코드 714)는 하나 또는 그 이상의 프로그래밍 언어들의 조합으로 작성될 수 있는데, 그 예들에는, JavaTM, 스몰토크, C++ 등과 같은 객체 지향 프로그래밍 언어, "C" 프로그래밍 언어 또는 유사 프로그래밍 언어들과 같은 전통적인 절차 프로그래밍 언어들이 포함된다. 상기 프로그램 코드는 독립형 소프트웨어 패키지로서, 사용자의 컴퓨터(예를 들어, 컴퓨팅 시스템(102)) 상에서 전적으로 실행되거나 사용자의 컴퓨터 상에서 부분적으로 실행될 수도 있고, 사용자의 컴퓨터 상에서 부분적으로 그리고 원격 컴퓨터 상에서 부분적으로, 또는 원격 컴퓨터 또는 서버 상에서 전적으로 실행될 수도 있다. 후자의 경우, 상기 원격 컴퓨터는 어떤 유형의 네트워크(미도시)를 통해서든지 상기 사용자의 컴퓨터에 연결될 수 있다. 상기 네트워크의 예들에는 LAN, WAN, 또는 외부 컴퓨터(예를 들어, 인터넷 서비스 제공자를 사용하는 인터넷을 통해)에 대해 이뤄지는 연결 등이 포함된다. (여기서, 자바(Java) 및 모든 자바 기반의 상표들 및 로고들은 선 마이크로시스템사의 상표들이며, 이는 미국, 기타 국가 또는 둘 다에 등록되어 있다).
본 발명은 발명의 실시예들에 따른 방법들, 장치(시스템들(예를 들어, 도 1 및 도 7 참조), 컴퓨터 프로그램 제품들에 관한 흐름도들(예를 들어, 도 2a-2b 및 도 4) 및/또는 블록도들을 참조하여 여기서 기술되고 있다. 흐름도들 및/또는 블록도들의 각각의 블록, 흐름도들 및/또는 블록도들 내의 블록들의 조합들은 컴퓨터 프로그램 명령들(예, 코드 714)에 의해 구현될 수 있음을 이해해야 할 것이다. 이들 컴퓨터 프로그램 명령들은 범용 컴퓨터(예, 컴퓨팅 시스템(102)), 전용 컴퓨터, 또는 기타 프로그램가능 데이터 처리 장치의 프로세스로 제공되어 머신을 생성함으로써, 상기 명령들이 상기 컴퓨터 또는 다른 프로그램가능 데이터 처리 장치의 프로세서를 통해 실행되는 경우 흐름도 및/또는 블록도의 블록 또는 블록들에 명시된 기능들/작용들을 구현하는 수단을 생성하도록 한다.
이들 컴퓨터 프로그램 명령들은 컴퓨터 판독가능 매체(예, 메모리(704) 또는 컴퓨터 데이터 스토리지 유닛(712))에 저장될 수 있는데, 이 컴퓨터 판독가능 매체는 컴퓨터 또는 다른 프로그램가능 데이터 처리 장치가 특정 방식으로 기능하도록 명령함으로써, 상기 컴퓨터 판독가능 매체에 저장된 명령들이 흐름도 및/또는 블록도의 블록 또는 블록들에 명시된 기능/작용을 구현하는 명령 수단을 포함하는 제조 물품을 생성하도록 한다.
컴퓨터 프로그램 명령들은 또한 컴퓨터(예를 들어, 컴퓨팅 시스템(102)) 또는 다른 프로그램가능 데이터 처리 장치 상에 로드되어 상기 컴퓨터 또는 다른 프로그램 장치 상에 일련의 동작 단계들이 수행되도록 하여 컴퓨터로 구현된 프로세스를 생성하도록 할 수 있다. 그리하여 상기 컴퓨터 또는 다른 프로그램가능 장치 상에서 실행되는 명령들이 흐름도 및/또는 블록도의 블록 또는 블록들에 명시된 기능들/작용들을 구현하는 프로세스들을 제공하도록 한다.
본 솔루션의 컴포넌트들 중 어떤 것은 서비스 제공자에 의해 배치, 관리, 서비스될 수 있다. 여기서, 이 서비스 제공자는 액티브 프레즌스 프로파일에 기초하여 콜들을 자동적으로 라우팅하는 방법에 대핸 컴퓨닝 인프라구조를 배치 또는 통합하도록 제공한다. 따라서, 본 발명은 바람직한 실시예에 따라, 컴퓨터 인프라구조를 지원하는 프로세스를 개시하는데, 이 프로세스는 컴퓨팅 시스템(예를 들어, 컴퓨팅 시스템 102) 내에 컴퓨터 판독가능 코드(예를 들어, 코드 714)를 통합, 호스팅, 유지 및 배치하는 것을 포함하며, 상기 컴퓨팅 시스템과 결부된 코드는 액티브 프레즌스 프로파일에 기초하여 콜들을 자동적으로 라우팅하는 방법을 수행할 수 있다.
또 다른 실시예에서, 본 발명은 구독, 광고 및/또는 요금 기반으로 상기 솔루션의 프로세스 단계들을 수행하는 방법을 제공한다. 즉, 솔루션 인티그레이터(Solution Integrator)와 같은 서비스 제공자는 액티브 프레즌스 프로파일에 기초하여 콜들을 자동적으로 라우팅하는 방법을 생성, 유지, 지원하도록 제공할 수 있다. 이 경우, 상기 서비스 제공자는 하나 또는 그 이상의 고객들을 위해 상기 솔루션의 프로세스 단계들을 수행하는 컴퓨터 인프라구조를 생성, 유지, 지원할 수 있다. 결국, 상기 서비스 제공자는 구독 및/또는 요금 협의하에 고객(들)로부터 요금을 수신할 수 있고, 및/또는 상기 서비스 제공자는 하나 또는 그 이상의 제3 자들에게 광고 컨텐츠의 판매로부터 요금을 받을 수 있다.
도 2a-2b 및 도 4에서의 흐름도, 도 1 및 도 7에서의 블록도들은 본 발명의 여러 가지 실시예들에 따른 시스템들, 방법들, 및 컴퓨터 프로그램 제품들의 가능한 구현들의 아키텍쳐, 기능, 및 동작을 도시한다. 여기서, 상기 흐름도 또는 블록도들 내의 각각의 블록은, 모듈, 세그먼트 코드의 일부분(예, 코드 714)을 표현할 수 있는데, 이는 명시된 논리적 기능(들)을 구현하기 위한 하나 또는 그 이상의 실행가능한 명령들을 포함한다. 또한, 몇몇 다른 구현예들에서, 상기 블록에 나타낸 기능들은 도면에 나타낸 순서를 벗어나서 발생할 수 있음을 주목하여야 한다. 예를 들어, 연속해서 도시된 두 개의 블록들은, 실제로, 실질적으로 딩시에 실행될 수 있고, 또는 그 블록들은 때로는 결부되는 기능에 의존하여 역순으로 실행될 수도 있다. 또한 블록도들 및/또는 흐름도 내의 각각의 블록, 및 블록도들 및/또는 흐름도들 내의 블록들의 조합들은 전용 하드웨어 및 컴퓨터 명령들의 명시된 기능들 또는 작용들 또는 이것들의 조합들을 수행하는 전용 하드웨어 기반의 시스템들에 의해 구현될 수 있다.
본 발명의 실시예들은 여기서는 예시의 목적으로 기술되고 있다. 따라서, 당해 기술 분야에서 숙련된 자들에게는 많은 변경 및 변형 예들이 있을 수 있음은 자명하다. 따라서, 첨부되는 청구항들은 본 발명의 사상 및 범위 내에 들어오는 이러한 변경 및 변형 예들을 모두 포함하는 것으로 의도된다.

Claims (27)

  1. 최종 사용자의 액티브 프레즌스 프로파일(active presence profile)에 기초하여 상기 최종 사용자의 다수의 ID들(identities) 중 하나의 ID(a identity)로 콜을 자동적으로 라우팅하는 컴퓨터로 구현되는 방법에 있어서,
    컴퓨팅 시스템에 의해, 구독 메시지를 상기 최종 사용자의 복수의 컨택 주소들로 발송하는 단계 - 상기 복수의 컨택 주소들은 상기 최종 사용자의 복수의 ID들과, 각각의 프레즌스 기반의 실시간 인터랙티브 통신 시스템들을 관리하는 복수의 원격 서버 컴퓨팅 시스템들의 복수의 인디케이터들을 포함하고, 각각의 원격 서버 컴퓨팅 시스템은 상기 컴퓨팅 시스템으로부터 떨어져 있음(remote) -;
    상기 컴퓨팅 시스템에 의해 그리고 상기 복수의 원격 서버 컴퓨팅 시스템들 중 하나의 원격 서버 컴퓨팅 시스템으로부터, 프레즌스 문서(presence document)를 수신하는 단계 - 상기 프레즌스 문서는 상기 최종 사용자의 제1 ID의 프레즌스 상태(presence status)를 포함하고, 상기 제1 ID는 상기 최종 사용자의 상기 복수의 ID들에 포함됨 -;
    상기 컴퓨팅 시스템에 의해, 상기 최종 사용자의 상기 제1 ID는 오프라인 또는 어웨이(away)인 것으로 상기 프레즌스 상태가 표시한다고 결정하는 단계;
    상기 최종 사용자의 상기 제1 ID의 상기 프레즌스 상태가 상기 제1 ID는 오프라인 또는 어웨이인 것으로 표시한다고 결정된 것에 기초하여, 등록 메시지를 상기 원격 서버 컴퓨팅 시스템으로 발행(issue)함으로써, 상기 컴퓨팅 시스템은 상기 제1 ID로 향하는 상기 콜을 상기 최종 사용자의 제2 ID로 자동적으로 리다이렉트(redirect)하는 단계 -상기 제2 ID는 상기 최종 사용자의 상기 복수의 ID들에 포함되고, 상기 최종 사용자의 상기 액티브 프레즌스 프로파일에 포함되며, 상기 콜은 콜러(a caller)로부터 오고, 상기 콜이 상기 제1 ID로부터 상기 최종 사용자의 상기 제2 ID로 리다이렉트되는 것을 상기 콜러가 알지 못하는 상태로 상기 콜을 자동적으로 리다이렉트하는 단계가 수행됨-; 및
    상기 제1 ID로 향하는 콜을 상기 최종 사용자의 상기 제2 ID로 자동적으로 리다이렉트하는 것에 기초하여, 그리고 상기 제2 ID가 상기 최종 사용자의 상기 액티브 프레즌스 프로파일에 포함되는 것에 기초하여, 상기 제1 ID와 연관된 상기 원격 서버 컴퓨팅 시스템이 아닌, 상기 제2 ID와 연관된 상기 컴퓨팅 시스템이 상기 리다이렉트된 콜을 수신하는 단계;를 포함하는
    컴퓨터로 구현되는 방법.
  2. 제1항에 있어서,
    상기 컴퓨팅 시스템에 의해 그리고 상기 구독 메시지를 발송하는 단계에 앞서, 데이터 스토리지 디바이스에 하이퍼ID 그룹(hyperidentity group)을 저장하는 단계 -상기 하이퍼ID 그룹은 상기 최종 사용자의 복수의 프레즌스 프로파일들을 포함하며, 상기 복수의 프레즌스 프로파일들은 상기 최종 사용자의 상기 복수의 컨택 주소들을 포함하며, 상기 복수의 프레즌스 프로파일들은 상기 최종 사용자의 상기 액티브 프레즌스 프로파일을 포함함-;
    상기 하이퍼ID 그룹을 저장하는 단계에 후속하여 그리고 상기 구독 메시지를 상기 최종 사용자의 상기 복수의 컨택 주소들로 발송하는 단계에 앞서, 상기 컴퓨팅 시스템이 상기 최종 사용자의 버디 리스트가 상기 하이퍼ID 그룹을 표시하는 예약된 그룹명을 포함한다고 결정하는 단계;를 더 포함하고,
    상기 구독 메시지를 발송하는 단계는, 상기 버디 리스트가 상기 하이퍼ID 그룹을 표시하는 상기 예약된 그룹명을 포함한다고 결정한 것에 기초하여 그리고 상기 하이퍼ID 그룹이 상기 복수의 컨택 주소들을 포함하는 상기 복수의 프레즌스 프로파일들을 포함하는 것에 기초하여, 상기 컴퓨팅 시스템이 상기 구독 메시지를 상기 복수의 컨택 주소들로 발송하는 단계를 포함하고,
    상기 제1 ID로 향하는 상기 콜을 상기 최종 사용자의 상기 제2 ID로 자동적으로 리다이렉트하는 단계는, 상기 하이퍼ID 그룹이 상기 최종 사용자의 제1 ID 및 제2 ID를 포함하는 것에 기초하고, 상기 제1 ID는 상기 복수의 컨택 주소들 중 제1 컨택 주소에 포함되고, 상기 제2 ID는 상기 복수의 컨택 주소들 중 제2 컨택 주소에 포함되는,
    컴퓨터로 구현되는 방법.
  3. 제1항에 있어서,
    상기 구독 메시지를 발송하는 단계는, SIP(Session Initiation Protocol) SUBSCRIBE 메시지를 상기 최종 사용자의 상기 복수의 컨택 주소들로 발송하는 단계를 포함하고,
    상기 등록 메시지를 발행하는 단계는, SIP REGISTER 메시지를 상기 원격 서버 컴퓨팅 시스템으로 발행하는 단계를 포함하는
    컴퓨터로 구현되는 방법.
  4. 제1항에 있어서,
    상기 최종 사용자의 상기 제1 ID는 오프라인 또는 어웨이인 것으로 상기 프레즌스 상태가 표시한다고 결정하는 단계는, 상기 제1 ID가 온라인에서 오프라인으로 변했거나 액티브에서 어웨이로 변했다는 것을 상기 프레즌스 상태가 표시한다고 결정하는 단계를 포함하는
    컴퓨터로 구현되는 방법.
  5. 삭제
  6. 삭제
  7. 삭제
  8. 제1항에 있어서,
    상기 컴퓨팅 시스템에 의해, 상기 제1 ID로 향하는 모든 콜을 상기 최종 사용자의 상기 제2 ID로 리다이렉트 하는 것(a redirection)을 개시하는 단계;
    상기 컴퓨팅 시스템에 의해, 상기 원격 서버 컴퓨팅 시스템으로부터, 그리고 상기 콜을 수신하는 단계에 후속하여, 상기 제1 ID의 제2 프레즌스 상태를 포함하는 제2 프레즌스 문서를 수신하는 단계;
    상기 컴퓨팅 시스템에 의해, 상기 복수의 ID들 중 상기 제1 ID는 오프라인에서 온라인으로 변경되었거나 어웨이(away)에서 액티브로 변경되었음을 상기 제2 프레즌스 상태가 표시한다고 결정하는 단계;
    상기 제1 ID는 오프라인에서 온라인으로 변경되었거나 어웨이(away)에서 액티브로 변경되었음을 상기 제2 프레즌스 상태가 표시한다고 결정하는 것에 기초하여, 상기 컴퓨팅 시스템은 상기 제1 ID로 향하는 콜이 상기 최종 사용자의 다른 어떤 ID로도 리다이렉트 되지 않도록 하기 위해 상기 제1 ID로 향하는 모든 콜을 상기 최종 사용자의 상기 제2 ID로 리다이렉트 하는 것을 취소하는 단계 -상기 리다이렉트 하는 것을 취소하는 단계는 상기 컴퓨팅 시스템이 제2 구독 메시지를 발행하는 단계를 포함함-;를 더 포함하는,
    컴퓨터로 구현되는 방법.
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 제1항에 있어서,
    상기 콜을 수신하는 단계는, 상기 컴퓨팅 시스템에 의해 관리되는 프레즌스 기반의 실시간 인터랙티브 통신 시스템에서 수행되고,
    상기 컴퓨팅 시스템에 의해 관리되는 상기 프레즌스 기반의 실시간 인터랙티브 통신 시스템은, 상기 복수의 원격 서버 컴퓨팅 시스템들에 의해 관리되는 상기 프레즌스 기반의 실시간 인터랙티브 통신 시스템들에 포함된 프레즌스 기반의 실시간 인터랙티브 통신 시스템과는 다른,
    컴퓨터로 구현되는 방법.
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 컴퓨터 시스템에 있어서,
    CPU(a Central Processing Unit);
    상기 CPU에 접속된 메모리; 및
    상기 CPU에 접속된 컴퓨터 판독가능한 스토리지 디바이스;를 포함하고,
    상기 스토리지 디바이스는 상기 메모리를 경유하여 상기 CPU에 의해 실행될 때 상기 청구항 제1항 내지 제4항, 제8항, 제13항 중 어느 한 항에 기재된 방법의 모든 단계들을 수행하기 위한 명령들을 보유하는,
    컴퓨터 시스템.
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 컴퓨터 판독가능 매체에 있어서,
    상기 컴퓨터 판독가능 매체는 컴퓨터 판독가능 프로그램을 포함하고,
    상기 컴퓨터 판독가능 프로그램은, 컴퓨터 시스템의 프로세서에 의해 실행될 때 상기 청구항 제1항 내지 제4항, 제8항, 제13항 중 어느 한 항에 기재된 방법의 모든 단계들을 수행하기 위한 명령들을 포함하는,
    컴퓨터 판독가능 매체.
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
KR1020117006599A 2008-09-16 2009-09-14 액티브 프레즌스 프로파일에 기초한 자동화된 콜 라우팅 KR101442322B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/211,431 US8233604B2 (en) 2008-09-16 2008-09-16 Automated call routing based on an active presence profile
US12/211,431 2008-09-16
PCT/EP2009/061855 WO2010031741A2 (en) 2008-09-16 2009-09-14 Automated call routing based on an active presence profile

Publications (2)

Publication Number Publication Date
KR20110055688A KR20110055688A (ko) 2011-05-25
KR101442322B1 true KR101442322B1 (ko) 2014-11-04

Family

ID=41667380

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117006599A KR101442322B1 (ko) 2008-09-16 2009-09-14 액티브 프레즌스 프로파일에 기초한 자동화된 콜 라우팅

Country Status (9)

Country Link
US (1) US8233604B2 (ko)
EP (1) EP2335396B1 (ko)
JP (1) JP5460714B2 (ko)
KR (1) KR101442322B1 (ko)
CN (1) CN102160362B (ko)
BR (1) BRPI0913551B1 (ko)
CA (1) CA2734036C (ko)
TW (1) TW201021489A (ko)
WO (1) WO2010031741A2 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8125931B2 (en) * 2006-01-10 2012-02-28 Utbk, Inc. Systems and methods to provide availability indication
KR101653980B1 (ko) * 2008-10-22 2016-09-05 삼성전자주식회사 프로파일 관리 방법 및 장치
US8984062B2 (en) * 2010-06-29 2015-03-17 International Business Machines Corporation System and method for managing hunt groups
US20120246187A1 (en) * 2011-03-22 2012-09-27 International Business Machines Corporation Automatic correction of contact list errors in a collaboration system
KR101283039B1 (ko) 2011-06-09 2013-07-05 현대자동차주식회사 하이브리드 차량의 동력전달장치
CN103166921B (zh) * 2011-12-13 2016-01-20 中国移动通信集团公司 一种向终端提供服务的方法、网络侧装置及终端
CN102752313B (zh) * 2012-07-18 2015-07-29 北京开心人信息技术有限公司 一种即时通信工具中用户多身份的方法及装置
US9542856B2 (en) * 2012-08-30 2017-01-10 Interactive Intelligence Group, Inc. Method and system for learning call analysis
US9779177B1 (en) * 2014-01-31 2017-10-03 EMC IP Holding Company LLC Service generation based on profiled data objects
WO2016055868A1 (en) 2014-10-02 2016-04-14 Lacey Stuart H Systems and methods for context-based permissioning of personally identifiable information
US9633218B2 (en) 2015-02-27 2017-04-25 Microsoft Technology Licensing, Llc Identities and permissions
JP2017142610A (ja) * 2016-02-09 2017-08-17 株式会社リコー サーバ装置、伝送システム及びプログラム
US10171472B2 (en) * 2016-03-02 2019-01-01 Microsoft Technology Licensing, Llc Role-specific service customization
US10592832B2 (en) * 2016-07-29 2020-03-17 International Business Machines Corporation Effective utilization of idle cycles of users
US10511564B2 (en) * 2017-01-20 2019-12-17 Salesforce.Com, Inc. User availability aware communication system
US11039009B2 (en) * 2017-08-01 2021-06-15 International Business Machines Corporation Real-time communication with a caller without accepting a call

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050141687A1 (en) * 2003-12-31 2005-06-30 Timucin Ozugur Call treatment in a communications system based on instant messaging

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0949787A1 (en) * 1998-03-18 1999-10-13 Sony International (Europe) GmbH Multiple personality internet account
EP0944003A1 (en) * 1998-03-18 1999-09-22 SONY EUROPE GmbH Notification subsystem
US20040003046A1 (en) * 2001-12-12 2004-01-01 3Com Corporation System and methods for providing instant services in an internet protocol network
JP2005518114A (ja) * 2002-02-14 2005-06-16 アバイア テクノロジー コーポレーション 存在追跡および名前空間相互接続の技術
US7706785B2 (en) * 2003-01-22 2010-04-27 International Business Machines Corporation System and method for context-aware unified communications
US20040205175A1 (en) * 2003-03-11 2004-10-14 Kammerer Stephen J. Communications system for monitoring user interactivity
ATE534987T1 (de) * 2003-05-20 2011-12-15 America Online Inc Präsenz- und geographischer-ort-benachrichtigung
US20040267887A1 (en) * 2003-06-30 2004-12-30 Berger Kelly D. System and method for dynamically managing presence and contact information
GB2409787B (en) * 2003-12-29 2007-10-03 Nokia Corp A communications system
JP4317061B2 (ja) * 2004-03-16 2009-08-19 株式会社日立製作所 プレゼンス情報の共有方法およびシステム
ATE424698T1 (de) * 2005-07-01 2009-03-15 Huawei Tech Co Ltd Verfahren und einrichtung zur realisierung eines intelligenten anrufdienstes
GB2433682A (en) 2005-12-21 2007-06-27 Symbian Software Ltd Selecting communication channels

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050141687A1 (en) * 2003-12-31 2005-06-30 Timucin Ozugur Call treatment in a communications system based on instant messaging

Also Published As

Publication number Publication date
BRPI0913551B1 (pt) 2020-11-03
BRPI0913551A2 (pt) 2019-02-26
EP2335396B1 (en) 2012-10-31
WO2010031741A2 (en) 2010-03-25
JP5460714B2 (ja) 2014-04-02
KR20110055688A (ko) 2011-05-25
TW201021489A (en) 2010-06-01
WO2010031741A3 (en) 2010-07-08
CA2734036A1 (en) 2010-03-25
US8233604B2 (en) 2012-07-31
CN102160362B (zh) 2014-02-12
EP2335396A2 (en) 2011-06-22
JP2012503227A (ja) 2012-02-02
CA2734036C (en) 2017-02-28
US20100067679A1 (en) 2010-03-18
CN102160362A (zh) 2011-08-17

Similar Documents

Publication Publication Date Title
KR101442322B1 (ko) 액티브 프레즌스 프로파일에 기초한 자동화된 콜 라우팅
JP4431000B2 (ja) 送信者のプレゼンスを示す指示を伴う電子メール・メッセージを配信する方法および機器
US9641423B2 (en) Communication using delegates, such as delegates specified in an email or scheduling application
CN1794727B (zh) 用于事件驱动的存在订购的存在系统和方法
JP5165835B2 (ja) プレゼンスを判定するためのビジネス・ルールの使用
US7856478B2 (en) Presence system and method for providing access to web services
JP4934195B2 (ja) コンタクトリストを使用したシンジケーションフィードへの自動サブスクライブ
US7599996B2 (en) Communication using delegates, such as delegates specified in an email or scheduling application
US11165742B1 (en) Unified communication
US20090164640A1 (en) Multimedia personal assistant
EP3087706B1 (fr) Procédé et système de communication entre navigateurs web, utilisant un environnement de communication unifiée
US8706090B2 (en) Method and apparatus for delivering a voice mail message with an indication of the presence of the sender
CN105408887A (zh) 逆向号码查找
CN103650417B (zh) 在通用即插即用网络环境中管理语音邮件的方法和系统
KR101489967B1 (ko) 프레즌스 상태정보를 갱신하는 프레즌스 서비스 시스템 및방법
EP2294780B1 (en) A method for masking data
WO2002035782A2 (en) Method and device for transmitting streaming multimedia messages
KR100668362B1 (ko) 이기종 프리젠스 시스템간의 친구목록 정보를 교환할 수있는 네트워크 제어 방법 및 네트워크 장치
Wu et al. SIP presence location service
Boonlert et al. Design Framework and Architecture of Unified Presence Service
Monica et al. Email Clients as Decentralized Social Apps in Mr. Privacy

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170828

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190829

Year of fee payment: 6