KR101173815B1 - 대화-기반 이메일 시스템에서 대화들 및 메시지들 라벨링 - Google Patents
대화-기반 이메일 시스템에서 대화들 및 메시지들 라벨링 Download PDFInfo
- Publication number
- KR101173815B1 KR101173815B1 KR1020117017098A KR20117017098A KR101173815B1 KR 101173815 B1 KR101173815 B1 KR 101173815B1 KR 1020117017098 A KR1020117017098 A KR 1020117017098A KR 20117017098 A KR20117017098 A KR 20117017098A KR 101173815 B1 KR101173815 B1 KR 101173815B1
- Authority
- KR
- South Korea
- Prior art keywords
- conversation
- message
- conversations
- messages
- label
- Prior art date
Links
- 238000002372 labelling Methods 0.000 title description 2
- 238000000034 method Methods 0.000 claims abstract description 46
- 230000004044 response Effects 0.000 claims description 45
- 239000010813 municipal solid waste Substances 0.000 claims description 10
- 238000012545 processing Methods 0.000 abstract description 23
- 238000007726 management method Methods 0.000 description 46
- 230000009471 action Effects 0.000 description 31
- 238000012217 deletion Methods 0.000 description 14
- 230000037430 deletion Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 7
- 230000000007 visual effect Effects 0.000 description 7
- 238000012937 correction Methods 0.000 description 6
- 235000013305 food Nutrition 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 239000003086 colorant Substances 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000002452 interceptive effect Effects 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000002730 additional effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 235000012791 bagels Nutrition 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012913 prioritisation Methods 0.000 description 1
- 238000013077 scoring method Methods 0.000 description 1
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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/60—Business processes related to postal services
-
- 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
-
- 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/21—Monitoring or handling of messages
- H04L51/216—Handling conversation history, e.g. grouping of messages in sessions or threads
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
-
- 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
-
- 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/0482—Interaction with lists of selectable items, e.g. menus
-
- 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/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- 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/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L51/046—Interoperability with other network applications or services
-
- 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/21—Monitoring or handling of messages
- H04L51/226—Delivery according to priorities
-
- 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/56—Unified messaging, e.g. interactions between e-mail, instant messaging or converged IP messaging [CPM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/403—Arrangements for multi-party communication, e.g. for conferences
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- User Interface Of Digital Computer (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
사용자에게 전달되는 복수의 메시지들의 수신을 포함하는, 메시지들을 처리하기 위한 방법 및 시스템이 제시되며, 여기서 각각의 메시지는 고유한 메시지 식별자를 가진다. 복수의 메시지들 각각은 각각의 대화와 연관될 수 있으며, 여기서 각각의 대화는 각각의 대화 식별자를 가진다. 또한, 각각의 대화는 제 1 미리 정의된 기준을 충족하는 특성들의 공통 세트를 공유하는 하나 이상의 메시지들의 세트를 포함한다. 대화 리스트는 제 2 미리 결정된 기준에 의해 결정된 순서로 행들의 세트로서 디스플레이되며, 여기서 각각의 행은 리스트에 있는 대화들 중 하나와 대응하고 적어도 전송자 리스트, 대화 토픽 및 날짜/시간 값을 포함한다. 대화의 컨텐츠는 사용자가 디스플레이된 대화 리스트에서 대화를 선택하면 디스플레이된다. 메시지들은 세가지 모드들 중 하나로 디스플레이될 수 있다: 확장 모드, 콤팩트 모드 및 숨김 모드.
Description
본 발명은 일반적으로 클라이언트-서버 컴퓨터 네트워크 시스템 분야, 특히 사용자로 하여금 효율적이고 사용자-친화적 방식으로 다수의 메시지들을 관리하도록 하는 시스템 및 방법에 관한 것이다.
매일, 사람들은 비즈니스 및 레저를 위하여 컴퓨터 네트워크들을 통해 수백개의 이메일 메시지들을 전송 및 수신한다(또한, "이메일"로서 기록된다). 이메일은 여러 경우에 편리하고 사용하기 용이할 뿐만 아니라 거의 실시간으로 수행될 수 있기 때문에 사람들이 정보를 교환하기 위한 인기있는 통신 채널이 되고 있다.
통상적으로, 사용자 이메일 계정에 도달하는 이메일 메시지들은 발생순서대로, 예컨대 가장 최근의 메시지가 브라우저 윈도우의 상부에 나타나는 반면에 가장 오래된 메시지가 브라우저 윈도의 하부에 나타나는 순서로 전용 이메일 클라이언트 또는 웹 브라우저에 의하여 개별적으로 디스플레이된다. 그러나, 두명 이상의 사용자에 의하여 다른 시간에 전송된 다수의 메시지들이 동일한 토픽(topic)을 커버할 수 있다는 것은 일반적이다. 메시지들을 함께 보는 것은 적절한 문맥의 개별 메시지들을 이해하는데 있어서 사용자에게 도움을 준다.
메시지들의 개별적인 토픽들에 따라 사용자에 의하여 수신된 메시지들 및 사용자에 의하여 전송된 메시지들을 포함하는 다수의 메시지들을 편성하여 디스플레이하는 시스템 및 방법을 가지는 것은 매우 바람직하다. 또한, 사용자가 특정 전송자에 의하여 제출된 특정 메시지를 효율적으로 식별할 수 있고 사용자가 대화시에 다른 메시지들과 관련한 그들의 문맥으로 대화시의 메시지들을 볼 수 있도록, 동일한 토픽에 관한 모든 메시지들 및 동일한 대화의 폼(form) 부분이 직관적으로 제시되는 것은 매우 바람직하다.
일 실시예에서, 사용자에게 직접 전송되는 다수의 메시지들을 수신하는, 메시지들을 처리하는 방법이 제시되며, 각각의 메시지는 고유(unique) 메시지 식별자를 가진다. 다수의 메시지들의 각각은 개별적인 대화와 연관되며, 각각의 대화는 각각의 대화 식별자를 가진다. 또한, 각각의 대화는 제 1의 미리 규정된 기준을 충족하는 특성들의 공통 세트를 공유하는 하나 이상의 메시지들의 세트를 포함한다. 대화들의 리스트는 제 2의 미리 규정된 기준에 의하여 결정된 순서(order)로 행들의 세트로서 디스플레이되며, 각각의 행은 리스트에 있는 대화들 중 하나와 대응하며 적어도 전송자 리스트, 대화 토픽 및 날짜/시간 값을 포함한다. 대화의 컨텐츠(content)는 사용자가 대화들의 디스플레이된 리스트로부터 하나의 대화를 선택할 때 디스플레이된다.
본 발명의 사상 및 실시예들을 용이하게 이해하기 위하여, 유사한 도면부호들이 도면 전반에 걸쳐 대응 부분들을 언급하는 이하의 도면들을 참조로 하여 이하에 기술된 실시예들의 설명이 참조되어야 한다.
도 1은 본 발명에 따른 클라이언트-서버 기반 네트워크 시스템의 일 실시예를 개략적으로 기술한 도면.
도 2는 대화 어시스턴트가 대화 관리 시스템에 의하여 제공된 대화를 디스플레이하는 다양한 폼들을 발생하는 방법을 기술한 흐름도.
도 3A는 대화 어시스턴트가 대화의 리스트를 호스팅하는 폼을 발생하는 방법을 기술한 흐름도.
도 3B는 본 발명의 일 실시예에 따른 "인박스" 카테고리에서 대화들의 리스트에 대한 개략적 스크린 샷을 도시한 도면.
도 4A는 "더 많은 액션" 풀-다운 리스트의 동작을 기술한 흐름도.
도 4B는 사용자가 "더 많은 액션" 풀-다운 리스트를 사용하여 한 카테고리로부터 다른 카테고리로 대화를 이동시키는 방법에 관한 스크린 샷을 도시한 도면.
도 5A는 "애드 라벨" 풀-다운 리스트의 동작을 기술한 흐름도.
도 5B는 사용자가 "애드 라벨" 풀-다운 리스트를 사용하여 대화에 라벨을 추가하는 방법에 관한 스크린 샷을 도시한 도면.
도 6A는 대화 어시스턴트가 대화 관리 시스템의 디스플레이 명령들에 응답하여 대화 뷰를 발생시키는 방법을 기술한 흐름도.
도 6B는 모든 메시지들이 본 발명의 일 실시예에 따른 컴팩트(compacted) 모드로 디스플레이되는 대화 뷰에 대한 스크린 샷을 도시한 도면.
도 6C는 본 발명의 일 실시예에 따라 메시지들의 일부가 컴팩트 모드로 디스플레이되고 일부가 확장 모드로 디스플레이되는 대화 뷰에 관한 스크린 샷을 도시한 도면.
도 6D는 모든 메시지들이 본 발명의 일 실시예에 따라 확장(expanded) 모드로 디스플레이되는 대화 뷰에 관한 스크린 샷을 도시한 도면.
도 6E는 메시지들이 본 발명의 다양한 실시예에 따라 디스플레이되는 대화 뷰에 관한 스크린 샷을 도시한 도면.
도 7A는 대화 어시스턴트가 사용자의 검색 요청과 매칭되는 대화들을 디스플레이하는 다양한 폼들을 발생시키는 방법을 기술한 흐름도.
도 7B는 본 발명의 일 실시예에 따른 질문 텀 "Tahoe"와 매칭되는 3개의 대화를 포함하는 스크린 샷을 도시한 도면.
도 7C는 본 발명의 일 실시예에 따라 질문 텀과 매칭되거나 또는 매칭되지 않고 다른 모드들에서 디스플레이되는 대화에서 메시지들의 스크린 샷을 기술한 도면.
도 8은 사용자에 의하여 구성된 응답 메시지를 포함하는 대화에 관한 스크린 샷을 기술한 도면.
도 9A는 사용자에 의하여 구성된 응답 메시지를 포함하는 대화에 대한 스크린 샷을 기술한 도면.
도 9B는 스펠 체크 프로세스의 다른 스테이지들에서 3개의 개별 브라우징 윈도우들을 포함하는 스크린 샷을 도시한 도면.
도 10은 대화 서버의 일 실시예를 기술한 도면.
도 11은 수신된 메시지를 처리하는 방법을 기술한 흐름도.
도 12는 대화와 메시지를 매칭시키는 방법을 기술한 흐름도.
도 13은 메시지에 속성들을 할당하는 방법을 기술한 흐름도.
도 14는 대화에 속성들을 할당하는 방법을 기술한 흐름도.
도 15는 대화들을 검색하고 식별된 대화의 표현을 나타내는 방법을 기술한 흐름도.
도 16은 메시지 데이터베이스를 도시한 도면.
도 17은 특정 사용자에 대한 인덱스 및 사용자 데이터베이스를 도시한 도면.
도 18은 수신된 메시지에 대응하는 대화를 식별하고 수신된 메시지와 연관될 속성들을 결정하기 위하여 사용되는 데이터 구조들의 세트를 도시한 도면.
도 19는 대화 서버의 실시예를 기술한 도면.
도 2는 대화 어시스턴트가 대화 관리 시스템에 의하여 제공된 대화를 디스플레이하는 다양한 폼들을 발생하는 방법을 기술한 흐름도.
도 3A는 대화 어시스턴트가 대화의 리스트를 호스팅하는 폼을 발생하는 방법을 기술한 흐름도.
도 3B는 본 발명의 일 실시예에 따른 "인박스" 카테고리에서 대화들의 리스트에 대한 개략적 스크린 샷을 도시한 도면.
도 4A는 "더 많은 액션" 풀-다운 리스트의 동작을 기술한 흐름도.
도 4B는 사용자가 "더 많은 액션" 풀-다운 리스트를 사용하여 한 카테고리로부터 다른 카테고리로 대화를 이동시키는 방법에 관한 스크린 샷을 도시한 도면.
도 5A는 "애드 라벨" 풀-다운 리스트의 동작을 기술한 흐름도.
도 5B는 사용자가 "애드 라벨" 풀-다운 리스트를 사용하여 대화에 라벨을 추가하는 방법에 관한 스크린 샷을 도시한 도면.
도 6A는 대화 어시스턴트가 대화 관리 시스템의 디스플레이 명령들에 응답하여 대화 뷰를 발생시키는 방법을 기술한 흐름도.
도 6B는 모든 메시지들이 본 발명의 일 실시예에 따른 컴팩트(compacted) 모드로 디스플레이되는 대화 뷰에 대한 스크린 샷을 도시한 도면.
도 6C는 본 발명의 일 실시예에 따라 메시지들의 일부가 컴팩트 모드로 디스플레이되고 일부가 확장 모드로 디스플레이되는 대화 뷰에 관한 스크린 샷을 도시한 도면.
도 6D는 모든 메시지들이 본 발명의 일 실시예에 따라 확장(expanded) 모드로 디스플레이되는 대화 뷰에 관한 스크린 샷을 도시한 도면.
도 6E는 메시지들이 본 발명의 다양한 실시예에 따라 디스플레이되는 대화 뷰에 관한 스크린 샷을 도시한 도면.
도 7A는 대화 어시스턴트가 사용자의 검색 요청과 매칭되는 대화들을 디스플레이하는 다양한 폼들을 발생시키는 방법을 기술한 흐름도.
도 7B는 본 발명의 일 실시예에 따른 질문 텀 "Tahoe"와 매칭되는 3개의 대화를 포함하는 스크린 샷을 도시한 도면.
도 7C는 본 발명의 일 실시예에 따라 질문 텀과 매칭되거나 또는 매칭되지 않고 다른 모드들에서 디스플레이되는 대화에서 메시지들의 스크린 샷을 기술한 도면.
도 8은 사용자에 의하여 구성된 응답 메시지를 포함하는 대화에 관한 스크린 샷을 기술한 도면.
도 9A는 사용자에 의하여 구성된 응답 메시지를 포함하는 대화에 대한 스크린 샷을 기술한 도면.
도 9B는 스펠 체크 프로세스의 다른 스테이지들에서 3개의 개별 브라우징 윈도우들을 포함하는 스크린 샷을 도시한 도면.
도 10은 대화 서버의 일 실시예를 기술한 도면.
도 11은 수신된 메시지를 처리하는 방법을 기술한 흐름도.
도 12는 대화와 메시지를 매칭시키는 방법을 기술한 흐름도.
도 13은 메시지에 속성들을 할당하는 방법을 기술한 흐름도.
도 14는 대화에 속성들을 할당하는 방법을 기술한 흐름도.
도 15는 대화들을 검색하고 식별된 대화의 표현을 나타내는 방법을 기술한 흐름도.
도 16은 메시지 데이터베이스를 도시한 도면.
도 17은 특정 사용자에 대한 인덱스 및 사용자 데이터베이스를 도시한 도면.
도 18은 수신된 메시지에 대응하는 대화를 식별하고 수신된 메시지와 연관될 속성들을 결정하기 위하여 사용되는 데이터 구조들의 세트를 도시한 도면.
도 19는 대화 서버의 실시예를 기술한 도면.
본 발명은 사용자에게 그리고 사용자에 의하여 전송된 메시지들을 편성하여 디스플레이하는 클라이언트-서버 시스템 및 이에 대응하는 방법에 관한 것이다.
도 1은 클라이언트-서버 시스템의 일 실시예를 개략적으로 기술한다. 시스템은 대화 관리 시스템(102), 통신 네트워크(106) 및 다수의 클라이언트(104)를 포함한다. 대화는 대화 토픽을 커버하는 하나 이상의 관련 메시지들을 포함한다. 이하에서 기술되는 바와 같이, 대화 토픽외에 추가 기준은 메시지들이 각각의 개별 대화의 부분인지를 결정하기 위하여 사용될 수 있다. 메시지들의 전송자들 및 수신자들은 대화의 참여자들이다. 대화 관리 시스템(102)의 사용자에게 직접 전달되는 모든 메시지들은 다수의 대화들로 그룹핑되며 대화-기반 포맷으로 사용자에게 개별적으로 또는 공동으로 제공된다. 대화 관리 시스템(1023)의 구현에 대한 더 상세한 설명은 이하에서 제공된다.
클라이언트(104)는 브라우저(108) 및 대화 어시스턴트(110)를 포함한다. 브라우저(108)는 대화들을 디스플레이하기 위하여 사용되는 브라우저 윈도우를 가진 범용 인터넷 브라우저(종종, 웹 브라우저라 칭함)일 수 있거나 또는 대화들을 디스플레이하기 위한 윈도우를 가진 전용 브라우저 애플리케이션일 수 있다. 대화들 및 상기 대화들의 메시지들은 하이퍼텍스트 마크업 언어(HTML) 또는 임의의 다른 적절한 렌더링 방법을 사용하여 브라우저(108)에 의하여 렌더링될 수 있다. 사용자가 그의 개인 계정에 저장된 메시지들을 액세스하도록 브라우저(108)를 통해 대화 관리 시스템(102)에 요청을 제출한후에, 대화 관리 시스템(102)은 사용자의 요청에 따라 사용자의 개인 계정에서 다수의 대화들을 식별하고 이들 식별된 대화들 뿐만 아니라 디스플레이 명령들의 세트를 클라이언트(104)에 전송한다. 이에 응답하여, 대화 어시스턴트(110)는 디스플레이 명령들 후에 하나 이상의 폼들을 발생시키며, 각각의 폼은 대화들중 일부 대화에 대한 정보를 포함한다. 그 다음에, 폼들은 브라우저(108)에 제출되고 또한 브라우저(108)에 의하여 렌더링된다. 다른 실시예에서, 대화 어시스턴트(110)는 대화 관리 시스템(102)에서 대안적으로 존재하여 동작할 수 있다.
도 2는 대화 어시스턴트(110)가 대화 관리 시스템(102)에 의하여 제공된 대화들을 디스플레이하는 다양한 폼들을 발생시키는 방법을 기술한 흐름도이다. 단계(202)에서 다수의 대화들 및 연관된 디스플레이 명령들을 수신한 후에, 대화 어시스턴트(110)는 사용자가 다수의 대화들 또는 개별 대화를 요청하였는지의 여부를 단계(204)에서 결정한다. 만일 사용자가 다수의 대화들을 요청하면, 대화 어시스턴트(110)는 대화들의 리스트를 호스팅하는 폼을 단계(206)에서 발생시키며, 각각의 대화는 폼에서 하나의 행을 점유한다. 폼의 각각의 행에 대하여, 대화 어시스턴트(110)는 단계(208)에서 디스플레이 명령들에 따라 디스플레이될 열들의 세트 및 이에 연관된 특징들을 발생시킨다. 열들 내의 정보 및 이와 연관된 특징들이 렌더링되는 방법에 대한 더 상세한 설명들은 도 3A 및 도 3B와 관련하여 이하에 제공된다.
사용자가 개별 대화를 요청하면, 대화 어시스턴트(110)는 단계(210)에서 대화와 연관된 일련의 메시지들을 호스팅하는 개별 폼을 발생시킨다. 단계(212)에서, 대화 어시스턴트(110)는 대응하는 디스플레이 명령들후에 각각의 메시지에 대화여 디스플레이될 서브-폼(sub-form) 및 이와 연관된 특징들의 세트를 발생시킨다. 대화 어시스턴트가 서브-폼들 및 연관된 특징들을 렌더링하는 방법에 대한 더 상세한 설명은 도 6A-6D와 관련하여 이하에 제공된다.
대화들의 리스트 또는 개별 대화를 호스팅하는 폼을 발생시킨 후에, 대화 어시스턴트(110)는 단계(214)에서 시스템 정의 카테고리들의 세트를 호스팅하는 폼을 발생시킨다. 각각의 시스템 정의 카테고리는 0개 이상의 대화들과 연관될 수 있다. 일 실시예에서, 시스템 정의 카테고리는 사용자 동작에 응답하여 또는 미리 정해진 기준이 충족할 때 대화 관리 시스템(102)이 대화에 할당하는 속성이다. 예컨대, 시스템은 사용자가 삭제를 위한 대화를 마킹할 때 대화와 "트래시(trash)" 속성과 연관시키나, 사용자의 메일 계정으로부터 대화를 영구적으로 삭제하는데 필요한 단계들을 취하지 않는다. 특히, 대화 관리 시스템(102)은 속성 "트래시"를 대화에 첨부하며, 필요한 경우에 대화로부터 기존 속성, 예컨대 "인박스(inbox)"를 삭제한다. 임의의 시스템 정의 카테고리들이 상호 배타적일 수 있다는 것에 유의해야 한다. 다른 예에서, 시스템은 "인박스" 속성 및 "읽히지 않은" 속성을 새로이 수신된 입력 메시지와 자동적으로 연관시킬 수 있다. 시스템 정의 카테고리들에 대한 더 상세한 설명은 도 4A 및 도 4B와 관련하여 이하에 제공된다.
다음으로, 대화 어시스턴트(110)는 단계(216)에서 사용자 정의 라벨들의 세트를 호스팅하는 다른 폼을 발생시킨다. 도 3B는 이러한 폼이 디스플레이되는 그룹 박스(347)를 도시한다. 각각의 사용자 정의 라벨은 0개 이상의 대화들과 연관될 수 있다. 일 실시예에서, 사용자 정의 라벨은 특정 대화들과 연관될 수 있는 속성이다. 사용자 정의 라벨이 할당되는 대화들은 특정 사용자 동작들에 의하여 또는 필터 또는 유사한 메커니즘의 동작에 의하여 결정될 수 있다. 시스템 정의 카테고리들과 다르게, 이들 라벨들은 사용자에 의하여 임의적으로 정의되며 상호 배타적이지 않다. 다시 말해서, 대화는 동일한 시간에 다수의 라벨들과 연관될 수 있다. 예컨대, 사용자의 개인 계정에서 두개의 라벨들, 즉 "쇼핑 리스트" 및 "추수감사절"이 존재할 수 있다. 라벨 "쇼핑 리스트"는 쇼핑-관련 대화들에 사용자에 의하여 할당되거나 또는 사용자에 의하여 세팅된 필터에 의하여 할당될 수 있는 반면에, 라벨 "추수감사절"은 추수감사절 쇼핑을 포함하는 추수감사절 활동들에 관한 대화들에 할당될 수 있다. 라벨이 사용자에 의하여 정의되기 때문에, 사용자는 또한 라벨을 삭제할 수 있다. 사용자 정의 라벨들에 대한 더 상세한 설명은 도 5A 및 도 5B와 관련하여 이하에 제공된다. 그룹 박스(347)와 관련하여, 사용자가 그룹 박스(347)의 사용자 정의 라벨을 선택할 때(예컨대, 클릭할 때), 대화 어시스턴트(110)는 사용자 선택 라벨과 연관된 대화들의 위치를 결정하기 위하여 대화 관리 시스템에 질문(query)을 제출한다. 그 다음에, 질문이 실행되고 사용자에게는 존재하는 경우에 상기 대화들의 리스팅이 제공된다.
대화 관리 시스템(102) 및 대화 어시스턴트(110)는 사용자로 하여금 사용자 메일 계정에서 메시지들을 검색하고 검색 결과들을 매우 직관적인 방식으로 제공하도록 함께 작용한다. 대화 관리 시스템(102)은 사용자의 이메일 계정으로부터 정보를 추출하거나 또는 사용자에 의하여 구성된 메시지를 처리하는 반면에, 대화 어시스턴트(110)는 대화 관리 시스템(102)에 의하여 준비된 정보를 렌더링한다. 다른 실시예들에서, 대화 관리 시스템(102) 및 대화 어시스턴트(110)간의 다른 역할 분할이 사용될 수 있다. 시스템에 의하여 수행된 많은 태스크들이 대화 관리 시스템(102) 또는 대화 어시스턴트(110) 또는 두개의 작업에 의하여 함께 수행될 수 있기 때문에, 이들 두가지 컴포넌트들은 본 명세서에서 때로 연합하여 "대화 시스템"으로 언급된다.
대화 시스템(102 및/또는 110)은 사용자가 최근 검색 결과들을 재방문할 수 있도록(또는 더 정확하게 재생할 수 있도록) 단계(218)에서 사용자에 의하여 제출된 검색들의 세트를 호스팅하는 폼을 발생시킬 수 있다. 검색-기반 대화 리스트 발생에 대한 더 상세한 설명은 도 7A-7C와 관련하여 이하에 제공된다. 부가적으로, 대화 시스템은 단계(220)에서 사용자에 의하여 최근에 방문된 대화들의 세트를 호스팅하는 폼(예컨대, 도 3B에서 그룹 박스(349)에 디스플레이된 폼)을 발생시킬 수 있다. 이러한 특징은 웹 브라우저의 백 버튼과 유사하다. 단계(222)에서, 대화 어시스턴트(110)는 디스플레이를 위하여 브라우저(108)에 폼들을 제출한다.
단계들(214 내지 220)은 도 2에 도시된 순서와 다른 많은 가능한 순서로 수행될 수 있다. 일부 실시예들에서, 이들 폼 발생 단계들의 일부는 생략될 수 있다.
대화들의 리스트 발생
도 3A를 지금 참조하면, 대화 관리 시스템(102)은 예컨대 사용자 메일 계정의 인박스 뷰를 요청하는 사용자 또는 클라이언트에 응답하여 대화들의 리스트를 발생시킨다(단계 302). 이하에서 더 상세히 설명되는 바와 같이, 대화들의 리스트들은 사용자의 메일 계정의 검색을 수행함으로써 발생된다. 인박스 뷰에 대한 대화들의 리스트를 발생시키기 위하여, 사용자의 메일 계정은 "인박스" 속성(때때로 라벨이라 칭한다)과 연관된 대화들을 위하여 검색된다. 그 다음에, 대화 관리 시스템(102)은 이하에서 더 상세히 기술되는 바와 같이 단계(304)에서 디스플레이를 위한 대화들에 대한 정보를 준비한다. 더욱이, 대화 관리 시스템은 단계(305)에서 사용자-선택가능 동작들의 리스트 및 사용자-선택가능 라벨들의 리스트를 발생시킨다. 사용자-선택가능 라벨들은 시스템 정의 라벨들뿐만 아니라 사용자 정의 라벨들을 포함할 수 있다. 도 4 및 도 5와 관련된 이하의 설명은 이들 사용자-선택가능 리스트들의 사용을 기술한다. 그 다음에, 결과적인 정보는 단계(306)에 렌더링하기 위하여 대화 어시스턴트에 전송된다.
단계(304)에서, 대화 관리 시스템(102)은 대화들의 리스트의 각각이 대화에 대한 필드들의 세트를 발생시키기 위하여 일련의 단계들(단계(306) 내지 단계(324))을 반복적으로 수행한다. 일부 실시예들에서, 이들 필드들은 사용자가 대화 리스트를 용이하게 스캐닝하도록 열들에서 대화 어시스턴트(110)에 의하여 렌더링될 수 있다.
각각의 대화 및 메시지들이 연관된 세트에 대화여, 대화 관리 시스템(102)은 우선 단계(307)에서 전송자 리스트를 발생시킨다. 전송자 리스트는 다수의 전송자 식별자들을 포함하며, 각각의 식별자는 메시지들의 허가된 적어도 하나의 메시지를 가진 전송자에 대응한다. 전송자는 그의 이름, 성, 전체 이름, 이메일 어드레스, 화상 또는 고유 아이콘 또는 이들의 결합에 의하여 식별될 수 있다. 일부 실시예들에서, 만일 적어도 두개의 전송자들이 동일한 이름들을 가지는 경우에, 각각의 전송자의 성(last name)의 충분한 부분은 전송자들마다 구별하기 위하여 각각의 전송자 식별자들에 포함된다. 예컨대, 만일 두 전송자가 이름이 폴(Paul)이고 첫번째 문자가 다른 성을 가지면, 전송자들은 성의 첫번째 문자와 폴을 연결하여 구별될 수 있다(예컨대, PaulB 및 PaulK). 당업자는 동일한 이름을 가진 두 전송자를 식별하기 위하여 다른 방식을 인식할 것이다. 다른 실시예들에서, 전송자의 식별자는 사용자의 접촉 리스트에 상주하는, 특정 전송자와 연관된 정보에 기초할 수 있다. 또 다른 실시예들에서, 사용자는 특정 전송자들에 대한 전송자 리스트에서 나타나는 닉네임들을 생성할 수 있다. 그럼에도 불구하고, 만일 전송자가 대화에서 허가된 다중 메시지들을 가지면, 전송자의 식별자는 전송자 리스트에서 단지 한번 나타난다. 일 실시예에서, 리스트내의 전송자 식별자들은 시스템(102)에의 각각의 메시지 도달시간에 따라 배열된다. 다른 실시예에서, 리스트내의 전송자 식별자들은 그들의 각각의 이름들에 따라 알파벳 순서로 배열된다. 다음으로, 대화 관리 시스템(102)은 단계(308)에서 디스플레이 명령들에 따라 리스트에서 하나 이상의 전송자 식별자들을 하이라이팅시키기 위하여 전송자 리스트를 포맷시킨다. 용어 "하이라이트(highlight)"는 볼드, 밑줄, 배경 컬러의 변화, 폰트 컬러의 변화, 폰트의 변화 등과 같은 시각적 구별 방식으로 디스플레이하는 것으로 여기에서 사용된다. 게다가, 이와 관련하여, 용어 "하이라이트"는 구별 방식으로 어떤 것(예컨대 텍스트의 특정 부분)을 디스플레이하기 위한 포매팅 정보를 발생시키는 것을 의미한다. 예컨대, 일부 실시예들에서, 전송자의 이름은 그의 메시지가 사용자에 의해 읽혀진 것으로 보여지지 않거나 또는 마킹되지 않는 경우에 볼드체의 문자들로 디스플레이되도록 포매팅된다.
일부 실시예들에서, 대화 어시스턴트는 대화들의 전송자 리스트 및/또는 수신자 리스트들에 리스트된 사람들 중 하나 이상의 사람의 화상들을 수신하거나 또는 액세스한다. 사용자가 대화들 또는 개별 대화의 리스트를 보고 전송자 리스트의 이름 또는 식별자 상에 커서를 위치시킬 때, 전송자의 화상이 디스플레이된다. 일부 실시예들에서, 대화를 볼때, 예컨대 리스트된 메시지 수신자들을 볼때 동일한 기능이 제공된다. 이러한 특징은 대규모 편성들에 의하여 사용된 이메일 시스템들에 특히 유용할 수 있다.
일부 실시예들에서, 만일 사용자 자신이 대화에서 적어도 하나의 메시지를 작성하였다면, 대화 관리 시스템(102)은 단계(310)에서 전송자 리스트에서 상기 사용자의 식별자로서 상기 사용자에 대한 고유한 캐릭터 스트링 또는 아이콘 또는 다른 출력 큐(output cue)로 전송자 리스트의 상기 사용자의 이름 또는 다른 식별자를 대체한다. 고유한 캐릭터 스트링에 대한 한 옵션은 특정 언어의 자체-참조 식별자이다. 예컨대, 영어에서 대명사 "me"는 전송자 리스트내의 사용자를 나타내기 위하여 사용될 수 있다. 이러한 특징은 많은 사람이 동일한 이름들을 공유하기 때문에 전송자 리스트내의 전송자의 이름에 의하여 전송자를 식별하는 것보다 더 유용하다(물론 대안 실시예들에서 수행될 수 있음). 고유 식별자에 의하여 사용자를 표현하는 것은 적어도 하나의 메시지를 제공함으로써 활성적으로 참여될 수 있는 대화들을 사용자가 용이하게 식별하는데 도움을 준다.
만일 많은 사람이 대화에 대한 메시지들을 제공하면, 전송자 리스트는 브라우저 윈도우내의 제한된 공간에 맞추는데 너무 길게 될 수 있다. 이는 특히 전송자 리스트내의 전송자들중 하나 이상의 전송자가 그들의 이메일 어드레스에 의하여 식별되는 경우에 발생한다. 만일 그렇다면, 대화 관리 시스템(102)은 단계(312)에서 브라우저 윈도우에 디스플레이할 전송자 리스트의 서브세트를 식별하기 위하여 다양한 정보에 기초하여 전송자들의 리스트내의 전송자들에게 우선순위를 할당한다. 일 실시예에서, 서브세트는 대화에서 적어도 마지막 메시지의 전송자, 적용가능한 경우에 사용자에 의해 읽혀진 것으로서 보여지지 않거나 또는 마킹되지 않는 메시지의 전송자를 포함한다. 다른 실시예에서, 서브세트는 대화에서 제일 먼저 수신된 메시지의 전송자, 대화에서 마지막으로 수신된 메시지의 전송자, 우선순위화 또는 스코어링 방법에 따라 선택된 0 이상의 추가 전송자들을 포함한다. 일부 실시예들에서, 높은 우선순위는 나중에 도달하는 메시지들의 전송자들에 할당된다. 이러한 타입의 우선순위는 읽혀지지 않은(unread) 메시지들의 전송자들이 디스플레이될 가능성을 증가시키는 경향이 있다. 다른 타입들의 우선순위 방식들이 또한 사용될 수 있다. 일부 실시예들에서, 전송자 리스트가 단지 대화에서 메시지 전송자들의 서브세트만을 식별할때, 전송자 리스트는 생략부호 "...", 또는 전송자 리스트가 불완전하다는 것을 표시하는 다른 심볼을 포함한다. 일부 실시예들에서, 메시지들이 사용자에 의해 읽혀진 것으로서 보여지지 않거나 또는 마킹되지 않은 하나 이상의 전송자가 존재하는 경우에, 상기 서브세트는 이용가능한 공간에 의하여 허용되는 만큼 많은 수의 전송자들을 식별한다.
단계(314)에서, 대화 관리 시스템(102)은 대화에 있는 메시지들의 수를 표시하고 영구적으로 삭제되거나 또는 삭제를 위하여 마킹되는 메시지들을 제외하는, 대화에 대한 메시지 번호 표시자를 생성한다. 메시지 번호 표시자는 쌍 괄호 내의 번호일 수 있으며, 예컨대 "(3)"은 대화에 3개의 메시지가 존재한다는 것을 나타낸다. 일부 실시예들에서, 대화가 단지 하나의 메시지를 포함할 때, 메시지 번호는 대화를 위하여 생성되지 않는다. 메시지 번호 표시자는 아이콘일 수 있다. 아이콘은 예컨대 대화시 얼마나 많은 메시지가 읽혀지지 않는지(즉, 읽혀진 것으로서 보여지지 않거나 또는 마킹되지 않는지)를 표시하기 위하여 추가 정보를 제공하도록 컬러 코딩될 수 있다. 다음으로, 대화 관리 시스템(102)은 단계(316)에서 처리되는 대화에 대한 대화 토픽을 발생시킨다. 전형적으로, 대화 토픽은 대화에서 제 1 메시지의 주제 또는 이것이 미리 정해진 길이를 초과하는 경우에 주제의 절단된 버전이다. 다른 실시예에서, 대화 토픽은 제 1 메시지 또는 대안적으로 제 1 메시지 이상의 컨텐츠들을 발견법적으로(heuristically) 검사함으로써 결정된다. 일 실시예에서, 만일 대화가 읽혀지지 않은 속성을 가진 적어도 하나의 메시지를 포함하면, 메시지 번호 식별자 및 대화 토픽 모두는 사용자의 주의를 끌기 위하여 브라우저 윈도우에서 하이라이팅된다. 다른 실시예에서, 대화 토픽만이 하나 이상의 읽혀지지 않은 메시지들을 표시하기 위하여 하이라이팅된다.
설정된 이메일 표준에 따르면, 메시지는 수신자들의 적어도 3개의 클래스들, 즉 어드레스가 "To:" 필드에 리스트되는 수신자들의 하나의 1차 클래스, 및 어드레스들이 "Cc:" 필드 또는 "Bcc:" 필드에 리스트되는 수신자들의 두개의 2차 클래스들에 전송된다. 따라서, 단계(318)에서, 대화 관리 시스템(102)은 대화에의 사용자 참여에 대한 다른 표시자인 사용자에 대한 수신 상태 표시자를 생성한다. 일 실시예에서, 사용자가 임의의 메시지의 1차 수신자인 대화는 ">>"와 같은 제 1 구별 표시자로 마킹되며, 사용자가 적어도 하나의 메시지의 2차 수신자이고 임의의 메시지들의 1차 수신자가 아닌 대화는 ">"와 같은 제 2 구별 표시자로 마킹되며, 사용자가 임의의 메시지의 수신자로서 명백하게 리스트되지 않은(예컨대, 메시지들이 그룹 또는 메일링 리스트로 전송되기 때문에) 대화는 특정 마크들을 수신하지 않는다. 다른 실시예들에서, 사용자가 적어도 하나의 메시지의 1차 수신자인 대화들 및 사용자가 단지 2차 수신자인 대화들은 이들 대화들을 나타내는 행들의 하나 이상의 부분을 하이라이팅시키는 것과 같은 다른 시각적 구별 방식들로 표현될 수 있다. 다른 실시예에서, 사용자가 적어도 하나의 메시지가 단지 1차 수신자인 대화는 ">>"와 같은 제 1 구별 표시자로 마킹되며, 적어도 하나의 메시지가 메일링 리스트가 아니라 사용자의 이메일 어드레스로 직접 전송되는 대화는 ">"와 같은 제 2 구별 표시자로 마킹되며, 사용자가 임의의 메시지의 수신자로서 명백하게 리스트되지 않는(예컨대, 메시지들이 그룹 또는 메일링 리스트로 전송되었기 때문에) 대화는 특정 마크들을 수신하지 않는다.
일부 실시예들에서, 대화 관리 시스템(102)은 단계(320)에서 대화의 스니펫(snippet)을 생성한다. 스니펫은 사용자가 대화를 열어보지 않고 대화의 컨텐츠들의 프리뷰를 사용자에게 제공한다. 일 실시예에서, 스니펫은 대화에서 가장 최근의 메시지로부터 발생된다. 다른 실시예에서, 스니펫은 대화에서 제 1 메시지(즉, 가장 오래된 메시지)로부터 추출된다. 또 다른 실시예에서, 스니펫은 예컨대 대화에서 가장 자주 나타나는 키워드들의 세트를 리스트하는 미리 정해진 발견적 규칙들에 따라 대화의 모든 메시지들로부터 추출된다. 만일 대화 관리 시스템(102)이 사용자에 의하여 제출된 검색에 응답하여 대화들의 리스트를 준비중이면 대화 관리 시스템(102)은 단계(322)에서 사용자 제출 질문 텀들과 매칭되는 하이라이팅된 부분을 포함하는 스니펫을 생성하며, 이는 구글 검색 엔진과 같은 검색 엔진에 의하여 리턴된 검색 결과들을 포함한 스니펫들과 하나 이상의 관점들에서 유사할 수 있다.
최종적으로, 대화 관리 시스템(102)은 단계(324)에서 대화에 대한 날짜/시간 값을 식별한다. 이러한 날짜/시간 값은 종종 브라우저 윈도우에서 대화들의 리스트에 대한 디스플레이 순서를 표시한다. 일부 실시예에서, 대화들의 리스트에서 각각의 대화는 대화들의 리스트를 발생시키기 위하여 사용된 검색 기준과 매칭되는 가장 최근의 메시지의 날짜/시간과 동일한 날짜/시간이 할당된다. 예컨대, 만일 사용자-특정 검색 질문(예컨대, "Lake Tahoe")이 사용되면, 대화들의 리스트의 각각의 매칭하는 대화에 대하여, 할당된 날짜/시간은 사용자 특정 검색 질문과 매칭되는 가장 최근의 메시지의 날짜/시간이다. 다른 예에서, 만일 검색 기준이 "인박스"(즉, 인박스 라벨이 할당된 적어도 하나의 메시지를 가진 대화들)이면, 대화들의 리스트의 각각의 대화에 할당된 날짜/시간은 인박스 라벨과 연관된 가장 최근의 메시지의 날짜/시간이다. 일부 실시예들에서, 대화들의 리스트에서 대화들은 그들의 할당된 날짜/시간 값들에 대한 역발생순으로 리스트된다(즉, 가장 최근의 대화들이 먼저 리스트됨). 여기에서 사용된 바와 같이, "날짜/시간" 값은 날짜 값 및/또는 시간 값이 특정 메시지와 연관되는 것을 언급한다. 날짜들 및/또는 시간들은 생성 날짜 및/또는 생성 시간, 송신, 수신 또는 다른 이벤트에 기초하여 메시지들과 연관될 수 있다.
다른 실시예들에서, 다른 방법들 또는 기준들이 대화들의 리스트의 각각의 대화에 날짜/시간을 할당하기 위하여 사용될 수 있으며, 다른 방법들이 대화들의 날짜/시간 값들에 따라 대화들을 정렬하도록 이용될 수 있다. 예컨대, 일부 실시예들에서, 진보된 검색 질문 도구를 사용할 때, 사용자는 날짜/시간이 특정 시간 윈도우내에 떨어지는(그리고 존재하는 경우에 다른 사용자-특정 검색 요건들을 충족하는) 대화들을 검색하는 옵션이 제공된다. 대화들의 결과적인 리스트는 사용자 특정 목표 날짜 또는 목표 날짜/시간 및 리스트내의 각 대화의 날짜/시간 사이의 시간길이에 따라 리스트된다. 따라서, 목표 날짜 또는 날짜/시간 전후의 대화들은 대화들의 결과적인 리스트에서 인터리빙될 수 있다.
도 3B는 본 발명의 일 실시예에 따른 "인박스" 카테고리 내의 대화들의 리스트에 대한 개략적 스크린 숍을 도시한다. 스크린 샷의 상부 좌측 코너에는 "구성 메일" 링크(340)가 존재한다. 사용자는 새로운 메시지의 기록을 시작하도록 상기 링크를 클릭한다. 링크(340) 다음에, 텍스트박스(341) 및 "검색 메일" 버튼(342)이 존재한다. 사용자가 텍스트박스(341)를 통해 하나 이상의 질문 텀들을 제출한 후 "검색 메일" 버튼(342)을 클릭한 후에, 시스템은 질문 텀들을 매칭시키는 새로운 디스플레이 리스팅 대화들을 발생시킨다. 일부 실시예들에서는 각각의 질문 텀의 하나 이상의 동의어들의 존재에 의하여 매칭들이 발생할 수 있다. 일부 실시예들에서는 각각의 질문 텀의 루트(root)에 기초하여 매칭이 발생할 수 있다. 예컨대, "책(book)"에 대한 검색은 용어들 "책(book)", "책들(books)" 및 "부킹(booking)"에 의하여 매칭될 수 있다. 상세한 이해를 위하여 도 7A 및 도 7B를 참조한다. 버튼(342) 다음에 두개의 풀-다운 리스트들, 즉 "더 많은 동작" 리스트(34) 및 "애드 라벨" 리스트(345)가 존재한다. 도 4 및 도 5를 참조하면, 이둘 두개의 풀-다운 리스트들이 더 상세히 설명된다. "구성 메일" 링크(340) 바로 아래에는 일련의 그룹 박스들이 존재하며, 각각의 박스는 도 2의 단계들(214-220) 중 하나에 의하여 발생된 폼에 대응한다. 예컨대, 그룹 박스(346)는 "인박스", "별표(starred)", "송신 메일", "드래프트들", "모든 메일", "스팸" 및 "트래시" 등을 포함하는 시스템-정의 카테고리들을 디스플레이한다. 다른 실시예들에서, 이들 카테고리들 및/또는 부가 카테고리들의 서브세트를 포함하는 시스템-정의 카테고리들의 세트가 다를 수 있다. 일부 실시예들에서, "별표" 카테고리는 사용자 계획들이 예컨대 "To Do" 리스트와 유사한 메시지들을 다른 참여자들에게 전송함으로써 활성적으로 포함될 대화들을 포함한다. 따라서, 일 실시예에서, 메시지는 사용자가 예컨대 별표 메시지들을 검색할 수 있도록 별로 플래깅(flagged)될 수 있다. 일 실시예에서, "모든 메일" 카테고리는 "스팸" 또는 "트래시" 카테고리들에 존재하지 않는 모든 대화들을 포함한다. 현재의 스크린 샷이 단지 "인박스" 카테고리에 속하는 대화들만을 디스플레이하기 때문에, 그룹 박스(346)의 대응 링크가 하이라이팅되었음을 유의하도록 한다.
도 3B의 도식적 스크린 샷의 주요 영역은 대화들(360)의 리스트를 포함하는 폼이며, 각각의 대화는 폼에서 하나의 행을 점유한다. 각각의 행은 체크박스(362), 전송자 리스트(364), 수신자 상태 표시자(366), 대화 토픽 및 스니펫들(368) 및 날짜/시간 값(369)을 더 포함한다. 다른 실시예들에서, 이들 필드들 및/또는 추가 필드들의 서브세트를 포함하는 각각의 대화 행에 대한 필드들의 세트는 서로 다를 수 있다. 일부 실시예들에서, 모든 행들은 대화들의 리스트가 디스플레이될때 균일한 높이를 가진다. 다른 실시예들에서, 높이들은 다양한 스니펫 길이들을 수용하기 위하여 가변적일 수 있다. 체크박스(362)는 사용자가 하나의 시스템-정의 카테고리, 예컨대 "인박스"로부터 다른 시스템-정의 카테고리, 예컨대 "트래시"로 대응하는 대화를 이동시킬 것을 결정하는 경우에 또는 사용자가 대응 대화에 사용자-정의 라벨을 첨부할 것을 결정하는 경우에 사용자에 의하여 체크된다. 폼에서 다른 열들 또는 필드들의 정의들은 도 3A와 관련하여 앞서 제공되었다. 제 1대화에 두개의 메시지들이 존재하고 전송자(S2)가 제 1행에서 하이라이팅되는 경우에, 이는 S2에 의하여 전송된 메시지가 읽혀지지 않거나 또는 읽혀진 것으로서 마킹되지 않았다는 것을 제시한다. 대조적으로, 제 2 대화는 모두 읽혀지거나 또는 읽혀진 것으로서 마킹된 4개의 메시지들을 포함하며, 이에 따라 제 2행에서 아무것도 하이라이팅되지 않는다. 일부 실시예들에서, 별표 상태에 대한 시각적 표시자가 제공된다. 만일 대화의 임의의 메시지가 별표 상태를 가지면, "인박스"는 대화가 적어도 하나의 별표 메시지를 포함하는 시각적 표시자를 제공할 것이다.
도시되지 않았을지라도, 일 실시예에서, 도 3B에 의하여 도시된 브라우저 윈도우는 지속적으로 디스플레이된 메시지 구성 영역, 연관된 어드레싱 및 주제 필드들, 및 메시지의 구성 및 송신을 허용하는 폼과 연관될 수 있는 다른 옵션들 및 필드들을 포함한다. 이러한 영역은 예컨대 대화들(360)의 리스트 아래에 디스플레이된다. 따라서, 일부 실시예에서, 단일 사용자 인터페이스(예컨대, 브라우저 윈도우)내에서, 사용자는 대화들의 리스트를 보기 위한 옵션을 가질 수 있고 또한 새로운 윈도우(예컨대, 메시지 구성 윈도우)를 열도록 요구되지 않고 그리고 현재의 브라우저 윈도우로부터 대화들의 리스트를 제거하지 않고 새로운 메시지를 구성할 수 있다.
도 4A는 "더 많은 동작(more actions)" 풀-다운 리스트(344)의 동작을 기술하는 흐름도이다. 사용자가 풀-다운 리스트를 클릭한후에, 브라우저는 단계(402)에서 시스템-정의 동작들의 리스트를 디스플레이한다. 사용자는 단계(404)에서 대화 리스트의 적어도 하나의 대화 및 풀-다운 리스트의 특정 동작을 선택한다. 그 다음에, 브라우저는 단계(406)에서 사용자-선택 대화들을 사용자-선택 동작들과 연관시키며, 단계(408)에서 추가로 처리하기 위하여 이들을 다시 대화 관리 시스템에 전송한다. 만일 사용자-선택 대화들이 대화들의 이전에 디스플레이된 리스트로부터 제거되도록 사용자-선택 동작이 수행되는 경우에, 대화 어시스턴트는 대화 관리 시스템으로부터 대화들의 새로운 리스트를 수신하고 대화 어시스턴트는 단계(410)에서 브라우저에 대화들의 새로운 리스트를 디스플레이한다.
도 4B는 사용자가 제 2대화의 체크박스(413)를 체크하고 "더 많은 동작" 풀-다운 리스트를 클릭하며 아이템 "스팸"(415)를 선택할 때 발생하는 도 3B의 도식적 스크린 샷의 변화를 도시한다. 결과로서, 제 2대화는 "인박스" 카테고리로부터 제거될 것이며 "스팸" 카테고리는 새로운 멤버를 가질 것이다. "무시(Ignore)" 및 "스누즈(Snooze)"와 같은 풀-다운 리스트의 동작들 중 일부는 대응 카테고리를 가지지 않는다는 것에 유의해야 한다. "무시" 및 "스누즈" 모두는 "모든 메일" 카테고리에 대응한다. 특히, 사용자가 대화의 체크박스를 체크하고 "무시" 아이템을 클릭할때, 대화는 "모든 메일" 카테고리에 전송될 것이다. 만일 "무시된" 대화와 연관된 임의의 새로운 메시지가 도달하면, 시스템은 새로운 메시지와 상기 대화를 연관시키나, 대화가 사용자의 어텐션에 자동적으로 유도되게 하지 못한다. 그러나, 사용자는 대화를 무시하여, "모든 메일" 카테고리를 방문하고 무시된 대화의 체크박스를 체크하며 대응하는 "더 많은 동작" 풀-다운 리스트에서 "인박스" 아이템을 선택함으로써 "인박스" 카테고리로 다시 전환되도록 하는 것을 중지시킬 수 있다. 예로서 지시된 바와 같이, 다른 카테고리의 풀-다운 리스트들은 동작 아이템들의 다른 세트를 가질 수 있다. "스누즈" 동작 아이템은 사용자가 트리거링 조건을 세팅함으로써 대화를 일시적으로 무시하도록 하며, 트리거링 조건은 시간-구동적일 수 있거나, 예컨대 대화는 일정 기간(예컨대, 한 시간, 하루, 한주 등) 동안 "인박스" 카테고리로부터 보이지 않아야 하고 그 후에 자동적으로 복귀하거나, 또는 이벤트-구동적일 수 있으며, 예컨대 대화는 미체크 메시지들의 수가 미리 결정된 제한치에 도달할 때까지 "인박스" 카테고리에 복귀하지 않아야 하거나, 또는 특정 사람은 대화에 대한 메시지를 제공하고, 1차 수신자로서 사용자를 특정하는 메시지가 수신되거나 또는 수신된 메시지는 특정 워드(word) 또는 구(phrase)를 포함한다. 당업자는 사용될 수 있는 다른 트리거 조건들을 인식할 것이다.
대화들의 카테고리화
도 5A는 "애드 라벨들(add labels)" 풀-다운 리스트(345)의 동작을 기술하는 흐름도이다. 사용자가 풀-다운 리스트를 클릭한 후에, 브라우저는 단계(502)에서 사용자가 선택한 사용자-정의 라벨들이 리스트를 디스플레이한다. 사용자는 단계(504)에서 풀-다운 리스트에서 특정 라벨을 선택하며 대화 리스트에서 적어도 하나의 대화를 선택한다. 그 다음에, 브라우저는 단계(506)에서 사용자-선택 라벨과 사용자-선택 대화들을 연관시키며, 단계(508)에서 추가 처리를 위하여 이들을 대화 관리 시스템에 다시 전송한다. 결과로서, 사용자-선택 라벨과 연관된 대화들의 리스트는 단계(506)에서 라벨과 연관된 대화들을 포함할 것이다. 이하에서 더 상세히 기술된 바와 같이, 라벨 또는 속성이 대화와 연관될 때, 하나 이상의 엔트리들은 라벨이 위치한 경우에 대화를 검색하도록 인덱스(1710)(도 17 및 도 18)에 추가된다. 일부 실시예들에서, 라벨 또는 속성은 또한 대화 데이터베이스(1808)(도 18)의 하나 이상의 엔트리들에 추가된다. 일부 실시예들에서, 대화와 연관된 라벨들은 사용자가 대화를 볼 때 디스플레이된다. 일부 실시예들에서, 대화들의 리스트의 각각의 대화와 연관된 라벨들은 리스트의 각각의 대화를 위하여 제공된 정보의 행에 디스플레이된다.
도 5B는 사용자가 제 2대화의 체크박스(512)를 체크하고 "애드 라벨들" 풀-다운 리스트를 클릭하며 아이템 "라벨 2"(514)을 선택할 때("라벨 2"는 사용자 특정 라벨 이름을 나타낸다는 것에 유의해야 한다) 발생하는 브라우저 윈도우를 도시한 도식적 스크린 샷을 도시한다. 이는 "라벨 2"이 체크된 대화와 연관되도록 할 것이다. 결과로서, 체크된 대화는 "라벨 2"와 연관된 메시지들에 대한 질문에 응답하여 발생된 검색 결과들에 포함될 수 있다. 일부 실시예들에서, 대화들의 리스트의 각각의 대화와 연관된 라벨들은 폼의 대응 행에 디스플레이되며, "라벨 2"은 단계(506)에서 "라벨 2"와 연관된 대화에 대응하는 행내에 디스플레이될 것이다. 물론, 사용자가 커스터마이징된 라벨 이름들을 입력하고 및/또는 시스템이 미리 정해진 라벨들을 제공할 수 있다는 것이 당업자에게 인식될 것이다.
대화의 뷰잉(viewing)
도 6A는 대화 어시스턴트가 대화 관리 시스템의 디스플레이 명령들에 응답하여 대화 뷰를 발생시키는 방법을 도시한 흐름도를 도시한다. 일부 실시예들에서, 디스플레이될 대화 정보를 포매팅하기 위한 동작들과 같이 도 6A에 도시된 동작들의 일부는 클라이언트의 대화 어시스턴트에 대화 정보를 전송하기 전에 대화 관리 시스템에 의하여 수행된다.
대화 어시스턴트는 단계(602)에서 특정 대화에 속하는 일련의 메시지들 뿐만 아니라 디스플레이 명령들의 연관된 세트를 우선 수신한다. 단계(604)에서, 대화 어시스턴트는 대화와 연관된 임의의 시스템-정의 카테고리들 및 사용자-정의 라벨들 뿐만 아니라 대화의 토픽을 식별한다. 카테고리들 및 라벨들에 기초하여, 대화는 사용자-선택가능 동작들의 리스트 및 사용자-선택가능 라벨들의 리스트를 각각 발생시킨다. 이들 두개의 리스트들은 도 3B에 도시된 두개의 풀-다운 리스트들(344, 345)과 유사하다. 일부 실시예에서, 사용자-선택가능 동작들의 리스트는 특정 대화(즉, 디스플레이될 대화)에 적용가능한 동작들만을 포함한다. 따라서, "트래시" 카테고리에 이미 존재하는 대화는 "트래시" 카테고리와 다시 연관될 수 없다. 동일한 토큰에 의하여, 사용자-선택가능 라벨들의 리스트는 특정 대화와 연관되지 않는 라벨들만을 포함한다.
단계(608)로부터 시작하여, 대화 어시스턴트는 대화의 개별 메시지에 대한 서브-폼을 발생시키며, 서브-폼은 적어도 전용 메시지 헤더(header) 및 메시지 바디(body)를 포함한다. 여기에서 사용되는 것처럼, 메시지 바디는 사용자에 의하여 생성되고 주제 참조(subject reference)를 포함하는 메시지를 지칭하며, 메시징 소프트웨어에 의하여 메시지에 추가된 임의의 시스템 정보를 제외한다. 각각의 상세한(detailed) 메시지 헤더는 전송자의 이름들 및/또는 어드레스들, 모든 1차 및 2차 수신자들, 메시지의 주제, 메시지-레벨 동작들의 세트, 및 날짜/시간 값을 포함한다. 메시지-레벨 동작들 중 하나는 "마임-버전:", "컨텐츠-타입" 등과 같은 다른 메시징 시스템 제공 정보 및 라우팅 정보를 포함하는 원래의 포맷으로 메시지를 보는 옵션을 포함한다. 대화 어시스턴트는 단계(610)에서 상세한 메시지 헤더로부터 간결한(concise) 메시지 헤더를 생성한다. 간결 메시지 헤더는 전송자 및 수신자들의 식별자들을 포함한다. 일부 실시예들에서, 수신자들은 간결 메시지 헤더로부터 제외된다. 만일 사용자가 수신자 리스트에 있으면, 대화 어시스턴트는 단계(610)에서 전송자 리스트의 사용자 식별자와 유사한 식별자로서 고유한 캐릭터 스트링 또는 아이콘을 이용한다. 예를 들어, 영어 대명사 "me"는 간결한 메시지 헤더에서 사용자를 표시하기 위해 사용될 수 있다. 만약 메시지가 대화에 있는 특정 수신자(즉, 메시지 헤더의 제 1 또는 제 2 수신자 필드들에서)를 식별하기 위한 첫번째 메시지라면, 대화 어시스턴트는 단계(614)에서 간결한 메시지 헤더의 수신자의 식별자를 하이라이팅할 것이다. 다른 한편으로, 몇몇 실시예들에서, 수신자 리스트에 이전에 포함된 수신자가 더 이상 포함되지 않을 때, 대화 어시스턴트는 예를 들어 "ghost" 폰트와 같이 시각적으로 구별되는 방식으로 수신자의 식별자를 디스플레이할 것이다. 다른 실시예들에서, 간결한 메시지 헤더는 전송자 식별자, 메시지의 일부분 및 메시지의 날짜/시간 표현을 포함한다.
다음에, 단계(616)에서 대화 어시스턴트는 서브-폼을 디스플레이하는 방법을 결정한다. 만약 서브-폼과 연관된 메시지가 사용자에 의해 읽혀진 것으로 보여지거나 마킹되지 않는 경우에, 서브-폼은 확장된(expanded) 모드로 디스플레이되며, 즉 간결한 메시지 헤더와 완전한 메시지 바디 모두가 단계(618)에서 디스플레이된다. 만약 메시지가 읽혀진 것으로 보여지거나 마킹되는 경우에, 디폴트에 의한 서브-폼은 단계(620)에서 간결한 메시지 헤더 및 메시지 바디의 일부분(예를 들면, 메시지의 최초 몇개 라인)만을 포함하여 콤팩트(compacted) 모드로 디스플레이된다. 사용자는 콤팩트 서브-폼을 클릭함으로써 이를 확장할 수 있다. 유사하게, 서브-폼은 상세한 메시지 헤더를 도시하지 않지만, 단계(622)에서 상세한 메시지 헤더를 보기를 원하는 경우에 사용자가 선택할 수 있는 옵션을 포함한다. 결과적으로, 단계(624)에서 대화 어시스턴트는 서브-폼의 하단에, 예를 들면 "응답", "모두에 대한 응답", "포워드"와 같은 응답 옵션들의 세트를 생성한다. 몇몇 실시예들에서, 전술된 동작들의 서브 세트는 대화 내의 각각의 메시지에 대하여 수행된다. 몇몇 실시예들에서 하나 또는 그 이상의 추가 포매팅 동작들이 수행된다.
도 6B는 본 발명의 일 실시예에 따른 도 3B의 제 2 대화의 도식적인 스크린 샷이다. 스크린 샷의 상부 및 좌측 부분들은 도 3B와 동일하다. 그러나 대화 리스트(360)는 메시지 리스트(640)로 대체된다. 메시지 리스트의 상부에는 대화의 토픽 "토픽 2"(630), 대화와 연관된 모든 사용자 정의된 라벨들(632) 및 "모든 메시지 확장(Expand All Messages)" 버튼(634)이 존재한다. 4개의 메시지들이 사용자에 의해 읽혀진 것으로 보여지거나 마킹되기 때문에, 리스트의 상위 3개의 메시지들은 콤팩트 모드로 디스플레이되며, 마지막(및 가장 최근) 메시지는 확장된 모드로 디스플레이된다. 몇몇 실시예들에서, 읽혀지지 않은 메시지들(즉, 사용자에 의해 읽혀진 것으로 보여지거나 마킹되지 않은)이 존재하지 않을 때, 별표로 마킹되었던 대화 내의 메시지들은 확장된 모드로 디스플레이된다. 상기와 같은 사항은 대화의 모든 메시지들이 함께 겹쳐지는 시각적인 효과를 제공한다. 각각의 콤팩트 서브-폼은 메시지 바디의 처음 몇 개의 워드들과 같은 스니펫(643) 및 간결한 메시지 헤더(641)를 디스플레이한다. 몇몇 실시예들에서, 간결한 메시지 헤더 내의 전송자들은 각각의 전송자에 대한 텍스트 표현이 서로 다른 컬러로 제공되도록 컬러로 식별된다. 이는 디스플레이된 대화에서 전송자들을 구별하는데 도움이 된다. 몇몇 실시예들에서, 컬러들은 시스템이 전송자들을 연관시키기 위해 컬러들을 소모할 때까지 시스템에 의해 발생된다. 몇몇 실시예들에서, 컬러들은 대화마다 연관되며, 따라서 동일한 전송자는 대화가 디스플레이되는 것에 따라 자신과 관련된 서로 다른 컬러를 가질 수 있다. 모든 수신자들이 간결한 메시지 헤더(641)에서 하이라이팅되며, 이것은 대화의 제 1 메시지이기 때문임을 유의하여야 한다. 대조적으로, 단 하나의 식별자 "S1"이 제 2의 콤팩트 서브-폼에서 하이라이팅되며, 이것은 S1이 대화의 참여자가 되는 제 1 메시지이기 때문이다. 확장된 서브-폼은 완전한 메시지 바디(645), 상세한 메시지 헤더가 선택될 때 디스플레이되도록 하는 "더 많은 옵션들" 링크(647), 및 응답 옵션들의 리스트(649)를 포함한다. 최종 메시지가 S4에 의해 전송되었기 때문에, 응답 옵션들 중 하나는 "S4에 대한 응답"이며 이는 사용자에게 응답이 S4로 어드레싱될 것임을 알려준다.
몇몇 실시예들에서, 대화 내의 메시지들의 개수가 임계값(예를 들면, 8 또는 10개의 메시지)을 초과하고, 대화 내의 다수의 연속하는 메시지들이 콤팩트 서브-폼으로(예를 들면, 대화들의 인박스 리스트에서 선택된 대화에서 읽혀진 것으로 마킹된 메시지들) 디스플레이될 때, 상기 메시지들은 어떤 텍스트도 포함하지 않고, 따라서 어떤 전송자 리스트 및 어떤 스니펫도 포함하지 않는 제2의 콤팩트 서브-폼으로 디스플레이된다. 대신에, 제 2의 콤팩트 서브-폼들은 상기 메시지들의 각각을 작은 바(bar)로 표시한다. 시각 효과는 이러한 서브-폼들이 카드 데크에서 카드들의 에지(edge)들처럼 보이는 것이다. 몇몇 실시예들에서, 대화 내의 제 1 및 최종 메시지는 결코 제 2의 콤팩트 서브-폼으로 보여지지 않으며, 보다 일반적으로 특정 메시지들은 "별표로 표시된" 라벨을 가지는 메시지들과 같이 제 2의 콤팩트 서브-폼에 의해 표시되는 것으로부터 제외된다. 제 2의 콤팩트 서브-폼은 다수의 메시지들을 가지는 대화들을 보여주는 것을 용이하게 하는데 사용된다. 상기와 동일한 방법이 사용자 특정 검색 질문에 매칭되는 대화의 메시지들을 표현하기 위해 사용될 수 있으며, 상기 방법에서 대화는 임계 개수보다 많은 메시지들을 갖는다. 상기 경우에, 제 2의 콤팩트 서브-폼에 의해 표시될 메시지들은 검색 질문에 매칭되지 않는 연속하는 메시지들의 그룹들이다.
도 6C는 (1) 제 1 서브-폼(650)이 사용자가 제 1 서브-폼을 클릭한 이후에 확장된 모드로 디스플레이되고, (2) 최종 서브-폼이 상세 메시지 헤더(660)를 포함하며, (3) 메시지 응답 폼(670)이 사용자가 "S4에 대한 응답" 링크를 클릭한 이후에 최종 서브-폼에 추가되는 점을 제외하고 도 6B에 도시된 것과 유사한 개략적인 스크린 샷이다. 일 실시예에서, 대화 내의 메시지(예를 들면, 최종 메시지)에 대하여 응답하는 텍스트 박스는 사용자가 대화의 컨텐츠를 볼 때, 상기 메시지와 연관되어 영구적으로 디스플레이될 수 있다. 다른 경우에, 메시지 응답 폼(670)이 디스플레이되고, 이와 연관된 응답 텍스트 박스는 사용자가 "S4에 대한 응답" 링크를 클릭할 것을 요구하지 않고 사용자에게 접속가능하다. 다른 실시예들에서, 메시지 응답 폼은 대화 내의 모든 메시지들 또는 확장 모드로 디스플레이된 모든 메시지들에 대하여 영구적으로 디스플레이될 수 있다.
제 1의 확장된 서브-폼(650)은 도 6B에 도시된 최종 서브-폼과 구조적으로 동일한다. 이는 서브-폼의 하부에서 간결한 메시지 헤더, "더 많은 옵션들(More Options)" 링크, 메시지 바디 및 응답 옵션들의 세트를 포함한다. 상세 메시지 헤더(660)는 메시지 전송자 및 수신자의 이메일 어드레스, 또는 다른 식별자들에 더하여 사용자가 수행할 수 있는 동작들의 리스트를 포함한다. 예를 들어, "메시지 버림(Trash this message)" 동작(661)은 사용자가 대화에서 메시지를 제거하도록 허용한다. 디폴트에 의한 메시지 응답 폼(670)은 "To:" 필드에서 S4의 어드레스만을 포함하며, 이는 사용자가 응답하는 메시지의 전송자가 S4이기 때문이다. 그러나, 메시지 응답 폼은 사용자가 더 많은 수신자들에 대한 응답 메시지를 전송하려고 하는 경우에 사용자에게 추가의 옵션들(예를 들면, "add Cc", "add Bcc")을 제공한다. 메시지 응답 폼(670)은 또한 사용자가 원래의 메시지의 주제를 편집하고, 문서를 응답 메시지에 부가하도록 허용한다.
도 6D는 사용자가 "모든 메시지 확장" 버튼(634)을 클릭한 이후에 도 6B에 도시된 대화의 개략적인 스크린 샷이다. 결과적으로, 4개의 메시지들(608) 모두는 확장된 모드로 디스플레이된다. 버튼(634) 내의 텍스트는 "모든 메시지들을 간략화"로 변경된다. 대화의 디스플레이는 사용자가 버튼(634)을 다시 클릭한 이후에 도 6B에 도시된 포맷으로 복귀한다.
도 6E는 이전에 설명된 특징들 중 몇몇을 설명하는 대화의 개략적인 스크린 샷이다. 특히, 도 6E는 대화 내의 메시지들의 개수가 임계값을 초과할 때 사용되는 제 2의 콤팩트 서브-폼의 일례를 682에 도시한다. 사용자가 그들의 메시지에 대한 임의의 헤더 정보를 볼 수 없음에도 불구하고, 사용자는 상기 제 2의 콤팩트 서브-폼 내의 메시지들의 개수를 볼 수 있다. 몇몇 실시예들에서, 제 2의 콤팩트 서브 폼 내의 메시지들의 어느 한쪽 끝 부분에서의 메시지들은 간결한 메시지 헤더들(684, 686)에 의해 도시된 것과 같이 간결한 메시지 헤더를 도시하는 콤팩트 서브-폼으로 도시된다. 몇몇 실시예들 및 도 6E에 도시된 것과 같이, 간결한 메시지 헤더는 메시지의 다른 수신자들을 보여주지 않고 전송자, 메시지의 일부분 및 메시지의 날짜/시간 값을 포함한다. "별표 표시" 특징의 일 예가 메시지(688)에 도시될 수 있다. 메시지(688) 내의 별표는 별표가 필 인(filled in) 되어있다는 점에서 다른 메시지들과 다르며, 이는 이러한 메시지가 별표 표시 상태를 가지는 반면에 다른 메시지들은 그렇지 않다는 것을 표시한다. 물론, 서로 다른 상태를 제공하는 임의의 시각적인 표시자가 사용될 수 있고, 그 개념은 "별표" 및 별표가 "필 인"되는지의 여부에 제한되지 않는다. 전술된 것과 같이, 별표 표시 상태를 가지는 메시지는 일 실시예에서 대화가 디스플레이되고 어떤 읽혀지지 않은 메시지들도 존재하지 않을 때(도 6E에서와 같이) 확장된 모드로 디스플레이된다. 또다른 실시예에서, 읽혀지지 않거나 보여지지 않는 메시지들이 존재할 경우에, 별표 표시된 메시지(688)는 콤팩트 서브-폼으로 디스플레이되지만, 682에서의 메시지들과 같은 제 2의 콤택프 서브-폼은 아니다. 다른 실시예들은 임의의 읽혀지지 않거나 보여지지 않는 메시지들의 존재 여부와 관계없이 별표 표시된 메시지들을 항상 확장된 모드로 보여주는 것과 같은 상이한 치환들을 예상한다.
대화들을 결정하고, 리스트로 작성하며 디스플레이하기 위한 질문들의 사용
전술된 것과 같이, 사용자는 사용자 특정된(user specified) 질문이 매칭되는 대화들을 검색할 수 있다. 대화 관리 시스템(102) 및 대화 어시스턴트(110)는 질문에 상응하는 검색 결과들을 생성하고, 상기 결과들을 사용자에게 매우 직관적인 방식으로 제공하도록 함께 동작한다. 도 7A는 대화 어시스턴트(110)가 사용자의 검색 요청에 매칭되는 대화들을 디스플레이하기 위한 다양한 폼들을 생성하는 방법을 도시하는 흐름도이다. 몇몇 실시예들에서, 디스플레이될 대화 정보를 포매팅하는 동작들과 같이, 도 7A에 도시된 몇몇 동작들은 대화 정보를 클라이언트 내의 대화 어시스턴트에 전송하기 전에 대화 관리 시스템에 의해 수행된다.
단계(702)에서, 대화 어스시턴트(110)는 검색 질문(하나 또는 그이상의 질문 텀들을 포함할 수 있는)에 매칭되는 다수의 대화들을 나타내는 정보 및 연관된 디스플레이 명령들을 대화 관리 시스템(102)으로부터 수신한다. 단계(704)에서, 대화 어시스턴트(110)는 각각의 대화가 폼 내의 하나의 행를 점유하는 대화들의 리스트를 호스팅하는 폼을 생성한다. 상기 폼 내의 각각의 행에 대하여, 대화 어시스턴트(110)는 단계(706)에서 매칭된 질문 텀을 포함하는 스니펫을 발생시킨다. 몇몇 실시예들에서, 대화 어시스턴트(110)는 검색 질문의 임의의 질문 텀들에 매칭되는 텀들을 스니펫들을 통해 하이라이팅시킨다. 단계(710)에서, 대화 리스트가 디스플레이된다. 도 7B는 상기 단계들에 따라 발생된 대화들의 리스트의 도식적인 스크린 샷이다. 몇몇 실시예들에서, 사용자는 스니펫들의 발생 및/또는 디스플레이가 억제되도록 하는 사용자 우선순위를 특정할 수 있다. 몇몇 실시예들에서, 검색 질문에 매칭되는 텍스트가 메시지의 헤더 또는 다른 정보에 위치될 때, 제공되는 스니펫은 메시지의 제 1 부분이다.
몇몇 실시예들에서, 단계(712)에서 만약 사용자가 대화들의 리스트 내의 대화를 표시하는 행(예를 들면 도 7B에 도시된 대화 리스트의 행)를 선택하면(예를 들어 클릭하면), 단계(714)에서 대화 어시스턴트(110)는 선택된 대화를 디스플레이한다. 이를 수행하기 위해, 대화 어시스턴트는 선택된 대화와 연관된 일련의 메시지들을 호스팅하는 일련의 서브-폼들을 생성한다. 특히, 만약 선택된 대화가 사용자 특정된 검색 질문에 응답하여 발생된 대화들의 리스트로부터 선택되면, 연관된 메시지들이 검색 질문에서 임의의 질문 텀을 포함하지 않는 서브-폼들은 콤팩트 모드로 디스플레이되는 반면, 연관된 메시지들이 적어도 하나의 질문 텀을 포함하는 서브-폼들은 확장된 모드로 디스플레이된다. 대화 어시스턴트(110)는 메시지 바디 내에 매칭된 질문 텀들을 하이라이팅시킨다. 특정된 질문에 매칭되는 선택된 대화의 디스플레이의 일 예는 도 7C의 개략적인 스크린 샷으로 도시된다. 만약 선택된 대화가 대화의 인박스 리스트와 같은 대화의 카테고리 리스트로부터 선택되면, 메시지의 초기 디스플레이는 도 6C와 관련하여 전술된 것과 같다.
도 7B는 질문 텀 "Tahoe"(720)에 매칭되는 3개의 대화들(730)의 목록을 표시하는 브라우저 윈도우의 개략적인 스크린 샷이다. 상기 3개의 대화들(730) 위에는 "검색 옵션" 링크(732)가 있다. 사용자는 검색을 수행하기 위해 사용된 옵션들을 업데이트하기 위해 링크를 클릭할 수 있다. 예를 들어, 사용자는 검색이 하나의 카테고리 내의 대화들에 제한되는지 또는 모든 카테고리들 내의 대화들에 제한되는지의 여부를 특정할 수 있다. 목록에 표시된 대화들이 둘 또는 그 이상의 구별되는 카테고리들에 속할 때, 그룹 박스(346) 내의 어떤 카테고리들도 하이라이팅되지 않는다. 각각의 매칭되는 대화 내에서, 텀 "Tahoe"를 포함하는 스니펫이 식별되며, 하이라이트된 단어 "Tahoe"와 함께 디스플레이된다. 상기 스니펫들은 3개의 대화들이 3개의 개별 토픽들을 커버하는 것을 표시하며, 즉 제 1 대화는 호수 Tahoe에서의 스키 여행에 관한 것이며, 제 2 대화는 Tahoe-모델 SUV에 관한 것이며, 제 3 대화는 Tahoe National Forest에서의 캠핑 사이트에 관한 것이다. 따라서, 사용자는 자신이 공개하기를 원하는 특정 대화를 결정하기 위해 상기 스니펫에 있는 정보를 사용할 수 있다.
도 7C는 사용자가 클릭한 이후에 제 3 대화내의 모든 메시지들을 디스플레이하는 개략적인 스크린 샷이다. "모든 메일" 카테고리는 상기 스크린 샷에서 하이라이팅됨(그룹 박스(346)에서)을 유의하도록 하며, 이는 제 3 대화가 현재 "모든 메일" 카테고리에 위치됨을 표시한다. 제 2 메시지가 질문 텀 "Tahoe"를 포함하기 때문에, 제 2 서브-폼은 하이라이팅된 단어 "Tahoe"와 함께 확장된 모드로 도시된다.
스펠 검사
도 8은 사용자에 의해 구성된 메시지 내에서 잠재적으로(potentially) 잘못 쓰여진 단어들을 정정하기 위해 대화 어시스턴트가 사용자와 상호작용하는 방법을 도시하는 흐름도이다. 메시지를 구성한 후 및 상기 메시지를 전송하기 전에, 사용자는 "더 많은 동작들"을 클릭할 수 있고, 리스트를 풀-다운하고, "스펠 검사" 아이템을 선택할 수 있다. 상기 아이템은 도 4B에 도시되지 않으며, 이는 풀-다운 리스트가 대화-레벨 동작들만을 포함하기 때문임을 유의하도록 한다. "스펠 검사"는 메시지 구성 폼이 사용되는 경우에만 풀-다운 동작 리스트 내에 디스플레이되는 메시지-레벨 동작이다. "스펠 검사" 동작의 사용자 선택에 응답하여, 단계(802)에서, 대화 어시스턴트는 구성된 메시지를 대화 관리 시스템에 전송하며, 구성된 메시지의 스펠-검사된 사본 및 디스플레이 명령들을 수신한다. 대안적인 실시예에서, 본 명세서에서 스펠 검사자와 관련하여 설명된 대화 관리 시스템에 의해 수행된 동작들은 로컬 사전을 사용하여 로컬 클라이언트 응용에 의해 또는 대화 어시스턴트에 의해 수행된다. 디스플레이 명령들에 기초하여, 대화 어시스턴트는 단계(804)에서 메시지 내에 잘못 쓰여진 단어를 하이라이팅시키고, 단계(806)에서 각각의 하이라이팅된 단어를 시스템에 의해 발생된 후보 단어들의 리스트와 연관시키며, 단계(808)에서 개별 브라우징 윈도우내에 다시 포매팅된 메시지를 표시한다. 사용자가 브라우징 윈도우 내의 특정 하이라이팅된 단어를 선택할 때, 단계(810)에서 대화 어시스턴트는 스펠 정정 윈도우 내에 사용자 선택된 단어의 위치를 결정하며, 상기 윈도우 다음에 후보 리스트 대체 용어들을 부가한다. (대체 용어는 하나 또는 그 이상의 단어들을 포함할 수 있음에 유의해야 한다.) 대화 어시스턴트는 단계(812)에서 스펠 정정 윈도우 내의 잘못 쓰여진 단어를 후보 리스트 내의 사용자 지정된 대체 용어로 업데이트한다. 대화 어시스턴트는 단계(814)에서 사용자 지정된 방향으로 스펠 정정 윈도우를 확장할 수 있으며, 따라서 사용자는 단계(816)에서 스펠 정정 윈도우내의 하나 이상의 단어를 교정할 수 있다.
도 9A는 사용자가 응답 메시지(817)를 S4로 구성하는 것을 제외하고 도 6C에 도시된 동일한 대화를 보여주는 스크린 샷이다. 메시지를 전송하기 전에, 사용자는 스펠 검사를 수행할 것인지를 결정한다. 따라서, 사용자는 "더 많은 동작들" 풀-다운 리스트를 클릭하고, "스펠 검사" 아이템(818)을 선택한다. 대화 어시스턴트는 이에 응답하여 구성된 메시지를 대화 관리 시스템으로 전송하고, 개별 브라우징 윈도우에 스펠 검사 결과를 디스플레이한다. 몇몇 실시예들에서, 스펠 검사 결과들은 사용자가 메시지를 구성한 것과 동일한 윈도우에 디스플레이된다. 사실상, 디스플레이는 일반적으로 스펠 검사기와 연관된 특정 특징들을 토글링하고, 잠재적으로 잘못 쓰여진 단어들을 하이라이팅시키는 것을 제외하고 동일하게 유지된다. 상기 실시예는 사용자가 메시지를 구성할 때 제공되는 것보다 상기 내용 없이 개별의 새로운 윈도우에 표시되는 등가의 시각적인 내용에서 스펠 검사를 수행할 수 있는 추가의 장점을 갖는다.
도 9B는 스펠 검사 프로세스의 서로 다른 단계들에서 3개의 개별 브라우징 윈도우들을 포함하는 스크린 샷을 도시한다. 제 1 윈도우(820)는 메시지의 스펠 검사된 사본을 포함한다. 특히, 3개의 잠재적으로 잘못 쓰여진 단어들(821, 823, 825)은 윈도우 내에서 하이라이팅된다. 사용자가 제 2 단어(823)를 클릭한 이후에, 단어 "delying"는 제 2 브라우징 윈도우(830)에 도시된 것과 같이 스펠 정정 윈도우(832)에 통합된다. 추가로, 시스템에 의해 발생된 후보 단어들의 리스트(834)는 스펠 정정 윈도우 밑 또는 이에 인접하여 디스플레이된다. 사용자는 그후에 잘못 쓰여진 용어 "delying"을 대체하기 위해 제 3 대체 용어 "delaying"를 선택한다. 사용자가 정정된 단어 "delaying" 이전에 단어 "temporarily"를 추가하기를 원하는 경우, 사용자는 제 3 윈도우(840)에 도시된 것과 같은 좌측 화살표(841)를 클릭할 수 있고, 브라우저 윈도우 포인터를 잘못 쓰여진 용어 "delying"의 앞에 위치시킬 수 있으며, 용어 "temporarily"를 입력할 수 있다. 결국, 모든 잘못 쓰여진 단어들을 정정한 후에, 사용자는 "수행" 버튼(845)을 클릭하여 메시지가 S4로 전송되도록 할 수 있다.
대화 서버
도 10 내지 19는 전술된 대화 서버(102)의 일 실시예를 설명하는 것을 보조할 수 있다. 대화 서버(102)의 일 실시예는 도 10에 도시된다. 대화 서버(102)는 대화 엔진(100), 업데이터 엔진(1004), 메시지 인덱스(1006), 질문 엔진(1008), 메시지 데이터베이스(1010), 하나 또는 그 이상의 보조 서비스 서버들(1012), 스펠 검사기(1014), 및 SMTP(1016)를 포함한다.
대화 엔진(1002)은 통신 네트워크(106)와의 접속을 통해 대화 어시스턴트(110)로부터의 요청들 및 대화 어시스턴트(110)로의 응답들을 처리한다. 통신 네트워크(106)는 인터넷, 하나 또는 그 이상의 근거리 네트워크들(LANs), 하나 또는 그이상의 원거리 네트워크들(WANs), 다른 형태의 네트워크들 또는 상기 네트워크들의 조합을 포함할 수 있다. 대화 엔진은 보조 서비스 서버들(1012) 및 스펠 검사기(1014)와 같이 다양한 보조 서비스들에 접속될 수 있다. 질문 엔진(1008)은 대화 엔진(1002), 메시지 인덱스(1006), 메시지 데이터 베이스(1010)에 접속된다. 업데이터 엔진(1004)은 대화 엔진(1002) 및 메시지 인덱스(1006) 사이 및 메시지 데이터 베이스(1010)에 접속된다. SMTP 게이트웨이(1016)는 대화 엔진(1002) 및 통신 네트워크(106) 사이에 접속된다. 도 10은 다수의 개별 아이템들과 같은 대화서버(102)를 도시하지만, 상기 도면은 본 명세서에 개시된 실시예들의 구조적인 도시보다는 대화 서버(102)에 제공될 수 있는 다양한 특징들의 기능적인 설명을 위해 의도된다. 실제적으로, 그리고 당업자에 의해 인식되는 것과 같이, 개별적으로 도시된 아이템들은 조합될 수 있고, 몇몇 아이템들은 분리될 수 있다. 예를 들어, 도면에 개별적으로 도시된 몇몇 아이템들은 단일 서버들에서 시행될 수 있고, 단일 아이템들은 하나 또는 그 이상의 서버들에 의해 실행될 수 있다. 대화 서버(102) 내의 서버들의 실제 개수 및 그들 사이에 특징들이 할당되는 방법은 하나의 구현으로부터 또 다른 구현으로 변경될 수 있고, 시스템이 평균 사용 기간뿐만 아니라 피크 사용 기간 동안 처리해야 하는 이메일 트래픽량에 따라 결정된다.
전술된 것과 같이, 대화 엔진(1002)은 메시지들과 관련된 대화 어시스턴트(110)로부터의 다양한 요청들에 응답하고 통신 네트워크(106)와의 접속을 통해 대화-기반 응답들을 리턴할 수 있다. SMTP 게이트웨이(1016)가 통신 네트워크(106)에 접속될 수 있는 반면, SMTP 게이트웨이(1016)는 메시지들을 송신 및 수신하는 것과 더 직접적으로 관련된다. 몇몇 실시예들에서, SMTP 게이트웨이(1016)는 예를 들어, 단일 메일 전송 프로토콜(SMTP)을 사용하여 메시지들을 전송 및 수신할 수 있다. SMTP 게이트웨이(1016)는 통신 네트워크(106)로부터 새로운 메시지를 수신하여 상기 메시지를 추가의 프로세싱을 위해 대화 엔진(1002)으로 전송할 수 있다. 또한, SMTP 게이트웨이(1016)는 대화 서버(1002)로부터 메시지들을 수신하고, (통신 네트워크(106)를 통해) 메시지에 규정된 수신 어드레스들로 이러한 메시지들을 전송한다.
대화 엔진(1002)은 조립될 수 있는 메시지의 스펠 검사를 처리한다. 대화 엔진(1002)은 스펠 검사를 위해서 검사될 텍스트의 일부들을 스펠 검사기(1014)로 전달한다. 스펠 검사기(1014)는 잠재적으로 부정확하게 스펠링된 것으로 식별되는 텍스트의 식별을 포함하는 정보를 리턴한다. 일부 실시예들에서, 스펠 검사기(1014)는 잠재적으로 부정확하게 스펠링된 것으로 식별된 텍스트에 대한 제안들에 관한 정보를 제공한다. 일부 실시예에서, 이러한 정보는 후속 처리를 위해 대화 어시스턴트(110)로 전송된다.
하나 이상의 보조 서비스 서버들(1012)은 대화 엔진(1002)에 추가적인 서비스들을 제공한다. 일부 실시예에서, 이러한 보조 서비스 서버들(1012)은 스팸 검출 모듈을 포함한다. 스팸 검출 모듈의 동작은 도11을 참조하여 아래에서 논의된다. 일부 실시예에서, 보조 서비스 서버들(1012)은 어태치먼트 관리 모듈을 포함하고, 이러한 어태치먼트 관리 모듈은 이메일 메시지들에 첨부된 파일들의 효율적인 저장 및 검색을 관리한다.
수신된 메시지를 처리하는 실시예가 도11에 제시된다. 메시지가 수신되고, 대화에 할당되며, 인덱스화되고, 하나 이상의 속성들에 할당되며, 저장된다. 처음에, 메시지는 SMTP 게이트웨이(1016)에 의해 수신되고, 예를 들어 여기서 몇몇 처리 및 핸들링이 발생할 수 있으며, 그리고 나서 대화 엔진(1002)으로 전달된다(단계 1102). 대화 엔진(1002)은 메시지에 대한 메시지 식별자를 생성한다. 메시지 식별자는 하나의 메시지를 다른 메시지와 구별하기 위해서 사용된다. 일 실시예에서, 식별자는 하나 이상의 부분들로 구성되는 N 비트 수이다. 예를 들어, 실시예에서 메시지 식별자는 메시지 컨텐츠의 64 비트 해쉬 및 Y 비트(예를 들면, 32 비트 또는 48 비트) 타임스탬프로 구성되는 64 비트 수일 수 있다. 해쉬는 큰 도메인으로부터의 값들을 보다 작은 값으로 매핑하는 함수이다. 당업자는 메시지들을 서로 구분하기 위해서 충분한 정보를 제공하는 메시지 식별자들을 생성하는 다양한 방법들을 잘 이해할 수 있을 것이다.
대화 엔진(1002)은 메시지를 자신의 구성 부분들로 분석(parse)한다(단계 1104). 이러한 부분들은 전송자의 어드레스, 하나 이상의 수신 어드레스, 메시지의 주제, 이전에 기술된 RFC 2822(2001년 4월)에 기술된 필드와 같은 "Reference:" 필드, RFC 2822에 또한 기술된 "In-Reply-To:" 필드, 메시지 컨텐츠, 또는 메시지에 포함될 수 있는 임의의 다른 정보를 포함할 수 있다. 메시지가 수신된 후에, 그리고 메시지를 분석하기 전 또는 후에, 메시지는 스팸 검사 모듈로 전달되어 메시지가 스팸 기준에 매칭하는지 여부를 결정한다(단계 1105). 일부 실시예에서, 스팸 검사 모듈은 비동기적으로, 그리고 다른 메시지 처리들과 병렬적으로 수행된다. 일부 실시예에서, 스팸 기준은 수신된 메시지가 사용자가 읽기를 원하지 않는 메시지일 가능성이 있는지 여부를 결정하도록 설계된다.
분석된 메시지는 메시지 데이터베이스에 추가된다(단계 1106). 일 실시예에서, 메시지는 메시지 데이터베이스에 추가되어, 그 후에는 삭제를 제외하고는 뒤이어 수정되지 않는다.
메시지 분석 기간 동안 추출된 메시지의 부분들 중 일부 또는 전부는 수신된 메시지가 속하는 대화를 결정하는 것을 지원하는데 사용될 수 있다(단계 1108). 예를 들어, 메시지의 주제는 동일한 주제를 갖는 다른 메시지와 비교될 수 있는데, 왜냐하면, 대화 내의 메시지들은 동일한, 또는 근접한 주제를 가진 가능성이 있기 때문이다. 매칭하는 대화가 발견되지 않으면, 메시지는 새로운 대화와 관련된다.
대화 관련(association)이 이루어진 후에, 메시지는 검색을 위해 인덱싱된다(단계 1110). 일 실시예에서, 메시지 텍스트의 전부는 헤더 정보의 부분들과 함께 인덱싱된다. 일부 실시예들에서, 메시지 바디의 "잡음 단어들"(예를 들어, "the", "a", 및 "or")는 인덱싱되지 않지만, 메시지의 관련 부분들에서의 모든 다른 텍스트는 인덱싱된다. 당업자는 검색되는 메시지의 이러한 부분들이 인덱싱되어야 함을 잘 이해할 수 있을 것이다. 아래에서 설명되는 바와 같이, 일부 실시예들에서, 메시지와 관련되는 속성(attribute)에 관한 정보는 메시지 처리의 차후 단계에서 인덱스에 추가된다.
다음으로, 속성들의 초기 세트가 메시지에 할당된다(단계 1112). 이러한 속성들 타입은 예를 들어, 메시지가 새로운 것임을 표시하기 위해서 수신 메시지를(전형적으로 메시지가 읽혀진 것으로 보여지거나 또는 마킹되지 않음을 의미하는) "읽혀지지 않은(unread)"으로서 라벨링하는 것을 포함할 수 있다. 사용자에 의해 전송된 메시지들을 제외한 메시지들에 초기에 할당된 다른 속성은 "인박스(InBox)" 속성이다. 각각의 메시지에 초기에 할당되는 다른 속성들 세트는 동일한 대화에서 (존재하는 경우)다른 메시지와 관련된 사용자-정의 속성들이다. 대화에서 다른 메시지들과 관련되는 사용자 정의 속성들은 아래에서 도18을 참조하여 설명되는 대화 데이터베이스를 검색함으로써 결정된다. 다른 속성들이 메시지에 초기에 할당될 수 있다. 메시지와 관련되는 속성들은 유사한 속성들을 갖는 메시지를 획득하기 위해서 메시지 데이터베이스를 검색하는데 사용될 수 있다. 예를 들어, "읽혀지지 않은"으로 라벨링되는 모든 메시지들을 검색하도록 하는 검색이 실행될 수 있다. 또한, 일 실시예에서, 메시지는 자신의 대화의 속성들을 물려받기 때문에, 대화 속성들이 메시지에 추가될 수 있다.
일부 실시예들에서, 메시지와 관련되는 속성들은 개별 메시지들과 관련된 속성들을 포함하지만, 대화의 모든 메시지들과 반드시 관련된 속성일 필요는 없다. 예를 들어, "Marked for Deletion" 속성(종종 "트래시" 속성으로 지칭됨)은 대화의 개별 메시지와 관련되지만, 동일한 대화의 다른 메시지들과는 관련되지 않는다. 삭제로 마킹된 메시지들은 시스템에 의해 여전히 저장되고, 대화들과 여전히 관련되지만, 대응하는 대화들이 디스플레이될 때 일반적으로 디스플레이되지 않는다. 하나 이상의 특별한 뷰(view)들이 사용되어, 사용자가 "Marked for Deletion" 속성을 갖는 메시지들 뷰잉할 수 있도록 할 수 있다. 이러한 뷰는 사용자에게 메시지를 "undelete"하게 하는 기회를 제공한다. 다른 한편으로, 일부 실시예들에서, 사용자 정의 라벨이 대화와 관련되는 경우, 그 라벨은 대화의 모든 메시지들과 관련된다. 일부 다른 실시예들에서, 사용자 정의 라벨이 대화와 관련되는 경우, 그 라벨은 소정 기준을 충족시키는 대화 내의 모든 메시지들(예를 들면, 삭제로 마킹된 메시지를 제외한 메시지들)과 관련된다.
다음으로, 사용자가 설정할 수 있는 임의의 사용자 정의 필터들이 메시지에 적용될 수 있다(단계 1114). 각각의 사용자 정의된 필터는 한 세트의 필터 조건들 및 한 세트의 액션들을 포함한다. 필터 조건들은 어떤 메시지가 필터에 매칭하는지를 정의하고, 액션은 메시지에 추가되거나, 메시지로부터 제거될 라벨들을 규정하는 액션들을 포함한다. 필터 조건들은 전송자, 수신자, 메시지 주제의 텍스트, 메시지의 텍스트, 등에 대한 기준을 포함할 수 있다. 일부 실시예들에서, 액션들은 "remove from inbox"(존재하는 경우, 메시지로부터 인박스 라벨을 제거함)를 포함할 수 있고, 시스템 라벨(종종 카테고리로 지칭됨)을 메시지에 추가하고, 사용자 정의 라벨을 사용자에 추가하는 것을 포함한다. 예를 들어, 필터는 특정 텀 또는 텀들의 조합을 갖는 모든 메시지들이 "트래시" 라벨로 라벨링되는 것을 규정할 수 있다. 다른 필터는 "Lake Tahoe"라는 텀이 메시지 내의 임의의 장소에서 나타나면, "Vacation" 라벨이 메시지에 추가될 것을 규정할 수 있다.
일부 실시예들에서, 단계들(1112 및 1114)은 처리되는 메시지에 대한 라벨들의 할당에 관한 것이다. 상기 단계들(1112 및 1114)이 수행되는 시점에서, 스팸 검사 모듈로부터의 결과(단계 1105)가 검색된다. 스팸 검사 모듈이 그 메시지를 스팸으로 분류하면, "스팸" 라벨이 메시지에 라벨링되고, 임의의 충돌하는 라벨들(예를 들면, "인박스(Inbox)" 또는 "트래시(Trash)")이 메시지로부터 제거된다.
메시지에 할당된 라벨들 세트가 설정된 후에, 메시지에 할당된 라벨들 세트를 반영하기 위해서 대화 엔진(1002)의 임의의 테이블 및 인덱스가 갱신된다(단계 1116). 인덱스는 메시지가 할당된 라벨들을 포함하는 정보를 추가함으로써 갱신된다. 결과적으로, 이러한 라벨들 각각에 대한 인덱스 검색은 현재 처리되는 메시지를 포함하는 메시지들의 리스트를 생성할 것이다. 또한, 대화 엔진의 적어도 하나의 테이블 또는 데이터베이스가 현재 처리되는 메시지에 할당된 라벨들의 세트를 표시하기 위해서 갱신된다. 이는 아래에서 도18을 참조하여 설명된다.
마지막으로, 확인신호(ack)가 메시지 전송자에게 전송된다(단계 1118). 일부 실시예들에서, 이러한 확인신호는 전송될 수도 있고, 전송되지 않을 수도 있다.
도11은 특정 순서로 단계들을 보여주지만, 이러한 순서들은 변경될 수 있다. 다른 실시예들에서, 이러한 단계들은 다른 순서를 가질 수 있다. 예를 들어, 메시지 인덱싱에 앞서 메시지가 메시지 데이터베이스에 추가될 수 있고, 그리고 나서 단계(1114)가 단계(1110)에 선행하여 수행될 수 있다. 당업자는 다양한 변형된 순서들에 대해 잘 이해할 수 있을 것이다.
각 메시지를 대화와 관련시키기
도12를 살펴보면, 다음은 어떻게 메시지가 대화와 매칭되는지를 보여준다(단계 1106). 메시지가 분석(도11의 단계 1104)된 후, 구성 부분들 중 일부들은 후보 대화에 대한 검색 질문(search query)을 포뮬레이팅(formulate)하기 위해서 사용된다(단계 1202). 예를 들어, 대화는 시간 정보, 전송자 정보, 주제 정보, 헤더의 다른 정보, 또는 시스템에 의해 제공되는 정보, 또는 이들의 조합에 기반하여 관련(relate)될 수 있다. 일 실시예는 "Reference;" 및/또는 "In-Reply-To:" 필드와 함께 메시지의 주제를 사용하여 검색 질문을 포뮬레이팅한다. 다른 실시예들은 검색 질문에서 메시지의 전송자 또는 수신자를 포함한다. 당업자는 현재 메시지와 관련될 수 있는 메시지들을 생성하기 위한 다른 검색 질문들을 잘 이해할 수 있을 것이다.
검색 질문은 이전에 저장된 메시지들에 대해 적용되고, 후보 메시지들이 수신된다(단계 1204). 메시지, 또는 메시지에 대한 정보가 검사되어 어떤 메시지가 현재 메시지에 가장 잘 매칭되는지를 결정한다(단계 1206). 메시지가 속하는 대화는 현재 메시지가 속하는 대화일 가능성이 높다. 다수의 다른 방법들이 현재 메시지가 속하는 대화를 결정하기 위해서 사용될 수 있다. 일 방법은 현재 메시지의 주제를 사용하는 것이다. 동일한 주제를 갖는 메시지는 동일한 대화에 속할 가능성이 높다. 따라서, 현재 메시지의 주제를 사용하는 질문이 포뮬레이팅될 수 있다. 예를 들어, 인입 메시지가 "우리가 오늘 점심을 위해 어디로 가야하나?" 라는 주제를 가지는 경우, 현재 메시지가 속하는 대화는 동일한 주제를 갖는 하나 이상의 메시지들을 포함할 것이다. 주제들을 비교할 때, 비교 수행에 앞서 주제를 정규화(normalize)하는 것이 바람직하다. 일부 실시예들에서, 주제를 정규화하는 것은 일부 시스템에 의해 주제에 일반적으로 첨부되는 "Re" 및 "Fwd"와 같은 서문을 제거하는 것을 포함한다.
그러나, 단지 주제뿐만 아니라 다른 것들을 검사하는 것이 바람직할 수 있다. 2개의 메시지들이 동일한 주제를 가지지만, 하나가 다른 것에 앞서 수신되었다면, 이들은 동일한 대화의 부분이 아닐 확률이 높다. 예를 들어, "우리가 오늘 점심을 위해 어디로 가야하나?" 라는 주제를 갖는 2개의 메시지들이 1달의 시간 간격을 두고 수신되었다면, 이들은 동일한 대화의 부분이 아닐 확률이 높다. 따라서, 일 실시예에서, 현재 메시지 및 후보 대화로부터의 메시지의 정규화된 주제들이 매칭되면, 메시지들의 날짜/시간 값에 대한 검사가 바람직할 수 있다.
대화에 대한 메시지 매칭이 존재하는 경우, 다른 인자들, 예를 들면 수신자, 메시지 컨텐츠 부분들, 전송자의 도메인 어드레스 등이 고려될 수 있다. 당업자는 새로운 메시지가 속하는 대화를 결정하기 위한 다양한 방법들이 존재함을 잘 이해할 수 있을 것이다. 현재 메시지가 만족스럽게 매칭하는 메시지와 매칭되면, 그 매칭 메시지와 관련된 대화는 현재 메시지와 관련된다(단계 1206). 다른 한편으로, 만족스러운 매칭이 발견되지 않으면, 새로운 대화 식별자가 그 메시지와 관련된다(단계 1206).
일부 실시예들에서, 대화 식별자는 대화에서 수신된 초기 메시지로부터 생성될 수 있다. 예를 들어, 시스템에 의해 제공되는 초기 메시지의 메시지 식별자(송신 또는 수신 시스템에 의해 제공됨)는 대화 식별자로 기능할 수 있다. 그리고 나서, 후속 메시지들은 이제 대화 식별자로서 동작하는 이러한 메시지 식별자와 관련된다. 당업자는 대화 식별자를 제공하기 위해서 사용될 수 있는 초기 메시지의 다양한 특징들을 잘 이해할 수 있을 것이다. 일부 실시예들에서, 이러한 특징은 그 값이 초기 메시지에 고유하고, 따라서 다수의 대화들이 동일한 대화 식별자에 할당되지 않을 것이라는 소정의 조력(comfort)을 제공하기 위해서 사용될 수 있다.
전술한 바와 같이, 현재 메시지가 (이전에 존재하거나 새롭게 생성된)대화와 관련된 후(단계 1106), 초기 속성들이 추가된다(단계 1108). 이러한 초기 속성들을 추가하는(단계 1108) 일 실시예는 도13을 참조하여 설명될 것이다. 초기에, 메시지의 전송자가 검사된다. 현재 메시지의 전송자가 이러한 메시지 처리가 수행되는 사용자가 아니라면, 현재 메시지가 다른 누군가에 의해 그 사용자로 전송되었을 확률이 높다. 따라서, 단계(1302)에서, 현재 메시지의 전송자가 그 사용자가 아니라고 결정되면, "인박스"의 초기 속성(인박스 라벨로 지칭됨)이 현재 메시지와 관련될 수 있다(단계 1304). "인박스" 속성은 사용자에게 전송된 이러한 메시지들을 식별하는데 사용된다. 예를 들어, 일부 실시예들에서, "인박스" 속성을 갖는 메시지들의 검색이 그 사용자에 대한 인박스 뷰 생성에서 사용된다.
이러한 실시예에서, 용어 "속성" 및 "라벨"은 서로 교환되어 사용된다. 또한, 특정 속성을 메시지에 "관련(associating)"시키는 것과, 메시지를 특정 속성 또는 라벨로 "마킹"하는 것은 동일한 동작 또는 등가의 동작으로 간주된다.
현재 메시지가 새로운 메시지일 확률이 높기 때문에, 사용자가 이러한 메시지를 이전에 보지 않았을 확률 또한 높다. 따라서, 이를 표시하는 "읽혀지지 않은" 속성이 현재 메시지와 관련된다(단계 1306). 당업자는 동일한 결과를 얻기 위해서 메시지 속성들이 다양한 방식으로 구현될 수 있음을 잘 이해할 수 있을 것이다. 예를 들어, 미리 정의된 값이 "인박스"를 표시할 수 있다. 요구되는 속성들을 갖는 메시지가 이러한 속성들에 기반하여 검색가능하다는 것은 충분하다. 다른 속성들이 또한 메시지와 관련될 수 있다. 이러한 구분이 특정 속성에 대한 검색 능력에 비해 덜 중요하더라도, 속성들은 복수의 형태들로 간주될 수 있다. 속성들은 정의된 속성들, 예를 들면, 인박스(InBox), 트래시(Trash), 스팸(Spam), 모든 문서들(All_Documents) 및 읽혀지지 않은(unread)을 포함할 수 있다. 일부 실시예들에서, 임의의 시스템 속성들은 상호 배타적일 수 있다(예를 들면, 인박스, 트래시, 및 스팸). 속성들은 사용자 정의 속성들(종종 여기서 카테고리로 지칭됨)을 포함할 수 있다.
사용자가 처리되는 메시지의 전송자였다면(단계 1302에서 결정됨), 또는 "읽혀지지 않은"과 같은 임의의 적용가능한 시스템 속성들이 메시지에 추가된 후에(단계 1306), 대화에 속하는 추가적인 속성들이 메시지에 추가된다(단계 1307).
특정 필터 기준이 인입 메시지에 대해 검사 및 적용될 수 있다(단계 1308). 일 실시예에서, 미리 결정된 조건들이 충족되는 경우, 속성들을 수신된 메시지에 적용하는 필터들을 사용자가 설정할 수 있다. 다른 실시예에서, 시스템은 하나 이상의 미리 정의된 필터들을 수신된 메시지에 적용할 수 있다.
현재 메시지가 필터 기준에 매칭되면, 속성들이 필터에 따라 그 메시지에 적용될 수 있다(단계 1310). 일 실시예에서, 시스템은 특정 메시지들이 "인박스"에 위치되지 않도록, 사용자가 필터를 설정할 수 있도록 하는 툴(tool)들을 제공한다. 즉, 필터는 "인박스" 속성이 그 메시지로부터 제거되도록 한다. 다른 실시예에서, 현재 메시지는 하나 이상의 대화가 관련되는 사용자에 대한 관심 영역을 표기하는 라벨과 같이, 특정한 사용자 정의 속성과 관련된다. 예를 들어, 인입 메시지는 "음식" 라벨을 갖는 대화와 관련되고, "음식" 라벨은 현재 메시지와 관련된다. 일반적으로, 메시지는 자신이 관련되는 대화에 대한 라벨들을 물려받는다. 다수의 필터들이 수신된 메시지들에 적용될 수 있기 때문에, 새롭게 수신된 메시지들 및 그들의 관련 대화들은 둘 이상의 사용자 정의된 라벨과 관련될 수 있다.
다른 실시예에서, 사용자는 스누즈(snooze) 조건을 대화와 관련시킬 수 있다. 일부 실시예들에서, 스누즈 조건은 사용자가 구체적으로 그 시스템이 그렇게 하도록 명령하는 경우에 대화와 관련된다. 일부 실시예들에서, 스누즈 조건은 필터가 대화의 메시지와 매칭하는 경우에 대화와 관련된다. 스누즈 조건은 스누즈 조건이 적용된 대화에서 새로운 메시지가 수신될 때마다, 수행될 특정 액션들을 규정한다. 예를 들어, 스누즈 조건은 시스템이 인박스 라벨을 대화의 새로운 메시지와 관련시키지 않도록 한다. 구체적으로, 사용자는 임의의 조건들이 충족되지 않는 경우 대화의 새로운 메시지가 사용자의 인박스에 위치되는 것을 방지하는 스누즈 조건을 대화와 관련시킨다(직접 또는 필터 동작을 통해). 하나의 이러한 트리거 조건은 (유일한 주 수신자로서) 사용자로 직접적으로 어드레스된 인입 메시지이다. 또 다른 트리거 조건은 사용자 또는 시스템에 의해 선택된 시간 주기의 전달이다. 또 다른 트리거 조건은 규정된 단어 또는 문장을 포함하는 수신 메시지일 수 있다. 이러한 예에서, 스누즈 조건을 충족시키는 메시지가 수신되면, 스누즈 조건은 대화로부터 제거되고, 인입 메시지는 "인박스" 라벨로 라벨링된다. 일부 실시예에서, 추가적이 액션들, 예를 들면 "인박스" 라벨을 대화의 다른 메시지에 추가하는 액션이 취해진다. 또 다른 실시예에서, "읽혀지지 않은(Unread)" 라벨을 갖는 대화의 모든 메시지들은 "인박스(InBox)" 라벨로 라벨링된다. 따라서, "인박스"에 대한 검색은 이러한 대화를 리턴한다. 일부 실시예들에서, 미리 정의된 이벤트 또는 조건이 일어날 때까지, 대화와 관련된 새로운 메시지가 "인박스" 라벨로 마킹되는 것을 방지하는 스누즈 필터를 생성함으로써 스누즈 조건이 대화와 관련되고, 미리 정의된 이벤트 또는 조건이 일어난 후에 스누즈 필터는 삭제 또는 수정된다.
수신 메시지에 적용될 수 있는 또 다른 필터 타입은 바람직하지 않은 메시지들을 식별하고, "스팸" 라벨로 이들을 마킹하는(즉, "스팸" 속성을 이러한 메시지와 관련시킴) "스팸" 필터이다.
도14는 대화 속성들을 수정하는 일 실시예를 보여준다. 대화 속성들은 대화 또는 대화와 관련된 인입 메시지가 필터 기준에 매칭될 때 수정될 수 있다. 이러한 대화 속성들은 또한 대화가 특정 사용자 정의 속성을 가져야만 함을 사용자가 표시하는 경우 수정될 수 있다. 예를 들어, 사용자는 특정 대화가 "음식" 카테고리와 관련되어야 함을 지정할 수 있다. 이러한 경우, 대화(및 그 각각의 메시지)는 "음식" 라벨로 마킹되어, "음식" 속성과 관련되게 된다. 사용자는 또한 대화를 삭제를 위해 마킹된 것으로 지정할 수 있다.
일부 방식에서, 사용자 정의 속성들은 개념적으로 폴더들과 비교될 수 있다. 그러나, 본 발명의 실시예들을 대화가 다수의 사용자 정의 속성들과 관련되도록 하여준다. 일부 실시예들에서, 새로운 속성이 대화와 관련되면, 대화의 모든 메시지들이 새로운 속성으로 마킹된다.
도 14과 관련하여, 대화의 주어진 속성이 수정되어야 하는 경우에, 대화를 위치시키기 위해(스테이지 1404) 검색이 포뮬레이팅된다(formulated)(스테이지 1402). 대화가 검색된 후에(스테이지 1404), 대화의 속성은 수정될 수 있다(스테이지 1406). 스테이지들 1402, 1404 및 1406을 달성하기 위해 사용되는 특정한 메커니즘들은 대화들과 속성들을 연관시키기 위해 사용되는 메커니즘들에 따라 좌우된다. 몇몇 실시예들에서, 속성들은 대화 기반(basis)에 의해 대화와 연관된다. 예를 들어, 대화 엔진은 각각의 특정 대화와 관련된 속성들의 리스트를 유지할 수 있다. 대안적으로 또는 추가적으로, 대화 엔진은 각각의 정의된 속성을 상기 속성으로 마킹된 모든 대화들과 매핑하는 인덱스를 유지할 수 있다. 대안적으로, 몇몇 실시예들에서 대화와 연관된 속성들은 대화에 있는 개별적인 메시지들과 연관된다. 이러한 실시예들에서, 대화 엔진은 각각의 정의된 속성을 상기 속성으로 마킹된 모든 메시지들과 매핑하는 인덱스를 유지할 수 있으며, 추가적으로 각각의 메시지를 상기 메시지와 연관된 대화들과 매핑하기 위한 테이블 또는 다른 메커니즘을 유지할 수 있다.
본 발명의 많은 특징들은 메시지들과 대비되는 정보의 기본 유니트로서 대화들을 사용한다. 예컨대, 인박스(InBox)는 사용자에게 대화들의 리스트를 제공한다. 본 발명의 몇몇 특징들은 사용자의 이메일 계정에 있는 대화들에 대한 복수의 구별되는 뷰(view)들로 나열되는 대화들을 식별하기 위해 검색을 이용한다. 대화들을 검색하고 식별된 대화에 대한 표시를 생성하는 과정은 도 15와 관련하여 설명된다. 처음에, 검색 질문이 수신된다(스테이지 1502). 검색 질문은 사용자별로 특정되거나 또는 (예컨대, "인박스" 아이콘에 대한 사용자의 클릭에 응답하여) 시스템에 의해 생성될 수 있다. 검색 질문은 다수의 인자들에 기반할 수 있다. 검색 질문에 있는 검색 텀(term)들은 워드들 또는 워드들이 결합된 형태로 사용자로부터 입력될 수 있다. 예를 들어, 사용자는 "베이글(bagel)" 또는 "저렴한(inexpensive)"와 같은 단어들을 포함하는 메시지들을 검색할 수 있으며, 관련된 대화들이 리턴될 것이다. 검색 질문은 특정한 사용자 동작들에 응답하여 시스템에 의해 생성될 수 있다. 예를 들어, 시스템에 의해 생성된 검색 질문은 사용자가 인박스 뷰를 원한다면 "인박스" 속성을 가지는 대화들을 검색할 수 있다.
검색가능한 텀들의 임의의 조합들은 검색 질문(search query)에서 사용될 수 있다. 위에서 언급한 바와 같이, 검색가능한 텀들은 메시지들의 텍스트, 메시지들과 관련된 임의의 속성들, 대화들 또는 메시지와 관련된 헤더 정보를 포함할 수 있다. 일 실시예에서, 검색 질문을 메시지 데이터베이스에 적용하는 것은 메시지들의 세트를 리턴시킨다(스테이지 1504). 도 10과 관련하여, 이것은 예컨대 검색 질문을 질문 엔진(1008)에 전송함으로써 이루어질 수 있다. 질문 엔진(1008)은 검색 질문을 메시지들의 리스트를 리턴시킬 수 있는 메시지 인덱스(1006)에 적용할 수 있다. 메시지들의 리스트는 스테이지 1504에서 수신될 수 있다. 원한다면, 다른 실시예들은 메시지 식별자들, 문서 식별자들, 메시지들의 전부 또는 일부, 또는 이들의 임의의 결합의 세트를 리턴시키는 방식을 포함하는 다수의 상이한 방식들로 메시지들의 리스트를 리턴시킬 수 있다.
몇몇 실시예들에서, 검색들은 개별적인 메시지들에 대해서 보다는 대화 전체(as a whole)에 대하여 대화들에 실행된다. 그리하여, 하나는 제 1 메시지에서 발견되고 다른 하나는 동일한 대화의 제 2 메시지에게 발견되는, 제 1 및 제 2 검색 텀들이 질문에 포함될 때, 대화는 질문과 관련이 있는 것으로 간주되어 검색 결과들에 포함될 것이다. 예를 들어, 제 1 메시지는 점심 위치에 대한 생각을 물어보며, 특정한 레스토랑을 언급하는 다음 메시지는 원래의 메시지의 텍스트를 포함하지 않는 대화가 있다고 가정한다. 사용자가 특정한 레스토랑과 점심에 대하여 논의되었던 대화를 찾는데 관심이 있는 경우에, 대화 내에 있는 메시지 경계들이 존재하지 않는 것처럼, 검색이 전체 대화의 텍스트에 대하여 적용된다면 이러한 검색은 원하는 결과를 생성할 가능성이 보다 높다.
대화들은 스테이지 1504에서 리턴된 메시지들의 세트와 연관된다. 다수의 방법들이 연관된 대화들을 식별하기 위해 이용될 수 있다. 메시지가 스테이지 1504에서 리턴된 세트로부터 선택되면(스테이지 1506), 메시지가 속하는 대화가 식별된다(스테이지 1508). 일 실시예에서, 각각의 메시지를 대화에 매칭하는 데이터 구조가 유지될 수 있다. 이러한 경우에, 특정한 메시지 식별자와 관련된 데이터 구조 엔트리에 대한 검사는 메시지가 속하는 대화를 식별하게 될 것이다. 결과 세트로서 리턴될 대화들의 수는 미리 정의된 수로 제한될 수 있다. 이러한 경우에, 충분한 수의 대화들이 식별되고 결과들이 리턴될 때까지 메시지들의 세트에 대한 프로세싱이 계속된다. 이에 반해서, 리턴되는 메시지들의 세트와 관련된 대화들 모두가 식별될 수 있으나, 오직 서브세트만이 리턴된다.
리턴된 결과들의 전부 또는 일부가 속하는 대화들을 식별함으로써 대화들의 리스트가 생성되면(스테이지 1510), 대화 정보는 요청자에 대한 리턴을 위해 포매팅된다(스테이지 1512). 포매팅 스테이지 1512는 식별된 대화들과 관련된 다수의 상이한 타입들의 정보를 포매팅할 수 있으며, 이에 대한 세부 사항들은 다른 실시예에서는 변경될 것이다. 몇몇 실시예들에서, 포매팅 정보는 대화 정보를 사용자에게 제공하기 위해 대화 어시스턴트(110)에 의해 인식되는 타입에 관한 것이다.
몇몇 실시예들에서, 스테이지 1510에서 생성된 대화들의 리스트에 있는 대화들은 미리 정의된 규칙 또는 규칙 세트에 따라 각각의 대화에 지정된 날짜/시간 값에 따라서 배열된다. 위에서 설명된 바와 같이, 몇몇 실시예들에서, 대화들의 리스트에 있는 각각의 대화는 대화들의 리스트를 생성하기 위해 사용되는 검색 기준에 매칭되는 가장 최근의 메시지의 날짜/시간과 동일한 날짜/시간으로 지정되며, 대화들의 리스트에 있는 대화들은 이러한 지정된 날짜/시간 값들에 따라 (예컨대, 역시간 순서로) 배치된다. 당업자는 대화들의 리스트에 있는 대화들을 배치하고 표현하기 위한 다양한 다른 방식들이 존재한다는 것을 이해할 것이다.
몇몇 실시예들에서, (스테이지 1512에서 생성된) 대화들의 리스트를 나타내는 포매팅된 대화 데이터는 대화들의 리스트에 있는 각각의 대화에 포함된 메시지들의 수에 대한 카운트를 포함한다. 몇몇 실시예들에서, 각각의 대화에 대한 메시지 카운트는 얼마나 많은 메시지가 대화에 포함되어 있는지를 사용자에게 표시하기 위해 대화 어시스턴트(110)에 의해 디스플레이된다.
일 실시예에서, 간결한 대화 헤더는 (예컨대, 스테이지 1512 동안) 대화들의 리스트에 있는 각각의 대화에 대하여 생성된다. 대화 헤더는 대화에 있는 메시지들의 전송자 리스트를 식별할 수 있다. 이러한 리스트는 대화 내에 있는 전송자들 모두 또는 서브세트를 포함할 수 있다. 몇몇 실시예들에서, 전송자 리스트는 현재 사용자에 의해 "읽혀지지 않은(Unread)"으로 라벨링된 (대화에 있는) 메시지를 전송한 전송자들을 시각적으로 구별하기 위해 포매팅된다. 다른 실시예에서, 대화 어시스턴트(110)는 이러한 전송자들을 다른 전송자들과 상이한 포맷으로 표현한다. 예를 들어, "읽혀지지 않은" 메시지들의 전송자들은 볼드(bolded) 또는 하이라이팅된(highlighted) 텍스트를 사용하여 식별될 수 있다.
다른 실시예에서, (간결한 대화 헤더에 있는) 메시지들의 전송자들의 리스트는 사용자의 이름 또는 주소를 자기-참조 식별자로 대체함으로써 처리될 수 있다. 그 결과, 대화에 대한 전송자 리스트가 디스플레이되면, 사용자의 이름 또는 사용자가 아닌 전송자들과 유사한 다른 식별 정보를 디스플레이하는 대신에, 자기-참조 식별자(예를 들어, "me")가 디스플레이된다. 다른 타입의 자기-참조 식별자들이 보고 있는 사용자와 다른 사용자들을 구별하기 위해 사용될 수 있다.
다른 실시예에서, 대화들의 리스트에 있는 각각의 메시지에 대한 간결한 대화 헤더는 사용자가 메시지를 어떻게 수신하였는지를 나타내는 정보를 포함할 수 있다. 바꾸어 말하면, 상기 정보는 사용자에게 메시지가 어떻게 전송되었는지를 구체적으로 식별할 수 있다. 예를 들어, 사용자는 메시지로 직접 전송될 수 있고, 메시지를 통해 복사될 수 있고, 메시지를 통해 무작정(blindly) 복사될 수 있고, 또는 메시지가 전송된 분배 리스트의 일부일 수 있다. 사용자가 메시지를 수신하는 하나 이상의 이러한 다양한 방식들은 사용자에게 표시될 수 있다. 예를 들어, 사용자가 직접 메시지로 전송되면, 아이콘 표현은 언제 대화를 사용자에게 제공할지를 표시하기 위해 (">"와 같이) 사용될 수 있다.
몇몇 실시예들에서, 대화들의 리스트에 있는 각각의 메시지에 대한 간결한 정보 헤더는 대화 컨텐트의 스니펫(snippet)을 포함하며, 스니펫은 볼드(bold)로 검색 텀들과 매칭하는 텍스트를 디스플레이하고 또한 일반 폰트로 포매팅된 매칭 텍스트 주변의 텍스트를 포함하기 위한 정보를 포함한다. 대화들의 리스트가 인박스 또는 다른 시스템 카테고리에 대하여 생성되면, 스니펫은 미리 정의된 기준에 따라 선택된 대화로부터의 텍스트를 포함한다. 몇몇 실시예들에서 스니펫은 대화에 있는 가장 최근의 메시지의 시작부로부터의 텍스트를 포함하며, 다른 실시예에서 스니펫은 대화 컨텐트를 나타내기 위해 자동적으로 선택된 텍스트를 포함한다.
다른 실시예에서, 사용자가 검색 질문에 매칭하는 대화들 중에서 특정한 대화를 보기 위해 선택하면, 대화 엔진은 대화에 있는 어떤 메시지가 질문에 매칭하고 어떤 메시지가 질문에 매칭하지 않는지를 나타내는 대화 정보를 생성할 수 있다. 대화 정보는 또한 검색 질문에 매칭하는 메시지들의 텍스트 일부를 포함할 수 있다. 이러한 대화 정보는 사용자에 대한 디스플레이를 위해 포매팅될 수 있다. 대화 정보는 확장 모드에서 디스플레이하기 위해 포매팅된 매칭 메시지들과 콤팩트 모드에서 디스플레이하기 위해 포매팅된 넌-매칭 메시지들을 포함할 수 있다. 다양한 타입들의 정보는 확장 모드에서 사용자에 대하여 표시될 수 있으며, 다음 중 모두 또는 일부분의 임의의 결합을 포함한다: 헤더 정보, 컨텐트 정보, 검색 질문에 매칭하는 텍스트 및 검색 질문 주변의 텍스트. 몇몇 실시예들에서, 검색 질문에 매칭하는 하나 이상의 메시지들이 (예를 들어, "콤팩트 올(all) 메시지" 버튼 또는 옵션을 선택하는 사용자에 응답하여) 콤팩트 모드에서 디스플레이될 때, 콤팩트 모드에서 이러한 메시지들을 위해 디스플레이되는 정보는 메시지 컨텐트의 스니펫을 포함하며, 스니펫은 볼드로 검색 텀들과 매칭하는 텍스트를 디스플레이하고 또한 일반 폰트로 포매팅된 매칭 텍스트 주변의 텍스트를 포함하기 위한 정보를 포함한다.
다른 실시예에서, 대화 정보는 특정 사용자들이 대화에 추가되거나 또는 대화에서 제거되는 때를 표시할 수 있다. 예를 들어, 사용자가 하나의 시간 포인트까지 대화에 있는 메시지들 상에 포함되었으나 그 이후에 더 이상 포함되지 않는 경우, 하나 이상의 다음 메시지들에 대한 정보는 상기 사용자가 더 이상의 대화의 일부가 아니라는 것을 표시할 수 있다. 대화 어시스턴트는, 예컨대 여전히 대화에 참여하고 있는 사용자들의 이름들을 디스플레이하기 위해 사용되는 폰트와는 상이한 사용자의 이름을 디스플레이하기 위한 폰트를 사용함으로써 이를 구현할 수 있다. 대화 어시스턴트는 이러한 목적을 위해 "고스트(ghost)" 폰트를 사용할 수 있다.
대화 정보는 또한 대화에 대한 새로운 참여자를 소개하기 위한 정보를 제공할 수 있다. 예를 들어, 새로운 참여자를 포함하는 제 1 메시지와 관련된 정보는 새로운 사용자의 이름을 구별되도록 디스플레이하기 위한 포매팅 정보를 포함할 수 있다. 이러한 정보는 대화 어시스턴트에 의해 사용자에 대하여 디스플레이될 수 있으며, 그 결과 새롭게 추가된 전송자의 이름 또는 다른 식별 정보는 볼드 또는 다른 시각적으로 구별되는 표현 포맷으로 표시된다.
대화 정보는 또한 스펠 검사에 대한 정보를 포함할 수 있다. 상기 정보는 스펠 검사기(1014)가 어떤 단어를 잠재적으로 부정확하게 스펠링된 것으로 식별하였는지에 대한 표시뿐만 아니라 정확한 스펠링을 위한 제안들과 관련된 정보를 포함할 수 있다.
도 16은 본 발명의 일 실시예에 따른 메시지들을 저장하기 위한 포맷에 대한 설명을 제공한다. 메시지가 메시지 데이터베이스에 저장되면(도 11의 스테이지 1114), 상기 메시지는 도 16에 도시된 바와 같이 저장될 수 있다. 메시지 데이터베이스(1602)는 예컨대 메시지 1(1604) 내지 메시지 x(1606)과 같은 메시지들에 대한 정보를 포함할 수 있으며, 여기서 x는 특정 사용자에 대응하는 메시지들의 수를 나타낸다. 일 실시예에서, 각각의 사용자 메시지들은 각각의 사용자에게 고유한 메시지 데이터베이스(1602)에 저장된다. 다른 실시예에서, 하나 이상의 사용자들에게 속하는 메시지들은 동일한 메시지 데이터베이스(1602)에 저장될 수 있다. 당업자는 메시지들이 다른 사용자에게 속하는 것으로 하나의 사용자에게 표시되는 것을 방지하기 위한 다양한 방법들을 이해할 것이다. 다른 실시예에서, 하나 이상의 사용자들로부터의 메시지들은 메시지마다 오직 하나의 저장 엔트리를 가지는 메시지 데이터베이스(1602)에 저장될 수 있으며, 그 결과 다수의 사용자들이 메시지에 대한 단일 사본을 참조하게 된다.
일 실시예에서, 메시지(예컨대, 메시지(1608))는 헤더 정보(1612), 컨텐트(1614) 및 어태치먼트(attachment)(1616)를 포함할 수 있다. 헤더 정보(1614)는 예컨대 전송자 및 수신자를 식별하는 정보, 메시지의 날짜/시간 값 및 주제를 포함하는 메시지들에 대한 헤더 정보를 포함할 수 있다. 다른 정보가 또한 RFC 2822에 설명된 바와 같이 헤더 정보에 포함될 수 있다. 컨텐트(1614)는 메시지의 컨텐트를 포함할 수 있다. 컨텐트(1614)는 텍스트 및/또는 (예컨대, 이미지 또는 그림과 같은) 다른 타입들의 컨텐트를 포함할 수 있다. 어태치먼트(1616)는 특정 메시지에 첨부되는 임의의 정보의 컨텐츠일 수 있다. 예를 들어, 메시지에 첨부된 문서는 메시지(1610)의 이 부분에 위치할 수 있다. 당업자는 메시지 정보를 저장하기 위한 다른 방법들을 이해할 것이다. 예를 들어, 어태치먼트는 다른 저장 구조에 저장될 수 있으며 자신에 대한 참조가 어태치먼트(1616)에 위치한다.
대안적인 실시예에서, 각각의 대화에 대한 모든 메시지들은 메시지 데이터베이스에 하나의 레코드, 문서 또는 데이터 구조로서 저장된다.
사용자, 메시지 및 대화 데이터 구조들
도 17은 본 발명의 일 실시예에 따른 사용자 데이터베이스 및 메시지 인덱스를 나타낸다. 사용자 데이터베이스(1702)는 사용자들에 대한 정보를 저장할 수 있다. 저장된 정보는 사용자 정보(1704)를 포함할 수 있다. 사용자 정보(1704)는 사용자 우선순위, 보안 정보 또는 본 발명의 다양한 실시예들에 의해 이용될 수 있는 임의의 다른 정보와 관련된 다양한 타입의 사용자 정보를 포함할 수 있다. 사용자 데이터베이스는 사용자 ID (1)(1706) 내지 사용자 ID (m)(1708)과 같은 사용자들을 식별하기 위해 사용되는 사용자 식별 정보를 포함하며, 여기서 m은 시스템의 사용자 수를 나타낸다. 특정한 사용자 ID (m)(1708)은 n-비트 이진수와 같은 각각의 사용자에 대한 고유한 식별자일 수 있다. 또한, 다른 타입의 사용자 식별이 이용될 수 있다.
몇몇 실시예들에서, 사용자의 사용자 ID는 사용자의 이메일 계정과 관련된 필터들, 질문들 및 라벨들에 대한 정보를 저장하기 위한 데이터 구조 세트(1720)를 식별하기 위해 사용된다. 몇몇 실시예들에서, 이러한 데이터 구조들은 사용자에 의해 제출된 마지막 몇 개의 질문들을 표현하는 정보를 저장하기 위한 질문 캐시(1722); 사용자-정의된 필터들을 저장하기 위한 필터 데이터 구조 세트(1724); 및 사용자-정의된 라벨들을 표현하는 정보를 저장하기 위한 라벨 데이터 구조(1726)를 포함한다. 질문 캐시(1722)에 저장된 정보에 의해 표현된 최근의 질문들은 사용자가 용이하게 대화 관리 시스템에 대하여 이러한 질문들을 재-제출할 수 있도록 하기 위해 예컨대 그룹 박스(348)(도 3B)에서 사용자에 대하여 표시될 수 있다. 사용자-정의된 필터들은 메시지가 사용자의 메일 계정에 추가되면 각각의 새로운 메시지를 처리하는 동안에 대화 관리 시스템에 의해 사용된다. 사용자-정의된 라벨들과 관련된 저장된 정보는 사용자가 용이하게 사용자-선택된 라벨을 가지는 대화들의 리스트를 요청하기 위해 예컨대 그룹 박스(347)(도 3B)에서 사용자에 대하여 표시될 수 있다.
사용자의 사용자 ID는 사용자에 대응하는 풀(full) 텍스트 및 속성 인덱스(1710)를 식별하기 위해 사용될 수 있다. 풀 텍스트 및 속성 인덱스(1710)는 특정 사용자와 관련될 수 있으며, 그 결과 다른 사용자는 특정 사용자와 관련된 메시지들에 대한 인덱스를 검색할 수 없다. 풀 텍스트 및 속성 인덱스(1710)는 사용자의 메일 계정에 있는 메시지들에 대한 정보를 저장하며, 그 결과 풀 텍스트 및 속성 인덱스(1710)에 대하여 적용되는 질문은 (존재한다면) 매칭 메시지들의 리스트를 리턴시킨다. 상기 리스트는 메시지 식별자들의 리스트로서 리턴될 수 있다.
특정 메시지에 대한 풀 텍스트 및 속성 인덱스(1710)에 포함된 정보는 메시지의 메시지 ID(1712), 메시지의 컨텐트(1714) 및 메시지의 속성들(1716)에 대한 정보를 포함할 수 있다. 메시지 ID(1712)는 메시지에 대한 고유한 식별자(즉, 동일한 사용자에 대하여 저장된 모든 다른 메시지들과 관련하여 고유함)이다. 메시지 ID(1712)는 메시지 데이터베이스(1702)에 저장된 특정 메시지를 참조하기 위해 사용되는 n-비트 수일 수 있다. 일 실시예에서, 메시지 ID(1712)는 64-비트 수일 수 있다. 메시지 ID(1712)는 타임스탬프 정보와 메시지 ID(1712)가 참조하는 메시지의 컨텐트와 관련된 정보로 구성될 수 있다. 타임스탬프 정보는 메시지가 예컨대 SMTP 게이트웨이(1018)에 의해 언제 수신되는지를 표시하는 시스템에 의해 제공되는 Y-비트(예를 들어, 32-비트 또는 48-비트) 타임스탬프일 수 있다. 메시지의 컨텐트와 관련된 정보는 메시지 컨텐츠의 64-Y 비트 해쉬(hash)일 수 있다.
메시지의 컨텐츠는 전체적으로 인덱싱되고 검색가능한 텀들로서 인덱스에 배치된다. 인덱스(1710)가 텀 또는 텀들의 조합에 대하여 검색되면, 인덱스는 텀 또는 텀들의 조합과 매칭되는 메시지들의 메시지 리스트(예컨대, 메시지 ID들)를 리턴시킨다. 특정한 미리 정의된 조건들은 매칭 메시지들 모두 보다 적은 리턴을 요구할 수 있다. 다른 실시예에서, 인덱스(1710)는 질문에 있는 텀 또는 텀들의 조합과 매칭되는 대화들의 리스트(대화 ID들)를 리턴시킨다.
일 실시예에서 풀 텍스트 및 속성 인덱스(1710)에서 검색 텀들에 대한 엔트리들은 각각의 인덱싱된 메시지의 메시지 ID(1712)에 포함된 타임스탬프 정보에 따라 배치되며, 그 결과 검색 텀들과 매칭하는 가장 최근의 메시지들이 우선적으로 리턴된다. 예를 들어, 인덱스(1710)에 있는 각각의 텀과 대응하는 메시지들의 메시지 ID 리스트는 가장 최근의 타임스탬프들을 가지는 메시지 ID들이 더 오래된 타임스탬프들을 가지는 메시지 ID들보다 리스트에 먼저 기재되도록 배치된다. 다른 실시예들에서, 각각의 메시지와 관련된 날짜/시간 정보는 각각의 메시지 수신 날짜 및/또는 시간을 표시하지만, 상기 날짜/시간 정보는 메시지 ID들에 내장되지 않는다. 이러한 실시예들에서, 인덱스(1710)에 있는 엔트리들은 그럼에도 불구하고 가장 최근의 날짜/시간 값들을 가지는 메시지들의 메시지 ID들이 더 오래된 날짜/시간 값들을 가지는 메시지 ID들보다 리스트에 먼저 기재되도록 배치된다.
메시지와 연관된 임의의 속성들(1716)은 또한 인덱싱된다(즉, 인덱스(1710)에 포함된다). 속성들(1716)은 풀 텍스트 및 속성 인덱스(1710)에 추가되며, 그 결과 특정 속성에 대한 질문은 상기 특정 속성과 매칭하는 메시지들을 리턴시킨다. 라벨 또는 속성이 대화에 추가되거나 또는 대화에서 삭제되면, 인덱스(1710)는 그에 따라 업데이트된다. 인덱스는 각각의 정의된 라벨 또는 속성을 각각의 라벨 또는 속성을 가지는 모든 메시지들(또는, 다른 실시예들에서는 대화들)로 매핑하는 엔트리들 또는 데이터를 포함한다. 그리하여, 라벨이 대화에 추가되면, 상기 라벨을 대화에 있는 모든 메시지들과 매핑하기 위해 데이터가 인덱스(1710)에 추가된다. 라벨이 대화로부터 삭제되면, 상기 라벨을 대화에 있는 메시지들과 매핑하는 인덱스에 있는 데이터는 삭제되거나 또는 무효가 된다. 몇몇 실시예들에서, 대화와 관련된 각각의 라벨 또는 속성은 또한 대화 데이터베이스(1808)(도 18)에 있는 하나 이상의 엔트리들에 추가된다.
풀 텍스트 및 속성 인덱스(1710)가 질문 텀들을 개별적인 메시지 ID들(1712)과 매핑하도록 구성될 수 있음에도 불구하고, 다른 데이터 구조들이 메시지 ID들을 대화 식별자들로 매칭하기 위해 제공될 수 있다. 이러한 데이터 구조 세트의 논리적 다이어그램은 도 18에 도시되어 있다. 당업자는 다수의 상이한 데이터 구조들이 검색 질문 텀들을 대화들 또는 대화 식별자들과 매핑하기 위해 사용될 수 있다는 것을 이해하도록 한다.
이전에 설명된 바와 같이, 사용자 데이터베이스(1702)는 특정 사용자와 관련된 풀 텍스트 및 속성 인덱스(1710)를 참조하는 사용자 ID(1708)를 포함할 수 있다. 도 18과 관련하여, 특정한 메시지 ID(1712)는 메시지 대 대화 맵(1804)에 있는 특정한 대화 ID(1802)와 연관될 수 있다. 메시지 대 대화 맵(1804)에 있는 각각의 엔트리는 메시지 ID(1712)를 대화 ID(1802)와 연관시킨다(즉, 매핑시킨다). 몇몇 실시예들에서, 대화 ID(1804)는 n-비트의 수이다. 이러한 수는 메시지 ID(1712)에 의해 식별되는 메시지가 속하는 특정한 대화를 고유하게 식별한다. 이러한 실시예들에서, 사용자 메일 계정에 있는 모든 대화는 구별되는 대화 ID를 가진다.
특정한 대화와 연관된 다른 메시지들을 식별하기 위해, 사용자 대화 데이터베이스(1808)가 사용될 수 있다. 이러한 데이터베이스는, 예컨대 대화에 포함된 메시지들의 나머지 부분을 식별할 때 이용될 수 있으며, 여기서 하나 이상의 메시지들은 특정한 검색 질문과 매칭된다. 사용자 대화 데이터베이스는 다수의 대화 엔트리들(1810)을 포함한다. 각각의 대화 엔트리(1810)는 대화와 연관된 메시지들의 리스트(또는 메시지들을 표현하는 다른 데이터 구조)를 저장한다. 예를 들어, 대화 엔트리(1812)는 메시지 엔트리들(1816)의 링크 리스트를 포함할 수 있으며, 각각의 메시지 엔트리는 대화에 있는 특정한 메시지에 대응한다. 링크 리스트는, 예컨대 대화에 있는 메시지들과 연관된 날짜/시간 값들에 의해 배열될 수 있다. 예시적인 메시지 엔트리(1816)는 특정한 메시지의 메시지 ID(1712), 헤더(1818) 및 라벨들(1820)을 포함한다. 헤더(1818)는 이전에 설명된 헤더 정보(1612)의 전부 또는 일부를 포함할 수 있다. 라벨들(1820)은 메시지와 연관된 특정 속성들을 식별하는 정보를 포함할 수 있다. 특정한 엔트리(1822)의 메시지 ID(4)(1712)는 메시지 데이터베이스(1602)에 있는 특정한 메시지와 연관될 수 있다. 몇몇 실시예들에서, 메시지 엔트리(1816)는 대응하는 메시지 바디의 컨텐트를 포함하지 않는다.
몇몇 실시예들에서, 인덱스(1708)에 있는 정보와 대화 엔트리(1812)에 있는 정보는 도 11의 스테이지(1106)에서 이루어지는 바와 같이, 메시지 데이터베이스(1602)를 액세스하지 않고 새로운 메시지와 특정한 대화를 연관시키는 것을 보조하기 위해 이용될 수 있다. 메시지들이 새롭게 도착한 메시지에 대한 가능한 매칭들로서 식별되면(도 12의 스테이지(1204)), 최적 매칭 메시지와 최적 매칭 대화의 결정은 매칭 메시지들의 헤더들(1818)을 이용하여 이루어질 수 있다. 예를 들어, 헤더(1818)는 (정규화된 형태로) 새롭게 도착한 메시지의 정규화된 서브젝트와 비교될 수 있는 메시지에 대한 서브젝트 정보를 포함할 수 있다. 헤더(1818)에 있는 다른 정보는 또한 처리되는 인입 메시지의 헤더 정보와 비교될 수 있다. 대화가 매칭된 것으로 식별되면, 식별된 대화에 대한 메시지 엔트리들의 라벨들(1820)에서 식별된 속성들은 메시지 데이터베이스로부터 임의의 메시지들을 검색해야할 필요없이 인입 메시지들에 적용될 수 있다(도 13의 스테이지(1307)).
대화 엔트리(1812)는 메시지가 대화로부터 삭제되면 대화에 있는 다른 메시지들에 영향을 주지않고 업데이트될 수 있다. 이러한 경우에, 삭제될 메시지와 대응하는 (대화 엔트리(1812)에 있는) 메시지 엔트리(1816)는 메시지 엔트리들의 링크 리스트에서 삭제된다. 그리하여, 상기 메시지는 더 이상 상기 대화와 관련되지 않을 것이다. 몇몇 실시예들에서, 메시지 대 대화 맵(1804)은 또한 삭제를 설명하기 위해 수정된다.
이전에 설명된 바와 같이, 몇몇 예들에서, 메시지 삭제를 위해 예컨대 특정 속성을 이용하여 대화로부터 메시지를 삭제하는 것이 아니라, 삭제할 메시지를 표시하는 것이 바람직할 수 있다. 메시지가 대화로부터 삭제될 수 있는 조건이 되면, 메시지는 위에서 설명된 바와 같이 처리될 수 있다. 메시지 대 대화 맵(1802)과 대화 엔트리(1812)로부터 메시지를 삭제하도록 허용할 수 있는 조건은 메시지가 삭제를 위해 마킹되고 특정 시간이 경과한 경우, 사용자에 의해 동작 또는 다른 트리거링 이벤트들을 포함할 수 있다.
대화들은 또한 사용자의 메일 계정으로부터 삭제되는 것이 아니라 삭제를 위해 표시될 수 있다. 대화가 사용자의 메일 계정으로부터 영구적으로 삭제될 경우에, 대화에 대한 메시지 대 대화 맵(1802)은 삭제될 수 있다. 또한, 대응하는 대화 엔트리(1812)는 대화 데이터베이스(1808)로부터 삭제될 수 있으며, 대화의 메시지들에 대한 인덱스 엔트리들은 인덱스(1708)로부터 삭제될 수 있다.
위에서 나타난 바와 같이, 다른 실시예에서 풀 텍스트 메시지 인덱스(1708)는 질문에 대한 응답으로 대화 식별자 리스트를 리턴시킨다. 이러한 실시예에서, 메시지 대 대화 맵(1802)은 생략될 수 있다. 대신에, 대화 데이터베이스는 질문에 응답하여 대화들의 프로세싱을 완료하기 위해 필요한 메인 매핑들을 제공한다.
도 19와 관련하여, 위에서 설명된 방법들을 구현하는 대화 서버(102)의 일례는 하나 이상의 프로세싱 유니트들(CPU's)(1902), 하나 이상의 네트워크 또는 다른 통신 인터페이스들(1904), 메모리(1006) 및 이러한 컴포넌트들을 상호접속하기 위한 하나 이상의 통신 버스들(1908)을 포함한다. 대화 서버(102)는 대안적으로 디스플레이 장치 및 키보드를 포함하는 사용자 인터페이스를 포함할 수 있다. 메모리(1906)는 고속 랜덤 액세스 메모리를 포함할 수 있으며 또한 하나 이상의 자기 또는 광학 저장 디스크들과 같은 비-휘발성 메모리를 포함할 수 있다. 메모리(1906)는 CPU(1902)로부터 떨어져서 위치하는 대용량 저장 매체를 포함할 수 있다. 메모리(1906)는 아래와 같은 요소들을 저장할 수 있다:
다양한 기본 시스템 서비스들을 처리하고 하드웨어 의존 작업들을 수행하기 위한 절차들을 포함하는 운영 시스템(1916);
인터넷, 다른 광역 네트워크, 로컬 영역 네트워크, 메트로폴리탄 영역 네트워크 등과 같은 하나 이상의 통신 네트워크 인터페이스들(1904)(유선 또는 무선)을 통해 대화 서버(102)를 다른 컴퓨터들과 연결시키기 위해 사용되는 네트워크 통신 모듈(또는 명령들)(1918); 및
이전에 설명된 바와 같이, 대화 어시스턴트(110)로부터의 요청들에 응답하고 대화 어시스턴트(110)에 응답들을 제공하는 대화 엔진(1002).
대화 엔진(1002)은 다음과 같은 요소들을 포함할 수 있다:
이전에 설명된 바와 같이, 새로운 메시지들을 처리하기 위한 새로운 메시지 처리 모듈(1920);
이전에 설명된 바와 같이, 사용자의 메시지들을 검색하기 위한 검색 모듈(1922) - 검색 모듈(1922)은 사용자에 의해 제공되는 입력들로부터의 검색 요청들을 처리하기 위한 모듈(1924)과 대화 어시스턴트(110)에 의해 개시되는 시스템 요청 검색들을 처리하기 위한 모듈(1926)을 포함함;
대화 어시스턴트(110)가 대화 서버(102)로부터 자신에게 제공되는 정보를 처리하도록 허용하는 정보를 대화 어시스턴트(110)로 제공하는 대화 어시스턴트 로더(1928). 몇몇 실시예들에서, 클라이언트 컴퓨터가 이메일 메시지들을 처리하기 위해 처음에 대화 서버(102)에 접속하는 경우에, 대화 어시스턴트 로더(1928)는 대화 어시스턴트(110)를 클라이언트 컴퓨터가 로딩하도록 요청받는다. 몇몇 실시예들에서, 대화 어시스턴트 로더(1928)는 이메일 세션이 개시될 때마다 클라이언트 컴퓨터 상에 대화 어시스턴트(110)를 로딩하며, 다른 실시예들에서는 대화 어시스턴트(110)가 하나의 이메일 세션으로부터 다른 이메일 세션으로 이동할 때 클라이언트 컴퓨터에 의해 유지된다;
이전에 설명된 바와 같이, 대화 어시스턴트(110)로 제공되도록 포매팅 정보를 제공하는 응답 포매팅 모듈(1930). 응답 포매팅 모듈(1930)은 이전에 설명된 바와 같이 미리 정의된 기준에 따라 대화들을 배열하는 대화 배열 모듈(1932), 리턴될 수 있는 전체 개수에서 대화 어시스턴트(110)로 리턴될 미리 결정된 수의 대화들을 선택하는 대화 선택 모듈(1934), 이전에 설명된 바와 같이 "읽혀지지 않은(Unread)" 메시지들(즉, 읽은 것으로 보여지거나 마킹되지 않은 메시지들)로 표시된 메시지들을 식별하기 위한 Unread/Not Viewed 메시지들의 전송자 식별(1936), 이전에 설명된 바와 같이 사용자의 식별 정보를 자기-참조 정보와 대체하는 것에 대한 정보를 제공하는 자기-참조 모듈(1938), 이전에 설명된 바와 같이 대화에 새롭게 추가된 수신자들에 대한 정보를 식별하고 제공하는 새로운 수신자 모듈(1940), 이전에 설명된 바와 같이 더 이상 대화의 일부가 아닌 수신자들에 대한 정보를 식별하고 제공하는 수신자 삭제 모듈(1942), 이전에 설명된 바와 같이 매칭 메시지의 특정 텍스트에 대한 정보를 획득하고 제공하는 스니펫(snippet) 모듈(1944), 이전에 설명된 바와 같이 대화 어시스턴트(110)로 전송하기 위한 메시지의 풀 텍스트를 검색하는 풀 텍스트 모듈(1946) 및 스펠 검사기(1014)로부터 리턴된 정보를 포매팅하기 위한 스펠 체크 포맷 모듈(1948)을 포함한다;
이전에 설명된 바와 같이 대화들과 메시지들의 속성들을 수정하기 위한 속성 수정 모듈(1950);
이전에 설명된 바와 같이 삭제할 메시지 또는 대화를 표시하고 그 다음에 이들을 삭제하는 삭제/제거 모듈(1952);
이전에 설명된 바와 같이 필터들을 생성하고 모니터링하고 실행하기 위한 필터 모듈(1954); 및
사용자가 메시지를 구성하여 결과 메시지를 SMTP 게이트웨이(1016)로 제공하도록 허용하는 구성/전송 모듈(1956).
스펠 검사 처리 및 디스플레이 방법에 대한 예시적인 실시예와 같은 위에서 설명된 다양한 특징들은 전자 메시징 또는 이메일로 한정되지 않는다는 것을 이해하도록 한다. 예를 들어, 위에서 설명된 스펠 검사 방법 또는 사용자 인터페이스는 다른 실시예들에서 다양한 타입의 문서들(예를 들어, 워드 프로세싱 문서들)에 적용되고 이들 문서들과 관련하여 구현될 수 있다.
설명의 목적으로, 전술의 설명은 특정한 실시예들과 관련하여 서술되었다. 그러나, 위에서 설명된 논의들은 개시된 정확한 형태로 본 발명을 한정하기 위한 의도가 아니다. 전술한 설명들과 관련하여 다양한 수정들과 변형들이 가능하다. 상기 실시예들은 본 발명의 원리들과 실제적인 애플리케이션들을 가장 효과적으로 설명하기 위해 선택되고 설명된 것이며, 그리하여 당업자는 특정 사용자에게 적합하도록 다양한 변형들을 가지는 본 발명 및 다양한 실시예들을 효과적으로 이용할 수 있을 것이다.
Claims (18)
- 메시지들을 관리(managing)하는 방법으로서,
상기 방법은 하나 이상의 프로세서들 및 상기 하나 이상의 프로세서들에 의해 실행되는 프로그램들을 저장하는 메모리를 갖춘 서버 시스템에서 수행되며, 상기 방법은,
복수의 메시지들을 포함하는 대화를 저장하는 단계 ? 상기 대화는 제 1 라벨과 연관되며 상기 복수의 메시지들의 메시지는 제 2 라벨과 연관되며, 상기 제 1 라벨은 개별적인 대화들과 연관될 수 있는 라벨이고, 상기 제 2 라벨은 개별적인 메시지들과 연관될 수 있는 라벨임 ?;
원격적으로(remotely) 위치된 클라이언트 시스템으로부터 대화들에 대한 요청을 수신하는 단계; 및
상기 대화들에 대한 요청에 응답하여,
상기 대화들에 대한 요청이 상기 제 1 라벨과 연관된 대화들에 대한 요청에 대응할 때, 대화들의 제 1 리스트를 생성하여 상기 클라이언트 시스템으로 전송하는 단계 ? 상기 제 1 리스트에 있는 모든 대화들은 상기 제 1 라벨과 연관되도록 요구되며, 상기 제 1 리스트에 있는 대화들 중 하나 이상의 대화들 각각은 복수의 메시지들을 포함함 ?; 및
상기 대화들에 대한 요청이 상기 제 2 라벨과 연관된 메시지들을 포함하는 대화들에 대한 요청에 대응할 때, 대화들의 제 2 리스트를 생성하여 상기 클라이언트 시스템으로 전송하는 단계 ? 상기 제 2 리스트에 있는 모든 대화들은 상기 제 2 라벨이 할당되었던 적어도 하나의 메시지를 포함하도록 요구되며, 상기 제 2 리스트에 있는 대화들 중 하나 이상의 대화들 각각은 복수의 메시지들을 포함함 ?
를 포함하는,
메시지들을 관리하는 방법. - 제 1 항에 있어서,
상기 제 1 라벨은 사용자 정의 라벨인,
메시지들을 관리하는 방법. - 제 1 항 또는 제 2 항에 있어서,
상기 제 2 라벨은 읽지않음(un-read), 인박스(inbox), 드래프트(draft), 스팸(spam), 및 트래시(trash)로 이루어진 그룹에서 선택되는 시스템 정의 속성(attribute)인,
메시지들을 관리하는 방법. - 제 1 항 또는 제 2 항에 있어서,
상기 제 2 라벨은 메시지 중요도를 표시하는 별표 라벨을 포함하는,
메시지들을 관리하는 방법. - 제 1 항에 있어서,
상기 대화들의 제 1 리스트를 생성하여 상기 클라이언트 시스템으로 전송하는 단계는 상기 제 1 라벨을 포함하는 상기 대화들의 제 1 리스트를 디스플레이하기 위한 포맷팅 단계를 포함하는,
메시지들을 관리하는 방법. - 제 1 항, 제 2 항, 및 제 5 항 중 어느 한 항에 있어서,
상기 복수의 메시지들의 각각의 메시지에는 "전체 메일(all mail)"의 시스템 정의 제 2 라벨이 자동으로 할당되는,
메시지들을 관리하는 방법. - 서버 시스템으로서,
하나 이상의 프로세서들;
메모리; 및
하나 이상의 프로그램들 ? 상기 하나 이상의 프로그램들은 상기 메모리에 저장되며 상기 하나 이상의 프로세서들에 의해 실행되도록 구성됨 ?
을 포함하며, 상기 하나 이상의 프로그램들은,
복수의 메시지들을 포함하는 대화를 저장하기 위한 명령들 ? 상기 대화는 제 1 라벨과 연관되며 상기 복수의 메시지들의 메시지는 제 2 라벨과 연관되며, 상기 제 1 라벨은 개별적인 대화들과 연관될 수 있는 라벨이고, 상기 제 2 라벨은 개별적인 메시지들과 연관될 수 있는 라벨임 ?;
원격적으로(remotely) 위치된 클라이언트 시스템으로부터 대화들에 대한 요청을 수신하기 위한 명령들; 및
상기 대화들에 대한 요청에 응답하여,
상기 대화들에 대한 요청이 상기 제 1 라벨과 연관된 대화들에 대한 요청에 대응할 때, 대화들의 제 1 리스트를 생성하여 상기 클라이언트 시스템으로 전송하기 위한 명령들 ? 상기 제 1 리스트에 있는 모든 대화들은 상기 제 1 라벨과 연관되도록 요구되며, 상기 제 1 리스트에 있는 대화들 중 하나 이상의 대화들 각각은 복수의 메시지들을 포함함 ?; 및
상기 대화들에 대한 요청이 상기 제 2 라벨과 연관된 메시지들을 포함하는 대화들에 대한 요청에 대응할 때, 대화들의 제 2 리스트를 생성하여 상기 클라이언트 시스템으로 전송하기 위한 명령들 ? 상기 제 2 리스트에 있는 모든 대화들은 상기 제 2 라벨이 할당되었던 적어도 하나의 메시지를 포함하도록 요구되며, 상기 제 2 리스트에 있는 대화들 중 하나 이상의 대화들 각각은 복수의 메시지들을 포함함 ?
을 포함하는,
서버 시스템. - 제 7 항에 있어서,
상기 제 1 라벨은 사용자 정의 라벨인,
서버 시스템. - 제 7 항 또는 제 8 항에 있어서,
상기 제 2 라벨은 읽지않음(un-read), 인박스(inbox), 드래프트(draft), 스팸(spam), 및 트래시(trash)로 이루어진 그룹에서 선택되는 시스템 정의 속성(attribute)인,
서버 시스템. - 제 7 항 또는 제 8 항에 있어서,
상기 제 2 라벨은 메시지 중요도를 표시하는 별표 라벨을 포함하는,
서버 시스템. - 제 7 항에 있어서,
상기 대화들의 제 1 리스트를 생성하여 상기 클라이언트 시스템으로 전송하는 것은 상기 제 1 리스트의 개별적인 대화에 대하여 상기 제 1 라벨을 포함하는 상기 대화들의 제 1 리스트를 디스플레이하기 위한 포맷팅을 포함하는,
서버 시스템. - 제 7 항, 제 8 항, 및 제 11 항 중 어느 한 항에 있어서,
상기 복수의 메시지들의 각각의 메시지에는 "전체 메일(all mail)"의 시스템 정의 제 2 라벨이 자동으로 할당되는,
서버 시스템. - 컴퓨터에 의한 실행을 위해 구성된 하나 이상의 프로그램들을 저장하는 컴퓨터 판독가능 저장 매체로서,
상기 하나 이상의 프로그램들은,
복수의 메시지들을 포함하는 대화를 저장하기 위한 명령들 ? 상기 대화는 제 1 라벨과 연관되며 상기 복수의 메시지들의 메시지는 제 2 라벨과 연관되며, 상기 제 1 라벨은 개별적인 대화들과 연관될 수 있는 라벨이고, 상기 제 2 라벨은 개별적인 메시지들과 연관될 수 있는 라벨임 ?;
원격적으로(remotely) 위치된 클라이언트 시스템으로부터 대화들에 대한 요청을 수신하기 위한 명령들; 및
상기 대화들에 대한 요청에 응답하여,
상기 대화들에 대한 요청이 상기 제 1 라벨과 연관된 대화들에 대한 요청에 대응할 때, 대화들의 제 1 리스트를 생성하여 상기 클라이언트 시스템으로 전송하기 위한 명령들 ? 상기 제 1 리스트에 있는 모든 대화들은 상기 제 1 라벨과 연관되도록 요구되며, 상기 제 1 리스트에 있는 대화들 중 하나 이상의 대화들 각각은 복수의 메시지들을 포함함 ?; 및
상기 대화들에 대한 요청이 상기 제 2 라벨과 연관된 메시지들을 포함하는 대화들에 대한 요청에 대응할 때, 대화들의 제 2 리스트를 생성하여 상기 클라이언트 시스템으로 전송하기 위한 명령들 ? 상기 제 2 리스트에 있는 모든 대화들은 상기 제 2 라벨이 할당되었던 적어도 하나의 메시지를 포함하도록 요구되며, 상기 제 2 리스트에 있는 대화들 중 하나 이상의 대화들 각각은 복수의 메시지들을 포함함 ?
을 포함하는,
컴퓨터 판독가능 저장 매체. - 제 13 항에 있어서,
상기 제 1 라벨은 사용자 정의 라벨인,
컴퓨터 판독가능 저장 매체. - 제 13 항 또는 제 14 항에 있어서,
상기 제 2 라벨은 읽지않음(un-read), 인박스(inbox), 드래프트(draft), 스팸(spam), 및 트래시(trash)로 이루어진 그룹에서 선택되는 시스템 정의 속성(attribute)인,
컴퓨터 판독가능 저장 매체. - 제 13 항 또는 제 14 항에 있어서,
상기 제 2 라벨은 메시지 중요도를 표시하는 별표 라벨을 포함하는,
컴퓨터 판독가능 저장 매체. - 제 13 항에 있어서,
상기 대화들의 제 1 리스트를 생성하여 상기 클라이언트 시스템으로 전송하는 것은 상기 제 1 리스트의 개별적인 대화에 대하여 상기 제 1 라벨을 포함하는 상기 대화들의 제 1 리스트를 디스플레이하기 위한 포맷팅을 포함하는,
컴퓨터 판독가능 저장 매체. - 제 13 항, 제 14 항, 및 제 17 항 중 어느 한 항에 있어서,
상기 복수의 메시지들의 각각의 메시지에는 "전체 메일(all mail)"의 시스템 정의 제 2 라벨이 자동으로 할당되는,
컴퓨터 판독가능 저장 매체.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/816,428 | 2004-03-31 | ||
US10/816,428 US7912904B2 (en) | 2004-03-31 | 2004-03-31 | Email system with conversation-centric user interface |
US10/914,035 US9819624B2 (en) | 2004-03-31 | 2004-08-06 | Displaying conversations in a conversation-based email system |
US10/914,035 | 2004-08-06 | ||
PCT/US2005/010137 WO2005098701A2 (en) | 2004-03-31 | 2005-03-25 | Displaying conversations in a conversation-based email system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20067022840A Division KR101177147B1 (ko) | 2004-03-31 | 2005-03-25 | 대화-기반 이메일 시스템에서 대화들을 디스플레이하는방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110096091A KR20110096091A (ko) | 2011-08-26 |
KR101173815B1 true KR101173815B1 (ko) | 2012-08-16 |
Family
ID=34963993
Family Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20067022840A KR101177147B1 (ko) | 2004-03-31 | 2005-03-25 | 대화-기반 이메일 시스템에서 대화들을 디스플레이하는방법 및 장치 |
KR1020117017096A KR101179412B1 (ko) | 2004-03-31 | 2005-03-25 | 대화-기반 이메일 시스템에서의 대화들 검색 |
KR1020117017094A KR101173813B1 (ko) | 2004-03-31 | 2005-03-25 | 대화에서 전송자들의 리스트를 갖는 대화-기반 이메일 |
KR1020117017095A KR101171680B1 (ko) | 2004-03-31 | 2005-03-25 | 대화-기반 이메일 시스템에서 메시지들의 검색 |
KR1020117017102A KR101173812B1 (ko) | 2004-03-31 | 2005-03-25 | 대화-기반 이메일 시스템에서 확장 메시지들 디스플레이 |
KR1020117017098A KR101173815B1 (ko) | 2004-03-31 | 2005-03-25 | 대화-기반 이메일 시스템에서 대화들 및 메시지들 라벨링 |
Family Applications Before (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20067022840A KR101177147B1 (ko) | 2004-03-31 | 2005-03-25 | 대화-기반 이메일 시스템에서 대화들을 디스플레이하는방법 및 장치 |
KR1020117017096A KR101179412B1 (ko) | 2004-03-31 | 2005-03-25 | 대화-기반 이메일 시스템에서의 대화들 검색 |
KR1020117017094A KR101173813B1 (ko) | 2004-03-31 | 2005-03-25 | 대화에서 전송자들의 리스트를 갖는 대화-기반 이메일 |
KR1020117017095A KR101171680B1 (ko) | 2004-03-31 | 2005-03-25 | 대화-기반 이메일 시스템에서 메시지들의 검색 |
KR1020117017102A KR101173812B1 (ko) | 2004-03-31 | 2005-03-25 | 대화-기반 이메일 시스템에서 확장 메시지들 디스플레이 |
Country Status (9)
Country | Link |
---|---|
US (7) | US9819624B2 (ko) |
EP (4) | EP2575095A1 (ko) |
JP (8) | JP4956420B2 (ko) |
KR (6) | KR101177147B1 (ko) |
CN (4) | CN102521734B (ko) |
AU (7) | AU2005229862B2 (ko) |
BR (1) | BRPI0509500A (ko) |
CA (1) | CA2561580C (ko) |
WO (1) | WO2005098701A2 (ko) |
Families Citing this family (141)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9715678B2 (en) | 2003-06-26 | 2017-07-25 | Microsoft Technology Licensing, Llc | Side-by-side shared calendars |
US7707255B2 (en) | 2003-07-01 | 2010-04-27 | Microsoft Corporation | Automatic grouping of electronic mail |
US8799808B2 (en) | 2003-07-01 | 2014-08-05 | Microsoft Corporation | Adaptive multi-line view user interface |
US9015621B2 (en) | 2004-08-16 | 2015-04-21 | Microsoft Technology Licensing, Llc | Command user interface for displaying multiple sections of software functionality controls |
US7703036B2 (en) | 2004-08-16 | 2010-04-20 | Microsoft Corporation | User interface for displaying selectable software functionality controls that are relevant to a selected object |
US8255828B2 (en) | 2004-08-16 | 2012-08-28 | Microsoft Corporation | Command user interface for displaying selectable software functionality controls |
US8146016B2 (en) | 2004-08-16 | 2012-03-27 | Microsoft Corporation | User interface for displaying a gallery of formatting options applicable to a selected object |
US7895531B2 (en) | 2004-08-16 | 2011-02-22 | Microsoft Corporation | Floating command object |
US7596594B2 (en) * | 2004-09-02 | 2009-09-29 | Yahoo! Inc. | System and method for displaying and acting upon email conversations across folders |
US7747966B2 (en) | 2004-09-30 | 2010-06-29 | Microsoft Corporation | User interface for providing task management and calendar information |
US8103723B1 (en) * | 2004-10-07 | 2012-01-24 | Google Inc. | Message server that retains messages deleted by one client application for access by another client application |
US20060095506A1 (en) * | 2004-10-29 | 2006-05-04 | Research In Motion Limited | Extended user interface for email composition |
US7665031B2 (en) * | 2004-12-08 | 2010-02-16 | Microsoft Corporation | Method and system of taskbar button interfaces |
US8577967B1 (en) * | 2005-06-30 | 2013-11-05 | Google Inc. | Method and system for managing real-time communications in an email inbox |
US8689137B2 (en) | 2005-09-07 | 2014-04-01 | Microsoft Corporation | Command user interface for displaying selectable functionality controls in a database application |
US9542667B2 (en) | 2005-09-09 | 2017-01-10 | Microsoft Technology Licensing, Llc | Navigating messages within a thread |
US8627222B2 (en) | 2005-09-12 | 2014-01-07 | Microsoft Corporation | Expanded search and find user interface |
US8601004B1 (en) * | 2005-12-06 | 2013-12-03 | Google Inc. | System and method for targeting information items based on popularities of the information items |
US20070143428A1 (en) * | 2005-12-21 | 2007-06-21 | Shruti Kumar | Method and system for displaying indications of messages from important persons and from new persons at a high display priority in a gathered threads view of an electronic mail ("email") user interface |
US7844603B2 (en) * | 2006-02-17 | 2010-11-30 | Google Inc. | Sharing user distributed search results |
US8122019B2 (en) | 2006-02-17 | 2012-02-21 | Google Inc. | Sharing user distributed search results |
US8862572B2 (en) * | 2006-02-17 | 2014-10-14 | Google Inc. | Sharing user distributed search results |
US9727989B2 (en) | 2006-06-01 | 2017-08-08 | Microsoft Technology Licensing, Llc | Modifying and formatting a chart using pictorially provided chart elements |
US8605090B2 (en) | 2006-06-01 | 2013-12-10 | Microsoft Corporation | Modifying and formatting a chart using pictorially provided chart elements |
US9292170B2 (en) * | 2006-12-07 | 2016-03-22 | International Business Machines Corporation | Unified presentation of scattered message data |
US7921176B2 (en) * | 2007-01-03 | 2011-04-05 | Madnani Rajkumar R | Mechanism for generating a composite email |
CN101247357B (zh) * | 2007-02-16 | 2011-06-15 | 国际商业机器公司 | 在电子邮件客户端改进电子邮件讨论效率的方法和系统 |
US11095583B2 (en) | 2007-06-28 | 2021-08-17 | Voxer Ip Llc | Real-time messaging method and apparatus |
US8180029B2 (en) | 2007-06-28 | 2012-05-15 | Voxer Ip Llc | Telecommunication and multimedia management method and apparatus |
US9954996B2 (en) * | 2007-06-28 | 2018-04-24 | Apple Inc. | Portable electronic device with conversation management for incoming instant messages |
US8762880B2 (en) | 2007-06-29 | 2014-06-24 | Microsoft Corporation | Exposing non-authoring features through document status information in an out-space user interface |
US8484578B2 (en) | 2007-06-29 | 2013-07-09 | Microsoft Corporation | Communication between a document editor in-space user interface and a document editor out-space user interface |
US8201103B2 (en) | 2007-06-29 | 2012-06-12 | Microsoft Corporation | Accessing an out-space user interface for a document editor program |
FR2918528B1 (fr) | 2007-07-03 | 2010-11-19 | Calinda Software | Procede de gestion d'un processus collaboratif au moyen de messages electroniques |
US8024412B2 (en) * | 2008-02-15 | 2011-09-20 | Microsoft Corporation | User interface reading email conversations |
CN101247364B (zh) * | 2008-03-31 | 2012-01-18 | 腾讯科技(深圳)有限公司 | 会话消息管理系统和管理方法 |
US9588781B2 (en) | 2008-03-31 | 2017-03-07 | Microsoft Technology Licensing, Llc | Associating command surfaces with multiple active components |
US9665850B2 (en) | 2008-06-20 | 2017-05-30 | Microsoft Technology Licensing, Llc | Synchronized conversation-centric message list and message reading pane |
US8402096B2 (en) * | 2008-06-24 | 2013-03-19 | Microsoft Corporation | Automatic conversation techniques |
FI20086224A (fi) * | 2008-12-22 | 2010-06-23 | Elisa Oyj | Menetelmä tietoliikennejärjestelmässä sekä tietoliikennejärjestelmä |
US8904292B2 (en) * | 2008-12-31 | 2014-12-02 | Motorola Mobility Llc | Method and system for processing electronic mail |
US9046983B2 (en) | 2009-05-12 | 2015-06-02 | Microsoft Technology Licensing, Llc | Hierarchically-organized control galleries |
GB0922608D0 (en) | 2009-12-23 | 2010-02-10 | Vratskides Alexios | Message optimization |
US9838349B2 (en) | 2010-03-08 | 2017-12-05 | Microsoft Technology Licensing, Llc | Zone classification of electronic mail messages |
KR101704531B1 (ko) * | 2010-04-22 | 2017-02-08 | 삼성전자주식회사 | 휴대 단말기의 텍스트 정보 표시 방법 및 장치 |
US8825776B1 (en) * | 2010-05-18 | 2014-09-02 | Google Inc. | Generating a hosted conversation in accordance with predefined parameters |
US9721035B2 (en) | 2010-06-30 | 2017-08-01 | Leaf Group Ltd. | Systems and methods for recommended content platform |
CN102387092B (zh) * | 2010-09-06 | 2014-09-03 | 腾讯科技(深圳)有限公司 | 管理消息的方法和装置 |
US8930825B2 (en) * | 2010-09-09 | 2015-01-06 | International Business Machines Corporation | Graphically indicating relevancy of electronic messages |
US8682991B2 (en) * | 2010-10-05 | 2014-03-25 | VNP Software, Inc. | Electronic messaging systems |
US9338124B2 (en) * | 2010-10-05 | 2016-05-10 | VNP Software, Inc. | Electronic messaging systems |
US9734245B2 (en) | 2010-11-18 | 2017-08-15 | Leaf Group Ltd. | System and method for automated responses to information needs on websites |
US8743151B1 (en) * | 2011-03-31 | 2014-06-03 | Google Inc. | Snapping message header |
US8972240B2 (en) * | 2011-05-19 | 2015-03-03 | Microsoft Corporation | User-modifiable word lattice display for editing documents and search queries |
CN103078781A (zh) * | 2011-10-25 | 2013-05-01 | 国际商业机器公司 | 用于即时消息系统的方法和即时消息系统 |
US9268769B1 (en) * | 2011-12-20 | 2016-02-23 | Persado Intellectual Property Limited | System, method, and computer program for identifying message content to send to users based on user language characteristics |
KR101332811B1 (ko) | 2012-02-24 | 2013-11-27 | 주식회사 팬택 | 메시지 숨김 기능을 갖는 단말과 그 메시지 숨김 및 복원 방법 |
CN102571637A (zh) * | 2012-03-16 | 2012-07-11 | 腾讯科技(深圳)有限公司 | 消息处理方法和装置 |
US10395270B2 (en) | 2012-05-17 | 2019-08-27 | Persado Intellectual Property Limited | System and method for recommending a grammar for a message campaign used by a message optimization system |
WO2013172742A1 (ru) * | 2012-05-18 | 2013-11-21 | Ikonomov Artashes Valeryevich | Система коммуникационного взаимодействия |
JP5981823B2 (ja) * | 2012-09-28 | 2016-08-31 | 株式会社コナミデジタルエンタテインメント | メッセージ表示システム、制御方法、およびプログラム |
US10031968B2 (en) * | 2012-10-11 | 2018-07-24 | Veveo, Inc. | Method for adaptive conversation state management with filtering operators applied dynamically as part of a conversational interface |
WO2014056516A1 (en) * | 2012-10-12 | 2014-04-17 | Unify Gmbh & Co. Kg | Method and apparatus for displaying e-mail messages |
US9459752B2 (en) | 2012-12-14 | 2016-10-04 | Microsoft Technology Licensing, Llc | Browsing electronic messages displayed as tiles |
US9026600B2 (en) | 2013-01-04 | 2015-05-05 | International Business Machines Corporation | System and method for unfiltering filtered status messages |
KR102110786B1 (ko) | 2013-03-13 | 2020-05-14 | 삼성전자 주식회사 | 휴대 단말기의 대화 메시지 관리 방법 및 장치 |
AU2014229049A1 (en) * | 2013-03-15 | 2015-10-01 | Intelesystems | System and method for managing business partners and associated assets in favor of a plurality of enterprises |
US9304665B2 (en) * | 2013-04-05 | 2016-04-05 | Yahoo! Inc. | Method and apparatus for facilitating message selection and organization |
WO2014167702A1 (ja) * | 2013-04-12 | 2014-10-16 | 株式会社日立製作所 | 計算機、データ処理方法、及び、非一時的な記録媒体 |
US10813584B2 (en) * | 2013-05-21 | 2020-10-27 | Happify, Inc. | Assessing adherence fidelity to behavioral interventions using interactivity and natural language processing |
KR20150000273A (ko) * | 2013-06-24 | 2015-01-02 | 삼성전자주식회사 | 단말 장치 및 제어 방법 |
US9552089B2 (en) | 2013-08-07 | 2017-01-24 | Synaptics Incorporated | Capacitive sensing using a matrix electrode pattern |
CN104376292A (zh) * | 2013-08-13 | 2015-02-25 | 海尔集团公司 | 家电产品及生产方法、家电产品的信息系统及使用方法 |
CN103442146B (zh) * | 2013-08-30 | 2016-08-24 | 宇龙计算机通信科技(深圳)有限公司 | 一种移动终端及其显示与联系人的会话界面的方法及系统 |
CN104598097A (zh) * | 2013-11-07 | 2015-05-06 | 腾讯科技(深圳)有限公司 | 即时通信im窗口的排序方法和装置 |
CN103560944A (zh) * | 2013-11-12 | 2014-02-05 | 珠海市魅族科技有限公司 | 一种电子邮件的集合的显示方法和终端 |
US20150156144A1 (en) * | 2013-11-25 | 2015-06-04 | Myndbee, Inc. | Methods and Systems for Social Messaging |
US20150156268A1 (en) * | 2013-12-04 | 2015-06-04 | Conduit Ltd | Suggesting Topics For Social Conversation |
KR102415083B1 (ko) * | 2013-12-16 | 2022-06-30 | 삼성전자 주식회사 | 전자 장치의 메시지 관리 방법 및 장치 |
CN104714970B (zh) * | 2013-12-16 | 2018-11-09 | 阿里巴巴集团控股有限公司 | 电子邮件归类的方法、发送端、接收端和系统 |
KR102208362B1 (ko) | 2013-12-16 | 2021-01-28 | 삼성전자 주식회사 | 전자 장치의 메시지 관리 방법 및 장치 |
US20150177974A1 (en) * | 2013-12-23 | 2015-06-25 | Huawei Technologies Co., Ltd. | Information display method and user terminal for instant messaging tool |
CN104734940A (zh) * | 2013-12-23 | 2015-06-24 | 华为技术有限公司 | 一种用于即时通讯工具的信息显示方法和用户终端 |
US8832832B1 (en) | 2014-01-03 | 2014-09-09 | Palantir Technologies Inc. | IP reputation |
US9971500B2 (en) | 2014-06-01 | 2018-05-15 | Apple Inc. | Displaying options, assigning notification, ignoring messages, and simultaneous user interface displays in a messaging application |
CN104144116B (zh) * | 2014-07-16 | 2016-04-27 | 腾讯科技(深圳)有限公司 | 即时通讯方法及即时通讯系统 |
US10367771B2 (en) * | 2014-10-01 | 2019-07-30 | Dropbox, Inc. | Identifying communication participants to a recipient of a message |
US9043894B1 (en) | 2014-11-06 | 2015-05-26 | Palantir Technologies Inc. | Malicious software detection in a computing system |
CN104463556B (zh) * | 2014-11-11 | 2018-01-30 | 尹子雄 | 电子邮件正文引用信息的整理和发现方法及系统 |
US11902232B1 (en) * | 2014-11-18 | 2024-02-13 | Amazon Technologies, Inc. | Email conversation linking |
US11093125B1 (en) | 2014-12-09 | 2021-08-17 | Amazon Technologies, Inc. | Email conversation linking |
US20160182430A1 (en) * | 2014-12-17 | 2016-06-23 | Microsoft Technology Licensing, Llc | Optimizing view of messages based on importance classification |
KR101622871B1 (ko) * | 2015-02-03 | 2016-05-19 | 라인 가부시키가이샤 | 메신저의 대화내용을 관리하는 방법과 시스템 및 기록 매체 |
US10057204B2 (en) * | 2015-03-31 | 2018-08-21 | Facebook, Inc. | Multi-user media presentation system |
US20160344677A1 (en) | 2015-05-22 | 2016-11-24 | Microsoft Technology Licensing, Llc | Unified messaging platform for providing interactive semantic objects |
US10360287B2 (en) | 2015-05-22 | 2019-07-23 | Microsoft Technology Licensing, Llc | Unified messaging platform and interface for providing user callouts |
US10454872B2 (en) * | 2015-06-22 | 2019-10-22 | Microsoft Technology Licensing, Llc | Group email management |
US9456000B1 (en) * | 2015-08-06 | 2016-09-27 | Palantir Technologies Inc. | Systems, methods, user interfaces, and computer-readable media for investigating potential malicious communications |
US9608950B2 (en) * | 2015-08-18 | 2017-03-28 | Blend Systems, Inc. | Systems and methods for sharing videos and images in a texting environment |
US20170090718A1 (en) * | 2015-09-25 | 2017-03-30 | International Business Machines Corporation | Linking selected messages in electronic message threads |
US10504137B1 (en) | 2015-10-08 | 2019-12-10 | Persado Intellectual Property Limited | System, method, and computer program product for monitoring and responding to the performance of an ad |
JP6042958B1 (ja) * | 2015-10-23 | 2016-12-14 | Line株式会社 | 情報処理装置、情報処理装置の制御方法およびプログラム |
US20170131864A1 (en) * | 2015-11-06 | 2017-05-11 | Facebook, Inc. | Interface for Presenting Feed to a User Based on Scroll Inputs |
WO2017088128A1 (zh) * | 2015-11-25 | 2017-06-01 | 华为技术有限公司 | 发送消息的方法、设备和系统 |
JP6077192B1 (ja) * | 2015-12-08 | 2017-02-08 | 楽天株式会社 | 提示装置、提示方法、非一時的なコンピュータ読取可能な情報記録媒体、及び、プログラム |
US10832283B1 (en) | 2015-12-09 | 2020-11-10 | Persado Intellectual Property Limited | System, method, and computer program for providing an instance of a promotional message to a user based on a predicted emotional response corresponding to user characteristics |
US10178058B2 (en) * | 2016-01-28 | 2019-01-08 | International Business Machines Corporation | Expanding captured portions of references in instant messaging systems |
JP6466867B2 (ja) * | 2016-02-25 | 2019-02-06 | 日本電信電話株式会社 | 情報管理装置、情報管理方法および情報管理プログラム |
CN105845137B (zh) * | 2016-03-18 | 2019-08-23 | 中国科学院声学研究所 | 一种语音对话管理系统 |
CN105930313B (zh) * | 2016-04-13 | 2018-10-26 | 平安科技(深圳)有限公司 | 处理通知信息的方法和装置 |
US10795947B2 (en) | 2016-05-17 | 2020-10-06 | Google Llc | Unified message search |
US10361987B2 (en) | 2016-05-21 | 2019-07-23 | Facebook, Inc. | Techniques to convert multi-party conversations to an editable document |
US11860816B2 (en) * | 2016-06-01 | 2024-01-02 | Archive360, Llc | Methods and systems for archiving and retrieving data |
AU2017203723A1 (en) * | 2016-06-07 | 2017-12-21 | David Nixon | Meeting management system and process |
US9804752B1 (en) | 2016-06-27 | 2017-10-31 | Atlassian Pty Ltd | Machine learning method of managing conversations in a messaging interface |
US10409779B2 (en) | 2016-08-31 | 2019-09-10 | Microsoft Technology Licensing, Llc. | Document sharing via logical tagging |
US10114525B2 (en) * | 2016-12-28 | 2018-10-30 | Byung Jin Kim | Device and method for organizing and displaying instant messages in various structured fashions |
KR101950213B1 (ko) * | 2017-02-03 | 2019-02-22 | 네이버 주식회사 | 회화 관련 컨텐츠를 제공하는 방법 및 시스템 |
US11019001B1 (en) * | 2017-02-20 | 2021-05-25 | Snap Inc. | Selective presentation of group messages |
JP7127273B2 (ja) * | 2017-11-14 | 2022-08-30 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置及びプログラム |
JP7027826B2 (ja) | 2017-11-14 | 2022-03-02 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置及びプログラム |
US10592608B2 (en) * | 2018-01-08 | 2020-03-17 | International Business Machines Corporation | Topic based conversation retrieval |
US10616035B1 (en) * | 2018-01-30 | 2020-04-07 | EMC IP Holding Company LLC | Methods and apparatus for device chat and management |
CN110209799A (zh) | 2018-02-07 | 2019-09-06 | 阿里巴巴集团控股有限公司 | 消息处理方法、未读消息的显示方法、计算机终端 |
KR20190112506A (ko) * | 2018-03-26 | 2019-10-07 | 삼성전자주식회사 | 전자 장치 및 전자 장치에서 전자 메일 표시 방법 |
WO2019224907A1 (ja) | 2018-05-22 | 2019-11-28 | 三菱電機株式会社 | 不正メール判定装置、不正メール判定方法及び不正メール判定プログラム |
JP6919079B1 (ja) * | 2018-06-28 | 2021-08-11 | キム、ビョン ジンKIM, Byung Jin | 表示装置 |
US11514915B2 (en) * | 2018-09-27 | 2022-11-29 | Salesforce.Com, Inc. | Global-to-local memory pointer networks for task-oriented dialogue |
JP6724223B2 (ja) * | 2018-09-29 | 2020-07-15 | ジェギュ イ | 多様なアイコンバッジを表示できるデータ処理ターミナル及び該バッジとターミナルを用いる方法 |
CN109347935B (zh) * | 2018-09-30 | 2021-08-03 | 珠海信达九州科技有限公司 | 一种基于区块链实现实时通讯消息同步的方法 |
KR102173637B1 (ko) | 2019-01-23 | 2020-11-03 | 울산과학기술원 | 이메일 정보 표시 장치 |
US10749832B1 (en) * | 2019-01-31 | 2020-08-18 | Slack Technologies, Inc. | Methods and apparatuses for managing limited engagement by external email resource entity within a group-based communication system |
CN111722764B (zh) * | 2019-03-18 | 2024-07-12 | 钉钉(中国)信息技术有限公司 | 消息输入及展示方法、装置、电子设备、可读存储介质 |
US11546335B2 (en) * | 2019-09-27 | 2023-01-03 | Amazon Technologies, Inc. | Managing permissions to cloud-based resources with session-specific attributes |
US11397521B2 (en) * | 2019-09-30 | 2022-07-26 | Braided Communications Limited | Communication system |
US10944704B1 (en) | 2019-10-23 | 2021-03-09 | Charter Communications Operating, Llc | Method and system for reducing the sizes of electronic messages |
US11436408B2 (en) * | 2020-07-01 | 2022-09-06 | Motorola Mobility Llc | Targeted natural language responses for electronic communications |
CN113360238A (zh) * | 2021-06-29 | 2021-09-07 | 维沃移动通信有限公司 | 消息处理方法、装置、电子设备和存储介质 |
CN117795968A (zh) * | 2021-12-27 | 2024-03-29 | 三星电子株式会社 | 基于图像信息提供最佳聊天室用户界面的方法和设备 |
WO2023152764A1 (en) * | 2022-02-08 | 2023-08-17 | Sarath Kakumanu | A system and method for sending and receiving e-mails with an auto-generated serial number in a digital mailing application |
KR20230135964A (ko) | 2022-03-17 | 2023-09-26 | 삼성전자주식회사 | 광고 대상 결정 장치 및 방법 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5948058A (en) | 1995-10-30 | 1999-09-07 | Nec Corporation | Method and apparatus for cataloging and displaying e-mail using a classification rule preparing means and providing cataloging a piece of e-mail into multiple categories or classification types based on e-mail object information |
US20030233419A1 (en) | 2002-01-08 | 2003-12-18 | Joerg Beringer | Enhanced email management system |
Family Cites Families (200)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5216603A (en) * | 1985-11-18 | 1993-06-01 | Action Technologies, Inc. | Method and apparatus for structuring and managing human communications by explicitly defining the types of communications permitted between participants |
US5208748A (en) * | 1985-11-18 | 1993-05-04 | Action Technologies, Inc. | Method and apparatus for structuring and managing human communications by explicitly defining the types of communications permitted between participants |
JP3168756B2 (ja) * | 1993-02-24 | 2001-05-21 | ミノルタ株式会社 | 電子メールシステムのメール管理方法 |
US5734837A (en) * | 1994-01-14 | 1998-03-31 | Action Technologies, Inc. | Method and apparatus for building business process applications in terms of its workflows |
US5479408A (en) | 1994-02-22 | 1995-12-26 | Will; Craig A. | Wireless personal paging, communications, and locating system |
US5870549A (en) * | 1995-04-28 | 1999-02-09 | Bobo, Ii; Charles R. | Systems and methods for storing, delivering, and managing messages |
US5761689A (en) * | 1994-09-01 | 1998-06-02 | Microsoft Corporation | Autocorrecting text typed into a word processing document |
US6029195A (en) | 1994-11-29 | 2000-02-22 | Herz; Frederick S. M. | System for customized electronic identification of desirable objects |
US5740549A (en) * | 1995-06-12 | 1998-04-14 | Pointcast, Inc. | Information and advertising distribution system and method |
US5724571A (en) | 1995-07-07 | 1998-03-03 | Sun Microsystems, Inc. | Method and apparatus for generating query responses in a computer-based document retrieval system |
US5913040A (en) * | 1995-08-22 | 1999-06-15 | Backweb Ltd. | Method and apparatus for transmitting and displaying information between a remote network and a local computer |
JP2765536B2 (ja) | 1995-10-30 | 1998-06-18 | 日本電気株式会社 | 電子メール整理検索装置 |
US5872925A (en) | 1996-04-18 | 1999-02-16 | Ncr Corporation | Blocking a "reply to all" option in an electronic mail system |
US6396513B1 (en) | 1996-05-14 | 2002-05-28 | At&T Corp. | Electronic message sorting and notification system |
US5923848A (en) | 1996-05-31 | 1999-07-13 | Microsoft Corporation | System and method for resolving names in an electronic messaging environment |
WO1997046962A1 (en) * | 1996-06-07 | 1997-12-11 | At & T Corp. | Finding an e-mail message to which another e-mail message is a response |
US6085206A (en) * | 1996-06-20 | 2000-07-04 | Microsoft Corporation | Method and system for verifying accuracy of spelling and grammatical composition of a document |
US5832502A (en) * | 1996-07-02 | 1998-11-03 | Microsoft Corporation | Conversation index builder |
US5959621A (en) * | 1996-12-06 | 1999-09-28 | Microsoft Corporation | System and method for displaying data items in a ticker display pane on a client computer |
US6021427A (en) * | 1997-05-22 | 2000-02-01 | International Business Machines Corporation | Method and system for preventing routing maelstrom loops of automatically routed electronic mail |
US6029164A (en) * | 1997-06-16 | 2000-02-22 | Digital Equipment Corporation | Method and apparatus for organizing and accessing electronic mail messages using labels and full text and label indexing |
US6185551B1 (en) * | 1997-06-16 | 2001-02-06 | Digital Equipment Corporation | Web-based electronic mail service apparatus and method using full text and label indexing |
WO1999004344A1 (en) | 1997-07-18 | 1999-01-28 | Net Exchange, Inc. | Apparatus and method for effecting correspondent-centric electronic mail |
JP3000972B2 (ja) * | 1997-08-18 | 2000-01-17 | 日本電気株式会社 | 情報提供装置及びプログラムを記録した機械読み取り可能な記録媒体 |
US6594693B1 (en) * | 1998-02-10 | 2003-07-15 | Nitin A. Borwankar | Method and apparatus for a structured, synchronized conversation using electronic messages over a computer network |
US6330589B1 (en) * | 1998-05-26 | 2001-12-11 | Microsoft Corporation | System and method for using a client database to manage conversation threads generated from email or news messages |
US6438564B1 (en) * | 1998-06-17 | 2002-08-20 | Microsoft Corporation | Method for associating a discussion with a document |
US7275082B2 (en) | 1998-07-15 | 2007-09-25 | Pang Stephen Y F | System for policing junk e-mail messages |
US6182098B1 (en) * | 1998-07-22 | 2001-01-30 | International Business Machines Corporation | Next/current/last ticker graphical presentation method |
AU6410699A (en) | 1998-10-13 | 2000-05-01 | Chris Cheah | Method and system for controlled distribution of information over a network |
US7689563B1 (en) | 1998-10-20 | 2010-03-30 | Jacobson Andrea M | Electronic record management system |
US6507351B1 (en) * | 1998-12-09 | 2003-01-14 | Donald Brinton Bixler | System for managing personal and group networked information |
JP2000187631A (ja) | 1998-12-21 | 2000-07-04 | Casio Comput Co Ltd | 情報公開システム、サ―バ及び記録媒体 |
US6549957B1 (en) * | 1998-12-22 | 2003-04-15 | International Business Machines Corporation | Apparatus for preventing automatic generation of a chain reaction of messages if a prior extracted message is similar to current processed message |
JP3942760B2 (ja) * | 1999-02-03 | 2007-07-11 | 富士通株式会社 | 情報収集装置 |
US7505974B2 (en) | 1999-02-12 | 2009-03-17 | Gropper Robert L | Auto update utility for digital address books |
CN1156780C (zh) | 1999-02-15 | 2004-07-07 | 松下电器产业株式会社 | 电子邮件准备装置、终端装置、信息发送系统和程序记录媒体 |
US6834276B1 (en) | 1999-02-25 | 2004-12-21 | Integrated Data Control, Inc. | Database system and method for data acquisition and perusal |
JP2000276474A (ja) | 1999-03-24 | 2000-10-06 | Fuji Photo Film Co Ltd | データベース検索装置および方法 |
US7017173B1 (en) * | 1999-03-30 | 2006-03-21 | Sedna Patent Services, Llc | System enabling user access to secondary content associated with a primary content stream |
US6493702B1 (en) | 1999-05-05 | 2002-12-10 | Xerox Corporation | System and method for searching and recommending documents in a collection using share bookmarks |
US6564261B1 (en) | 1999-05-10 | 2003-05-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Distributed system to intelligently establish sessions between anonymous users over various networks |
US6493703B1 (en) | 1999-05-11 | 2002-12-10 | Prophet Financial Systems | System and method for implementing intelligent online community message board |
JP2000347894A (ja) * | 1999-06-09 | 2000-12-15 | Fujitsu Ltd | ソースプログラムチェック装置およびそのプログラム記録媒体 |
US6785869B1 (en) | 1999-06-17 | 2004-08-31 | International Business Machines Corporation | Method and apparatus for providing a central dictionary and glossary server |
US7505759B1 (en) | 1999-06-21 | 2009-03-17 | Alcatel-Lucent Usa Inc. | System for message control and redirection in a wireless communications network |
US20040153509A1 (en) * | 1999-06-30 | 2004-08-05 | Alcorn Robert L. | Internet-based education support system, method and medium with modular text-editing component for use in a web-based application |
GB2353679A (en) * | 1999-08-25 | 2001-02-28 | Ibm | Prioritized display of messages |
US7089278B1 (en) * | 1999-09-07 | 2006-08-08 | Fuji Xerox Co., Ltd. | Anchored conversations: adhesive, in-context, virtual discussion forums |
US6826596B1 (en) | 1999-09-07 | 2004-11-30 | Roy Satoshi Suzuki | System for categorizing and displaying reply messages in computer facilitated discussions |
US6640239B1 (en) | 1999-11-10 | 2003-10-28 | Garuda Network Corporation | Apparatus and method for intelligent scalable switching network |
WO2001042905A1 (en) * | 1999-12-07 | 2001-06-14 | Actioneer, Inc. | A method and apparatus for receiving information in response to a request from an email client |
US6892196B1 (en) * | 1999-12-22 | 2005-05-10 | Accenture Llp | System, method and article of manufacture for a user programmable diary interface link |
US8527345B2 (en) | 2000-01-06 | 2013-09-03 | Anthony Richard Rothschild | System and method for adding an advertisement to a personal communication |
EP1264258A2 (en) * | 2000-01-06 | 2002-12-11 | Anthony R. Rothschild | System and method for adding an advertisement to a personal communication |
JP2001222477A (ja) | 2000-02-08 | 2001-08-17 | Nec Corp | 電子メール記事管理システム |
AU2001241591A1 (en) | 2000-02-18 | 2001-08-27 | Multitude, Inc. | System and method for creating audio forums from e-mail |
US6651086B1 (en) * | 2000-02-22 | 2003-11-18 | Yahoo! Inc. | Systems and methods for matching participants to a conversation |
US6606644B1 (en) * | 2000-02-24 | 2003-08-12 | International Business Machines Corporation | System and technique for dynamic information gathering and targeted advertising in a web based model using a live information selection and analysis tool |
US7730113B1 (en) * | 2000-03-07 | 2010-06-01 | Applied Discovery, Inc. | Network-based system and method for accessing and processing emails and other electronic legal documents that may include duplicate information |
US7693866B1 (en) * | 2000-03-07 | 2010-04-06 | Applied Discovery, Inc. | Network-based system and method for accessing and processing legal documents |
US20020087649A1 (en) | 2000-03-16 | 2002-07-04 | Horvitz Eric J. | Bounded-deferral policies for reducing the disruptiveness of notifications |
EP1274029A1 (en) | 2000-04-10 | 2003-01-08 | Sony Corporation | Information management system and information management method |
US20010042100A1 (en) * | 2000-04-14 | 2001-11-15 | David Guedalia | Unified system and methodology for remote access to e-mail |
JP2001318948A (ja) | 2000-05-09 | 2001-11-16 | Hitachi Ltd | 文書検索方法及び装置並びにその処理プログラムを記憶した媒体 |
US6771291B1 (en) * | 2000-06-07 | 2004-08-03 | The Perfect Web Corporation | Method for developing electronic documents employing multiple display regions |
US6889361B1 (en) * | 2000-06-13 | 2005-05-03 | International Business Machines Corporation | Educational spell checker |
US20020093527A1 (en) | 2000-06-16 | 2002-07-18 | Sherlock Kieran G. | User interface for a security policy system and method |
US6742042B1 (en) * | 2000-06-28 | 2004-05-25 | Nortel Networks Limited | Method and apparatus of presenting ticker information |
JP2002014903A (ja) | 2000-06-28 | 2002-01-18 | Hitachi Ltd | 電子メール情報の検索方法および装置 |
DE10124429B4 (de) * | 2000-07-07 | 2008-11-27 | International Business Machines Corp. | System und Verfahren für eine verbesserte Rechtschreibprüfung |
GB0017380D0 (en) | 2000-07-14 | 2000-08-30 | Mailround Com Limited | Information communication system |
US7043690B1 (en) * | 2000-09-11 | 2006-05-09 | International Business Machines Corporation | Method, system, and program for checking contact information |
US20030093315A1 (en) | 2000-09-26 | 2003-05-15 | Kenji Sato | System and method for using e-mail as advertisement medium |
US6683627B1 (en) * | 2000-09-28 | 2004-01-27 | International Business Machines Corporation | Scroll box controls |
US7197470B1 (en) | 2000-10-11 | 2007-03-27 | Buzzmetrics, Ltd. | System and method for collection analysis of electronic discussion methods |
US6725228B1 (en) * | 2000-10-31 | 2004-04-20 | David Morley Clark | System for managing and organizing stored electronic messages |
US7243125B2 (en) | 2000-12-08 | 2007-07-10 | Xerox Corporation | Method and apparatus for presenting e-mail threads as semi-connected text by removing redundant material |
US7035903B1 (en) * | 2000-11-22 | 2006-04-25 | Xerox Corporation | Systems and methods for the discovery and presentation of electronic messages that are related to an electronic message |
US20020073156A1 (en) | 2000-12-08 | 2002-06-13 | Xerox Corporation | Method and system for mail folder displays |
US20030009385A1 (en) * | 2000-12-26 | 2003-01-09 | Tucciarone Joel D. | Electronic messaging system and method thereof |
US20040098488A1 (en) * | 2001-01-18 | 2004-05-20 | William Mayers | Network-assisted communication method and system therefor |
US20020108125A1 (en) | 2001-02-07 | 2002-08-08 | Joao Raymond Anthony | Apparatus and method for facilitating viewer or listener interaction |
US6708205B2 (en) * | 2001-02-15 | 2004-03-16 | Suffix Mail, Inc. | E-mail messaging system |
US6745197B2 (en) * | 2001-03-19 | 2004-06-01 | Preston Gates Ellis Llp | System and method for efficiently processing messages stored in multiple message stores |
US6820081B1 (en) * | 2001-03-19 | 2004-11-16 | Attenex Corporation | System and method for evaluating a structured message store for message redundancy |
US6973481B2 (en) | 2001-03-23 | 2005-12-06 | Emailias Llc | System and method for creating and managing forwarding email address |
JP3789774B2 (ja) | 2001-05-31 | 2006-06-28 | 三洋電機株式会社 | メール送受信機能を有する携帯電話機 |
US20020194229A1 (en) * | 2001-06-15 | 2002-12-19 | Decime Jerry B. | Network-based spell checker |
US7143054B2 (en) * | 2001-07-02 | 2006-11-28 | The Procter & Gamble Company | Assessment of communication strengths of individuals from electronic messages |
US20030020749A1 (en) * | 2001-07-10 | 2003-01-30 | Suhayya Abu-Hakima | Concept-based message/document viewer for electronic communications and internet searching |
JP4040849B2 (ja) * | 2001-07-16 | 2008-01-30 | 株式会社東芝 | 知識蓄積支援システムおよび同システムにおけるメッセージ移動方法 |
JP4146109B2 (ja) | 2001-07-16 | 2008-09-03 | 株式会社東芝 | 知識蓄積支援システムおよび同システムにおけるメッセージ階層表示設定方法 |
US7185057B2 (en) * | 2001-07-26 | 2007-02-27 | International Business Machines Corporation | Individually specifying message output attributes in a messaging system |
US20030037339A1 (en) | 2001-08-17 | 2003-02-20 | Dynalab, Inc. | Personal Web guide system and method for automatically displaying Web information |
CN1402159A (zh) | 2001-08-22 | 2003-03-12 | 英业达股份有限公司 | 邮件档案管理系统及方法 |
JP2003067306A (ja) | 2001-08-24 | 2003-03-07 | Hitachi Ltd | 電子メールの蓄積管理方法 |
US7516438B1 (en) | 2001-09-12 | 2009-04-07 | Sun Microsystems, Inc. | Methods and apparatus for tracking problems using a problem tracking system |
JP4058928B2 (ja) | 2001-09-28 | 2008-03-12 | セイコーエプソン株式会社 | 文書表示システム、受信装置、文書表示方法、および記録媒体 |
US7305402B2 (en) | 2001-10-10 | 2007-12-04 | International Business Machines Corporation | Adaptive indexing technique for use with electronic objects |
US7328242B1 (en) * | 2001-11-09 | 2008-02-05 | Mccarthy Software, Inc. | Using multiple simultaneous threads of communication |
US7392280B2 (en) | 2001-11-27 | 2008-06-24 | International Business Machines Corporation | Method for summarization of threads in electronic mail |
US7359936B2 (en) * | 2001-11-27 | 2008-04-15 | International Business Machines Corporation | Method and apparatus for electronic mail interaction with grouped message types |
US20030177190A1 (en) | 2001-11-27 | 2003-09-18 | International Business Machines Corporation | Method and apparatus for interaction with electronic mail from multiple sources |
US20030163537A1 (en) * | 2001-11-27 | 2003-08-28 | International Business Machines Corporation | Method and apparatus for handling conversation threads and message groupings as a single entity |
US20030101065A1 (en) * | 2001-11-27 | 2003-05-29 | International Business Machines Corporation | Method and apparatus for maintaining conversation threads in electronic mail |
US20030110227A1 (en) * | 2001-12-06 | 2003-06-12 | O'hagan Timothy Patrick | Real time streaming media communication system |
JP2003223437A (ja) | 2002-01-29 | 2003-08-08 | Internatl Business Mach Corp <Ibm> | 正解語の候補の表示方法、スペルチェック方法、コンピュータ装置、プログラム |
US7421660B2 (en) | 2003-02-04 | 2008-09-02 | Cataphora, Inc. | Method and apparatus to visually present discussions for data mining purposes |
US7386439B1 (en) | 2002-02-04 | 2008-06-10 | Cataphora, Inc. | Data mining by retrieving causally-related documents not individually satisfying search criteria used |
WO2003067497A1 (en) | 2002-02-04 | 2003-08-14 | Cataphora, Inc | A method and apparatus to visually present discussions for data mining purposes |
US7143135B2 (en) * | 2002-02-08 | 2006-11-28 | Microsoft Corporation | Automatic participant evaluation in computer mediated persistent conversations |
CN1438595A (zh) | 2002-02-10 | 2003-08-27 | 三慧科技股份有限公司 | 一种处理电子邮件的系统 |
US7031977B2 (en) * | 2002-02-28 | 2006-04-18 | Plumtree Software, Inc. | Efficiently storing indented threads in a threaded discussion application |
US20040006598A1 (en) * | 2002-03-01 | 2004-01-08 | Tralix, L.L.C. | Method and system of sending and tracking electronic mail messages |
US7206388B2 (en) | 2002-03-18 | 2007-04-17 | Openwave Systems Inc. | System and method for providing voice-activated presence information |
US7599852B2 (en) * | 2002-04-05 | 2009-10-06 | Sponster Llc | Method and apparatus for adding advertising tag lines to electronic messages |
CN1464458A (zh) | 2002-06-04 | 2003-12-31 | 明日工作室股份有限公司 | 电子邮件生成方法与系统 |
US7120622B2 (en) | 2002-06-10 | 2006-10-10 | Xerox Corporation | Authoring tools, including content-driven treetables, for fluid text |
US7139850B2 (en) * | 2002-06-21 | 2006-11-21 | Fujitsu Limited | System for processing programmable buttons using system interrupts |
US8150922B2 (en) | 2002-07-17 | 2012-04-03 | Research In Motion Limited | Voice and text group chat display management techniques for wireless mobile terminals |
JP2004054614A (ja) | 2002-07-19 | 2004-02-19 | Fujitsu Ltd | メール応答状況表示プログラムおよびメール応答状況表示方法 |
US7555485B2 (en) | 2002-08-22 | 2009-06-30 | Yahoo! Inc. | System and method for conducting an auction-based ranking of search results on a computer network |
US20040044735A1 (en) | 2002-08-30 | 2004-03-04 | International Business Machines Corporation | Method and system for organizing an email thread |
US7496559B2 (en) | 2002-09-03 | 2009-02-24 | X1 Technologies, Inc. | Apparatus and methods for locating data |
US7933957B2 (en) * | 2002-09-17 | 2011-04-26 | At&T Intellectual Property Ii, L.P. | Tracking email and instant messaging (IM) thread history |
US20040059712A1 (en) * | 2002-09-24 | 2004-03-25 | Dean Jeffrey A. | Serving advertisements using information associated with e-mail |
US7062536B2 (en) | 2002-10-10 | 2006-06-13 | International Business Machines Corporation | Grouping electronic reply messages |
US8122084B2 (en) | 2002-10-29 | 2012-02-21 | Sap Ag | Collaborative conversation channels |
CA2666074A1 (en) | 2002-10-31 | 2004-05-13 | Nokia Corporation | Method, server and computer readable medium for providing a computerized icon ordering service |
JP2004173124A (ja) | 2002-11-22 | 2004-06-17 | Crossever Kk | 顧客データの管理方法 |
US7340674B2 (en) | 2002-12-16 | 2008-03-04 | Xerox Corporation | Method and apparatus for normalizing quoting styles in electronic mail messages |
US7007069B2 (en) | 2002-12-16 | 2006-02-28 | Palo Alto Research Center Inc. | Method and apparatus for clustering hierarchically related information |
US20040260710A1 (en) * | 2003-02-28 | 2004-12-23 | Marston Justin P. | Messaging system |
US20050091320A1 (en) * | 2003-10-09 | 2005-04-28 | Kirsch Steven T. | Method and system for categorizing and processing e-mails |
US7509378B2 (en) * | 2003-03-11 | 2009-03-24 | Bea Systems, Inc. | System and method for message ordering in a message oriented network |
US20040186766A1 (en) | 2003-03-19 | 2004-09-23 | International Business Machines Corporation | Apparatus and method for marketing to instant messaging service users |
US7213210B2 (en) * | 2003-04-03 | 2007-05-01 | International Business Machines Corporation | Method, apparatus and computer program product for managing e-mail messages |
US7890603B2 (en) * | 2003-04-03 | 2011-02-15 | International Business Machines Corporation | Apparatus, system and method of performing mail message searches across multiple mail servers |
US7472357B1 (en) | 2003-06-04 | 2008-12-30 | Microsoft Corporation | Method and apparatus for managing list items |
US7603491B2 (en) | 2003-06-19 | 2009-10-13 | Intel Corporation | Bandwidth conserving protocol for command-response bus system |
US7421690B2 (en) * | 2003-06-23 | 2008-09-02 | Apple Inc. | Threaded presentation of electronic mail |
US7162473B2 (en) | 2003-06-26 | 2007-01-09 | Microsoft Corporation | Method and system for usage analyzer that determines user accessed sources, indexes data subsets, and associated metadata, processing implicit queries based on potential interest to users |
US7890852B2 (en) * | 2003-06-26 | 2011-02-15 | International Business Machines Corporation | Rich text handling for a web application |
US7716593B2 (en) * | 2003-07-01 | 2010-05-11 | Microsoft Corporation | Conversation grouping of electronic mail records |
US7974391B2 (en) * | 2003-07-14 | 2011-07-05 | Orative Corporation | Conversation-based user interface |
US20050060643A1 (en) * | 2003-08-25 | 2005-03-17 | Miavia, Inc. | Document similarity detection and classification system |
US7484175B2 (en) * | 2003-09-30 | 2009-01-27 | International Business Machines Corporation | Method and apparatus for increasing personability of instant messaging with user images |
US20050091318A1 (en) | 2003-10-09 | 2005-04-28 | International Business Machines Corporation | Enabling a sender to control future recipients of an email |
US7433920B2 (en) * | 2003-10-10 | 2008-10-07 | Microsoft Corporation | Contact sidebar tile |
US7200638B2 (en) | 2003-10-14 | 2007-04-03 | International Business Machines Corporation | System and method for automatic population of instant messenger lists |
US20050144241A1 (en) * | 2003-10-17 | 2005-06-30 | Stata Raymond P. | Systems and methods for a search-based email client |
US7693724B2 (en) | 2003-10-20 | 2010-04-06 | Bryant Consultants, Inc. | Multidiscipline site development and risk assessment process |
US20050086598A1 (en) * | 2003-10-21 | 2005-04-21 | Marshall John L.Iii | Document digest system and methodology |
US7194516B2 (en) * | 2003-10-23 | 2007-03-20 | Microsoft Corporation | Accessing different types of electronic messages through a common messaging interface |
US7356772B2 (en) * | 2003-11-25 | 2008-04-08 | International Business Machines Corporation | Multi-column user interface for managing on-line threaded conversations |
US7222299B1 (en) | 2003-12-19 | 2007-05-22 | Google, Inc. | Detecting quoted text |
US7454716B2 (en) | 2003-12-22 | 2008-11-18 | Microsoft Corporation | Clustering messages |
US20050165740A1 (en) | 2003-12-29 | 2005-07-28 | Kerr Bernard J. | System and method for scrolling within a list of documents |
US7412437B2 (en) | 2003-12-29 | 2008-08-12 | International Business Machines Corporation | System and method for searching and retrieving related messages |
US8805933B2 (en) * | 2003-12-29 | 2014-08-12 | Google Inc. | System and method for building interest profiles from related messages |
US20050198173A1 (en) * | 2004-01-02 | 2005-09-08 | Evans Alexander W. | System and method for controlling receipt of electronic messages |
US7383307B2 (en) * | 2004-01-07 | 2008-06-03 | International Business Machines Corporation | Instant messaging windowing for topic threads |
US7383250B2 (en) | 2004-01-30 | 2008-06-03 | Research In Motion Limited | Contact query data system and method |
US7904510B2 (en) * | 2004-02-23 | 2011-03-08 | Microsoft Corporation | Systems and methods for managing discussion threads based on ratings |
WO2005093595A1 (en) * | 2004-02-26 | 2005-10-06 | Thomson Licensing | Discussion association for e-mail |
US8635273B2 (en) | 2004-03-05 | 2014-01-21 | Aol Inc. | Announcing new users of an electronic communications system to existing users |
US7953800B2 (en) | 2004-03-08 | 2011-05-31 | Netsuite, Inc. | Integrating a web-based business application with existing client-side electronic mail systems |
US20050204009A1 (en) | 2004-03-09 | 2005-09-15 | Devapratim Hazarika | System, method and computer program product for prioritizing messages |
US7814155B2 (en) | 2004-03-31 | 2010-10-12 | Google Inc. | Email conversation management system |
US7912904B2 (en) * | 2004-03-31 | 2011-03-22 | Google Inc. | Email system with conversation-centric user interface |
US7725508B2 (en) | 2004-03-31 | 2010-05-25 | Google Inc. | Methods and systems for information capture and retrieval |
US8275839B2 (en) | 2004-03-31 | 2012-09-25 | Google Inc. | Methods and systems for processing email messages |
US7565534B2 (en) | 2004-04-01 | 2009-07-21 | Microsoft Corporation | Network side channel for a message board |
US20050223072A1 (en) | 2004-04-02 | 2005-10-06 | Web.De Ag | Electronic messaging system with an integrated interactive footer |
CN1947374A (zh) | 2004-04-21 | 2007-04-11 | 皇家飞利浦电子股份有限公司 | 用于管理网络聊天环境中的线索的系统和方法 |
US20060031304A1 (en) | 2004-04-27 | 2006-02-09 | Amit Bagga | Method and apparatus for classification of relative position of one or more text messages in an email thread |
US7865511B2 (en) | 2004-06-25 | 2011-01-04 | Apple Inc. | News feed browser |
US20060026593A1 (en) | 2004-07-30 | 2006-02-02 | Microsoft Corporation | Categorizing, voting and rating community threads |
US7596594B2 (en) | 2004-09-02 | 2009-09-29 | Yahoo! Inc. | System and method for displaying and acting upon email conversations across folders |
US8150926B2 (en) | 2004-09-09 | 2012-04-03 | Microsoft Corporation | Organizing electronic mail messages into conversations |
TW200620911A (en) * | 2004-12-08 | 2006-06-16 | Bo-Tai Ho | Dividing method and receiving method for normal mails and commercial mails in e-mail |
US7218943B2 (en) | 2004-12-13 | 2007-05-15 | Research In Motion Limited | Text messaging conversation user interface functionality |
US8055715B2 (en) | 2005-02-01 | 2011-11-08 | i365 MetaLINCS | Thread identification and classification |
US20060248209A1 (en) * | 2005-04-27 | 2006-11-02 | Leo Chiu | Network system for facilitating audio and video advertising to end users through audio and video podcasts |
US7565347B2 (en) | 2005-08-10 | 2009-07-21 | International Business Machines Corporation | Indexing and searching of electronic message transmission thread sets |
US8380682B2 (en) | 2005-08-10 | 2013-02-19 | International Business Machines Corporation | Indexing and searching of electronic message transmission thread sets |
US7730141B2 (en) * | 2005-12-16 | 2010-06-01 | Microsoft Corporation | Graphical interface for defining mutually exclusive destinations |
US20070143428A1 (en) * | 2005-12-21 | 2007-06-21 | Shruti Kumar | Method and system for displaying indications of messages from important persons and from new persons at a high display priority in a gathered threads view of an electronic mail ("email") user interface |
US7593995B1 (en) | 2006-01-23 | 2009-09-22 | Clearwell Systems, Inc. | Methods and systems of electronic message threading and ranking |
US9600568B2 (en) | 2006-01-23 | 2017-03-21 | Veritas Technologies Llc | Methods and systems for automatic evaluation of electronic discovery review and productions |
US7899871B1 (en) | 2006-01-23 | 2011-03-01 | Clearwell Systems, Inc. | Methods and systems for e-mail topic classification |
US9275129B2 (en) | 2006-01-23 | 2016-03-01 | Symantec Corporation | Methods and systems to efficiently find similar and near-duplicate emails and files |
US9092434B2 (en) | 2007-01-23 | 2015-07-28 | Symantec Corporation | Systems and methods for tagging emails by discussions |
US7917465B2 (en) | 2007-08-27 | 2011-03-29 | Yahoo! Inc. | System and method for providing vector terms related to instant messaging conversations |
US20100070584A1 (en) | 2008-09-12 | 2010-03-18 | International Business Machines Corporation | Method and system for dynamic e-mail view conversion |
JP5365206B2 (ja) | 2009-01-14 | 2013-12-11 | 富士通モバイルコミュニケーションズ株式会社 | 通信機器 |
US9294421B2 (en) | 2009-03-23 | 2016-03-22 | Google Inc. | System and method for merging edits for a conversation in a hosted conversation system |
US10210481B2 (en) | 2009-07-14 | 2019-02-19 | Bitvore Corp. | Relational presentation of communications and application for transaction analysis |
US9824314B2 (en) | 2011-01-14 | 2017-11-21 | Apple Inc. | Grouping email messages into conversations |
-
2004
- 2004-08-06 US US10/914,035 patent/US9819624B2/en active Active
-
2005
- 2005-03-25 KR KR20067022840A patent/KR101177147B1/ko active IP Right Grant
- 2005-03-25 JP JP2007506396A patent/JP4956420B2/ja active Active
- 2005-03-25 EP EP20120192299 patent/EP2575095A1/en not_active Withdrawn
- 2005-03-25 KR KR1020117017096A patent/KR101179412B1/ko active IP Right Grant
- 2005-03-25 CN CN201110416455.8A patent/CN102521734B/zh active Active
- 2005-03-25 EP EP20120183097 patent/EP2533181A1/en not_active Ceased
- 2005-03-25 KR KR1020117017094A patent/KR101173813B1/ko active IP Right Grant
- 2005-03-25 KR KR1020117017095A patent/KR101171680B1/ko active IP Right Grant
- 2005-03-25 EP EP05730150A patent/EP1733349A2/en not_active Withdrawn
- 2005-03-25 KR KR1020117017102A patent/KR101173812B1/ko active IP Right Grant
- 2005-03-25 CN CN201110416435.0A patent/CN102521733B/zh active Active
- 2005-03-25 EP EP20120183103 patent/EP2533182A1/en not_active Withdrawn
- 2005-03-25 KR KR1020117017098A patent/KR101173815B1/ko active IP Right Grant
- 2005-03-25 BR BRPI0509500-0A patent/BRPI0509500A/pt not_active IP Right Cessation
- 2005-03-25 CN CN201110416451XA patent/CN102609832A/zh active Pending
- 2005-03-25 WO PCT/US2005/010137 patent/WO2005098701A2/en active Application Filing
- 2005-03-25 CN CN201110416787.6A patent/CN102592209B/zh active Active
- 2005-03-25 AU AU2005229862A patent/AU2005229862B2/en active Active
- 2005-03-25 CA CA2561580A patent/CA2561580C/en active Active
-
2010
- 2010-12-10 JP JP2010275595A patent/JP5181013B2/ja active Active
-
2011
- 2011-05-02 AU AU2011201991A patent/AU2011201991B2/en active Active
- 2011-05-02 AU AU2011201993A patent/AU2011201993B2/en active Active
- 2011-05-02 AU AU2011201989A patent/AU2011201989B2/en active Active
- 2011-05-02 AU AU2011201994A patent/AU2011201994B2/en active Active
- 2011-05-02 AU AU2011201992A patent/AU2011201992B2/en active Active
- 2011-08-23 JP JP2011181203A patent/JP5243583B2/ja active Active
- 2011-08-23 JP JP2011181205A patent/JP5384583B2/ja active Active
- 2011-08-23 JP JP2011181202A patent/JP5243582B2/ja active Active
- 2011-08-23 JP JP2011181204A patent/JP5241897B2/ja active Active
-
2012
- 2012-09-14 US US13/619,325 patent/US9071566B2/en not_active Expired - Lifetime
- 2012-09-14 US US13/619,610 patent/US8621022B2/en not_active Expired - Lifetime
- 2012-09-14 US US13/619,413 patent/US9015257B2/en not_active Expired - Lifetime
- 2012-09-14 US US13/619,502 patent/US9124543B2/en not_active Expired - Lifetime
-
2013
- 2013-05-16 AU AU2013205898A patent/AU2013205898B2/en active Active
- 2013-05-29 JP JP2013113280A patent/JP5608264B2/ja active Active
- 2013-11-22 US US14/087,359 patent/US9015264B2/en not_active Expired - Lifetime
-
2014
- 2014-05-30 JP JP2014112132A patent/JP5883071B2/ja active Active
-
2017
- 2017-11-14 US US15/812,998 patent/US10284506B2/en not_active Expired - Lifetime
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5948058A (en) | 1995-10-30 | 1999-09-07 | Nec Corporation | Method and apparatus for cataloging and displaying e-mail using a classification rule preparing means and providing cataloging a piece of e-mail into multiple categories or classification types based on e-mail object information |
US20030233419A1 (en) | 2002-01-08 | 2003-12-18 | Joerg Beringer | Enhanced email management system |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101173815B1 (ko) | 대화-기반 이메일 시스템에서 대화들 및 메시지들 라벨링 | |
US10706060B2 (en) | Systems and methods for re-ranking displayed conversations | |
KR20060136476A (ko) | 대화-기반 이메일 시스템에서 대화들을 디스플레이하는방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20150724 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20160725 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20170727 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20190725 Year of fee payment: 8 |