KR20190015313A - 전자 메일 시스템으로의 위치 통합 - Google Patents
전자 메일 시스템으로의 위치 통합 Download PDFInfo
- Publication number
- KR20190015313A KR20190015313A KR1020187036268A KR20187036268A KR20190015313A KR 20190015313 A KR20190015313 A KR 20190015313A KR 1020187036268 A KR1020187036268 A KR 1020187036268A KR 20187036268 A KR20187036268 A KR 20187036268A KR 20190015313 A KR20190015313 A KR 20190015313A
- Authority
- KR
- South Korea
- Prior art keywords
- location
- user
- map display
- information
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/107—Computer-aided management of electronic mailing [e-mailing]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/08—Annexed information, e.g. attachments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04812—Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- User Interface Of Digital Computer (AREA)
- Computer And Data Communications (AREA)
- Telephonic Communication Services (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
전자 메일 시스템은 위치 통합 기능의 작동을 검출하고, 작성 창의 다른 메시지 컨텐츠와 일렬로 맞춰지도록 채워지는 인터랙티브 맵 디스플레이로 전자 메일 시스템의 작성 창을 채운다. 사용자는 인터랙티브 맵 디스플레이와 상호작용하여 인터랙티브 맵 디스플레이를 수정하는 맵핑 기능을 수행할 수 있다.
Description
본 발명은 전자 메일 시스템으로의 위치 통합에 관한 것이다.
컴퓨터 시스템은 현재 널리 사용되고 있다. 일부 그러한 컴퓨터 시스템들은 전자 메일 시스템을 포함한다. 전자 메일 시스템은 사용자가 전자 메일 메시지들을 작성, 전송, 및 수신하고, 다른 전자 메일 시스템 기능을 수행할 수 있도록 한다.
다른 컴퓨팅 시스템은 맵핑(mapping) 시스템과 같은 위치 시스템을 포함한다. 맵핑 시스템은 사용자가 위치 정보를 입력할 수 있도록 하는 사용자 입력 메커니즘을 경험하게 한다(expose). 위치 정보는 그 후 맵을 사용자에게 디스플레이하는 데에 이용된다. 일부 맵핑 시스템은 사용자가 디스플레이된 맵 상의 일정한 위치에 마킹할 수 있도록 하는 사용자 입력 메커니즘을 경험하게 한다. 이는 때때로 맵 상에 핀(pin) 또는 다른 위치 마커(marker)를 놓는 것으로 묘사된다.
일부 전자 메일 시스템은 사용자가 맵핑 시스템에 의해 제공되는 위치 정보를 전자 메일 메시지에 첨부할 수 있도록 한다. 위치 정보를 보기 위해, 수신자는 첨부물을 연다. 다른 시나리오에서는, 사용자가 전자 메일 메시지에서 위치 정보에의 링크를 붙여넣을 수 있다. 수신자가 위치 정보를 보려고 할 때, 수신자는 링크를 작동(actuate)시키며 위치 정보를 보기 위한 별도의 사용자 경험으로 네비게이셔닝(navigate)된다.
상술한 내용은 단지 일반적인 배경 정보에 대해 제공된 것일 뿐이며, 청구 대상물의 범주를 결정하는 데에 있어서의 보조 수단으로 이용되도록 하려는 것이 아니다.
전자 메일 시스템은 위치 통합 기능의 작동을 검출하고, 작성 창(compose pane)의 다른 메시지 컨텐츠와 일렬로 맞춰지도록(in-line) 채워치는(populated) 인터랙티브(interactive) 맵 디스플레이로 전자 메일 시스템의 조합 창을 채운다. 사용자는 인터랙티브 맵 디스플레이를 수정하는 맵핑 기능을 수행하기 위해 인터랙티브 맵 디스플레이와 상호 작용할 수 있다.
본 요약문은 이하의 구체적인 내용 부분에서 보다 상세히 서술되는 개념들의 선택을 단순화된 형태로 소개하기 위해 제공된다. 본 요약문은 청구 대상물의 주요 특징들 또는 본질적인 특징들을 식별하기 위한 것이 아니며, 청구 대상물의 범주를 결정하는 데에 있어서의 보조 수단으로 이용되도록 하기 위한 것도 아니다. 청구 대상물은 배경기술 부분에서 언급된 임의의 또는 모든 불리한 점들을 해소시키는 구현예들로 한정되지 않는다.
도 1은 컴퓨팅 시스템 아키텍처(architecture)의 일 예시에 관한 블럭도이다.
도 2는 위치 통합 시스템에 관한 보다 상세한 블럭도이다.
도 3은 사용자가 위치 메시지를 작성할 수 있도록 함에 있어서의 도 1에 도시된 아키텍처의 운용에 관한 일 예시를 나타내는 흐름도이다.
도 3a 내지 도 3d는 사용자 인터페이스 디스플레이에 관한 예시들을 도시한다.
도 4는 수신자가 위치 메시지와 상호 작용할 수 있도록 함에 있어서의 도 1에 도시된 아키텍처의 운용에 관한 일 예시를 나타내는 흐름도이다.
도 5는 사용자가 추가 위치 정보를 검색하여 이를 위치 메시지에 통합시킬 수 있도록 함에 있어서의 도 1에 도시된 아키텍처의 운용에 관한 일 예시를 나타내는 흐름도이다.
도 6은 여정(itinerary) 생성 로직에 관한 일 예시를 보다 상세하게 보여주는 블럭도이다.
도 7은 사용자가 여정을 생성할 수 있도록 함에 있어서의 도 1에 도시된 아키텍처 및 여정 생성 로직의 운용에 관한 일 예시를 나타내는 흐름도이다.
도 7a는 사용자 인터페이스 디스플레이에 관한 일 예시이다.
도 8은 클라우드 컴퓨팅 아키텍처에서 활용되는 도 1의 아키텍처를 보여준다.
도 9 내지 도 11은 상기 도면들의 아키텍처들에서 이용될 수 있는 모바일 디바이스들에 관한 예시들이다.
도 12는 상기 도면들의 아키텍처들에서 이용될 수 있는 컴퓨팅 환경이다.
도 2는 위치 통합 시스템에 관한 보다 상세한 블럭도이다.
도 3은 사용자가 위치 메시지를 작성할 수 있도록 함에 있어서의 도 1에 도시된 아키텍처의 운용에 관한 일 예시를 나타내는 흐름도이다.
도 3a 내지 도 3d는 사용자 인터페이스 디스플레이에 관한 예시들을 도시한다.
도 4는 수신자가 위치 메시지와 상호 작용할 수 있도록 함에 있어서의 도 1에 도시된 아키텍처의 운용에 관한 일 예시를 나타내는 흐름도이다.
도 5는 사용자가 추가 위치 정보를 검색하여 이를 위치 메시지에 통합시킬 수 있도록 함에 있어서의 도 1에 도시된 아키텍처의 운용에 관한 일 예시를 나타내는 흐름도이다.
도 6은 여정(itinerary) 생성 로직에 관한 일 예시를 보다 상세하게 보여주는 블럭도이다.
도 7은 사용자가 여정을 생성할 수 있도록 함에 있어서의 도 1에 도시된 아키텍처 및 여정 생성 로직의 운용에 관한 일 예시를 나타내는 흐름도이다.
도 7a는 사용자 인터페이스 디스플레이에 관한 일 예시이다.
도 8은 클라우드 컴퓨팅 아키텍처에서 활용되는 도 1의 아키텍처를 보여준다.
도 9 내지 도 11은 상기 도면들의 아키텍처들에서 이용될 수 있는 모바일 디바이스들에 관한 예시들이다.
도 12는 상기 도면들의 아키텍처들에서 이용될 수 있는 컴퓨팅 환경이다.
도 1은 컴퓨팅 시스템 아키텍처(100)의 일 예시에 관한 블럭도이다. 아키텍처(100)는 네트워크(106)를 통해 서로 연결되어 있는 컴퓨팅 시스템들(102 내지 104)을 예시적으로 포함한다. 네트워크(106)는 특히, 원거리 네트워크, 근거리 네트워크, 근거리 자기장 통신 네트워크와 같은 매우 다양한 상이한 유형의 네트워크들 중 어느 하나일 수 있다.
도 1은 일 예시에서, 아키텍처(100)가 복수의 상이한 위치 정보 소스들(108, 110, 112)을 포함하며, 맵 서비스(114)를 포함할 수 있음을 또한 보여준다. 위치 정보 소스들(108 내지 112)은 예시적으로 위치에 기초하여 정보를 제공하는 소스들이다. 예컨대, 위치 정보 소스들(108 내지 112) 중 하나는 위치에 기초하여 날씨 예보 정보를 얻기 위해 호출될 수 있는 (API와 같은) 인터페이스를 경험하게 하는 날씨 정보 서비스일 수 있다. 또 다른 소스(108 내지 112)는 위치에 기초하여 현재 또는 예상되는 트래픽 정보를 제공하기 위한 API를 경험하게 하는 트래픽 정보 서비스일 수 있다. 소스들(108 내지 112)은 위치에 기초하여, 호텔, 대사관, 레스토랑, 관심 지역을 나타내는 정보 또는 매우 다양한 다른 정보를 제공하는 서비스들을 또한 포함할 수 있다.
맵 서비스(114)는 예시적으로 맵핑 정보를 얻기 위해 컴퓨팅 시스템들(102 내지 104)에 의해 호출될 수 있는 서비스이다. 일 예시에서, 다양한 위치 정보 소스들(108 내지 112) 및 맵 서비스(114)는 예시적으로 다양한 정보 소스들 및 서비스들로부터 정보를 얻기 위해 컴퓨팅 시스템들(102 내지 104)에 의해 소모(consume)되거나 그들과 상호작용할 수 있는 애플리케이션 프로그래밍 인터페이스들(또는 API들)을 경험하게 한다.
컴퓨팅 시스템(102)은 사용자들(124 내지 126) 각각에 의한 상호작용을 위해 사용자 입력 메커니즘들(120 내지 122)을 포함하는 사용자 인터페이스들(116 내지 118)을 생성하는 것으로 도시된다. 사용자들(124 내지 126)은 예시적으로 컴퓨팅 시스템(102)을 제어 및 조작하기 위해 사용자 입력 메커니즘들(120 내지 122)과 상호작용한다.
유사하게, 컴퓨팅 시스템(104)은 사용자들(136 내지 138)에 의한 상호작용을 위해 사용자 입력 메커니즘들(132 내지 134)을 포함하는 사용자 인터페이스들(128 내지 130)을 생성하는 것으로 도시된다. 사용자들(136 내지 138)은 예시적으로 컴퓨팅 시스템(104)을 제어 및 조작하기 위해 사용자 입력 메커니즘들(132 내지 134) 각각과 상호작용한다.
컴퓨팅 시스템(102)은 예시적으로 프로세서들 또는 서버들(140), 전자 메일 시스템(142), 위치 프로세싱 시스템(144), 사용자 인터페이스 로직(146), 데이터 저장소(148)를 포함하며, 매우 다양한 다른 컴퓨팅 시스템 기능(150)을 포함할 수 있다. 이메일 시스템(142)은 예시적으로 위치 통합 시스템(152) 및 매우 다양한 다른 이메일 기능(154)을 포함한다. 위치 프로세싱 시스템(144)은 예시적으로 맵 상호작용 로직(156), 여정 생성 로직(158), 여정 네비게이션 로직(160)을 포함하며, 매우 다양한 다른 위치 프로세싱 기능(162)을 포함할 수 있다.
전자 메일 시스템(142)은 이메일 서비스나 이메일 서비스의 클라이언트 컴포넌트, 또는 그 조합일 수 있다. 그 시스템(142)은 예시적으로, 메시지들의 작성, 메시지들의 전송 및 수신, 메시지들에 대한 응답, 아이템들의 첨부, 메일함 폴더들의 배열 등과 같은 전자 메일 작업들을 사용자가 수행할 수 있도록 하는 사용자 입력 메커니즘들을 포함하는 사용자 인터페이스 디스플레이들을 생성한다. 위치 통합 시스템(152)은 예시적으로 사용자들이 인터랙티브 맵 디스플레이 형태의 위치 정보를 전자 메일 메시지들에 통합시킬 수 있도록 한다. 그렇게 함에 있어서, 그 시스템(152)은 인터랙티브 맵 디스플레이를 다른 메시지 컨텐츠와 일렬로 맞춰지도록 전자 메일 메시지에 통합시켜서 위치 메시지를 형성한다.
위치 프로세싱 시스템(154)은 예시적으로 위치 정보에 기초하여 프로세싱을 수행한다. 예시로서, 그 시스템(154) 자체가 로컬 맵핑 시스템일 수 있거나, 또는 그 시스템(154)이 맵 서비스(114)의 클라이언트 컴포넌트일 수 있다. 따라서, 위치 정보를 프로세싱함에 있어서, 그 시스템(154)은 맵 서비스(114)에 액세스하거나, 스스로 프로세싱을 행하거나, 그 두 가지의 조합을 행하거나, 또는 다른 방식으로 위치 프로세싱을 수행할 수 있다. 맵 상호작용 로직(156)은 예시적으로 인터랙티브 맵 디스플레이를 생성하는 데에 이용될 수 있으며, 그 후 위치 통합 시스템(152)에 의해 전자 메일 메시지로 통합되는 정보를 생성한다. 그 로직(156)은 예시적으로 인터랙티브 맵 디스플레이 상의 사용자 입력 메커니즘들과의 사용자 상호작용을 검출하고 그 검출된 사용자 상호작용들에 기초하여 프로세싱을 수행한다. 그 로직(156)은 위치 메시지와 상호작용하는 사용자가 메시지의 작성자 또는 수신자일 때 이렇게 할 수 있다.
여정 생성 로직(158)은 예시적으로 사용자에 의해 그리고 자동으로(스스로 또는 사용자 입력에 응답하여) 생성된 위치 메시지의 정보에 액세스하고, 위치 정보 및 이메일 시스템에 통합된 다른 정보에 기초하여 제안된 또는 추천된 여정을 생성한다. 그 로직(158)은 또한 예시적으로 사용자가 여정을 수정할 수 있도록 하는 사용자 입력 메커니즘들을 생성한다.
여정 네비게이션 로직(160)은 예시적으로 사용자가 여정을 이용할 때, 사용자가 여정 상의 다양한 포인트들로 네비게이셔닝할 수 있도록 하는 네비게이션 기능을 생성한다. 그 로직(160)은 예시적으로 길 안내, 트래픽 정보, 및 현재의 트래픽 및 기상 상태를 고려해 볼 때 특정 위치로 떠날 시점 등과 같은 다른 정보를 제공한다. 그 로직(160)은 매우 다양한 다른 네비게이션 기능도 또한 가능하게 할 수 있다.
데이터 저장소(148)는 예시적으로 다양한 애플리케이션들과, 이메일 시스템(142) 및 위치 프로세싱 시스템(144) 양자 모두에 대한 정보를 저장한다. 데이터 저장소(148)는 매우 다양한 다른 정보도 또한 저장할 수 있다.
컴퓨팅 시스템(104)은 또한 예시적으로 프로세서들 또는 서버들(164), 이메일 시스템(166)(이는 그 자체가 위치 통합 시스템(168) 및 다른 이메일 기능(170)을 포함함), 위치 프로세싱 시스템(172)(이는 그 자체가 맵 상호작용 로직(174), 여정 생성 로직(176), 여정 네비게이션 로직(178), 및 다른 위치 프로세싱 기능(180)을 포함함), 사용자 인터페이스 로직(182), 데이터 저장소(184)를 포함하며, 다른 컴퓨팅 시스템 기능(186)을 포함할 수 있다. 컴퓨팅 시스템(104)의 컴포넌트들 또는 아이템들은 컴퓨팅 시스템(102)에 관하여 상술한 것과 유사하며 그와 유사한 방식으로 작동할 수 있거나, 또는 그와는 상이할 수 있다.
위치 메시지를 생성함에 있어서의 아키텍처(100)의 운용에 관한 일 예시를 보다 상세하게 서술하기 이전에, 위치 통합 시스템(152)에 관한 보다 상세한 예시를 보여주는 블럭도가 우선 제공될 것이다. 도 2는 위치 통합 시스템(152)에 관한 일 예시의 보다 상세한 블럭도를 도시한다. 도 2에 도시된 예시에서, 시스템(152)은 예시적으로 위치 기능 검출 로직(190), 위치 검출 로직(192), 이메일 채움(population) 로직(194)을 포함하며, 다른 아이템들(196)을 포함할 수 있다. 위치 기능 검출 로직(190)은 예시적으로 위치 통합 시스템(152)의 기능이 활성화될 시점(예컨대, 사용자가 위치 메시지를 생성하거나 그와 상호작용할 때)을 검출한다. 그 로직(190)은 사용자 입력 검출기(192), 자동 검출기(194), 및 매우 다양한 다른 아이템들(196)을 포함할 수 있다. 사용자 입력 검출기(192)는 예시적으로 시스템(152)의 기능이 활성화되도록 요청하는 사용자 입력을 검출한다. 예컨대, 이메일 작성 창에는 위치 작동기(actuator)가 배치될 수 있다. 사용자가 그 작동기를 작동시키면, 그 후 위치 통합 시스템(152)이 활성화된다. 또 다른 예시에서, 자동 검출기(194)는 시스템(152)의 기능이 활성화되어야 함을 자동으로 검출한다. 예컨대, 사용자가 이메일 메시지의 메시지 컨텐츠 본문에 위치를 입력할 경우, 이는 위치 통합 시스템의 기능이 활성화되어야 함을 나타내는 자동 검출기(194)에 대한 입력을 제공하는 자연 언어 프로세싱 또는 다른 언어 프로세싱 시스템에 의해 검출될 수 있다. 또 다른 예시에서, 이메일 메시지의 컨텐츠는 자연 언어 프로세싱 또는 자연 언어 이해의 영향을 받기 쉬우며, 이는 시스템(152) 기능의 자동 활성화를 불러일으킬 수 있다.
예컨대, 사용자는 "우리는 4월 1일에 아래의 장소를 방문할 것이다."와 같은 문장 단편을 입력할 수 있다. 이러한 유형의 언어적 컨텐츠가 검출되어 위치 통합 시스템(152) 기능의 작동을 자동으로 트리거하는 데에 이용될 수 있다. 다른 자동 사용자 입력 검출기들도 또한 이용될 수 있으며, 이 문서에서 서술된 것들은 단지 예시를 위해 서술된 것이다.
위치 검출 로직(192)은 예시적으로 시스템이 인터랙티브 맵 디스플레이의 생성을 위해 이용하는 특정 위치를 검출한다. 일 예시에서, 그 로직(192)은 현재 위치 검출기(204), 사용자 입력 위치 검출기(206)를 포함하며, 다른 아이템들(208)을 포함할 수 있다. 현재 위치 검출기(204)는 예시적으로 시스템(152)의 현재 위치를 자동으로 검출한다. 이는, 예컨대, 글로벌 위치확인 시스템 수신기 또는 또 다른 자동 위치 검출기를 이용하여 행해질 수 있다. 일 예시에서, 사용자의 현재 위치는 인터랙티브 맵 디스플레이를 생성하는 데에 이용되는 위치이다.
또 다른 예시에서, 사용자 입력 위치 검출기(206)는 사용자 입력 위치를 검출한다. 예컨대, 사용자가 원하는 위치를 입력하도록 하기 위해 (텍스트 입력 필드 또는 다른 작동기와 같은) 작동기가 제공될 수 있다. 예시로서, 사용자가 멀리 떨어진 장소로의 이동을 계획하고 있는 경우에, 사용자는 그 멀리 떨어진 장소를 식별하는 위치 정보를 입력할 수 있으며, 그 위치 정보가 양 방향 맵 디스플레이를 생성하는 데에 이용되는 것이다. 다른 위치 검출기들도 또한 이용될 수 있다.
이메일 채움 로직(194)은 예시적으로 맵 디스플레이 통합 로직(210), 추가 정보 통합 로직(212), 사용자 상호작용 검출 로직(214)을 포함하며, 다른 아이템들(216)을 포함할 수 있다. 맵 디스플레이 통합 로직(210)은 예시적으로 위치 검출 로직(192)에 의해 검출되는 위치에 기초하여 양 방향 맵 디스플레이를 생성하는 데에 이용되는 정보를 획득하기 위해, 위치 검출 로직(192)에 의해 검출되는 위치 정보를 이용하여 (위치 프로세싱 시스템(144) 또는 맵 서비스(114)와 같은) 맵 시스템과 상호작용한다. 그 로직(210)은 창(pane)에 대하여 그 인터랙티브 맵 디스플레이를 생성하고, 이를 적절한 디멘션(dimension)을 이용하여 포맷하고, 기타 다른 작업을 수행하며, 이를 다른 메시지 컨텐츠와 일렬로 맞춰지도록 이메일 메시지에 통합시킨다.
추가 정보 통합 로직(212)은 예시적으로 사용자가 위치 메시지를 작성하거나 그에 응답할 때, 사용자가 요구하거나 사용자에게 제공될 수 있는 다른 정보 소스들(108 내지 112)과 상호작용하고, 그 정보를 이메일 메시지에 통합시킨다. 그러한 정보는 호텔, 레스토랑, 대사관, 관심 지역 등의 위치들을 포함할 수 있다. 그 정보는 트래픽 패턴과 대중 교통 시설을 나타내는 정보, 또는 위치 검출 로직(192)에 의해 검출되는 위치와 관련된 매우 다양한 다른 정보를 포함할 수 있다.
사용자 상호작용 검출 로직(214)은 예시적으로 인터랙티브 맵 디스플레이 및 그에 디스플레이된 임의의 작동기 또는 정보와의 사용자 상호작용을 검출하고, 원하는 액션들을 수행하기 위해 컴퓨팅 시스템(102)의 다른 아이템들에 사용자 상호작용에 관한 표시를 제공한다.
도 3은 사용자가 이메일 메시지를 작성할 때, 이메일 메시지의 메시지 컨텐츠와 일렬로 맞춰지도록 인터랙티브 맵 디스플레이를 통합시킴에 있어서의 아키텍처(100) 및 위치 통합 시스템(152)의 운용에 관한 일 예시를 나타내는 흐름도이다. 도 3a 내지 도 3d는 사용자 인터페이스 디스플레이들에 관한 예시들을 도시한다. 도 1 내지 도 3d는 이하에서 함께 서술될 것이다. 또한, 본 논의는 사용자(124)가 위치 메시지(메시지 컨텐츠와 일렬로 맞춰지도록 디스플레이되는 인터랙티브 맵 디스플레이를 포함하는 이메일 메시지)를 작성하는 것에 관하여 진행할 것이다. 이는 단지 예시일 뿐이다.
이에 따라 이메일 시스템(142)이 실행되고 있으며 사용자(124)가 이메일 메시지를 작성할 수 있는 모드에 있다고 가정한다. 이는 블럭들(220 및 222)로 표시된다. 일 예시에서, 이메일 시스템(142)은 사용자가 (예컨대, 키보드, 키패드, 음성 등을 통해) 메시지 컨텐츠를 입력할 수 있도록 하는 작성 창을 디스플레이한다. 이메일 시스템에서 작성 창을 여는 것이 블럭(222)으로 표시된다. 이메일 시스템(142)은 사용자(124)가 메시지를 작성할 수 있도록 하는 다른 기능도 또한 제공할 수 있으며, 이는 블럭(224)으로 표시된다.
도 3a는 사용자(124)가 이메일 메시지를 작성할 수 있도록 하는 이메일 시스템(142)의 사용자 인터페이스 디스플레이(258)에 관한 일 예시이다. 디스플레이(258)는 예시적으로 메일함 창(260), 메시지 목록 창(262), 및 작성 창(264)을 포함한다. 메일함 창(260)은 예시적으로 받은편지함, 보낸편지함, 임시저장함 등과 같은 이메일 시스템 상에 사용자가 구성한 다양한 메일함들을 나열한다. 메시지 목록 창(262)은 예시적으로 사용자의 받은편지함에 있는 사용자에 의해 수신된 메시지들을 식별하는 식별 정보를 포함한다. 작성 창(264)은 사용자가 메시지를 작성할 때 메시지 컨텐츠(266)를 입력할 수 있도록 한다. 일 예시에서, 작성 창(264)은 위치 작동기(268)를 포함한다. 사용자가 위치 작동기(268)를 작동시킬 경우에, 이는 위치 통합 시스템(152)의 기능을 활성화시킨다. 또 다른 예시에서, 간략하게 상술한 바와 같이, 그 기능은 작성 중인 메시지의 컨텐츠에 기초하여 자동으로 활성화될 수 있다. 예컨대, 메시지 컨텐츠는 자연 언어 이해 또는 자연 언어 프로세싱의 영향을 받아 메시지의 의미론적(semantic) 컨텐츠 또는 언어적(linguistic) 컨텐츠에 관한 표시를 획득할 수 있다. 그 컨텐츠가 시스템(152)의 위치 통합 기능이 활성화되어야 함을 표시할 경우에, 그 컨텐츠가 자동으로 검출될 수 있다.
도 3a에 도시된 예시에서, 사용자가 "우리는 여기에 머물 것이다."라는 메시지 컨텐츠를 입력한 것을 볼 수 있다. 자연 언어 이해 시스템은 예시적으로 이를 위치 통합 기능을 활성화시킬 구절 또는 한 세트의 단어들로 인식한다. 물론, "여기에 맵이 있다", "우리는 어디에 머물러야 하는가", 그리고 여러 다른 구절들 또는 텍스트 세그먼트들과 같은 매우 다양한 다른 메시지들도 또한 그 위치 통합 기능의 활성화를 자동으로 트리거할 수 있다.
위치 기능 검출 로직(190)은, 동일한 포인트에서, 위치 통합 시스템 기능의 활성화를 검출한다. 이는 도 3의 블럭(226)으로 표시된다. 상술한 바와 같이, 이는 이메일 시스템의 입력 창에서 사용자(124)가 위치 작동기(268)를 작동시켰음을 검출하는 사용자 입력 검출기(192)에 의해 행해질 수 있다. 이는 블럭(228)으로 표시된다. 또한 상술한 바와 같이, 자동 검출기(194)는, 예컨대, 이메일 메시지의 컨텐츠 그 자체, 컴퓨팅 시스템의 컨텍스트 등에 기초하여 시스템(152)이 활성화되어야 함을 자동으로 검출할 수 있다. 이는 블럭(230)으로 표시된다. 위치 통합 시스템 기능의 활성화는 다른 방식으로도 또한 검출될 수 있으며, 이는 블럭(232)으로 표시된다.
위치 검출 로직(192)은 그 후 인터랙티브 맵 디스플레이가 기반으로 삼을 위치 정보를 나타내는 입력을 검출한다. 위치 정보의 입력을 검출하는 것은 도 3의 블럭(234)으로 표시된다. 일 예시에서, 위치 정보는 시스템(152)이 배치되는 디바이스의 현재 위치이다. 이는 현재 위치 검출기(204)에 의해 검출되며, 도 3의 흐름도의 블럭(236)으로 표시된다. 또 다른 예시에서, 사용자 입력 위치 검출기(206)에 의해 검출되는 바와 같이, 위치 정보가 사용자에 의해 입력된다. 사용자 입력 위치 정보는 도 3의 흐름도의 블럭(238)으로 표시된다. 위치 정보는 다른 방식으로도 또한 검출될 수 있으며, 이는 블럭(240)으로 표시된다.
맵 디스플레이 통합 로직(210)은 그 후 (위치 프로세싱 시스템(144) 또는 맵 서비스(114)와 같은) 맵 시스템에 액세스하여 인터랙티브 맵 디스플레이를 생성하는 데에 이용되는 정보를 획득한다. 이는 도 3의 블럭(242)으로 표시된다. 이는, 예컨대, 위치 프로세싱 시스템(144) 또는 맵 서비스(114)에 의해 경험하게 되는 API를 호출함으로써, 또는 다른 방식으로 행해질 수 있다. 이는 도 3의 블럭들(244 및 246)로 표시된다. 맵 디스플레이 통합 로직은 그 후 위치 정보가 주어지면, 맵 시스템으로부터 수신된 정보에 기초하여 인터랙티브 맵 디스플레이를 생성하고, 이를 사용자 상호작용을 위해 디스플레이한다. 이는 도 3의 블럭(248)으로 표시된다. 이는, 예컨대, 블럭(250)으로 표시되는 바와 같이, 인터랙티브 맵 디스플레이를 이메일 디스플레이 상의 별도의 창에 디스플레이함으로써 행해질 수 있거나, 또는 블럭(252)으로 표시되는 바와 같이, 작성 창에서 행해질 수 있다. 인터랙티브 맵 디스플레이는 다른 방식으로도 또한 보여질 수 있으며, 이는 블럭(254)으로 표시된다.
일 예시에서, 인터랙티브 맵 디스플레이는 사용자가 인터랙티브 맵 디스플레이 상에 핀 또는 위치 마커를 놓는 것과 같은 맵 작업들을 수행할 수 있도록 하는 사용자 입력 메커니즘들을 포함한다. 또 다른 예시에서, 맵 디스플레이 통합 로직(210)은 예시적으로 검출된 위치 정보에 기초하여 맵 상에 핀을 자동으로 놓는다. 검출된 위치 정보에 기초하여 인터랙티브 맵 디스플레이 상에 핀을 놓는 것은 도 3의 흐름도의 블럭(256)으로 표시된다.
사용자는 다양한 다른 소스들에서 다른 위치 정보를 검색하기 위해 다른 소스들 검색 작동기(278)를 또한 이용할 수 있다. 이는 도 3의 흐름도의 블럭(257)으로 표시된다. 이러한 경우에, 맵 상호작용 로직(156)은 예시적으로 다른 소스들에 대하여 경험된(exposed) 애플리케이션 프로그래밍 인터페이스를 호출하여 다른 위치 기반 정보를 획득한다. 이는 블럭(259)으로 표시된다.
도 3b는 사용자 인터페이스 디스플레이(270)를 도시한다. 디스플레이(270)는 도 3a에 도시된 디스플레이(258)와 유사하며, 유사한 아이템들은 유사하게 넘버링된다. 그러나, 일단 시스템(152)의 기능이 활성화되면, 맵 기능 패널은 이제 일반적으로 도 3b의 272로 표시되는 바와 같이 디스플레이됨을 알 수 있다. 패널(272)은 예시적으로 사용자가 다양한 맵 관련 기능들을 수행할 수 있도록 하는 한 세트의 사용자 작동가능 디스플레이 구성요소들 (또는 작동기들)(274)을 포함한다. 예컨대, 위치 작동기(276)는 사용자가 위치 정보를 입력할 수 있도록 한다. 검색 작동기(278)는 사용자가 위치 관련 정보에 대하여 다른 소스들(108 내지 112) 또는 맵 서비스(114)를 검색할 수 있도록 한다. 길 안내 작동기(280)는 사용자가 위치 안내를 받을 수 있도록 한다. 장소 작동기(282)는 예시적으로 맵 서비스(114)로 하여금 위치 정보에 인접한 (호텔, 대사관, 관광 명소, 또는 다른 장소들과 같은) 관심 대상 장소들의 위치를 찾아내도록 한다. 날씨 작동기(284)는 예시적으로 검출된 위치에 대응하는 현재 또는 미래의 날씨 정보를 구하기 위해 시스템으로 하여금 날씨 소스를 검색하도록 한다. 트래픽 작동기(286)는 예시적으로 시스템으로 하여금 위치에 대응하는 트래픽 정보에 대한 소스를 검색하도록 한다. 핀 추가 작동기(288)는 예시적으로 사용자가 맵에 핀 또는 다른 위치 마커를 추가할 수 있도록 하는 사용자 경험을 생성한다. 시간 작동기(289)는 사용자가 시간을 위치 기반 정보에 대한 파라미터로 명시할 수 있도록 한다. 패널(272)은 상이한 또는 다른 작동기들(290)을 또한 포함할 수 있다. 이러한 작동기들을 이용하여 생성되는 정보는 맵 디스플레이 통합 로직(210) 또는 추가 정보 통합 로직(212)에 의해 이메일 메시지에 통합될 수 있다. 그 작동기들은 정보를 자동으로 포맷하여 이메일 메시지에 삽입한다.
또한, 패널(272)은 예시적으로 삽입 작동기(292)를 포함한다. 사용자가 맵 관련 기능을 수행하는 것을 끝마쳤을 때, 사용자는 삽입 작동기(292)를 작동시켜서 메시지 컨텐츠(266)와 일렬로 맞춰지도록 작성 창(264)에 사용자 인터랙티브 맵 디스플레이를 삽입할 수 있다.
사용자는 다양한 다른 소스들에서 다른 위치 정보를 검색하기 위해 다른 소스들 검색 작동기(278)를 또한 이용할 수 있다. 이는 도 3의 흐름도의 블럭(257)으로 표시된다. 이러한 경우에, 맵 상호작용 로직(156)은 예시적으로 다른 소스에 대하여 경험된 애플리케이션 프로그래밍 인터페이스를 호출하여 다른 위치 기반 정보를 획득한다. 이는 블럭(259)으로 표시된다.
어떠한 시점에, 사용자는, 예컨대 삽입 작동기(292)를 작동시킴으로써, 맵 통합 입력을 제공할 것이다. 맵 디스플레이 통합 로직(210)은 이를 검출하여 다른 메시지 컨텐츠(266)와 일렬로 맞춰지게끔 인터랙티브 맵 디스플레이를 작성 창(264)에 통합시키도록 이메일 시스템을 제어한다. 통합 입력을 검출하는 것은 블럭(261)으로 표시되며, 작동기(292)의 작동에 기초하여 그 통합 입력을 검출하는 것은 블럭(263)으로 표시된다. 물론, 통합 입력은, 예컨대, 사용자가 입력 키를 치거나, 또는 자동으로 맵 디스플레이 통합 로직(210)으로 하여금 맵을 메시지 컨텐츠와 일렬로 맞춰지게끔 작성 창에 자동 통합시키도록 하는 다른 조치들을 취함으로써, 또한 자동으로 검출될 수 있다. 통합 입력의 자동 검출은 도 3의 흐름도의 블럭(265)으로 표시된다. 맵 디스플레이를 작성 창에 통합시키도록 이메일 시스템을 제어하는 것은 도 3의 블럭(267)으로 표시된다. 일단 위치 정보가 (맵 미리보기(preview) 또는 인터랙티브 맵 디스플레이 형태로) 작성 창에 통합되면, 여기에서, 메시지는 위치 메시지로 지칭된다. 사용자는 전송 작동기(302)를 작동시킴으로써 위치 메시지를 전송할 수 있다. 전송 작동기의 사용자 작동을 검출하는 것은 블럭(269)으로 표시된다. 이러한 경우에, 이메일 기능부(154)는 열거된 수신자들에게 위치 메시지를 전송하도록 이메일 시스템(142)을 제어한다.
도 3c는 또 다른 사용자 인터페이스 디스플레이(294)를 도시한다. 디스플레이(294)는 도 3b에 도시된 디스플레이(270)와 유사하며, 유사한 아이템들을 유사하게 넘버링된다. 그러나, 디스플레이(294)는 이제 사용자가 인터랙티브 맵 디스플레이(296)를 생성하고 삽입 작동기를 작동시켰음을 도시한다. 따라서, 이메일 메시지에서 인터랙티브 맵 디스플레이(296)가 작성 창(264)에 삽입된다. 일 예시에서, 인터랙티브 맵 디스플레이는 작동가능 맵 미리보기(296)로 우선 삽입된다. 작성자(또는 수신자)가 미리보기를 볼 경우에, 이들은 (예컨대, 터치 또는 클릭함으로써) 그 미리보기를 작동시킬 수 있다. 이에 응답하여, 맵 상호작용 로직(156)이 이를 검출하고 맵 서비스(114)와 상호작용하여, 맵을 디스플레이 상의 맵핑 기능을 수행하도록 작동될 수 있는 사용자 입력 메커니즘들을 포함하는 인터랙티브 디스플레이로 만든다.
도 3c는 이제 작성 창(264)이 "여정 생성" 작동기(298)로 채워진 것을 또한 도시한다. 이하에서 보다 상세하게 서술되는 바와 같이, 위치 메시지에 삽입되는 맵 디스플레이에 대응하는 정보로부터 여정을 생성하기 위해 여정 생성 로직(158)(도 1)을 제어하도록 작동기(298)가 작동될 수 있다. 사용자는 맵 디스플레이 상의 정보를 추가, 삭제, 또는 수정하기 위해 맵 기능 패널(272) 상의 작동기들을 계속하여 이용할 수 있고, 끝마쳤을 때, 사용자는 패널(272) 상의 "완료" 작동기(293)을 작동시킬 수 있다.
도 3d는 또 다른 사용자 인터페이스 디스플레이(300)를 도시한다. 디스플레이(300)는 도 3c에 도시된 디스플레이(284)와 유사하며, 유사한 아이템들은 유사하게 넘버링된다. 그러나, 이제 맵 기능 패널(272)이 더 이상 보이지 않도록 사용자가 "완료" 작동기(293)를 작동시켰음을 알 수 있다. 작성 창(264)에 다른 메시지 컨텐츠와 일렬로 맞춰지도록 작동가능 맵 미리보기(296)가 이제 디스플레이된다. 사용자는 이제 "전송" 작동기(302)를 작동시켜서 하나 이상의 수신자들에게 위치 메시지를 전송할 수 있다. 이 메시지는 이제 다른 메시지 컨텐츠(266)와 일렬로 맞춰지도록 통합된 작동가능 맵 미리보기(296)를 포함하기 때문에 위치 메시지라고 지칭되며, 이 미리보기는 수신자에 의해 활성화되어 맵 디스플레이와 상호작용할 수 있다.
도 4는 수신자가 위치 메시지를 수신할 때, 아키텍처(100)의 운용에 관한 일 예시를 나타내는 흐름도이다. 일 예시에서, 수신자는 본인의 받은편지함에서 위치 메시지를 수신한다. 이는 도 4의 흐름도의 블럭(350)으로 표시된다. 본 예시를 위해, 사용자(136)가 도 3 내지 도 3d에 관하여 상술한 위치 메시지의 수신자라고 가정한다. 위치 메시지는 예시적으로 사용자의 메시지 목록 창에 나타날 것이고, 그것이 위치 메시지임을 표시하는 시각적 표시자를 포함할 수 있다.
어떤 시점에서, 사용자(136)는 예시적으로 사용자의 이메일 시스템의 읽기 창에서의 디스플레이를 위해 위치 메시지를 선택할 것이다. 이는 블럭(352)으로 표시된다. 이메일 시스템(166)은 그 후 예시적으로 읽기 창에 위치 메시지를 디스플레이한다. 이는 블럭(354)으로 표시된다. 그 시스템(166)은 예시적으로 도 3d에 도시된 바와 같이 메시지에 통합된 핀을 포함하는 인터랙티브 맵 디스플레이의 미리보기를 디스플레이한다. 이는 도 4의 흐름도의 블럭(356)으로 표시된다. 맵 미리보기는 예시적으로 위치 메시지의 다른 메시지 컨텐츠와 일렬로 맞춰지도록 디스플레이된다. 이는 블럭(358)으로 표시된다. 위치 메시지는 다른 방식으로도 또한 디스플레이될 수 있으며, 이는 블럭(360)으로 표시된다.
일 예시에서, 미리보기는, 그것을 클릭하는 것 또는 다른 방법으로 그것을 선택하는 것과 같이, 사용자에 의해 선택될 수 있는 작동가능한 미리보기이다. 위치 통합 시스템(168)의 사용자 상호작용 검출 로직은 예시적으로 미리보기의 사용자 선택을 검출한다. 이는 도 4의 흐름도의 블럭(362)으로 표시된다.
위치 통합 시스템(168)의 맵 디스플레이 통합 로직은 그 후 미리보기를 인터랙티브 맵 디스플레이로 전환시키기 위해 (직접적으로 또는 맵 상호작용 로직(174)을 통해) 맵 서비스(114)를 호출한다. 이는 블럭(364)으로 표시된다. 그렇게 함에 있어서, 그 시스템(168)은 또한 예시적으로 사용자(136)가 인터랙티브 디스플레이에 관하여 맵핑 작업들을 수행할 수 있도록 하는 기능 작동기들을 디스플레이한다. 예컨대, 사용자(136)는 이러한 작동기들을 이용하여 핀을 추가하고, 위치를 추가하며, 다른 소스 정보를 추가할 수 있다. 이는 상술한 바와 같이 위치 메시지를 확립하는 것과 유사한 경험이거나 또는 그와 상이한 것일 수 있다. 추가 작동기들을 포함하는 인터랙티브 맵 디스플레이를 디스플레이하는 것은 블럭(366)으로 표시된다.
인터랙티브 맵 디스플레이는, 인터랙티브 맵 디스플레이에서 핀이 놓여진 위치들의 텍스트 설명과 같은 추가 정보 또는 다른 정보를 또한 디스플레이할 수 있다. 이는 도 4의 블럭(368)으로 표시된다.
시스템(168)의 사용자 상호작용 검출 로직은 그 후 위치 메시지와의 임의의 다른 사용자 상호작용들을 검출한다. 이는 블럭(370)으로 표시된다. 예컨대, 사용자는 인터랙티브 맵 디스플레이(또는 미리보기)의 위 또는 그 아래에, 일렬로 맞춰진 메시지 컨텐츠를 추가할 수 있다. 이는 블럭(372)으로 표시된다. 사용자는 사용자가 찾은 추가 위치들에 대하여 핀들을 추가할 수 있다. 이는 블럭(374)으로 표시된다. 사용자는 메시지에 응답하기 위해 블럭(376)으로 표시된 바와 같이 다른 위치 정보를 발견하거나 또는 블럭(378)으로 표시된 바와 같이 전송 작동기를 작동시킬 수 있다. 사용자는 다른 방식으로도 또한 위치 메시지와 상호작용할 수 있으며, 이는 블럭(380)으로 표시된다.
시스템(168)의 사용자 상호작용 검출 로직은 그 후 검출되는 사용자 상호작용들에 기초하여 작업들을 수행하도록 이메일 시스템(166)을 제어하기 위해 이메일 시스템의 적절한 기능부에 검출되는 사용자 상호작용들의 표시를 제공한다. 이는 도 4의 흐름도의 블럭(382)으로 표시된다. 예컨대, 그 사용자 상호작용 검출 로직은 블럭(384)으로 표시된 바와 같이 일렬로 맞춰진 메시지 컨텐츠를 추가하도록 이메일 시스템을 제어할 수 있다. 그 로직은 블럭(386)으로 표시되는 바와 같이 인터랙티브 맵 디스플레이에 핀 또는 다른 정보를 추가하도록 맵 상호작용 로직(174)을 제어할 수 있다. 그 로직은 블럭(388)으로 표시되는 바와 같이 작성자에게 응답을 전송할 수 있다. 이메일 시스템은 검출된 사용자 상호작용들에 또한 기초하여 다른 작업들을 수행할 수 있으며, 이는 블럭(390)으로 표시된다.
도 5는 사용자(124) 또는 사용자(136)가 다른 소스들(108 내지 112)로부터 또는 맵 서비스(114) 등에 대하여 다른 위치 정보를 검색하여 획득할 수 있도록 함에 있어서의 아키텍처(100)의 운용에 관한 일 예시를 나타내는 흐름도이다. 이는 위치 메시지의 작성자 또는 수신자에 의해 행해질 수 있다.
추가 정보 통합 로직(212)은 우선 위치 기반 정보에 관한 추가 소스들에 액세스하기 위한 사용자 입력을 검출한다. 이는 도 5의 블럭(400)으로 표시된다. 예컨대, 사용자는 소스들을 찾기 위한 추가 위치 정보를 입력하기 위해 작동기(176)를 이용할 수 있다. 이는 블럭(402)으로 표시된다. 사용자는 특정 소스(108 내지 112)에 액세스하기 위해 날씨 작동기(284) 또는 트래픽 작동기(286)와 같은 작동기를 작동시킬 수 있다. 이는 예시적으로 추가 정보 통합 로직(212)로 하여금 직접적으로 또는 맵 상호작용 로직(156)을 통해 그 특정 소스 상에 API를 호출하도록 한다. 그 작동기의 작동을 검출하는 것은 도 5의 블럭(404)으로 표시된다.
사용자는 또한 단순히 작성 창에 추가 메시지 컨텐츠를 입력할 수 있으며, 자연 언어 이해 시스템은 추가 정보를 위한 다른 소스들을 찾는 데에 이용될 수 있는 그 메시지 컨텐츠에 관한 이해를 생성할 수 있다. 예컨대, 사용자는 "날씨가 어떨까"와 같은 구절을 입력할 수 있다. 이는 관련된 위치 기반 날씨 정보에 대한 날씨 사이트를 찾기 위해, 입력되는 위치 정보와 함께 이용될 수 있다. 추가 소스들을 찾기 위해 메시지의 언어적 컨텐츠를 이용하는 것은 도 5의 흐름도의 블럭(406)으로 표시된다. 추가 소스들은 다른 방식으로도 또한 찾을 수 있으며, 이는 블럭(408)으로 표시된다.
그 시스템은 특정 사용자 입력에 기초하여, 추가 소스들에 액세스하기 위한 특정 사용자 입력 메커니즘을 디스플레이할 수 있을지도 모른다. 예컨대, 사용자가 날씨 사이트에 액세스하고자 함을 표시하는 입력을 제공할 경우에, 사용자가 위치 정보에 더하여 날씨 정보를 찾는 데에 이용될 파라미터들을 입력할 수 있도록 특정 날씨 사용자 입력 메커니즘이 디스플레이될 수 있다. 예컨대, 사용자가 날짜 범위, 시간 범위 등을 입력하는 것이 가능할 수 있다. 위치 기반 정보에 관한 추가 소스들에 액세스하기 위한 사용자 입력 메커니즘을 디스플레이하는 것은 도 5의 블럭(410)으로 표시된다. 추가 사용자 입력 메커니즘은 블럭(412)으로 표시된 바와 같이 그리고 도 3b 및 도 3c에 도시된 바와 같이 별도의 제어 패널 상에 있을 수 있다.
전술한 바와 같이, 매우 다양한 추가 소스들이 있을 수 있다. 그 소스들은 블럭(414)으로 표시되는 바와 같은 길 안내를 위한 소스, 블럭(416)으로 표시되는 바와 같은 위치 기반 날씨 정보를 위한 소스, 블럭(418)으로 표시되는 바와 같은 트래픽 정보를 위한 소스, 블럭(420)으로 표시되는 바와 같은 주차 정보를 위한 소스, 또는 소셜 네트워크로부터 위치 기반 정보(예컨대, 사용자가 선호하는 내용(user likes), 사용자 리뷰 등)를 획득하는 소셜 네트워크 소스(422)를 포함할 수 있다. 그 소스들은 버스 정류장, 기차역 등의 위치와 같은 블럭(424)으로 표시되는 교통 정보에 관한 소스를 포함할 수 있다. 그 소스들은 레스토랑, 호텔, 대사관, 주유소 등과 같은 추가 정보에 관한 소스를 포함할 수 있다. 이는 블럭(426)으로 표시된다. 물론, 사용자 입력 메커니즘들은 추가 정보에 관한 또 다른 소스로부터의 정보에도 또한 액세스할 수 있으며, 이는 블럭(428)으로 표시된다.
사용자가 사용자 입력 메커니즘을 작동시킬 때, 추가 정보 통합 로직(212)은 예시적으로 액세스되고 있는 소스에 대응하는 API에 액세스한다. 그 로직(212)은 추가 정보를 얻기 위해 직접적으로 또는 맵 상호작용 로직(156)을 통해 이를 행할 수 있다. 사용자 입력 메커니즘과의 사용자 상호작용을 검출하는 것과 검출되는 사용자 상호작용에 기초하여 정보를 얻기 위해 추가 소스들에 대한 API에 액세스하는 것은 도 5의 블럭(430 및 432)으로 표시된다.
일단 추가 정보가 획득되면, 추가 정보 통합 로직(212)은 그 추가 정보를 메시지의 메시지 컨텐츠와 일렬로 맞춰지게끔 통합시키도록 이메일 시스템(142)을 제어한다. 이는 블럭(434)으로 표시된다. 그 추가 정보는 메시지와 일렬로 맞춰지도록 통합되어 있는 인터랙티브 맵 디스플레이(또는 미리보기) 내에 있을 수 있다. 이는 블럭(436)으로 표시된다. 그 추가 정보는 또한, 텍스트로 설명되는 날씨 정보, 트래픽 정보, 방향 정보와 같이 메시지의 메시지 컨텐츠로 통합되는 추가 메시지 컨텐츠로 통합될 수 있다. 이는 블럭(438)으로 표시된다. 그 추가 정보는 다른 방식으로도 또한 메시지 컨텐츠와 일렬로 맞춰지도록 통합될 수 있으며, 이는 블럭(440)으로 표시된다.
도 6은 여정 생성 로직(158)(도 1에 도시됨)에 관한 보다 상세한 블럭도의 일 예시이다. 그 로직(158)은 예시적으로 여정 기능 검출 로직(442), 파라미터 프로세싱 시스템(444)(이는 그 자체가 파라미터 입력 메커니즘 생성기(446), 작동 검출기(448)를 포함하며, 다른 아이템(450)들을 포함할 수 있음), 및 제안 여정 생성기(452)를 포함한다. 그 로직(158) 다른 아이템들(454)도 또한 포함할 수 있다. 제안 여정 생성기(452)는 예시적으로 스케줄 생성 로직(456), 추가 정보 생성 로직(458), 여정 출력 컴포넌트(460), 수정 컴포넌트(462)를 포함하며, 다른 아이템들(464)을 포함할 수 있다.
도 7은 위치 메시지의 인터랙티브 맵 디스플레이에 관한 위치 정보 입력으로부터 여정을 생성함에 있어서의 여정 생성 로직(158)의 작동에 관한 일 예시를 나타내는 흐름도이다. 도 7a는 사용자 인터페이스 디스플레이에 관한 일 예시를 도시한다. 도 6 내지 도 7a는 이하에서 함께 서술될 것이다.
본 논의를 위해 인터랙티브 맵 디스플레이의 위치 정보가 사용자의 이메일 시스템에 디스플레이된다고 가정한다. 이는 도 7의 블럭(466)으로 표시된다. 예컨대, 그 위치 정보는 작성자의 작성 창에 있을 수 있다. 그 위치 정보는 수신자의 읽기 창에 있거나, 다른 방식으로 디스플레이될 수 있다.
여정 기능 검출 로직(442)은 그 후 여정 생성 작동기(예컨대, 도 3c의 작동기(298))의 사용자 작동을 검출한다. 이는 도 7의 블럭(468)으로 표시된다. 파라미터 프로세싱 시스템(444)(그리고 특히 파라미터 입력 메커니즘 생성기(446))은 그 후 사용자가 여정을 생성하는 데에 이용될 임의의 추가 파라미터들을 입력할 수 있도록 하는 사용자 파라미터 입력 메커니즘을 포함하는 사용자 인터페이스 디스플레이를 생성한다. 이는 블럭(470)으로 표시된다. 예컨대, 그 메커니즘은 여정에 대한 시작 날짜 뿐만 아니라 사용자가 일정한 장소를 방문하고자 하는 날짜도 또한 사용자가 입력하게끔 할 수 있다. 이는 블럭(472)으로 표시된다. 그 메커니즘은 사용자가 일정한 지점에 있고자 하는 시간을 나타내는 정보를 사용자가 입력하게끔 할 수 있다. 이는 블럭(474)으로 표시된다. 파라미터 사용자 입력 메커니즘은 사용자가 다른 파라미터들로 또한 입력하게끔 할 수 있으며, 이는 블럭(476)으로 표시된다. 작동 검출기(448)는 파라미터 작동기들이 입력이 될 수 있도록 사용자가 파라미터 작동기들을 작동시키는 것을 검출한다.
일단 임의의 추가 파라미터들이 사용자에 의해 입력되면, 스케줄 생성 로직(456)은 예시적으로 위치 정보에 관한 다양한 아이템들, 인터랙티브 맵 디스플레이에 관한여 입력된 임의의 추가 정보, 및 사용자에 의해 입력된 임의의 추가 파라미터들에 액세스하고, 사용자에게 디스플레이하기 위해 제안 여정을 생성한다. 제안 여정을 생성하는 것은 도 7의 블럭(478)으로 표시된다.
제안 여정은 날짜(480), 여정 상의 다양한 장소들로의 길 안내(482), 통행(travel) 데이터(484)(예컨대, 교통 상황이 좋지 않은 시간, 여정 상의 다음 장소로 이동하는 데에 걸리는 시간 등)와 같은 정보를 포함할 수 있다. 그 제안 여정은 예상되는 날씨 상태를 나타내는 날씨 데이터(486)를 포함할 수 있으며, 매우 다양한 다른 정보(488)를 포함할 수 있다.
스케줄 생성 로직(456)은 그 후 여정을 수정하기 위해 작동될 수 있는 여정 수정 입력 메커니즘들을 포함하는 제안 여정에 관한 디스플레이를 생성한다. 제안 여정의 디스플레이는 추가 정보 생성 로직(458)에 의해 생성되는 임의의 추가 정보(예컨대, 길 안내, 통행 데이터, 날씨 데이터 등)를 또한 포함할 것이다. 수정 사용자 입력 메커니즘들을 포함하는 제안 여정의 디스플레이를 생성하는 것은 도 7의 블럭(490)으로 표시된다.
수정 컴포넌트(462)는 그 후 수정 사용자 입력 메커니즘들 중 어느 하나의 작동을 검출하고 검출되는 작동들에 기초하여 여정을 수정한다. 이는 블럭(492)으로 표시된다. 예컨대, 사용자는 여정의 날짜 또는 시간, 위치, 방문할 장소들의 순서 등을 수정할 수 있다.
사용자가 여정에 만족할 때, 사용자는 통합 작동기를 작동시킬 수 있으며, 여정 생성 로직(158)은 예시적으로 작성 창 또는 읽기 창의 메시지 컨텐츠와 일렬로 맞춰지게끔 이메일 메시지에 여정에 관한 표시를 통합시키도록 이메일 시스템(142)을 제어한다. 이는 블럭(494)으로 표시된다.
여정 출력 컴포넌트(460)는 별도의 장소에 저장하기 위해, 여정을 표시하는 여정 기록을 또한 출력할 수 있다. 이는 블럭(496)으로 표시된다. 여정은 또한 블럭(498)으로 표시된 바와 같이 이메일 메시지에 첨부될 수 있거나, 또는 블럭(500)으로 표시되는 바와 같이 다른 방식으로도 또한 출력될 수 있다.
도 7a는 여정이 디스플레이되는 사용자 인터페이스 디스플레이(502)에 관한 일 예시를 도시한다. 아이템들 중 일부는 상술한 사용자 인터페이스 디스플레이들과 유사하며, 유사하게 넘버링된다. 작성 창은 예시적으로 메시지 컨텐츠(266)와 메시지 컨텐츠(266)가 일렬로 맞춰지도록 디스플레이되는 작동가능 맵 미리보기(296)를 포함한다. 유사하게, 제안 여정(504)은 메시지 컨텐츠 및 작동가능 맵 미리보기(296)와 일렬로 맞춰지도록 또한 디스플레이된다. 도 7a에 도시된 예시적인 여정은 복수의 장소들(506, 508, 510)을 포함하며, 각각의 장소는 사용자가 그 장소에 도착할 날짜 및 시간(512)과 다른 정보(514)(예컨대, 날씨 정보, 트래픽 정보, 호텔 정보, 교통 정보 등)와 같은 추가 정보를 포함할 수 있다.
디스플레이(502)는 여정 수정 사용자 입력 메커니즘(516)에 관한 일 예시를 또한 보여준다. 그 메커니즘(516)은 예시적으로 수정 작동기들(520 내지 522)을 포함하는 여정 수정 패널이며, 다른 아이템들(524)을 포함할 수 있다. 사용자는 예시적으로 여정(504)을 수정하기 위해 작동기들(520 내지 522)을 작동시킬 수 있다. 예컨대, 한 작동기는 사용자가 날짜 및 시간을 수정하게끔 할 수 있다. 또 다른 작동기는 사용자가 장소들을 수정하거나 장소들을 재배열하거나 기타 다른 동작을 수행하게끔 할 수 있다.
도 7a는 여정(504)이 길 안내 작동기(526)를 포함하는 일 예시를 또한 도시한다. 사용자가 작동기(526)를 작동시킬 때, 여정 네비게이션 로직(160)은 여정(504) 상에서 식별되는 다양한 장소들에 대한 길 안내를 획득하기 위해 (맵 서비스(114))와 같은) 정보 소스들에 액세스할 수 있다. 이는 단지 여정의 일 예시일 뿐이며 매우 다양한 다른 여정들도 또한 생성될 수 있다.
따라서 메시지 컨텐츠와 일렬로 맞춰지도록 도시된 인터랙티브 맵 디스플레이를 이용하면 사용자가 맵 디스플레이를 보고 이를 이용하기 위해 별도의 사용자 인터페이스 디스플레이로 네비게이셔닝할 필요가 없음을 알 수 있다. 그 대신에, 사용자는 이메일 메시지의 작성 창 또는 읽기 창에서 직접 맵 디스플레이를 보고 이와 상호작용할 수 있다. 유사하게, 작성자 또는 수신자는 매우 다양한 다른 위치 기반 정보를 찾아서 이를 통합시킬 수 있다. 사용자가 이렇게 하기 위해 작동기를 작동시킬 경우에, 시스템은 사용자에 대한 디스플레이를 위해 표면 정보에 대응하는 정보 소소들에 의해 경험된 API들에 액세스한다. 사용자는 그 후 그 추가 정보를 다른 메시지 컨텐츠와 일렬로 맞춰지도록 위치메시지에 통합시킬 수 있다. 다시, 사용자는 이렇게 하기 위해 별도의 시스템의 별도의 사용자 인터페이스 디스플레이로 네비게이셔닝할 필요가 없다. 이는 사용자 경험을 훨씬 더 직관적이고 덜 복잡하게 만들 뿐 아니라, 컴퓨팅 시스템의 속도를 향상시킨다. 컴퓨팅 시스템은 맵핑 시스템에 의해 생성되는 사용자 인터페이스 디스플레이 전체를 제공할 필요가 없다. 그 대신에, 단지 이메일 시스템의 인터랙티브 맵 디스플레이의 일정한 기능만을 제공하면 된다.
본 논의는 프로세서들 및 서버들을 언급하였다. 일 실시예에서, 프로세서들 및 서버들은 별도로 도시되지 않은 관련 메모리 및 타이밍 회로를 포함하는 컴퓨터 프로세서들을 포함한다. 이 프로세서들 및 서버들은, 이들이 속하며 이들을 활성화시키는 시스템들 또는 디바이스들의 기능부들이며, 이 프로세서들 및 서버들은 그러한 시스템들의 다른 컴포넌트들 또는 아이템들이 기능할 수 있도록 한다.
상기 논의는 다양한 여러 시스템들, 컴포넌트들 및/또는 로직에 대해 서술하였다. 그러한 시스템들, 컴포넌트들 및/또는 로직은 이들과 관련된 기능들을 수행하는 하드웨어 아이템들(예컨대, 프로세서 및 관련 메모리, 또는 다른 프로세싱 컴포넌트들이며, 그 일부는 이하에서 기술됨)로 구성될 수 있음을 알 수 있을 것이다. 또한, 후술하는 바와 같이, 시스템들, 컴포넌트들 및/또는 로직은 메모리에 로딩되며 후속하여 프로세서나 서버에 의해 실행되는 소프트웨어, 또는 다른 컴퓨팅 컴포넌트로 구성될 수 있다. 시스템들, 컴포넌트들 및/또는 로직은 또한 하드웨어, 소프트웨어, 펌웨어 등의 여러 조합들로 구성될 수 있으며, 그 일부 예시들은 후술한다. 이들은 단지 상술한 시스템들, 컴포넌트들 및/또는 로직을 형성하는 데에 이용될 수 있는 여러 구조들에 관한 일부 예시들일 뿐이다. 다른 구조들도 또한 이용될 수 있다.
또한, 다수의 사용자 인터페이스 디스플레이들이 논의되었다. 이들은 매우 다양한 여러 형태들을 취할 수 있으며 매우 다양한 여러 사용자 작동가능 입력 메커니즘들이 배치되어 있을 수 있다. 예컨대, 사용자 작동가능 입력 메커니즘들은 텍스트 박스, 체크 박스, 아이콘, 링크, 드롭다운(drop-down) 메뉴, 검색 박스 등일 수 있다. 이들은 또한 매우 다양한 여러 방식들로 작동될 수 있다. 예컨대, 이들은 (트랙 볼 또는 마우스와 같은) 포인트 및 클릭 디바이스를 이용하여 작동될 수 있다. 이들은 하드웨어 버튼, 스위치, 조이스틱이나 키보드, 썸 스위치(thumb switch), 또는 썸 패드(thumb pad) 등을 이용하여 작동될 수 있다. 이들은 또한 가상 키보드 또는 다른 가상 작동기들을 이용하여 작동될 수 있다. 또한, 이들이 디스플레이되는 스크린이 터치 감응식 스크린일 경우에, 이들은 터치 제스처들을 이용하여 작동될 수 있다. 또한, 이들을 디스플레이하는 디바이스가 음성 인식 컴포넌트들을 포함할 경우에, 이들은 음성 명령들을 이용하여 작동될 수 있다.
여러 데이터 저장소들 또한 논의되었다. 이 저장소들은 각각 다수의 데이터 저장소들로 나누어질 수 있는 것이다. 모든 저장소들이 그에 액세스하는 시스템들에 대해 로컬이거나, 모든 저장소들이 원격이거나, 또는 저장소들 일부만 로컬이고 나머지는 원격일 수 있다. 이러한 구성들 모두가 이 문서에서 고려된다.
또한, 도면들은 각 블럭에 속하는 기능과 함께 다수의 블럭들을 도시한다. 더 적은 수의 블럭들이 이용될 수 있으며 이에 따라 더 적은 수의 컴포넌트들에 의해 기능이 수행된다. 또한, 더 많은 수의 블럭들이 이용될 수 있으며 이에 따라 더 많은 수의 컴포넌트들 사이에서 기능이 분배된다.
도 8은, 그 구성요소들이 클라우드 컴퓨팅 아키텍처(550)에 배치되는 것을 제외하고, 도 1에 도시된 아키텍처(100)에 관한 블럭도이다. 클라우드 컴퓨팅은, 서비스를 전달하는 시스템의 물리적 위치 또는 구성에 관한 최종 사용자(end-user)의 인지를 필요로 하지 않는 연산, 소프트웨어, 데이터 액세스, 및 저장 서비스들을 제공한다. 여러 실시예들에서, 클라우드 컴퓨팅은 적절한 프로토콜들을 이용하여 인터넷과 같은 원거리 네트워크를 통해 서비스를 전달한다. 예컨대, 클라우드 컴퓨팅 공급자는 원거리 네트워크를 통해 애플리케이션들을 전달하며 이 애플리케이션들은 웹 브라우저 또는 임의의 다른 컴퓨팅 컴포넌트를 통해 액세스될 수 있다. 아키텍처(100)의 컴포넌트들 또는 소프트웨어 뿐만 아니라 대응하는 데이터도 원격지의 서버들 상에 저장될 수 있다. 클라우드 컴퓨팅 환경의 컴퓨팅 자원들은 원격 데이터 중심지에 통합되어 있거나 분산되어 있을 수 있다. 클라우드 컴퓨팅 인프라스트럭처(infrastructure)들은, 그들이 사용자에 대한 단일 액세스 포인트로 나타나긴 하지만, 공유 데이터 센터들을 통해 서비스들을 전달할 수 있다. 따라서, 이 문서에 기술된 컴포넌트들 및 기능들은 클라우드 컴퓨팅 아키텍처를 이용하여 원격지의 서비스 공급자로부터 제공될 수 있다. 대안으로, 이 컴포넌트들 및 기능들은 종래의 서버로부터 제공될 수 있거나, 클라이언트 디바이스들에 직접 설치될 수 있거나, 또는 다른 방식으로 제공될 수 있다.
서술된 내용은 퍼블릭 클라우드 컴퓨팅 및 프라이빗 클라우드 컴퓨팅 양자 모두를 포함한다. 클라우드 컴퓨팅(퍼블릭 및 프라이빗 양자 모두)은 실질적으로 심리스(seamless)인 자원들의 풀링(pooling)을 제공할 뿐만 아니라, 하부 하드웨어 인프라스트럭처를 관리 및 구성할 필요성을 감소시킨다.
퍼블릭 클라우드는 공급자에 의해 관리되며 일반적으로 동일한 인프라스트럭처를 이용하는 다수의 소비자들에 의해 지원된다. 또한, 퍼블릭 클라우드는, 프라이빗 클라우드와는 반대로, 최종 사용자들을 하드웨어 관리로부터 해방시킬 수 있다. 프라이빗 클라우드는 그 조직 스스로에 의해 관리될 수 있으며, 그 인프라스트럭처는 일반적으로 다른 조직들과 공유되지 않는다. 그 조직은 설치 및 수리 등과 같이 어느 정도까지는 계속하여 하드웨어를 유지보수한다.
도 8에 도시된 예시에서, 일부 아이템들은 도 1에 도시된 것들과 유사하며, 이들은 유사하게 넘버링된다. 도 8은 특히 맵 서비스(114) 및 이메일 시스템들(142 및 166)이 클라우드(552)(이는 퍼블릭, 프라이빗, 또는 일부는 퍼블릭이고 나머지는 프라이빗인 경우의 조합일 수 있음)에 배치될 수 있음을 보여준다. 따라서, 사용자들(124, 126, 136 및 138)은 클라우드(552)를 통해 그러한 시스템들에 액세스하기 위해 사용자 디바이스들(556, 558, 560 및 562)을 이용할 수 있다.
도 8은 클라우드 아키텍처에 관한 또 다른 예시를 또한 도시한다. 도 8은 아키텍처(100)의 일부 구성요소들이 클라우드(552)에 배치되고 나머지 구성요소들은 클라우드(552)에 배치되지 않을 수 있음이 또한 고려됨을 보여준다. 예시로서, 데이터 저장소들(148 및 184)은 클라우드(552)의 외부에 배치되며, 클라우드(552)를 통해 액세스될 수 있다. 또 다른 예시에서, 위치 통합 시스템들(152 및 168)은 클라우드(552)의 외부에 있을 수 있다. 어디에 위치되어 있는지와 무관하게, 이들은 네트워크(원거리 네트워크 또는 근거리 네트워크)를 통해 사용자 디바이스들에 의해 직접 액세스될 수 있거나, 서비스를 통해 원격 사이트에서 호스팅될 수 있거나, 또는 클라우드에 상주하는 연결 서비스를 통해 액세스될 수 있다. 이들 아키텍처들 모두가 이 문서에서 고려된다.
아키텍처(100) 또는 그 일부분은 매우 다양한 여러 디바이스들 상에 배치될 수 있다. 그러한 디바이스들 중 일부는 서버, 데스크탑 컴퓨터, 랩탑 컴퓨터, 태블릿 컴퓨터, 또는 팜탑 컴퓨터, 휴대폰, 스마트폰, 멀티미디어 플레이어, 개인 휴대 정보 단말기 등과 같은 다른 모바일 디바이스들을 포함한다.
도 9는 본 발명의 시스템(또는 그 일부)이 배치될 수 있는 사용자 또는 클라이언트의 핸드헬드 디바이스(16)로 이용될 수 있는 핸드헬드 또는 모바일 컴퓨팅 디바이스에 관한 하나의 예시적인 실시예의 단순화된 블럭도이다. 도 10 및 도 11은 핸드헬드 또는 모바일 디바이스들에 관한 예시들이다.
도 9는 아키텍처(100)의 컴포넌트들을 실행시킬 수 있거나, 아키텍처(100)와 상호작용하거나, 또는 양자 모두를 행하는 클라이언트 디바이스(16)의 컴포넌트들에 관한 일반적인 블럭도를 제공한다. 그 디바이스(16)에서는, 핸드헬드 디바이스가 다른 컴퓨팅 디바이스들과 통신할 수 있도록 하고, 일부 실시예들에서, 예컨대 스캐닝을 통해, 자동으로 정보를 수신하는 채널을 제공하는 통신 링크(13)가 제공된다. 통신 링크(13)에 관한 예시들은, 적외선 포트, 시리얼/USB 포트, 이더넷 포트와 같은 케이블 네트워크 포트, 및 네트워크에 대한 셀룰러 접속을 제공하는 데에 이용되는 무선 서비스들인 일반 패킷 무선 서비스(GPRS; General Packet Radio Service), LTE, HSPA, HSPA+와 다른 3G 및 4G 무선 프로토콜들, 1Xrtt, 및 단문 메시지 서비스(SMS; Short Message Service) 뿐만 아니라, 네트워크에 대한 로컬 무선 연결을 제공하는 Wi-Fi 프로토콜 및 블루투스 프로토콜도 포함하는 하나 이상의 통신 프로토콜들을 통한 통신을 가능하게 하는 무선 네트워크 포트를 포함한다.
다른 예시들에서, 애플리케이션들 또는 시스템들은 비화 디지털(SD; secure digital) 카드 인터페이스(15)에 연결된 착탈가능 SD 카드 상에서 수신된다. SD 카드 인터페이스(15) 및 통신 링크(13)는, 메모리(21) 및 입출력(I/O) 컴포넌트들(23) 뿐만 아니라 클록(25) 및 위치 시스템(27)에도 또한 연결되어 있는 버스(19)를 따라서 프로세서(17)(이는 앞서의 도면들의 프로세서들 또는 서버들을 또한 구현할 수 있음)와 통신한다.
일 실시예에서, I/O 컴포넌트들(23)은 입력 및 출력 동작들을 가능하게 하기 위해 제공된다. 디바이스(16)의 여러 실시예에 대한 I/O 컴포넌트들(23)은 버튼, 터치 센서, 멀티터치 센서, 광학 또는 영상 센서, 음성 센서, 터치 스크린, 근접 센서, 마이크로폰, 기울기 센서, 및 중력 스위치와 같은 입력 컴포넌트들과, 디스플레이 디바이스, 스피커, 및/또는 프린터 포트와 같은 출력 컴포넌트들을 포함할 수 있다. 다른 I/O 컴포넌트들(23)도 또한 이용될 수 있다.
클록(25)은 예시적으로 시간 및 날짜를 출력하는 실시간 클록 컴포넌트를 포함한다. 이 클록(25)은 또한 예시적으로 프로세서(17)를 위한 타이밍 기능을 제공한다.
위치 시스템(27)은 예시적으로 디바이스(16)의 현재의 지리적 위치를 출력하는 컴포넌트를 포함한다. 이 시스템(27)은, 예컨대, 글로벌 위치확인 시스템(GPS) 수신기, LORAN 시스템, 추측 항법(dead reckoning) 시스템, 셀룰러 삼각측량 시스템, 또는 다른 위치확인 시스템을 포함할 수 있다. 그 시스템(27)은, 또한, 예컨대, 원하는 맵, 네비게이션 루트, 및 다른 지리적 기능을 생성하는 맵핑 소프트웨어 또는 네비게이션 소프트웨어를 포함할 수 있다.
메모리(21)는 운용 시스템(29), 네트워크 설정(31), 애플리케이션(33), 애플리케이션 구성 설정(35), 데이터 저장소(37), 통신 드라이버(39), 및 통신 구성 설정(41)을 저장한다. 메모리(21)는 모든 종류의 유형의(tangible) 휘발성 및 비휘발성 컴퓨터 판독 가능 메모리 디바이스들을 포함할 수 있다. 그 메모리(21)는 컴퓨터 저장 매체(이하에서 서술됨) 또한 포함할 수 있다. 메모리(21)는, 프로세서(17)에 의해 실행될 때, 프로세서로 하여금 명령들에 따라 컴퓨터 실행 단계들 또는 기능들을 수행하도록 하는 컴퓨터 판독 가능 명령들을 저장한다. 유사하게, 디바이스(16)는 여러 비지니스 애플리케이션들을 실행하거나 아키텍처(100)의 일부 또는 전부를 구현할 수 있는 클라이언트 비지니스 시스템(24)를 포함할 수 있다. 프로세서(17)는 다른 컴포넌트들에 의해 활성화되어 그 컴포넌트들이 또한 기능하게끔 할 수 있다.
네트워크 설정(31)에 관한 예시들은 프록시 정보, 인터넷 연결 정보, 및 맵핑들과 같은 것들을 포함한다. 애플리케이션 구성 설정(35)은 애플리케이션을 특정 기업 또는 사용자에 맞춘 설정을 포함한다. 통신 구성 설정(41)은 다른 컴퓨터들과 통신하기 위한 파라미터들을 제공하며 GPRS 파라미터, SMS 파라미터, 연결 사용자명 및 패스워드와 같은 아이템들을 포함한다.
애플리케이션들(33)은 또한, 운용 시스템(29)의 일부이거나 디바이스(16) 외부에서 호스팅될 수 있긴 하지만, 디바이스(16) 상에 이전에 저장되어 있던 애플리케이션들 또는 사용 중에 설치되는 애플리케이션들일 수 있다.
도 10은 디바이스(16)가 태블릿 컴퓨터(600)인 일 실시예를 보여준다. 도 6에서, 컴퓨터(600)는 사용자 인터페이스 디스플레이 스크린(602)과 함께 도시된다. 스크린(602)은 터치 스크린(이에 따라 사용자 손가락의 터치 제스처들이 애플리케이션과 상호작용하는 데에 이용될 수 있음), 또는 펜이나 스타일러스로부터 입력을 수신하는 펜 인에이블(pen-enabled) 인터페이스일 수 있다. 그 컴퓨터(600)는 온 스크린(on-screen) 가상 키보드를 또한 이용할 수 있다. 물론, 컴퓨터(600)는, 예컨대, 무선 링크 또는 USB 포트과 같은 적절한 부가(attachment) 메커니즘을 통해 키보드 또는 다른 사용자 입력 디바이스에 또한 부가될 수 있다. 컴퓨터(600)는 또한 예시적으로 음성 입력도 수신할 수 있다.
디바이스들(16)에 관한 추가 예시들이 또한 이용될 수 있다. 디바이스(16)는 피처(feature) 폰, 스마트 폰, 또는 모바일 폰일 수 있다. 그 폰은 전화 번호를 다이얼링하기 위한 한 세트의 키패드들, 애플리케이션 이미지 아이콘, 웹 페이지, 사진, 및 영상을 포함하는 이미지들을 디스플레이할 수 있는 디스플레이, 및 디스플레이 상에 보여지는 아이템들을 선택하기 위한 제어 버튼들을 포함할 수 있다. 그 폰은 GPRS와 1Xrtt, 및 SMS 신호들과 같은 셀룰러 폰 신호들을 수신하는 안테나를 포함할 수 있다. 일부 예시들에서, 그 폰은 SD 카드를 받아들이는 SD 카드 슬롯을 또한 포함한다.
도 11은 디바이스가 스마트폰(71)일 수 있음을 보여준다. 스마트폰(71)은 아이콘이나 타일, 또는 다른 사용자 입력 메커니즘(75)을 디스플레이하는 터치 감응식 디스플레이(73)를 포함한다. 이 메커니즘(75)은 사용자가, 예컨대, 애플리케이션을 실행하고, 전화를 걸고, 데이터 전송 작업을 수행하는 데에 이용될 수 있다. 일반적으로, 스마트폰(71)은 모바일 운영 체제에 의거하며 피처 폰에 비하여 보다 개선된 컴퓨팅 성능 및 연결성을 제공한다.
다른 형태의 디바이스들(16)도 가능하다.
도 12는 아키텍처(100) 또는 그 일부가 (예컨대) 배치될 수 있는 컴퓨팅 환경에 관한 일 예시이다. 도 12를 참조하면, 일부 실시예들을 구현하는 하나의 예시적인 시스템은 컴퓨터(810) 형태의 범용 컴퓨팅 디바이스를 포함한다. 컴퓨터(810)의 컴포넌트들은, 그에 제한되는 것은 아니지만, 프로세싱 유닛(820)(이는 앞서의 도면들의 프로세서들 또는 서버들을 포함할 수 있음), 시스템 메모리(830), 및 시스템 메모리를 프로세싱 유닛(820)에 결합시키는 것을 포함하여 여러 시스템 컴포넌트들을 결합시키는 시스템 버스(821)를 포함할 수 있다. 시스템 버스(821)는 여러 가지 버스 아키텍처들 중 어느 하나를 이용하는 메모리 버스 또는 메모리 제어기, 주변 장치 버스, 및 로컬 버스를 포함하는 여러 유형들의 버스 구조들 중 어느 하나일 수 있다. 제한이 아닌 예시로서, 그러한 아키텍처들은 ISA(Industry Standard Architecture) 버스, MCA(Micro Channel Architecture) 버스, 개선된 ISA(EISA) 버스, 베사(VESA; Video Electronics Standards Association) 로컬 버스, 및 메자닌(Mezzanine) 버스라고도 알려진 PCI(Peripheral Component Interconnect) 버스를 포함한다. 도 1에 관하여 서술된 메모리 및 프로그램들은 도 12의 대응 부분들에 배치될 수 있다.
컴퓨터(810)는 일반적으로 여러 가지의 컴퓨터 판독 가능 매체들을 포함한다. 컴퓨터 판독 가능 매체들은 컴퓨터(810)에 의해 액세스될 수 있는 임의의 이용 가능한 매체들일 수 있으며, 휘발성 및 비휘발성 매체들과 착탈가능 및 비착탈가능(non-removable) 매체들 양자 모두를 포함한다. 제한이 아닌 예시로서, 컴퓨터 판독 가능 매체들은 컴퓨터 저장 매체들 및 통신 매체들을 포함할 수 있다. 컴퓨터 저장 매체들은 변조 데이터 신호 또는 반송파와는 상이하며 이를 포함하지 않는다. 그 매체들은, 컴퓨터 판독 가능 명령, 데이터 구조, 프로그램 모듈, 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술에서 구현되는 휘발성 및 비휘발성 매체들과 착탈가능 및 비착탈가능 매체들 양자 모두를 포함하는 하드웨어 저장 매체들을 포함한다. 컴퓨터 저장 메체들은, 그에 제한되는 것은 아니지만, RAM, ROM, EEPROM, 플래시 메모리나 다른 메모리 기술, CD-ROM, 디지털 다기능 디스크(DVD; digital versatile disk)나 다른 광 디스크 저장소, 자기 카세트, 자기 테이프, 자기 디스크 저장소나 다른 자기 저장 디바이스들, 또는 원하는 정보를 저장하는 데에 이용될 수 있고 컴퓨터(810)에 의해 액세스될 수 있는 임의의 다른 매체를 포함한다. 통신 매체들은 일반적으로 컴퓨터 판독 가능 명령, 데이터 구조, 프로그램 모듈 또는 다른 데이터를 전송 메커니즘으로 구현하며, 임의의 정보 전달 매체들을 포함한다. "변조 데이터 신호"라는 용어는 그것의 특성 세트 중 하나 이상을 가진 신호 또는 신호의 정보를 인코딩하는 것과 같은 방식으로 변화된 신호를 의미한다. 제한이 아닌 예시로서, 통신 매체들은 유선 네트워크 또는 직접 유선 연결과 같은 유선 매체들과, 음향, RF, 적외선 및 다른 무선 매체들과 같은 무선 매체들을 포함한다. 상기의 것들 중 임의의 것의 조합들은 컴퓨터 판독 가능 매체들의 범주 내에 또한 포함될 것이다.
시스템 메모리(830)는 읽기 전용 메모리(ROM; read only memory)(831) 및 랜덤 액세스 메모리(RAM; random access memory)(832)와 같은 휘발성 및/또는 비휘발성 메모리 형태의 컴퓨터 저장 매체들을 포함한다. 예컨대, 스타트업 동안에, 컴퓨터(810) 내의 구성요소들 사이에서 정보가 전송되도록 돕는 기본 루틴들을 포함하는 기본 입출력 시스템(BIOS; basic input/output system)(833)은 일반적으로 ROM(831)에 저장된다. RAM(832)은 일반적으로, 그에 즉시 액세스 가능하고/하거나 프로세싱 유닛(820)에 의한 작업이 현재 수행되고 있는 데이터 및/또는 프로그램 모듈들을 포함한다. 제한이 아닌 예시로서, 도 12는 운영 체제(834), 애플리케이션 프로그램(835), 다른 프로그램 모듈들(836), 및 프로그램 데이터(837)를 도시한다.
컴퓨터(810)는 다른 착탈가능/비착탈가능, 휘발성/비휘발성 컴퓨터 저장 매체들을 또한 포함할 수 있다. 오직 예시로서, 도 12는 비착탈가능, 비휘발성 자기 매체들로부터 판독하고 그들에 기록하는 하드 디스크 드라이브(841)와, CD ROM 또는 다른 광 매체들과 같은 착탈가능, 비휘발성 광 디스크(856)로부터 판독하고 그에 기록하는 광 디스크 드라이브(841)를 도시한다. 예시적인 운영 환경에서 이용될 수 있는 다른 착탈가능/비착탈가능, 휘발성/비휘발성 컴퓨터 저장 매체들은, 그에 제한되는 것은 아니지만, 자기 테이프 카세트, 플래시 메모리 카드, 디지털 다기능 디스크, 디지털 비디오 테이프, 고체(solid state) RAM, 고체 ROM, 및 그 밖에 유사한 것을 포함한다. 하드 디스크 드라이브(841)는 일반적으로 인터페이스(840)와 같은 비착탈가능 메모리 인터페이스를 통해 시스템 버스(821)에 연결되고, 광 디스크 드라이브(855)는 일반적으로 인터페이스(850)와 같은 착탈가능 메모리 인터페이스에 의해 시스템 버스(821)에 연결된다.
대안으로, 또는 추가적으로, 이 문서에서 서술된 기능은, 적어도 부분적으로 하나 이상의 하드웨어 로직 컴포넌트들에 의해 수행될 수 있다. 예를 들어, 그리고 제한 없이, 이용될 수 있는 하드웨어 로직 컴포넌트들의 예시적인 유형들은 필드 프로그래머블 게이트 어레이(FPGA; Field-programmable Gate Array), 프로그램 지정 집적 회로(ASIC; Program-specific Integrated Circuit), 프로그램 지정 표준 제품(ASSP; Program-specific Standard Product), 시스템 온 칩(SOC; system-on-a-chip) 시스템, 복합 프로그램가능 로직 디바이스(CPLD; Complex Programmable Logic Device) 등을 포함한다.
앞서 논의되고 도 12에 도시된 드라이브들 및 그들의 관련 컴퓨터 저장 매체들은 컴퓨터 판독 가능 명령, 데이터 구조, 프로그램 모듈, 및 컴퓨터(810)에 대한 다른 데이터에 관한 저장소를 제공한다. 도 12에서, 예컨대, 하드 디스크 드라이브(841)는 운영 체제(844), 애플리케이션 프로그램(845), 다른 프로그램 모듈(846), 및 프로그램 데이터(847)를 저장하는 것으로 도시된다. 이러한 컴포넌트들은 운영 체제(834), 애플리케이션 프로그램(835), 다른 프로그램 모듈(836), 및 프로그램 데이터(837)와 동일하거나 이들과 상이할 수 있다. 운영 체제(844), 애플리케이션 프로그램(845), 다른 프로그램 모듈(846), 및 프로그램 데이터(847)에는, 최소한, 이들이 각각 다른 복제본(copy)들임을 나타내기 위해 상이한 번호가 주어져 있다.
사용자는 키보드(862), 마이크로폰(863)과 같은 입력 디바이스들과 마우스, 트랙볼, 또는 터치 패드와 같은 포인팅 디바이스(86)를 통해 컴퓨터(810)에 명령들 및 정보를 입력할 수 있다. 다른 입력 디바이스들(미도시)은 조이스틱, 게임 패드, 위성 안테나, 스캐너, 또는 그 밖에 유사한 것을 포함할 수 있다. 이들 및 다른 입력 디바이스들은 종종 시스템 버스에 결합된 사용자 입력 인터페이스(860)를 통해 프로세싱 유닛(820)에 연결되지만, 병렬 포트, 게임 포트, 또는 유니버셜 시리얼 버스(USB; universal serial bus)와 같은 다른 인터페이스 및 버스 구조들에 의해 연결될 수도 있다. 시각 디스플레이(891) 또는 다른 유형의 디스플레이 디바이스는 비디오 인터페이스(890)와 같은 인터페이스를 통해 시스템 버스(821)에 또한 연결된다. 모니터에 더하여, 컴퓨터들은, 출력 주변 장치 인터페이스(895)를 통해 연결될 수 있는 스피커(897) 및 프린터(896)와 같은 다른 주변 장치 출력 디바이스들을 또한 포함할 수 있다.
컴퓨터(810)는 원격 컴퓨터(880)와 같은 하나 이상의 원격 컴퓨터들에 대한 논리적 연결을 이용하여 네트워킹된 환경에서 작동한다. 원격 컴퓨터(880)는 개인용 컴퓨터, 핸드헬드 디바이스, 서버, 라우터, 네트워크 PC, 피어 디바이스, 또는 다른 공통 네트워크 노드일 수 있으며, 일반적으로 컴퓨터(810)에 관하여 상술한 구성요소들 중 다수 또는 그 전부를 포함한다. 도 12에 도시된 논리적 연결은 근거리 네트워크(LAN)(871) 및 원거리 네트워크(WAN)(873)를 포함하지만, 다른 네트워크들도 또한 포함할 수 있다. 그러한 네트워킹 환경은 오피스, 전사적(enterprise-wide) 컴퓨터 네트워크, 인트라넷, 및 인터넷에서 아주 흔한 것이다.
LAN 네트워킹 환경에서 이용될 경우에, 컴퓨터(810)는 네트워크 인터페이스 또는 어댑터(870)를 통해 LAN(871)에 연결된다. WAN 네트워킹 환경에서 이용될 경우에, 컴퓨터(810)는 일반적으로 모뎀(872) 또는 인터넷과 같은 WAN(873)을 통한 통신을 확립하기 위한 다른 수단을 포함한다. 내부 또는 외부에 있을 수 있는 모뎀(872)은 사용자 입력 인터페이스(860) 또는 다른 적절한 메커니즘을 통해 시스템 버스(821)에 연결될 수 있다. 네트워킹된 환경에서, 컴퓨터(810)에 관하여 도시된 프로그램 모듈들, 또는 그들의 일부는 원격 메모리 저장 디바이스에 저장될 수 있다. 제한이 아닌 예시로서, 도 12는 원격 컴퓨터(880)에 상주하는 원격 애플리케이션 프로그램(885)을 도시한다. 도시된 네트워크 연결들은 예시적인 것들이며 컴퓨터들 간에 통신 링크를 확립하는 다른 수단들이 이용될 수 있다.
이 문서에서 서술된 각각 다른 실시예들은 상이한 방식들로 결합될 수 있는것이다. 즉, 하나 이상의 실시예들 중 일부는 하나 이상의 실시예들 중 일부와 결합될 수 있다. 이러한 모든 것들이 이 문서에서 고려된다.
예시 1은 컴퓨팅 시스템으로서,
이메일 메시지 내의 메시지 컨텐츠를 수신하고 디스플레이하는 작성 창을 갖는 이메일 사용자 인터페이스 디스플레이를 생성하는 전자 메일(이메일) 시스템;
위치 정보를 수신하고 위치 정보에 기초하여 인터랙티브 맵 디스플레이를 생성하는 위치 통합 시스템; 및
위치 이메일 메시지를 생성하기 위해, 작성 창을 인터랙티브 맵 디스플레이의 선택가능한 표시로 채우도록 이메일 시스템을 제어하는 이메일 채움 로직으로서, 인터랙티브 맵 디스플레이의 선택가능한 표시는 위치 이메일 메시지의 수신자에 의해 선택가능한 것인, 이메일 채움 로직을 포함하는 컴퓨팅 시스템이다.
예시 2는 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨팅 시스템으로서, 이메일 채움 로직은, 이메일 사용자 인터페이스 디스플레이 상에 디스플레이되며 인터랙티브 맵 디스플레이 상의 대응하는 맵 기능을 수행하도록 각각 작동되는 한 세트의 사용자 작동가능 맵 기능 작동기들을 생성하고, 이메일 채움 로직은, 주어진 맵 기능 작동기의 사용자 작동에 기초하여 위치 정보 소스에 의해 경험되는 인터페이스와 상호작용하여 대응하는 맵 기능을 수행한다.
예시 3은 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨팅 시스템으로서, 이메일 채움 로직은, 작동될 때 위치 정보에 기초하여 인터랙티브 맵 디스플레이 상에 위치 마커를 디스플레이하도록 인터랙티브 맵 디스플레이를 제어하는 위치 마커 작동기를 한 세트의 맵 기능 작동기들 중 하나로서 생성한다.
예시 4는 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨팅 시스템으로서, 이메일 채움 로직은,
인터랙티브 맵 디스플레이의 선택가능한 표시를 인터랙티브 맵 디스플레이의 선택가능한 미리보기로서 생성하고, 위치 마커가 디스플레이되어 있는 인터랙티브 맵 디스플레이의 선택가능한 미리보기를 작성 창의 메시지 컨텐츠와 일렬로 맞춰지도록 위치 이메일 메시지에 통합시키는 맵 디스플레이 통합 로직을 포함한다.
예시 5는 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨팅 시스템으로서, 한 세트의 맵 기능 작동기들은 추가적인 위치 기반 정보의 소스에 각각 대응하는 복수의 상이한 작동기들을 포함하고, 이메일 채움 로직은,
추가적인 위치 기반 정보를 작성 창의 메시지 컨텐츠 및 인터랙티브 맵 디스플레이의 선택가능한 미리보기와 일렬로 맞춰지도록 위치 이메일 메시지에 통합시키는 추가 정보 통합 로직을 포함한다.
예시 6은 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨팅 시스템으로서,
인터랙티브 맵 디스플레이 상의 위치 마커들에 대응하는 위치 정보를 식별하기 위해 인터랙티브 맵 디스플레이에 액세스하고, 위치 마커들에 대응하는 위치 정보에 기초하여 여정을 나타내는 여정 기록을 생성하는 여정 생성 로직을 더 포함한다.
예시 7은 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨팅 시스템으로서, 여정 생성 로직은,
여정을 파라미터로 나타내기 위해 파라미터를 입력하도록 작동되는 파라미터 입력 메커니즘을 생성하는 파라미터 프로세싱 시스템을 포함하며, 여정 생성 로직은 파라미터에 기초하여 여정 기록을 생성한다.
예시 8은 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨팅 시스템으로서, 여정 생성 로직은,
여정 기록을 수정하도록 작동되는 사용자 작동가능 수정 작동기를 생성하는 수정 컴포넌트를 포함한다.
예시 9는 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨팅 시스템으로서, 위치 통합 시스템은,
인터랙티브 맵 디스플레이를 생성하기 위해 위치 통합 시스템의 기능을 활성화시키는 활성화 입력을 검출하는 위치 기능 검출 로직을 포함한다.
예시 10은 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨팅 시스템으로서, 위치 기능 검출 로직은 작성 창 상에 위치 작동기를 디스플레이하도록 이메일 시스템을 제어하고, 위치 기능 검출 로직은,
작성 창 상의 위치 작동기의 사용자 작동을 검출하는 사용자 입력 검출기를 포함한다.
예시 11은 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨팅 시스템으로서, 위치 기능 검출 로직은,
이메일 메시지 내의 메시지 컨텐츠의 언어적 컨텐츠에 기초하여 활성화 입력을 검출하는 자동 검출기를 포함한다.
예시 12는 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨팅 시스템으로서, 위치 통합 시스템은,
위치 정보를 검출하는 위치 검출 로직을 포함한다.
예시 13은 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨팅 시스템으로서, 위치 검출 로직은,
위치 통합 시스템의 현재 위치를 위치 정보로서 검출하는 현재 위치 검출기를 포함한다.
예시 14는 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨팅 시스템으로서, 위치 검출 로직은,
위치 입력 메커니즘을 디스플레이하고 위치 정보를 얻기 위해 위치 입력 메커니즘의 사용자 작동을 검출하는 사용자 입력 위치 검출기를 포함한다.
예시 15는 컴퓨터로 구현되는 방법으로서,
이메일 메시지 내의 메시지 컨텐츠를 수신하고 디스플레이하는 작성 창을 갖는 이메일 사용자 인터페이스 디스플레이를 생성하는 단계;
위치 정보를 수신하는 단계;
위치 정보에 기초하여 인터랙티브 맵 디스플레이를 생성하는 단계; 및
위치 이메일 메시지를 생성하기 위해, 작성 창을 인터랙티브 맵 디스플레이의 선택가능한 표시로 채우도록 이메일 시스템을 제어하는 단계로서, 인터랙티브 맵 디스플레이의 선택가능한 표시는 위치 이메일 메시지의 수신자에 의해 선택가능한 것인, 이메일 시스템 제어 단계를 포함하는 컴퓨터로 구현되는 방법이다.
예시 16은 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨터로 구현되는 방법으로서,
이메일 사용자 인터페이스 디스플레이 상에 디스플레이되며 인터랙티브 맵 디스플레이 상의 대응하는 맵 기능을 수행하도록 각각 작동되는 한 세트의 사용자 작동가능 맵 기능 작동기들을 생성하는 단계;
주어진 맵 기능 작동기의 작동을 검출하는 단계;
주어진 맵 기능 작동기의 사용자 작동에 기초하여, 위치 정보 소스에 의해 경험되는 인터페이스에 액세스하는 단계; 및
대응하는 맵 기능을 수행하는 단계를 더 포함하는 컴퓨터로 구현되는 방법이다.
예시 17은 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨터로 구현되는 방법으로서, 한 세트의 맵 기능 작동기들을 생성하는 단계는,
위치 마커 작동기를 한 세트의 맵 기능 작동기들 중 하나로서 생성하는 단계;
위치 마커 작동기의 작동을 검출하는 단계; 및
위치 정보에 기초하여 인터랙티브 맵 디스플레이 상에 위치 마커를 디스플레이하도록 인터랙티브 맵 디스플레이를 제어하는 단계를 포함한다.
예시 18은 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨터로 구현되는 방법으로서, 작성 창을 채우도록 이메일 시스템을 제어하는 단계는,
인터랙티브 맵 디스플레이의 선택가능한 표시를 인터랙티브 맵 디스플레이의 선택가능한 미리보기로서 생성하는 단계; 및
위치 마커가 디스플레이되어 있는 인터랙티브 맵 디스플레이의 선택가능한 미리보기를 작성 창의 메시지 컨텐츠와 일렬로 맞춰지도록 위치 이메일 메시지에 통합시키는 단계를 포함한다.
예시 19는 상술한 예시들 중 어느 하나 또는 모두에 관한 컴퓨터로 구현되는 방법으로서,
인터랙티브 맵 디스플레이 상의 위치 마커들에 대응하는 위치 정보를 식별하기 위해 인터랙티브 맵 디스플레이에 액세스하는 단계; 및
위치 마커들에 대응하는 위치 정보에 기초하여, 여정을 나타내는 여정 기록을 생성하는 단계를 더 포함하는 컴퓨터로 구현되는 방법이다.
예시 20은 컴퓨팅 시스템으로서,
이메일 메시지 내의 메시지 컨텐츠를 수신하고 디스플레이하는 작성 창을 갖는 이메일 사용자 인터페이스 디스플레이를 생성하는 전자 메일(이메일) 시스템;
위치 정보를 수신하고 위치 정보에 기초하여 인터랙티브 맵 디스플레이를 생성하는 위치 통합 시스템; 및
작동될 때 위치 정보에 기초하여 인터랙티브 맵 디스플레이 상에 위치 마커를 디스플레이하도록 인터랙티브 맵 디스플레이를 제어하는 위치 마커 작동기를 생성하도록 이메일 시스템을 제어하는 이메일 채움 로직으로서, 이메일 채움 로직은 위치 이메일 메시지를 생성하기 위해 작성 창 상의 메시지 컨텐츠와 일렬로 맞춰지게끔 작성 창을 위치 마커가 디스플레이되어 있는 인터랙티브 맵 디스플레이의 선택가능한 표시로 채우도록 구성되고, 인터랙티브 맵 디스플레이의 선택가능한 표시는 위치 이메일 메시지의 수신자에 의해 선택가능한 것인, 이메일 채움 로직을 포함하는 컴퓨팅 시스템이다.
발명의 대상물이 구조적 특징들 및/또는 방법론적 행동들에 맞는 언어로 기술되긴 하였지만, 첨부되는 청구 범위에서 정의되는 발명의 대상물은 앞서 기술된 특정한 특징들 또는 행동들로 반드시 제한되는 것은 아니다. 오히려, 앞서 기술된 특정한 특징들 또는 행동들은 청구범위의 구현에 관한 예시적인 형태로서 개시된다.
Claims (15)
- 컴퓨팅 시스템에 있어서,
이메일 메시지 내의 메시지 컨텐츠를 수신하고 디스플레이하는 작성 창(compose pane)을 갖는 이메일 사용자 인터페이스 디스플레이를 생성하는 전자 메일(이메일) 시스템;
위치 정보를 수신하고 상기 위치 정보에 기초하여 인터랙티브(interactive) 맵 디스플레이를 생성하는 위치 통합 시스템; 및
위치 이메일 메시지를 생성하기 위해, 상기 작성 창을 상기 인터랙티브 맵 디스플레이의 선택가능한 표시로 채우도록(populate) 상기 이메일 시스템을 제어하는 이메일 채움 로직으로서, 상기 인터랙티브 맵 디스플레이의 선택가능한 표시는 상기 위치 이메일 메시지의 수신자에 의해 선택가능한 것인, 상기 이메일 채움 로직
을 포함하는, 컴퓨팅 시스템. - 제1항에 있어서,
상기 이메일 채움 로직은, 상기 이메일 사용자 인터페이스 디스플레이 상에 디스플레이되며 상기 인터랙티브 맵 디스플레이 상의 대응하는 맵 기능을 수행하도록 각각 작동되는 한 세트의 사용자 작동가능 맵 기능 작동기들을 생성하고, 상기 이메일 채움 로직은, 주어진 맵 기능 작동기의 사용자 작동에 기초하여 위치 정보 소스에 의해 경험되는(exposed) 인터페이스와 상호작용하여 대응하는 맵 기능을 수행하는 것인, 컴퓨팅 시스템. - 제2항에 있어서,
상기 이메일 채움 로직은, 작동될 때 상기 위치 정보에 기초하여 상기 인터랙티브 맵 디스플레이 상에 위치 마커(marker)를 디스플레이하도록 상기 인터랙티브 맵 디스플레이를 제어하는 위치 마커 작동기를 상기 한 세트의 맵 기능 작동기들 중 하나로서 생성하는 것인, 컴퓨팅 시스템 - 제3항에 있어서,
상기 이메일 채움 로직은,
상기 인터랙티브 맵 디스플레이의 선택가능한 표시를 상기 인터랙티브 맵 디스플레이의 선택가능한 미리보기(preview)로서 생성하고, 상기 위치 마커가 디스플레이되어 있는 상기 인터랙티브 맵 디스플레이의 선택가능한 미리보기를 상기 작성 창의 메시지 컨텐츠와 일렬로 맞춰지도록(in-line) 상기 위치 이메일 메시지에 통합시키는 맵 디스플레이 통합 로직을 포함하는 것인, 컴퓨팅 시스템. - 제4항에 있어서,
상기 한 세트의 맵 기능 작동기들은 추가적인 위치 기반 정보의 소스에 각각 대응하는 복수의 상이한 작동기들을 포함하고, 상기 이메일 채움 로직은,
상기 추가적인 위치 기반 정보를 상기 작성 창의 메시지 컨텐츠 및 상기 인터랙티브 맵 디스플레이의 선택가능한 미리보기와 일렬로 맞춰지도록 상기 위치 이메일 메시지에 통합시키는 추가 정보 통합 로직을 포함하는 것인, 컴퓨팅 시스템. - 제3항에 있어서,
상기 인터랙티브 맵 디스플레이 상의 위치 마커들에 대응하는 위치 정보를 식별하기 위해 상기 인터랙티브 맵 디스플레이에 액세스하고, 상기 위치 마커들에 대응하는 위치 정보에 기초하여 여정(itinerary)을 나타내는 여정 기록을 생성하는 여정 생성 로직을 더 포함하는, 컴퓨팅 시스템. - 제6항에 있어서,
상기 여정 생성 로직은,
상기 여정을 파라미터로 나타내기 위해 파라미터를 입력하도록 작동되는 파라미터 입력 메커니즘을 생성하는 파라미터 프로세싱 시스템을 포함하며, 상기 여정 생성 로직은 상기 파라미터에 기초하여 상기 여정 기록을 생성하는 것인, 컴퓨팅 시스템. - 제7항에 있어서,
상기 여정 생성 로직은,
상기 여정 기록을 수정하도록 작동되는 사용자 작동가능 수정 작동기를 생성하는 수정 컴포넌트를 포함하는 것인, 컴퓨팅 시스템. - 제1항에 있어서,
상기 위치 통합 시스템은,
상기 인터랙티브 맵 디스플레이를 생성하기 위해 상기 위치 통합 시스템의 기능을 활성화시키는 활성화 입력을 검출하는 위치 기능 검출 로직을 포함하는 것인, 컴퓨팅 시스템. - 제9항에 있어서,
상기 위치 기능 검출 로직은 상기 작성 창 상에 위치 작동기를 디스플레이하도록 상기 이메일 시스템을 제어하고,
상기 위치 기능 검출 로직은,
상기 작성 창 상의 상기 위치 작동기의 사용자 작동을 검출하는 사용자 입력 검출기를 포함하는 것인, 컴퓨팅 시스템. - 제9항에 있어서,
상기 위치 기능 검출 로직은,
상기 이메일 메시지 내의 메시지 컨텐츠의 언어적(linguistic) 컨텐츠에 기초하여 활성화 입력을 검출하는 자동 검출기를 포함하는 것인, 컴퓨팅 시스템. - 제9항에 있어서,
상기 위치 통합 시스템은,
상기 위치 정보를 검출하는 위치 검출 로직을 포함하는 것인, 컴퓨팅 시스템. - 제12항에 있어서,
상기 위치 검출 로직은,
상기 위치 통합 시스템의 현재 위치를 상기 위치 정보로서 검출하는 현재 위치 검출기를 포함하는 것인, 컴퓨팅 시스템. - 컴퓨터로 구현되는 방법에 있어서,
이메일 메시지 내의 메시지 컨텐츠를 수신하고 디스플레이하는 작성 창을 갖는 이메일 사용자 인터페이스 디스플레이를 생성하는 단계;
위치 정보를 수신하는 단계;
상기 위치 정보에 기초하여 인터랙티브 맵 디스플레이를 생성하는 단계; 및
위치 이메일 메시지를 생성하기 위해, 상기 작성 창을 상기 인터랙티브 맵 디스플레이의 선택가능한 표시로 채우도록 이메일 시스템을 제어하는 단계로서, 상기 인터랙티브 맵 디스플레이의 선택가능한 표시는 상기 위치 이메일 메시지의 수신자에 의해 선택가능한 것인, 상기 이메일 시스템을 제어하는 단계
를 포함하는, 컴퓨터로 구현되는 방법. - 컴퓨팅 시스템에 있어서,
이메일 메시지 내의 메시지 컨텐츠를 수신하고 디스플레이하는 작성 창을 갖는 이메일 사용자 인터페이스 디스플레이를 생성하는 전자 메일(이메일) 시스템;
위치 정보를 수신하고 상기 위치 정보에 기초하여 인터랙티브 맵 디스플레이를 생성하는 위치 통합 시스템; 및
작동될 때 상기 위치 정보에 기초하여 상기 인터랙티브 맵 디스플레이 상에 위치 마커를 디스플레이하도록 상기 인터랙티브 맵 디스플레이를 제어하는 위치 마커 작동기를 생성하도록 상기 이메일 시스템을 제어하는 이메일 채움 로직으로서, 상기 이메일 채움 로직은, 위치 이메일 메시지를 생성하기 위해 상기 작성 창 상의 메시지 컨텐츠와 일렬로 맞춰지게끔 상기 작성 창을 상기 위치 마커가 디스플레이되어 있는 상기 인터랙티브 맵 디스플레이의 선택가능한 표시로 채우도록 구성되고, 상기 인터랙티브 맵 디스플레이의 선택가능한 표시는, 상기 위치 이메일 메시지의 수신자에 의해 선택가능한 것인, 상기 이메일 채움 로직
을 포함하는, 컴퓨팅 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/173,959 US10778621B2 (en) | 2016-06-06 | 2016-06-06 | Location integration into electronic mail system |
US15/173,959 | 2016-06-06 | ||
PCT/US2017/034103 WO2017213844A1 (en) | 2016-06-06 | 2017-05-24 | Location integration into electronic mail system |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20190015313A true KR20190015313A (ko) | 2019-02-13 |
Family
ID=59034887
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020187036268A KR20190015313A (ko) | 2016-06-06 | 2017-05-24 | 전자 메일 시스템으로의 위치 통합 |
Country Status (17)
Country | Link |
---|---|
US (1) | US10778621B2 (ko) |
EP (1) | EP3465575A1 (ko) |
JP (1) | JP7187320B2 (ko) |
KR (1) | KR20190015313A (ko) |
CN (1) | CN109313746A (ko) |
AU (1) | AU2017277679B2 (ko) |
BR (1) | BR112018074150A2 (ko) |
CA (1) | CA3023258C (ko) |
CL (1) | CL2018003467A1 (ko) |
CO (1) | CO2018013179A2 (ko) |
IL (1) | IL263263A (ko) |
MX (1) | MX2018015043A (ko) |
PH (1) | PH12018550193A1 (ko) |
RU (1) | RU2018142911A (ko) |
SG (1) | SG11201810418XA (ko) |
WO (1) | WO2017213844A1 (ko) |
ZA (1) | ZA201807408B (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10432568B2 (en) * | 2016-03-31 | 2019-10-01 | Microsoft Technology Licensing, Llc | Automated classification and time-based relevancy prioritization of electronic mail items |
US20170357684A1 (en) * | 2016-06-13 | 2017-12-14 | Ethan Horne | Event Reporting |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3490261B2 (ja) | 1997-07-31 | 2004-01-26 | 本田技研工業株式会社 | 電子メール送受信システムおよび電子メールを表示するプログラムを記録した記録媒体 |
JP2001188734A (ja) | 1999-12-28 | 2001-07-10 | Honda Motor Co Ltd | 電子メール送受信システム |
US8140627B2 (en) | 2000-11-15 | 2012-03-20 | Pacific Datavision, Inc. | Systems and methods for push-to-email communication with location information |
JP2002243468A (ja) | 2001-02-16 | 2002-08-28 | Kenwood Corp | ナビゲーション装置およびナビゲーション装置の表示方法 |
JP2002269010A (ja) | 2001-03-09 | 2002-09-20 | Pioneer Electronic Corp | 電子メール処理システム及びメールサーバ |
US20050125284A1 (en) * | 2003-12-09 | 2005-06-09 | Preferred Parking Service, Inc. | Systems, methods and computer program products for selecting and assigning parking |
US7243298B2 (en) * | 2004-09-30 | 2007-07-10 | Microsoft Corporation | Method and computer-readable medium for previewing and performing actions on attachments to electronic mail messages |
US20060200382A1 (en) | 2005-03-03 | 2006-09-07 | Arutunian Ethan B | Notifications using enhanced map-based imagery |
US7912913B2 (en) | 2005-09-15 | 2011-03-22 | International Business Machines Corporation | Facilitating presentation and monitoring of electronic mail messages with reply by constraints |
US7801542B1 (en) * | 2005-12-19 | 2010-09-21 | Stewart Brett B | Automatic management of geographic information pertaining to social networks, groups of users, or assets |
US7525425B2 (en) | 2006-01-20 | 2009-04-28 | Perdiem Llc | System and method for defining an event based on relationship between an object location and a user-defined zone |
US8745141B2 (en) | 2006-08-07 | 2014-06-03 | Yahoo! Inc. | Calendar event, notification and alert bar embedded within mail |
US20080109712A1 (en) | 2006-11-06 | 2008-05-08 | Mcbrearty Gerald F | Method, system, and program product supporting automatic substitution of a textual string for a url within a document |
US20080162037A1 (en) | 2006-12-27 | 2008-07-03 | Hasan Mahmoud Ashraf S | Location-based interactive display and communication system |
US8166410B2 (en) | 2006-12-27 | 2012-04-24 | Mlslistings Inc. | Methods and systems of online mapping and planning driving tours |
DE602007009787D1 (de) | 2007-01-29 | 2010-11-25 | Research In Motion Ltd | Verfahren zum Versenden einer Kartenposition mittels generierter, kontextabhängiger Nachrichten |
US20090012824A1 (en) | 2007-07-06 | 2009-01-08 | Brockway Gregg | Apparatus and method for supplying an aggregated and enhanced itinerary |
US8086398B2 (en) * | 2007-10-25 | 2011-12-27 | Research In Motion Limited | Sending location information from within a communication application |
US8539029B2 (en) * | 2007-10-29 | 2013-09-17 | Microsoft Corporation | Pre-send evaluation of E-mail communications |
WO2009158398A1 (en) | 2008-06-24 | 2009-12-30 | Monmouth University | System and method for viewing and marking maps |
US9141640B2 (en) | 2008-07-09 | 2015-09-22 | MLSListings, Inc. | Methods and systems of advanced real estate searching |
US20100012547A1 (en) * | 2008-07-17 | 2010-01-21 | Variant Products, Ltd. | Pill case |
US20100088376A1 (en) * | 2008-10-03 | 2010-04-08 | Microsoft Corporation | Obtaining content and adding same to document |
US8799048B2 (en) * | 2008-11-14 | 2014-08-05 | Novell, Inc. | Techniques for visual integration of meeting space in calendar systems |
US8750906B2 (en) | 2009-02-20 | 2014-06-10 | T-Mobile Usa, Inc. | Dynamic elements on a map within a mobile device, such as elements that facilitate communication between users |
US20110099464A1 (en) | 2009-10-28 | 2011-04-28 | Yahoo! Inc. | Mechanism for adding content from a search to a document or message |
US20110320114A1 (en) | 2010-06-28 | 2011-12-29 | Microsoft Corporation | Map Annotation Messaging |
US9207096B2 (en) * | 2011-06-09 | 2015-12-08 | Blackberry Limited | Map magnifier |
US9046981B2 (en) | 2012-02-21 | 2015-06-02 | Target Brands, Inc. | Trip and travel tool |
US10275727B2 (en) | 2012-04-18 | 2019-04-30 | International Business Machines Corporation | Dynamic location-aware coordination method and system |
KR101745740B1 (ko) | 2012-06-05 | 2017-06-09 | 라인 가부시키가이샤 | 모바일 메시징 애플리케이션 기반 스케줄링 서비스 제공 방법 및 장치 |
US8751609B2 (en) | 2012-09-07 | 2014-06-10 | E-Lead Electronic Co., Ltd. | Destination planning method |
CN103684979B (zh) | 2012-09-13 | 2017-09-08 | 阿里巴巴集团控股有限公司 | 一种获取聊天内容中地理位置的方法及设备 |
US20140365107A1 (en) * | 2013-06-08 | 2014-12-11 | Apple Inc. | Specifying Travel Times for Calendared Events |
US9576261B2 (en) * | 2014-04-17 | 2017-02-21 | Microsoft Technology Licensing, Llc | Quick drafts of items in a primary work queue |
US20170124266A1 (en) * | 2015-11-03 | 2017-05-04 | Muhammad Ali Hasan | Method for Practitioner Network and Appointment Management System |
-
2016
- 2016-06-06 US US15/173,959 patent/US10778621B2/en active Active
-
2017
- 2017-05-24 EP EP17729268.7A patent/EP3465575A1/en not_active Ceased
- 2017-05-24 RU RU2018142911A patent/RU2018142911A/ru not_active Application Discontinuation
- 2017-05-24 JP JP2018562005A patent/JP7187320B2/ja active Active
- 2017-05-24 MX MX2018015043A patent/MX2018015043A/es unknown
- 2017-05-24 CA CA3023258A patent/CA3023258C/en active Active
- 2017-05-24 WO PCT/US2017/034103 patent/WO2017213844A1/en unknown
- 2017-05-24 SG SG11201810418XA patent/SG11201810418XA/en unknown
- 2017-05-24 CN CN201780035136.8A patent/CN109313746A/zh active Pending
- 2017-05-24 BR BR112018074150-7A patent/BR112018074150A2/pt unknown
- 2017-05-24 AU AU2017277679A patent/AU2017277679B2/en active Active
- 2017-05-24 KR KR1020187036268A patent/KR20190015313A/ko not_active IP Right Cessation
-
2018
- 2018-11-05 ZA ZA2018/07408A patent/ZA201807408B/en unknown
- 2018-11-12 PH PH12018550193A patent/PH12018550193A1/en unknown
- 2018-11-25 IL IL263263A patent/IL263263A/en unknown
- 2018-12-04 CL CL2018003467A patent/CL2018003467A1/es unknown
- 2018-12-05 CO CONC2018/0013179A patent/CO2018013179A2/es unknown
Also Published As
Publication number | Publication date |
---|---|
IL263263A (en) | 2018-12-31 |
MX2018015043A (es) | 2019-03-06 |
WO2017213844A1 (en) | 2017-12-14 |
CO2018013179A2 (es) | 2018-12-14 |
RU2018142911A3 (ko) | 2020-07-22 |
US10778621B2 (en) | 2020-09-15 |
JP2019523475A (ja) | 2019-08-22 |
US20170353411A1 (en) | 2017-12-07 |
AU2017277679B2 (en) | 2023-03-02 |
ZA201807408B (en) | 2020-01-29 |
SG11201810418XA (en) | 2018-12-28 |
CL2018003467A1 (es) | 2019-03-15 |
AU2017277679A1 (en) | 2018-11-22 |
PH12018550193A1 (en) | 2019-09-30 |
EP3465575A1 (en) | 2019-04-10 |
BR112018074150A2 (pt) | 2019-03-06 |
RU2018142911A (ru) | 2020-06-05 |
CA3023258C (en) | 2024-05-21 |
CN109313746A (zh) | 2019-02-05 |
JP7187320B2 (ja) | 2022-12-12 |
CA3023258A1 (en) | 2017-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10936808B2 (en) | Document linking in an electronic messaging system | |
KR101556537B1 (ko) | 전자 기기, 서버, 전자 기기의 제어 방법 및 위치 정보 제공 방법 | |
US10587539B2 (en) | Identifying relationships between message threads | |
US9699152B2 (en) | Sharing content with permission control using near field communication | |
US10581670B2 (en) | Cross-data center interoperation and communication | |
US20160055343A1 (en) | Hierarchical privacy settings for comments and markups in a shared document | |
US11669677B2 (en) | Integrating an application for surfacing data on an electronic message pane | |
US11514228B2 (en) | Guides on a content generation system | |
KR102082023B1 (ko) | 커스텀 rtf 커맨드를 사용하여 채팅 기능을 확장하는 기법 | |
US20180004366A1 (en) | User interface driven movement of data | |
US11695723B2 (en) | Creation and consumption of non-electronic mail (email) social media content from within an email system | |
CA3023258C (en) | Location integration into electronic mail system | |
US11677805B2 (en) | Surfacing sharing attributes of a link proximate a browser address bar | |
US11444902B2 (en) | Surfacing media conversations and interactive functionality within a message viewer of a messaging system | |
US20180167488A1 (en) | Accessibility processing when making content available to others |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X601 | Decision of rejection after re-examination |