KR20160143754A - 동적 콘텍스트형 장치 네트워크 - Google Patents

동적 콘텍스트형 장치 네트워크 Download PDF

Info

Publication number
KR20160143754A
KR20160143754A KR1020167030976A KR20167030976A KR20160143754A KR 20160143754 A KR20160143754 A KR 20160143754A KR 1020167030976 A KR1020167030976 A KR 1020167030976A KR 20167030976 A KR20167030976 A KR 20167030976A KR 20160143754 A KR20160143754 A KR 20160143754A
Authority
KR
South Korea
Prior art keywords
virtual
hall
context
hole
information
Prior art date
Application number
KR1020167030976A
Other languages
English (en)
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 KR20160143754A publication Critical patent/KR20160143754A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L67/327
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/70Multimodal biometrics, e.g. combining information from different biometric modalities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/107Network architectures or network communication protocols for network security for controlling access to devices or network resources wherein the security policies are location-dependent, e.g. entities privileges depend on current location or allowing specific operations only from locally connected terminals
    • 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/131Protocols for games, networked simulations or virtual reality
    • H04L67/16
    • H04L67/18
    • H04L67/38
    • 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/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • 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/52Network services specially adapted for the location of the user terminal
    • 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/53Network services using third party service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/062Pre-authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/065Continuous authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • H04W12/084Access security using delegated authorisation, e.g. open authorisation [OAuth] protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Power Engineering (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • User Interface Of Digital Computer (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Facsimiles In General (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명의 일 실시예에서, 시스템은 데이터 채널 및 가상 홀을 수립하고 유지하는 회로를 포함한다. 각 가상 홀은 데이터 내러 중 하나와 연관되고, 각 가상 홀은 가상 홀과 관련된 데이터 및 객체를 포함하며, 데이터는 장치 또는 사용자와 관련된 콘텍스트 정보를 포함한다. 각 가상 홀은 가상 홀의 멤버에게 데이터 및 객체에 대한 엑세스를 제공한다. 가상 홀의 데이터 및 객체에 대한 변경은 가상 홀의 멤버 간 동기화된다.

Description

동적 콘텍스트형 장치 네트워크{DYNAMIC CONTEXTUAL DEVICE NETWORKS}
본 발명은 동적 콘텍스트형 장치 네트워크에 관한 것이다. 본 발명은 “모바일 장치의 위치 기반 서비스”라는 명칭으로 Gupta가 2014년 4월 11일에 출원한 미국 임시 출원 번호 제61/978,478호; “네트워크 장치의 고유 Id를 사용하는 가상 홀 생성 및 접근”이라는 명칭으로 Gupta가 2014년 7월 7일에 출원한 미국 출원 번호 제62/021,514호; “동적 콘텍스트형 장치 네트워크”라는 명칭으로 Gupta가 2015년 2월 5일에 출원한 미국 출원 번호 제62/112,180호; “동적 콘텍스트형 장치 네트워크의 생성 및 접근”이라는 명칭으로 Gupta가 2015년 2월 24일에 출원한 미국 출원 번호 제62/119,812호에 대한 우선권을 주장하고, “콘텍스트 스캐너 또는 트리거 장치”라는 명칭의 Gupta가 2014년 7월 21일에 출원한 인도 출원 번호 제2051/DEL/2014호에 대한 우선권을 주장한다. 이러한 5개의 출원 각각의 내용은 그 전체가 본원에 참조문헌으로 포함된다.
랩탑, 태블릿, 및 모바일 폰과 같은 연산 장치는 현재 널리 퍼져있고, 일상 생활에서 지울 수 없는 부분이다. 그러나, 정보에 대한 엑세스(access)를 획득하는 것은, 특히, 연산 장치가 인터넷에 일시적으로 연결되지 않을 때 지루한 일일 수 있다. 추가적으로, 복원된 정보가 하나의 영역에서는 적절할 수 있지만, 특정 사용자 또는 사용자의 콘텍스트(context)에 대해서는 덜 적절할 수 있다.
본 발명의 일 실시예에서, 시스템은 데이터 채널 및 가상 홀(virtual hall)을 수립하고 유지하는 회로(circuitry)를 포함한다. 각 가상 홀은 데이터 채널 중 하나와 연관되고, 각 가상 홀은 가상 홀과 관련된 데이터 및 객체를 포함하며, 데이터는 장치 또는 사용자에 관련된 콘텍스트 정보를 포함한다. 각 가상 홀은 가상 홀의 멤버(member)에게 데이터 및 객체에 대한 엑세스를 제공한다. 가상 홀의 데이터 및 객체에 대한 변경은 가상 홀의 멤버 간에 동기화된다.
본 발명의 일 실시예에서, 시스템은 데이터 채널 및 가상 홀(virtual hall)을 수립하고 유지하는 회로(circuitry)를 포함한다. 각 가상 홀은 데이터 채널 중 하나와 연관되고, 각 가상 홀은 가상 홀과 관련된 데이터 및 객체를 포함하며, 데이터는 장치 또는 사용자에 관련된 콘텍스트 정보를 포함한다. 각 가상 홀은 가상 홀의 멤버(member)에게 데이터 및 객체에 대한 엑세스를 제공한다. 가상 홀의 데이터 및 객체에 대한 변경은 가상 홀의 멤버 간에 동기화된다.
본 발명의 일 실시예에서, 시스템은 가상 홀 식별자(virtual hall identifier) 및 가상 홀 식별자와 관련된 가상 홀 생성 요청을 수신하고, 가상 홀을 생성하며, 가상 홀 내 통신용 데이터 채널을 수립하고, 가상 홀을 식별하는 가상 표지(virtual insignia)를 제공하는 회로를 포함한다. 회로는 제1 장치로부터 제1 요청을 수신하되, 제1 요청은 가상 표지의 선택에 의해 개시되고, 제1 요청은 가상 홀에 제1 장치를 추가하기 위한 것이다. 또한 회로는 제1 장치의 콘텍스트를 식별하고, 제1 장치의 콘텍스트가 가상 홀과 연관된 룰(rule)과 일관되는지를 확인하고, 가상 홀의 멤버로 제1 장치를 추가하고, 가상 홀에 대한 정보를 제1 장치에 제공하며, 가상 홀을 제1 장치에 대한 정보로 업데이트한다.
본 발명의 일 실시예에서, 방법은 제1 사용자 장치의 사용자 인터페이스로부터 가상 표지의 선택지(a selection of a virtual insignia)를 수신하는 단계, 가상 표지의 대표(representation)를 원격 연산 장치(remote computing device)로 전송하는 단계, 원격 연산 장치로부터 가상 표지와 연관된 가상 홀에 관련된 정보를 수용하는 단계, 원격 연산 장치로 콘텍스트 데이터를 제공하는 단계, 가상 홀에 진입하는 제2 사용자 장치와 관련된 동기화 데이터를 수용하는 단계 및 가상 홀의 참가자(participant)에게 배포용 데이터(data for distribution)를 제출하는 단계를 포함한다.
본 발명의 일 실시예에서, 방법은 원격 연산 장치로 사용자 장치의 위치 정보를 제공하는 단계와 가상 홀의 리스트를 원격 연산 장치로부터 수신하는 단계를 포함한다. 리스트 내 각각의 가상 홀을 위해, 상기 방법은 가상 홀의 전송 장치에 대한 사용자 장치의 근접성(proximitiy)을 결정하는 단계를 포함한다. 또한 상기 방법은 근접성에 근거하여 가상 홀 리스트의 우선순위를 선정하는 단계, 우선순위가 선정된 가상 홀 리스트를 대표하는 우선순위 가상 표지 그룹(a prioritized group of virtual insignias)을 사용자 장치의 사용자 인터페이스로 제공하는 단계, 및 사용자 인터페이스로부터 가상 표지 중 하나의 선택지를 수신하는 단계를 포함한다.
도 1a는 네트워크 환경의 일 예를 도시한 도면이다.
도 1b는 동적 콘텍스트형 장치 네트워크 환경(dynamic contextual device network environment)의 일 예를 도시한 도면이다.
도 2는 연산 장치의 일 예를 도시한 블록도이다.
도 3은 디렉토리로의 콘텍스트-인식 엑세스(context-aware access)의 일 예를 설명하는 흐름도이다.
도 4는 디렉토리(directory) 생성의 일 예를 설명하는 흐름도이다.
도 5는 동적 콘텍스트형 장치 네트워크를 위한 데이터베이스 구조의 일 예를 설명하는 테이블식 도면(table diagram)이다.
도 6은 동적 콘텍스트형 장치 네트워크로의 콘텍스트-인식 엑세스의 일 예를 설명하는 흐름도이다.
도 7은 동적 콘텍스트형 장치 네트워크 생성의 일 예를 설명하는 흐름도이다.
도 8은 동적 콘텍스트형 장치 네트워크를 위한 데이터 구조의 일 예를 설명하는 다이어그램이다.
도 9는 가상 홀을 설명하는 블록도이다.
도 10은 자동 신원 확인(automatic identity verification)으로 동적 콘텍스트형 장치 네트워크 내 정보에 엑세스하는 일 예를 설명하는 흐름도이다.
도 11은 가상 홀 내 객체를 그래픽 사용자 인터페이스로 표현한 일 예를 제공한다.
본 발명에서는, 사람 또는 연산 장치의 콘텍스트에 기반하여 정보를 찾기 위한 사용자 친화적이고 효율적인 기술이 개시되며, 개시된 기술에 의해 획득된 정보는 콘텍스트에 적절한 것이다. 본 발명에 개시된 기술은 로컬 레벨 메시징(local level messaging), 파일 또는 비디오 공유용으로 사용될 수 있다.
본 발명에서 사용되는 콘텍스트는 위치 콘텍스트, 인구학적 콘텍스트(demographic context), 관심 콘텍스트(interest context), 의학적 필요 콘텍스트(medical need context), 고용 콘텍스트(employment context), 사용 콘텍스트(use context), 역사적 콘텍스트(historical context), 자격 콘텍스트(capability context), 제조 콘텍스트(manufacturing context), 및 사용자 또는 관련된 연산 장치를 설명하는 다른 콘텍스트와 같은 사용자 또는 연관된 연산 장치에 대한 데이터를 참조한다.
본 발명의 개요 부분에서 설명한 바와 같이, DCDN(dynamic contextual device network)은 자격을 갖춘 연산 장치 또는 사용자의 콘텍스트와 관련된 룰 세트에 근거하여 정의된다. 다시 말해서, DCDN의 룰은 그 콘텍스트에 근거하여 DCDN에 연결될 자격을 갖춘 연산 장치 또는 사용자를 설명한다. DCDN은 연산 장치에 의해 엑세스되고 콘텍스트는 사용자 또는 연산 장치에 근거하기 때문에, 멤버십(membership) 또는 연산 장치에 의한 엑세스에 대한 본 발명 내 레퍼런스(reference)는 멤버십 또는 연산 장치를 통한 사용자에 의한 엑세스를 표현할 수 있다.
각 DCDN은 복수의 가상 홀을 포함할 수 있다. 각 가상 홀은 대응하는 가상 홀 식별자를 가진다. DCDN에 연결될 자격을 갖춘 연산 장치는 DCDN에 연결될 수 있고, 그렇게 함으로써 적격성(eligibility) 및/또는 콘텍스트에 따라 DCDN 내 복수의 가상 홀의 멤버가 된다. 멤버십은 단기 또는 장기일 수 있다.
DCDN 내 멤버십의 적격성에 대한 증명은 연산 장치에서 DCDN 시스템으로 송신된 가상 표지를 통해 제공된다. 가상 표지는 트리거(trigger)를 통해 제공될 수 있다. 트리거는 사용자 인터페이스에서 연산 장치의 사용자에 의해 개시될 수 있다; 그러나, 트리거는 자동으로 개시되거나 다른 연산 장치로부터 개시될 수 있다. 가상 표지는 DCDN 시스템에 의해 가상 표지 형태가 수신되자마자 연관된 가상 홀 식별자가 식별되도록 가상 홀 식별자와 연관될 수 있다.
가상 홀은 가상 홀의 멤버에게 이용 가능한 정보를 포함한다. 정보는 가상 홀 또는 연관된 DCDN에 관련된 저장소(storage)로부터 멤버에게 전송되거나 P2P(peer-to-peer) 방식으로 가상 홀의 멤버 간에 전송될 수 있다. 정보는 가상 홀 전용 데이터 채널 방식 또는 DCDN 전용 데이터 채널 중 어느 하나를 통해 전송된다. 데이터 채널은 3G 또는 4G 통신 인터페이스 또는 다른 무선 또는 유선 인터페이스와 같은 연산 장치 상의 이용 가능한 통신 인터페이스를 통해 가상 홀의 멤버에 의해 엑세스된다. 따라서, 연산 장치는 데이터 채널에 대한 엑세스를 가지기 위해 인터넷에 대한 엑세스를 가질 필요가 없다.
멤버는 가상 홀 내 정보를 편집, 삭제 또는 추가할 수 있다. 가상 홀 내 정보가 변경(예를 들어, 편집, 삭제 또는 추가)될 때, 변경된 정보는 가상 홀 및 가상 홀의 멤버에 동기화된다.
개요 수준으로 본 발명의 컨셉을 설명한 바, 다음에는 본 발명의 컨셉을 더 잘 이해할 수 있도록 물리 세계(physical world)로 유추해보도록 한다.
가상 도시, 몬테마르 시(Montemar City)는 물리적인 도서관 위치를 가진 도서관 시스템(몬테마르 도서관)을 가진다. 몬테마르 도서관은 책, 영화, 음악 및 정기 간행물을 포함하는 여러 객체를 포함한다. 몬테마르 도서관은 또한 엑세스시 특별한 크리덴셜(special credential)을 필요로 하는 인공 객체 뿐만 아니라 이러한 인공 객체에 손상을 입히지 않도록 인공 객체를 다루는 방법에 관한 훈련도 필요로 하는 기후 제어 방(climate-controlled room)을 포함한다. 몬테마르 도서관은 도서관 내 객체에 대한 3가지 분류의 엑세스를 정의한다. A 분류는 몬테마르 도서관에 물리적으로 존재하는 사람을 포함하는 공적 분류로 정의된다. B 분류는 몬테마르 시의 거주자(resident)인 사람을 포함하는 거주자 분류로 정의된다. 그리고 C 분류는 적절한 크리덴셜 및 인공 객체를 갖춘 기후 제어 방에 엑세스 하기 위한 훈련을 증명하는 사람을 포함하는 연구원(researcher) 분류로 정의된다.
A 분류 내 사람은 도서관 내 사람이 존재하는 콘텍스트 덕분에 도서관의 주요 부분(예를 들어, 기후 제어 방이 아닌 부분) 내 객체에 대한 엑세스를 획득한다. B 분류 내의 멤버십을 획득한 사람(예를 들어, 도서관 카드를 획득한 사람)은 도서관 내 사람이 존재하는 콘텍스트 덕분에 도서관의 주요 부분에 있는 객체에 대한 엑세스를 획득하고, 또한 그 사람의 도서관 카드의 콘텍스트 덕분에 도서관의 주요 부분 내 객체를 체크아웃(check out)할 수 있다. C 분류 내 멤버십을 획득한 사람(예를 들어, 연구원 크리덴셜을 획득하고 훈련이 증명되었으며, 그 결과 연구원 카드 또는 코드를 제공받은 사람)은 도서관 내 사람이 존재하는 콘텍스트 덕분에 도서관의 주요 부분 내 객체에 대한 엑세스를 획득하고, 그 사람의 연구원 카드 또는 코드의 콘텍스트 덕분에 기후 제어 방 내 객체를 보고 다룰 수 있지만 체크아웃할 수는 없다.
유추를 통해, 몬테마르 도서관 시스템은 DCDN로 유추될 수 있고, A, B, C 분류의 정의는 DCDN 내 멤버십을 위해 정의된 룰 또는 DCDN의 가상 홀 내 멤버십을 위해 정의된 룰로 유추될 수 있다. A 분류에서, 룰은 몬테마르 도서관의 물리적 공간(예를 들어, 주소) 내의 존재에 해당하는 멤버십용 콘텍스트를 정의한다. B분류에서, 룰은 몬테마르 시의 경계선 내 거주지(예를 들어, 지도 상의 위치 좌표 세트에 의해 정의)에 해당하는 멤버십용 콘텍스트를 정의한다. C 분류에서, 룰은 적절한 크리덴셜 및 훈련(예를 들어, 특징(characteristic))에 해당하는 멤버십용 콘텍스트를 정의한다.
몬테마르 도서관의 전자 버전으로 더 유추를 확장해보면, A1 분류는 몬테마르 도서관의 웹사이트에 엑세스하는 사람을 포함하는 공적 카테고리로 정의된다; B1 분류는 몬테마르의 거주자인 사람을 포함하는 거주자 분류로 정의된다; 그리고 C1 분류는 적절한 크리덴셜 및 특정 객체 세트에 엑세스하기 위한 훈련을 증명하는 사람을 포함하는 연구원 분류로 정의된다. 이러한 유추를 통해, A1 분류 내 사람은 웹사이트에 엑세스하는 사람의 연산 장치의 콘텍스트 덕분에 웹사이트의 주요 부분(예를 들어, 특정 객체 세트가 아닌 부분) 내 객체에 대한 엑세스를 획득한다. B1 분류 내 멤버십을 획득한 사람(예를 들어, 도서관 카드를 획득한 사람)은 웹사이트에 엑세스하는 사람의 연산 장치의 콘텍스트 덕분에 웹사이트의 주요 부분 내 객체에 대한 엑세스를 획득하고, 나아가 그 사람의 도서관 카드 정보를 제공하는 연산 장치의 콘텍스트 덕분에 웹사이트의 주요 부분 내 객체를 체크아웃(예를 들어, 다운로드 또는 이메일)할 수 있다. C1 분류 내 멤버십을 획득한 사람(예를 들어, 연구원 크리덴셜을 획득하고 훈련이 증명되어 연구원 카드 또는 코드를 제공받은 사람)은 웹사이트에 접속하는 사람의 연산 장치의 콘텍스트 덕분에 도서관의 주요 부분 내 객체에 대한 엑세스를 획득하고, 나아가 그 사람은 그 사람의 연구원 카드 또는 코드를 제공하는 연산 장치 덕분에 특정 객체 세트를 볼 수는 있지만 체크아웃할 수는 없다.
몬테마르 도서관 웹사이트 유추에서, 몬테마르 도서관 웹사이트는 주요 방(main room) 및 특정 객체 세트의 별도 콘텐츠를 포함하는 별도 콘텐츠 방을 갖춘 가상 홀로 유추되거나 2개의 가상 홀(예를 들어, 몬테마르 도서관의 주요 방을 위한 1개의 가상 홀 및 별도의 콘텐츠를 위한 1개의 가상 홀)로 유추될 수 있다.
몬테마르 도서관 웹사이트 유추에서, 콘텍스트는 가상 홀에 대한 엑세스를 요청하는 가상 표지를 통해 제공된다. A1 분류에서, 가상 표지는 널(null)일 수 있고, 이는 어떠한 가상 표지도 필요하지 않다는 것을 의미한다. B1 또는 C1 분류에서, 가상 표지는 연산 장치 상에서 수동 또는 자동으로 선택된 전자 도서관 카드 또는 코드일 수 있다. 나아가 C1 분류에서, 몬테마르 도서관 웹사이트의 룰은, 연산 장치가 몬테마르 도서관의 물리적 위치에 있을 때만 이용 가능한 별도의 콘텐츠를 포함할 수 있고, 이 경우에, 가상 표지는 전자 도서관 카드 또는 코드를 포함할 수 있고, 추가적으로 연산 장치가 Wi-Fi 장치 식별자, Wi-Fi 장치 식별자 그룹, Wi-Fi 장치 식별자의 우선순위 리스트, 위치 좌표 세트, 통신 타워의 신호 강도 리스트, 센서에 의해 판독된 도서관 내 식별자 및 기타 등등과 같은 몬테마르 도서관의 물리적 위치에 있다는 지시(indication)을 포함할 수 있다.
몬테마르 도서관 웹사이트 유추에서, VGS(virtual geo-space)는 콘텍스트와 관련된 멤버십 적격성에 의해 정의된다. 예를 들어, A1, B1, C1 분류가 가상 홀 A1, B1, C1과 각각 관련된다고 간주해보자. 가상 홀 A1의 VGS는 모든 공간에 널 콘텍스트(null context)(예를 들어, 몬테마르 도서관 웹사이트가 어디에서든 접속 가능)를 포함한다. 가상 홀 B1의 VGS는 몬테마르 시의 경계선 내 공간과 관련된 지리적 콘텍스트를 포함한다(그러나 VGS는 몬테마르 시의 거주자의 제어 하에 있다면 몬테마르 시의 경계선 밖의 멤버 연산 장치를 포함하기 위해 확장한다는 점을 주목하라); 가상 홀 C1의 VGS는 특징 콘텍스트(예를 들어, 거주와 독립적인 적절한 크리덴셜 및 훈련)에 따라 가상 홀 C1의 각 멤버 연산 장치의 현재 위치를 포함한다. 다른 예에서, A1, B1, C1 분류를 포함하는 가상 홀의 VGS는 이에 상응하여 앞서 묘사된 가상 홀 A1, B1, C1 각각의 관련 VGS 조합을 포함할 것이다. 가상 홀의 VGS는 멤버 장치에 의해 정의된다는 점을 주목하라; DCDN의 VGS는 멤버 자격을 갖춘 장치에 의해 정의된다.
개요 수준으로 본 발명의 컨셉을 설명하고, 본 발명의 컨셉을 더 잘 이해하도록 하기 위해 유추를 제공한 바, 다음에는 본 발명의 컨셉에 대해 예시를 들어, 상세하게 설명하도록 한다.
도 1a는 복수의 네트워크(120, 125) 상에서 서로 간에 통신하는 복수의 연산 장치(110)를 포함하는 네트워크 환경(100)의 일 예를 설명하는 도면이다. 전술한 바와 같이, 연산 장치(110)는 서로 간에 직접, 다른 연산 장치(110)를 통해, 하나의 네트워크(120 또는 125)를 통해, 또는 네트워크 조합(120, 125)을 통해 통신할 수 있다. 연산 장치(110)는 하드웨어 및 소프트웨어(펌웨어 및 하드웨어에 내장된 소프트웨어를 포함)의 조합을 포함하는 장치이고, 그 안에서는 처리 장치와 같은 처리 회로가 명령을 실행하는데, 이러한 명령은 처리 회로로 하여금 정의된 기능을 수행하도록 지시하는 명령이다. 연산 장치(110)에 대해서는 도 4에서 보다 상세하게 설명하도록 한다.
각각의 네트워크(120, 125)는 복수의 공적 또는 사적 네트워크를 표현한다. 예를 들어, 네트워크(120, 125) 중 하나는 LAN(local area network), LAN과 통신하는 홈 네트워크, 인터넷과 같은 WAN(wide area network)과 통신하는 LAN, 다른 네트워크, 또는 이러한 네트워크의 조합을 나타낼 수 있다. 복수의 네트워크 중 일부는 유선이고, 일부는 무선일 수 있다. 또한 네트워크(120, 125)는 복수의 전화 네트워크(telephone network), 셀룰러 네트워크(cellular network), 또는 광대역 네트워크(broadband network) 를 포함할 수 있다. 네트워크를 통한 통신은 연관 네트워크에 유용한 표준 또는 사유 프로토콜(standard or proprietary protocol)을 이용하여 만들어질 수 있다. 비록 특정 타입 또는 프로토콜의 네트워크가 본 발명의 특정 실시예에서 설명될지라도, 이러한 타입 또는 프로토콜로 제한되지 않으며, 본 발명의 컨셉은 일반적으로 매우 다양한 네트워크 환경(100)에 적용 가능하다고 이해될 것이다.
네트워크 환경(100) 내 복수의 연산 장치(110)는 연산 장치의 사용자에게 정보를 제공하기 위한 디스플레이(130) 및 사용자와 상호작용하기 위한 그래픽 사용자 인터페이스(135)를 포함한다. 입력 장치(미도시)는 사용자로 하여금 사용자 상호작용을 위해 정보를 입력할 수 있도록 한다. 복수의 실시예에서, 디스플레이(130)는 터치 스크린 디스플레이(touch screen display)이고, 또한 이에 대응하는 입력 장치이다. 입력 장치의 다른 실시예로는 마우스, 마이크로폰(microphone), 카메라, 및 생체 검출기(biometric detector)를 포함한다.
네트워크 환경(100) 내 복수의 연산 장치(110)는 외부 저장소(140; external storage)를 포함하되, 외부 저장소(140)는 정보를 저장하기 위한 복수의 메모리 장치를 나타낸다. 저장소(140)는 예를 들어, 대용량 저장소(mass storage)이고, 복수의 데이터베이스를 포함할 수 있다. 저장소(140)는 (저장소(140)와 동일 장소에 배치되거나 복수의 네트워크(120, 125) 상에서 저장소(140)와 통신할 수 있는) 복수의 연산 장치(110) 전용이거나, 전용은 아니되 (지역적으로(locally) 또는 복수의 네트워크(120, 125)를 통해) 복수의 연산 장치(110)에 엑세스할 수 있다.
다음의 논의에서 후술되는 바와 같이, 도 1a는 네트워크 환경을 일반적으로 설명하는 입문 개요(introductory overview) 방식으로 제공된다. 도 1b는 네트워크 환경의 특정 실시예를 제공한다.
도 1b는 네트워크(155) 상에서 서로 통신하는 복수의 연산 장치(160, 165, 170, 175, 180, 190)를 포함하는 네트워크 환경(150)의 일 예를 도시한 도면이다. 연산 장치(160, 165, 170, 175, 180, 190)는 특정 기능성을 가지도록 구성된 연산 장치(110; 도 1a)의 예시이다. 연산 장치(160)의 일부 또는 전부는 동적 콘텍스트형 장치 네트워크 서버(여기에서는, DCDNS 160)로 구성된다; 연산 장치(165)의 일부 또는 전부는 동기화 게이트웨이(165; synchronization gateway)(여기에서는, 동기화 게이트웨이(165))로 구성된다. 연산 장치(170)의 일부 또는 전부는 객체 서버(170; object server)(여기에서는, 객체 서버(170))로 구성된다; 연산 장치(175)의 일부 또는 전부는 어플리케이션 서버(여기에서는, 어플리케이션 서버(175; application server))로 구성된다; 연산 장치(180)는 스마트 폰, 태블릿, PDA(personal digital assistant), 랩톱, 또는 다른 모바일 컴퓨터와 같은 모바일 통신 장치(여기에서는, 모바일 장치(180))이다; 그리고 연산 장치(190)는 프린터, 3D 프린터, 스캐너, 프로젝터, 커피 머신, 비디오 디스플레이, 텔레비전, 전화기, 조명 스위치(light switch), 지불 기계(payment machine), 음향 시스템, 보안 락(security lock), 제조 장비(manufacturing equipment), 로봇, 또는 다른 장비와 같은 일종의 장비(여기에서는, 장비(190))이다. DCDNS(160), 동기화 게이트웨이(165), 객체 서버(170) 및 어플리케이션 서버(175)는 4개의 별도 연산 장치 또는 그 이하의 장치 상에서 실행될 수 있다. 예를 들어, DCDNS(160) 및 동기화 게이트웨이(165)는 하나의 연산 장치(110) 내에서 실행될 수 있다; 객체 서버(170) 및 어플리케이션 서버(175)는 하나의 연산 장치 내에서 실행될 수 있다; DCDNS(160), 동기화 게이트웨이(165), 객체 서버(170) 및 어플리케이션 서버(175)는 하나의 연산 장치 내에서 실행될 수 있다; 또한 DCDNS(160), 동기화 게이트웨이(165), 객체 서버(170) 및 어플리케이션 서버(175)의 기능성은 4개의 연산 장치 이상으로 분산될 수 있다. 따라서, 도 1b는 네트워크 환경(150)의 기능성을 도시한 도면이고 반드시 특정한 물리적 실행(specific physical implementation)을 나타낸 것은 아니다. 네트워크(155)는 도1a에서 네트워크(120, 125)에 관하여 서술된 바와 같이, 복수의 네트워크를 나타낸다.
동기화 게이트웨이(165)는 모바일 장치(180) 간 정보 동기화, 모바일 장치(180) 및 복수의 DCDNS(160), 객체 서버(170) 및 어플리케이션 서버(175) 간 정보 동기화, 또는 둘 이상의 DCDNS(160), 객체 서버(170) 및 어플리케이션 서버(175) 간 정보 동기화와 같은 네트워크 환경(150) 내 연산 장치 간 정보를 동기화한다.
객체 서버(170)는 객체 정보를 저장하고 업데이트한다. 예를 들어, 객체 정보는 DCDN과 관련된 정보 뿐만 아니라 모바일 장치(예를 들어, 모바일 장치(180)) 및 장비(예를 들어, 장비(190))와 관련된 정보를 포함한다. 객체의 예시는 아래의 다양한 실시예에서 설명하도록 한다.
어플리케이션 서버(175)는 어플리케이션 정보를 저장하고 업데이트한다. 예를 들어, 어플리케이션 정보는 다운로드 가능한 소프트웨어 모듈을 포함한다. 어플리케이션의 예시는 아래의 다양한 실시예에서 설명하도록 한다.
네트워크 환경(150)은 모바일 장치(180) 또는 어플리케이션 서버(175)와 같은 연산 장치 상의 어플리케이션(185)을 포함할 수 있다. 복수의 실시예에서, 어플리케이션(185)은 모바일 오퍼레이터(mobile operator)의 네트워크 또는 관리 시스템의 일부인 어플리케이션 서버(175) 상에 있을 수 있다. 다른 실시예에서, 어플리케이션(185)은 서비스 제공자에게 속하는 모듈일 수 있다. 또한, 어플리케이션(185)의 기능성은 둘 이상의 개체(entity) 사이에서 분리(예를 들어, 어플리케이션 서버(175) 및 모바일 장치(180) 사이에서 분리)될 수 있다. 복수의 실시예에서, 어플리케이션(185)은 DCDN을 관리, 생성, 또는 발견할 수 있다. DCDN은 일반적으로 둘 이상의 모바일 장치(180)를 포함한다; 그러나, DCDN이 단지 하나의 모바일 장치(180)를 포함할 때가 있을 수 있다.
앞서 유추를 통해 설명한 바와 같이, 콘텍스트는 위치와 관련되거나 관련되지 않을 수 있다. 콘텍스트가 위치와 관련될 때, 현재 위치에 대한 결정은 다층 건물과 같은 3차원 위치인 경우에는 특히, 어려울 수 있다. 직면한 어려움 중 일부는 위치 서비스가 에너지 소모로 인해 연산 장치 상에서 일반적으로는 비활성 상태로 유지된다는 점, 많은 위치 서비스가 실내에서 동작하지 않는다는 점, 및 GPS(global positioning system)와 같은 위치 서비스는 (3차원이 아닌) 2차원 위치 데이터를 사용한다는 점이다. 또한, GPS 위치 조사는 느리고 배터리 소모적인 프로세스이다. 추가적으로, Wi-Fi 장치는 위치 좌표를 제공하지 않고, NFC(near-field communication) 센서는 널리 사용되지 않고 있을 뿐만 아니라 아주 짧은 거리까지에서만 작동하고, 삼각 측량은 충분히 정확하지 않을 수 있다. 위치 콘텍스트를 수립하기 위해 예를 들어, GPS, 삼각 측량 또는 다른 위치 기술을 이용하여 연산 장치의 현재 위치를 결정하는 대신에, 본 발명의 복수의 실시예에 서술된 기술은 대안으로 또는 추가적으로 현재 위치와 이격된 연산 장치의 위치 콘텍스트를 제공한다. 이에 대해서는 후술하도록 한다.
전술한 바와 같이, VGS는 지도 좌표에 기반한 경계(perimeter)를 가지는 것과 같이, 지리적 좌표에 관하여 DCDN의 룰에 의해 정의될 수 있다; 그러나, VGS는 이러한 지도 좌표로 한정되지 않고, 대신에 특징에 의해 추가적으로 또는 대안으로 정의된 가상 공간일 수 있다. 따라서, 설령 VGS가 지리적 위치를 포함할 수 있을지라도(예를 들어, DCDN의 모바일 장치(180)가 서로 다른 도시, 주, 국가 또는 대륙으로 이어지는VGS 내에 위치), VGS가 반드시 지리적 위치에 의해 정의되는 것은 아니다.
VGS는 복수의 실시예에서 3차원(예를 들어, 특정 주소의 다층 건물 내 복수의 층의 지리적 영역에 걸쳐있음)일 수 있다. 3D VGS의 다른 예시는 비행기(또는 우주선)의 위치 및 이와 관련된 그라운드 제어 (둘다 시간에 따라 변경될 수 있음), 및 행성 간 VGS를 포함한다. VGS는 흐릿한 경계를 가질 수 있고, 이는 경계가 지리적 좌표 시스템에 관하여 명확하게 정의되지 않는다는 점을 의미한다. 또한 (지리적 좌표 시스템에 관한) VGS 경계는 동적일 수 있다.
하나의 건물의 다수 층에 사무실을 가지고 있거나 다수의 빌딩 각각의 한 층에 사무실을 가지는 회사와 같이 정의 또는 부분적으로 정의된 경계(흐릿할 수 있음)가 있는 실시예에서는, 경계가 우편 주소 또는 지리적 좌표에 의해 정의되거나 경계 내 존재하고 경계에서 이용 가능한 신호에 의해 정의될 수 있다. 예를 들어, 복수의 전송 장치는 특정 기정의된 주파수의 신호를 방출 및/또는 특정 메시지 또는 코딩(coding)을 이용할 수 있다. 신호 수신 영역은 VGS 경계를 정의한다. 다른 수신 장치(예를 들어, 모바일 장치(180))는 다른 감도를 가진다는 점에서 본 실시예에서의 경계는 흐릿하고, 하나의 수신 장치의 수신 영역은 다른 수신 장치의 수신 영역과 다를 수 있다는 점을 주목하라. 본 실시예에서의 경계는 또한 전송 장치가 가변적인 송출 수준(varying emission levels)을 가질 수 있다는 점, 또는 여러 수신 장치의 수신 영역을 저감하는 전기 간섭이 있을 수 있다는 점에서 흐릿하다. 전송 장치의 다양한 예시로 RF 이미터(radio frequency emitter), Wi-Fi 장치 및 적외선 장치를 포함한다.
복수의 실시예에서, VGS는 특정 DCDN의 연산 장치(110; 도 1a)가 존재하도록 허가된 수도- 지리적 공간(pseudo-geographic space)을 정의한다. 예를 들어, 회사 DCDN은 회사의 거처(예를 들어, 주소) 뿐만 아니라 회사 직원의 거처 및 차량을 포함하는 VGS를 정의할 수 있고, DCDN의 특정 모바일 장치(180)가 VGS의 수도-지리적 공간을 떠나면, 회사에 알림이 통보된다.
복수의 실시예에서, 정의된 경계를 갖추거나 갖추지 못한 VGS에 대해, 관련된 DCDN은 장치 식별자를 사용하여 DCDN으로 허가되거나 DCDN으로부터 배제된 장치를 정의할 수 있다.
전술한 바와 같이, 복수의 실시예에서, VGS는 지리적으로 구속받지 않는다 (geographically agnostic). 지리적으로 구속받지 않는 VGS는 복수의 모바일 장치(180)의 공통 특징 또는 모바일 장치(180)의 사용자의 공통 특징에 의해 정의될 수 있다.
VGS는 예를 들어, 주소에 의해 정의되어 정적(static)이거나, 신호를 송출하는 복수의 전송 장치에 의해 정의되어 반정적(semi-static)일 수 있다. VGS는, 모바일 장치(180)가 DCDN에 추가될 때 관련 VGS는 모바일 장치(180)와 관련된 지리적 위치 또는 다른 콘텍스트를 포함하도록 확장될 수 있고, 모바일 장치(180)가 DCDN으로부터 제거될 때는 관련 VGS가 모바일 장치(180)와 관련된 지리적 위치 또는 다른 콘텍스트를 배제하도록 수축될 수 있다는 점에서 동적일 수 있다. 복수의 실시예에서, VGS는 때로는 정적이기도 하고 반정적이기도 하며, 동적일 수도 있다. 예를 들어, 모바일 도서관 DCDN의 비지리적 VGS는 관련된 캐리어 차량(carrier vehicle)이 수송 중에 있고 DCDN이 차량에 탑재된 모바일 장치(180)를 포함하는 동안에는 정적일 수 있고, 체크아웃된 자료(material)가 있는 위치에 주차될 때 동적일 수 있다(예를 들어, 사용자는 책을 체크아웃하기를 원해서 DCDN에 합류하게 되고, VGS는 사용자 또는 사용자 모바일 장치(180)의 콘텍스트를 포함하기 위해 동적으로 확장한다). 다른 예로, VGS는 DCDN과 관련된 차량이 집 차고에 주차되는 동안에는 정적일 수 있지만, 차량이 거리를 따라 이동하면서 위치 또는 콘텍스트에 근거하여 DCDN으로 근처 차량을 더하거나 DCDN에서 근처 차량을 빼기 때문에 동적이게 된다.
복수의 실시예에서, VGS는 Wi-Fi 장치 정보, GPS 위치 또는 삼각 측량 정보 중 하나 또는 그 조합으로 DCDN에서 정의될 수 있다. 예를 들어, VGS용 위치는 복수의 Wi-Fi MAC ID(Wi-Fi media access control identifier), 복수의 모바일 통신 타워 ID, GPS 위치 또는 삼각 측량 정보 중 하나 또는 둘다, 또는 그 조합과 관련될 수 있다. MAC ID가 VGS용 위치 정보로 사용되는 실시예에서, MAC ID와 관련된 Wi-Fi 장치가 모바일인 경우, VGS는 동적 경계선을 가질 것이다.
Wi-Fi 소스(source)가 널리 퍼져있고 범위, 크기, 가용성 면에서 적절하기 때문에, VGS 경계선을 표시하기 위해 Wi-Fi 신호를 사용하는 것은 편리할 수 있다. 그러나, 특히, Wi-Fi 신호가 VGS의 경계선을 식별하기 위해 사용될 수 있을지라도, 복수의 실시예에서, Wi-Fi 네트워크 자체는 DCDN 내 통신을 위해 사용되지 않는다.
앞서 몬테마르 도서관 유추에 관하여 전술한 바와 같이, DCDN은 복수의 VGS를 정의할 수 있다. 다른 예로, DCDN은 산타 클라라 대학을 졸업한 사용자와 관련된 연산 장치를 포함할 수 있고, 관련된 VGS는 산타 클라라 대학의 졸업 콘텍스트에 근거하여 이러한 모든 장치를 포함한다. 그러나, DCDN은 졸업 연도에 의해 세분될 수 있고, 따라서 졸업 연도 콘텍스트 정보는 또한 매 졸업 연도마다 하나의 VGS를 정의하는 것에 더하여 산타 클라라 대학의 콘텍스트 정보와 관련된 더 큰 VGS를 정의한다. VGS를 정의하는 것과 관련된 정보는 하나의 DCDN에서 다른 DCDN으로 복사될 수 있다.
앞서 소개한 실시예에서와 같이, DCDN(및 이와 관련된 VGS)은 콘텍스트와 관련된 룰 세트에 의해 정의된다. 콘텍스트의 다양한 예시는 위치, 이용 가능한 네트워크, 현재 상태(예를 들어, 이동중 또는 비이동중), 자격(capability), 모델 이름 또는 숫자, 장치 ID, 설정(예를 들어, 아이들 장치의 지표, “접촉 금지” 설정, 또는 배터리 바닥 상태 잠금)과 같은 모바일 장치(180)와 관련된 콘텍스트를 포함한다. 콘텍스트의 다양한 예시는 인구학적 정보(예를 들어, 생년월일, 거주 도시, 고용주, 소득 정도, 졸업 학교 및 의료 정보), 지리적 영역 내 존재 빈도, 관심사, 현재 활동 및 멤버십과 같은 모바일 장치(180)의 사용자와 관련된 콘텍스트를 포함한다. DCDN은 단기(예를 들어, 시간, 분, 초, 또는 더 짧은 기간) 또는 장기(일, 주, 월, 년, 또는 더 긴 기간)로 수립될 수 있다.
따라서, 정의된 DCDN은 소수의 또는 다양한 허가된 사용자 또는 모바일 장치(180)를 포함할 수 있다. 소수의 비제한적인 실시예에 의하면, DCDN은 다음을 포함할 수 있다; 회의실 안에 존재하는 일부 또는 모든 모바일 장치(180); 내년 언젠가 회의실에 존재할 일부 또는 모든 모바일 장치(180); 회의실 내 현재 존재하는 모든 나머지 연산 장치(110)와 내년 언젠가 회의실 내에 존재할 일부 또는 모든 모바일 장치(180); 핵심 가족 유닛(core family unit)의 멤버와 관련된 일부 또는 모든 모바일 장치(180); 확장된 가족(extended family)의 멤버와 관련된 일부 또는 모든 모바일 장치(180); 거주지에 있는 모든 나머지 연산 장치(110)와 일부 또는 모든 모바일 장치(180). 더 많은 예시에 대해서는 후술하도록 한다.
DCDN은 멤버십용 적격성을 정의하고 또한 VGS를 정의한다. 모든 자격을 갖춘 모바일 장치(180) (또는 자격을 갖춘 사용자와 관련된 모바일 장치(180))는 DCDN에 연결될 수 없거나 DCDN으로부터 배제될 수 있다. DCDN에 성공적으로 연결된 모바일 장치(180)는 DCDN 내 연결된 모바일 장치(180)의 가상 홀의 멤버가 된다. 가상 홀은 또한 아래의 예시에서 설명되는 바와 같이, 복수의 장비(190)를 포함할 수 있다. 자격을 갖춘 또는 연결된 멤버에 관한 정보는 하나의 가상 홀에서 다른 하나로 복사될 수 있다. 가상 홀의 멤버는 가상 홀에 할당된 데이터 채널(또는 관련된 DCDN에 할당된 데이터 채널) 상에서 서로 간에 정보를 교환할 수 있다. 데이터 채널에 대한 엑세스는 멤버 장치로 제공된다.
도 1b를 참조하면, 어플리케이션(185)은 요청하는 모바일 장치(180)로부터 요청을 수신하여 DCDN에 연결될 수 있다(그리고 그렇게 함으로써 DCDN 내 가상 홀의 멤버가 된다). 복수의 실시예에서, 요청은 가상 표지의 제출에 의해 만들어질 수 있다. 요청이 승인되면(예를 들어, 모바일 장치(180) 또는 관련된 사용자가 DCDN을 정의하는 룰을 충족시키고 배제되지 않는 경우), 모바일 장치(180)는 가상 홀의 멤버로서 어플리케이션(185) 또는 DCDNS(160)에 의해 태그된다. 예를 들면, 태그는 모바일 장치(180)로 제공되는 열쇠 또는 데이터 저장소(예를 들어, 도 1a의 저장소(140) 또는 DCDNS(160), 동기화 게이트웨이(165), 객체 서버(170), 또는 어플리케이션 서버(175)의 메모리)로의 엔트리(entry)일 수 있다. 일단 멤버인 경우, 모바일 장치(180)는 가상 홀 내 이용 가능한 정보로의 엑세스를 제공받고, 또한 가상 홀 내 정보를 변경하기 위한 엑세스를 제공받는다. 동기화 게이트웨이(165)는 가상 홀 내 이용 가능한 정보의 다운로드를 모바일 장치(180)에 제공하고, 모바일 장치(180)와 관련된 정보를 가상 홀 내 다른 멤버에게 제공할 수 있다. 일반적으로, 가상 홀 내 정보에 대한 변경은 동기화 게이트웨이(165)에 의해 가상 홀의 멤버 각각에게 동기화되고, 가상 홀은 새로운 멤버 모바일 장치(180)를 포함하게 된다.
모바일 장치(180)를 포함하는 가상 홀의 멤버 이외에도, 가상 홀의 멤버는 복수의 장비(190)를 포함할 수 있고, 이는 아래의 예시로부터 분명해질 것이다. 따라서, 앞서 사용된 “멤버 장치”라는 용어는 가상 홀의 멤버인 모바일 장치(180) 및 장비(190) 둘다에 적용된다.
정보는 P2P 프로토콜을 통해서 가상 홀의 멤버 장치 간에 직접 동기화될 수 있다. 추가적으로 또는 대안으로, 멤버 장치로부터 복수의 DCDNS(160), 객체 서버(170), 또는 어플리케이션 서버(175)로 정보를 추가하여 추가된 정보로 다른 멤버 장치를 동기화하는 것에 의해 가상 홀의 멤버 장치 간에 정보가 동기화될 수 있다.
개요 수준에서 DCDN은 가상의 정보 디렉토리이다. DCDN 내 객체(예를 들어, 객체 서버(170)에 저장된 객체)는 예를 들어, 게시판, 웹사이트용 북마크(bookmark), 메뉴, 미디어 콘텐츠 형태(예를 들어, 문서, 비디오, 그림, 음성 파일, 냄새 파일(scent file), 점자(Braille) 또는 다른 터치 장치 파일 등), 코멘트 책(comment book), 및 가상 등록 데스크(virtual registration desk)와 같은 정보를 포함한다. 다수의 다른 객체는 특정 DCDN용으로 추가적으로 또는 대안으로 실행될 수 있고, 다른 객체는 다른 DCDN 내에 포함될 수 있다. 객체는 DCDN 간 복사되거나 가상 홀 간 복사될 수 있다. 다른 객체 서버(170)는 채팅(chat), 비디오 회의, 화이트보드, 발표(announcement), 업데이트, 큐(queue), 티켓팅(ticketing), 연락처 교환(contact exchange), 및 기타와 같이 협력 객체(collaboration object)를 호스트(host)할 수 있다.
전술한 바와 같이, 복수의 실시예에서, 가상 홀의 VGS는 위치 정보에 의한 것이라기 보다는 가상 홀의 영구 멤버(permanent members)의 콘텍스트 정보에 의해 정의될 수 있다. 이러한 방식으로, 지역 경계선을 정의하는 것 없이 급격한 정보 교환이 있을 수 있고, GPS 위치자(locator)를 실행시키는 것 없이 급격한 정보 교환이 있을 수 있다. 예를 들어, 북 클럽 가상 홀(Book Club Virtual Hall)의 VGS는 위치에 구속받지 않는 영구 멤버 각각을 위한 장치 또는 사용자 ID와 함께 “책” 및 “미스테리(mystery)”의 콘텍스트형 정보에 의해 정의될 수 있다. 복수의 실시예에서, “책” 및 “미스테리”를 포함하는 콘텍스트형 정보와 관련된 연산 장치 또는 사용자가 나중에 식별되면, 연산 장치 또는 사용자는 가상 홀의 멤버가 되기 위해 초대되거나 위치와 상관 없이 가상 홀의 멤버로 자동으로 포함될 수 있다. 다른 실시예에서, “책” 및 “미스테리”를 포함하는 콘텍스트형 정보와 관련된 연산 장치가 가상 홀의 기존 멤버에 근접하여 식별되는 경우, 연산 장치는 가상 홀의 멤버가 되기 위해 초대되거나 가상 홀의 멤버로 자동으로 포함될 수 있다.
복수의 실시예에서, 다른 멤버는 가상 홀의 정보에 엑세스하기 위해 다른 권리를 가질 수 있다는 점을 주목해야한다.
복수의 실시예에서, 위치 기반 VGS를 갖춘 DCDN 내 가상 홀은, VGS가 멤버십용 적격성 룰을 나타내기 때문에 멤버가 VGS를 떠날 때조차 멤버에게 개방된 상태로 있을 수 있으나, 이러한 룰이 대칭적으로 멤버십을 종료시킬 필요는 없다. 예를 들어, 일단 연산 장치(또는 관련 사용자)가 회사 기반 DCDN의 멤버가 되기 위한 룰을 충족시킨다면, 연산 장치는 몇 시간 후 또는 연산 장치가 돌아다니는 동안 멤버로 남아 있을 수 있다. 다른 예로, 전술한 북 클럽 가상 홀의 “책” 및 “미스테리” 콘텍스트형 식별자에 관하여, 사용자가 “책”을 삭제하고 “영화”를 추가하거나 “미스테리”를 삭제하고 “서스펜스(suspense)”를 추가한다면, 사용자 또는 연산 장치는 여전히 DCDN용 룰에 따라 북 클럽 가상 홀의 멤버로 남아있을 수 있다. 설령 사용자가 가상 홀의 멤버로 표시될 수 있을지라도, 이러한 표시는 사용자가 DCDN용 룰을 충족시키고, 사용자와 관련된 장치가 성공적으로 가상 홀의 멤버가 되었다는 점을 가리키는 단축 표현(shorthand notation)이라는 점을 여기에서 주목해야한다.
가상 홀은 더 큰 가상 홀을 생성하기 위해 결합되거나 더 작은 가상 홀을 생성하기 위해 분할될 수 있다. 복수의 실시예에서, 가상 홀은 정보에 대한 제한된 엑세스를 갖춘 별개의 영역 또는 방을 가질 수 있고, 여기에서 멤버 장치는 멤버 장치의 보안 레벨, 신원(identity), 관련 사용자 신원, 또는 관련 사용자 선호도에 근거하여 별개의 영역 또는 방에 대한 엑세스를 제공받는다. 따라서, 복수의 실시예에서, 가상 홀 내 멤버 장치가 이용 가능한 정보는 멤버의 보안 레벨, 신원, 관련 사용자 신원 또는 관련 사용자 선호도에 근거하여 맞춤화된다.
지리적 위치가 DCDN의 VGS의 일부일 때, 어플리케이션(185)은 가상 홀 멤버 장치(예를 들어, 모바일 장치(180) 또는 장비(190)) 또는 DCDN 멤버십-자격을 갖춘 장치의 위치를 결정할 수 있다. 예를 들어, 어플리케이션(185)은 멤버 장치 또는 멤버-자격을 갖춘 장치가 그 GPS 칩을 활성화시켜서 GPS 위치 데이터를 획득하고, 어플리케이션(185)으로 GPS 위치 데이터를 제공하도록 촉발시킬 수 있다. 멤버 장치가 주변을 이동하기 때문에, 그 위치 정보는 어플리케이션(185)으로 업데이트되고 다른 멤버 장치와 동기화된다. 멤버 장치가 이동하는지를 결정하는 메커니즘(mechanism)은 스테핑 모션(stepping motion)을 감지하기 위한 가속도계의 사용, 신호 강도의 증가 또는 감소를 감지하기 위한 무선 신호 강도 센서(radio signal strength sensor), 지오-로케이터(geo-locator) 또는 셀룰러 타워(cellular tower) 간 삼각 측량, 비콘(beacon), 또는 GPS 신호 감지를 포함하되, 이에 한정되는 것은 아니다.
모바일 장치(180)(및 복수의 실시예에서의 장비(190))가 주변을 이동하기 때문에, DCDNS(160)는, 모바일 장치(180)(또는 장비(190))의 콘텍스트 또는 모바일 장치(180)(또는 장비(190))의 사용자의 콘텍스트를 통해 모바일 장치(180)(또는 장비(190))가 멤버십-자격을 갖춘 DCDN을 식별한다. DCDNS(160)은 모바일 장치(180)(또는 장비(190))가 자격을 갖춘 이용가능한 DCDN 리스트를 제공하고, 모바일 장치(180)(또는 장비(190))는 (예를 들어, 사용자 선호도 설정을 통해) 이용가능한 DCDN에 연결될지 여부를 선택하거나, 모바일 장치(180)(또는 장비(190))와 관련된 사용자는 이용가능한 DCDN에 연결될지 여부를 선택한다.
복수의 실시예에서, 모바일 장치(180)(또는 장비(190))는 DCDN의 룰이 충족될 때, 태그될 수 있고, DCDN의 룰이 더 이상 충족되지 않을 때 태그될 수 없다. 예를 들어, 모바일 장치(180)가 지리적 위치 기반 VGS의 경계 내에서 이동하기 때문에 멤버 자격을 갖춘 것으로 태그될 수 있다; 그리고 모바일 장치(180)가 지리적 위치 기반 VGS의 경계 밖으로 이동할 때 멤버 자격을 갖추지 못한 것으로 태그되거나 멤버 자격을 갖춘 것으로 태그되지 못할 수 있다. 다른 실시예에서, 특정 예시 대학을 사용자가 졸업하자마자, 관련 사용자의 모바일 장치(180) 각각은 상기 예시 대학의 새로운 졸업생용 DCDN의 멤버 자격을 갖춘 것으로 태그될 수 있다; 그러나, 2년 후, 사용자는 DCDN의 콘텍스트 룰에 따라 새로운 졸업자가 더 이상 아니고, 사용자의 모바일 장치(180) 각각은 해당 DCDN용 멤버 자격을 갖추지 못한 것으로 태그된다.
새로운 DCDN은 후술하는 바와 같이, 모바일 장치(180)(또는 장비(190))를 통해 생성될 수 있다.
가상 표지는 앞서 간단하게 소개되었다. 가상 표지는 DCDN 또는 가상 홀을 위해 정의될 수 있다. 가상 표지는 예를 들어, 바코드, QR(quick response) 코드, 아이콘, 그림, 사진, 비디오, 소리, 냄새, 생체 입력(예를 들어, 개인적인 가상 홀에 엑세스하기 위한 것으로, 지문, 눈 스캔(eye scan), 화학적 프로파일(chemical profile), 심장박동 프로파일(heartbeat profile), DNA 프로파일 또는 성문), 전화 번호, 다른 번호, 다른 가상 표지 또는 그 조합과 같은 기정의된 상징을 포함한다. 이러한 상징은 연산 장치의 판독 장치 또는 연산 장치에 결합된 판독 장치에 의해 판독되고, DCDNS로의 전송에 유용한 형태로 전환된다. 가상 표지는 예를 들어, 또한 웹사이트 링크, 초대장(invitation), SMS(short message service) 메시지, 또는 텍스트 메시지(text message)와 같은 전자 지표를 더 포함하되, 전자 지표의 선택은 DCDN 또는 가상 홀로의 진입을 개시할 수 있다(예를 들어, 웹사이트 링크 선택, 메시지 열기, 또는 메시지에 답하기). 가상 표지는 예를 들어, MAC ID, 신호 강도 또는 사용자 선호도에 근거한 MAC ID 우선순위 리스트, 통신 타워 ID 리스트, 통신 타워 ID 우선순위 리스트, 적외선 장치 ID, RF 장치 ID, 다른 신호 서명(signal signature)또는 그 조합과 같은 신호 서명을 더 포함한다. 신호 서명은 현재의 환경 내 연산 장치에 의해 감지되고 DCDNS로의 전송에 유용한 형태로 변환된다.
상징 조합 또는 신호 서명 조합이 가상 표지용으로 사용되는 곳에서, 연산 장치는 DCDNS로 조합된 정보를 송신하기에 앞서 복수의 상징 또는 신호 서명 정보를 조합할 수 있다. 그러나, 연산 장치는 개별 상징 또는 신호 서명과 관련된 정보를 별도로 송신할 수 있다.
가상 표지는 DCDN 또는 가상 홀 내 멤버십을 처음으로 요청시 사용하기 위해 정의될 수 있다. 대안으로, 가상 표지는 가상 홀의 멤버에 의한 사용을 위해 정의될 수 있다. 전술한 바와 같이, DCDNS(160), 동기화 게이트웨이(165), 객체 서버(170), 어플리케이션 서버(175), 모바일 장치(180) 및 장비(190)는 모든 연산 장치(110)의 예시이거나, 복수의 연산 장치(110)에서 실행된다. 연산 장치는 도 2에서 일반적으로 설명하도록 한다.
도 2는 프로세서(210), 메모리(220), 입력/출력 인터페이스(230), 및 통신 인터페이스(240)를 포함하는 연산 장치(200)의 일 예를 설명한다. 버스(250)는 연산 장치(200)의 둘 이상의 구성 요소 간 통신 경로를 제공한다. 도시된 구성 요소는 설명을 통해 제공되고 제한되지 않는다. 연산 장치(200)는 추가 또는 더 적은 구성요소, 또는 복수의 동일한 구성요소를 가질 수 있다.
프로세서(210)는 관련 로직(logic)과 함께 복수의 프로세서, 마이크로프로세서, 마이크로컨트롤러(microcontroller), ASIC(application-specific integrated circuits), 및/또는 FPGA(field-programmable gate array)를 나타낸다.
메모리(220)는 정보를 저장하기 위한 휘발성 및 비휘발성 메모리 중 하나 또는 둘다를 나타낸다. 메모리는 예를 들어, EPROM, EEPROM, RAM, 및 플래시 메모리 장치, 내부 하드 드라이브, 제거가능한 하드 드라이브, 광자기(magneto-optical), CD, DVD, 및 블루레이 디스크(Blu-ray discs)와 같은 디스크, 메모리 스틱 등을 포함한다.
본 발명의 네트워크 환경(150)의 일부(예를 들어, DCDNS(160), 동기화 게이트웨이(165), 객체 서버(170) 및 어플리케이션 서버(175) 뿐만아니라 모바일 장치(180), 장비(190), 어플리케이션(185) 중 일부 또는 전부)가 연산 장치(200)의 메모리(220) 내 컴퓨터 판독가능한 명령으로 실행될 수 있고, 이는 프로세서(210)에 의해 실행될 수 있다.
입력/출력 인터페이스(230)는 연산 장치(200)의 내부 구성 요소에서 외부 구성 요소로 인터페이스를 함께 제공하는 전기 구성 요소 및 광 코드(optical code)를 나타낸다. 예시는 관련 프로그래밍(programming)과 함께 드라이버 집적 회로(driver integrated circuit)를 포함한다.
통신 인터페이스(240)는 연산 장치(200)의 내부 구성요소에서 외부 네트워크(예를 들어, 네트워크(120) 또는 네트워크(도 1a의 125) 또는 네트워크(도 1b의 155))로 인터페이스를 함께 제공하는 전기 구성요소 및 광 코드를 나타낸다.
버스(250)는 연산 장치(200) 내 구성요소 간 복수의 인터페이스를 나타낸다. 예를 들어, 버스(250)는, 프로세서(210) 및 연산 장치(200)의 복수의 다른 구성요소 사이의 공유된 연결 뿐만 아니라 프로세서(210) 및 메모리(220) 사이의 전용 연결을 포함할 수 있다.
본 발명의 실시예는 다양한 컴퓨터 실행 동작(computer-implemented operation)을 수행하기 위한 컴퓨터 코드를 가지는 비일시적인 컴퓨터 판독가능한 저장 매체(non-transitory computer-readable storage medium)에 관한 것이다. “컴퓨터 판독가능한 저장 매체”라는 용어는 여기에서 설명되는 동작, 방법, 기술을 수행하기 위한 연속적인 명령 또는 컴퓨터 코드를 저장 또는 인코딩(encoding)할 수 있는 매체를 포함하기 위해 사용된다. 매체 및 컴퓨터 코드는 본 발명의 실시예의 목적을 위해 특별히 설계되어 구성되거나, 컴퓨터 소프트웨어 분야의 당업자에게 잘 알려져있고 이용가능한 것일 수 있다. 컴퓨터 판독가능한 저장 매체는 예를 들어, 하드 디스크, 플로피 디스크(floppy disk), 및 자기 테이프(magnetic tape)와 같은 자기 매체(magnetic media); CD-ROM 및 홀로그램 장치와 같은 광 매체; 광 디스크와 같은 광자기 매체; 및 ASICs, PLDs(programmable logic devices), ROM, RAM 장치와 같은 프로그램 코드를 특별히 저장 및 실행하는 하드웨어 장치를 포함하지만, 이에 한정되는 것은 아니다.
컴퓨터 코드는 예를 들어, 컴파일러(compiler)에 의해 생산되는 기계 코드(machine code), 및 해석기(interpreter) 또는 컴파일러를 이용하여 컴퓨터에 의해 실행되는 더 높은 레벨의 코드를 포함하는 파일을 포함한다. 예를 들어, 본 발명의 실시예는 자바(Java), C++, 또는 다른 객체 지향 프로그래밍 언어 및 개발 도구를 이용하여 실행될 수 있다. 컴퓨터 코드의 추가 예시는 암호화된 코드 및 압축된 코드를 포함한다. 게다가, 본 발명의 실시예는 컴퓨터 프로그램 제품으로 다운로드될 수 있고, 컴퓨터 프로그램 제품은 전송 채널을 통해 원격 컴퓨터(예를 들어, 서버 컴퓨터)에서 요청하는 컴퓨터(예를 들어, 클라이언트 컴퓨터 또는 다른 서버 컴퓨터)로 전송될 수 있다. 본 발명의 다른 실시예는 기계-실행가능한 소프트웨어 명령(machine-executable software instruction) 대신에 또는 그 조합으로 하드웨어에 내장된 회로에서 실행될 수 있다.
일반적으로 네트워크 환경(100), 그리고 보다 구체적으로 네트워크 환경(150)을 설명한바, 다음에는 본 발명에 따른 다양한 실시예를 설명하도록 한다.
<A 환경>
영역 연락처 정보(area contact information)에 대한 엑세스를 얻기 위한 현재의 기술은, 특히, 예를 들어, 사용자의 장치가 인터넷에 일시적으로 연결되지 않을 때, 지루해진다. 로컬 연락처 정보(local contact information)를 얻는 것은 일반적으로 다른 사람 또는 인터넷으로부터 연락처 정보를 검색하거나 요청하는 것이 필요하다. 또한, 영역 연락처는 해당 영역에 적절하고 특정 지리적 좌표가 아니기 때문에, 검색하기에 적절한 영역을 식별하는 것은 또한 어려운 일이다. A 환경은 장치의 위치 영역에 근거하여 자체적으로 연락처 정보를 사용자 친화적이고 효율적인 방법으로 찾을 수 있도록 할 뿐만 아니라 장치가 오프라인이 되었을 때 조차 이러한 연락처가 그룹으로 모바일 장치에 신중하고 안전하게 나타나도록 한다.
복수의 실시예에서, 본 발명의 컨셉은 예를 들어, 사용자가 DCDN의 VGS로 정의된 일부 경계선(예를 들어, 공항, 도시 중심으로부터 특정 마일 또는 도시의 일 영역) 내에 도착할 때 유용하다. DCDN의 룰은 특정 우편 번호(zip code)를 가지는 모든 위치, 4개의 모서리 지도 좌표(four-corner map coordinates) 내의 모든 위치, 도시 중심의 10 마일 반경 내의 모든 위치 및 기타와 같은, 경계선에 따라 VGS를 정의할 수 있다. VGS에 진입하자마자, 가상 표지는 DCDNS로 송신되고, 이용 가능한 DCDN 리스트를 제공하는 것에 의해 응답하거나 이용가능한 DCDN 내 가상 홀에 자동으로 엑세스를 수여하는 것에 의해 응답한다. 이러한 가상 홀은 DCDNS(160)에 의해 정의되거나 영역 내 사람에 의해 정의되는 적절한 영역 연락처 디렉토리를 포함하되, “적절한”은 사용자 설정을 통해 사람에 의해 정의된다. 가상 홀의 적절한 연락처는 사용자 연산 장치 상의 전화 디렉토리 어플리케이션 내 가상 홀 디렉토리로 자동으로 로딩될 수 있다. 그리고 나서, 가상 홀 디렉토리는 연산 장치가 경계선을 떠날 때 사람의 연산 장치로부터 삭제될 수 있다(또는, 가상 홀 디렉토리를 삭제하기 위한 기회는 사람의 연산 장치가 경계선을 떠날 때 제공된다). 그러나 가상 홀 내 멤버십이 연산 장치가 경계선을 떠날 때 반드시 만료되는 것은 아니다.
다른 실시예에서, 연락처는 로컬 사무소 Wi-Fi(예를 들어, 로컬 사무소 가상 홀의 VGS를 정의)로 제한될 수 있다; 사용자의 연산 장치가 특정 Wi-Fi 지문(로컬 사무소 가상 홀의 가상 표지)을 감지할 때, 공적으로 직면하는 연락처(public facing contacts) 및 다른 정보(예를 들어, 가상 홀의 멤버 및 객체)는 사용자의 연산 장치에서 이용가능할 것이다.
A 환경의 복수의 실시예에서, 가상 홀 디렉토리는 긴급 연락처 정보 또는 회사 연락처 및 웹사이트를 포함한다. 복수의 실시예에서, 가상 홀 디렉토리는 로컬 모바일 기반 PABX(private automatic branch exchange) 또는 메시징 시스템(messaging system)의 생성을 위해 동적으로 준비한다.
사용자는 가상 홀 디렉토리 내 연락처에 변화를 만들 수 있고, 변화는 다른 사용자의 연산 장치 내 데이터베이스 및 디렉토리와 동기화된다. 예를 들어, 사용자는 디렉토리 내 회사에 대한 평가(rating)를 제공할 수 있고, 이는 디렉토리들에 동기화된다.
도 3은 순서도를 통해 A 환경을 보다 상세하게 서술하고, 디렉토리 어플리케이션(“모바일 디렉토리 앱(Mobile Directory App)”) 및 디렉토리 서버(“인터넷 기반 디렉토리 서버(Internet Based Directory Server)” 또는 IDS) 안 및 그 사이의 활동이 도시된다.
모바일 디렉토리 앱이 위치 변화(예를 들어, GPS 좌표의 변화 또는 삼각 측량 기술을 이용하여 식별된 변화)가 있었다는 것을 감지할 때(310), 새로운 위치(예를 들어, 가상 표지)는 IDS로 송신된다(315). 또는, 모바일 디렉토리 앱은 Wi-Fi 지문(예를 들어, Wi-Fi 신호의 수, Wi-Fi 신호의 강도, Wi-Fi ID, 또는 다른 Wi-Fi 소스 대비 Wi-Fi 신호의 상대적 강도)의 변화가 있었다는 점을 감지하고(310), 새로운 Wi-Fi 지문(예를 들어, 가상 표지)이 IDS로 송신된다(315). 복수의 실시예에서, Wi-Fi 지문 대신에, 다른 신호 서명이 사용될 수 있다.
IDS는 위치 또는 신호 정보를 수신하고(320), 이용 가능한 공적 Wi-Fi 네트워크, 주소, 교외, 도시, 주, 국가, 대륙, 및 기타 등등과 같은 추가 위치 특성(attribute)을 도출한다(325).
IDS는 위치와 관련된 디렉토리 또는 연락처 그룹(예를 들어, 가상 홀)을 검색한다(330). IDS는 그룹 태그(group tag)와 함께 연락처를 저장할 수 있고, 그룹 태그는 위치와 관련된다. IDS는 위치와 관련된 위치 특성을 포함하는 디렉토리를 저장할 수 있다. 복수의 실시예에서, 디렉토리는 로컬 Wi-Fi 핫스팟(local Wi-Fi hotspot)과 관련될 수 있다. 위치 특성은 적절한 디렉토리(예를 들어, 가상 홀)를 찾기 위해 저장된 위치와 매칭되고, 태그는 디렉토리와 관련된 연락처를 검색하기 위해 사용된다. IDS는 연산 장치를 동기화하기 위해 모바일 디렉토리 앱으로 디렉토리 이름(예를 들어, 가상 홀 이름)과 함께 검색된 연락처를 송신한다(335).
모바일 디렉토리 앱은 연락처 정보(예를 들어, 335에서 IDS에 의해 송신된 로컬 연락처)를 수신하고(340), 사용자가 보거나, 추가하거나, 편집하거나 삭제하도록 연락처 정보를 이용가능하게 한다(345). 사용자가 변화를 만든다면, 변화는 IDS로 송신되고(350), IDS는 다른 사용자의 연산 장치 내 디렉토리(즉, 가상 홀의 다른 멤버) 뿐만 아니라 스스로를 동기화한다(355).
복수의 실시예에서, 모바일 디렉토리 앱은 주기적으로, 이벤트 발생시 또는 사용자 요청이 있을 때마다 위치 또는 신호 서명 변화를 확인한다. 만약 이러한 변화가 감지되면, 도 3에서 서술된 기술이 개시된다.
복수의 실시예에서, 모바일 디렉토리 앱은 IDS로 새로운 위치를 송신할 때(315), IDS는 디렉토리(예를 들어, 가상 홀)가 더 이상 적절하지 않은지(예를 들어, 새로운 위치로 적절하지 않은지)를 식별하고, 다음 동기화(335 또는 355)에서 부적절한 디렉토리를 제거한다.
동기화는 네트워크 대역폭 소모를 저감하도록 최적화될 수 있다. 또한 복수의 실시예에서, IDS에 의해 제공되는 정보(예를 들어, 335 또는 355)는 지오-태깅 정보(geo-tagging information) 를 생략할 수 있고, 이에 따라 네트워크 대역폭 소모를 더 저감할 수 있다.
도 4는 순서도를 통해 A 환경을 더 상세하게 설명하는 것으로, 위치 콘텍스트 기반 디렉토리를 생성하는 것을 설명한다.
사용자는 모바일 디렉토리 앱을 이용하여 새로운 공적 디렉토리(가상 홀)을 생성하고(410), 특정 Wi-Fi 신호, Wi-Fi 신호 그룹, 다른 유형의 신호, GPS 위치, 관련 반경, 이웃, 교외, 도시, 및 기타 등등을 갖춘 GPS 위치와 같은 디렉토리를 결속하기 위한 위치 특성을 선택한다(415).
사용자는 디렉토리에 연락처 기록을 추가한다(420). 또는, 연락처 기록의 추가는 존재 관리 필터(presence management filter)에 의해 자동으로 수행될 수 있다. 모바일 디렉토리 앱은 IDS에 디렉토리 및 연락처 기록을 제공하고(425), 디렉토리 서버에 디렉토리 및 위치 정보를 첨부하고(430), 디렉토리에 연락처 기록 및 디렉토리 태그(예를 들어, 가상 홀 식별자)를 추가한다(435). 사용자는, IDS가 수신된 가상 표지 버전을 디렉토리용 가상 홀 식별자와 연관시키도록, 상징 또는 다른 가상 표지를 디렉토리와 연관시킬 수 있다.
도 5는 IDS의 테이블 구조를 통해 A 환경을 보다 구체적으로 설명하고자 하고, 각 테이블에는 디렉토리 및 위치 정보가 저장될 수 있다. 테이블 구조는 RDBMS(relational database management system) 내 구조로써 비제한적인 설명을 통해 제공된다; 그러나, 다른 데이터베이스 시스템이 대신 사용될 수 있다.
테이블(510)은 고유한 디렉토리(가상 홀) 리스트를 포함한다. 복수의 위치가 하나의 디렉토리를 공유하거나 복수의 디렉토리가 하나의 위치에 적용될 수 있다. 모바일 디렉토리 앱은 로컬 그룹 메시징(local group messaging) 및 전화(calling)를 제공할 수 있다; 따라서, 디렉토리는 예를 들어, 메시징, VoIP를 통한 전화 또는 비디오 회의(예를 들어, 가상 홀 또는 DCDN 데이터 채널을 이용한 회의) 용으로 사용될 수 있다. 디렉토리는 인터넷 디렉토리 서버를 통해 일 위치에서 검색될 수 있는 객체, 데이터 또는 객체로의 링크(links to objects)를 포함할 수 있다. 이러한 객체는 예를 들어, 파일, 사진, 위치 지도, 웹사이트 링크 또는 구성 파일(configuration files)일 수 있다.
테이블(520)은 다른 위치 특성을 갖춘 디렉토리 연합(associations of directories)을 포함한다. 위치 특성은 Wi-Fi ID, 도시, 교외 또는 GPS 위치를 포함할 수 있으나, 이에 한정되는 것은 아니다. 디렉토리는 복수의 위치 특성을 포함할 수 있고, 이러한 위치 특성은 변경될 수 있고, 예를 들어, 유효 범위(coverage area)를 증가 또는 감소시킬 수 있다. 따라서 위치 특성은 위치 좌표와 다를 수 있다. 테이블(520)은 멤버 연산 장치 상에서 로딩되는 디렉토리를 찾기 위해 사용된다.
테이블(530)은 디렉토리용 연락처 기록을 포함한다. 테이블은 정규화될 수 있다. 연락처 기록은 이름, 조직, 목적, 전화번호, 이메일 또는 웹사이트와 같은 엔트리(entry)를 포함할 수 있다. 연락처 기록은 도 5에 도시된 것과 다른 포맷(format)을 가질 수 있다.
테이블(540)은 위치 특성을 갖춘 멤버 연산 장치에 대한 설명을 포함한다.
테이블(550)은 사용자의 연산 장치 위치 특성과 긍정적으로 비교되는 디렉토리를 포함한다.
테이블(560)은 멤버 연산 장치와 동기화되는 기록을 포함한다.
추가 테이블(미도시)은 추가 특징을 위해 사용될 수 있고, 예를 들어, 보안, 사용자, 및 디렉토리 소유권을 기록하기 위해 사용될 수 있다.
A 환경의 변화로 인해, 어플리케이션은 일 위치에서 가상 EPABX(electronic private automatic branch exchange) 시스템과 같은 행위를 제공받을 수 있다. 가상 EPABX는 공통 특성 또는 'Wi-Fi 관련' 디렉토리를 가지는 일 위치에서의 사람들의 존재 패턴(pattern of presence)에 근거하여 사람들을 추가함으로써 자동으로 부각될 수 있다. 예를 들어, 사용자의 연산 장치가 (예를 들어, 신호 서명 히스토리에 의해 지시된 바와 같이) 적어도 3일 이상 일주일에 10시간 동안 일 위치에 존재한다면, 사용자의 연산 장치의 위치 정보는 해당 위치에서 사용되는 Wi-Fi 장치와 연관될 수 있다. 사용자의 연산 장치 및 적어도 3일 이상 일주일에 10시간 이상 동안 해당 위치에서 또한 존재하는 다른 사용자의 연산 장치는 해당 위치의 Wi-Fi 연관 디렉토리(가상 홀)의 멤버로 추가될 수 있다. 또한, Wi-Fi 연관 디렉토리는 Wi-Fi 연관 디렉토리 위치 정보 및 다른 디렉토리 내 연락처의 위치 정보와의 매칭을 토대로 증가될 수 있다.
연산 장치 위치는 에너지를 절약하기 위해, 주기적으로 스캐닝함으로써 감지될 수 있다. 스캔 히스토리(a history of scans)는 일 위치에서의 대략적인 지속 기간을 평가하거나 히스토리로부터 위치를 예측하기 위해 유지될 수 있다. 연산 장치는 특정 횟수 또는 특정 간격으로 스캔할 수 있고, 이에 따라, 서로 근접한 연산 장치의 위치 정보가 일정하게 나올 확률을 개선할 수 있다(즉, 개선된 매칭 능력을 제공할 수 있음).
<B 환경>
도 6은 순서도를 통해 B 환경을 상세하게 도시하고 있고, 연산 장치(예를 들어, 도 1b의 모바일 장치(180) 및 DCDNS(예를 들어, 도 1b의 DCDNS(160)) 간 통신을 설명하고 있다. 도 1b 및 도 6을 참조하면, 모바일 장치(180)가 일 위치로 진입할 때, 모바일 장치(180)의 모바일 디렉토리 앱은 모바일 장치(180)의 환경 변화(예를 들어, 신호 서명 변화, MAC 주소, Wi-Fi 지문, 무선 네트워크의 무선 서명(radio signature)의 변화, 위치 변화)를 감지하고(610), 새로운 환경 정보를 DCDNS(160)로 송신한되(615), DCDNS는 인터넷 내 클라우드 서버(cloud server)일 수 있다. DCDNS(160)는 환경 정보를 수신하고(620) 환경 정보 매칭을 위해 데이터베이스를 탐색한다(625). 또는, DCDNS(160)는 추가 환경 정보(예를 들어, 모바일 장치(180) 특정 정보, 또는 가상 홀, 디렉토리, 가상 룸(virtual room), 또는 모바일 디렉토리 앱과 연관된 다른 태그 정보와 같은 모바일 장치(180)에 특별히 할당된 특성)를 도출할 수 있고, 이 후 추가 환경 정보와 매칭되는 환경 정보용 데이터베이스를 탐색한다(625). 복수의 실시예에서, DCDNS(160)는 데이터 베이스를 탐색하고(625), 선호도, 사용자 크리덴셜(user credentials), 보안 레벨(security level)과 같은 특성을 찾기 위해 사용되는 사용자 특성을 대안으로 또는 추가적으로 수신한다(620). 어떤 경우에는, DCDNS(160)가 탐색(625)을 통해 DCDN을 식별한다. DCDNS(160)는 탐색(625)을 통해 발견된 DCDN을 환경 정보(예를 들어, 모바일 장치(180) 위치 정보, 연락처, 연락처 그룹, 선호도 또는 다른 사용자 정보와 연관된 콘텍스트형 네트워크와 같은 모바일 장치(180) 관련 정보)로 업데이트한다(630). DCDNS(160)는 그 후 DCDN의 가상 홀의 멤버로 모바일 장치(180)를 표시하고, 가상 홀 정보를 모바일 장치(180)에 제공하며(635), 해당 모바일 장치를 가상 홀의 멤버인 다른 모바일 장치(180)와 동기화시킨다.
모바일 장치(180)는 DCDNS(160)로부터 가상 홀 정보를 수신하고(640), 모바일 디렉토리 앱은 디스플레이(display)로 가상 홀 정보의 일부 또는 전부를 제공한다(645). 모바일 장치(180)의 사용자는 디렉토리 또는 정보를 편집할 수 있고, 모바일 디렉토리 앱은 이러한 편집을 DCDNS(160)와 동기화시킨다(650). 결국, DCDNS(160)는 해당 편집을 가상 홀의 다른 멤버에 동기화시킨다(655). 복수의 실시에에서, DCDNS(160)는 콘텍스트를 토대로 가상 홀의 특정 멤버에게 해당 편집을 동기화시킨다(655).
복수의 실시예에서, 동기화는 네트워크 대역폭 소모를 저감하기 위해 최적화된다. 예를 들어, 복수의 실시예에서, 동기화된 정보(예를 들어, 635, 655에서 동기화된 정보)는 적절한 데이터 또는 수정된 데이터로 제한된다.
DCDNS(160)는 다수의 DCDN의 데이터베이스를 포함할 수 있고, 각 DCDN은 다수의 사용자, 연산 장치, 객체 및 다른 정보와 관련된다. DCDNS(160)는 DCDN과 관련된 위치 특성 테이블을 포함할 수 있다; 위치 특성은 적절한 DCDN을 식별하기 위해 DCDN의 데이터베이스와 매치되고, 태그는 이러한 DCDN과 관련된 객체 또는 데이터를 검색하기 위해 사용된다.
도 7은 순서도를 통해 B 환경을 더 상세하게 도시하고 있으며, 모바일 디렉토리 앱을 통해 콘텍스트형 네트워크를 생성하는 것을 설명하고 있다. 사용자는 모바일 장치(180)에 새로운 DCDN을 생성한다(710). 사용자는 가능한 콘텍스트형 특성 리스트로부터 선택하되(715), DCDN은 해당 리스트로 제한된다. 사용자는 DCDN에 객체 및 정보를 추가하고(720), DCDN은 모바일 디렉토리 앱에 의해 DCDNS(160)에 동기화된다. DCDN은 DCDNS(160)에 의해 DCDN 데이터베이스에 대한 새로운 DCDN으로 태그와 함께 추가되고, 이 후 관련된 객체 및 데이터가 새로운 DCDN에 추가된다(735). 사용자는 상징 또는 다른 가상 표지를 DCDN과 관련시킬 수 있다.
도 8은 복수의 실시예에 따른 데이터 구조 설명을 통해 B 환경을 보다 상세하게 도시한다. 설령 NoSQL 구조로 도시되어 있을지라도, 다른 데이터 구조가 대안으로 사용될 수 있다. 추가적으로, 보안 또는 DCDN 소유권(DCDN ownership)과 같은 다른 특징을 위해 포함되는 다른 데이터가 있을 수 있다.
도 9는 블록도를 통해 B 환경을 보다 상세하게 도시한다. 본 실시예에서, 사람은 공항 내 뉴 에이지 커피 샵(New Age Coffee shop)에 들어갈 수 있다. 사람의 연산 장치의 앱(910)은 뉴 에이지 커피 샵용 가상 홀(930) 및 공항용 가상 홀을 포함하는, (예를 들어, 신호 서명에 기반한) 이용 가능한 가상 홀 리스트(920)를 제공한다. 사람은 가상 홀에 연결되기 위해 연산 장치를 선택할 수 있고(예를 들어, 앱 내 아이콘을 클릭), 수락되면, 연산 장치는 가상 홀의 멤버가 된다. 또는, 진입시, 사람의 연산 장치가 자동으로 위치를 토대로(예를 들어, 뉴 에이지 커피 Wi-Fi 장치의 MAC ID와 같은 신호 서명, 뉴 에이지 커피 샵 내 Wi-Fi 지문, 또는 GPS 또는 삼각 측량 위치 식별을 토대로 하되, 이는 연산 장치가 가상 홀(930)의 룰에 따라 뉴 에이지 커피 가상 홀(930)의 VGS 내에 있도록 한다) 뉴 에이지 커피 가상 홀(930)의 멤버가 된다.
멤버가 되자마자, 연산 장치는 예를 들어, 특정 물리적 위치용 메뉴(예를 들어, 콘텍스트형 메뉴 객체(940) 형태), 뉴 에이지 커피 샵 내 장비(950)와 관련된 객체, 다른 위치 리스트, 다운로드 가능한 소프트웨어 어플리케이션, 뉴 에이지 커피 가상 홀(930)의 다른 멤버에게 보이도록 자신의 연산 장치를 선택한 사람들 및 다른 정보와 같은, 뉴 에이지 커피 가상 홀(930)에서 이용 가능한 정보를 제공받는다. 반면에, 사람 또는 관련된 연산 장치에 대한 정보는 뉴 에이지 커피 가상 홀(930)의 다른 멤버와 동기화될 수 있다. 사람은 앱을 통해 수신된 객체(960)를 통해 직접 음료를 주문하기 위해 선택할 수 있고, 여기에서, 객체(960)는 음료 혼합 기계(장비)에 대한 정보이다. 음료 혼합 기계는 주문을 받고, 비용을 받고, 요청된 음료를 혼합하고, 음료가 준비되었음을 사람에게 알린다. 뉴 에이지 커피 샵 내에 있는 동안에, 사람의 연산 장치는 뉴 에이지 커피 가상 홀(930) 내 다른 멤버와 통신할 수 있다. 사람이 뉴 에이지 커피 샵(또는 보다 구체적으로, 뉴 에이지 커피 가상 홀(930)의 VGS)을 떠날 때, 뉴 에이지 커피 가상 홀(930) 내 관련 연산 장치의 멤버십은 만료된다. 또는, 일단 연산 장치가 뉴 에이지 커피 가상 홀(930)의 멤버가 되면, 연산 장치는 멤버로 남게 된다. 가상 홀의 수동 또는 자동 연결은 사용자 선호도 또는 대응하는 DCDN과 관련된 룰에 의존적일 수 있다. 따라서, 도 9의 실시예에서, 사람은 복수의 리스트된 가상 홀에 수동으로 연결될 수 있고, 사람의 연결 장치는 자동으로 다른 것과 연결될 수 있다. 또한 사람의 연산 장치는 동시에 복수의 가상홀에 있을 수 있고, 따라서, 도 9의 실시예에서, 연산 장치는 공항 가상 홀 및 뉴 에이지 커피 가상 홀(930) 둘다의 멤버가 될 수 있다.
가상 홀은 가상 홀 내에서 이용가능한 콘텍스트형 데이터를 사용하는 객체를 포함할 수 있다. 예를 들어, 뉴 에이지 커피 가상 홀(930)에서, 음료 혼합 기계는 예를 들어, “제가 당신을 위해 음료를 준비해도 괜찮을까요”라는 메시지를 보내고 음료 옵션 리스트를 제공하는 것과 같이, 장치 ID 콘텍스트형 정보를 토대로 사람의 연산 장치와의 상호 작용을 개시할 수 있다. 객체는 장치들에 동기화된 콘텍스트형 데이터의 파싱(parsing)을 통해 다른 객체의 기능을 촉진할 수 있다. 객체는 API, 커넥터(connector), 데이터 동기화 또는 다른 프로그래밍 기술을 통해 가상 홀의 데이터에 직접 또는 간접적으로 엑세스할 수 있다. 객체는 또한 네트워크 콘텍스트 데이터를 이용하여 제3 CRM(customer relationship management, 예를 들어, CRM(970)) 또는 ERP(enterprise resource planning) 시스템으로부터 데이터를 검색할 수 있다.
복수의 실시예에서, 연산 장치가 복수의 가상 홀 각각의 멤버가 될 자격을 갖추고 있을 때, 이용 가능한 가상 홀 리스트는 우선순위 방식으로 앱(910)에 의해 제공되고, 우선순위 방식은 위치에 대한 3차원 근접성(a three-dimensional proximity), 관련 VGS를 만드는 Wi-Fi 장치의 상대적 신호 강도(comparative signal strength), 다른 콘텍스트(예를 들어, 선호도)에 근거하여 우선순위를 선정하는 것이다.
<C 환경>
C 환경은 A 환경 또는 B 환경의 연장(extension)이다.
복수의 실시예에서, 동기화 게이트웨이(도 1b의 165)는 콘텍스트형 배포 보안 플래그(contextual distribution security flag) 또는 데이터 패킷 내 설정을 수신하고, 이에 따라 동기화를 제공한다. 동기화 게이트웨이(165)는 그리드형으로 분산된 게이트웨이(a grid of distributed gateways)일 수 있고, 몇몇 실시예에서 그리드형으로 분산된 게이트웨이는 다수의 서버 상에서 분산된 데이터베이스(distributed database)를 사용할 수 있다. 동기화 게이트웨이(165)는 사용자 콘텍스트 및 크리덴셜을 처리할 수 있고, 자동으로 또는 사용자 선택으로 이를 적절한 객체에 넘길 수 있다.
동기화 게이트웨이(165)는 가상 홀용 데이터 채널(예를 들어, 다음의 디렉토리 예시용 데이터 채널)을 생성한다. 디렉토리는 연락처 그룹에 기반할 수 있다. 연락처 그룹 내 연락처는 사전 확인된 크리덴셜을 가질 수 있다. 복수의 어플리케이션 및 멤버 연산 장치는 실시간 동기화(live synchronization)용 배포 콘텍스트(distribution context) 또는 보안 제한 콘텍스트(security restriction context)로 표시된 일반적인 데이터 패킷을 삽입하기 위해 데이터 채널에 대한 엑세스를 제공받는다. 배포 콘텍스트 및 보안 제한 콘텍스트는 사용자의 ID, 연산 장치, 어플리케이션, 서브-그룹(sub-groups) 또는 다른 ID를 포함할 수 있다. 데이터 패킷은 콘텍스트를 토대로 채널 내에 분산된 구성 또는 코드를 포함할 수 있다. 데이터 패킷은 자동 만료 또는 삭제를 포함할 수 있다. 데이터 패킷은 SOL 로우(row) 또는 NoSQL 키 밸류(key value) 기술, 또는 다른 기술에 의해 형성될 수 있다.
패킷화는 표준을 따르고, 표준에 대한 메타-태그(meta-tags)를 포함한다. NoSQL 데이터베이스는 연산 장치 간 데이터 동기화를 위해 사용될 수 있다. 버전 제어(version control) 또는 충돌 해소(conflict resolution)는 데이터 패킷에 내장될 수 있다.
디렉토리는 위치 또는 다른 콘텍스트 기준을 토대로 동적으로 형성될 수 있다. 디렉토리는 어플리케이션을 포함할 수 있고, 객체를 포함할 수 있다.
복수의 실시예에서, 각 어플리케이션 또는 각 장치용 데이터 채널의 서브-채널이 있을 수 있다. 개별 연산 장치 또는 연산 장치의 어플리케이션(예를 들어, 모바일 디렉토리 앱)은 부적절한 데이터를 필터링할 수 있다.
<D 환경>
D 환경의 실시예에서, 연산 장치는 가상 표지 상징을 캡쳐하고 상징 및 다른 콘텍스트 정보를 전송에 적절한 형태로 변환하는 단일 클릭 또는 조치가 취해진 다른 콘텍스트와 함께 위치 및/또는 확인된 신원(verified identity)을 제3 자에게 제공할 수 있다. 복수의 실시예에서, 가상 표지를 판독하는 표지 연산 장치에 의해, 웹사이트는 자동으로 보안 로그인이 수행되면서 열린다. 옵션은 가상 표지의 목적을 토대로 제공될 수 있고, 위치 또는 시간, 또는 사용자 선호도와 관련될 수 있다. 이러한 빠르고 사용이 간편한 기술은 가상 표지의 판독을 개시하는 것과 달리, 사용자 입력 없이(예를 들어, 처음 전화를 거는 것, SMS 또는 텍스트를 통해 코드를 송신하는 것 또는 이메일로 송신된 링크를 확인함으로써 소유권을 확인하는 것과 같이 사용자 입력 없이) 연산 장치 확인을 가능하게 한다. 전술한 빠르고 사용이 간편한 기술의 다른 이점은, 다수의 어플리케이션 및 웹사이트를 각각 별도로 로그인하여 여는 것을 대체할 수 있다는 점이다.
D 환경의 실시예에서, 트리거(trigger)시, 가상 표지는 연산 장치에서 또는 연산 장치에 의해 판독된다. 가상 표지를 판독하는 것은 판독기(reader), 예를 들어, 스캐너, QR 판독기, 구글 글래스(Google glass), 사용자 입력을 갖춘 어플리케이션, 마이크로폰, 카메라, 또는 다른 감지 장치에 의해 수행될 수 있다. 가상 표지는 디지털 데이터로 변환되고, 앱에 의해 신원, 위치, 선호도 또는 다른 관련 정보와 같은 콘텍스트 정보로 보충될 수 있고, 제3 서비스 제공자에게 (예를 들어, API, http 방식 또는 다른 기술을 통해) 제공된다. 또한, 가상 표지 정보 및 보충 정보는 복수의 부분으로 분할될 수 있고(예를 들어, 콘텍스트에 의해 분할 또는 복수의 전송으로 분할), 복수의 부분은 한명의 제3 자 서비스 제공자에게 제공되거나 복수의 제3 자 서비스 제공자에게 제공될 수 있다. 로그(log)는 판독된 가상 표지 또는 제3자에게 제공되는 정보를 유지할 수 있다. 제3 서비스 제공자는 가상 표지 및 보충 정보에 근거하여 적절한 출력 또는 조치(action)를 생성한다. 연산 장치 및 제3 서비스 제공자 간 통신은 보안 개선을 위해 토큰화될 수 있다. 서버는 통신을 중재하기 위해 사용될 수 있다(예를 들어, 도 10 참조). 연산 장치는 작업 흐름(workflow)의 일부로써 제3자로부터 입력을 다시 수신하거나 연산 장치 상의 다른 조치 또는 응답을 촉발할 수 있다.
가상 표지 판독기는 복수의 신원을 가질 수 있고, 이 중 하나는 가상 표지 판독을 촉발하기 위해 사용될 수 있다. 신원(identity)은 복수의 모바일 번호, 및/또는 복수의 이메일 주소와 같은 복수의 식별자를 가질 수 있다. 판독기는 복수의 비밀번호를 가질 수 있고, 생년월일 또는 SSN(Social security number) 또는 은행 계좌의 마지막 4개 숫자와 같은 부분 식별자를 가질 수 있다. 이러한 식별자 일부 또는 전부는 콘텍스트 또는 요청에 근거하여 제3 서비스 제공자에게 제공될 수 있다.
제3 서비스 제공자에게 제공되는 정보 안에 포함되는 콘텍스트 정보 리스트는 사용되는 트리거에 의해 결정될 수 있다. 이러한 리스트는 예를 들어, 날씨 데이터, 온도, 위치, Wi-Fi 리스트, 네트워크 세부정보, 신용 카드 세부정보, 언어 선호도, 식습관, 알레르기를 포함할 수 있다. 트리거는 제3 서비스 제공자 또는 다른 제3자로부터 검색될 리스트를 필요로 할 수 있다.
승인 및 믿을만한 제3 서비스 제공자 리스트(A list of approvals and trusted third party service providers)는 프라이버시 염려(privacy concern)를 관리하기 위해 판독기와 함께 할 수 있다. 일부 실시예는 특히 상징(예를 들어, QR 코드, 바코드, 또는 다른 상징)에 관하여 유용하다. 예를 들어, 현재 QR 코드 판독은 URL이 열리도록 하고, 이 후에 사용자의 추가 행동이 예상된다. 그러나, 본 발명에 따라 서술한 바와 같이, QR 코드는 대신에 고객 계정으로 고객을 직접 로그할 수 있고, QR 코드의 콘텍스트에 적절한 페이지 또는 트랜잭션(transaction)을 열 수 있다. 해당 앱은 복수의 제3 회사들에게 일반화될 수 있고, 따라서 각각은 맞춤형 앱을 생성할 필요가 없다. 따라서, 맞춤형 앱이 특정 콘텍스트에서 구동되도록 QR 코드를 스캔하기 앞서 적절한 앱을 위치시키고, 다운로드하여 열기 보다는, 대상 웹 사이트, 페이지 또는 트랜잭션에 대한 엑세스가 QR 판독기 활성화와 같은 단일 트리거(single trigger)로 수행되는 것이 낫다. 복수의 실시예에서, 트리거는 또한 제3 서비스 제공자에게 사전 인증(pre-authentication)을 제공한다(도 10 참조). 특정 상황에서, 트리거는 또한 인증을 촉발할 수 있다.
다른 실시예를 통해, 구글 글래스는 객체 인식에 대한 트리거의 개시자(initiator)이거나 사용자 개시(user initiation)에 의한 것일 수 있다.
개시자(또는 관련 사용자)의 신원은 제3 서비스 제공자에게 완전히 공지되거나 공지되지 않을 수 있고, 대신 해싱(hashing), 암호화 또는 압축에 의해 완전히 또는 부분적으로 숨겨질 수 있다.
복수의 실시예에서, 일시적 콘텍스트(momentary context)는 판독기 또는 복수의 링크형 판독기에 의해 일시적으로 생성될 수 있다. 일시적 콘텍스트는 일시적 콘텍스트가 예를 들어, 시간 만료 또는 위치 변화시 자동으로 제거되도록, 만료 정보를 포함할 수 있다. 이러한 콘텍스트는 또한 일시적으로 그 다음 트리거에 추가될 수 있다. 트리거는 태블릿 상의 사용자 터치와 같이 간단하거나 트리거 프로세싱(trigger processing)용 사전 표준화 명령(pre-standardized instructions)과 함께 내장된 QR 코드와 같이 복잡할 수 있다. 트리거는 또한 기정의된 선호도 내에 포함된 선호 서비스 제공자에게 트리거 정보를 라우팅(routing)할 수 있다.
전술한 바와 같이, 가상 표지는 전송에 적절한 형태로 전환될 수 있고, 가상 표지의 해싱을 포함할 수 있다. 예를 들어, 가상 표지는 모바일 숫자일 수 있고, 국가 코드와 함께 모바일 숫자의 해시(a hash of a mobile number)로 전송될 수 있다. 연산 장치는 중재 서비스로 데이터를 송신하기 위해 공공 키 암호화(public key encryption)를 사용할 수 있고, 이는 제3 서비스 제공자에게 트리거 정보 및 콘텍스트 데이터를 송신하기 위해 다른 공공 키 암호화를 사용할 수 있다. 그리고나서 제3 서비스 제공자는 직접 또는 간접적으로 연산 장치에 출력 데이터를 돌려줄 수 있다(도 10 참조).
복수의 실시예에서, 가상 표지 내 정보는 표준화되고, 인식(recognition)은 사용자 선호 제3 서비스 제공자에게 정보를 채널화하도록 트리거 안에 내장된다. 예를 들어, 혈액 보고서(blood report)는 사용자 선호 개인 건강 데이터 저장소로 라우팅된 QR 코드로 통합될 수 있다.
복수의 실시예에서, 방법은 로컬화된 판독기(localized reader)와 호환가능한 표준화된 트리거를 생성하기 위해 네트워크(예를 들어, 인터넷) 상에 게재된다. 복수의 실시예에서, 트리거는 새로운 선택을 찾거나 사용자가 이용가능한 선택량을 저감하기 위해 사용될 수 있다. 예를 들어, 현재 수백만개 이상의 모바일 장치용 어플리케이션 및 수십억개 이상의 웹사이트가 있다. 적절한 웹사이트를 검색하는 방법을 알기에는 점점 벅차게 된다. 본 발명의 컨셉은 검색을 좀더 믿을 수 있고, 쉽고, 안전하게 할 수 있도록 하며, 인증 자동화를 통해 시간을 절약할 수 있다.
복수의 실시예에서, 공통 플랫폼(common platform)이 제공되고, 다음의 시나리오 예시는 플랫폼 상의 트리거를 구성함으로써 처리될 수 있다.
사용자가 레스토랑 안에 있음 -> 커스텀 메뉴(custom menu), 줄 관리(queue management) 및 경보(alerts), 주문(ordering), 청구서 작성(invoicing)
사용자가 공항에 있음 -> 자동 체크인, 비행 상태
사용자가 샵(shop)/몰(mall) 안에 있음 -> 이용가능한 최상의 거래(best deals available)
사용자가 도서관에 있음 -> 제목 위치 스캔
사용자가 학교에 있음 -> 게시판, 시간표, 숙제
사용자가 사무실에 있음 -> 방문자 관리, 디렉토리 엑세스, 데드라인 추적
사용자가 집에 있음 -> 주요 연락처의 단일 위치(single location of critical contacts), 가정 자동화(home automation)
사용자가 공공 장소에 있음 -> 정보에 대한 엑세스, 타이밍(timings), 주차 또는 입장 티켓, 역사, 점수 등등
플랫폼 내 자동 사전 승인 트리거가 또한 있을 수 있고, 이는, 예를 들어, 전등 스위치를 켜거나 다른 자동화를 위해 사용될 수 있다. 트리거의 콘텍스트 요소는 주소, 전화 번호, IM(instant messaging) 식별자, 및 트위트 핸들(tweet handle)과 같은 신원 관련 정보; 위치; 송신기 Id; MAC ID 조사 결과; 날짜; 시간; 날씨; 언어, 음식, 알레르기 및 테마와 같은 선호도; QUICKBOOKS, Tally, Salesforce, 또는 health data bank와 같은 선호 소프트웨어; 테이블 수, 병과 같은 사전 선택; 이동 방향; 역사적 데이터; 그룹 정보; 상태; 모바일 장치 세부사항; 사용자 입력; 사진; 바코드; QR 코드; 그리고 지불 정보를 포함할 수 있으나, 이에 한정되는 것은 아니다.
트리거는 또한 제3 서비스 제공자에게 제공되는 콘텍스트 변화를 제어할 수 있다. 트리거는 복수의 업무를 달성하기 위해 연속적인 트리거를 포함할 수 있다.
복수의 실시예에서, 공통 모바일 플랫폼은 콘텍스트 요소(context element), 확인된 신원, 및 모바일 연산 장치 상의 복수의 구성가능한 트리거를 이용하여 복수의 제3 정보 서비스에 엑세스하기 위한 로컬화된 트리거(localized trigger)를 캡쳐 및 저장하도록 제공된다. 제3자로부터 엑세스된 정보는 텍스트, 오디오(audio), 비디오, 자취(scent), 객체, 또는 데이터 스트림 또는 다른 이진수 데이터를 포함할 수 있으나, 이에 한정되는 것은 아니다. 제3 자로부터 엑세스된 정보는 또한 가상 홀 멤버 장치의 사용자에게 보여주기 위해 네트워크(예를 들어, 인터넷)로부터 검색되는 콘텍스트 특정 광고를 촉발할 수 있다.
도 10은 D 환경의 일 실시예를 도시하고 있으며, 연산 장치(1001)는 입력 시스템(1002)으로부터 입력을 수신하고, 중재 서버(1003; mediation server) 및 제3 시스템(1004; a third party system)과 통신한다. 입력 시스템(1002)은 연산 장치(1001)의 일부이거나, 예를 들어, 유선 또는 무선 인터페이스 상에서 연산 장치(1001)와 분리되어 통신할 수 있다. 입력 시스템(1002)은 예를 들어, 바코드 판독기, QR 코드 판독기와 같은 판독기(reader), 마이크로폰, 카메라, 터치패드(touchpad), 키패드(keypad), 또는 인터랙티브 디스플레이(interactive display)와 같은 사용자 입력 메커니즘, 또는 다른 판독 장치를 포함할 수 있다. 입력 시스템(1002)은 판독된 정보를 연산 장치(1001)에 의해 사용될 수 있는 형태로 변환하되, 상기 형태는 디지털, 아날로그, 주파수, 위상, 또는 다른 형태, 또는 그 조합일 수 있다. 기정의된 포맷으로 정보를 변환한 후, 입력 시스템(1002)은 연산 장치(1001)로 정보를 제공하고, 연산 장치(1001)는 상기 정보를 수신한다(1010). 선택적으로, 추가 정보는 입력 시스템(1002)으로부터 상기 정보에 추가될 수 있다(1011). 추가 정보는 다른 이용가능한 추가 정보 중에, 사용자의 사전 확인된 신원, 선호되는 제3 서비스 제공자, 사용자 콘텍스트, 및 사용자 선호도를 포함한다. 연산 장치(1001)는 입력 시스템(1002)으로부터 제공받은 상기 정보 및 추가 정보를 중재 서버(1003) 및 제3 시스템(1004)으로 전송한다(1012).
중재 서버(1003)는 상기 전송을 수신하고, 적용가능하다면, 수신된 정보를 해독한다(1013). 이 후, 중재 서버(1003)는 연산 장치(1001)의 사용자의 신원을 확인하고(1014), 사용자의 콘텍스트를 결정하는 것과 같이, 수신된 정보에 근거하여 식별될 수 있는 조치를 촉발하고(1015), 제3 서비스 제공자의 서버를 식별한다(1016). 중재 서버(1003)는 사용자의 콘텍스트 및 다른 정보를 제3 서비스 제공자의 식별된 서버(즉, 제3 시스템(1004))로 전송한다(1017).
제3 시스템(1004)은 연산 장치(1001)로부터의 전송(1012) 및 중재 서버(1003)로부터의 전송(1017)을 수신한다. 제3 시스템(1004)은 사용자의 콘텍스트에 근거하여 사용될 정보를 결정하고(1019), 결정된 정보에 따라 취할 행동을 촉발하며(1020), 수신된 정보 및 결정된 정보 중 일부 또는 전부를 저장한다(1021). 제3 시스템(1004)은 이후 연산 장치(1001) 및 중재 서버(1003)로 응답을 전송한다(1022).
중재 서버(1003)는 제3 시스템(1004)으로부터 상기 전송을 수신하고(1023), 연산 장치(1001)로 응답을 전송한다(1024).
연산 장치(1001)는 제3 시스템(1004)으로부터의 전송(1022) 및 중재 서버(1003)로부터의 전송(1024)을 수신한다(1025). 이러한 방식으로, 입력 시스템(1002)에서 판독을 개시하는 것에 의해, 요청에 대한 응답이 추가 사용자 입력 없이(즉, 판독을 개시하는 것 외 다른 사용자 입력 없이) 연산 장치(1001)에서 수신될 수 있다.
개요, 유추, 및 환경 예시를 통해 본 발명의 컨셉을 설명한바, 추가 옵션이 아래에서 설명된다.
현재 위치 서비스 및 지도 디지타이저(map digitizer)가 직면한 이슈 중 하나는 정확도 또는 정보의 크라우드 소싱(crowd sourcing)으로 인한 사기(fraud)이다. 사람들은 지도 상의 공간을 주장할 수 있고, 해당 위치를 소유하는 사람을 결정하는 자동화된 방법은 없다. 이러한 이슈를 해결하기 위한 한가지 방법은 누군가에 의해 암호화되고 소유된 특정 하드웨어 기반 비콘(beacon)을 이용하는 것이다. 그러나, 이는 값비싼 해결책이고 하드웨어 롤아웃 마찰(hardware rollout friction)을 생성한다. 이 이슈를 해결하기 위한 다른 방법은 사람들이 소유권을 주장하기 위해 사용하는 Wi-Fi와 같은 기존의 비콘을 사용하는 것이다. 이 해결책이 가진 문제는 누군가가 다른 위치에서 신호를 복제할 수 있다는 것이다. 이 문제를 극복하기 위해, 비콘은 지리적 위치로 묶일 수 있다; 그리고 나서 사람은 해당 위치에서 VGS의 소유권을 확립할 수 있다. VGS 소유권은 관련 Wi-Fi 연결로 로그인하는 사용자의 능력에 의해 더 감지될 수 있다.
따라서, 예를 들어, 가상 홀의 소유권은 연산 장치로부터 수신된 확인 정보 또는 크리덴셜, 가상 홀과 관련된 연산 장치 및 전송 장치의 관계, 연산 장치가 가상 홀과 관련된 전송 장치에 근접했던 횟수, 연산 장치가 가상 홀과 관련된 전송 장치에 근접했던 빈도(frequency), 연산 장치가 가상 홀에 진입했던 횟수, 연산 장치가 가상 홀에 변경을 제출했던 횟수, 연산 장치 및 가상 홀의 정의에 의해 공유된 콘텍스트의 백분율, 및 기타 등등에 의해 결정될 수 있다.
또한, 복수의 사용자가 그들 자신을 연결된 Wi-Fi 주인으로 지명하는 경우에, 관리자(administrator)를 세우기 위한 투표 메커니즘이 있을 수 있다. 투표는 예를 들어, Wi-Fi 소스 가까이에서 보낸 시간, Wi-Fi 네트워크 내 멤버십의 수명(longevity), 또는 데일리 체크인(daily check-ins)에 기반한 가변 가중치 값(variable weighted value)을 포함할 수 있다. 더 높은 가중치는 또한 SSID(service set identification)의 이름을 리셋할 수 있는 사람에게 주어질 수 있다. 이러한 방식으로, 관리자가 위치에 대한 물리적 또는 신탁 엑세스(physical or fiduciary access)를 가질 확률이 더 높아진다. 게다가, 확인 레터 또는 코드가 확인용 포스트(post)를 통해 물리적 위치로 송신될 수 있다.
다른 개선이 VGS를 도메인 소유권(domain ownership)으로 묶기 위해 있을 수 있고, 이는 소유권 크리덴셜 관리(management of ownership credentials)를 더 쉽게 위임할 수 있게 한다. 예를 들어, 이러한 개선은 확인하기 위한 코드를 수신할 수 있는 도메인으로 VGS를 고정하는 것에 의해 해당 위치에서 뱅크(bank) 또는 평판있는 이름(reputed name)으로 속여서 청구하는 것을 방지하고, 이를 통해 해당 위치의 소유권을 증명한다.
복수의 실시예에서, 고유 ID를 가지는 장치는, 타겟 데이터 채널에 속하는 다른 장치(예를 들어, 가상 홀)에 의해 고유 ID를 포함하는 장치에 부착된 기계 판독가능한 코드(machine-readable code)를 스캔 또는 수용하여, 해당 장치를 탑재된 장치의 응용 계층 네트워크의 데이터 채널에 추가하는 것을 통해 응용 계층 네트워크(application layer network)로 추가될 수 있다. 일단 장치가 네트워크에 추가되면, 장치의 콘텍스트는 장치 콘텍스트를 포함하는 데이터베이스로부터 검색될 수 있고 응용 계층 네트워크 내에서 순환될 수 있다. 예를 들어, 추가된 장치의 콘텍스트는 장치에 접촉하는 방법; 장치로 명령을 송신하기 위한 어플리케이션 코드; 장치의 다른 정보, 엑세스, 제한, 설명, 또는 매뉴얼; 인증 또는 인가; 로그; 상태, 구성, 및 옵션과 같은 장치 개체 정보; 또는 생산자 또는 부품 번호와 같은 관련 개체에 대한 정보를 포함할 수 있다. 장치는 API 또는 데이터 동기화 기술을 통해 실시간으로 데이터 채널 정보에 엑세스하기 위한 내장형 코드(embedded code)를 가질 수 있다.
사람 또는 사람의 연산 장치의 콘텍스트에 적절한 정보에 빠르고 효율적으로 엑세스하기 위한 시스템 및 기술이 설명되었다. 설명된 바와 같이, 복수의 실시예에서, 사용자 장치(또는 관련 사용자)의 콘텍스트 정보는 원격 연산 장치로 제공되고, 원격 연산 장치는 사용자 장치(또는 관련 사용자)의 콘텍스트에 적절한 가상 홀 리스트를 제공한다. 복수의 실시예에서, 가상 홀 리스트는 적절성을 토대로 우선순위가 선정된다. 복수의 실시예에서, 콘텍스트 정보가 위치 기반일 때, 가상 홀의 리스트는 가상 홀의 전송 장치에 대한 사용자 장치의 근접성을 토대로 우선순위가 선정될 수 있다. 우선순위 리스트는 GUI(graphical user interface)에서 사용자에게 아이콘 그룹으로 표현될 수 있고, 사용자는 가상 홀에 엑세스를 요청하거나 그 멤버가 되기 위해 아이콘 중 하나를 선택할 수 있다.
근접성에 대한 결정은 3차원 근접성, GPS 좌표 기반 근접성, 또는 연산 장치 및 가상 홀과 관련된 전송 장치 사이의 상대 고도(relative altitude)를 결정하는 것을 포함할 수 있다.
일단 가상 홀이 멤버에 의해 엑세스되면, 가상 홀 내 객체는 연산 장치의 GUI로 제공될 수 있다.
도 11은 모바일 연산 장치의 GUI(1100)로 가상 홀 내 객체를 표현한 예시를 도시하고 있다. 본 예시에서, 객체는 Happy Donuts과 관련되고, 사용자가 참가할 수 있는 활동에 대한 객체(예를 들어, 1120의 가십(gossip), 1125의 그룹 사진 촬영, 또는 1130의 조사(take a survey)), 스태프(staff)로 제한된 객체 또는 영역(예를 들어, 1140의 프라이빗 룸(PRIVATE ROOM)), Happy Donuts에 대한 정보를 포함하는 객체(예를 들어, 1145의 회사 디렉토리), 가상 홀에 대한 정보를 포함하는 객체(예를 들어, 1135의 멤버 수), Happy Donuts과의 상호작용 객체(예를 들어, 1110의 주문), 제3자와의 상호작용 객체(1115의 비용 지불)를 포함한다.
여기에서 사용된 바와 같이, “상당히(substantially)” 및 “약(about)”이라는 용어는 작은 변경을 설명하기 위해 사용된다. 이벤트 또는 상황과 함께 사용될 때, 상기 용어는 이벤트 또는 상황이 정확하게 발생하는 경우 뿐만 아니라 이벤트 또는 상황이 근접하게 발생한 경우도 나타낼 수 있다. 예를 들어, 상기 용어는 ±10% 이하, ±5% 이하, ±4% 이하, ±3% 이하, ±2% 이하, ±1% 이하, ±0.5% 이하, ±0.1 % 이하, ±0.05% 이하를 나타낼 수 있다.
전술한 본 발명은, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.

Claims (44)

  1. 복수의 데이터 채널 및 복수의 가상 홀(virtual hall)을 수립하고 유지하는 회로(circuitry)를 포함하되,
    상기 각각의 가상 홀은,
    상기 데이터 채널 중 하나와 연관되고,
    상기 가상 홀과 관련된 데이터 및 객체(object)를 포함하되, 상기 데이터는 장치 또는 사용자와 관련된 콘텍스트(context) 정보를 포함하며,
    상기 데이터 및 객체에 대한 엑세스(access)를 상기 가상 홀의 멤버(member)에 제공하고,
    상기 가상 홀의 상기 데이터 및 객체의 변경은 상기 가상 홀의 멤버 간 동기화되는
    시스템.
  2. 제 1항에 있어서,
    상기 데이터 및 객체는 인터넷을 통해 응용 계층(application layer)으로부터 엑세스 가능한
    시스템.
  3. 제 1항에 있어서,
    상기 데이터 및 객체는 상기 가상 홀의 상기 멤버 간 P2P(peer-to-peer) 통신을 통해 엑세스 가능한 시스템.
  4. 회로를 포함하는 시스템에 있어서,
    상기 회로는,
    가상 홀 식별자 및 상기 가상 홀 식별자와 연관된 가상 홀 생성 요청을 수신하고;
    가상 홀을 생성하고;
    상가 가상 홀 내 통신을 위해 데이터 채널을 설립하고;
    상기 가상 홀을 식별하는 가상 표지(virtual insignia)를 제공하고;
    제1 장치로부터 제1 요청을 수신하되, 상기 제1 요청은 상기 가상 표지의 선택에 의해 개시되고, 상기 제1 요청은 상기 가상 홀에 상기 제1 장치를 추가하기 위한 것이고;
    상기 제1 장치의 콘텍스트를 식별하고;
    상기 제1 장치의 상기 콘텍스트가 상기 가상 홀과 연관된 룰(rule)과 일관되는지를 확인하고;
    상기 가상 홀의 멤버로 상기 제1 장치를 추가하고;
    상기 제1 장치에 상기 가상 홀에 대한 정보를 제공하고;
    상기 가상 홀을 상기 제1 장치에 대한 정보로 업데이트하는,
    시스템.
  5. 제 4항에 있어서,
    상기 회로는,
    제2 장치로부터 제2 요청을 수신하되, 상기 제2 요청은 상기 가상 표지의 선택에 의해 개시되고, 상기 제2 요청은 상기 가상 홀에 상기 제2 장치를 추가하기 위한 것이고;
    상기 제2 장치의 콘텍스트를 식별하고;
    상기 제2 장치의 상기 콘텍스트가 상기 가상 홀과 연관된 룰(rule)과 일관되는지를 확인하고;
    상기 가상 홀의 멤버로 상기 제2 장치를 추가하고;
    상기 제2 장치에 상기 가상 홀에 대한 정보를 제공하고;
    상기 가상 홀을 상기 제2 장치에 대한 정보로 업데이트하고;
    상기 제1 장치에 동기화 정보를 제공하되, 상기 동기화 정보는 상기 제2 장치와 관련된,
    시스템.
  6. 제 5항에 있어서,
    상기 회로는,
    상기 가상 홀의 멤버에게 전자 파일을 배포하기 위한 상기 제1 장치의 요청을 수신하고;
    상기 가상 홀의 멤버에게 상기 전자 파일을 제공하는,
    시스템.
  7. 제 5항에 있어서,
    상기 회로는,
    상기 가상 홀의 멤버에게 데이터를 배포하기 위한 상기 제1 장치의 요청을 수신하고;
    상기 가상 홀의 멤버에 상기 데이터를 제공하는,
    시스템.
  8. 제 5항에 있어서,
    상기 회로는,
    상기 가상 홀의 멤버에게 데이터를 배포하기 위한 상기 제1 장치의 요청을 수신하고;
    P2P(peer-to-peer) 네트워크를 통해 상기 가상 홀의 상기 멤버에게 상기 데이터를 배포하도록 상기 제1 장치를 지시하는,
    시스템.
  9. 제 5항에 있어서,
    상기 가상 표지는 제1 가상 표지이고, 상기 가상 홀은 제1 가상 홀이고,
    상기 회로는,
    상기 제1 장치로부터 제3 요청을 수신하되, 상기 제3 요청은 제2 가상 표지의 선택에 의해 개시되고, 상기 제3 요청은 제2 가상 홀에 상기 제1 장치를 추가하기 위한 것이고;
    상기 제2 가상 홀에 상기 제1 장치의 콘텍스트를 복사하는,
    시스템.
  10. 제 4항에 있어서,
    상기 가상 표지는 MAC(media access control) 주소, URL(uniform resource locator), IP(internet protocol) 주소, 또는 전화 번호 중 하나인,
    시스템.
  11. 제 10항에 있어서,
    상기 데이터 채널은 상기 가상 표지와 무관한 네트워크에 의해 엑세스되는
    시스템.
  12. 제 4항에 있어서,
    상기 가상 표지는 생체 식별자(biometric identifier)인
    시스템.
  13. 제 12항에 있어서,
    상기 생체 식별자는 지문, 눈 스캔(eye scan), 화학적 프로파일(chemical profile), 심장박동 프로파일(heartbeat profile), 또는 성문 중 하나인
    시스템.
  14. 제 12항에 있어서,
    상기 가상 홀은 개인과 관련된 사적인 홀(private hall)인
    시스템
  15. 제 4항에 있어서,
    상기 가상 표지는 아이콘 및 텍스트 열(text string) 중 하나인
    시스템.
  16. 제 4항에 있어서,
    상기 가상 홀은 공적인 홀(public hall)인
    시스템.
  17. 제 4항에 있어서,
    상기 가상 홀에 대한 정보는 상기 가상 홀 내 다른 장치와 관련된 어플리케이션(application)을 포함하는
    시스템.
  18. 제 17항에 있어서,
    상기 가상 홀 내 상기 다른 장치는 연산 장치(computing device), 프린터, 스캐너, 커피 머신(coffee machine), 비디오 디스플레이, 텔레비전 및 전화기 중 적어도 하나를 포함하는
    시스템.
  19. 제 4항에 있어서,
    상기 가상 홀과 연관된 상기 룰은 상기 가상 홀을 생성하기 위한 상기 요청과 함께 수신되는
    시스템.
  20. 제 4항에 있어서,
    상기 가상 홀과 연관된 상기 룰은 디폴트 룰(default rule)인
    시스템.
  21. 제 4항에 있어서,
    상기 가상 홀과 연관된 상기 룰은 룰을 미포함하는
    시스템.
  22. 제 4항에 있어서,
    상기 가상 홀과 연관된 상기 룰은 모든 참가자가 연락처 디렉토리(contact directory)를 공유하는 것을 필수조건(requirement)으로 포함하고, 상기 제1 장치의 상기 콘텍스트는 상기 공유된 연락처 디렉토리와 관련된 정보를 포함하는
    시스템.
  23. 제 4항에 있어서,
    상기 제1 장치의 상기 콘텍스트는 상기 제1 장치의 자격(capability)을 포함하는
    시스템
  24. 제 4항에 있어서,
    상기 제1 장치의 상기 콘텍스트는 상기 제1 장치와 연관된 사용자를 포함하는
    시스템.
  25. 제 4항에 있어서,
    상기 제1 장치의 상기 콘텍스트는 상기 제1 장치와 연관된 사용자의 사용자 선호도를 포함하는
    시스템.
  26. 제 4항에 있어서,
    상기 제1 장치의 상기 콘텍스트는 상기 제1 장치에 저장된 소프트웨어 어플리케이션(software application)을 포함하는
    시스템.
  27. 제 4항에 있어서,
    상기 제1 장치의 상기 콘텍스트는 상기 제1 장치의 위치를 포함하는
    시스템.
  28. 제 27항에 있어서,
    상기 제1 장치의 상기 콘텍스트를 식별하는 것은 GPS(global positioning system) 신호, 삼각 측량(triangulation), 공지된 신호원(known signal source)의 수신 강도, 및 지오-로케이터(geo-locator)의 근접성(proximity) 중 적어도 하나로부터 상기 제1 장치의 상기 위치를 결정하는 것을 포함하는
    시스템.
  29. 제 4항에 있어서,
    상기 제1 장치의 상기 콘텍스트는 상기 제1 장치에 이용가능한 Wi-Fi 네트워크를 포함하고,
    상기 회로는,
    GPS 신호, 삼각 측량, 공지된 신호원의 수신 강도, 지오-로케이터의 근접성 또는 그 조합 중 하나로부터 상기 제1 장치의 상기 위치를 결정하고;
    상기 제1 장치의 상기 결정된 위치를 상기 제1 장치에 이용가능한 Wi-Fi 네트워크 중 적어도 하나의 공지된 위치와 비교하고;
    상기 제1 장치의 상기 결정된 위치가 상기 Wi-Fi 네트워크 중 상기 적어도 하나의 상기 공지된 위치까지의 기정의된 거리보다 큰 경우, 상기 제1 요청을 거절하여 상기 가상 홀에 상기 제1 장치를 추가하는,
    시스템.
  30. 제1 사용자 장치의 사용자 인터페이스로부터 가상 표지의 선택지를 수신하는 단계;
    상기 가상 표지의 대표(representation)를 원격 연산 장치에 전송하는 단계;
    상기 가상 표지와 연관된 가상 홀에 관련된 정보를 상기 원격 연산 장치로부터 수용하는 단계;
    상기 원격 연산 장치로 콘텍스트 데이터를 제공하는 단계;
    동기화 데이터를 수용하되, 제2 사용자 장치에 관련된 상기 동기화 데이터는 상기 가상 홀에 진입하는 단계; 및
    상기 가상 홀의 참가자들에게 배포용 데이터를 제출하는 단계;를 포함하는
    방법.
  31. 제 30항에 있어서,
    상기 가상 표지는 QR(quick response) 코드인
    방법.
  32. 제 30항에 있어서,
    상기 가상 표지는 텍스트 열인
    방법.
  33. 제 32항에 있어서,
    상기 사용자 장치에 이용가능한 Wi-Fi 네트워크를 식별하는 단계; 및
    상기 사용자 장치에 표시되도록 상기 이용가능한 Wi-Fi 네트워크 리스트를 제공하는 단계를 더 포함하되,
    상기 텍스트 열은 이용가능한 Wi-Fi 네트워크의 이름인
    방법.
  34. 제 30항에 있어서,
    상기 제출된 데이터는 상기 가상 홀의 참가자에게 P2P(peer-to-peer) 네트워크를 통해 제출되는
    방법.
  35. 제 30항에 있어서,
    상기 동기화 데이터를 수용하는 단계는 P2P(peer-to-peer) 네트워크를 통해 상기 가상 홀 내 상기 제2 사용자 장치로부터 동기화 데이터를 수신하는 단계를 포함하는
    방법.
  36. 제 30항에 있어서,
    상기 동기화 데이터를 수용하는 단계는 상기 원격 연산 장치로부터 동기화 데이터를 수신하는 단계를 포함하는
    방법.
  37. 원격 연산 장치로 사용자 장치의 위치 정보를 제공하는 단계;
    상기 원격 연산 장치로부터 가상 홀 리스트를 수신하는 단계;
    상기 리스트 내의 상기 가상 홀 각각을 위해 상기 가상 홀의 전송 장치에 대한 상기 사용자 장치의 근접성을 결정하는 단계;
    근접성에 근거하여 상기 가상 홀 리스트의 우선순위를 선정하는 단계;
    상기 우선순위가 선정된 가상 홀 리스트를 대표하는 우선순위 가상 표지 그룹(a prioritized group of virtual insignias)을 상기 사용자 장치의 사용자 인터페이스로 제공하는 단계;및
    상기 사용자 인터페이스로부터 상기 가상 표지 중 하나의 선택지를 수신하는 단계;를 포함하는
    방법.
  38. 제 37항에 있어서,
    상기 근접성을 결정하는 단계는 3차원 근접성을 결정하는 단계를 포함하는
    방법.
  39. 제 37항에 있어서,
    상기 근접성을 결정하는 단계는 GPS(global positioning system) 좌표에 근거하는
    방법.
  40. 제 37항에 있어서,
    상기 근접성을 결정하는 단계는 상대 고도(relative altitude)를 결정하는 단계를 포함하는
    방법.
  41. 제 37항에 있어서,
    상기 선택된 가상 표지와 연관된 상기 가상 홀의 전송 장치에 대한 상기 사용자 장치의 관계를 토대로 상기 가상 홀의 소유권 지시(indication of ownership)를 상기 원격 연산 장치로부터 수신하는 단계를 더 포함하는
    방법.
  42. 제 37항에 있어서,
    상기 전송 장치 또는 상기 가상 홀과 연관된 다른 전송 장치에 근접하여 상기 사용자 장치가 있었던 횟수 또는 빈도를 토대로 상기 가상 홀의 소유권 지시를 상기 원격 연산 장치로부터 수신하는 단계를 더 포함하는
    방법.
  43. 제 37항에 있어서,
    상기 선택된 가상 표지가 이전에 선택된 횟수를 토대로 상기 가상 홀의 소유권 지시를 상기 원격 연산 장치로부터 수신하는 단계를 더 포함하는
    방법.
  44. 제 37항에 있어서,
    상기 가상 홀의 전송 장치의 소유권 확인(verification of ownership)을 제공하고, 상기 소유권 확인에 근거하여 상기 가상 홀의 소유권 지시를 상기 원격 연산 장치로부터 수신하는 단계를 더 포함하는
    방법.
KR1020167030976A 2014-04-11 2015-04-10 동적 콘텍스트형 장치 네트워크 KR20160143754A (ko)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US201461978478P 2014-04-11 2014-04-11
US61/978,478 2014-04-11
US201462021514P 2014-07-07 2014-07-07
US62/021,514 2014-07-07
IN2051DE2014 2014-07-21
IN2051/DEL/2014 2014-07-21
US201562112180P 2015-02-05 2015-02-05
US62/112,180 2015-02-05
US201562119812P 2015-02-24 2015-02-24
US62/119,812 2015-02-24
PCT/US2015/025436 WO2015157707A1 (en) 2014-04-11 2015-04-10 Dynamic contextual device networks

Publications (1)

Publication Number Publication Date
KR20160143754A true KR20160143754A (ko) 2016-12-14

Family

ID=54199902

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167030976A KR20160143754A (ko) 2014-04-11 2015-04-10 동적 콘텍스트형 장치 네트워크

Country Status (9)

Country Link
US (2) US20170188233A1 (ko)
EP (1) EP3130130A4 (ko)
JP (1) JP2017517825A (ko)
KR (1) KR20160143754A (ko)
CN (1) CN106489261A (ko)
AU (1) AU2015243174A1 (ko)
CA (1) CA2944012A1 (ko)
GB (2) GB2540317A (ko)
WO (2) WO2015157707A1 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9998931B2 (en) * 2016-01-04 2018-06-12 International Business Machines Corporation Cooperative manufacturing using mobile machines
US10142329B1 (en) * 2016-06-23 2018-11-27 8×8, Inc. Multiple-factor authentication
WO2018165146A1 (en) 2017-03-06 2018-09-13 Cummins Filtration Ip, Inc. Genuine filter recognition with filter monitoring system
WO2018191200A1 (en) * 2017-04-11 2018-10-18 Google Llc Identifying users via hotspots at service locations
US11069016B2 (en) * 2017-05-10 2021-07-20 Mastercard International Incorporated National digital identity
CN109327475B (zh) * 2018-11-30 2021-04-09 深圳市元征科技股份有限公司 一种多层身份认证方法、装置、设备及存储介质
TR201900442A2 (tr) * 2019-01-11 2020-07-21 Basar Loran Oezsahakyan Nfc ve qr teknoloji̇leri̇ni̇ bi̇r arada bulundurarak uygulama gerekti̇rmeyen mobi̇l si̇pari̇ş verme, bi̇lgi̇ veya hi̇zmet alma ci̇hazi
CN110611694B (zh) * 2019-04-29 2024-06-25 杭州恒昱文化艺术策划有限公司 一种基于虚拟化主从容器的数据处理中心
US11438329B2 (en) 2021-01-29 2022-09-06 Capital One Services, Llc Systems and methods for authenticated peer-to-peer data transfer using resource locators
US20220294788A1 (en) * 2021-03-09 2022-09-15 Oracle International Corporation Customizing authentication and handling pre and post authentication in identity cloud service
US11706224B2 (en) * 2021-04-14 2023-07-18 Microsoft Technology Licensing, Llc Entity authentication for pre-authenticated links
CN115098803B (zh) * 2022-08-24 2022-12-06 深圳市华图测控系统有限公司 一种基于移动图书馆的图书推荐方法以及系统

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE0000944L (sv) * 2000-03-21 2001-09-22 Anoto Ab Arrangemang i ett datorsystem
US20020143960A1 (en) * 2000-08-02 2002-10-03 Erez Goren Virtual network generation system and method
US7072956B2 (en) * 2000-12-22 2006-07-04 Microsoft Corporation Methods and systems for context-aware policy determination and enforcement
US7299256B2 (en) * 2001-04-17 2007-11-20 Hewlett-Packard Development Company, L.P. Creating a virtual link between a physical location and its web representation
US7460495B2 (en) * 2005-02-23 2008-12-02 Microsoft Corporation Serverless peer-to-peer multi-party real-time audio communication system and method
US7844724B2 (en) * 2007-10-24 2010-11-30 Social Communications Company Automated real-time data stream switching in a shared virtual area communication environment
US8954551B2 (en) * 2008-03-17 2015-02-10 Microsoft Corporation Virtualization of groups of devices
CN101753851B (zh) * 2008-12-17 2011-12-28 华为终端有限公司 背景更换的方法、虚拟场景合成的方法及相关系统和设备
CN101552992B (zh) * 2009-02-27 2010-12-08 南京邮电大学 一种基于移动代理安全的卫星网动态路由方法
US8150844B2 (en) * 2010-08-18 2012-04-03 Facebook, Inc. Location ranking using social graph information
LV14456B (lv) * 2011-10-04 2012-04-20 Relative Cc, Sia Lietotāja identitātes noteikšanas paņēmiens
US9213853B2 (en) * 2011-12-20 2015-12-15 Nicolas LEOUTSARAKOS Password-less login
CN102625130A (zh) * 2012-04-26 2012-08-01 梅玉洋 基于计算机虚拟三维场景库的合成摄影系统
JP6089457B2 (ja) * 2012-06-12 2017-03-08 株式会社リコー 通信システム、サーバ機器、クライアント機器及びプログラム
ES2680152T3 (es) * 2012-08-03 2018-09-04 OneSpan International GmbH Método y aparato de autenticación conveniente para el usuario usando una aplicación de autenticación móvil

Also Published As

Publication number Publication date
GB2542740A (en) 2017-03-29
JP2017517825A (ja) 2017-06-29
WO2015157707A1 (en) 2015-10-15
AU2015243174A2 (en) 2016-11-10
WO2016013028A1 (en) 2016-01-28
EP3130130A4 (en) 2017-07-26
AU2015243174A1 (en) 2016-11-03
US20170188233A1 (en) 2017-06-29
EP3130130A1 (en) 2017-02-15
US20170214684A1 (en) 2017-07-27
GB2540317A (en) 2017-01-11
CA2944012A1 (en) 2015-10-15
WO2016013028A4 (en) 2016-03-17
CN106489261A (zh) 2017-03-08
GB201701418D0 (en) 2017-03-15

Similar Documents

Publication Publication Date Title
US10757672B1 (en) Location-based introduction system
KR20160143754A (ko) 동적 콘텍스트형 장치 네트워크
US20210319047A1 (en) Systems and methods enabling real-time permission based privacy protection of real-time location and related location information
US10306582B1 (en) Beacon-based location introduction system
US11032390B2 (en) Digital card management
US10250582B2 (en) Secure private location based services
US8682349B2 (en) Location based asynchronous thread communications
JP4928695B2 (ja) 環境対話式のコンテキスト指向デバイス、および、方法
US20120110642A1 (en) Method and apparatus for granting rights for content on a network service
JP6023718B2 (ja) 仮想空間の生成を含む通信システム及び方法
US20140282075A1 (en) Delivering Experience Opportunities
US20160234651A1 (en) System and method for social introductions
US20120011521A1 (en) Novel developer platform
US20160187143A1 (en) Mechanism for facilitating dynamic location-based zone management for computing systems
US20150113074A1 (en) System and method for social introductions
KR20240058091A (ko) 스캔 가능한 코드, 활성자 및 위치 식별자를 음성 참조하기 위한 시스템 및 방법
KR20180072652A (ko) 다중 id를 이용한 공간 정보 공유 서비스 시스템 및 그 방법
KR20150112104A (ko) 다자간 전자명함 교환 방법 및 시스템
Zeng et al. Security visiting: RFID-based smartphone indoor guiding system
KR20150111331A (ko) 다중 id를 이용한 공간 정보 공유 서비스 시스템 및 그 방법
KR20140145640A (ko) 다중 id를 이용한 공간 정보 공유 서비스 시스템 및 그 방법