KR20170106383A - 애플리케이션 사용자의 제한된 근접 발견을 용이하게 하기 위한 방법 및 디바이스 - Google Patents

애플리케이션 사용자의 제한된 근접 발견을 용이하게 하기 위한 방법 및 디바이스 Download PDF

Info

Publication number
KR20170106383A
KR20170106383A KR1020177022412A KR20177022412A KR20170106383A KR 20170106383 A KR20170106383 A KR 20170106383A KR 1020177022412 A KR1020177022412 A KR 1020177022412A KR 20177022412 A KR20177022412 A KR 20177022412A KR 20170106383 A KR20170106383 A KR 20170106383A
Authority
KR
South Korea
Prior art keywords
proximity
user
based service
application
service code
Prior art date
Application number
KR1020177022412A
Other languages
English (en)
Other versions
KR101943782B1 (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 KR20170106383A publication Critical patent/KR20170106383A/ko
Application granted granted Critical
Publication of KR101943782B1 publication Critical patent/KR101943782B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
    • H04W4/21Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel for social networking applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/08Access restriction or access information delivery, e.g. discovery data delivery
    • H04W48/14Access restriction or access information delivery, e.g. discovery data delivery using user query or user detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals
    • 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
    • H04W8/183Processing at user equipment or user record carrier
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/18Service support devices; Network management devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

근접-기반 서비스 서버는 애플리케이션 사용자의 제한된 근접 발견을 용이하게 하기 위한 방법을 수행한다. 방법은 제1 애플리케이션에 대한 제1 사용자의 리소스들에 액세스하기 위한 인가를 획득하는 단계를 포함한다. 방법은 또한 제1 사용자의 리소스들로부터 동료들의 목록을 통신하는 단계 및 동료들의 목록으로부터 선택된 동료들의 세트의 표시를 수신하는 단계를 포함한다. 세트 내의 각각의 동료는 제1 사용자를 발견하도록 허락된다. 방법은 근접-기반 서비스 코드에 대한 요청을 수신하는 단계 및 제1 근접-기반 서비스 코드를 제1 애플리케이션에 대한 제1 사용자에게 할당하는 단계를 추가로 포함한다. 추가적으로, 방법은 제1 애플리케이션에 대한 제1 사용자에게 할당된 제1 근접-기반 서비스 코드의 현존을 다른 근접-기반 서비스 서버들의 세트에 알리는 단계를 포함한다.

Description

애플리케이션 사용자의 제한된 근접 발견을 용이하게 하기 위한 방법 및 디바이스
관련 출원들
본 출원은 2015년 2월 15일자로 제출되고, 발명의 명칭이 "Method and Device for Facilitating Restricted Proximity Discovery of an Application User"(대리인 사건 번호 MM01179)인 미국 가특허 출원 일련 번호 62/116,491로부터의 이득에 관한 것으로, 35 U.S.C. §119(e) 하에 그 이득을 청구하며, 그 전체 내용은 본 명세서에 참조로 포함된다.
기술분야
본 개시내용은 일반적으로 애플리케이션 사용자의 발견에 관한 것이고, 더 구체적으로는 제1 사용자에 근접하고 애플리케이션을 통해 제1 사용자와 연관되는 선택된 다른 사용자들에 의한 제1 사용자의 제한된 발견을 위한 방법 및 디바이스에 관한 것이다.
3GPP(3rd Generation Partnership Project) 서비스 및 SA2(System Aspects) 워킹 그룹(working group)에서 활성인 근접-기반 서비스(Proximity-based Services)(ProSe) 프로젝트의 맥락에서, 본 명세서에서 제한된 근접 발견으로서도 지칭되는, 제한된 발견을 지원하는 ProSe 솔루션을 명시하는 작업이 있었다. 기본적으로, 제한된 발견은, 사용자들이 둘 다 아주 근접할 때, 그러나 제1 사용자가 제2 사용자에 의해 발견가능하게 되도록 명시적으로 동의했을 때에만 애플리케이션의 제2 사용자가 애플리케이션의 제1 사용자를 발견하는 메커니즘을 제공한다. 그에 따라, 제한된 발견은 사용자가 그를 발견할 수 있는 예를 들어, 소셜 네트워킹 애플리케이션 상의 그의 친구들의 수를 제한하는 것을 가능하게 한다.
제한된 발견을 지원하기 위해, 예를 들어 3GPP 표준 TR 23.713 v0.3.0 (2014-11), 조항 5에 문서화된 바와 같은, SA2에 일부 솔루션이 제안되었다. 이러한 제안된 솔루션들의 단점은 그들이 페이스북, 트위터, 구글+(Google+), 인스타그램 등과 같은 애플리케이션들에 대한 변경들을 요구한다는 것이다. 예를 들어, 페이스북 제한 발견(Facebook restricted discovery)을 가능하게 하기 위해, 페이스북 서버들에 의해 지원된 API들(application programming interfaces)뿐만 아니라 페이스북 서버들에서 실행되는 애플리케이션은 반드시 수정되어야 한다. 이러한 요건들은 실제로 제안된 솔루션들에 대한 매우 제한된 전개로 이어질 수 있거나 심지어 어떠한 전개로도 이어질 수 없다.
별개의 도면들 전체에 걸쳐 같은 참조 번호들이 동일하거나 기능적으로 유사한 요소들을 지칭하는 첨부 도면들은 아래의 상세한 설명과 함께 본 명세서에 통합되고 본 명세서의 일부를 형성하며, 청구된 실시예들을 포함하는 개념들에 대한 실시예들을 추가로 예시하고 그러한 실시예들에 대한 다양한 원리 및 이점을 설명하는 역할을 한다.
도 1은 일부 실시예에 따라 적어도 하나의 ProSe 서버 및 사용자 디바이스를 구성가능한 환경을 예시하는 개략도이다.
도 2는 실시예에 따라 애플리케이션 사용자의 제한된 발견을 용이하게 하기 위한 협력적 기능성(collaborative functionality)을 예시하는 메시지 시퀀스 다이어그램이다.
도 3은 또 다른 실시예에 따라 애플리케이션 사용자의 제한된 발견을 용이하게 하기 위한 협력적 기능성을 예시하는 메시지 시퀀스 다이어그램이다.
도 4는 일부 실시예에 따라 구성가능한 사용자 디바이스의 내부 하드웨어 컴포넌트들을 예시하는 블록도이다.
도 5는 일부 실시예에 따라 구성가능한 ProSe 서버의 내부 하드웨어 컴포넌트들을 예시하는 블록도이다.
본 기술분야의 통상의 기술자들은 도면들 내의 요소들이 단순하고 명료하게 예시되고 반드시 축척대로 그려진 것은 아니라는 점을 인정할 것이다. 예를 들어, 도면들 내의 요소들 중 일부 치수는 본 개시내용의 실시예들에 대한 이해를 향상시키는 데 도움이 되도록 다른 요소들에 비해 과장될 수 있다.
장치 및 방법 컴포넌트들은 도면에서 종래의 부호들로 적절히 표현되며, 본 명세서에서 설명의 이득을 갖는 본 기술분야의 통상의 기술자에게 쉽게 명백해지는 상세들에 의해 본 개시내용이 모호해 지지 않도록 하기 위해, 본 개시내용의 실시예들을 이해하는 것에 관련되는 구체적인 상세들만을 도시한다.
다양한 실시예에 따르면, 하나 이상의 셀룰러 네트워크에 상주할 수 있고, 애플리케이션 사용자의 제한된 발견을 용이하게 하기 위해 구성되는 방법들 및 근접-기반 서비스 서버들(proximity-based services servers)이 있다. 제1 사용자의 존재(presence)에 대한 알림(announcement)을 용이하게 하는 특정한 실시예의 경우, 제1 근접-기반 서비스 서버는 제1 사용자를 위한 소셜 네트워킹 애플리케이션에 대한 근접 서비스들을 활성화하는데, 이는 소셜 네트워킹 애플리케이션에 대한 제1 사용자의 리소스들에 액세스하기 위한 인가(authorization)를 획득하는 것을 포함한다. 제1 근접-기반 서비스 서버는 제1 사용자를 발견하도록 허락되는 친구들을 선택하기 위한 소셜 네트워킹 애플리케이션으로부터의 친구들의 목록을 제1 사용자에게 제시한다. 제1 사용자로부터의 요청에 응답하여, 제1 근접-기반 서비스 서버는 소셜 네트워킹 애플리케이션의 제1 사용자에게 근접-기반 서비스 코드를 할당하고, 여기서 제1 사용자의 디바이스는 코드를 국부적으로 알릴 수 있다. 제1 근접-기반 서비스 서버는 또한 제2 근접-기반 서비스 서버를 포함하는 다른 근접-기반 서비스 서버들의 세트에 제1 근접-기반 서비스 코드의 현존(existence)을 알린다.
제1 사용자의 존재를 모니터하는 것을 용이하게 하기 위해, 제2 근접-기반 서비스 서버는 제2 사용자를 위한 소셜 네트워킹 애플리케이션에 대한 근접 서비스들을 활성화한다. 제2 사용자로부터, 제1 사용자의 존재에 대해 모니터하기 위한 요청을 수신하면, 제2 근접-기반 서비스 서버는 제1 근접-기반 서비스 서버로부터 제1 사용자에 대한 제1 근접-기반 서비스 코드를 요청하기 전에 제1 사용자가 소셜 네트워킹 애플리케이션 상에서 제2 사용자의 친구라는 것을 확인한다. 제2 근접-기반 서비스 서버는, 제1 및 제2 사용자들이 아주 근접할 때, 제1 사용자의 디바이스에 의한 제1 근접-기반 서비스 코드의 알림을 검출함으로써 제1 사용자의 존재에 대해 모니터하는데 사용하기 위해 제2 사용자의 디바이스에 제1 근접-기반 서비스 코드를 제공한다.
개시된 실시예들은 애플리케이션 서버들 또는 애플리케이션 서버들에 의해 지원된 API들에 대한 임의의 변경을 요구하지 않는다. 그에 따라, 실시예들은, 예를 들어, 셀룰러 오퍼레이터들(cellular operators)에 의해 전개될 수 있고, 셀룰러 오퍼레이터들이 애플리케이션 서버들에 투명한 프로세스들을 사용하여 제한된 발견 기능성을 제어하는 것을 가능하게 하는, 제한된 발견을 위한 솔루션을 제공한다.
도 1은 본 교시들에 따라 애플리케이션 사용자의 제한된 발견을 용이하게 하기 위한 방법들 및 디바이스들이 그 내부에서 구현될 수 있는 예시적인 환경(100)의 개략도를 예시한다. 예시된 바와 같이, 환경(100)은 PLMN(public land mobile network) A(110), PLMN B(120), 및 애플리케이션 서버(130)를 포함한다. 도시된 바와 같이, 사용자 아담(Adam)은 PLMN A(110)에 무선으로 접속하는 링크(160)를 설정하도록 그의 사용자 디바이스(102), 이 경우에는, 무선 통신 디바이스를 조작할 수 있다. 유사하게, 사용자 조지(George)는 PLMN B(120)에 무선으로 접속하는 링크(108)를 설정하도록 그의 사용자 디바이스(104)를 조작할 수 있다. 특정한 구현 시나리오의 경우, 아담은 PLMN A(110)내의 셀룰러 가입자이고, 이로써, PLMN A(110)로부터, 본 교시들에 따라 구현된 제한된 발견 서비스들을 포함하는 ProSe 서비스들과 같은 서비스들을 수신할 수 있다. 유사하게, 조지는 PLMN B(120)내의 셀룰러 가입자이고, 이로써, PLMN B(120)로부터, 제한된 발견 서비스들을 포함하는 서비스들을 수신할 수 있다.
각각의 PLMN은 액세스 네트워크, 예를 들어, 112 및 122를 포함하는데, 이는 액세스 네트워크를 사용하여 액세스 및 통신하기 위해 무선 통신 디바이스를 위한 임의의 유형의 RAT(radio access technology)을 사용할 수 있다. 도시된 실시예의 경우, 액세스 네트워크들(112 및 122)은 사용자 디바이스들에 의한 액세스 네트워크들로의 무선 링크들의 설정을 용이하게 하기 위한 적어도 하나의 셀룰러 타워 또는 기지국, 예를 들어, 114 및 124를 구비하는 셀룰러 액세스 네트워크들 - 본 명세서에서 셀룰러 네트워크들로서도 지칭됨 - 이다.
PLMN A(110) 및 PLMN B(120)는 또한 코어 네트워크, 예를 들어, 116 및 126와, 코어 네트워크에 접속된 ProSe 서버 또는 ProSe 기능, 예를 들어, 118 및 128을 포함한다. 도시된 바와 같이, 셀룰러 네트워크들(112 및 122) 및 코어 네트워크들(116 및 126)은 3GPP 표준들 또는 사양들, 예를 들어, LTE 네트워크들을 사용하여 구현된다. 더 구체적으로는, 셀룰러 네트워크들(112 및 122)은 무선 통신 디바이스들(102 및 104)과 같은 사용자 장비(UE)로의 무선 링크들을 용이하게 하기 위한 적어도 하나의 eNodeB, 예를 들어, 114 및 124를 구비하는 E-UTRAN들(Evolved UMTS Terrestrial Radio Access Networks) 또는 레거시 UTRAN들이다. 셀룰러 네트워크들(112 및 122)을 지원하는 코어 네트워크들(116 및 126)은, 그에 상응하여, 본 기술분야에서 EPC들(Evolved Packet Cores)로서도 지칭되는, SAE(System Architecture Evolution) 코어들이다. EPC 서브컴포넌트들(도시되지 않음)은, 다른 서브컴포넌트들 중에서, MME(Mobility Management Entity), S-GW(Serving Gateway), P-GW(PDN Gateway), HSS(Home Subscriber Server), 등을 포함할 수 있다.
예시된 실시예에서 셀룰러 액세스 네트워크들(112 및 122)은 E-UTRA를 RAT로서 사용하지만, 임의의 다른 셀룰러 또는 셀룰러-기반 액세스 기술이 사용될 수 있다. 이러한 기술들은, AMPS(Advanced Mobile Phone System)와 같은 아날로그 액세스 기술; CDMA(Code Division Multiple Access), TDMA(Time Division Multiple Access), GSM(Global System for Mobile communication), iDEN(integrated Digital Enhanced Network), GPRS(General Packet Radio Service), EDGE(Enhanced Data for GSM Evolution), 등과 같은 디지털 액세스 기술; 및/또는 UMTS(Universal Mobile Telecommunication System), WCDMA(Wideband CDMA), IEEE 802.16, 등, 또는 이들의 변형들과 같은 차세대 액세스 기술을 포함하지만, 그로 제한되지 않는다.
추가적으로, 도시되지는 않았지만, 환경(100)은 코어 네트워크들(116 및 126)에 결합되고 이들에 의해 지원되며 사용자 디바이스들(102 및 104)에 액세스가능한 다른 네트워크들을 추가로 포함할 수 있다. 이러한 네트워크들은, 예를 들어, 인터넷; 하나 이상의 PDN(packet data network); 또는 하나 이상의 WLAN(Wireless Local Area Network)를 포함한다. WLAN들은 예를 들어, 본 기술분야에서 WiFi 기술로도 지칭되는, IEEE(Institute of Electrical and Electronics Engineers) 802.11 표준들을 사용하여, 또는 WiMax(Worldwide Interoperability for Microwave Access) 기술을 사용하여 무선 링크들을 용이하게 하기 위한 적어도 하나의 액세스 포인트를 갖는다. PDN은, 예를 들어, 기업 네트워크, IMS(IP Multimedia Subsystem) 등일 수 있다.
애플리케이션 서버(130)는 사용자 디바이스에 다운로드된 애플리케이션을 사용하여 접속들을 형성함으로써 서로의 동료들(associates)이 되도록 아담 및 조지와 같은 사용자들에게 서비스들을 제공하기 위해 사용된다. 다운로드된 애플리케이션은 애플리케이션 서버(130) 상의 대응하는 애플리케이션과 상호작용한다. 하나의 예의 경우, 애플리케이션 서버는 인터넷에 상주하는데, 이는 인터넷 접속들을 통해 사용자 디바이스들(102 및 104) 및 ProSe 서버들(118 및 128)에 의해 액세스가능하다.
특정한 실시예의 경우, 애플리케이션 서버(130)는 사용자가 사회적 관계들(social relationships)을 구축하고/하거나 유지하는 것을 가능하게 하는 소셜 네트워킹 서비스들을 제공하는 소셜 네트워킹 서버이다. 구체적으로는, 소셜 네트워킹 서비스는 사용자가 관심사들(interests), 교육 이력(education history), 직업 이력(work history) 등과 같은 사용자의 선택된 개인 정보를 포함하는 프로필을 수립하는 것과 애플리케이션 식별자들의 목록을 포함할 수 있는 "친구들(friends)"이라고 불리는 동료들의 목록(a list of associates)을 수립하는 것을 허용한다. 친구들의 목록은 사용자와 상호작용하도록 인가되고, 사용자의 친구들 중 적어도 일부 또한 사용자의 프로필 내의 정보의 일부를 보도록 인가될 수 있다. 사용자는 사용자 식별(user identification) 또는 ID(identifier) 및 패스워드를 포함하는 자격 증명들(credentials)을 사용하여 소셜 네트워킹 애플리케이션에 액세스한다. (예를 들어, 프로필 및 동료 목록)상의 사용자의 정보 및 애플리케이션에 대한 자격 증명들은 본 명세서에서 사용자의 "리소스들"로서 총칭된다. 전세계적으로 사용되는 현재 인기있는 일부 소셜 네트워킹 서비스는 페이스북, 구글+, 링크드인(LinkedIn), 인스타그램, 핀터레스트(Pinterest), 바인(Vine), 텀블러(Tumblr), 및 트위터를 포함한다.
ProSe 서버들(118 및 128)은 사용자들이 서로를 발견하도록 허용하는 근접-기반 서비스들을 사용자들에게 제공하도록 구성된다. 근접-기반 서비스의 하나의 유형은 제한된 ProSe 발견 또는 제한된 발견이다. 제한된 발견은, 소셜 네트워킹 애플리케이션 및 연관된 소셜 네트워킹 서비스들과 같은, 애플리케이션 및 연관된 애플리케이션 서비스들의 사용자들이 애플리케이션의 어느 다른 사용자들이 그들을 발견할 수 있는지 선택하는 것을 가능하게 한다. 제한된 발견의 특정한 실시예들은 도 2 및 도 3을 참조하여 아래에 설명된다.
도 2는 아담이 그의 존재를 알리는 것을 가능하게 함으로써 제1 사용자(예를 들어, 아담)의 제한된 발견을 용이하게 하기 위한 협력적 기능성(collaborative functionality)을 예시하는 메시지 시퀀스 다이어그램(200)이다. 도 3은 아담에 의해 인가된 제2 사용자(예를 들어, 조지)가 아담의 알림들을 아담과 연관시키고, 이로써, 아담과 조지가 아주 근접할 때 아담을 발견하는 것을 가능하게 함으로써 아담의 제한된 발견을 용이하게 하기 위한 협력적 기능성을 예시하는 메시지 시퀀스 다이어그램(300)이다. 아주 근접하다는 것은, 예를 들어, 무선 통신 범위 내에 있다는 것을 의미한다. 하나의 실시예의 경우, 아주 근접하다는 것은 그들의 각각의 디바이스들(102 및 104)을 사용하는 아담 및 조지가 LTE-다이렉트, WiFi-다이렉트 또는 BLE(Bluetooth low energy)와 같은 무선 P2P(peer-to-peer) 기술을 사용하여 직접 접속(132)을 통해 통신하기 위한 범위 내에 있다는 것을 의미한다.
다이어그램들(200 및 300)은, 아담의 사용자 장비(UE)(102); PLMN A(110)의 ProSe 서버(118); 이러한 예에서 페이스북 서버인 애플리케이션 서버(130); 조지의 UE(104); PLMN B(120)의 ProSe 서버(128); 및 PLMN C(202)의 ProSe 서버(206) 중 2개 이상의 디바이스 사이에서 교환되고 있는 메시지들을 도시한다. 메시지 교환들은 OAuth 프로토콜, HTTP(Hypertext Transfer Protocol), IP(Internet Protocol), 등을 포함하지만, 그로 제한되지 않는, 임의의 적절한 표준 또는 사유 프로토콜에 따른 것일 수 있다. 일 실시예의 경우, 아담 및 조지는 그들의 각각의 셀룰러 네트워크들의 오퍼레이터로부터 ProSe(proximity-based services) 애플리케이션을 그들의 사용자 디바이스들에 다운로드한다. ProSe 애플리케이션은 페이스북 애플리케이션에 대한 제한된 발견을 가능하게 하기 위해 아담의 UE 및 조지의 UE 및 각각의 ProSe 서버들(118 및 128) 사이에서의 메시지들의 교환을 용이하게 한다.
이러한 사용 경우 시나리오를 위해 아담 및 조지가 페이스북 친구들이고, 조지는 아담이 언제 근처, 예를 들어, 통신 범위 내에 있는지 알기를 원한다고 가정해보자. 그에 따라, 아담은 그의 UE(102) 상에서 ProSe 애플리케이션을 론칭한다. ProSe 애플리케이션은 ProSe 서버(118)(그의 어드레스는 도메인 이름 시스템(Domain Name System)으로 미리 구성되거나 발견될 수 있음)와 보안 접속을 이루고, 아담은 아담의 UE(102)와 ProSe 서버(118) 사이에서의 메시지 교환(208)을 사용하여 인증된다. 인증 및 보안 설정 메시지 교환(208)은 페이스북과 같은 애플리케이션에 대한 근접-기반 서비스들을 사용하기 위해 ProSe 서버(118)가 아담에 대한 인가를 확인하는 것을 가능하게 한다. 성공적인 인증 이후에, ProSe 서버(118)는 UE(102)의 MSISDN 및/또는 IMSI를 알게 되고, 그러므로, 아담에게 요금을 청구할 수 있고 아담이 특정 근접-기반 서비스들에 가입되는지를 결정할 수 있다.
그 다음에 페이스북에 대한 아담에 대한 근접-기반 서비스들을 활성화하기 위해 아담의 UE(102), ProSe 서버(118) 및 페이스북 서버(130) 사이에서 메시지들(210)이 교환될 수 있다. 즉, 아담은 페이스북에 대한 근접-기반 서비스들을 요청하기 위한 그의 UE(102)와 ProSe 서버 사이에서의 메시지 교환(212)을 개시하기 위해 ProSe 애플리케이션을 사용한다. 특정한 예의 경우, UE(102) 상의 ProSe 애플리케이션을 통해, 아담에게, 예를 들어, "페이스북에 대한 발견을 활성화(Activate Discovery for Facebook)"할지 여부를 묻는 페이지가 제시된다. 아담이 페이스북에 대한 제한된 발견을 활성화하려는 그의 희망을, 예를 들어 아이콘을 클릭하거나 활성화하는 것을 통해, 표시한다면, ProSe 서버(118)가 페이스북에 대한 아담의 리소스들에 액세스하기 위한 인가를 획득하는 것을 가능하게 하기 위해 메시지들(214)이 아담의 UE(102), ProSe 서버(118), 및 페이스북 서버(130) 사이에서 교환된다.
일 실시예의 경우, OAuth 프로토콜은 인가 절차를 용이하게 하기 위해 사용된다. OAuth 프로토콜은 인가에 대한 공개 표준인데, 이는 페이스북 서버(130)가 아담의 패스워드를 ProSe 서버(118)와 공유하는 일 없이 아담을 대신하여, ProSe 서버(118)에게 아담의 페이스북 ID, 친구 목록 등과 같은 아담의 페이스북 리소스들에 대한 보안 위임된 액세스(secured delegated access)를 제공하기 위해 사용될 수 있다. 특정한 실시예의 경우, OAuth 절차는 페이스북 서버(130)에서 변경들 및 페이스북 서버(130)에 의해 사용되는 API들에 대한 변경들이 요구되지 않도록 오늘날 흔히 사용되는 방법과 일관되는 방식으로 구현된다.
즉, 아담은 그의 페이스북 자격 증명들을 사용하여 로그인하기 위해 그의 UE(102) 상의 페이스북 애플리케이션으로 재지향된다. 이것은 페이스북 인증(214)을 가능하게 하고, 아담에게는, 그 안에, ProSe 애플리케이션(또는, 동등하게, ProSe 서버(118))이 그의 페이스북 계정 및 리소스들에 액세스하도록 허용하는 허락에 대한 요청이 ProSe 애플리케이션을 통해 제시된다. 아담이 이러한 허락을 승인한다면, 페이스북 인가 절차는 아담을 대신하여 API 호출들(API calls)을 수행하는 데 사용하기 위한 액세스 토큰(access token)을 페이스북 서버(130)가 승인하고, 메시지(216)를 통해, ProSe 서버(118)가 수신하는 것을 추가로 포함한다. 따라서, ProSe 서버(118)에 의해 실시된 페이스북 서버(130)로의 모든 요청은 페이스북 서버(130)가 요청들을 인증 및 인가하는 것을 가능하게 하기 위한 액세스 토큰을 포함할 것이다.
메시지 교환(218)을 사용하여, ProSe 서버(118)는 그의 액세스 토큰을 사용하여 아담의 페이스북 계정으로부터, 아담의 사용자 ID 및 그의 친구 목록과 같은 정보를 요청 및 수신한다. 메시지들(220)을 사용하여, ProSe 서버(118)는 그의 UE(102) 상의 ProSe 애플리케이션을 통해 아담의 친구들의 목록을 그에게 통신하는데, 이는 또한 그의 친구들 중 누가 그를 발견할 수 있는지에 대한 아담의 선택을 ProSe 서버(118)에게 통신하기 위해 사용된다. ProSe 서버(118)는 향후 사용을 위해 선택된 친구들의 세트를 저장한다.
아담이 인가된 페이스북 친구들이 그를 발견할 수 있도록 그의 존재를 알리는 것을 시작하기를 원할 때, 그는 그의 UE(102) 상의 ProSe 애플리케이션을 사용하여 알림 요청 절차(announce request procedure)(222)를 개시한다. 예를 들어, 아담은 ProSe 애플리케이션에서 "페이스북 알림들을 시작(Start Facebook announcements)"을 선택하여, 그의 UE(102)가 그의 선택된 페이스북 친구들의 세트에 의한 발견을 위해 아담의 존재를 알리는 요청을 포함하는 메시지(224)를 전송하도록 야기한다. 요청(224)은, 그에 따라, 아담의 페이스북 ID를 포함하고, 실시예에서, 근접-기반 서비스 코드에 대한 요청으로서의 역할을 하거나 요청을 포함한다. 할당된 근접-기반 서비스 코드는 근접-기반 서비스 서버로부터 할당된 근접-기반 서비스 코드를 수신한 제2 사용자의 디바이스가 아담의 UE(102)에 의한 할당된 근접-기반 서비스 코드의 브로드캐스트를 수신하기 위해 근접해 있을 때 아담의 존재를 결정하는 데 사용된다.
요청(224)을 수신하면, ProSe 서버(118)는 아담이 (예를 들어, 가입에 의해) 페이스북 알림들을 수행하도록 허용된다는 것을 확인하고(226) 그 다음에 페이스북 애플리케이션에 대한 아담을 위한 ProSe 코드를 할당한다(226). 일 실시예의 경우, ProSe 코드는 난수 또는 의사-난수(random or pseudo-random number) 또는 충분한 길이의 숫자들의 시퀀스(sequence of digits)이다. ProSe 코드는 또한 이러한 ProSe 코드를 할당한 PLMN의 아이덴티티를 포함할 수 있다. 더욱이, ProSe 코드에는 연관된 유효 지속시간, 예를 들어 하루가 할당된다. ProSe 서버(118)는 알림 응답 메시지(228)를 아담의 UE(102)에 전송한다. 응답 메시지(228)는 할당된 ProSe 코드 및 연관된 유효 시간을 포함한다.
ProSe 서버(118)는 또한, 다른 ProSe 서버들의 세트(이러한 경우에 ProSe 서버들(128 및 206))로의 메시지(230)를 사용하여, 페이스북에 대한 아담에게 할당된 ProSe 코드의 현존(existence)을 알린다. 특정한 예의 경우, ProSe 서버들(118, 128 및 206)은 보안 통신들을 교환하기 위한 연관된 멀티캐스트 어드레스를 갖는 멀티캐스트 그룹에 합류한다. 그에 따라, 페이스북에 대한 아담에게 할당된 ProSe 코드를 알리는 것은 멀티캐스트 그룹에서 다른 ProSe 서버들(128 및 206)에게 알림 통지(announce notification)를 멀티캐스팅(230)하는 ProSe 서버(118)를 포함한다. 알림 통지 메시지(230)는 페이스북 애플리케이션에 대한 ID 및 사용자 ID, 예를 들어, 아담을 위한 페이스북 ID를 포함하여, ProSe 서버(118)가 페이스북에 대한 사용자 아담을 위한 ProSe 코드를 보유한다는 것을 멀티캐스트 어드레스를 모니터하는 모든 다른 ProSe 서버에게 통지한다.
ProSe 서버(118)에 의해 메시지(228)를 사용하여 전송된 할당하는 ProSe 코드를 수신한 이후에, 아담의 UE(102)는 아담의 존재를 표시하기 위해 이러한 할당된 코드를 알리거나 브로드캐스팅(232)하기 시작한다. 이러한 알림은 예를 들어, LTE-다이렉트, WiFi-다이렉트, 또는 BLE와 같은 기술을 사용하여 평문으로(in the clear) 국부적으로 수행될 수 있다. 더욱이, 이러한 시나리오의 경우, 할당된 ProSe 코드는 그것의 유효 시간이 만료될 때까지 브로드캐스팅될 수 있고, 알림 요청 절차(222)는 페이스북에 대한 아담을 위한 새로운 ProSe 코드를 할당하기 위해 ProSe 서버(118)에 대해 반드시 재실행되어야 한다. 아담의 UE(102)에 아주 근접한 이러한 UE들은 UE(102)에 의해 브로드캐스팅된 ProSe 코드를 수신할 수 있지만, UE가 비교를 위한 ProSe 코드를 이미 소유하고 있지 않는 한 그것을 애플리케이션 및 사용자와 연관시킬 수 없는데, 이는 도 3을 참조하여 설명된다. 또 다른 실시예의 경우, 아담의 UE(102)는 다수의 애플리케이션들에 대한 다수의 ProSe 코드, 예를 들어, 페이스북에 대한 하나, 트위터에 대한 하나, 구글+에 대한 하나, 등을 국부적으로 브로드캐스팅한다.
아담의 선택된 친구들의 목록 상의 사용자가 아담을 발견하기를 원할 때, 예를 들어, 발견하는 사용자(discovering user), 발견하는 사용자의 디바이스 및 발견하는 사용자의 셀룰러 네트워크 내의 ProSe 서버는 메시지(208)를 사용하여 ProSe 서버(118) 및 아담의 UE(102)에 의해 수행되는 것과 유사한 방식으로 인증 및 보안 설정을 수행한다. 추가적으로, 발견하는 사용자의 디바이스, 발견하는 사용자의 셀룰러 네트워크 내의 ProSe 서버, 및 페이스북 서버(130)는 페이스북에 대한 발견하는 사용자에 대한 근접-기반 서비스들을 활성화하기 위해 메시지들(UE(102), ProSe 서버(118), 및 페이스북 서버(130) 사이에서 교환되는 메시지들(210)과 유사한)을 교환한다.
예를 들면, 여기서 조지는 발견하는 사용자이고, 조지는 그의 UE(104)와 ProSe 서버(128) 사이에서 보안 접속을 설정하기 위한 메시지들(302)의 교환을 개시하기 위해 그의 UE(104) 상의 ProSe 애플리케이션을 오픈하여, ProSe 서버(128)가 조지를 인증하는 것을 가능하게 한다. 조지의 UE(104), ProSe 서버(128), 및 페이스북 서버(130)는 그의 ProSe 애플리케이션을 통한 조지의 입력에 응답하여 메시지들(304)을 교환함으로써, ProSe 서버(128)가 페이스북 애플리케이션에 대한 조지의 리소스들에 액세스하기 위한 인가를 획득하는 것을 포함하여 페이스북에 대한 조지에 대한 근접-기반 서비스들을 활성화한다. 특정한 실시예의 경우, ProSe 서버(128)가 페이스북에 대한 조지의 리소스들에 액세스하기 위한 인가를 획득하는 것은 조지를 대신하여 페이스북 서버로의 애플리케이션 프로그램 인터페이스 호출들을 수행하는데 사용하기 위한 페이스북 서버(130)로부터의 액세스 토큰을 수신하기 위해 Oauth 프로토콜을 사용하는 것을 포함한다.
즉, 조지의 UE(104)상의 ProSe 애플리케이션은 조지에게 애플리케이션들의 목록, 예를 들어, 페이스북, 트위터, 구글+, 등을 제시한다. 아주 근접한 페이스북 친구들(아담과 같은)을 발견하기 위해, 조지는 애플리케이션들의 목록에서 페이스북을 선택한다. PLMN B(120) 내의 셀룰러 오퍼레이터는 이러한 유형의 서비스 제공에 대해 조지에게 요금을 청구할 수 있다. 조지는 그 다음에 그의 페이스북 애플리케이션으로 재지향되고 그의 페이스북 자격 증명들로 로그인하도록 프롬프트된다. 성공적인 로그인 이후에, 조지는 그의 페이스북 계정으로부터 특정 리소스들에 액세스하기 위해 ProSe 애플리케이션(또는, 동등하게, ProSe 서버(128))을 인가하도록 프롬프트된다. 제시된 예시적인 메시지는 다음과 유사할 수 있다 : "AT&T 근접 서비스는 당신의 공개 프로필 및 친구들 목록에 액세스하기를 원한다". 조지가 OK를 클릭하는 것은 본질적으로 ProSe 서버(128)가 조지의 페이스북 프로필로부터의 특정 리소스들에 액세스하는 것을 인가한다.
액세스 토큰을 포함하는 메시지 시퀀스(306)를 사용하면, ProSe 서버(128)는 페이스북 서버(130)로부터 조지의 페이스북 친구들의 목록을 획득한다. ProSe 서버(128)은 조지가 발견하기를 원하는 친구를 확인하기 위해 조지의 친구들의 목록을 사용할 수 있다(나중에 더 상세히 설명된다). ProSe 서버(128)는 또한, 그의 UE(104) 상의 ProSe 애플리케이션을 통해, 조지가 그를 발견할 수 있는 그러한 친구들을 선택할 수 있는 조지의 친구들의 목록을 조지에게 제시할 수 있다.
조지가 아담의 존재에 대해 모니터하기 위해, 그의 UE(104)는 반드시 페이스북에 대한 아담에게 할당된 ProSe 코드를 수신해야 한다. 이러한 목적을 위해, 모니터 요청 절차(308)가 조지의 UE(104), ProSe 서버(128), 및 ProSe 서버(118) 사이에서 수행된다. 더 구체적으로는, 조지는 그의 ProSe 애플리케이션에서 옵션을 선택하여, 아담의 존재에 대해 모니터하기 위해서 페이스북에 대한 아담의 ProSe 코드를 수신하기 위해 그의 UE(104)가 모니터 요청 메시지(310)를 ProSe 서버(128)에 전송하도록 야기할 수 있다. 일 실시예의 경우, 모니터 요청(310)은 페이스북 애플리케이션 ID 및 아담의 사용자 ID를 포함한다.
ProSe 서버(128)는, 312에서, 아담의 페이스북 ProSe 코드를 요청할지를 결정한다. 예를 들면, 이는 ProSe 서버(128)가 조지의 페이스북 친구들의 목록에 액세스하여 조지의 페이스북 친구들의 목록에 아담이 있는지를 확인하는 것을 포함한다. 확인하면, ProSe 서버(128)는, 멀티캐스트 메시지(230)로 수신된 정보를 사용하여, ProSe 서버(118)가 페이스북에 대한 아담에게 할당된 ProSe 코드를 소유하는지를 결정한다. 이에 대응하여, ProSe 서버(128)는 페이스북에 대한 아담을 위한 ProSe 코드를 요청하기 위해 메시지(314)를 ProSe 서버(118)에 전송한다. 요청 메시지(314)는, 조지의 페이스북 ID를 요청하는 사용자(requesting user)로서 표시하고 아담의 페이스북 ID를 모니터되는 사용자로서 표시한다.
ProSe 서버(118)는, 316에서, 페이스북에 대한 아담의 ProSe 코드를 ProSe 서버(128)로 통신할지를 결정한다. 예를 들면, ProSe 서버(118)는 조지(그의 사용자 ID를 통해)와 아담을 발견하도록 인가 또는 허락된 아담의 페이스북 친구들의 목록을 비교한다. 조지가 리스트 상에 있다면, ProSe 서버(118)는 응답 메시지(318)를 ProSe 서버(128)에 전송하는데, 이는 페이스북에 대한 아담을 위한 ProSe 코드 및 연관된 유효 시간을 포함하고, 또한 아담의 페이스북 ID를 포함할 수 있다. ProSe 서버(128)는 이제 메시지(310)에 응답하는 메시지(320)를 전송하여 아담의 존재에 대해 모니터할 수 있다. 일 실시예의 경우, 응답 메시지(320)는 페이스북에 대한 애플리케이션 ID, 아담의 페이스북 ID, 페이스북에 대한 아담의 ProSe 코드, 및 연관된 유효 시간을 포함한다.
조지의 UE(104)는 이제, 예를 들면 ProSe 알림들이 브로드캐스팅되는 국부적 라디오 리소스들을 통해, 아담의 존재에 대해 모니터(322)할 수 있다. 하나의 예의 경우, 조지의 UE(104)는 백그라운드에서 발견 절차들을 실행하는데, 이는 WiFi- 다이렉트, BLE, LTE-다이렉트, 등에 기초한 것일 수 있다. 조지의 UE(104)가 아담의 UE(102)로부터 페이스북에 대한 아담의 ProSe 코드의 알림을 수신하기에 충분히 가까울 때, UE(104)는 ProSe 코드를 아담에 연관시킬 수 있다. 이로써, UE(104)가 ProSe 서버(128)로부터 수신되는 아담의 ProSe 코드를 사전에 저장했기 때문에 UE(104)는 아담의 존재를 검출할 수 있고 아담을 발견할 수 있다. 조지의 UE(104)는 조지에게, 예를 들어 팝업 통지를 사용함으로써, 그의 페이스북 친구 아담이 근처에 있다는 것을 경보한다. 조지의 UE(104)는 추가로 특정 액션들, 예를 들어, 다이렉트 모드(디바이스로부터 디바이스로)로 페이스북 채팅을 설정하는 것, 다이렉트 모드로 사진들을 교환하는 것, 등을 취하도록 조지를 프롬프트할 수 있다.
아담 및 조지가, 예를 들어, 동일한 PLMN A(110) 내의 셀룰러 서비스에 대한 가입자들인 또 다른 실시예의 경우, 조지의 UE(104)는 대안적으로 아담을 발견하는데 사용하기 위해 ProSe 서버(118)로부터 페이스북에 대한 아담의 ProSe 코드를 요청 및 수신할 수 있다. 반대로, 조지가 아담의 페이스북 친구가 아니거나 조지가 아담의 페이스북 친구이지만 아담을 발견할 수 있는 친구들의 목록에 있지 않다면, UE(104)는 아담의 페이스북 ProSe 코드를 검색할 수 없을 것이다. UE(104)는, 그러므로, 아담의 존재를 검출하기 위해 브로드캐스팅된 ProSe 코드를 아담과 연관시킬 수 없을 것이다.
도 4는 사용자 디바이스(400), 예를 들어 도 1에 예시된 바와 같은 사용자 디바이스들(102 및 104)의 예시적인 내부 하드웨어 컴포넌트들을 예시하는 블록도를 도시하는데, 이는 본 교시들에 따른 실시예들의 구현을 용이하게 하도록 구성될 수 있다. 본 명세서에서 사용된 바와 같은, "적응되는(adapted)," "동작가능한(operative)," "가능한(capable)" 또는 "구성되는(configured)"은 표시되는 디바이스 또는 컴포넌트들이 하나 이상의 하드웨어 요소를 사용하여 구현되는 것을 의미하는데, 이는 그들의 원하는 기능성을 구현하기 위해 표시된 컴포넌트들을 위한 수단으로서 소프트웨어 및/또는 펌웨어로 프로그래밍될 수도 있고 되지 않을 수도 있다. 특정한 실시예의 경우, 디바이스(400)는 무선 통신 디바이스인데, 이는, 예를 들어, 셀룰러 전화들(cellular telephones), PDA들(personal digital assistants), 스마트 폰들, 랩톱 컴퓨터들, 태블릿들, 패블릿들(phablets), 또는 다른 핸드헬드 혹은 휴대용 전자 디바이스들을 포함하는, 다양한 모바일 디바이스 또는 사용자 장비를 대표할 수 있다. 대안적으로, 디바이스(400)는 데스크톱 컴퓨터와 같은 "고정된" 컴퓨팅 디바이스이다.
도 4에 도시된 바와 같이, 사용자 디바이스(400)의 내부 하드웨어 요소들 또는 컴포넌트들은 프로세서(402), 입력 컴포넌트(404), 통신 인터페이스(406), 메모리 컴포넌트(408), 출력 컴포넌트(410), 및 선택적으로 센서들의 세트(412)의 각각의 적어도 하나를 포함하며, 예를 들어 여기서 디바이스(400)는 휴대용 디바이스이다. 추가로 예시된 바와 같이, 디바이스(400)의 내부 컴포넌트들은 서로 동작가능하게 결합되고, 하나 이상의 내부 통신 링크(414), 예를 들어, 내부 버스를 통해 서로 통신한다. 예시를 용이하게 하기 위해, 제한된 수의 디바이스 컴포넌트들(402, 404, 406, 408, 410, 412, 및 414)이 도시되지만, 다른 실시예들은 디바이스(400) 내에 더 적거나 많은 수의 이러한 컴포넌트를 포함할 수 있다. 더욱이, 디바이스(400)의 상업적인 실시예를 위해 필요한 다른 잘 알려진 요소들은 간결성을 위해 도 4로부터 생략될 수 있다.
우리는 이제 개략도(400) 내의 컴포넌트들에 대한 간단한 설명을 참조한다. 통신 인터페이스(406)는 사용자 디바이스(400)와 ProSe 서버 또는 또 다른 사용자 디바이스와 같은 다른 전자 디바이스들 사이에서의 통신을 허용한다. 하나의 실시예의 경우, 통신 인터페이스(406)는 셀룰러 송수신기, WLAN 송수신기, 및 GPS 송수신기와 같은 하나 이상의 무선 송수신기를 포함한다. 더 구체적으로는, 셀룰러 송수신기는 도 1의 셀룰러 네트워크들(112 및 122)과 같은 셀룰러 네트워크를 통해 데이터의 셀룰러 통신들을 시행하기 위해 임의의 적절한 셀룰러 또는 셀룰러-기반 기술을 구현하도록 구성된다. WLAN 송수신기는 IEEE 802.11 (a,b, g, n 또는 ac) 표준에 따라, WiFi 네트워크를 통해 WiFi 통신들을 시행하도록 구성된 WiFi 송수신기일 수 있다. 통신 인터페이스(406)는 또한 LTE 다이렉트, BLE, 등과 같은 기술을 사용하여 P2P 통신들을 구현하도록 구성된 하나 이상의 무선 송수신기를 포함할 수 있다. 예를 들어, 디바이스(400)가 고정된 디바이스인 경우에, 통신 인터페이스(406)는 케이블 모뎀 또는 DSL(digital subscriber line)을 통해 통신하는데 사용되는 유선 통신 인터페이스를 포함할 수 있다.
프로세서(402)는, 예를 들어, 본 명세서에 설명된 실시예들에 따른 방식으로 애플리케이션 사용자의 존재를 알리거나 모니터하기 위해, 디바이스(400)에 의해 요구되는 디지털 처리를 수행하는데 필요한 산술 논리(arithmetic logic) 및 레지스터들을 포함한다. 하나의 실시예의 경우, 프로세서(402)는 스마트폰의 애플리케이션 프로세서와 같은 디바이스(400)의 일차 마이크로프로세서(primary microprocessor) 또는 CPU(central processing unit)를 표현한다. 또 다른 실시예에서, 프로세서(402)는 하나 이상의 무선 송수신기에 의해 사용되는 CPU에 대한 기저대역 프로세서 또는 다른 보조적 프로세서 혹은 독립형 프로세서를 표현한다. 수행되는 특정한 기능 및 주어진 디바이스(400) 설계(design)에 적어도 부분적으로 의존하여, 다양한 기능성 또는 프로토콜이 하드웨어 내의 프로세서(400)에 의해 또는 소프트웨어 또는 펌웨어 코드로서 실행될 수 있다.
하나의 예의 경우, 프로세서(402)는 각각 디바이스(400)의 다양한 기능성을 가능하게 하는 하나 이상의 프로토콜, 절차, 및/또는 알고리즘을 갖거나, 포함하거나(include, contain), 또는 구현하는 다수의 "계층들(layers)"을 갖는 프로토콜 스택 또는 프로토콜 슈트를 구현한다. 이러한 하나의 계층은 소셜 네트워킹 애플리케이션, IP를 통해 음성 또는 비디오를 지원하는 IMS(Internet Protocol multimedia subsystem)-기반 애플리케이션, 파일 공유, ProSe 서버와 통신하는 애플리케이션, 등을 포함하지만, 그로 제한되지 않는, 디바이스(400) 상에 설치된 다양한 애플리케이션을 포함 또는 구현하는 애플리케이션 계층이다.
일 실시예의 경우, 입력 컴포넌트(404)는, 카메라 렌즈 및 포토센서와 같은 하나 이상의 시각적 입력 컴포넌트; 하나 이상의 트랜스듀서(예를 들어, 마이크로폰)와 같은 하나 이상의 음향 수신기 또는 오디오 입력 컴포넌트; 및 터치스크린 디스플레이, 플립 센서, 키보드, 키패드 선택 버튼, 및/또는 스위치와 같은 하나 이상의 기계적 입력 컴포넌트를 포함한다. 더욱이, 출력 컴포넌트(410)는, LCD(liquid crystal display) 및/또는 발광 다이오드 표시기(light emitting diode indicator)와 같은 하나 이상의 시각적 출력 컴포넌트; 스피커, 알람, 및/또는 부저(buzzer)와 같은 하나 이상의 오디오 출력 컴포넌트; 및 진동 메커니즘(vibrating mechanism)과 같은 하나 이상의 기계적 출력 컴포넌트를 포함할 수 있다. 센서들(412)은 센서들의 하나 이상의 기능을 관리하기 위해 센서 허브와 함께 배열될 수 있다. 예시적인 센서들(412)은, 몇 가지 예를 들면, 근접 센서들(예를 들어, 광 검출 센서, 초음파 송수신기 또는 적외선 송수신기), 터치 센서들, 고도 센서들, 가속도계, 경사 센서(tilt sensor) 및 자이로스코프를 포함하지만, 그로 제한되지 않는다.
메모리 컴포넌트(408)는 다양한 형태, 예를 들어 ROM(read-only memory), RAM(random access memory), SRAM(static random access memory), DRAM(dynamic random access memory), 등 중 임의의 것인 하나 이상의 메모리 요소를 표현한다. 실시예에서, 프로세서(402)는 데이터를 저장 및 검색하기 위해 메모리 컴포넌트(408)를 사용한다. 일부 실시예에서, 메모리 컴포넌트(408)는 집적 회로 상에서와 같이 프로세서(402)와 함께 단일 컴포넌트로 통합된다. 그러나, 이러한 단일 컴포넌트는 여전히 통상적으로 상이한 처리 및 메모리 기능들을 수행하는 별개의 부분들/섹션들을 갖는다. 메모리 컴포넌트(408)에 의해 저장되는 데이터는 운영 체제들, 프로그램들(예를 들어, 애플리케이션들, 프로토콜들, 및 다른 코드), 및 정보제공 데이터(informational data)를 포함하지만, 그로 제한될 필요는 없다.
사용자 디바이스(400)와 그 안의 컴포넌트들 중 하나 이상을 구성하면 선택된 다른 사용자들에 의한 제한된 발견을 위해 그의 존재를 알리는 애플리케이션 사용자를 위해 도 2의 기능성(208, 212, 220, 224, 228 및 232)을 참조하여 위에서 설명된 바와 같이 사용자 경험을 제공할 수 있다. 사용자 디바이스(400) 및 그 안의 컴포넌트들 중 하나 이상을 구성하면, 예를 들어 도 3의 기능성(302, 304, 310, 320, 및 322)을 참조하여, 선택된 다른 사용자들이 그의 존재를 발견하도록 인가한 애플리케이션 사용자를 검출하기 위해 모니터하는 것에 관한 사용자 경험을 추가로 제공할 수 있다.
도 5는 ProSe 서버(500)의 예시적인 내부 하드웨어 컴포넌트들, 예를 들어, 도 1에 예시된 바와 같은 ProSe 서버들(118 및 128)을 예시하는 블록도를 도시한다. 도 5에 도시된 바와 같이, ProSe 서버(500)의 내부 하드웨어 요소들 또는 컴포넌트들은 프로세서(502), 통신 인터페이스(504), 및 메모리 컴포넌트(506)의 각각 중 적어도 하나를 포함한다. 추가로 예시된 바와 같이, ProSe 서버(500)의 내부 컴포넌트들은 서로 동작가능하게 결합되고, 하나 이상의 내부 통신 링크(508), 예를 들어, 내부 버스를 통해 서로 통신한다. 예시를 용이하게 하기 위해, 제한된 수의 디바이스 컴포넌트들(502, 504, 506, 및 508)이 도시되지만, 다른 실시예들은 ProSe 서버(500) 내에 더 적거나 많은 수의 이러한 컴포넌트를 포함할 수 있다. 더욱이, ProSe 서버(500)의 상업적인 실시예를 위해 필요한 다른 잘 알려진 요소들은 간결성을 위해 도 5로부터 생략될 수 있다.
일반적으로, 하드웨어 레벨에서, 디바이스 컴포넌트들(502, 504, 506, 및 508)은, 각각, 도 4에 도시된 유사한 디바이스 컴포넌트들(402, 406, 408, 및 414)을 위해 설명된 바와 같이 기능한다. 그러나, 디바이스 컴포넌트들(502, 504, 506, 또는 508) 중 하나 이상은 일부 추가적인 특징을 가질 수 있다. 예를 들면, 통신 인터페이스(504)는 통신 인터페이스(406)보다 더 많은 동시 접속을 지원할 수 있고, 프로세서(502)는 프로세서(402)와 비교하여 더 큰 계산적 로드(computational load)를 위해 구성될 수 있다. 그럼에도 불구하고, ProSe 서버(500)는 그것의 디바이스 컴포넌트들(502, 504, 506, 및 508) 중 하나 이상을 통해, 예를 들면, 각각 도 2 및 도 3에 예시된 메시지 시퀀스 다이어그램들(200 및 300)을 참조하여 위에서 설명된 실시예에 따른 제1 또는 제2 근접-기반 서비스 서버로서 동작하도록 구성가능하다.
예를 들면, 특정한 실시예의 경우, ProSe 서버(500)는, 예를 들어, 프로세서(502) 및 통신 인터페이스(504)의 협력적 동작(cooperative operation)을 통해, 제1 근접-기반 서비스 서버로서 동작하도록 구성된다. 제1 근접-기반 서비스 서버는 제1 애플리케이션에 대한 제1 사용자의 리소스들에 액세스하기 위한 인가(예를 들어, 214)를 획득하는 단계를 포함하는 방법을 수행한다. 방법은 또한 제1 사용자의 리소스들로부터 동료들의 목록을 통신하는 단계(예를 들어, 220) 및 동료들의 목록으로부터 선택된 동료들의 세트(a set of associates)에 대한 표시(indication)를 수신하는 단계(예를 들어, 220)를 포함한다. 세트 내의 각각의 동료는 제1 사용자를 발견하도록 허락된다. 방법은 근접-기반 서비스 코드에 대한 요청을 수신하는 단계(예를 들어, 224) 및 제1 근접-기반 서비스 코드를 제1 애플리케이션에 대한 제1 사용자에게 할당하는 단계(예를 들어, 226)를 추가로 포함한다. 추가적으로, 방법은, 다른 근접-기반 서비스 서버들의 세트에, 제1 애플리케이션에 대한 제1 사용자에게 할당된 제1 근접-기반 서비스 코드의 현존을 알리는 단계(예를 들어, 230)를 포함한다.
위에서 설명된 바와 같이, 제1 근접-기반 서비스 서버는 제1 근접-기반 서비스 코드를 제1 사용자의 디바이스에 통신한다(예를 들어, 228). 더욱이, 일 실시예의 경우, 제1 근접-기반 서비스 서버는 제1 근접-기반 서비스 코드를 할당하고, 제1 근접-기반 서비스 코드의 현존을 다른 근접-기반 서비스 서버들의 세트에 알리고, 제1 근접-기반 서비스 코드를 제1 사용자의 디바이스에 통신하기 전에, 제1 애플리케이션에 대한 근접-기반 서비스들에 대한 제1 사용자의 인가를 확인한다(예를 들어, 208, 212). 추가 실시예의 경우, 제1 사용자의 리소스들로부터 동료들의 목록을 통신하는 단계 및 제1 사용자를 발견하도록 허락된 동료들의 세트에 대한 표시를 수신하는 단계는, 애플리케이션 계층에서, 근접-기반 서비스 애플리케이션을 사용하여 용이하게 된다.
또 다른 실시예의 경우, ProSe 서버(500)는, 예를 들어, 프로세서(502) 및 통신 인터페이스(504)의 협력적 동작을 통해, 다른 근접-기반 서비스 서버들의 세트의 제2 근접-기반 서비스 서버로서 동작하도록 구성된다. 제2 근접-기반 서비스 서버는, 제1 근접-기반 서비스 서버로부터, 제1 애플리케이션에 대한 제1 사용자에게 할당된 제1 근접-기반 서비스 코드의 현존의 표시를 수신하는 단계(예를 들어, 230)를 포함하는 방법을 수행한다. 방법은, 제1 근접-기반 서비스 서버로부터, 제1 애플리케이션에 대한 제1 사용자의 동료인 제2 사용자에게 제공하기 위한 제1 근접-기반 서비스 코드를 요청하는 단계(예를 들어, 314)를 추가로 포함한다. 제2 근접-기반 서비스 서버는 응답적으로 제1 근접-기반 서비스 서버로부터 제1 근접-기반 서비스 코드를 수신한다(예를 들어, 318).
또 다른 실시예에 따르면, ProSe 서버(500)는, 예를 들어, 프로세서(502) 및 통신 인터페이스(504)의 협력적인 동작을 통해, 제1 근접-기반 서비스 서버로부터, 소셜 네트워킹 애플리케이션에 대한 제1 사용자에게 할당된 제1 근접-기반 서비스 코드의 현존을 표시하는 제1 메시지를 수신하는(예를 들어, 230) 제2 근접-기반 서비스 서버로서 동작하도록 구성된다. 제2 근접-기반 서비스 서버는 소셜 네트워킹 애플리케이션에 대한 제2 사용자의 리소스들에 액세스하기 위한 인가를 수신(예를 들어, 304)하고 제2 사용자의 디바이스로부터, 제1 사용자의 존재를 모니터하기 위한 요청을 수신(예를 들어, 310)하도록 추가로 구성된다. 또한, 제2 근접-기반 서비스 서버는, 제1 근접-기반 서비스 서버로부터, 제1 사용자가 제2 사용자에 근접할 때를 결정하기 위한 제1 근접-기반 서비스 코드를 요청할지를 결정(예를 들어, 312)하도록 구성된다.
또한, 제2 근접-기반 서비스 서버의 프로세서(502)는, 제1 사용자가 소셜 네트워킹 애플리케이션에 대한 제2 사용자의 리소스들로부터의 친구들의 목록에 포함되는지를 결정; 및 제2 사용자의 리소스들로부터의 친구들의 목록에 제1 사용자가 포함될 때 제1 근접-기반 서비스 코드를 요청하도록 구성됨으로써, 제1 근접-기반 서비스 코드를 요청할지를 결정(예를 들어, 312)하도록 구성될 수 있다. 추가적으로, 제1 및 제2 ProSe 서버들 둘 다의 프로세서(502)는 소셜 네트워킹 애플리케이션에 대한 제1 사용자에게 할당된 제1 근접-기반 서비스 코드의 현존을 표시하는 제1 메시지를 통신(예를 들어, 전송 및 수신)(예를 들어, 230)하기 위해 멀티캐스트 그룹에 합류하도록 구성될 수 있다. 더욱이, 프로세서(502) 및 통신 인터페이스(504)는 제2 사용자가 제2 사용자를 발견하도록 허락될 때 제1 사용자의 존재를 검출하는데 사용하기 위해 제1 근접-기반 서비스 코드를 제2 사용자의 디바이스에 통신(예를 들어, 320)하도록 협력적으로 구성될 수 있다.
전술한 명세서에서, 구체적인 실시예들이 설명되었다. 그러나, 본 기술분야의 통상의 기술자는 아래의 청구범위에 기재된 바와 같은 본 개시내용의 범위를 벗어나지 않고 다양한 수정 및 변경이 실시될 수 있음을 인정한다. 따라서, 본 명세서 및 도면들은 제한적인 의미보다는 예시적인 의미로 간주되어야 하고, 모든 이러한 수정은 본 교시들의 범위 내에 포함되는 것으로 의도된다.
혜택들, 이점들, 문제점들에 대한 솔루션들, 및 임의의 혜택, 이점 또는 솔루션이 발생하게 야기하거나 더 현저해지게 야기할 수 있는 임의의 요소(들)는 청구범위의 일부 또는 전부의 중대한, 요구된 또는 필수적인 특징 또는 요소로서 해석되어서는 안 된다. 본 발명은 본 출원의 계속 동안 실시되는 임의의 보정을 포함하는 첨부된 청구범위 및 발행된 바와 같은 이러한 청구범위의 모든 등가물에 의해서만 정의된다.
더욱이 본 문헌에서, 제1 및 제2, 최상부(top) 및 최하부(bottom), 등과 같은 관계적 용어들은 이러한 엔티티들 또는 액션들 사이에 임의의 실제 이러한 관계 또는 순서를 반드시 요구 또는 암시하지는 않고 하나의 엔티티 또는 액션을 또 다른 엔티티 또는 액션과 구별하기 위해서만 사용될 수 있다. 용어들 "포함하다(comprises, includes, contains)", "포함하는(comprising, including, containing)", "갖다(has)", "갖는(having)" 또는 그것의 임의의 다른 변형은, 비배타적인 포함(non-exclusive inclusion)을 커버하는 것으로 의도되어, 요소들의 리스트를 포함하는, 갖는 프로세스, 방법, 물품(article) 또는 장치는 단지 그러한 요소들만을 포함하는 것이 아니라, 명확히 열거되지 않은 또는 이러한 프로세스, 방법, 물품 또는 장치에 내재적인 다른 요소들을 포함할 수 있게 된다. "...을 포함하다(comprises ...a, includes …a, contains ...a)", "...을 갖다(has ...a)"가 선행하는 요소는, 추가 제약들 없이, 이 요소를 포함하는, 갖는 프로세스, 방법, 물품, 또는 장치에서의 추가적인 동일한 요소들의 현존을 배제하지 않는다. 용어들 "a" 및 "an"은 본 명세서에서 달리 명시적으로 언급되지 않는 한 하나 이상으로서 정의된다. 용어들 "실질적으로(substantially)", "본질적으로(essentially)", "대략적으로(approximately)", "약(about)", 또는 그것의 임의의 다른 버전은, 본 기술분야의 통상의 기술자에 의해 이해되는 바와 가까운 것으로서 정의되고, 하나의 비제한적인 실시예에서 이러한 용어는 10% 내에 있는 것으로, 또 다른 실시예에서는 5% 내에 있는 것으로, 또 다른 실시예에서는 1% 내에 있는 것으로 그리고 또 다른 실시예에서는 0.5% 내에 있는 것으로 정의된다. 본 명세서에서 사용된 바와 같은 용어 "결합된(coupled)"은, 반드시 직접적으로는 아니고 반드시 기계적으로는 아니지만, 접속된 것으로서 정의된다. 특정 방식으로 "구성된(configured)" 디바이스 또는 구조는 적어도 그러한 방식으로 구성되지만, 또한 열거되지 않은 방식들로도 구성될 수 있다.
일부 실시예는 마이크로프로세서들, 디지털 신호 프로세서들, 맞춤형 프로세서들(customized processors) 및 FPGA들(field programmable gate arrays)과 같은 하나 이상의 포괄적이거나 전문화된(generic or specialized) 프로세서(또는 "처리 디바이스") 및 본 명세서에 설명된 방법 및/또는 장치의 기능의 일부, 대부분, 또는 전부를 특정 논-프로세서 회로들과 함께 구현하기 위해 하나 이상의 프로세서를 제어하는 (소프트웨어 및 펌웨어 둘 다를 포함하는) 고유한 저장된 프로그램 명령어들(unique stored program instructions)로 구성될 수 있다는 것이 인정될 것이다. 대안적으로, 일부 또는 모든 기능은, 저장된 프로그램 명령어들을 갖지 않는 상태 머신에 의해, 또는 하나 이상의 ASIC(Application Specific Integrated Circuit)에서 구현될 수 있고, 여기서, 각각의 기능 또는 기능들 중 특정의 일부 조합은 커스텀 로직으로서 구현된다. 물론, 2가지 접근법의 조합이 사용될 수 있다. 상태 머신 및 ASIC 둘 다는 전술한 논의 및 청구항 언어를 위해 본 명세서에서 "처리 디바이스"로 간주된다.
더욱이, 실시예는 본 명세서에서 설명되고 청구되는 바와 같은 방법을 수행하도록 컴퓨터(예를 들어, 프로세서를 포함하는)를 프로그래밍하기 위해 컴퓨터 판독가능 코드가 저장된 컴퓨터-판독가능 저장 매체로서 구현될 수 있다. 이러한 컴퓨터-판독가능 저장 매체들의 예들은 하드 디스크, CD-ROM, 광학적 저장 디바이스, 자기 저장 디바이스, ROM(Read Only Memory), PROM(Programmable Read Only Memory), EPROM(Erasable Programmable Read Only Memory), EEPROM(Electrically Erasable Programmable Read Only Memory) 및 플래시 메모리(Flash memory)를 포함하지만, 그로 제한되지는 않는다. 또한, 통상의 기술자는, 예를 들어, 가용 시간(available time), 현재 기술 및 경제적 고려사항들에 의해 동기부여된 아마도 상당한 노력 및 많은 설계 선택사항에도 불구하고, 본 명세서에 개시된 개념들 및 원리들에 의해 안내될 때, 최소의 실험으로 이러한 소프트웨어 명령어들과 프로그램들 및 IC들을 쉽게 생성할 수 있을 것이라는 점이 예상된다.
본 개시내용에 대한 요약서는 독자가 기술적 개시내용의 본질(nature)을 신속하게 알아내도록 허용하기 위해 제공된다. 이는 청구범위의 범위 또는 의미를 해석 또는 제한하기 위해 사용되지 않을 것이라는 이해 하에 제출된다. 게다가, 전술한 상세한 설명에서, 본 개시내용의 간소화의 목적으로 다양한 실시예에서 다양한 특징이 함께 그룹화되는 것을 볼 수 있다. 개시내용의 이러한 방법은 청구되는 실시예들이 각각의 청구항에서 명확히 열거되는 것보다 더 많은 특징을 요구한다는 의도를 반영하는 것으로서 해석되지 않아야 한다. 오히려, 이하의 청구범위들이 반영하는 바와 같이, 독창적인 발명의 대상(subject matter)은 단일의 개시된 실시예의 모든 특징 이내에 있다. 따라서 이하의 청구범위는 이로써 상세한 설명 내로 통합되고, 각각의 청구항은 별도로 청구된 발명의 대상으로서 자립한다.

Claims (20)

  1. 애플리케이션 사용자의 제한된 발견을 용이하게 하기 위한 방법으로서,
    제1 근접-기반 서비스 서버(proximity-based services server)가,
    제1 애플리케이션에 대한 제1 사용자의 리소스들에 액세스하기 위한 인가를 획득하는 단계;
    상기 제1 사용자의 리소스들로부터 동료들(associates)의 목록을 통신하는 단계;
    상기 동료들의 목록으로부터 선택된 동료들의 세트의 표시를 수신하는 단계 - 상기 세트 내의 각각의 동료는 상기 제1 사용자를 발견하도록 허락됨 -;
    근접-기반 서비스 코드에 대한 요청을 수신하는 단계;
    상기 제1 애플리케이션에 대해 상기 제1 사용자에게 제1 근접-기반 서비스 코드를 할당하는 단계; 및
    상기 제1 애플리케이션에 대해 상기 제1 사용자에게 할당된 상기 제1 근접-기반 서비스 코드의 현존(existence)을 다른 근접-기반 서비스 서버들의 세트에 알리는 단계
    를 수행하는 단계를 포함하는 방법.
  2. 제1항에 있어서,
    상기 제1 근접-기반 서비스 서버가 상기 제1 근접-기반 서비스 코드를 상기 제1 사용자의 디바이스로 통신하는 단계를 추가로 포함하는 방법.
  3. 제2항에 있어서,
    상기 제1 근접-기반 서비스 코드를 할당하는 단계, 상기 제1 근접-기반 서비스 코드의 현존을 다른 근접-기반 서비스 서버들의 세트에 알리는 단계, 및 상기 제1 근접-기반 서비스 코드를 상기 제1 사용자의 디바이스로 통신하는 단계 이전에, 상기 제1 근접-기반 서비스 서버가 상기 제1 애플리케이션에 대한 근접-기반 서비스들에 대해 상기 제1 사용자의 인가를 확인하는 단계를 추가로 포함하는 방법.
  4. 제2항에 있어서,
    상기 제1 근접-기반 서비스 서버가,
    상기 다른 근접-기반 서비스 서버들의 세트 중의 제2 근접-기반 서비스 서버로부터, 상기 제1 사용자에 대해 할당된 상기 제1 근접-기반 서비스 코드에 대한 요청을 수신하는 단계; 및
    상기 제1 근접-기반 서비스 코드를 상기 제2 근접-기반 서비스 서버로 통신할지를 결정하는 단계
    를 수행하는 단계를 추가로 포함하는 방법.
  5. 제4항에 있어서,
    상기 제1 근접-기반 서비스 코드에 대한 요청은 상기 제1 애플리케이션의 제2 사용자를 표시하고, 상기 제1 근접-기반 서비스 코드를 상기 제2 근접-기반 서비스 서버로 통신할지를 결정하는 단계는,
    상기 제1 근접-기반 서비스 서버가,
    상기 제1 사용자를 발견하도록 허락된 상기 동료들의 세트와 상기 제2 사용자를 비교하는 단계; 및
    상기 제2 사용자가 상기 제1 사용자를 발견하도록 허락된 상기 동료들의 세트 내에 있을 때, 상기 제1 근접-기반 서비스 코드를 상기 제2 근접-기반 서비스 서버로 통신하는 단계
    를 수행하는 단계를 포함하는 방법.
  6. 제1항에 있어서,
    상기 제1 근접-기반 서비스 코드는, 근접-기반 서비스 서버로부터 상기 제1 근접-기반 서비스 코드를 수신한 상기 제2 사용자의 디바이스가 상기 제1 사용자의 디바이스에 의한 상기 제1 근접-기반 서비스 코드의 브로드캐스트를 수신하기 위해 근접해 있을 때, 상기 제1 사용자의 존재(presence)를 결정하는데 사용되는 방법.
  7. 제1항에 있어서,
    상기 제1 사용자의 리소스들로부터 동료들의 목록을 통신하는 단계 및 상기 제1 사용자를 발견하도록 허락된 동료들의 세트의 표시를 수신하는 단계는 근접-기반 서비스 애플리케이션을 사용하여 용이하게 되는 방법.
  8. 제1항에 있어서,
    상기 제1 근접-기반 서비스 코드를 알리는 단계는 상기 다른 근접-기반 서비스 서버들의 세트를 포함하는 그룹에 상기 제1 근접-기반 서비스 코드를 멀티캐스팅하는 단계를 포함하는 방법.
  9. 제1항에 있어서,
    상기 제1 애플리케이션에 대한 제1 사용자의 리소스들에 액세스하기 위한 인가를 획득하는 단계는, 상기 제1 사용자를 대신하여 애플리케이션 서버에 대한 애플리케이션 프로그램 인터페이스 호출들을 수행하는데 사용하기 위해 상기 제1 애플리케이션을 호스팅하는 상기 애플리케이션 서버로부터 액세스 토큰을 수신하는 단계를 포함하는 방법.
  10. 제9항에 있어서,
    상기 제1 사용자의 리소스들에 액세스하기 위한 인가는 OAuth 프로토콜을 사용하여 획득되는 방법.
  11. 제1항에 있어서,
    상기 제1 사용자의 리소스들로부터 동료들의 목록을 통신하는 단계는 소셜 네트워킹 애플리케이션에 대한 상기 제1 사용자의 리소스들로부터 친구들의 목록을 통신하는 단계를 포함하는 방법.
  12. 애플리케이션 사용자의 제한된 발견을 용이하게 하기 위한 방법으로서,
    제2 근접-기반 서비스 서버가,
    제1 근접-기반 서비스 서버로부터, 제1 애플리케이션에 대해 제1 사용자에게 할당된 제1 근접-기반 서비스 코드의 현존의 표시를 수신하는 단계;
    상기 제1 근접-기반 서비스 서버로부터, 상기 제1 애플리케이션에 대해 상기 제1 사용자의 동료인 제2 사용자에게 제공하기 위한 상기 제1 근접-기반 서비스 코드를 요청하는 단계; 및
    상기 제1 근접-기반 서비스 서버로부터 상기 제1 근접-기반 서비스 코드를 수신하는 단계
    를 수행하는 단계를 포함하는 방법.
  13. 제12항에 있어서,
    상기 제1 근접-기반 서비스 코드는, 상기 제2 사용자가 상기 제1 사용자를 발견하도록 허락된 사용자들의 목록에 있을 때 수신되는 방법.
  14. 제12항에 있어서,
    상기 제2 근접-기반 서비스 서버가,
    상기 제1 애플리케이션에 대한 상기 제2 사용자의 리소스들에 액세스하기 위한 인가를 획득하는 단계;
    상기 제2 사용자의 디바이스로부터, 상기 제1 사용자의 존재에 대해 모니터링하라는 요청을 수신하는 단계; 및
    상기 제1 근접-기반 서비스 서버로부터 상기 제1 근접-기반 서비스 코드를 요청할지를 결정하는 단계
    를 수행하는 단계를 추가로 포함하는 방법.
  15. 제14항에 있어서,
    상기 제1 근접-기반 서비스 서버로부터 상기 제1 근접-기반 서비스 코드를 요청할지를 결정하는 단계는,
    상기 제2 근접-기반 서비스 서버가,
    상기 제1 애플리케이션에 대한 상기 제2 사용자의 리소스들로부터의 동료들의 목록에 액세스하는 단계; 및
    상기 제1 사용자가 상기 제2 사용자의 리소스들로부터의 상기 동료들의 목록에 포함될 때, 상기 제1 근접-기반 서비스 코드를 요청하는 단계
    를 수행하는 단계를 포함하는 방법.
  16. 제14항에 있어서,
    상기 제1 애플리케이션에 대한 상기 제2 사용자의 리소스들에 액세스하기 위한 인가를 획득하는 단계는, 상기 제2 사용자를 대신하여 소셜 네트워킹 서버에 대한 애플리케이션 프로그램 인터페이스 호출들을 수행하는데 사용하기 위해 상기 제1 애플리케이션을 호스팅하는 상기 소셜 네트워킹 서버로부터 액세스 토큰을 수신하는 단계를 포함하는 방법.
  17. 애플리케이션 사용자의 제한된 발견을 용이하게 하도록 구성된 제2 근접-기반 서비스 서버로서,
    프로세서 및 통신 인터페이스
    를 포함하고,
    상기 프로세서 및 통신 인터페이스는,
    제1 근접-기반 서비스 서버로부터, 소셜 네트워킹 애플리케이션에 대해 제1 사용자에게 할당된 제1 근접-기반 서비스 코드의 현존을 표시하는 제1 메시지를 수신하고;
    상기 소셜 네트워킹 애플리케이션에 대한 제2 사용자의 리소스들에 액세스하기 위한 인가를 수신하고;
    상기 제2 사용자의 디바이스로부터, 상기 제1 사용자의 존재에 대해 모니터링하라는 요청을 수신하고;
    상기 제1 근접-기반 서비스 서버로부터, 상기 제1 사용자가 상기 제2 사용자에 근접해 있을 때를 결정하기 위해 상기 제1 근접-기반 서비스 코드를 요청할지를 결정하도록
    동작가능하게 결합 및 구성되는 제2 근접-기반 서비스 서버.
  18. 제16항에 있어서,
    상기 프로세서는,
    상기 제1 사용자가 상기 소셜 네트워킹 애플리케이션에 대한 상기 제2 사용자의 리소스들로부터의 친구들의 목록에 포함되는지를 결정하고;
    상기 제1 사용자가 상기 제2 사용자의 리소스들로부터의 상기 친구들의 목록에 포함될 때, 상기 제1 근접-기반 서비스 코드를 요청하도록
    구성되는 것에 의해, 상기 제1 근접-기반 서비스 코드를 요청할지를 결정하도록 구성되는 제2 근접-기반 서비스 서버.
  19. 제18항에 있어서,
    상기 프로세서는 상기 제1 메시지를 수신하기 위해 멀티캐스트 그룹에 합류하도록 구성되는 제2 근접-기반 서비스 서버.
  20. 제16항에 있어서,
    상기 프로세서 및 통신 인터페이스는, 상기 제2 사용자가 상기 제2 사용자를 발견하도록 허락될 때 상기 제1 사용자의 존재를 검출하는데 사용하기 위해 상기 제1 근접-기반 서비스 코드를 상기 제2 사용자의 디바이스로 통신하도록 협력적으로 구성되는 제2 근접-기반 서비스 서버.
KR1020177022412A 2015-02-15 2016-01-06 애플리케이션 사용자의 제한된 근접 발견을 용이하게 하기 위한 방법 및 디바이스 KR101943782B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562116491P 2015-02-15 2015-02-15
US62/116,491 2015-02-15
US14/709,571 2015-05-12
US14/709,571 US11729579B2 (en) 2015-02-15 2015-05-12 Method and device for facilitating restricted proximity discovery of an application user
PCT/US2016/012262 WO2016130240A1 (en) 2015-02-15 2016-01-06 Method and device for facilitating restricted proximity discovery of an application user

Publications (2)

Publication Number Publication Date
KR20170106383A true KR20170106383A (ko) 2017-09-20
KR101943782B1 KR101943782B1 (ko) 2019-01-29

Family

ID=55275181

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177022412A KR101943782B1 (ko) 2015-02-15 2016-01-06 애플리케이션 사용자의 제한된 근접 발견을 용이하게 하기 위한 방법 및 디바이스

Country Status (5)

Country Link
US (1) US11729579B2 (ko)
EP (2) EP3245802B1 (ko)
KR (1) KR101943782B1 (ko)
CN (1) CN107251587B (ko)
WO (1) WO2016130240A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG11201707942RA (en) * 2015-04-13 2017-10-30 ERICSSON TELEFON AB L M (publ) Code encryption
US20170230793A1 (en) * 2016-02-08 2017-08-10 Sharp Laboratories Of America, Inc. Systems and methods for switching wireless communication technologies
WO2017187026A1 (fr) * 2016-04-29 2017-11-02 Rdi Systeme de detection et communication pour dispositifs mobiles.
CN107548026B (zh) * 2017-07-14 2021-04-20 广州大正新材料科技有限公司 基于共享信息的学校安全服务方法和系统
WO2020076630A1 (en) * 2018-10-08 2020-04-16 Convida Wireless, Llc Device discovery and connectivity in a cellular network

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140100985A (ko) * 2011-12-09 2014-08-18 페이스북, 인크. 모바일 애드 혹 네트워킹

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7970425B2 (en) * 2005-08-30 2011-06-28 Alcatel-Lucent Usa Inc. Push-to-talk group call system using CDMA 1x-EVDO cellular network
US9942278B2 (en) * 2012-03-28 2018-04-10 Sony Corporation Controlling communication based on relationship between a plurality of devices
EP2842296A2 (en) 2012-04-27 2015-03-04 Interdigital Patent Holdings, Inc. Method and apparatuses for supporting proximity discovery procedures
CN103582123A (zh) * 2012-07-24 2014-02-12 中兴通讯股份有限公司 邻近区域内的用户设备信息通知、获取方法、装置及系统
CN103686689B (zh) * 2012-09-12 2017-11-07 华为技术有限公司 一种设备到设备通信中通信终端的发现方法及通信终端
CN103856927B (zh) * 2012-12-05 2017-05-31 电信科学技术研究院 一种确定用户设备之间邻近关系的方法、设备及通信系统
WO2014185743A1 (en) * 2013-05-16 2014-11-20 Samsung Electronics Co., Ltd. Scheme for discovery in a communication network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140100985A (ko) * 2011-12-09 2014-08-18 페이스북, 인크. 모바일 애드 혹 네트워킹

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
3GPP TR 23.713 V0.4.0 *

Also Published As

Publication number Publication date
US11729579B2 (en) 2023-08-15
EP3245802A1 (en) 2017-11-22
EP3570573C0 (en) 2023-09-27
CN107251587A (zh) 2017-10-13
EP3245802B1 (en) 2019-07-17
WO2016130240A1 (en) 2016-08-18
CN107251587B (zh) 2020-08-07
EP3570573A3 (en) 2020-01-08
KR101943782B1 (ko) 2019-01-29
US20160242027A1 (en) 2016-08-18
EP3570573A2 (en) 2019-11-20
EP3570573B1 (en) 2023-09-27

Similar Documents

Publication Publication Date Title
US10728315B2 (en) Method and apparatus for distributing content using a mobile device
KR101943782B1 (ko) 애플리케이션 사용자의 제한된 근접 발견을 용이하게 하기 위한 방법 및 디바이스
US11463883B2 (en) Cellular service account transfer for accessory wireless devices
US9125004B2 (en) Group sharing using near field communication (NFC)
US9386004B2 (en) Peer based authentication
TWI777960B (zh) 在d2d網路上切換式網路伺服器註冊憑證
US10893410B2 (en) Method and device for establishing a peer-to-peer connection in a mobile communication network
CN106105131B (zh) 对多个装置配对的电子装置、方法、装置和计算机介质
KR20180011802A (ko) 모바일 디바이스의 근위 존재에 기초하여 사물 인터넷 디바이스의 거동을 수정하기 위한 방법 및 시스템
US20190146658A1 (en) Notification of a wireless local area network by a browser application of a wireless communication device
CN111316624A (zh) 用于电话呼叫的个性化音频/视频邀请
EP3409002B1 (en) Method and device for data communication over a peer-to-peer connection in a mobile communication network
EP3949354B1 (en) Method and apparatus for service discovery
EP3522478B1 (en) Device provisioning
US20170359357A1 (en) A method and apparatus for managing a preference setting for trust level information of caller identity in a wireless accesss system
EP4096264A1 (en) On-device physical sim to esm conversion
EP3065369A1 (en) Method and system for automatically authorizing communications based on location

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