KR20040089677A - 동시 멀티모달 통신을 위한 시스템 및 방법 - Google Patents

동시 멀티모달 통신을 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20040089677A
KR20040089677A KR10-2004-7013346A KR20047013346A KR20040089677A KR 20040089677 A KR20040089677 A KR 20040089677A KR 20047013346 A KR20047013346 A KR 20047013346A KR 20040089677 A KR20040089677 A KR 20040089677A
Authority
KR
South Korea
Prior art keywords
multimodal
user agent
modality
agent programs
session
Prior art date
Application number
KR10-2004-7013346A
Other languages
English (en)
Other versions
KR100643107B1 (ko
Inventor
그렉 존슨
세나카 발라스리야
제임스 페런스
제롬 잔케
래이누 피어스
데이비드 쿠카
딜라니 갈라제다라
Original Assignee
모토로라 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 모토로라 인코포레이티드 filed Critical 모토로라 인코포레이티드
Publication of KR20040089677A publication Critical patent/KR20040089677A/ko
Application granted granted Critical
Publication of KR100643107B1 publication Critical patent/KR100643107B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/493Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
    • H04M3/4938Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals comprising a voice browser which renders and interprets, e.g. VoiceXML
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/16Sound input; Sound output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72445User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for supporting Internet browser applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Computer And Data Communications (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

멀티모달 네트워크 요소(14)는 하나 이상의 디바이스(12, 16) 상에서 다른 사용자 에이전트 프로그램(30, 34)을 통해 동시 멀티모달 통신 세션을 용이하게 한다. 예를 들면, 스피치 엔진 및 호출/세션 종료를 포함하는 음성 게이트웨이(16)의 음성 브라우저(34)와 같이 음성 모드로 통신하는 사용자 에이전트 프로그램이 모바일 디바이스(12) 상에서 그래픽 브라우저(30)와 같이 다른 모달리티로 동작하는 다른 사용자 에이전트 프로그램과 동기화된다. 복수의 사용자 에이전트 프로그램(30, 34)이 세션 동안에 컨텐트 서버(18)와 동작가능하게 결합되어 동시 멀티모달 인터액션을 가능하게 한다.

Description

동시 멀티모달 통신을 위한 시스템 및 방법{SYSTEM AND METHOD FOR CONCURRENT MULTIMODAL COMMUNICATION}
핸드헬드 디바이스, 이동 전화기, 랩탑, PDA, 인터넷 가전, 비이동형 디바이스 및 다른 적절한 디바이스와 같은 통신 디바이스와 관련한 기술의 떠오르는 분야는 정보 및 서비스로의 액세스를 위한 멀티모달 인터액션의 어플리케이션이다. 통상, 통신 디바이스 상에 상주하는 것은 브라우저와 같은 적어도 하나의 사용자 에이전트 프로그램, 또는 사용자 인터페이스로서 동작할 수 있는 임의의 다른 적절한 소프트웨어이다. 사용자 에이전트 프로그램은 요구(사용자 에이전트 프로그램을 통해 또는 다른 디바이스 또는 소프트웨어 어플리케이션으로부터 입력됨)를 페치하는 것에 응답하여, 페치된 정보를 수신하고, 내부 또는 외부 접속을 통해 컨텐트 서버를 네비게이션하며, 정보를 사용자에게 제공할 수 있다. 사용자 에이전트 프로그램은 그래픽 브라우저, 음성 브라우저, 또는 본 기술분야의 통상의 기술자에 의해 주지되어 있는 임의의 다른 적절한 사용자 에이전트 프로그램일 수 있다. 그러한 사용자 에이전트 프로그램은 J2ME 어플리케이션, 네스케이프, 인터넷 익스플로러, 자바 어플리케이션, WAP 브라우저, 인스턴트 메시징, 멀티미디어 인터페이스, 윈도우즈 CE, 또는 임의의 다른 적절한 소프트웨어 구현을 포함하고, 이들로 제한되지 않는다.
멀티모달 기술은 사용자가 음성, 데이터, 비디오, 오디오 또는 다른 정보와 같은 정보, 및 이메일, 날씨 업데이트, 은행 거래 및 뉴스 또는 다른 정보를 사용자 에이전트 프로그램을 통해 하나의 모드로 액세스하고, 다른 모드로 정보를 수신할 수 있도록 허용한다. 특히, 사용자는 페치된 요구를 마이크로폰에 말하는 것과 같이, 하나 이상의 모달리티로 정보 페치 요구를 제출한 후, 사용자는 리턴된 정보를 표시 스크린 상에 뷰잉 포맷으로 제공하는 그래픽 브라우저와 같은 것을 통해, 페치된 정보를 동일한 모드(즉, 음성) 또는 다른 모드로 수신할 수 있다. 통신 디바이스 내에, 사용자 에이전트 프로그램은 네트워크 또는 다른 터미널 디바이스에 접속된 디바이스 상에 상주하는 표준 웹 브라우저 또는 다른 적절한 소프트웨어 프로그램과 유사한 방식으로 동작한다.
그러한 것으로서, 사용자가 세션 동안에 복수의 모달리티로 통신을 용이하게 하도록 하나 이상의 사용자 입력 및 출력을 활용할 수 있게 하는 멀티모달 통신 시스템이 제안되었다. 사용자 에이전트 프로그램은 다른 디바이스 상에 배치될 수 있다. 예를 들면, 음성 게이트웨이와 같은 네트워크 요소는 음성 브라우저를 포함한다. 예를 들면, 핸드헬드 디바이스는 WAP 브라우저 또는 다른 적절한 텍스트 기반 사용자 에이전트 프로그램과 같은 그래픽 브라우저를 포함할 수 있다. 그러므로, 멀티모달 성능으로, 사용자는 하나의 모드로 입력하고 다른 모드로 정보를 수신할 수 있다.
사용자 입력을 2개의 다른 모달리티로 제공하려고 시도하는, 예를 들면 음성 모드로 일부 정보를 입력하고 다른 정보를 촉각 또는 그래픽 인터페이스를 통해 입력하려고 시도하는 시스템이 제안되었다. 하나의 제안은 예를 들면 사용자가 우선 음성을 입력한 후 음성 입력이 완료된 후 짧은 메시지를 전송하도록 요구되는 직렬 비동기 접근법을 이용하는 것이다. 그러한 시스템의 사용자는 동일한 세션 동안에 모드를 수동으로 스위칭해야 한다. 그러므로, 그러한 제안은 귀찮은 것이다.
다른 제안된 시스템은 하나의 사용자 에이전트 프로그램 및 현재의 HTML 페이지내의 마크업 언어 태그를 이용하여, 예를 들면 사용자가 검색 단어를 타이핑하는 대신에 음성을 이용하여 웹 페이지를 네비게이션한 후 동일한 HTML 페이지가 사용자로 하여금 텍스트 정보를 입력할 수 있도록 허용하는 것이다. 예를 들면, 사용자가 단어 "도시"를 말하고 어드레스에 타이핑하여 컨텐트 서버로부터 가시적인 지도 정보를 얻는 것이다. 그러나, 그러한 제안된 방법은 통상 모달리티를 다르게 하는 멀티모드 입력들이 하나의 디바이스 상의 동일한 에이전트 프로그램에 입력되도록 강제한다(동일한 브라우저를 통해 입력됨). 그러므로, 음성 및 텍스트 정보가 통상 동일한 HTML 형식으로 입력되어 동일한 사용자 에이전트 프로그램을 통해 처리된다. 그러나, 이러한 제안은 단일 디바이스 상에서 동작하는 단일 사용자 에이전트 프로그램의 이용을 요구한다.
따라서, 제한된 처리 성능 및 저장 용량을 가지는 모바일 디바이스와 같은 덜 복잡한 디바이스에 대해, 복잡한 브라우저는 디바이스 성능을 저하시킬 수 있다. 또한, 그러한 시스템은 다른 사용자 에이전트 프로그램을 통해 정보의 동시 멀티모달 입력을 활용할 수 없다. 더구나, 다른 어플리케이션 또는 다른 디바이스 중에서 분산된 처리를 허용하는 다중 디바이스에 걸친 동시 멀티모달 입력을 제공하는 것이 바람직하다.
또 다른 제안은 멀티모달 게이트웨이 및 멀티모달 프록시를 이용하는 것으로서, 멀티모달 프록시는 컨텐트를 페치하여 통신 디바이스의 사용자 에이전트 프로그램(예를 들면, 브라우저) 및 예를 들면 네트워크 요소 내의 음성 브라우저에 컨텐트를 출력하여 시스템은 디바이스에 대한 음성 및 텍스트 출력을 모두 허용한다. 그러나, 그러한 접근법은 다른 모드의 페치된 정보를 단일 사용자 에이전트 프로그램 또는 브라우저에 출력하도록 요구하는 단일 사용자 에이전트 접근법이므로, 다른 어플리케이션을 통해 다른 모드로 사용자에 의해 정보의 동시 입력을 허용하지 않을 것으로 보인다.
따라서, 개선된 동시 멀티모달 통신 장치 및 방법에 대한 요구가 존재한다.
본 발명은 유사한 참조부호는 유사한 구성요소를 나타내는 첨부된 도면을 통해 예를 들어 예시되고 이들로 제한되지는 않는다.
본 발명은 일반적으로는 통신 시스템 및 방법에 관한 것으로, 특히 멀티모달 통신 시스템 및 방법에 관한 것이다.
도 1은 본 발명의 하나의 실시예에 따른 멀티모달 통신 시스템의 하나의 예를 예시하는 블록도이다.
도 2는 본 발명의 하나의 실시예에 따른 멀티모달 통신에 대한 방법의 하나의 예를 예시하는 플로우 차트이다.
도 3은 본 발명의 하나의 실시예에 따른 멀티모달 통신에 대한 방법의 하나의 예를 예시하는 플로우 차트이다.
도 4는 본 발명의 하나의 실시예에 따라 수신된 동시 멀티모달 입력 정보를 퓨징(fuse)하기 위한 방법의 하나의 예를 예시하는 플로우 차트이다.
도 5는 본 발명의 실시예에 따른 멀티모달 네트워크 요소의 하나의 예를 예시하는 블록도이다.
도 6은 본 발명의 하나의 실시예에 따른 멀티모달 세션 지속성을 유지하기 위한 방법의 하나의 예를 예시하는 플로우 차트이다.
도 7은 도 6에 도시된 플로우 차트의 일부를 예시하는 플로우 차트이다.
도 8은 본 발명의 하나의 실시예에 따른 동시 멀티모달 세션 상태 메모리 컨텐트의 하나의 예를 표시하는 블록도이다.
요약하면, 멀티모달 네트워크 요소는 하나 이상의 디바이스 상에서 다른 사용자 에이전트 프로그램을 통해 동시 멀티모달 통신 세션을 용이하게 한다. 예를 들면, 스피치 엔진 및 호출/세션 종료를 포함하는 음성 게이트웨이의 음성 브라우저와 같이 음성 모드로 통신하는 사용자 에이전트 프로그램이 모바일 디바이스 상에서 그래픽 브라우저와 같이 다른 모달리티로 동작하는 다른 사용자 에이전트 프로그램과 동기화된다. 복수의 사용자 에이전트 프로그램이 세션 동안에 컨텐트 서버와 동작가능하게 결합되어 동시 멀티모달 인터액션을 가능하게 한다.
멀티모달 네트워크 요소는 예를 들면 테스트 모드와 연관된 HTML 양식과 음성 모드와 연관된 보이스XML 양식과 같이, 다른 모드들과 연관된 다른 마크업 언어 양식을 획득하는 것과 같이, 서로에 대해 상이한 모달리티로 동작하는 복수의 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 획득한다. 멀티모달 네트워크 요소는 세션 동안에 사용자에 대한 복수의 사용자 에이전트 프로그램으로부터의 출력을 획득된 모달리티 특정 명령에 기초하여 동기화한다. 예를 들면, 음성 브라우저는 하나의 디바이스 상에서 오디오를 출력하도록 동기화되고 그래픽 브라우저는 동일하거나 또는 다른 디바이스 상에서 스크린 상에 표시를 출력하도록 동기화되어, 하나 이상의 사용자 에이전트 프로그램을 통해 사용자 입력을 동시에 수행하도록 허용한다. 사용자가 다른 모달리티로 동작하고 있는 복수의 사용자 에이전트 프로그램을 통해 입력 정보를 입력하는 경우, 동시에 다른 멀티모달 정보에 대한 요구에 응답하여, 사용자에 의해 입력되고 복수의 사용자 에이전트 프로그램으로부터 전송된 수신된 동시 멀티모달 입력 정보를 퓨징하거나 링크한다. 그러한 것으로서, 동시 멀티모달 입력은 다른 사용자 에이전트 프로그램을 통해 활용되어, 다중 디바이스 또는 다른 디바이스들이 동시 멀티모달 세션 동안에 이용되거나 또는 복수의 사용자 에이전트 프로그램을 채용하는 하나의 디바이스에서 이용될 수 있다. 다른 프록시는 멀티모달 네트워크 요소에 의해 다른 모달리티로 설정된 다른 사용자 에이전트 프로그램 각각과 통신하도록 설계된다.
도 1은 본 발명의 하나의 실시예에 따른 멀티모달 통신 시스템(10)의 하나의 예를 예시하고 있다. 본 예에서, 멀티모달 통신 시스템(10)은 통신 디바이스(12), 멀티모달 퓨젼 서버(14), 음성 게이트웨이(16), 및 웹 서버(18)와 같은 컨텐트 소스를 포함한다. 통신 디바이스(12)는 예를 들면, 인터넷 가전, PDA, 셀룰러 전화기, 케이블 셋탑 박스, 텔레메틱스 유닛, 랩탑 컴퓨터, 데스크탑 컴퓨터, 또는 임의의 다른 이동형 또는 비이동형 디바이스일 수 있다. 원하는 통신 타입에 따라, 통신 디바이스(12)는 무선 로컬 영역 또는 와이드 영역 네트워크(20), WAP/데이터 게이트웨이(22), 짧은 메시징 서비스 센터(SMSC/페이징 네트워크)(24), 또는 임의의 다른 적절한 네트워크와 동작가능한 통신 상태에 있을 수 있다. 마찬가지로, 멀티모달 퓨젼 서버(14)는 인터넷, 인트라넷, 멀티미디어 서버(MMS, 26), 인스턴트 메시징 서버(IMS, 28), 또는 임의의 다른 적절한 네트워크를 포함하는 임의의 적합한 디바이스, 네트워크 요소 또는 네트워크와 통신 상태에 있을 수 있다. 따라서, 통신 디바이스(12)는 통신 링크(21, 23 및 25)를 통해 적절한 네트워크와 동작가능한 통신 상태에 있다. 마찬가지로, 멀티모달 퓨전 서버(14)는 참조부호 27로 지정된 종래 통신 링크를 통해 다양한 네트워크에 적절하게 링크될 수 있다. 본 예에서, 음성 게이트웨이(16)는 음성 인식 엔진, 수서 문자인식 엔진, 안면 인식 엔진, 세션 컨트롤, 사용자 준비 알고리즘, 및 동작 및 유지보수 컨트롤러를 원하는 대로 포함할 수 있고, 이들로 제한되지 않는다. 본 예에서, 통신 디바이스(12)는 예를 들면 전화 회로(32)로서 도시된 마이크로폰 및 스피커를 포함하는 전화 회로와 함께, WAP 브라우저, 몸짓 인식, 촉각 인식 또는 임의의 다른 적절한 브라우저 형식의 가시적 브라우저(예를 들면, 그래픽 브라우저)와 같은 사용자 에이전트 프로그램(30)을 포함한다. 임의의 다른 적절한 구성도 이용될 수 있다.
음성 게이트웨이(16)는 전화 회로(32)의 스피커에 의한 출력을 위해 오디오정보를 적절한 형태로 출력하는 음성 브라우저와 같은 다른 사용자 에이전트 프로그램(34)을 포함한다. 스피커는 페이저 또는 다른 PDA와 같이 통신 디바이스(12)와는 다른 디바이스 상에 배치되어, 오디오는 하나의 디바이스 상에 출력되고 사용자 에이전트 프로그램(30)을 통한 가시 브라우저는 또 다른 디바이스 상에 제공되는 것을 알 수 있다. 또한, 사용자 에이전트 프로그램(30)이 음성 게이트웨이(16) 내에 존재하지만, 사용자 에이전트 프로그램(34)은 통신 디바이스(12, 음성 브라우저(36)로서 도시됨) 또는 임의의 다른 적절한 디바이스 내에 포함될 수도 있다는 것은 자명하다. 여기에 설명된 바와 같이, 동시 멀티모달 통신을 수용하기 위해서는, 복수의 사용자 에이전트 프로그램, 즉 사용자 에이전트 프로그램(30) 및 사용자 에이전트 프로그램(40)이 주어진 세션에서 서로에 대해 다른 모달리티로 동작한다. 따라서, 사용자는 개시된 서비스에 대해 참가하여 웹 서버(18) 또는 임의의 다른 서버(MFS(14)를 포함함)를 통해 액세스 가능한 모달리티 선호도 데이터베이스(36)에 모달리티 선호도를 미리 설정함으로써, 각 사용자 에이전트 프로그램의 모드를 선정할 수도 있다. 또한, 원한다면, 사용자는 본 기술분야에 주지되어 있는 바와 같이, 세션 동안에 주어진 사용자 에이전트 프로그램의 모달리티를 선택하거나, 또는 변경할 수도 있다.
동시 멀티모달 동기화 조정기(42)는 나머지 사용자 에이전트 프로그램에 대한 모달리티-특정 명령들에 연관된 통신 지연을 보상하기 위해, 복수의 사용자 에이전트 프로그램 중 하나에 대한 모달리티-특정 명령을 세션 동안에 일시적으로 저장하기 위한 버퍼 메모리를 포함할 수 있다. 그러므로, 예를 들면, 필요한 경우에, 동기화 조정기(42)는 시스템 지연 또는 다른 지연을 고려하고 대기하여 모달리티-특정 명령을 프록시에 출력함으로써 이들이 다른 사용자 에이전트 프로그램 상에서 동시에 렌더링된다.
또한, 원하는 경우, 사용자 에이전트 프로그램(30)은 입력 인터페이스를 제공하여 사용자가 특정 멀티-모드를 침묵하게 할 수 있도록 허용할 수 있다. 예를 들면, 디바이스 또는 사용자 에이전트 프로그램이 다중 모드 동작을 허용하는 경우, 사용자는 특정 지속기간 동안에 모드가 침묵되도록 지시할 수 있다. 예를 들면, 사용자에 대한 출력 모드가 음성이지만 사용자가 있는 환경이 시끄러운 경우, 사용자는 예를 들면 그 음성 브라우저에 출력을 침묵하도록 할 수 있다. 사용자로부터 수신되는 멀티-모드 침묵 데이터는 예를 들면 메모리(602, 도 5 참조)내에 멀티모달 퓨젼 서버(14)에 의해 저장되어, 주어진 세션 동안에 어느 모달리티가 침묵되어야 할지를 나타낸다. 그리고나서, 동기화 조정기(42)는 침묵하기로 식별된 이들 모달리티들에 대해 모달리티-특정 명령을 획득하는 것을 금지할 수 있다.
정보 페처(46, fetcher)는 복수의 사용자 에이전트 프로그램(30, 34)을 위한 멀티모드 어플리케이션(54)으로부터 모달리티-특정 명령(69)을 얻는다. 모달리티-특정 명령(68, 70)은 사용자 에이전트 프로그램(30, 34)에 전송된다. 본 실시예에서, 멀티모드 어플리케이션(54)은 다른 사용자 에이전트 프로그램, 즉 이하에 설명되는 다른 모달리티와 연관된 모달리티 특정 명령을 식별하는 데이터를 포함한다. 동기 멀티모달 동기화 조정기(42)는 정보 페처(46)에 동작가능하게 결합되어 모달리티-특정 명령을 수신한다. 동시 멀티모달 동기화 조정기(42)는 또한 복수의 프록시(38a - 38n)에 동작가능하게 결합되어 주어진 세션에 필요한 이들 프록시를 지정한다.
다른 사용자 에이전트 프로그램(30, 34)이 다른 디바이스 상에 존재하는 경우, 방법은 하나의 디바이스에 제1 모달리티-기반 마크업 언어 형식을 전송하고 제2 모달리티 마크업 언어-기반 형식을 하나 이상의 다른 디바이스에 전송하여 동일한 세션 동안에 다른 디바이스로부터 정보의 동시 엔트리를 사용자에 의해 다른 모달리티로 요구함으로써, 동시 멀티모달 입력 정보(67, 70)에 대한 요구를 전송하는 것을 포함한다. 이들 마크업 언어-기반 형식은 모달리티-특정 명령(68, 70)으로서 얻어졌다.
멀티모달 세션 컨트롤러(40)는 인커밍 세션을 검출하고, 세션에 응답하며, 세션 파라미터를 변형하고, 세션을 종료하며 디바이스 상의 세션 제어 알고리즘으로 세션 및 미디어 정보를 교환하는데 이용된다. 멀티모달 세션 컨트롤러(40)는 원하는 경우 세션에 대한 주 세션 종료 포인트일 수 있고, 사용자가 예를 들면 멀티모달 세션 컨트롤러(40)와 세션을 확립하는 음성 게이트웨이와 같은 다른 게이트웨이와 세션을 확립하기를 원하는 경우에, 제2 세션 종료 포인트일 수 있다.
동기화 조정기는 동시 멀티모달 입력 정보에 대한 요구를 포함하는 출력 동기화 메시지(47, 49)를 각 프록시(38a, 38n)에 전송하여, 그 출력을 복수의 에이전트 프로그램 각각에 유효하게 동기화한다. 프록시(38a, 38n)는 수신된 멀티모달 입력 정보(72, 74)를 포함하는 입력 동기화 메시지(51, 53)를 동시 동기화 조정기(42)에 전송한다.
동시 멀티모달 동기화 조정기(42)는 프록시, 또는 사용자 에이전트 프로그램이 성능을 가지고 있는 경우에 사용자 에이전트 프로그램으로 동기화 메시지(47, 49, 51 및 53)를 전송하고 수신한다. 프록시(38a 및 38n)가 다른 사용자 에이전트 프로그램으로부터 수신된 멀티모달 입력 정보(72 및 74)를 수신하는 경우, 프록시는 수신된 멀티모달 입력 정보(72 및 74)를 포함하는 입력 동기화 메시지(51 및 53)를 동기화 조정기(42)에 전송한다. 동기화 조정기(42)는 수신된 정보를 멀티모달 퓨젼 엔진(44)에 포워딩한다. 또한, 사용자 에이전트 프로그램(34)이 동기화 메시지를 멀티모달 동기화 조정기(42)에 전송하는 경우, 멀티모달 동기화 조정기(42)는 동기화 메시지를 세션 내에서 다른 사용자 에이전트 프로그램(30)에 전송한다. 동시 머티모덜 동기화 조정기(42)는 메시지 변환, 동기화 메시지 필터링을 수행하여, 동기화 시스템을 더 효율적으로 만든다. 동시 멀티모달 동기화 조정기(42)는 주어진 세션에서 이용되는 현재 사용자 에이전트 프로그램의 리스트를 유지하여, 동기화가 필요한 경우에 통지될 필요가 있는 것들을 추적한다.
멀티모달 퓨젼 서버(14)는 복수의 멀티모달 프록시(38a-38n), 멀티모달 세션 컨트롤러(40), 동시 멀티모달 동기화 조정기(42), 멀티모달 퓨젼 엔진(44), 정보(예를 들면, 모달리티 특정 명령) 페처(46), 및 음성XML 해석기(50)를 포함한다. 적어도 멀티모달 세션 컨트롤러(40), 동시 멀티모달 동기화 조정기(42), 멀티모달 퓨젼 엔진(44), 정보 페처(46), 및 멀티모달 마크업 언어(예를 들면, 음성XML) 해석기(50)는 하나 이상의 처리 디바이스 상에서 실행되는 소프트웨어 모듈로서 구현될 수 있다. 그러한 것으로서, 하나 이상의 처리 디바이스에 의해 판독될 때 하나이상의 처리 디바이스가 각 소프트웨어 모듈과 관련하여 여기에 기재된 기능들을 수행하도록 유발하는 실행가능한 명령을 포함하는 메모리가 개시된다. 그러므로, 멀티모달 퓨젼 서버(14)는 디지털 신호 처리기, 마이크로컴퓨터, 마이크로프로세서, 상태 머신, 또는 임의의 다른 적절한 처리 디바이스를 포함하고, 이들로 제한되지 않는 처리 디바이스를 포함한다. 메모리는 처리 디바이스에 의해 실행될 때 하나 이상의 처리 디바이스가 여기에 기재된 대로 동작하도록 유발하는 상태 또는 다른 데이터를 저장하는 ROM, RAM, 분산 메모리, 플래시 메모리, 또는 임의의 다른 적절한 메모리일 수 있다. 다르게는, 소프트웨어 모듈의 기능들은 하드웨어, 또는 하드웨어, 소프트웨어 및 펌웨어의 원하는 대로의 임의의 적절한 조합으로 구현될 수 있다.
멀티모달 마크업 언어 해석기(50)는 특히 멀티모달 어플리케이션(54)에 의해 제공되는 마크업 언어를 실행하는 상태 머신 또는 다른 적절한 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 적절한 조합일 수 있다.
도 2는 본 예에서, 멀티모달 퓨젼 서버(14)에 의해 실행되는 멀티모달 통신을 위한 방법을 예시하고 있다. 그러나, 여기에 기재된 임의의 단계들은 임의의 적절한 순서로 임의의 적절한 디바이스 또는 복수의 디바이스들에 의해 실행될 수 있다는 것은 자명하다. 현재의 멀티모달 세션에 대해, 사용자 에이전트 프로그램(30, 예를 들면 WAP 브라우저)은 요구(52)를 웹 서버(18)에 전송하여 웹 서버(18)에 의해 액세스가능한 동시 멀티모달 어플리케이션(54)으로부터 컨텐트를 요구한다. 이것은 URL에 타이핑하거나 아이콘을 클릭하거나 또는 임의의 다른 관례적인메커니즘을 이용하여 수행될 수 있다. 점선(52)에 의해 도시된 바와 같이, 각 사용자 에이전트 프로그램(30, 34)은 사용자 모달리티 정보를 마크업 해석기(50)에 전송할 수 있다. 컨텐트 서버로서 기능하는 웹 서버(18)는 사용자 가입 프로세스를 통해 동시 멀티모달 서비스에 이전에 가입한 모달리티 선호도 데이터베이스(36)로부터 통신 디바이스(12)의 멀티모달 선호도(55)를 얻는다. 그리고나서, 웹 서버(18)는 데이터베이스(36)로부터 사용자 선호도를 포함하는 통지(56)를 통해 멀티모달 퓨젼 서버(14)에 통지하고, 예를 들면 동시 멀티모달 통신에서 어느 사용자 에이전트 프로그램이 이용되고 있는 지와 각 사용자 에이전트 프로그램이 어느 모드로 설정되어 있는지를 나타낸다. 본 예에서, 사용자 에이전트 프로그램(30)은 텍스트 모드로 설정되고, 사용자 에이전트 프로그램(34)은 음성 모드로 설정된다. 그리고나서, 동시 멀티모드 동기화 조정기(42)는 세션 동안에 각 사용자 에이전트 프로그램(30 및 34)에 복수의 멀티모달 프록시(38a-38n) 중 어느 것이 이용되는지를 결정한다. 그러한 것으로, 동시 멀티모드 동기화 조정기(42)는 멀티모드 프록시(38a)를 텍스트 프록시로 지정하여, 텍스트 모드로 설정된 사용자 에이전트 프로그램(30)과 통신한다. 마찬가지로, 동시 멀티모드 동기화 조정기(42)는 프록시(38n)를 멀티모드 프록시로서 지정하여, 음성 모달리티로 동작하고 있는 사용자 에이전트 프로그램(34)에 대해 음성 정보를 통신한다. 웹 페이지 페처(46)로서 도시된 정보 페처는 동시 멀티모달 어플리케이션(54)과 연관된 웹 서버(18)로부터 마크업 언어 형식 또는 다른 데이터와 같은 모달리티 특정 명령을 얻는다.
예를 들면, 멀티모달 어플리케이션(54)이 사용자에게 음성 모드 및 텍스트모드 양쪽으로 정보를 입력하도록 요구하는 경우, 정보 페처(46)는 연관된 HTML 마크업 언어 형식을 얻어, 사용자 에이전트 프로그램(30)에 대해 출력하고 연관된 음성XML 형식을 얻어 요구(66)를 통해 사용자 에이전트 프로그램(34)에 출력한다. 그리고나서, 이들 모달리티 특정 명령들은 사용자 에이전트 프로그램에 의해 출력으로서 렌더링된다(예를 들면, 스크린 또는 스피커를 통해 출력된다). 동시 멀티모달 동기화 조정기(42)는 세션 동안에 모달리티 특정 명령에 기초하여 복수의 사용자 에이전트 프로그램(30 및 34)으로부터 출력을 동기화한다. 예를 들면, 동시 멀티모달 동기화 조정기(42)는 다른 모달리티를 나타내는 적절한 마크업 언어 형식을 적절한 시간에 각 사용자 에이전트 프로그램(30 및 34)에 전송하여, 음성이 통신 디바이스(12) 상에서 렌더링될 때 텍스트가 사용자 에이전트 프로그램(30)을 통해 스크린 상에 출력되어 동시에 렌더링된다. 예를 들면, 멀티모달 어플리케이션(54)은 텍스트 브라우저를 통해 어떤 정보가 입력될 것인지에 관해 사용자에게 사용자 에이전트 프로그램(34)을 통해 가청 명령의 형태로 명령을 제공하고, 그 동안에 동시에 사용자 에이전트 프로그램(30)으로부터의 텍스트 입력을 기다린다. 예를 들면, 멀티모달 어플리케이션(54)은 "please enter your desired destination city followed by your departure time"이라는 단어들의 음성 출력을 요구하면서, 동시에 도시에 대해 "C"로서 지정된 필드 및 목적지에 대해 다음 라인에 "D"로서 지정된 필드로 통신 디바이스 상의 디스플레이 상에 출력되는 사용자 에이전트 프로그램(30)을 통해 필드를 제공한다. 본 예에서, 멀티모달 어플리케이션은 사용자에 의해 동시 멀티모달 입력을 요구하지 않고, 하나의 모드 즉 텍스트 모드를 통한입력만을 요구하고 있다. 다른 모드는 사용자 명령들을 제공하는데 이용되고 있다.
다르게는, 멀티모달 어플리케이션(54)이 사용자가 복수의 사용자 에이전트 프로그램을 통해 입력 정보를 입력하라고 요구하는 경우, 멀티모달 퓨젼 엔진(14)은 세션 동안에 다른 멀티모달 사용자 에이전트 프로그램에 동시에 입력되는 사용자 입력을 융합시킨다. 예를 들면, 사용자가 가시적인 지도 상에서 2개의 지점을 클릭하면서 "directions from here to there"의 단어들을 말하는 경우, 음성 브라우저 또는 사용자 에이전트 프로그램(34)은 수신된 입력 정보(74)로서 시작 위치 필드를 "here"로 채우고, 목적지 위치 필드를 "there"로 채우며, 그 동안에 그래픽 브라우저, 즉 사용자 에이전트 프로그램(30)은 시작 위치 필드를 지도 상의 제1 클릭 지점의 지리적 위치(예를 들면, 위도/경도)로 채우고, 목적지 위치 필드를 지도 상의 제2 클릭 지점의 지리적 위치(예를 들면, 위도/경도)로 채운다. 멀티모달 퓨젼 엔진(44)은 이러한 정보를 얻어 다른 모달리티로 동작하고 있는 다수의 사용자 에이전트 프로그램으로부터 사용자에 의해 입력되는 입력 정보를 융합하고, 단어 "here"가 제1 클릭 지점의 지리적 위치에 대응하고 단어 "there"는 제2 클릭 지점의 지리적 위치(위도/경도)에 대응하는지를 결정한다. 이와 같이, 멀티모달 퓨젼 엔진(44)은 사용자 명령의 완전한 정보 셋트를 가지고 있다. 멀티모달 퓨젼 엔진(44)은 이들이 동시 멀티모달 통신과 연관된 완전한 정보를 가질 수 있도록 융합된 정보(60)를 사용자 에이전트 프로그램(30 및 34)에 다시 전송하기를 원한다. 이 때, 사용자 에이전트 프로그램(30)은 이러한 정보를 컨텐트 서버(18)에 제출하여원하는 정보를 얻는다.
블록 200에 도시된 바와 같이, 세션에 대해, 방법은 복수의 사용자 에이전트 프로그램 각각에 대해 각 모달리티에 특정된 마크업 언어의 다른 타입을 얻는 것과 같은 것에 의해, 서로에 대해 다른 모달리티로 동작하는 복수의 사용자 에이전트 프로그램에 대한 모달리티 특정 명령(68, 70)을 얻는 것을 포함한다. 블록 202에 도시된 바와 같이, 방법은 사용자에 대해 동시 멀티모달 동작을 용이하게 하기 위해 모달리티-특정 명령에 기초하여 사용자 에이전트 프로그램과 같은 출력을 동기화하는 것을 포함한다. 그러한 것으로서, 마크업 언어 형식의 렌더링은 복수의 사용자 에이전트 프로그램으로부터의 출력이 복수의 사용자 에이전트 프로그램을 통해 다른 모달리티로 동시에 렌더링되도록 동기화된다. 블록 203에 도시된 바와 같이, 동시 멀티모달 동기화 조정기(42)는 다른 사용자 에이전트 프로그램(30 및 34)에 대한 모달리티 특정 명령(68, 70) 세트가 사용자에 의해 다른 사용자 에이전트 프로그램을 통해 다른 모달리티로 정보의 동시 입력을 요구할지를 결정한다. 그렇지 않다면, 블록 205에 도시된 바와 같이, 동시 멀티모달 동기화 조정기(42)는 단지 하나의 사용자 에이전트 프로그램으로부터 지정 서버 또는 웹 서버(18)에 임의의 수신된 입력 정보를 포워딩한다.
그러나, 블록 204에 도시된 바와 같이, 다른 사용자 에이전트 프로그램(30, 34)에 대한 모달리티-특정 명령의 세트(68, 70)가 다른 모달리티에서 동시에 입력되는 사용자 입력을 요구하는 경우, 방법은 사용자가 입력하고 사용자 에이전트 프로그램(30 및 34)에 의해 재전송되는 수신된 동시 멀티모달 입력 정보를 융합하여다른 모달리티로 동작하는 다른 사용자 에이전트 프로그램과 연관된 융합된 멀티모달 응답(60)을 생성한다. 블록 206에 도시된 바와 같이, 방법은 융합된 멀티모달 응답(60)을 마크업 언어 해석기(50)의 현재 실행중인 어플리케이션(61)에 다시 포워딩하는 것을 포함한다. 현재 실행 중인 어플리케이션(61, 도 5 참조)은 해석기(50)의 일부로서 실행중인 어플리케이션(54)으로부터의 마크업 언어이다.
도 1 및 3을 참조하면, 멀티모달 통신 시스템(10)의 더 상세한 동작이 설명된다. 블록 300에 도시된 바와 같이, 통신 디바이스(12)는 사용자 에이전트 프로그램(30)을 통해 웹 컨텐트 또는 다른 정보에 대한 요구(52)를 전송한다. 블록 302에 도시된 바와 같이, 컨텐트 서버(18)는 식별된 사용자가 세션에 대한 디바이스 선호도 및 모드 선호도를 얻도록 모달리티 선호도 데이터베이스(36)로부터 멀티모달 선호도 데이터(55)를 얻는다. 블록 304에 도시된 바와 같이, 방법은 컨텐트 서버가 멀티모달 퓨젼 서버(14)에 어느 사용자 에이전트 어플리케이션이 주어진 동시 다른 멀티모달 통신 세션에 대해 어느 디바이스 상에서, 어떤 모드로 동작하고 있는지를 통지하는 것을 포함한다.
상기 지적되고 블록 306에 도시된 바와 같이, 동시 멀티모달 동기화 조정기(42)는 모달리티 선호도 데이터베이스(36)로부터의 모달리티 선호도 정보(55)에 기초하여 각 다른 모달리티에 대해 각 프록시를 결정하도록 설정된다. 블록 308에 도시된 바와 같이, 방법은 원하는 경우에 멀티모달 세션 컨트롤러(40)를 통해 각 사용자 에이전트 프로그램에 대한 사용자 모드 지정을 수신하는 것을 포함한다. 예를 들면, 사용자는 원하는 모드를 변경하여 모달리티 선호도 데이터베이스(36)에저장된 미리 설정된 모달리티 선호도(55)와 다르게 할 수 있다. 이것은 관례적인 세션 메시징을 통해 수행될 수 있다. 원하는 사용자 에이전트 프로그램이 다른 디바이스 상에 존재하는 경우와 같이, 사용자가 특정 사용자 에이전트 프로그램에 대해 원하는 모드를 변경했다면, 다른 마크업 언어 형식과 같이, 다른 모달리티-특정 명령이 요구된다. 사용자 모달리티 지정이 변경되는 경우, 정보 페처(46)는 사용자 에이전트 어플리케이션에 대한 선택된 모달리티에 기초하여 적절한 모달리티-특정 명령을 페치하고 요구한다.
블록 310에 도시된 바와 같이, 정보 페처(46)는 각 사용자 에이전트 프로그램 및 즉 각 모달리티에 대해 페치 요구(66)로서 도시된 컨텐트 서버(18)로부터의 모달리티 특정 명령을 페치한다. 그러므로, 정보 페처(46)를 통한 멀티모달 퓨젼 서버(14)는 다른 모달리티를 나타내는 마크업 언어를 획득하여, 각 사용자 에이전트 프로그램(30 및 34)은 마크업 언어에 기초하여 정보를 다른 모달리티로 출력할 수 있다. 그러나, 멀티모달 퓨젼 서버(14)는 단지 마크업 언어 기반 정보가 아니라, 또한 임의의 적합한 모달리티-특정 명령을 포함할 수 있다.
모달리티-특정 명령이 각 사용자 에이전트 프로그램에 대해 컨텐트 서버(18)로부터 페치되고 어떠한 CMMT도 모달리티 특정 명령(68, 70)과 연관되지 않는 경우, 수신된 모달리티 특정 명령(69)이 트랜스코더(608, 도 5 참조)에 전송된다. 트랜스코더(608)는 수신된 모달리티 특정 명령을 해석기(50)에 의해 이해되는 베이스 마크업 언어 형식으로 트랜스코딩하고, 다른 모달리티(610)에 대해 모달리티 특정 명령을 식별하는 데이터를 가지는 베이스 마크업 언어 형식을 생성한다. 그러므로, 트랜스코더는 모달리티 특정 명령을 트랜스코딩하여 다른 모달리티로 동작하는 또 하나의 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 식별하는 데이터를 포함한다. 예를 들면, 해석기(50)가 음성XML과 같은 베이스 마크업 언어를 이용하고 어플리케이션(54)으로부터의 모달리티 특정 명령의 하나의 세트가 음성XML로 되어 있고 나머지는 HTML로 되어 있는 경우, 트랜스코더(606)는 HTML 형식이 얻어질 수 있는 URL을 식별하는 음성XML 형식, 또는 실제의 HTML 형식 자체에 CMMT를 내장시킨다. 뿐만 아니라, 모달리티 특정 명령 중 어느 것도 베이스 마크업 언어로 되어 있지 않은 경우, 모달리티 특정 명령 세트가 베이스 마크업 언어로 번역되고, 그런 다음 모달리티 특정 명령의 다른 세트가 CMMT에 의해 참조된다.
다르게는, 멀티모달 어플리케이션(54)은 필요한 CMMT 정보를 제공하여, 동시 멀티모달 세션 동안에 복수의 사용자 에이전트 프로그램에 의한 출력의 동기화를 용이하게 한다. 각 사용자 에이전트 프로그램에 대한 모달리티 특정 명령의 하나의 예가 마크업 언어 형식으로 이하에 도시되어 있다. 마크업 언어 형식은 멀티모달 어플리케이션(54)에 의해 제공되고 멀티모달 퓨젼 서버(14)에 의해 이용되어, 동시 멀티모달 통신 세션을 제공한다. 멀티모달 음성XML 해석기(50)는 멀티모달 어플리케이션(54)이 베이스 언어로서 음성XML을 이용하는 것으로 가정한다. 사용자에 대한 복수의 사용자 에이전트 프로그램에 의한 출력의 동기화를 용이하게 하기 위해, 멀티모달 어플리케이션(54)은 음성XML 형식의 확장이나 HTML 형식으로의 인덱스와 같은 동시 멀티모달 태그(CMMT)를 포함하거나 인덱스하도록 저작될 수 있다. CMMT는 모달리티를 식별하고 식별된 모달리티에서 사용자 에이전트 프로그램들 중 하나에 의해 출력되는 실제 HTML 형식과 같은 정보를 포인팅하거나 포함한다. CMMT는 또한 그 존재는 다른 사용자 에이전트 프로그램으로 다른 모달리티 특정 명령을 동기화할 필요성을 나타낸다는 점에서 멀티모달 동기화 데이터로서 기능한다.
예를 들면, 음성XML이 멀티모달 어플리케이션(54)의 베이스 언어인 경우, CMMT는 텍스트 모드를 가리킬 수 있다. 본 예에서, CMMT는 사용자 에이전트 프로그램에 의해 출력된 HTML로 된 텍스트를 포함하는 URL을 포함하거나, CMMT의 일부로서 HTML을 포함할 수 있다. CMMT는 마크업 언어의 속성 확장자의 특성을 가질 수 있다. 멀티모달 음성XML 해석기(50)는 정보 페처(46)를 이용하여 모달리티 특정 명령을 페치하고, 멀티모달 어플리케이션으로부터의 페치된 모달리티 특정 명령을 분석하여(본 예에서는, 실행하여) CMMT를 검출한다. 일단 검출되는 경우, 멀티모달 음성XML 해석기(50)는 CMMT를 해석하고 필요한 경우에 텍스트 모드를 위한 HTML과 같은 임의의 다른 모달리티 특정 명령을 얻는다.
예를 들면, CMMT는 그래픽 브라우저에 대해 텍스트 정보를 어디에서 얻을 지를 가리킬 수 있다. 그래픽 브라우저가 "from city" 및 "to city"를 표시하는 동안에, 음성 브라우저에게 "where from" 및 "where to"를 묻는 음성을 출력하도록 요구하는 동시 멀티모달 어플리케이션에 대해 음성XML의 형식으로 된 동시 멀티모달 여정 어프리케이션에 대한 모달리티 특정 명령의 예를 도시하는 표가 아래에 제시된다. 다른 브라우저를 통해 사용자에 의해 입력되는 수신된 동시 멀티모달 정보는 "from city" 및 "to city"로 지정된 필드에 의해 예측된다.
그러므로, 상기 마크업 언어 형식은 적어도 하나의 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 나타내는 베이스 마크업 언어로 저작되고, CMMT는 다른 모달리티로 동작하는 또 하나의 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 지정하는 확장자이다.
블록 311에 도시된 바와 같이, 사용자가 선호도를 변경한 경우에, 방법은 프록시가 변경과 일치하도록 리셋하는 것을 포함한다. 블록 312에 도시된 바와 같이, 멀티모달 퓨젼 서버(14)는 청취 포인트가 도달되었는지를 결정한다. 그렇다면, 블록 314에 도시된 바와 같이, 다음 상태로 들어간다. 그렇다면, 프로세스는 종료한다. 그렇지 않다면, 방법은 다른 사용자 에이전트 프로그램에 대한 모달리티-특정 명령을 동기화하는 것을 포함한다. 본 예에서, 멀티모달 음성XML 해석기(50)는 복수의 사용자 에이전트 프로그램에 의한 동기화된 출력을 위해 사용자 에이전트 프로그램(30)에 대한 HTML 및 사용자 에이전트(34)에 대한 음성XML을 동시 멀티모달 동기화 조정기(42)에 출력한다. 이것은 예를 들면 상기 지적한 바와 같이 청취 포인트의 발생에 기초하여 수행될 수 있다. 이것은 블록 316에 도시되어 있다.
블록 318에 도시된 바와 같이, 방법은 동일한 세션 동안에 사용자에 의해 다른 모달리티로 사용자 입력 정보를 요구하도록 동기화된 모달리티-특정 명령(68 및 70)을 대응하는 프록시(38a 및 38n)에 예를 들면 동시 멀티모달 동기화 조정기(42)에 의해 전송하는 것을 포함한다. 동기화된 요구(68 및 70)는 각 사용자 에이전트 프로그램(30 및 34)에 전송된다. 예를 들면, 다른 사용자 에이전트 프로그램과 연관된 복수의 입력 모달리티에 대응하는 동시 다른 모달리티 입력 정보에 대한 요구가 모달리티 특정 명령(68 및 70)을 포함하는 동기화된 요구로서 도시되어 있다. 이들은 예를 들면 마크업 언어 형식으로 동기화될 수 있다.
일단 사용자 에이전트 프로그램(30 및 34)이 모달리티-특정 명령을 동시에 렌더링하면, 방법은 블록 320에 도시된 바와 같이 타임 아웃 기간 내에 사용자 입력이 수신되었는지 여부 또는 다른 이벤트가 발생했는지를 결정한다. 예를 들면, 멀티모달 퓨젼 엔진(44)은 기간을 대기하여, 사용자에 의해 입력되는 멀티모달 입력 정보가 융합을 위해 복수의 사용자 에이전트 프로그램으로부터 적절하게 수신되었는지 여부를 결정한다. 이러한 대기 기간은 각 사용자 에이전트 프로그램의 모달리티 설정에 따른 다른 기간일 수 있다. 예를 들면, 사용자는 음성 및 텍스트 정보 모두를 동시에 입력할 예정이지만 멀티모달 퓨젼 엔진이 기간 내의 융합을 위한 정보를 수신하지 못하는 경우, 에러가 발생되었다고 가정한다. 더구나, 음성 정보가 음성 게이트웨이(16)를 통해 처리되는데 더 많은 시간이 걸리므로, 멀티모달 퓨젼 엔진(44)은 텍스트 정보보다 음성 정보가 리턴되는데 더 많은 시간이 경과하도록 허용한다.
본 예에서, 사용자에게 사용자 에이전트 프로그램(30)을 통해 텍스트를 입력하고, 사용자 에이전트 프로그램(34)에 음성 정보를 동시에 제공하기 위해 마이크로폰에 말하라고 요구된다. 사용자 에이전트 프로그램(30 및 34)으로부터 수신된 바와 같은 수신된 동시 멀티모달 입력 정보(72 및 74)는 적절한 통신 링크를 통해 각 프록시에 패싱된다. 유의할 점은, 사용자 에이전트 프로그램(34)과 디바이스(12)의 마이크로폰 및 스피커 사이에 참조부호 76으로 지정된 통신은 PCM 포맷 또는 임의의 다른 적절한 포맷으로 통신되고, 본 예에서는 사용자 에이전트 프로그램에 의해 출력되는 모달리티-특정 명령 포맷으로는 아니다.
사용자가 텍스트 브라우저 및 음성 브라우저를 통해 동시에 정보를 입력하여 멀티모달 퓨젼 엔진(44)이 복수의 사용자 에이전트 프로그램으로부터 전송된 동시 멀티모달 입력 정보를 수신한 경우, 멀티모달 퓨젼 엔진(44)은 블록 322에 도시된 바와 같이 사용자로부터 수신된 입력 정보(72 및 74)를 융합한다.
도 4는 멀티모달 퓨젼 엔진(44)의 동작의 한 예를 예시하고 있다. 예시의 목적을 위해, 하나의 이벤트에 대해, "no input"은 이 모드를 통해 사용자에 의해 입력된 것이 아무것도 없음을 의미한다. "no match"는 입력이 되었지만 예상된 값이 아니라는 것을 의미한다. 결과는 사용자에 의한 성공적인 입력으로부터의 슬롯(또는 필드) 이름 및 대응하는 값 쌍의 세트이다. 예를 들면, 성공적인 입력은 "City=Chicago", "state=Illinois", "Street"="first street", 및 예를 들면 0% 내지 100%인 신뢰 가중 인수일 수 있다. 앞서서 지적한 바와 같이, 멀티모달 퓨젼 엔진(44)이 정보를 융합할지 여부는 슬롯 이름(예를 들면, 변수) 및 값 쌍의 수신 또는 예상 수신 간의 시간량 또는 다른 이벤트의 수신에 기초하여 좌우될 수 있다. 방법은 신뢰 레벨이 수신된 정보에 할당된 것으로 가정한다. 예를 들면, 동기화 조정기는 모달리티 및 정보 도달 시간에 기초하여 신뢰를 가중한다. 예를 들면, 동일한 세션 동안에 동일한 슬롯 데이터가 다른 모드를 통해 입력될 수 있는 경우에(예를 들면, 거리 이름을 말하고 이를 타이핑함) 말로 표현된 데이터보다 타이핑된 데이터가 더 정확한 것으로 가정한다. 동기화 조정기는 수신된 시간 및 수신된 개별 결과들의 신뢰 값들에 기초하여 동시 다른 멀티모달 정보에 대한 요구에 응답하여 저농된 복수의 사용자 에이전트 프로그램들 중 하나로부터 전송된 수신된 멀티모달 입력 정보를 조합한다.
블록 400에 도시된 바와 같이, 방법은 이벤트 또는 비음성 모드로부터의 결과가 있었는지 여부를 결정하는 것을 포함한다. 그렇다면, 블록 402에 도시된 바와 같이, 방법은 "no input" 및 "no match"이벤트를 제외하고 임의의 모드로부터 임의의 이벤트가 있었는지 여부를 결정하는 것을 포함한다. 예라면, 방법은 블록 404에 도시된 바와 같이 해석기(50)에 수신된 제1 그러한 이벤트를 리턴하는 것을 포함한다. 그러나, "no input" 및 "no match"를 제외하고 사용자 에이전트 프로그램으로부터 이벤트가 존재하지 않은 경우, 프로세스는 블록 406에 도시된 바와 같이 멀티모달 퓨젼 엔진에 대한 2개 이상의 결과를 전송한 임의의 모드에 대해 수신된 시간 순서로 그 모드의 결과를 조합하는 것을 포함하는 방법을 포함한다. 이것은 사용자가 동일한 슬롯에 대해 입력을 재입력하는 경우에 유용하다. 주어진 슬롯 이름에 대한 나중 값은 이전 값들을 무시한다. 멀티모달 퓨젼 엔진은 이를 구성하는 개별적인 결과들의 신뢰 가중에 기초하여 모드의 결과 신뢰 가중을 조정한다. 각 모달리티에 대해, 최종 결과는 각 슬롯 이름에 대한 하나의 답변이다. 방법은 블록 408에 도시된 바와 같이, 블록 406으로부터 임의의 결과를 취하고 이들을 모든 모드에 대한 하나의 조합된 결과로 조합하는 것을 포함한다. 방법은 최소 신뢰 결과로 시작하여 최대 신뢰 결과로 진행하는 것을 포함한다. 융합된 결과의 각 슬롯 이름은 그 슬롯의 정의를 가지는 최대 신뢰 입력 결과에 속하는 슬롯 값을 수신한다.
블록 410에 도시된 바와 같이, 방법은 이제 조합된 결과가 있는지, 환언하면 사용자 에이전트 프로그램이 멀티모달 퓨젼 엔진(44)에 대한 결과를 전송했는지를 결정한다. 그렇다면, 방법은 블록 412에 도시된 바와 같이, 조합된 결과를 컨텐트 서버(18)에 리턴하는 것을 포함한다. 그렇지 않다면, 블록 414에 도시된 바와 같이, 제로 또는 더 이상의 "no input" 및 "no match"이벤트가 있음을 의미한다. 방법은 임의의 "no match"이벤트가 있는지를 결정하는 것을 포함한다. 그렇다면, 방법은 블록 416에 도시된 바와 같이 no match 이벤트를 리턴하는 것을 포함한다. 그러나, "no match"이벤트가 존재하지 않는 경우, 방법은 블록 418에 도시된 바와 같이 "no input"이벤트를 해석기(50)에 리턴하는 것을 포함한다.
블록 400으로 리턴하여, 이벤트 또는 비음성 모드로부터의 결과가 없는 경우, 방법은 음성 모드가 결과를 리턴했는지, 즉 사용자 에이전트 프로그램(34)이 수신된 정보(74)를 생성했는지를 결정하는 것을 포함한다. 이것은 블록 420에 도시되어 있다. 그렇다면, 블록 422에 도시된 바와 같이, 방법은 수신된 입력 정보의 음성 응답을 멀티모달 어플리케이션(54)에 리턴하는 것을 포함한다. 그러나, 음성 브라우저(예를 들면, 사용자 에이전트 프로그램)가 정보를 출력하지 않은 경우, 방법은 블록 424에 도시된 바와 같이 음성 모드가 이벤트를 리턴했는지를 결정하는 것을 포함한다. 예라면, 그 이벤트가 블록 426에 도시된 바와 같이 멀티모달 어플리케이션(54)에 보고된다(참조부호 73). 음성 모드 이벤트가 전혀 생성되지 않았다면, 방법은 블록 428에 도시된 바와 같이 "no input"이벤트를 리턴하는 것을 포함한다.
이하의 표 2는 가상의 데이터에 적용된 도 4의 방법의 예를 예시하고 있다.
예를 들면, 블록 400에서 비음성 모드로부터 어떠한 결과도 수신되지 않은 경우,모드는 블록 402로 진행한다. 블록 402에서 , 어떠한 이벤트도 수신되지 않으면, 방법은 블록 406으로 진행한다. 블록 406에서, 퓨젼 엔진은 TextModeCollectedData를 슬롯당 하나의 응답으로 붕괴시킨다. VoiceModeCollectedData는 그대로 유지된다.
VoiceModeCollectedData
STREETNAME=Michigan
TIMESTAMP=0
CONFIDENCELEVEL=0.85
NUMBER=112
TIMESTAMP=0
CONFIDENCELEVEL=0.99
OVERALLCONFIDENCE=0.85
음성 모드는 그대로 유지된다. 그러나, 0.85가 결과 셋트에서 최하위 신뢰이므로 0.85의 전체 신뢰값이 할당된다.
TextModeCollectedData
STREETNAME=Michigan
TIMESTAMP=0
CONFIDENCELEVEL=1.0
STREETNAME=LaSalle
TIMESTAMP=1
CONFIDENCELEVEL=1.0
텍스트 모드는 그 슬롯이 LaSalle의 나중 시간스탬프로 채워졌으므로 수집된 데이터로부터 Michigan을 제거한다. 최종 결과를 이와 같이 보인다. 1.0이 결과 셋트에서 최하위 신뢰 레벨이므로 1.0의 전체 신뢰 레벨이 할당된다.
TextModeCollectedData
STREETNAME=LaSalle
TIMESTAMP=1
CONFIDENCELEVEL=1.0
OVERALLCONFIDENCE=1.0
이어지는 것은 블록 408에 전송된 데이터이다.
VoiceModeCollectedData
STREETNAME=Michigan
TIMESTAMP=0
CONFIDENCELEVEL=0.85
NUMBER=112
TIMESTAMP=0
CONFIDENCELEVEL=0.99
OVERALLCONFIDENCE=0.85
TextModeCollectedData
STREETNAME=LaSalle
TIMESTAMP=1
CONFIDENCELEVEL=1.0
OVERALLCONFIDENCELEVEL=1.0
블록 408에서, 2가지 모드가 하나의 리턴 결과로 유효하게 융합된다.
우선, 최하위 신뢰 레벨의 전체 결과가 취해져 최종 결과 구조에 도입된다.
FinalResult
STREETNAME=Michigan
CONFIDENCELEVEL=0.85
NUMBER=112
CONFIDENCELEVEL=0.99
그리고나서, 다음 최하위 결과의 임의의 요소가 최종 결과로 대체된다.
FinalResult
STREETNAME=LaSalle
CONFIDENCELEVEL=1.0
NUMBER=112
CONFIDENCELEVEL=0.99
이러한 최종 결과는 2가지 모달리티의 융합으로부터 나타나고, 이는 다음에 무엇을 할지를 결정하는 해석기에 전송된다(웹으로부터 더 많은 정보를 페치하거나 더 많은 정보를 결정하는 것은 사용자로부터 요구되고 이들 현재 상태에 기초하여 재-프롬프트한다.)
도 5는 동시 멀티모달 세션 지속성 컨트롤러(600) 및 동시 멀티모달 세션 지속성 컨트롤러(600)에 결합되는 동시 멀티모달 세션 상태 메모리(602)를 포함하는 멀티모달 퓨젼 서버(14)의 다른 실시예를 예시하고 있다. 동시 멀티모달 모덜 세션 지속성 컨트롤러(600)는 적절한 처리 디바이스 상에서 운용되는 소프트웨어 모듈이거나, 임의의 적절한 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 적절한 조합일 수 있다. 동시 멀티모달 세션 지속성 컨트롤러(600)는 비-세션 조건 동안에 사용자별 기반으로 동시 멀티모달 세션 상태 정보(604)를 데이터베이스 또는 다른 적절한 데이터 구조의 형태로 유지한다. 동시 멀티모달 세션 상태 정보(604)는 세션 동안에 다른 동시 모달리티 통신을 위해 구성된 복수의 사용자 에이전트 프로그램의 상태 정보이다. 동시 멀티모달 세션 지속성 컨트롤러(600)는 동시 멀티모달 세션 상태 정보(604)를 액세스하는 것에 응답하여 이전에 종료된 동시 멀티모달 세션을 재-확립한다. 멀티모달 세션 컨트롤러(40)는 사용자가 세션에 참여했을 때 동시 멀티모달 세션 지속성 컨트롤러(600)에 통지한다. 멀티모달 세션 컨트롤러(40)는 또한 동시 멀티모달 동기화 조정기와 통신하여, 오프라인 디바이스와의 통기화를 제공하거나 동시 멀티모달 세션을 재확립하는데 필요한 임의의 사용자 에이전트 프로그램과 동기화한다.
동시 멀티모달 세션 지속성 컨트롤러(600)는 예를 들면 이전 동시 멀티모달 통신 세션 동안에 주어진 모드에 이용되는 프록시를 가르키는 URL과 같은 프록시 ID 데이터(906)를 저장한다. 원하는 경우, 동시 멀티모달 세션 상태 메모리(602)는 임의의 그러한 필드 또는 슬롯의 컨텐트와 함께 이전 동시 멀티모달 통신 세션 동안에 사용자 입력에 의해 어느 필드 또는 슬롯이 채워졌는지를 가리키는 정보를 포함할 수 있다. 뿐만 아니라, 동시 멀티모달 세션 상태 메모리(602)는 동시 멀티모달 통신 세션에 대한 현재 다이얼로그 상태(606)를 포함한다. 일부 상태들은 실행중인 어플리케이션의 실행시 해석기(50)가 존재하는 장소를 포함한다. 사용자에 의해 채워진 필드 상의 정보는 융합된 입력 정보(60)의 형태로 되어 있다.
도시된 바와 같이, 웹 서버(18)는 각 모달리티 타입에 대해 모달리티 특정 명령을 제공한다. 본 예에서, 텍스트는 HTML의 형식으로 제공되고, 음성은 음성XML의 형식으로 제공되며, 음성은 WML 형식으로 제공된다. 동기 멀티모달 동기화 조정기(42)는 적절한 형식을 적절한 프록시에 출력한다. 도시된 바와 같이, 음성XML 형식은 음성 브라우저에 대해 지정된 프록시(38a)를 통해 출력되는데 반해, HTML 형식은 그래픽 브라우저에 대한 프록시(38n)에 출력된다.
세션 지속성 유지는 세션이 비정상적으로 종료되고 사용자가 나중에 동일한 다이얼로그 상태로 되돌아오고 싶은 경우에 유용하다. 다른 모달리티에서 입력과 출력 사이에서 래그 시간을 유발하고 시간 지연을 보상하기 위해 일시적으로 정보를 저장할 필요를 생성하는 다른 지연 특성을 가지는 모달리티 이용 트랜스포트 메커니즘에 유용하다.
도 6-7에 도시된 바와 같이, 동시 멀티모달 세션 지속성 컨트롤러(600)는 주어진 세션에 대해 주어진 사용자에 대한 복수의 사용자 에이전트 프로그램을 위한 멀티모달 세션 상태 정보를 유지하고, 사용자 에이전트 프로그램은 세션 동안에 다른 동시 모달리티 통신을 위해 구성되었다. 이것은 블록 700에 도시되어 있다. 블록 702에 도시된 바와 같이, 방법은 멀티모달 세션 상태 정보(604)에 액세스하는 것에 응답하여 이전 동시 멀티모달 세션을 재확립하는 것을 포함한다. 블록 704에 더 상세하게 도시된 바와 같이, 동시 멀티모달 세션 동안에, 동시 멀티모달 세션 지속성 컨트롤러(600)는 메모리(602)에 사용자당 멀티모달 세션 상태 정보(604)를 저장한다. 블록 706에 도시된 바와 같이, 동시 멀티모달 세션 지속성 컨트롤러(600)는 세션 컨트롤러로부터 사용자에 의한 세션의 참여를 검출하고, 사용자 ID에 대한 메모리를 탐색하여 사용자가 이전 동시 멀티모달 세션에 참여했는지를 결정한다. 따라서, 블록 708에 도시된 바와 같이, 방법은 세션에 참여하는 사용자의 검출에 기초하여 메모리(602)의 저장된 멀티모달 세션 상태 정보(604)에 액세스하는 것을 포함한다.
블록 710에 도시된 바와 같이, 방법은 세션이 메모리(640)에 존재하는지를 결정하는 것을 포함한다. 그렇지 않은 경우, 세션은 새로운 세션으로서 지정되고, 새로운 세션을 메모리(602)에 기록하기 위한 필수적인 데이터를 차지하도록 새로운 엔트리가 생성된다. 이것은 블록 712에 도시되어 있다. 블록 714에 도시된 바와 같이, 세션이 존재하는 경우, 즉 세션 ID가 메모리(602)에 존재하는 경우, 방법은 사용자가 운용 중인 존재하는 어플리케이션을 가지고 있는 경우에, 그리고 그렇다면 사용자가 어플리케이션과 통신을 재확립하고 싶은 경우에, 메모리(602)에 질의하는 것을 포함한다. 사용자가 그렇게 원한다면, 방법은 메모리(602)로부터 최종 페치된 정보의 URL을 검색하는 것을 포함한다. 이것은 블록 716(도 7)에 도시되어있다. 블록 718에 도시된 바와 같이, 적절한 프록시(38a-38n)에는 블록 716에서 검색된 대로 적절한 URL이 주어진다. 블록 720에 도시된 바와 같이, 방법은 메모리(602)에 저장된 저장된 사용자 에이전트 상태 정보(606)에 기초하여 프록시를 통해 적절한 사용자 에이전트 프로그램에 요구를 전송하는 것을 포함한다.
도 8은 동시 멀티모달 세션 상태 메모리(602)의 컨텐트의 하나의 예를 예시하는 도이다. 도시된 바와 같이, 사용자 ID(900)는 특정 사용자를 지정하고 세션 ID(902)는 사용자가 메모리(602)에 저장된 복수의 세션을 가지고 있는 경우에 사용자 ID와 연관된다. 뿐만 아니라, 사용자 에이전트 프로그램 ID(904)는 예를 들면 어느 디바이스가 특정 사용자 에이전트 프로그램을 운용하고 있는지에 관한 디바이스 ID를 가리킨다. 프로그램 ID는 사용자 프로글매 식별자, URL 또는 다른 어드레스일 수 있다. 멀티모달 프록시를 가리키는 프록시 ID 데이터(96)는 이전 동시 멀티모달 통신 동안에 이용된다. 그러한 것으로서, 사용자는 세션을 종료하고 나중에 사용자가 떠난 곳에서 계속할 수 있다.
디바이스 ID(904)를 유지하는 것은 특히 시스템이 동시 멀티모달 세션 동안에 채용되는 디바이스의 식별을 유지할 수 있게 하여, 동시 멀티모달 통신 동안에 사용자에 의한 디바이스의 스위칭을 용이하게 한다.
따라서, 하나 이상의 디바이스들에 걸쳐 분산된 분리된 사용자 에이전트 프로그램을 통해 다른 모달리티를 통해 입력되는 다중 입력들은 (또는 이들이 동일한 디바이스에 포함된 경우에) 단일성있고 응집성있게 융합된다. 또한, 사용자 에이전트 프로그램의 렌더링 및 이들 사용자 에이전트 프로그램을 통한 사용자에 의한정보 입력을 동기화하는 메커니즘이 제공된다. 뿐만 아니라, 기재된 멀티모달 퓨젼 서버는 존재하는 디바이스 및 게이트웨이에 결합되어 동시 멀티모달 통신 세션을 제공할 수 있다.
여러 가지 양태의 본 발명의 다른 변동 및 변형 구현이 본 기술분야의 통상의 기술자에게는 알려져 있고 본 발명이 기재된 특정 실시예들로 제한되지 않는다는 것은 자명하다. 예를 들면, 방법들이 특정 단계들로 기재되어 있지만, 상기 단계들은 원하는 대로 임의의 적절한 순서로 수행될 수 있다는 것은 자명하다. 그러므로, 여기에 기재되고 청구되는 기본적인 원리의 사상과 범주내에 드는 임의의 그리고 모든 변형, 변동 또는 등가를 본 발명이 포함한다는 것을 잘 알고 있을 것이다.

Claims (23)

  1. 멀티모달 통신을 위한 방법에 있어서,
    서로에 대해 다른 모달리티로 동작하는 복수의 사용자 에이전트 프로그램에 대해 모달리티 특정 명령을 얻는 단계; 및
    세션 동안에, 상기 모달리티 특정 명령에 기초하여 상기 복수의 사용자 에이전트 프로그램으로부터의 출력을 동기화하는 단계
    를 포함하는 멀티모달 통신 방법.
  2. 제1항에 있어서, 상기 복수의 사용자 에이전트 프로그램에 의한 출력을 동기화하는 단계는 상기 복수의 사용자 에이전트 프로그램에 의한 이용을 위해, 각 사용자 에이전트 프로그램이 마크업 언어의 적어도 일부에 기초하여 다른 모달리티로 정보를 출력하도록, 다른 모달리티를 나타내는 마크업 언어의 적어도 일부를 전송하는 단계를 포함하는 멀티모달 통신 방법.
  3. 제2항에 있어서, 상기 복수의 사용자 에이전트 프로그램 중 하나는 그래픽 브라우저를 포함하고, 상기 복수의 사용자 에이전트 프로그램 중 다른 하나는 음성 브라우저를 포함하며, 상기 복수의 사용자 에이전트 프로그램으로부터의 출력은 상기 복수의 사용자 에이전트 프로그램을 통해 다른 모달리티로 동시에 입력되는 사용자 입력을 포함하는 멀티모달 통신 방법.
  4. 제2항에 있어서, 상기 복수의 사용자 에이전트 프로그램에 의한 이용을 위해, 다른 모달리티를 나타내는 마크업 언어의 적어도 일부를 전송하는 단계는 다른 모달리티에 연관된 마크업 언어 형식을 다른 디바이스에 전송하는 단계를 포함하고, 상기 디바이스 각각은 상기 복수의 사용자 에이전트 프로그램 중 하나를 동작시키는 멀티모달 통신 방법.
  5. 제2항에 있어서, 상기 복수의 사용자 에이전트 프로그램에 의한 이용을 위해, 다른 모달리티를 나타내는 마크업 언어의 적어도 일부를 전송하는 단계는 다른 모달리티에 연관된 마크업 언어 형식을 동일한 디바이스에 전송하는 단계를 포함하고, 상기 디바이스는 상기 복수의 사용자 에이전트 프로그램을 다른 모드로 동작시키는 멀티모달 통신 방법.
  6. 제1항에 있어서, 세션 동안에 상기 복수의 사용자 에이전트 프로그램 각각과 통신하기 위한 프록시를 결정하는 단계를 포함하는 멀티모달 통신 방법.
  7. 제2항에 있어서, 상기 복수의 사용자 에이전트 프로그램을 위한 모달리티 특정 명령을 얻는 단계는 상기 복수의 사용자 에이전트 프로그램 각각에 대해 다른 마크업 언어 형식를 제공하는 어플리케이션과 통신하는 단계를 포함하고, 상기 다른 마크업 언어 형식은 다른 모달리티를 나타내는 멀티모달 통신 방법.
  8. 제1항에 있어서, 다른 모달리티로 동작하는 상기 복수의 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 얻는 단계는 적어도 하나의 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 나타내는 베이스 마크업 언어로 저작된 마크업 언어 형식을 페치하는 단계를 포함하고, 상기 마크업 언어 형식은 다른 모달리티로 동작하는 다른 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 식별하는 데이터를 포함하는 멀티모달 통신 방법.
  9. 제1항에 있어서, 상기 모달리티 특정 명령에 기초하여 상기 복수의 사용자 에이전트 프로그램으로부터의 출력을 동기화하는 단계는, 동시 멀티모달 태그(CMMT)를 검출하기 위해 멀티모달 어플리케이션으로부터의 페치된 모달리티 특정 명령을 분석하고 검출된 경우에 CMMT에 기초하여 적어도 하나의 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 얻는 단계를 포함하는 멀티모달 통신 방법.
  10. 멀티모달 네트워크 요소에 있어서,
    동일한 세션 동안에 서로에 대해 다른 모달리티로 동작하는 복수의 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 얻도록 동작하는 정보 페처; 및
    상기 정보 페처에 동작가능하게 결합되고, 세션 동안에 상기 모달리티 특정 명령에 기초하여 상기 복수의 사용자 에이전트 프로그램으로부터의 출력을 동기화하도록 동작하는 동시 멀티모달 동기화 조정기
    를 포함하는 멀티모달 네트워크 요소.
  11. 제10항에 있어서, 상기 동시 멀티모달 동기화 조정기는 세션 동안에 상기 복수의 사용자 에이전트 프로그램 각각과 통신하기 위한 프록시를 결정하는 멀티모달 네트워크 요소.
  12. 멀티모달 통신 방법에 있어서,
    동일한 세션 동안에 동작하는 복수의 사용자 에이전트 프로그램과 연관된 복수의 입력 모달리티에 대응하는 동시 멀티모달 입력 정보에 대한 요구를 전송하는 단계; 및
    동시 다른 멀티모달 정보에 대한 요구에 응답하여 전송된 상기 복수의 사용자 에이전트 프로그램으로부터 전송된 수신된 동시 멀티모달 입력 정보를 융합하는 단계
    를 포함하는 멀티모달 통신 방법.
  13. 제12항에 있어서,
    동시 멀티모달 입력 정보에 대한 요구를 전송하기에 앞서서, 주어진 세션에 대해 다른 모달리티와 연관된 각 어플리케이션에 연관된 각각의 다른 모달리티에 대한 프록시를 결정하는 단계; 및
    각각의 다른 모달리티에 대해 결정된 프록시를 이용하여 상기 복수의 사용자에이전트 프로그램에 동시 다른 멀티모달 입력 정보에 대한 요구를 동기화하는 단계
    를 포함하는 멀티모달 통신 방법.
  14. 제12항에 있어서, 상기 동시 멀티모달 입력 정보가 융합을 위해 적절하게 수신되었는지를 결정하기 위해 기간을 기다리는 단계를 포함하는 멀티모달 통신 방법.
  15. 제14항에 있어서, 각 사용자 에이전트 프로그램의 모달리티에 따라 다른 기간을 기다리는 단계를 포함하는 멀티모달 통신 방법.
  16. 제12항에 있어서, 복수의 입력 모달리티에 대응하는 동시 멀티모달 입력 정보에 대한 요구를 전송하는 단계는, 다른 모달리티로 정보의 동시 입력을 요구하도록, 서로에 대해 다른 모달리티로 동작하는 복수의 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 전송하는 단계를 포함하는 멀티모달 통신 방법.
  17. 제12항에 있어서, 복수의 입력 모달리티에 대응하는 동시 멀티모달 입력 정보에 대한 요구를 전송하는 단계는, 제1 모달리티 기반 마크업 언어 형식을 디바이스에 전송하고 제2 모달리티 마크업 언어 기반 형식을 하나 이상의 디바이스에 전송하여 다른 모달리티로 정보의 동시 입력을 요구하는 단계를 포함하는 멀티모달통신 방법.
  18. 제12항에 있어서, 수신된 시간 및 수신된 개별적인 결과의 신뢰값에 기초하여 동시 다른 멀티모달 정보에 대한 요구에 응답하여 전송된 상기 복수의 사용자 에이전트 프로그램 중 하나로부터 전송된 수신된 멀티모달 입력 정보를 조합하는 단계를 포함하는 멀티모달 통신 방법.
  19. 제12항에 있어서, 다른 모달리티로 동작하고 있는 다른 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 식별하는 데이터를 포함하도록 모달리티 특정 명령을 트랜스코딩하는 단계를 포함하는 멀티모달 통신 방법.
  20. 멀티모달 네트워크 요소에 있어서,
    각각이 동일한 세션 동안에 동작하는 복수의 사용자 에이전트 프로그램과 연관된 복수의 입력 모달리티에 대응하는 동시 멀티모달 입력 정보에 대한 요구를 전송하는 복수의 프록시; 및
    동시 다른 멀티모달 정보에 대한 요구에 응답하여 전송된 상기 복수의 사용자 에이전트 프로그램으로부터 전송된 수신된 동시 멀티모달 입력 정보에 동작가능하게 응답하고, 동일한 세션 동안에 다른 사용자 에이전트 프로그램으로부터 동시 멀티모달 통신을 제공하도록 상기 복수의 사용자 에이전트 프로그램으로부터 전송된 다른 멀티모달 입력 정보를 융합하도록 동작하는 멀티모달 퓨젼 엔진
    을 포함하는 멀티모달 네트워크 요소.
  21. 제20항에 있어서, 동시 다른 멀티모달 정보에 대한 요구는 다른 모달리티로의 정보의 동시 입력을 요구하도록 서로에 대해 다른 모달리티로 동작하는 복수의 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 포함하고, 상기 멀티모달 네트워크 요소는,
    동일한 세션 동안에 서로에 대해 다른 모달리티로 동작하는 상기 복수의 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 얻도록 동작하는 정보 페처; 및
    상기 정보 페처 및 상기 복수의 프록시에 동작가능하게 결합되고, 세션 동안에 상기 복수의 사용자 에이전트 프로그램으로부터 출력된 수신된 동시 멀티모달 입력 정보를 동기화하도록 동작하는 동시 멀티모달 동기화 조정기
    를 포함하는 멀티모달 네트워크 요소.
  22. 제21항에 있어서,
    상기 복수의 사용자 에이전트 프로그램에 동작가능하게 결합되고, 비-세션 조건 동안 및 사용자별 기반으로, 세션 동안에 다른 동시 모달리티 통신을 위해 구성된 상기 복수의 사용자 에이전트 프로그램의 동시 멀티모달 세션 상태 정보를 유지하며, 상기 동시 멀티모달 세션 상태 정보에 액세스하는 것에 응답하여 동시 멀티모달 세션을 재확립하도록 동작하는 동시 멀티모달 세션 지속성 컨트롤러; 및
    상기 동시 멀티모달 세션 지속성 컨트롤러에 동작가능하게 결합되고, 상기 동시 멀티모달 세션 상태 정보를 포함하는 메모리
    를 포함하는 멀티모달 네트워크 요소.
  23. 제20항에 있어서, 마크업 언어 해석기에 동작가능하게 결합되는 마크업 언어 해석기 및 트랜스코더를 포함하고, 상기 트랜스코더는 다른 모달리티로 동작하는 다른 사용자 에이전트 프로그램에 대한 모달리티 특정 명령을 식별하는 데이터를 포함하는 모달리티 특정 명령을 트랜스코딩하는 멀티모달 네트워크 요소.
KR1020047013346A 2002-02-27 2003-02-06 동시 멀티모달 통신을 위한 시스템 및 방법 KR100643107B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/085,990 2002-02-27
US10/085,990 US6807529B2 (en) 2002-02-27 2002-02-27 System and method for concurrent multimodal communication
PCT/US2003/003657 WO2003073198A2 (en) 2002-02-27 2003-02-06 System and method for concurrent multimodal communication

Publications (2)

Publication Number Publication Date
KR20040089677A true KR20040089677A (ko) 2004-10-21
KR100643107B1 KR100643107B1 (ko) 2006-11-10

Family

ID=27765344

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020047013346A KR100643107B1 (ko) 2002-02-27 2003-02-06 동시 멀티모달 통신을 위한 시스템 및 방법

Country Status (8)

Country Link
US (1) US6807529B2 (ko)
EP (2) EP1481334A4 (ko)
JP (1) JP2005519363A (ko)
KR (1) KR100643107B1 (ko)
CN (2) CN1639707A (ko)
AU (1) AU2003209037A1 (ko)
BR (1) BR0307274A (ko)
WO (1) WO2003073198A2 (ko)

Families Citing this family (155)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8938688B2 (en) 1998-12-04 2015-01-20 Nuance Communications, Inc. Contextual prediction of user words and user actions
US7881936B2 (en) 1998-12-04 2011-02-01 Tegic Communications, Inc. Multimodal disambiguation of speech recognition
US7720682B2 (en) 1998-12-04 2010-05-18 Tegic Communications, Inc. Method and apparatus utilizing voice input to resolve ambiguous manually entered text input
US7679534B2 (en) * 1998-12-04 2010-03-16 Tegic Communications, Inc. Contextual prediction of user words and user actions
US7712053B2 (en) 1998-12-04 2010-05-04 Tegic Communications, Inc. Explicit character filtering of ambiguous text entry
US7610194B2 (en) 2002-07-18 2009-10-27 Tegic Communications, Inc. Dynamic database reordering system
ATE443946T1 (de) 1999-05-27 2009-10-15 Tegic Communications Inc Tastatursystem mit automatischer korrektur
US7286115B2 (en) 2000-05-26 2007-10-23 Tegic Communications, Inc. Directional input system with automatic correction
US7030863B2 (en) 2000-05-26 2006-04-18 America Online, Incorporated Virtual keyboard system with automatic correction
US7821503B2 (en) 2003-04-09 2010-10-26 Tegic Communications, Inc. Touch screen and graphical user interface
US7750891B2 (en) 2003-04-09 2010-07-06 Tegic Communications, Inc. Selective input system based on tracking of motion parameters of an input device
US6983307B2 (en) * 2001-07-11 2006-01-03 Kirusa, Inc. Synchronization among plural browsers
CA2397466A1 (en) * 2001-08-15 2003-02-15 At&T Corp. Systems and methods for aggregating related inputs using finite-state devices and extracting meaning from multimodal inputs using aggregation
US7203907B2 (en) 2002-02-07 2007-04-10 Sap Aktiengesellschaft Multi-modal synchronization
JP2005533301A (ja) * 2002-06-13 2005-11-04 パナソニック オートモーティブ システムズ カンパニー オブ アメリカ マルチモードインタフェース
US8583440B2 (en) 2002-06-20 2013-11-12 Tegic Communications, Inc. Apparatus and method for providing visual indication of character ambiguity during text entry
US20040034531A1 (en) * 2002-08-15 2004-02-19 Wu Chou Distributed multimodal dialogue system and method
US7275217B2 (en) * 2002-09-09 2007-09-25 Vijay Anand Saraswat System and method for multi-modal browsing with integrated update feature
US7257575B1 (en) * 2002-10-24 2007-08-14 At&T Corp. Systems and methods for generating markup-language based expressions from multi-modal and unimodal inputs
US7016845B2 (en) * 2002-11-08 2006-03-21 Oracle International Corporation Method and apparatus for providing speech recognition resolution on an application server
US7152033B2 (en) * 2002-11-12 2006-12-19 Motorola, Inc. Method, system and module for multi-modal data fusion
US7769811B2 (en) * 2003-03-03 2010-08-03 Aol Llc Instant messaging sound control
US7363027B2 (en) 2003-11-11 2008-04-22 Microsoft Corporation Sequential multimodal input
US7158779B2 (en) * 2003-11-11 2007-01-02 Microsoft Corporation Sequential multimodal input
US7739350B2 (en) * 2003-12-10 2010-06-15 International Business Machines Corporation Voice enabled network communications
US7409690B2 (en) * 2003-12-19 2008-08-05 International Business Machines Corporation Application module for managing interactions of distributed modality components
US7660400B2 (en) 2003-12-19 2010-02-09 At&T Intellectual Property Ii, L.P. Method and apparatus for automatically building conversational systems
US20050165601A1 (en) * 2004-01-28 2005-07-28 Gupta Anurag K. Method and apparatus for determining when a user has ceased inputting data
US7636083B2 (en) * 2004-02-20 2009-12-22 Tegic Communications, Inc. Method and apparatus for text input in various languages
KR100629434B1 (ko) * 2004-04-24 2006-09-27 한국전자통신연구원 음성/그래픽 입출력이 가능한 멀티모달 웹기반 데이터방송처리 장치 및 그 방법과 그를 이용한 멀티모달 웹기반데이터방송 수신 시스템 및 그 방법
ATE373380T1 (de) * 2004-05-18 2007-09-15 Alcatel Lucent Verfahren und server zur bereitstellung eines multi-modalen dialogs
US7925512B2 (en) * 2004-05-19 2011-04-12 Nuance Communications, Inc. Method, system, and apparatus for a voice markup language interpreter and voice browser
US8095364B2 (en) 2004-06-02 2012-01-10 Tegic Communications, Inc. Multimodal disambiguation of speech recognition
US8768711B2 (en) * 2004-06-17 2014-07-01 Nuance Communications, Inc. Method and apparatus for voice-enabling an application
US7921163B1 (en) 2004-07-02 2011-04-05 Aol Inc. Routing and displaying messages for multiple concurrent instant messaging sessions involving a single online identity
US20060036770A1 (en) * 2004-07-30 2006-02-16 International Business Machines Corporation System for factoring synchronization strategies from multimodal programming model runtimes
US7818379B1 (en) 2004-08-31 2010-10-19 Aol Inc. Notification and disposition of multiple concurrent instant messaging sessions involving a single online identity
KR100636317B1 (ko) * 2004-09-06 2006-10-18 삼성전자주식회사 분산 음성 인식 시스템 및 그 방법
US7627638B1 (en) * 2004-12-20 2009-12-01 Google Inc. Verbal labels for electronic messages
US7356567B2 (en) 2004-12-30 2008-04-08 Aol Llc, A Delaware Limited Liability Company Managing instant messaging sessions on multiple devices
EP1696342A1 (en) * 2005-02-28 2006-08-30 BRITISH TELECOMMUNICATIONS public limited company Combining multimedia data
US20060229880A1 (en) * 2005-03-30 2006-10-12 International Business Machines Corporation Remote control of an appliance using a multimodal browser
JP4438671B2 (ja) * 2005-03-31 2010-03-24 日本電気株式会社 マルチモーダルサービス提供方法及び提供システム並びにその制御プログラム
US20060235694A1 (en) * 2005-04-14 2006-10-19 International Business Machines Corporation Integrating conversational speech into Web browsers
US20060253272A1 (en) * 2005-05-06 2006-11-09 International Business Machines Corporation Voice prompts for use in speech-to-speech translation system
US7548804B2 (en) * 2005-05-19 2009-06-16 Novariant, Inc. Emulation to provide multiple applications in mobile equipment
US7752048B2 (en) 2005-05-27 2010-07-06 Oracle International Corporation Method and apparatus for providing speech recognition resolution on a database
US8204995B2 (en) * 2005-06-29 2012-06-19 Nokia Corporation Multidevice session establishment for multimodal browsing
US7561967B2 (en) * 2005-07-29 2009-07-14 Novariant, Inc. Navigation receiver with functional extensibility
US20090144626A1 (en) * 2005-10-11 2009-06-04 Barry Appelman Enabling and exercising control over selected sounds associated with incoming communications
US7697827B2 (en) 2005-10-17 2010-04-13 Konicek Jeffrey C User-friendlier interfaces for a camera
US8504606B2 (en) * 2005-11-09 2013-08-06 Tegic Communications Learner for resource constrained devices
US20070115931A1 (en) * 2005-11-18 2007-05-24 Anderson David J Inter-server multimodal user communications
US7751848B2 (en) * 2005-11-23 2010-07-06 Envio Networks Inc. Systems and methods for providing concurrent mobile applications to mobile communication devices
US20070118661A1 (en) * 2005-11-23 2007-05-24 Vishwanathan Kumar K System and method for mobile digital media content delivery and services marketing
US8189563B2 (en) 2005-12-08 2012-05-29 International Business Machines Corporation View coordination for callers in a composite services enablement environment
US7587378B2 (en) * 2005-12-09 2009-09-08 Tegic Communications, Inc. Embedded rule engine for rendering text and other applications
US8219584B2 (en) * 2005-12-15 2012-07-10 At&T Intellectual Property I, L.P. User access to item information
US7716682B2 (en) * 2006-01-04 2010-05-11 Oracle International Corporation Multimodal or multi-device configuration
US20070161369A1 (en) * 2006-01-11 2007-07-12 Envio Networks Inc. Methods for Intelligent Number Dialing Assistance and Related Marketing Techniques
EP1994737A4 (en) * 2006-01-24 2009-04-08 Envio Networks Inc METHOD OF DISTRIBUTING DIGITAL CONTENT TO USERS OF MOBILE COMMUNICATION DEVICES
US7487453B2 (en) * 2006-03-24 2009-02-03 Sap Ag Multi-modal content presentation
US7580925B2 (en) * 2006-04-19 2009-08-25 Tegic Communications, Inc. Efficient storage and search of word lists and other text
US7634294B2 (en) * 2006-04-25 2009-12-15 At&T Intellectual Property I, L.P. Method and apparatus for exchanging content over distinct wireless access technologies
WO2007141446A1 (fr) * 2006-06-02 2007-12-13 France Telecom Système de gestion d'un service interactif multimodal
US7970909B1 (en) 2006-06-22 2011-06-28 At&T Intellectual Property I, L.P. Method and system for associating concurrent telephone and data network sessions
US8233894B2 (en) * 2006-08-23 2012-07-31 Resource Consortium Limited System and method for sending mobile media content to another mobile device user
US20080065715A1 (en) * 2006-08-28 2008-03-13 Ko-Yu Hsu Client-Server-Based Communications System for the Synchronization of Multimodal data channels
US8145493B2 (en) * 2006-09-11 2012-03-27 Nuance Communications, Inc. Establishing a preferred mode of interaction between a user and a multimodal application
US20080104169A1 (en) * 2006-10-30 2008-05-01 Microsoft Corporation Processing initiate notifications for different modes of communication
JP2008129713A (ja) * 2006-11-17 2008-06-05 Fujitsu Ltd 複数のモダリティを関連付けるための方法、そのプログラムおよび複数モダリティを関連付けるマルチモーダルシステム
US7827033B2 (en) * 2006-12-06 2010-11-02 Nuance Communications, Inc. Enabling grammars in web page frames
US20080140390A1 (en) * 2006-12-11 2008-06-12 Motorola, Inc. Solution for sharing speech processing resources in a multitasking environment
WO2008086334A1 (en) 2007-01-08 2008-07-17 Envio Networks Inc. Community interaction using mobile communication devices
US8201087B2 (en) * 2007-02-01 2012-06-12 Tegic Communications, Inc. Spell-check for a keyboard system with automatic correction
US8225203B2 (en) 2007-02-01 2012-07-17 Nuance Communications, Inc. Spell-check for a keyboard system with automatic correction
US7801728B2 (en) * 2007-02-26 2010-09-21 Nuance Communications, Inc. Document session replay for multimodal applications
US8938392B2 (en) 2007-02-27 2015-01-20 Nuance Communications, Inc. Configuring a speech engine for a multimodal application based on location
US9208783B2 (en) * 2007-02-27 2015-12-08 Nuance Communications, Inc. Altering behavior of a multimodal application based on location
US8103499B2 (en) * 2007-03-22 2012-01-24 Tegic Communications, Inc. Disambiguation of telephone style key presses to yield Chinese text using segmentation and selective shifting
US8862475B2 (en) * 2007-04-12 2014-10-14 Nuance Communications, Inc. Speech-enabled content navigation and control of a distributed multimodal browser
US8299943B2 (en) 2007-05-22 2012-10-30 Tegic Communications, Inc. Multiple predictions in a reduced keyboard disambiguating system
US7685293B2 (en) * 2007-08-21 2010-03-23 Qualcomm Incorporated Method and apparatus for optimization of sigcomp UDVM performance
US20090089251A1 (en) * 2007-10-02 2009-04-02 Michael James Johnston Multimodal interface for searching multimedia content
JP5159261B2 (ja) * 2007-11-12 2013-03-06 インターナショナル・ビジネス・マシーンズ・コーポレーション セッションを管理する技術
US8386260B2 (en) * 2007-12-31 2013-02-26 Motorola Mobility Llc Methods and apparatus for implementing distributed multi-modal applications
US20090182562A1 (en) * 2008-01-14 2009-07-16 Garmin Ltd. Dynamic user interface for automated speech recognition
CA2720398C (en) 2008-04-02 2016-08-16 Twilio Inc. System and method for processing telephony sessions
US8837465B2 (en) 2008-04-02 2014-09-16 Twilio, Inc. System and method for processing telephony sessions
US8862681B2 (en) 2008-06-25 2014-10-14 Microsoft Corporation Multimodal conversation transfer
US20090328062A1 (en) * 2008-06-25 2009-12-31 Microsoft Corporation Scalable and extensible communication framework
US8964726B2 (en) 2008-10-01 2015-02-24 Twilio, Inc. Telephony web event system and method
US11487347B1 (en) * 2008-11-10 2022-11-01 Verint Americas Inc. Enhanced multi-modal communication
US9374391B2 (en) * 2008-11-11 2016-06-21 Broadsoft, Inc. Composite endpoint mechanism
CN102415068B (zh) 2009-03-02 2015-09-02 特维里奥公司 用于多租户电话网络的方法和系统
US8509415B2 (en) 2009-03-02 2013-08-13 Twilio, Inc. Method and system for a multitenancy telephony network
US20110066507A1 (en) * 2009-09-14 2011-03-17 Envio Networks Inc. Context Enhanced Marketing of Content and Targeted Advertising to Mobile Device Users
US20110083179A1 (en) * 2009-10-07 2011-04-07 Jeffrey Lawson System and method for mitigating a denial of service attack using cloud computing
US9210275B2 (en) 2009-10-07 2015-12-08 Twilio, Inc. System and method for running a multi-module telephony application
US8582737B2 (en) * 2009-10-07 2013-11-12 Twilio, Inc. System and method for running a multi-module telephony application
EP2526657B1 (en) 2010-01-19 2019-02-20 Twilio Inc. Method and system for preserving telephony session state
US8676581B2 (en) * 2010-01-22 2014-03-18 Microsoft Corporation Speech recognition analysis via identification information
US8296151B2 (en) * 2010-06-18 2012-10-23 Microsoft Corporation Compound gesture-speech commands
US20120208495A1 (en) 2010-06-23 2012-08-16 Twilio, Inc. System and method for monitoring account usage on a platform
US9459926B2 (en) 2010-06-23 2016-10-04 Twilio, Inc. System and method for managing a computing cluster
US9459925B2 (en) 2010-06-23 2016-10-04 Twilio, Inc. System and method for managing a computing cluster
US9338064B2 (en) 2010-06-23 2016-05-10 Twilio, Inc. System and method for managing a computing cluster
US8416923B2 (en) 2010-06-23 2013-04-09 Twilio, Inc. Method for providing clean endpoint addresses
US9590849B2 (en) 2010-06-23 2017-03-07 Twilio, Inc. System and method for managing a computing cluster
US8838707B2 (en) 2010-06-25 2014-09-16 Twilio, Inc. System and method for enabling real-time eventing
US8649268B2 (en) 2011-02-04 2014-02-11 Twilio, Inc. Method for processing telephony sessions of a network
WO2012162397A1 (en) 2011-05-23 2012-11-29 Twilio, Inc. System and method for connecting a communication to a client
US20140044123A1 (en) 2011-05-23 2014-02-13 Twilio, Inc. System and method for real time communicating with a client application
US9648006B2 (en) 2011-05-23 2017-05-09 Twilio, Inc. System and method for communicating with a client application
EP2759123B1 (en) 2011-09-21 2018-08-15 Twilio, Inc. System and method for authorizing and connecting application developers and users
US10182147B2 (en) 2011-09-21 2019-01-15 Twilio Inc. System and method for determining and communicating presence information
US9495227B2 (en) 2012-02-10 2016-11-15 Twilio, Inc. System and method for managing concurrent events
US20130304928A1 (en) 2012-05-09 2013-11-14 Twilio, Inc. System and method for managing latency in a distributed telephony network
US9602586B2 (en) 2012-05-09 2017-03-21 Twilio, Inc. System and method for managing media in a distributed communication network
US9240941B2 (en) 2012-05-09 2016-01-19 Twilio, Inc. System and method for managing media in a distributed communication network
US9247062B2 (en) 2012-06-19 2016-01-26 Twilio, Inc. System and method for queuing a communication session
WO2014005640A1 (en) * 2012-07-05 2014-01-09 Nec Europe Ltd. Method and system for disallowing conflicting web application events
US8737962B2 (en) 2012-07-24 2014-05-27 Twilio, Inc. Method and system for preventing illicit use of a telephony platform
US8738051B2 (en) 2012-07-26 2014-05-27 Twilio, Inc. Method and system for controlling message routing
US8948356B2 (en) 2012-10-15 2015-02-03 Twilio, Inc. System and method for routing communications
US8938053B2 (en) 2012-10-15 2015-01-20 Twilio, Inc. System and method for triggering on platform usage
US9253254B2 (en) 2013-01-14 2016-02-02 Twilio, Inc. System and method for offering a multi-partner delegated platform
US9282124B2 (en) 2013-03-14 2016-03-08 Twilio, Inc. System and method for integrating session initiation protocol communication in a telecommunications platform
US9001666B2 (en) 2013-03-15 2015-04-07 Twilio, Inc. System and method for improving routing in a distributed communication platform
US9225840B2 (en) 2013-06-19 2015-12-29 Twilio, Inc. System and method for providing a communication endpoint information service
US9338280B2 (en) 2013-06-19 2016-05-10 Twilio, Inc. System and method for managing telephony endpoint inventory
US9240966B2 (en) 2013-06-19 2016-01-19 Twilio, Inc. System and method for transmitting and receiving media messages
US9483328B2 (en) 2013-07-19 2016-11-01 Twilio, Inc. System and method for delivering application content
US9274858B2 (en) 2013-09-17 2016-03-01 Twilio, Inc. System and method for tagging and tracking events of an application platform
US9137127B2 (en) 2013-09-17 2015-09-15 Twilio, Inc. System and method for providing communication platform metadata
US9338018B2 (en) 2013-09-17 2016-05-10 Twilio, Inc. System and method for pricing communication of a telecommunication platform
US9553799B2 (en) 2013-11-12 2017-01-24 Twilio, Inc. System and method for client communication in a distributed telephony network
US9325624B2 (en) 2013-11-12 2016-04-26 Twilio, Inc. System and method for enabling dynamic multi-modal communication
US10209853B2 (en) * 2013-12-20 2019-02-19 Robert Bosch Gmbh System and method for dialog-enabled context-dependent and user-centric content presentation
US9344573B2 (en) 2014-03-14 2016-05-17 Twilio, Inc. System and method for a work distribution service
US9226217B2 (en) 2014-04-17 2015-12-29 Twilio, Inc. System and method for enabling multi-modal communication
US9246694B1 (en) 2014-07-07 2016-01-26 Twilio, Inc. System and method for managing conferencing in a distributed communication network
US9774687B2 (en) 2014-07-07 2017-09-26 Twilio, Inc. System and method for managing media and signaling in a communication platform
US9516101B2 (en) 2014-07-07 2016-12-06 Twilio, Inc. System and method for collecting feedback in a multi-tenant communication platform
US9251371B2 (en) 2014-07-07 2016-02-02 Twilio, Inc. Method and system for applying data retention policies in a computing platform
WO2016065080A1 (en) 2014-10-21 2016-04-28 Twilio, Inc. System and method for providing a miro-services communication platform
US9477975B2 (en) 2015-02-03 2016-10-25 Twilio, Inc. System and method for a media intelligence platform
WO2016157658A1 (ja) * 2015-03-31 2016-10-06 ソニー株式会社 情報処理装置、制御方法、およびプログラム
US10419891B2 (en) 2015-05-14 2019-09-17 Twilio, Inc. System and method for communicating through multiple endpoints
US9948703B2 (en) 2015-05-14 2018-04-17 Twilio, Inc. System and method for signaling through data storage
US10659349B2 (en) 2016-02-04 2020-05-19 Twilio Inc. Systems and methods for providing secure network exchanged for a multitenant virtual private cloud
US10063713B2 (en) 2016-05-23 2018-08-28 Twilio Inc. System and method for programmatic device connectivity
US10686902B2 (en) 2016-05-23 2020-06-16 Twilio Inc. System and method for a multi-channel notification service
KR101934954B1 (ko) * 2017-05-24 2019-01-03 네이버 주식회사 음성요청에 대응하는 정보 전달 향상을 위한 출력
US10841755B2 (en) 2017-07-01 2020-11-17 Phoneic, Inc. Call routing using call forwarding options in telephony networks

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5640590A (en) * 1992-11-18 1997-06-17 Canon Information Systems, Inc. Method and apparatus for scripting a text-to-speech-based multimedia presentation
US6324511B1 (en) * 1998-10-01 2001-11-27 Mindmaker, Inc. Method of and apparatus for multi-modal information presentation to computer users with dyslexia, reading disabilities or visual impairment
DE69937962T2 (de) * 1998-10-02 2008-12-24 International Business Machines Corp. Vorrichtung und verfahren zur bereitstellung von netzwerk-koordinierten konversationsdiensten
US6570555B1 (en) * 1998-12-30 2003-05-27 Fuji Xerox Co., Ltd. Method and apparatus for embodied conversational characters with multimodal input/output in an interface device
GB0030330D0 (en) * 2000-12-13 2001-01-24 Hewlett Packard Co Idiom handling in voice service systems
US20030046316A1 (en) * 2001-04-18 2003-03-06 Jaroslav Gergic Systems and methods for providing conversational computing via javaserver pages and javabeans
US7136909B2 (en) * 2001-12-28 2006-11-14 Motorola, Inc. Multimodal communication method and apparatus with multimodal profile

Also Published As

Publication number Publication date
KR100643107B1 (ko) 2006-11-10
AU2003209037A1 (en) 2003-09-09
WO2003073198A2 (en) 2003-09-04
CN1639707A (zh) 2005-07-13
AU2003209037A8 (en) 2003-09-09
EP1679622A2 (en) 2006-07-12
US20030167172A1 (en) 2003-09-04
US6807529B2 (en) 2004-10-19
EP1481334A2 (en) 2004-12-01
BR0307274A (pt) 2004-12-21
WO2003073198A3 (en) 2004-01-08
EP1481334A4 (en) 2005-11-23
JP2005519363A (ja) 2005-06-30
EP1679622A3 (en) 2006-08-09
CN101291336A (zh) 2008-10-22

Similar Documents

Publication Publication Date Title
KR100643107B1 (ko) 동시 멀티모달 통신을 위한 시스템 및 방법
KR100610286B1 (ko) 동시 멀티모달 통신 세션 지속성을 위한 시스템 및 방법
KR20040101246A (ko) 동시 멀티모달 태그를 이용한 동시 멀티모달 통신을 위한시스템 및 방법
US20040078424A1 (en) Web services via instant messaging
US7272564B2 (en) Method and apparatus for multimodal communication with user control of delivery modality
JP4384732B2 (ja) コンテキスト対応のweb通信を提供する装置とデータネットワークブラウザ
US8799464B2 (en) Multi-modal communication using a session specific proxy server
US8566103B2 (en) Multi-modal web interaction over wireless network
US20020065944A1 (en) Enhancement of communication capabilities
US20030146932A1 (en) Multi-modal synchronization
US20050266884A1 (en) Methods and systems for conducting remote communications
US20050021826A1 (en) Gateway controller for a multimodal system that provides inter-communication among different data and voice servers through various mobile devices, and interface for that controller
JP2003032721A (ja) 位置及びイベントトリガー型通知サービス
CN110268400B (zh) 改进与电子聊天界面的交互
EP1483654B1 (en) Multi-modal synchronization
US20020069066A1 (en) Locality-dependent presentation
JP3773705B2 (ja) 地図情報システム及び地図配信方法
KR101690604B1 (ko) 유무선 웹 기반의 채팅시스템 및 그 방법
JP4130720B2 (ja) 情報表示方法及び情報表示システム
JP2023168325A (ja) メッセージングサービス方法及び装置
WO2007073777A1 (en) Method of managing services in a communication network

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120927

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130927

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141010

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20151008

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20171018

Year of fee payment: 12