KR102050982B1 - 수신자의 언어, 국제화 및 현지화 선호들에 기초하여 아웃고잉 메시지들을 발생시키는 기술들 - Google Patents

수신자의 언어, 국제화 및 현지화 선호들에 기초하여 아웃고잉 메시지들을 발생시키는 기술들 Download PDF

Info

Publication number
KR102050982B1
KR102050982B1 KR1020147022595A KR20147022595A KR102050982B1 KR 102050982 B1 KR102050982 B1 KR 102050982B1 KR 1020147022595 A KR1020147022595 A KR 1020147022595A KR 20147022595 A KR20147022595 A KR 20147022595A KR 102050982 B1 KR102050982 B1 KR 102050982B1
Authority
KR
South Korea
Prior art keywords
message
recipient
templates
language
template
Prior art date
Application number
KR1020147022595A
Other languages
English (en)
Other versions
KR20140117536A (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 KR20140117536A publication Critical patent/KR20140117536A/ko
Application granted granted Critical
Publication of KR102050982B1 publication Critical patent/KR102050982B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • G06Q10/1093Calendar-based scheduling for persons or groups
    • G06Q10/1095Meeting or appointment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/52User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명의 여러 실시예들에 따라, 아웃고잉 메시지들을 발생시키기 위한 기술들이 개시된다. 상기 기술들은 수신자에 대한 아웃고잉 메시지를 발생시키기 위한 요청을 수신하는 것과 수신자 선호 데이터베이스로부터 상기 각 수신자의 하나 이상의 수신자 선호들을 검색하는 것을 포함한다. 상기 하나 이상의 수신자 선호들은 상기 각 수신자에 전달될 메시지들의 커스텀화에 관련된다. 상기 기술은 또한 상기 요청 및 상기 하나 이상의 수신자 선호들에 기초하여 메시지 템플릿 데이터베이스에 저장된 복수의 메시지 템플릿들로부터 메시지 템플릿을 검색하는 것을 포함한다. 상기 기술은 또한 상기 검색된 메시지 템플릿 및 상기 하나 이상의 수신자 선호들에 기초하여 상기 아웃고잉 메시지를 발생시키는 것과 상기 아웃고잉 메시지를 상기 수신자에 제공하는 것을 포함한다.

Description

수신자의 언어, 국제화 및 현지화 선호들에 기초하여 아웃고잉 메시지들을 발생시키는 기술들{TECHNIQUES FOR GENERATING OUTGOING MESSAGES BASED ON LANGUAGE, INTERNATIONALIZATION, AND LOCALIZATION PREFERENCES OF THE RECIPIENT}
본 출원은 그 전체 내용이 본 명세서에 참조 문헌으로 병합된 2012년 1월 16일에 출원된 미국 출원(출원 번호 13/351,031호)의 우선권을 청구한다.
본 발명은 사용자의 언어, 국제화 및 현지화 선호들을 포함하여, 상기 수신자의 선호들에 기초하여 수신자에 대한 개인화된 아웃고잉 메시지들을 발생시키는 기술들에 관한 것이다.
본 명세서에 제공된 배경기술은 본 발명의 콘텍스트를 일반적으로 제시하기 위한 것이다. 출원 시 종래 기술로서 인정받지 못할 수 있는 기술 양상들(aspects of the description)뿐만 아니라 본 배경기술란에 기술된 정도까지 현재 명명된 발명자들의 업적은 명시적으로든 암시적으로든 본 발명에 대한 종래 기술로 인정되어서는 안 된다.
많은 컴퓨터 애플리케이션들은 사용자들로 하여금 하나 이상의 수신자들에 전송하기 위한 메시지들을 발생시키도록 한다. 많은 이러한 애플리케이션들은 상기 수신자들에 전송되는 상기 메시지들을 발생시키기 위한 메시지 템플릿들을 사용한다. 예를 들어, 캘린더 애플리케이션은 발신자가 복수의 수신자들을 이벤트에 초대하도록 할 수 있다. 상기 발신자가 특정 시간, 특정 장소, 그리고/또는 특정 이벤트 타입, 예를 들어, 미팅 또는 파티를 지정할 수 있다. 이러한 정보 및 "이벤트 초대(event invite)"에 대응하는 메시지 템플릿에 기초하여, 캘린더 애플리케이션은 상기 이벤트에 대한 수신자들을 초대하는 아웃고잉 메시지를 발생시킬 수 있다. 하지만, 발생된 아웃고잉 메시지들은 상기 애플리케이션의 설정들에 따르거나 발신자의 선호들 또는 습관들에 기초하여 발생된다.
본 발명의 여러 실시예들에 따르면, 아웃고잉 메시지들을 발생시키는 컴퓨터로 구현되는 기술이 개시된다. 상기 기술은, 하나 이상의 프로세서들을 갖는 메시지 서버에서, 수신자에 대한 아웃고잉 메시지를 발생시키기 위한 요청을 수신하는 것을 포함한다. 상기 기술은, 상기 메시지 서버에서, 수신자 선호 데이터베이스로부터 상기 수신자의 하나 이상의 수신자 선호들을 검색하는 단계를 또한 포함한다. 상기 하나 이상의 수신자 선호들은 상기 수신자에 전달될 메시지들의 커스텀화에 관한 것이다. 상기 기술은, 상기 메시지 서버에서, 상기 요청 및 상기 하나 이상의 수신자 선호들에 기초하여 메시지 템플릿 데이터베이스에 저장된 복수의 메시지 템플릿들로부터 메시지 템플릿을 검색하는 것을 또한 포함한다. 상기 기술은, 또한, 상기 메시지 서버에서, 상기 검색된 메시지 템플릿과 상기 하나 이상의 수신자 선호들에 기초하여 상기 아웃고잉 메시지를 발생시키는 것 및 상기 메시지 서버로부터 상기 아웃고잉 메시지를 상기 수신자에게 제공하는 것을 포함한다.
본 발명의 여러 실시예들에 따르면, 아웃고잉 메시지들을 발생시키는 컴퓨터로 구현되는 시스템이 개시된다. 상기 기술은 복수의 메시지 수신자들의 수신자 선호들을 저장하는 수신자 선호 데이터베이스를 포함한다. 상기 복수의 메시지 수신자들 중 각 메시지 수신자의 수신자 선호들은 상기 각각의 메시지 수신자에 대한 메시지들의 커스톰화에 관한 것이다. 상기 기술은 또한 복수의 메시지 템플릿들을 저장하는 메시지 템플릿 데이터베이스를 포함한다. 상기 기술은 또한 수신자에 대한 아웃고잉 메시지를 발생시키기 위한 요청을 수신하도록 구성되는 메시지 발생 모듈을 포함한다. 상기 요청은 상기 수신자, 그리고 상기 아웃고잉 메시지를 발생시키기 위한 데이터를 나타낸다. 상기 메시지 발생 모듈은, 또한, 상기 수신자 선호 데이터베이스로부터 상기 수신자의 하나 이상의 수신자 선호들을 검색하고, 그리고 상기 요청 및 상기 하나 이상의 수신자 선호들에 기초하여 메시지 템플릿 데이터베이스로부터 메시지 템플릿을 검색하도록 구성된다. 상기 메시지 발생 모듈은 또한 상기 검색된 메시지 템플릿 및 상기 하나 이상의 수신자 선호들에 기초하여 상기 아웃고잉 메시지를 발생시키고 상기 아웃고잉 메시지를 상기 수신자에게 제공하도록 구성된다.
본 발명의 적용가능성의 추가적인 영역들은 이후에서 제공되는 상세한 설명으로부터 명확해 질 것이다. 상세한 설명 및 특정 예들은 단지 예시의 목적으로 의도되고 본 발명의 범위를 제한하도록 의도되지 않음이 이해되어야 한다.
본 발명은 상세한 설명 및 첨부된 도면들을 참조하여 더 충분하게 이해될 것이다.
도 1은 본 발명의 일부 실시예들에 따른 개인화된 아웃고잉 메시지들을 발생시키고 제공하기 위한 환경을 나타내는 도면이다.
도 2는 본 발명의 일부 실시예들에 따른 메시지 서버의 예시적인 컴포넌트들을 나타내는 블록도이다.
도 3은 본 발명의 일부 실시예들에 따른 아웃고잉 메시지들을 발생시키는 예시적인 기술을 나타내는 흐름도이다.
도 4는 메시지 템플릿을 선택하기 위한 예시적인 기술을 나타내는 흐름도이다.
도 1을 참조하면, 개인화된 아웃고잉 메시지들(outgoing messages)을 발생시키고 제공하는 예시적인 환경이 도시된다. 많은 애플리케이션들은 발신자들이 하나 이상의 수신자들에 메시지들을 발송하도록 한다. 이러한 애플리케이션들은 발신자 디바이스(20)에서 실행될 것이다. 인식되어야 하는 것으로, 발신자 디바이스(20)는 랩톱 컴퓨터, 데스크톱 컴퓨터, 모바일 전화, 테블릿 컴퓨터 또는 게임 디바이스들과 같은 임의의 컴퓨팅 디바이스일 수 있다. 또한, 상기 애플리케이션들은 애플리케이션 서버, 예를 들어, 애플리케이션 서버 30-A, 30-B 또는 30-N(여기에서는 애프리케이션 서버(30)로서 참조됨)에서 실행될 수 있다. 애플리케이션 서버(30)에 의해 실행되는 애플리케이션은, 예를 들어, 웹-브라우저 또는 클라이언트 애플리케이션에 의해 발신자 디바이스(20)에서 발신자에 의해 액세스될 수 있다. 애플리케이션 서버(30)가, 캘린더 애플리케이션, 소셜 네트워킹 웹사이트, 어카운팅 애플리케이션, 통지 애플리케이션 또는 이카드 애플리케이션과 같은 임의의 타입의 애플리케이션 또는 클라우드-기반 서비스를 실행할 수 있음이 인식된다.
발신자 디바이스(20)로부터, 상기 발신자는, 아웃고잉 메시지가 하나 이상의 수신자들에게 전송됨을 요청할 수 있다. 일부 실시예들에서, 하나 이상의 수신자들에 대한 아웃고잉 메시지를 발생시키도록 하는 요청은 애플리케이션에 의해 메시지 서버(10)에 제공될 수 있다. 아웃고잉 메시지를 발생시키도록 하는 요청은 발신자 측 또는 애플리케이션 측에 전송될 수 있다. 상기 요청은 전송될 메시지의 타입을 식별하는 메시지 타입 식별자, 수신자들의 리스트 및 아웃고잉 메시지에 특정된 메시지 데이터를 포함할 수 있다. 예를 들어, 캘린더 초대(calendar invite)를 발생키기 위한 요청은, 상기 아웃고잉 메시지가 캘린더 초대임을 나타내는 메시지 타입 식별자, 상기 초대를 수신하는 초대된 사람들의 리스트 및 상기 초대에 특정된 메시지 데이터, 예를 들어, 날짜, 시간, 장소 및 이벤트 타입을 포함할 수 있다. 상기 요청에 기초하여, 상기 메시지 서버(10)는 아웃고잉 메시지를 발생시킬 수 있다.
메시지 서버(10)는 하나 이상의 애플리케이션들에 대응하는 복수의 메시지 템플릿들을 저장할 수 있다. 메시지 템플릿은 아웃고잉 메시지들을 발생시키기 위해 사용될 수 있는 데이터 구조이다. 메시지 템플릿은 하나 이상의 템플릿 플레이스홀더 및 텍스트 부분을 포함할 수 있다. 메시지 서버(10)는 템플릿 플레이스홀더들 대신에 상기 요청에서 수신된 메시지 데이터로 대체함으로써 아웃고잉 메시지를 발생시킬 수 있다.
예를 들어, 캘린더 애플리케이션에 대한 메시지 템플릿은, "{안녕하세요, {수신자_이름}, {발신자_이름}은 당신을 {날짜}의 {시간}에 {위치}에서 있는 {이벤트_타입}에 초대합니다}"가 될 수 있다. 이 예에서, 템플릿 플레이스홀더들은 {수신자_이름}, {발신자_이름}, {이벤트_타입}, {위치}, {날짜} 및 {시간}이다. 메시지 서버(10)가 아웃고잉 메시지를 발생시키기 위한 요청을 수신할 때, 메시지 서버(10)는 상기 요청 내의 메시지 타입 식별자에 대응하는 메시지 타입의 메시지 템플릿을검색할 수 있다. 메시지 서버(10)는 검색된 메시지 템플릿의 템플릿 플레이스홀더들을 상기 요청에 제공되는 메시지 데이터로 대체함으로써 아웃고잉 메시지를 발생시킬 수 있다. 예를 들어, 메시지 서버(10)는 수신자의 이름, 발신자의 이름, 이벤트의 타입, 이벤트의 장소, 이벤트의 날짜, 그리고/또는 이벤트의 시간을 메시지 템플릿에 인서팅할 수 있다.
메시지 서버(10)는 상기 수신자들의 각각에 대한 수신자 선호들을 결정하도록 구성될 수 있다. 메시지 서버(10)는 아웃고잉 메시지를 발생시키기 위해 수신자 선호들을 사용할 수 있다. 예를 들어, 상기 수신자 선호들은 (상기 수신자의 주된 언어를 포함하는) 상기 수신자에 의해 이해되는 언어들의 리스트, 상기 수신자의 선호되는 날짜 포맷, 상기 수신자의 선호되는 통화(currency) 그리고/또는 상기 수신자의 선호되는 측정 단위들을 지정할 수 있다. 다른 수신자 선호들은 또한 상기 수신자의 캘린더 선호들, 수신자의 숫자 포맷팅 선호들, 수신자의 시간 포맷팅 선호들, 수신자의 표준 시간대(time zone) 선호 및 수신자의 언어의 사투리 선호를 포함할 수 있다. 수신자 선호들에 기초하여, 상기 메시지 서버(10)는 수신자의 주된 언어로 된 텍스트 부분을 갖는 메시지 템플릿을 검색할 수 있고, 그리고/또는 수신자 선호들에 따른 메시지 데이터로 포맷할 수 있는바, 예를 들어, 통화량은 수신자의 통화로 디스플레이될 수 있고, 그리고 날짜는 수신자의 선호되는 날짜 포맷으로 디스플레될 수 있다.
아웃고잉 메시지가 수신자 선호들에 따라 일단 발생하면, 아웃고잉 메시지는 수신자 디바이스(40)에 전송될 수 있다. 발신자 디바이스(20)와 마찬가지로, 수신자 디바이스(40)는 임의의 개인용 컴퓨팅 디바이스일 수 있다. 또한, 아웃고잉 메시지는 임의의 적합한 방식으로 수신자 디바이스(40)에 제공될 수 있음을 인식해야 된다. 예를 들어, 아웃고잉 메시지는 이메일 메시지, 메시지 서비스(SMS) 메시지, 멀티미디어 메시징 서비스(MMS) 메시지, 통지 또는 임의의 다른 적합한 포맷으로 제공될 수 있다.
도 2를 참조하면, 예시적인 메시지 서버(10)가 도시된다. 메시지 서버(10)는 메시지 발생 모듈(210), 수신자 선호 데이터베이스(220) 및 메시지 템플릿 데이터베이스(230)를 포함할 수 있다. 또한, 메시지 서버(10)는 번역 엔진(240)을 포함할 수 있거나 번역 엔진(240)과 통신할 수 있다.
메시지 발생 모듈(210)은 하나 이상의 애플리케이션 서버들(30) 그리고/또는 발신자 디바이스(20)로부터 아웃고잉 메시지를 발생시키기 위한 요청들을 수신할 수 있다. 상기에서 논의된 것처럼, 상기 요청은 메시지 타입 식별자, 수신자들의 리스트 및 메시지 데이터를 포함할 수 있다. 언급된 것처럼, 상기 메시지 데이터는 아웃고잉 메시지를 발생시키기 위해 사용되는 임의의 값들을 포함할 수 있다. 일부 상황들에서, 메시지 데이터는 발신자에 의해 제공되는 추가 텍스트를 더 포함할 수 있고, 상기 추가 텍스트는 상기 아웃고잉 메시지에 인서팅될 것이다.
메시지 발생 모듈(210)은 의도된 상기 메시지의 수신자들을 상기 요청에 기초하여 결정할 수 있다. 의도된 수신자 각각에 대하여, 메시지 발생 모듈(210)은 수신자 선호 데이터베이스(220)로부터 수신자 선호들을 검색할 수 있다. 수신자 선호 데이터베이스(220)는 복수의 수신자들의 각각에 대한 수신자 선호들을 저장한다. 수신자는 발신자를 포함하는 임의의 사용자가 될 수 있음이 이해된다. 각 수신자는 등록 프로세서 동안 또는 후속 갱신에서 하나 이상의 수신자 선호들을 제공할 수 있다. 수신자는, 상기 수신자의 언어 리스트, 상기 수신자의 주된 언어, 상기 수신자의 통화 선호, 상기 수신자의 날짜 선호 포맷 및 상기 수신자의 시간 포맷 선호를 포함하는 수신자 선호들을 제공할 수 있다. 날짜 포맷 선호들 또는 통화 선호와 같은 수신자 선호들의 일부는 수신자에 의해 구체적으로 제공되는 대안으로서 수신자의 국가 또는 지역으로부터 결정될 수 있음이 이해된다. 일부 실시예들에서, 수신자 선호들은 수신자의 사용자 프로필의 일부로서 또는 수신자의 사용자 프로필로 저장될 수 있다. 수신자 선호 데이터베이스(220)는 수신자의 이름, 수신자의 이메일 주소, 수신자의 id 번호 또는 임의의 다른 적합한 방식을 사용하여 인덱스되거나 액세스될 수 있음이 이해된다.
메시지 발생 모듈(210)은 아웃고잉 메시지를 발생시키기 위해 사용하도록 메시지 템플릿을 또한 검색할 수 있다. 메시지 발생 모듈(210)은 상기 요청에 기초하여 상기 메시지 템플릿을 검색할 수 있다. 언급된 것처럼, 일부 실시예들에서, 상기 요청은, 어떤 메시지 템플릿이 사용되는지 식별하는 메시지 타입 식별자 또는 임의의 다른 메커니즘을 가리킬 수 있다. 메시지 발생 모듈(210)은 상기 메시지 타입 식별자에 기초하여 상기 메시지 템플릿 데이터베이스(230)로부터 요청된 메시지 템플릿을 검색할 수 있다.
메시지 템플릿 데이터베이스(230)는 하나 이상의 애플리케이션들에 대응하는 복수의 메시지 템플릿들을 저장할 수 있다. 더욱이, 메시지 템플릿 데이터베이스(230)는 상기 복수의 메시지 템플릿들을 하나 이상의 메시지 템플릿들의 세트들로 편성할 수 있고, 메시지 템플릿들의 세트 각각은 동일한 메시지 타입이지만 서로 다른 언어들의 메시지 템플릿들을 포함한다. 예를 들어, 상기 메시지 템플릿 데이터베이스(230)는 캘린더 애플리케이션에 대응하는 하나 이상의 메시지 템플릿들의 세트들, 소셜 네트워킹 애플리케이션에 대응하는 하나 이상의 메시지 템플릿들의 세트들 및 어카운팅 애플리케이션에 대응하는 하나 이상의 메시지 템플릿들의 세트를 저장할 수 있다. 표 1은 상기에서 제공된 예에 대응하는 메시지 템플릿 데이터베이스(230)의 예시적인 편성을 나타낸다.
메시지 타입 ID 캘린더 - 1
(1-1)
캘린더 - 2
(1-2)
소셜 - 1
(2-1)
어카운팅 - 1
(3-1)
디폴트 언어 영어 영어 영어 영어
대체 언어 프랑스어 프랑스어 독일어 프랑스어
대체 언어 스페인어 스페인어 스페인어 스페인어
대체 언어 독일어 독일어 네덜란드어
대체 언어 중국어 중국어 중국어
... ... ... ...
대체 언어 한국어 한국어 일본어
표 1의 예에서, 상기 메시지 템플릿 데이터베이스는 캘린더 애플리케이션에 대응하는 2개의 메시지 템플릿들의 세트들, 소셜 네트워킹 애플리케이션에 대응하는 하나의 메시지 템플릿들의 세트 및 어카운팅 애플리케이션에 대응하는 하나 이상의 메시지 템플릿들의 세트를 저장할 수 있다. 디폴트 메시지 템플릿은 영어일 수 있지만, 메시지 템플릿들의 각 세트는 대체 언어들로 된 추가 메시지 템플릿들을 가진다. 표 내의 각 엔트리에서, 메시지 템플릿 데이터베이스(230)는 메시지 타입 식별자에 대응하는 메시지 템플릿을 저장할 수 있다. 예를 들어, 캘린더 메시지 템플릿들의 제1 세트는 1-1의 메시지 타입 식별자를 가질 수 있지만, 캘린더 메시지 템플릿들의 제2 세트는 1-2의 메시지 타입 식별자 및 언어를 가질 수 있다. 따라서, 이 예에서, 상기 캘린더 애플리케이션에 대응하는 메시지 템플릿들의 세트들은 영어, 프랑스어, 스페인어, 독일어, 중국어 및 한국어로 되어있다. 마찬가지로, 소셜 네트워킹 애플리케이션에 대응하는 메시지 템플릿들의 세트는 영어, 독일어, 스페인어, 네덜란드어, 중국어 및 일본어로 되어있다. 상기 예로부터 인식할 수 있듯이, 어카운팅 애플리케이션에 대응하는 메시지 템플릿들의 세트는 영어, 프랑스어 및 스페인어로 되어있다. 따라서, 이러한 예에서, 수신자가 메시지 타입 식별자 1-1에 대응하는 메시지를 수신하고, 상기 수신자의 주된 언어가 프랑스어라면, 메시지 발생 모듈(210)은 프랑스어로 된 메시지 타입 식별자에 대응하는 메시지 템플릿을 검색할 수 있다.
전술한 것으로부터 알 수 있듯이, 상기 메시지 발생 모듈(210)은 상기 메시지 타입 식별자 및 수신자의 주된 언어에 대응하는 상기 메시지 템플릿 데이터베이스(230)로부터 메시지 템플릿을 검색할 수 있다. 수신자의 주된 언어로 된 메시지 템플릿들이 존재하지 않으면, 메시지 발생 모듈(210)은 사용자에 의해 이해되는 언어들의 리스트에 개시된 다른 언어들 중 하나로 된 메시지 템플릿을 선택할 수 있다. 상기 메시지 타입 식별자에 대응하는 메시지 템플릿들이 존재하지 않거나 상기 수신자에 의해 이해되는 언어들 중 하나로 된 메시지 템플릿들이 존재하지 않으면, 그때, 상기 메시지 발생 모듈(210)은 디폴트 언어, 예를 들어, 영어로 된 디폴트 메시지 템플릿을 검색할 수 있다.
일단 메시지 발생 모듈(21)이 메시지 템플릿을 검색하면, 메시지 발생 모듈(210)은 상기 요청에서 수신된 상기 메시지 데이터에 기초하는 아웃고잉 메시지, 상기 수신자 선호 데이터베이스로부터 검색된 수신자 선호들 및 상기 검색된 메시지 템플릿을 발생시킬 수 있다. 상기에서 논의된 것처럼, 상기 메시지 템플릿은 하나 이상의 템플릿 플레이스홀더들을 포함할 수 있다. 메시지 발생 모듈(210)은 상기 템플릿 플레이스홀더들을 상기 요청에서 수신된 상기 메시지 데이터로 대체할 수 있다. 인식되어야 하는 것으로서, 아웃고잉 메시지를 요청하는 애플리케이션은 상기 애플리케이션에 대응하는 메시지 템플릿들에서 사용되는 특정 템플릿 플레이스홀더들을 알 수 있다. 따라서, 메시지 데이터는 메시지 타입 식별자에 의해 식별된 메시지 템플릿에 대한 템플릿 플레이스홀더들의 각각에 대해 특정 값들을 포함할 수 있다. 예를 들어, 메시지 템플릿이 "{안녕하세요, {수신자_이름}, {발신자_이름}은 당신을 {날짜}의 {시간}에 {위치}에서 있는 {이벤트_타입}에 초대합니다}"이라면, 상기 요청 내의 메시지 데이터는 상기 템플릿 플레이스홀더들: {수신자_이름}, {발신자_이름}, {이벤트_타입}, {위치}, {날짜} 및 {시간}에 대응하는 값들을 가질 수 있다. 따라서, 상기 메시지 발생 모듈(210)은 상기 아웃고잉 메시지를 발생시키도록 상기 메시지 데이터로 수신된 값들을 상기 메시지 템플릿으로 대체할 수 있다.
또한, 메시지 발생 모듈(210)은 수신자 선호들에 따라 아웃고잉 메시지를 발생시킬 수 있다. 예를 들어, 날짜(date) 포맷의 수신자 선호가 유럽의 포맷, 예를 들어, "날짜 월 년도"라면, 메시지 발생 모듈(210)은 상기 수신자의 수신자 선호들에 따라 아웃고잉 메시지에 열거된 임의의 날짜들을 포맷할 수 있다. 마찬가지로, 상기 요청 내의 메시지 데이터가 달러로 된 화폐적 가치(monetary value)들을 포함하고, 수신자의 선호 통화가 유로화라면, 메시지 발생 모듈(210)은 제공된 통화, 예를 들면, 달러의 화폐적 가치를 수신자의 선호 통화, 예를 들면, 유로화로 변환할 수 있고, 변환된 화폐적 가치를 출력 메시지에 인서팅할 수 있다. 인식되어야 하는 것으로서, 메시지 발생 모듈(210)은 통화 가치들, 측정값들 또는 변환이 요구될 수 있는 임의의 다른 값들로 변환하는 서버와 통신할 수 있다.
추가적으로, 메시지 발생 모듈(210)은 수신자 값들에 따라 아웃고잉 메시지 템플릿 내의 특정 값들을 포맷하도록 구성될 수 있다. 날짜 포맷에 대한 수신자 선호의 예에서, 상기 메시지 발생 모듈(210)은 서로 다른 날짜 포맷들에 대한 템플릿들을 가질 수 있다. 예를 들어, 수신자의 수신자 선호에 따라, 날짜인 12월 6일, 2011년(December 6, 2011)은 "6일 12월 2011년(6 December 2011)", "6 12 2011(6 DEC 2011)", "12/6/2011", "12.06.2011" 또는 사용되는 임의의 다른 포맷으로 포맷될 수 있다. 이후, 메시지 발생 모듈(210)은 검색된 메시지 템플릿 내의 템플릿 플레이스홀더들을 대신하여 상기 수신자 선호들에 따라 포맷된 값들로 대체할 수 있고, 그 결과 상기 아웃고잉 메시지를 발생시킨다.
일부 실시예들에서, 상기 요청에서 수신된 메시지 데이터는 상기 아웃고잉 메시지에서 포함될 추가 텍스트를 포함할 수 있다. 예를 들어, 파티로의 캘린더 초대의 예에서, 발신자는 "어떤 선물도 사양합니다(No gifts please)"와 같은 아웃고잉 메시지에 포함될 메시지를 포함할 수 있다. 인식되어야 하는 것으로서, 상기 캘린더 초대에 대응하는 상기 메시지 템플릿들은 추가 텍스트에 대한 필드를 포함할 수 있지만, 상기 메시지 템플릿들의 텍스트 부분은 상기 메시지 템플릿에 포함되는 실제적인 추가 텍스트를 가지지 않을 수 있다. 이러한 상황들에서, 일단 메시지 발생 모듈(210)이 상기 아웃고잉 메시지를 발생시키기 위해 사용될 메시지 템플릿을 검색하면, 메시지 발생 모듈(210)은 번역 엔진(240)에 추가 텍스트를 제공할 수 있다. 번역 엔진(240)은 발신자의 언어로부터 검색된 메시지 템플릿의 언어로 추가 텍스트를 변역하고 상기 번역된 텍스트를 메시지 발생 모듈(210)로 되돌린다. 예를 들어, 상기 발신자가 상기 추가 메시지를 영어로 제공받고, 검색된 메시지 템플릿이 프랑스어라면, 메시지 발생 모듈(210)은 번역 엔진(240)으로 하여금 상기 추가 텍스트를 영어에서 프랑스어로 번역하게 할 수 있고, 그리고 그 결과로 발생된 번역 텍스트를 프랑스어 메시지 템플릿에 인서팅하여 아웃고잉 메시지를 발생시킬 수 있다.
마찬가지로, 일부 템플릿 플레이스홀더들은 번역을 요구하는 단어들을 대신할 수 있다. 예를 들어, 상기 템플릿 홀더가 위치 또는 이벤트 타입에 대한 것이라면, 상기 발신자에 의해 제공된 메시지 데이터는 번역(예를 들어, 보통 명사) 또는 음역(transliteration)(예를 들어, 이름들 또는 고유 명사)를 요구할 수 있다. 이러한 상황들에서, 메시지 발생 모듈(210)은, 번역 또는 음역을 요구하는 메시지 데이터를 번역 엔진(240)에 제공할 수 있고, 상기 번역 엔진(240)은 상기 아웃고잉 메시지의 타겟 언어로 상기 메시지 데이터를 되돌린다.
메시지 발생 모듈(210)은 수신자에게 아웃고잉 메시지를 제공할 수 있다. 상기에서 논의된 것처럼, 상기 수신자는 상기 수신자 디바이스(40)에서 상기 아웃고잉 메시지를 수신할 수 있다. 상기 아웃고잉 메시지는 수신자 디바이스(40)에 푸시(push)될 수 있거나 수신자 디바이스(40)가 상기 아웃고잉 메시지를 획득하기 위해 메시지 서버(10) 또는 애플리케이션 서버(30)에 액세스할 필요가 있다.
상기에서 논의된 기술들은 단지 예로서 제공됨을 알아야 한다. 메시지 서버(10)의 변형들은 고려되고 본 발명의 범위 내에 존재한다.
도 3을 참조하면, 아웃고잉 메시지를 발생시키는 예시적인 기술(300)이 도시된다. 310에서, 메시지 발생 모듈(210)은 하나 이상의 수신자들에 대한 아웃고잉 메시지를 발생시키기 위한 요청을 수신할 수 있다. 논의된 것처럼, 상기 요청은 하나 이상의 의도된 수신자들, 메시지 타입 식별자 및 메시지 데이터를 가리키는 수신자 지시자(recipient incicator)를 포함할 수 있다. 312에서, 메시지 발생 모듈(210)은, 의도된 수신자들 각각에 대해, 수신자 선호 데이터베이스(220)로부터 수신자의 수신자 선호들을 검색할 수 있다. 이전에 서술된 것처럼, 특정 수신자의 수신자 선호들은 상기 특정 수신자에게 전달될 메시지들의 커스텀화(customization)에 관련될 수 있다.
314에서, 메시지 발생 모듈(210)은, 각 수신자에 대해, 상기 요청에서 수신된 메시지 타입 식별자 및 상기 수신자의 수신자 선호들에 기초하여 상기 메시지 템플릿 데이터베이스(230)로부터 메시지 템플릿을 검색할 수 있다. 즉, 상기 메시지 발생 모듈(210)은, 수신자의 주된 언어를 포함하는, 수신자에 의해 이해되는 언어들의 리스트에 기초하여 상기 메시지 템플릿을 검색할 수 있다. 아래에서 더 상세하게 논의될 것으로, 메시지 발생 모듈(210)은 수신자의 주된 언어, 상기 수신자에 의해 이해되는 다른 언어, 또는 디폴트 언어로 된 메시지 템플릿을 검색할 수 있다.
316에서, 메시지 발생 모듈(210)은 검색된 메시지 템플릿들에 기초하여 아웃고잉 메시지들을 발생시킬 수 있다. 상기에서 논의된 것처럼, 상기 메시지 템플릿들은 서로 다른 포맷들 또는 단위들로 표현될 수 있는 값들을 표현하는 템플릿 플레이스홀더들을 포함할 수 있다. 메시지 발생 모듈(210)은 각 수신자가 디스플레이될 값들을 얼마나 선호하는지에 관련한 수신자 선호들, 예를 들어, 선호되는 날짜 포맷 또는 선호되는 통화를 결정한다. 메시지 발생 모듈(210)은 상기 수신자 선호들에 따라 템플릿 플레이스홀더들을 대체할 상기 값들을 발생시킬 수 있다. 이후, 메시지 발생 모듈(210)은 템플릿 플레이스홀더들을 값들로 대체할 수 있고, 그 결과 각 수신자에 대한 아웃고잉 메시지들을 발생시킨다. 318에서, 메시지 발생 모듈(210)은 하나 이상의 수신자들에 아웃고잉 메시지들을 제공할 수 있다.
위에서 더 상세하게 논의된 것처럼, 상기 요청은 하나 보다 많은 수신자들을 표시할 수 있다. 이전의 기술(300)은 상기 요청에 표시된 각 수신자에 대해 반복될 수 있음이 이해되어야 한다. 또한, 기술(300)의 변형들은 고려되고 본 발명의 범위 내에 존재한다.
도 4를 참조하면, 복수의 메시지 템플릿들로부터 메시지 템플릿을 선택하는 예시적인 기술(400)이 도시된다. 논의된 것처럼, 아웃고잉 메시지를 발생시키기 위한 요청은 메시지 발생 모듈(210)에 제공될 수 있고, 메시지 발생 모듈(210)은 상기 요청에 기초하여 수신자의 수신자 선호들을 검색한다. 410에서, 메시지 발생 모듈(210)은 상기 수신자 선호들로부터 수신자의 주된 언어를 포함하는 수신자의 하나 이상의 언어들을 결정할 수 있다.
412에서, 메시지 발생 모듈(210)은 상기 요청에 포함되는 메시지 타입 식별자에 대응하는 메시지 템플릿들의 세트를 식별할 수 있다. 상기에서 논의된 것처럼, 메시지 템플릿 데이터베이스(230)는 하나 이상의 애플리케이션들에 대응하는 복수의 메시지 템플릿들을 포함할 수 있다. 상기 복수의 메시지 템플릿들 내에, 상기 메시지 템플릿 데이터베이스(230)는 하나 이상의 메시지 템플릿들의 세트를 저장한다. 메시지 템플릿들의 세트 각각은 서로 다른 메시지 타입에 대응하고 하나 이상의 서로 다른 언어들로 된 하나 이상의 메시지 템플릿들을 포함한다. 예를 들어, 소셜 네트워킹 사이트에 대응하는 메시지 템플릿의 세트는, 사용자가 그들의 네트워크에 메시지 템플릿들을 부가하는 수신자를 변경하는 복수의 서로 다른 언어로 된 서로 다른 메시지 템플릿들을 포함할 수 있다. 예를 들어, 메시지 템플릿들의 세트는 영어 메시지 템플릿, 예를 들어, {{PERSON_NAME} has added you to their network.}} 그리고 독일어 메시지 템플릿, 예를 들어, {{PERSON_NAME} heeft toegevoegd aan hun network.}}."을 포함할 수 있다. 예시적인 메시지 템플릿들은 동일한 메시지 타입에 대응하고, 따라서, 동일한 메시지 타입 식별자를 공유할 수 있음이 이해된다. 따라서, 상기 메시지 발생 모듈(210)은, 상기 요청에 수신된 메시지 타입 식별자에 대응하는 메시지 템플릿들의 세트를 식별할 수 있다.
414에서, 메시지 발생 모듈(210)은, 메시지 템플릿들의 식별된 세트 내의 메시지 템플릿들의 일부가 상기 수신자의 주된 언어로 되어있는지 여부를 결정할 수 있다. 수신자의 주된 언어로 된 메시지 템플릿들의 세트 내에 메시지 템플릿이 존재하면, 메시지 템플릿은, 도 416에서 도시된 것처럼, 메시지 템플릿 데이터베이스(230)로부터 검색될 수 있다. 수신자의 주된 언어로 된 메시지 템플릿 세트 내에 메시지 템플릿들이 존재하지 않으면, 메시지 발생 모듈(210)은, 도 418에서 도시된 것처럼, 수신자에 의해 이해되는 다른 언어로 된 메시지 템플릿들의 세트 내에 임의의 메시지 템플릿들이 존재하는지 여부를 결정할 수 있다. 그렇다면, 상기 다른 언어로 된 메시지 템플릿은, 도 420에서 도시된 것처럼, 메시지 템플릿 데이터베이스(230)로부터 검색된다. 수신자에 의해 이해되는 언어로 된 메시지 템플릿이 존재하지 않으면, 디폴트 메시지 템플릿은, 도 422에서 도시된 것처럼, 메시지 템플릿 데이터베이스(230)로부터 검색될 수 있다.
424에서, 메시지 발생 모듈(210)은 검색된 메시지 템플릿 및 수신자 선호들에 기초하여 아웃고잉 메시지를 발생시킬 수 있다. 상기에서 논의된 것처럼, 메시지 발생 모듈(210)은 수신자의 수신자 선호들에 따라 메시지 데이터로 수신된 특정 값들로 포맷할 수 있다.
이전의 기술(400)은 단지 예로서 제공되고, 제한되도록 의도되지 않는 것이 이해된다. 기술(400)의 변형들은 고려되고 본 발명의 범위 내에 존재한다.
본 발명이 완전해지고, 범위를 당업자에게 전적으로 전달할 수 있도록 예시적인 실시예들이 제공된다. 많은 구체적인 세부사항들은, 본 발명의 실시예들의 완전한 이해를 제공하기 위해 구체적인 구성요소들, 디바이스들 및 기법들의 예들로서 설정된다. 구체적인 세부사항들은 이용될 필요가 없고, 예시적인 실시예들은 많은 다른 형태들로 실시될 수 있으며, 어떤 것도 본 발명의 범위를 제한하도록 해석되지 않아야하는 것이 당업자들에게 자명할 것이다. 일부 예시적인 실시예들에서, 잘 알려진 절차들, 잘 알려진 디바이스 구조들, 및 잘 알려진 기법들은 상세하게 서술되지 않는다.
본 발명에서 사용된 전문 용어들은 단지 특정 예시적인 실시예들을 서술할 목적이고, 제한되도록 의도되지 않는다. 본 발명에서 사용된 것처럼, 단수형 용어 "하나의", 및 "상기"는, 콘텍스트에서 명확하게 다르게 서술하지 않으면, 복수형들을 포함하도록 의도될 수 있다. 용어 "그리고/또는"는 하나 이상의 관련된 항목들의 아이템들의 임의의 그리고 모든 조합들을 포함한다. 용어 "포함한다", "포함하는", "구비하는" 및 "갖는"은 포괄적이고, 따라서 언급된 특징들, 정수들, 단계들, 동작들, 요소들, 그리고/또는 구성요소들의 존재를 명시하지만, 하나 이상의 다른 특징들, 정수들, 단계들, 동작들, 요소들, 구성요소들, 그리고/또는 그것의 그룹들의 존재 및 부가를 배제하지 않는다. 본 발명에서 서술된 기법 단계들, 프로세스들 및 동작들은, 수행의 순서로서 구체적으로 식별되지 않으면, 논의되거나 예시된 특정 순서로 그것들의 수행을 반드시 요구하는 것으로 해석되지 않는다. 또한, 부가적인 또는 대안적인 단계들은 이용될 수 있을 것으로 이해된다.
용어 제1, 제2, 제3 등은 여러 요소들, 구성요소들, 영역들, 층들 그리고/또는 섹션들을 서술하기 위해 본 발명에서 사용될 수 있지만, 이러한 요소들, 구성요소들, 영역들, 층들 그리고/또는 세션들은 이러한 용어들에 의해 제한되지 않아야 한다. 이러한 용어들은 단지 하나의 요소, 구성요소, 영역, 층 또는 섹션을 다른 영역, 층 또는 섹션으로부터 구별하기 위해 사용될 수 있다. 본 명세서에서 사용될 때 "제1", "제2", 및 다른 숫자 용어들은, 콘텍스트에 의해 명확하게 다르게 지시되지 않으면, 시퀀스 또는 순서를 의미하는 것이 아니다. 따라서, 아래에서 논의된 제1 요소, 구성요소, 영역 층 또는 섹션은 예시적인 실시예들의 교시들로부터 벗어나지 않고 제2 요소, 구성요소, 영역, 층 또는 섹션으로 칭해질 수 있다.
본 발명에서 사용된 것처럼, 용어 모듈은 ASIC(응용-특정 집적 회로); 전자 회로; 조합 논리 회로; FPGA(필드 프로그램가능 게이트 어레이); 코드를 실행하는 (공유, 전용, 또는 그룹) 프로세서, 또는 네트워킹된 클러스터들 또는 데이터센터들 내의 저장장치 및 프로세서들의 분산형 네트워크에 의해 실행된 프로세스; 서술된 기능성을 제공하는 다른 적합한 구성요소들; 또는 시스템-온-칩에서와 같이 상기의 일부 또는 모든 것의 조합을 언급하거나 부분이 될 수 있거나 포함할 수 있다. 용어 모듈은 하나 이상의 프로세서들에 의해 실행된 코드를 저장하는 (공유, 전용, 또는 그룹) 메모리를 포함할 수 있다.
상기에서 사용된 용어 코드는 소프트웨어, 펌웨어, 바이트코드 그리고/또는 마이크로코드를 포함할 수 있고, 프로그램들, 루틴들, 기능들, 클래스들, 그리고/또는 객체들을 언급할 수 있다. 상기에서 사용된 것처럼, 용어 공유는 다중 모듈들로부터 일부 또는 모든 코드는 단일의 (공유) 프로세서를 사용하여 실행될 수 있다. 부가하여, 다중 모듈들로부터의 일부 또는 모든 코드는 단일의 (공유) 메모리에 의해 저장될 수 있다. 상기에서 사용되는 것처럼, 용어 그룹은 단일 모듈로부터의 일부 또는 모든 코드는 한 그룹의 프로세서들을 사용하여 실행될 수 있다. 부가하여, 단일 모듈로부터의 일부 또는 모든 코드는 한 그룹의 메모리들을 사용하여 저장될 수 있다.
본 발명에서 서술된 기법들은 하나 이상의 프로세서들에 의해 실행된 하나 이상의 컴퓨터 프로그램들에 의해 구현될 수 있다. 컴퓨터 프로그램들은 비일시적인 유형의 컴퓨터 판독가능한 컴퓨터 판독가능한 매체 상에 저장된 프로세서-실행가능한 명령들을 포함한다. 컴퓨터 프로그램들은 또한 저장된 데이터를 포함할 수 있다. 비일시적인 유형의 컴퓨터 판독가능한 매체의 비제한적인 예들은 비휘발성 메모리, 자기 저장장치, 및 광 저장장치이다.
상기 서술의 일부 부분들은 정보에 관한 동작들의 알고리즘들 및 심볼 표현들 면에서 본 발명에 서술된 기법들을 나타낸다. 이러한 알고리즘의 서술들 및 표현들은 다른 당업자들에게 자신들의 저작물의 핵심을 가장 효율적으로 전달하기 위해 데이터 처리 분야의 당업자에 의해 사용된 수단이다. 기능적으로 또는 논리적으로 서술되는 동안 이러한 동작들은 컴퓨터 프로그램들에 의해 구현될 것으로 이해된다. 더욱이, 일반성을 잃지 않은 채, 기능적인 명칭들에 의하거나 모듈들로서 동작들의 이러한 배열들을 언급하는 것은 또한 때로는 편리한 것으로 증명된다.
상기의 논의에서 나타난 것과 특별히 다르게 언급되지 않으면, 상기 서술을 통해, "처리하는" 또는 "산출하는" 또는 "계산하는" 또는 "결정하는" 또는 "디스플레이하는" 등을 사용하는 논의들은 컴퓨터 시스템 또는 유사한 전자 컴퓨팅 시스템 디바이스의 활동 및 프로세스들을 언급하고, 이러한 활동 및 프로세서들은 컴퓨터 시스템 메모리들 또는 레지스터들 또는 다른 그와 같은 정보 저장장치, 전송 또는 디스플레이 디바이스들 내의 물리적인 (전자)량들로서 표현된 데이터를 다루고 변형시킨다.
서술된 기법들의 일정 양상들은 알고리즘의 형태로 본 발명에서 서술된 프로세스 단계들 및 명령들은 포함한다. 서술된 프로세스 단계들 및 명령들은 소프트웨어, 펌웨어 또는 하드웨어로 구현될 수 있고, 소프트웨어로 구현될 때, 실시간 네트워크 동작 시스템들에 의해 사용된 다른 플랫폼들로부터 동작될 수 있거나 상기 다른 플랫폼상에 존재하도록 다운로딩될 수 있다.
본 발명은 또한 본 명세서의 동작들을 수행하기 위한 장치에 관한 것이다. 이 장치는 요구된 목적들에 대해 특별히 구성될 수 있거나 컴퓨터에 의해 액세스될 수 있는 컴퓨터 판독가능한 매체 상에 저장된 컴퓨터 프로그램에 의해 선택적으로 활성화되거나 재구성된 범용 컴퓨터를 포함할 수 있다. 그와 같은 컴퓨터 프로그램은 플로피 디스크들, 광 디스크들, CD-ROM들, 자기-광 디스크들, 판독-전용 메모리(ROM)들, 랜덤 액세스 메모리(RAM)들, EPROM들, EEPROM들, 자기 또는 광 카드들, 주문형 반도체(ASIC)들을 포함하는 임의의 타입의 디스크, 또는 전자 명령들을 저장하기에 적합하고, 컴퓨터 시스템 버스에 각각 결합된 임의의 타입의 매체와 같은 유형의 컴퓨터 판독가능한 저장 매체에 저장될 수 있지만, 이에 제한되지는 않는다. 더욱이, 본 명세서에서 언급된 컴퓨터들은 단일의 프로세서를 포함할 수 있거나 증가된 계산 능력에 대해 다수의 프로세서 설계들을 이용하는 아키텍처들일 수 있다.
본 발명에서 표현된 알고리즘들 및 동작들은 임의의 특정 컴퓨터 또는 다른 장치에 내재적으로 관련되지 않는다. 여러 범용 컴퓨터 시스템들은 또한 본 명세서의 교시들에 따른 프로그램들로 사용될 수 있거나, 요청된 기법 단계들을 수행하기 위한 더욱 구체화된 장치들을 구성하는 것이 편리한 것으로 증명될 것이다. 다양한 이러한 시스템들에 대한 요구된 구조는 동등한 변화들에 따라 당업자에게 명백할 것이다. 또한, 본 발명은 임의의 특정한 프로그래밍 언어를 참조하여 서술되지 않는다. 다양한 프로그래밍 언어들은 본 발명에 서술된 본 발명의 교시들을 구현하기 위해 사용될 수 있고, 특정 언어들에 대한 임의의 참조들은 본 발명의 가능 모드 및 최선의 모드의 개시를 위해 제공된다.
본 발명은 많은 토폴로지들에 걸쳐 넓고 다양한 컴퓨터 네트워크 시스템들에 매우 적합하다. 이러한 필드내에서, 큰 네트워크들의 구성 및 관리는 인터넷과 같은 네트워크를 통해 상이한 컴퓨터들 및 저장 디바이스들에 통신가능하게 결합된 컴퓨터들 및 저장 디바이스들을 포함한다.
실시예들의 이전의 서술은 예시 및 서술의 목적으로 제공되고 있다. 이러한 서술은 완전하거나 본 발명을 제한하도록 의도되지 않는다. 일반적으로, 특정 실시예들의 개별적인 요소들 또는 특징들은, 구체적으로 도시되거나 서술되지 않을 경우라도 상호변경가능하거나 선택된 실시예에서 사용될 수 있는 특정 실시예로 제한되지 않지만 선택된 실시예에서 사용될 수 있다. 동일한 것은 또한 많은 방법들로 변할 수 있다. 그와 같은 변형들은 본 발명을 벗어나지 않는 것으로 간주되지 않고, 또한 모든 그와 같은 수정들은 본 발명의 범위 내에 포함되는 것으로 의도된다.

Claims (20)

  1. 컴퓨터로 구현되는 방법으로서,
    메시지 서버에 의해 그리고 발신자 컴퓨팅 디바이스로부터, 하나 이상의 수신자들 각각에 대해 아웃고잉 메시지를 발생시키기 위한 요청을 수신하는 단계 - 상기 요청은 상기 하나 이상의 수신자들을 식별하고, 상기 요청은, 발생될 아웃고잉 메시지에 대해, (i) 아웃고잉 메시지 타입을 식별하는 메시지 타입 식별자 및 (ii) 상기 아웃고잉 메시지를 발생시키는데 사용되는 메시지 데이터 만을 포함하고, 상기 메시지 데이터는 비-언어-특정 값들(non-language-specific values) 및 소스 언어로 된 텍스트 모두를 포함하고,
    상기 하나 이상의 수신자들 각각에 대해 상기 아웃고잉 메시지를 발생시키기 위한 요청을 수신하는 단계에 응답하여,
    a) 상기 메시지 서버에 의해 그리고 수신자 선호 데이터베이스로부터, 적어도 2개의 수신자 선호들을 검색하는 단계 - 각 수신자 선호는 상기 하나 이상의 수신자들 중 특정 수신자에 대응하며, 상기 적어도 2개의 수신자 선호들은 (1) 상기 특정 수신자에 전달될 메시지들의 커스텀화(customization)에 관련되고, 그리고 (2)(A) 상기 특정 수신자에 의해 이해되는 하나 이상의 언어들, 및
    (B) (i) 상기 특정 수신자의 날짜(date) 포맷 선호,
    (ii) 상기 특정 수신자의 측정 단위 선호,
    (iii) 상기 특정 수신자의 통화(currency) 선호,
    (iv) 상기 특정 수신자의 숫자 포맷팅 선호(number formatting preference),
    (v) 상기 특정 수신자의 시간 포맷팅 선호,
    (vi) 상기 특정 수신자의 표준 시간대(time zone) 선호 및
    (vii) 상기 특정 수신자의 언어 사투리 선호 중 적어도 하나를 포함하며 - 와;
    b) 상기 메시지 타입 식별자 및 상기 특정 수신자에 의해 이해되는 하나 이상의 언어들에 기초하여, 상기 메시지 서버에 의해, 메시지 템플릿 데이터베이스에 각각 저장된 복수의 애플리케이션 특정 메시지 템플릿들로부터 메시지 템플릿을 검색하는 단계 - 상기 검색된 메시지 템플릿은 상기 특정 수신자에 의해 이해되는 하나 이상의 언어들 중 하나인 타겟 언어와 연관되고, 그리고 상기 타겟 언어는 상기 소스 언어와 상이하며 - 와;
    c) 상기 검색된 메시지 템플릿, 상기 메시지 데이터, 및 상기 특정 수신자에 대응하는 적어도 2개의 수신자 선호들을 사용하여, 상기 메시지 서버에 의해,
    상기 비-언어-특정 값들을 상기 아웃고잉 메시지의 하나 이상의 값 위치들에 인서팅하고, 상기 하나 이상의 값 위치들은 상기 검색된 메시지 템플릿에 의해 특정되며,
    상기 소스 언어에서 상기 타겟 언어로의 상기 소스 언어의 텍스트의 번역을 획득함으로써 번역된 텍스트를 얻고, 그리고
    상기 하나 이상의 텍스트 위치들에 상기 번역된 텍스트를 인서팅함으로써, 상기 아웃고잉 메시지를 발생시키는 단계 - 상기 하나 이상의 텍스트 위치들은 상기 검색된 메시지 템플릿에 의해 특정되며 - 와;
    d) 상기 메시지 서버에 의해, 수신자 컴퓨팅 디바이스에 상기 발생된 아웃고잉 메시지를 제공하는 단계를 포함하고,
    상기 수신자 컴퓨팅 디바이스는 상기 특정 수신자와 관련되고,
    상기 발생된 아웃고잉 메시지의 수신은, 상기 수신자 컴퓨팅 디바이스로 하여금 (i) 상기 발생된 아웃고잉 메시지를 렌더링함으로써 디스플레이 가능한 메시지를 획득하게 하고, 그리고 (ii) 상기 수신자 컴퓨팅 디바이스의 디스플레이 상에 상기 디스플레이 가능한 메시지를 디스플레이하도록 하며,
    상기 복수의 애플리케이션 특정 메시지 템플릿들은 각각 복수의 애플리케이션 타입들과 관련된 애플리케이션 특정 메시지 템플릿들의 복수의 세트를 포함하고, 그리고 상기 애플리케이션 특정 메시지 템플릿들의 복수의 세트들의 각각의 세트는 (i) 상기 애플리케이션 특정 메시지 템플릿들의 복수의 세트들 중 나머지와 상이한 애플리케이션 및 (ii) 상기 애플리케이션 특정 메시지 템플릿들의 상기 복수의 세트들 중 나머지와 상이한 언어들의 세트들과 관련되는 것을 특징으로 하는
    컴퓨터로 구현되는 방법.
  2. 컴퓨터로 구현되는 방법으로서,
    메시지 서버에 의해 그리고 발신자 컴퓨팅 디바이스로부터, 제1 수신자에 대해, 아웃고잉 메시지를 발생시키기 위한 요청을 수신하는 단계 - 상기 요청은 상기 제1 수신자를 식별하고, 그리고 상기 요청은, (i) 비-언어-특정값들(non-language-specific values) 및 소스 언어로 된 텍스트를 포함하는 메시지 데이터를 포함하며 - 와;
    상기 제1 수신자에 대해, 아웃고잉 메시지를 발생시키기 위한 요청을 수신하는 단계에 응답하여,
    상기 메시지 서버에 의해 그리고 수신자 선호 데이터베이스로부터, 하나 이상의 제1 수신자 선호들을 검색하는 단계 - 상기 하나 이상의 제1 수신자 선호들은 상기 수신자에 전달될 메시지들의 커스텀화에 관련되고, 그리고 상기 하나 이상의 제1 수신자 선호들은 상기 제1 수신자에 의해 이해되는 하나 이상의 제1 언어들을 포함하고, 상기 제1 수신자에 의해 이해되는 상기 하나 이상의 제1 언어들은 상기 제1 수신자의 주된 언어를 포함하고, 그리고 상기 제1 수신자의 주된 언어는 상기 소스 언어와 상이하며 - 와;
    상기 메시지 데이터 및 상기 하나 이상의 제1 수신자 선호들에 기초하여, 상기 메시지 서버에 의해 그리고 메시지 템플릿 데이터베이스에 각각 저장된 복수의 애플리케이션 특정 메시지 템플릿들로부터 제1 메시지 템플릿을 검색하는 단계 - 상기 검색된 메시지 템플릿은 상기 제1 수신자의 주된 언어와 관련되고,
    상기 검색된 제1 메시지 템플릿, 상기 메시지 데이터 및 상기 하나 이상의 제1 수신자 선호들을 사용하여, 상기 메시지 서버에 의해,
    상기 비-언어-특정 값들을 제1 아웃고잉 메시지의 하나 이상의 값 위치들에 인서팅하고, 상기 하나 이상의 값 위치들은 상기 검색된 제1 메시지 템플릿에 의해 특정되며,
    (i) 상기 소스 언어에서 (ii) 상기 제1 수신자의 주된 언어로의 상기 소스 언어의 텍스트의 번역을 획득함으로써 번역된 텍스트를 얻고, 그리고
    제1 아웃고잉 메시지의 하나 이상의 텍스트 위치들에 상기 번역된 텍스트를 인서팅함으로써, 제1 아웃고잉 메시지를 발생시키는 단계 - 상기 하나 이상의 텍스트 위치들은 상기 검색된 메시지 템플릿에 의해 특정되며 - 와;
    상기 메시지 서버에 의해 제1 수신자 컴퓨팅 디바이스에 상기 발생된 제1 아웃고잉 메시지를 제공하는 단계를 포함하고,
    상기 제1 수신자 컴퓨팅 디바이스는 상기 제1 수신자와 관련되고,
    상기 발생된 제1 아웃고잉 메시지의 수신은, 상기 제1 수신자 컴퓨팅 디바이스로 하여금 (i) 상기 발생된 제1 아웃고잉 메시지를 렌더링함으로써 디스플레이 가능한 메시지를 획득하게 하고, 그리고 (ii) 상기 제1 수신자 컴퓨팅 디바이스의 디스플레이상에 상기 디스플레이 가능한 메시지를 디스플레이하도록 하며,
    상기 복수의 애플리케이션 특정 메시지 템플릿들은 각각 복수의 애플리케이션 타입들과 관련된 애플리케이션 특정 메시지 템플릿들의 복수의 세트를 포함하고, 그리고 상기 애플리케이션 특정 메시지 템플릿들의 복수의 세트들의 각각의 세트는 (i) 상기 애플리케이션 특정 메시지 템플릿들의 복수의 세트들 중 나머지와 상이한 애플리케이션 및 (ii) 상기 애플리케이션 특정 메시지 템플릿들의 상기 복수의 세트들 중 나머지와 상이한 언어들의 세트들과 관련되는 것을 특징으로 하는
    컴퓨터로 구현되는 방법.
  3. 제2항에 있어서,
    상기 메시지 서버에 의해 그리고 메시지 템플릿 데이터베이스에 각각 저장된 복수의 애플리케이션 특정 메시지 템플릿들로부터 제1 메시지 템플릿을 검색하는 단계는:
    상기 서버에 의해, 상기 메시지 템플릿 데이터베이스에 저장된 복수의 메시지 템플릿들 중 임의의 메시지 템플릿이 상기 제1 수신자의 주된 언어와 관련되는지를 결정하는 단계와; 그리고
    상기 복수의 메시지 템플릿들 중 제1 특정 메시지 템플릿이 상기 제1 수신자의 주된 언어와 관련이 있는 것으로 결정될 때, 상기 메시지 템플릿 데이터베이스로부터 상기 제1 특정 메시지 템플릿을 검색함으로써 상기 검색된 제1 메시지 템플릿을, 상기 서버에 의해, 획득하는 단계를 포함하는 것을 특징으로 하는
    컴퓨터로 구현되는 방법.
  4. 제3항에 있어서,
    (i) 상기 복수의 메시지 템플릿들 중 어느 것도 상기 제1 수신자의 주된 언어와 관련되지 않고, 그리고 (ii) 상기 제1 수신자에 의해 이해되는 상기 하나 이상의 언어들이 상기 제1 수신자에 의해 이해되는 적어도 2개의 언어들을 포함할 때, 상기 제1 수신자에 의해 이해되는 상기 적어도 2개의 언어들로부터 다른 제1 언어를 선택함으로써 상기 제1 수신자의 부수적인 언어(non-primary language)를, 상기 서버에 의해 결정하는 단계와;
    상기 메시지 템플릿 데이터베이스에 저장된 상기 복수의 메시지 템플릿들 중 임의의 것이 상기 제1 수신자의 부수적인 언어와 관련되는지를, 상기 서버에 의해 결정하는 단계와; 그리고
    상기 복수의 메시지 템플릿들 중 제2 특정 메시지 템플릿이 상기 제1 수신자의 부수적인 언어와 관련될 때, 상기 메시지 템플릿 데이터베이스로부터 상기 제2 특정 메시지 템플릿을 검색함으로써 상기 검색된 제1 메시지 템플릿을, 상기 서버에 의해 획득하는 단계를 더 포함하는 것을 특징으로 하는
    컴퓨터로 구현되는 방법.
  5. 제3항에 있어서,
    상기 요청은 상기 아웃고잉 메시지의 타입을 식별하는 메시지 타입 식별자를 더 포함하고, 그리고
    상기 메시지 템플릿들의 세트 내의 각각의 메시지 템플릿이 서로에 대해 다른 언어가 되도록, 상기 복수의 메시지 템플릿들은, 상기 메시지 타입 식별자에 대응하는 메시지 템플릿들의 세트를 포함하는 것을 특징으로 하는
    컴퓨터로 구현되는 방법.
  6. 제2항에 있어서,
    상기 하나 이상의 제1 수신자 선호들은, 상기 제1 수신자의 날짜 포맷 선호, 상기 제1 수신자의 측정 단위 선호 및 상기 제1 수신자의 통화 선호 중 적어도 하나를 포함하는 것을 특징으로 하는
    컴퓨터로 구현되는 방법.
  7. 제2항에 있어서,
    상기 요청은 상기 발신자 컴퓨팅 디바이스에서 실행중인 제1 애플리케이션으로부터 수신되고,
    상기 제1 애플리케이션은 복수의 서로 다른 애플리케이션들 중 하나이며,
    상기 복수의 서로 다른 애플리케이션들의 애플리케이션 각각은, 상기 복수의 서로 다른 애플리케이션들에 대응하는 상기 복수의 메시지 템플릿들 중에서 서로 다른 메시지 템플릿들의 세트를 갖고, 그리고
    상기 검색된 제1 메시지 템플릿의 검색은 상기 발신자 컴퓨팅 디바이스에서 실행 중인 상기 제1 애플리케이션에 또한 기초하는 것을 특징으로 하는
    컴퓨터로 구현되는 방법.
  8. 제2항에 있어서,
    상기 요청은 복수의 수신자들을 나타내며, 상기 복수의 수신자들은 상기 제1 수신자를 포함하고, 상기 복수의 메시지 수신자들 중 나머지 각각은 그에 대응하는 하나 이상의 수신자 선호들을 갖는 것을 특징으로 하는
    컴퓨터로 구현되는 방법.
  9. 제8항에 있어서,
    상기 복수의 수신자들 중 제2 수신자에 대해,
    상기 제2 수신자에 각각 대응하는 하나 이상의 제2 수신자 선호들을, 상기 메시지 서버에 의해 그리고 상기 수신자 선호 데이터베이스로부터 검색하는 단계와;
    상기 메시지 데이터 및 상기 하나 이상의 제2 수신자 선호들에 기초하여, 상기 메시지 서버에 의해 그리고 상기 메시지 템플릿 데이터베이스로부터 제2 메시지 템플릿을 검색하는 단계와;
    상기 검색된 제2 메시지 템플릿, 상기 메시지 데이터 및 상기 하나 이상의 제2 수신자 선호들을 사용하여, 상기 서버에 의해, 제2 아웃고잉 메시지를 생성하는 단계와; 그리고
    상기 서버에 의해, 제2 수신자 컴퓨팅 디바이스에 상기 발생된 제2 아웃고잉 메시지를 제공하는 단계를 포함하고,
    상기 제2 수신자 컴퓨팅 디바이스는 상기 제2 수신자와 관련되는 것을 특징으로 하는
    컴퓨터로 구현되는 방법.
  10. 제2항에 있어서,
    상기 요청은 상기 발신자 컴퓨팅 디바이스 및 비-이메일 애플리케이션(non-email application)에 의해 생성되는 것을 특징으로 하는
    컴퓨터로 구현되는 방법.
  11. 제10항에 있어서,
    상기 비-이메일 애플리케이션은 캘린더 애플리케이션 또는 소셜 네트워킹 애플리케이션인 것을 특징으로 하는
    컴퓨터로 구현되는 방법.
  12. 컴퓨터 시스템으로서,
    복수의 메시지 수신자들 각각에 대해 수신자 선호들의 세트들을 저장하도록 구성된 수신자 선호 데이터베이스 - 수신자 선호들의 각 세트는 상기 복수의 메시지 수신자들 중 대응하는 수신자에 대한 메시지들의 커스텀화에 관련되고, 상기 수신자 선호들의 각 세트는 상기 복수의 수신자들 중 대응하는 수신자에 의해 이해되는 하나 이상의 언어들을 포함하며, 수신자 선호들의 각 세트에 대해, 상기 하나 이상의 언어들은 상기 복수의 수신자들 중 대응하는 수신자의 주된 언어를 포함하며 - 와;
    복수의 애플리케이션-특정 메시지 템플릿들을 저장하도록 구성된 메시지 템플릿 데이터베이스와;
    하나 이상의 프로세서들을 포함하고,
    상기 하나 이상 프로세서들은,
    (i) 발신자 컴퓨팅 디바이스로부터, 상기 복수의 수신자들 중 제1 수신자에 대해, 아웃고잉 메시지를 발생시키기 위한 요청을 수신하고, 상기 요청은 상기 제1 수신자를 식별하고, 그리고 상기 요청은 발생될 상기 아웃고잉 메시지에 대한 메시지 데이터를 포함하고, 그리고 상기 메시지 데이터는, (a) 비-언어-특정값들 및 (b) 소스 언어로 된 텍스트를 포함하며,
    (ii) 상기 수신자 선호 데이터베이스로부터 그리고 상기 제1 수신자에 대해, 하나 이상의 제1 수신자 선호들을 검색하고, 상기 하나 이상의 제1 수신자 선호들은 상기 제1 수신자에 의해 이해되는 하나 이상의 제1 언어들을 포함하고, 상기 제1 수신자에 의해 이해되는 상기 하나 이상의 제1 언어들은 상기 제1 수신자의 주된 제1 언어를 포함하며,
    (iii) 상기 메시지 데이터 및 상기 하나 이상의 제1 수신자 선호들에 기초하여, 상기 메시지 템플릿 데이터베이스로부터 제1 메시지 템플릿을 검색하고,
    (iv) 상기 검색된 제1 메시지 템플릿, 상기 메시지 데이터 및 상기 하나 이상의 제1 수신자 선호들을 사용하여, 제1 아웃고잉 메시지를 발생시키고,
    (v) 제1 수신자 컴퓨팅 디바이스에 상기 발생된 제1 아웃고잉 메시지를 제공하며, 상기 제1 수신자 컴퓨팅 디바이스는 상기 제1 수신자와 관련되고, 상기 발생된 제1 아웃고잉 메시지의 수신은, 상기 제1 수신자 컴퓨팅 디바이스로 하여금 (i) 상기 발생된 제1 아웃고잉 메시지를 렌더링함으로써 디스플레이 가능한 메시지를 획득하게 하고 (ii) 상기 제1 수신자 컴퓨팅 디바이스의 디스플레이상에 상기 디스플레이 가능한 메시지를 디스플레이하도록 하며,
    상기 복수의 애플리케이션 특정 메시지 템플릿들은 각각 복수의 애플리케이션 타입들과 관련된 애플리케이션 특정 메시지 템플릿들의 복수의 세트를 포함하고, 그리고 상기 애플리케이션 특정 메시지 템플릿들의 복수의 세트들의 각각의 세트는 (i) 상기 애플리케이션 특정 메시지 템플릿들의 복수의 세트들 중 나머지와 상이한 애플리케이션 및 (ii) 상기 애플리케이션 특정 메시지 템플릿들의 상기 복수의 세트들 중 나머지와 상이한 언어들의 세트들과 관련되는 것을 특징으로 하는
    컴퓨터 시스템.
  13. 제12항에 있어서,
    상기 하나 이상의 프로세서들은:
    상기 메시지 템플릿 데이터베이스에 저장된 상기 복수의 메시지 템플릿들 중 임의의 것이 상기 제1 수신자의 주된 제1 언어와 관련되는지를 결정하고; 그리고
    상기 복수의 메시지 템플릿들 중 제1 특정 메시지 템플릿이 상기 제1 수신자의 주된 제1 언어와 관련될 때, 상기 메시지 템플릿 데이터베이스로부터 상기 제1 특정 메시지 템플릿을 검색함으로써 상기 검색된 제1 메시지 템플릿을 획득하도록 구성되는 것을 특징으로 하는
    컴퓨터 시스템.
  14. 제13항에 있어서,
    상기 하나 이상의 프로세서들은,
    (i) 상기 복수의 메시지 템플릿들 중 어느 것도 상기 제1 수신자의 주된 제1 언어와 관련되지 않고, 그리고 (ii) 상기 제1 수신자에 의해 이해되는 상기 하나 이상의 제1 언어들이 적어도 2개의 제1 언어들을 포함할 때,
    상기 제1 수신자에 의해 이해되는 상기 적어도 2개의 제1 언어들로부터 다른 제1 언어를 선택함으로써 상기 제1 수신자의 부수적인 언어를 결정하고,
    상기 메시지 템플릿 데이터베이스에 저장된 상기 복수의 메시지 템플릿들 중 임의의 것이 상기 제1 수신자의 부수적인 언어와 관련되는지를 결정하며, 그리고
    상기 복수의 메시지 템플릿들 중 제2 특정 메시지 템플릿이 상기 제1 수신자의 부수적인 언어와 관련될 때, 상기 메시지 템플릿 데이터베이스로부터 상기 제2 특정 메시지 템플릿을 검색함으로써 상기 검색된 제1 메시지 템플릿을 획득하도록 더 구성되는 것을 특징으로 하는
    컴퓨터 시스템.
  15. 제12항에 있어서,
    상기 요청은 상기 아웃고잉 메시지의 타입을 식별하는 메시지 타입 식별자를 포함하고, 그리고
    상기 복수의 메시지 템플릿들은, 상기 메시지 템플릿들의 세트 내의 각각의 메시지 템플릿이 서로 다른 언어가 되도록, 상기 메시지 타입 식별자에 대응하는 메시지 템플릿들의 세트를 포함하는 것을 특징으로 하는
    컴퓨터 시스템.
  16. 제12항에 있어서,
    상기 하나 이상의 제1 수신자 선호들은, 상기 제1 수신자의 날짜 포맷 선호, 상기 제1 수신자의 측정 단위 선호 및 상기 제1 수신자의 통화 선호 중 적어도 하나를 포함하는 것을 특징으로 하는
    컴퓨터 시스템.
  17. 제12항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 발신자 컴퓨팅 디바이스에서 실행중인 제1 애플리케이션으로부터 상기 요청을 수신하도록 구성되고, 상기 제1 애플리케이션은 복수의 서로 다른 애플리케이션들 중 하나이며,
    상기 복수의 서로 다른 애플리케이션들의 애플리케이션 각각은, 상기 복수의 서로 다른 애플리케이션들에 대응하는 상기 복수의 메시지 템플릿들 중에서 서로 다른 메시지 템플릿들의 세트를 갖고, 그리고
    상기 검색된 제1 메시지 템플릿은 상기 발신자 컴퓨팅 디바이스에서 실행 중인 상기 제1 애플리케이션에 더 기초하여 검색되는 것을 특징으로 하는
    컴퓨터 시스템.
  18. 제12항에 있어서,
    상기 요청은 복수의 수신자들을 나타내며, 상기 복수의 수신자들은 상기 제1 수신자를 포함하고, 상기 복수의 메시지 수신자들 중 나머지 각각은 그에 대응하는 하나 이상의 수신자 선호들을 갖는 것을 특징으로 하는
    컴퓨터 시스템.
  19. 삭제
  20. 삭제
KR1020147022595A 2012-01-16 2013-01-14 수신자의 언어, 국제화 및 현지화 선호들에 기초하여 아웃고잉 메시지들을 발생시키는 기술들 KR102050982B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/351,031 US9268762B2 (en) 2012-01-16 2012-01-16 Techniques for generating outgoing messages based on language, internationalization, and localization preferences of the recipient
US13/351,031 2012-01-16
PCT/US2013/021403 WO2013109494A1 (en) 2012-01-16 2013-01-14 Techniques for generating outgoing messages based on language, internationalization, and localization preferences of the recipient

Publications (2)

Publication Number Publication Date
KR20140117536A KR20140117536A (ko) 2014-10-07
KR102050982B1 true KR102050982B1 (ko) 2020-01-08

Family

ID=47595108

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147022595A KR102050982B1 (ko) 2012-01-16 2013-01-14 수신자의 언어, 국제화 및 현지화 선호들에 기초하여 아웃고잉 메시지들을 발생시키는 기술들

Country Status (5)

Country Link
US (2) US9268762B2 (ko)
EP (1) EP2805442A4 (ko)
KR (1) KR102050982B1 (ko)
CN (1) CN104170293B (ko)
WO (1) WO2013109494A1 (ko)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9720899B1 (en) 2011-01-07 2017-08-01 Narrative Science, Inc. Automatic generation of narratives from data using communication goals and narrative analytics
CN102752398B (zh) * 2012-07-18 2015-09-09 腾讯科技(深圳)有限公司 解析流量值的方法、终端、服务器及系统
WO2014076525A1 (en) 2012-11-16 2014-05-22 Data2Text Limited Method and apparatus for expressing time in an output text
US20150371266A1 (en) * 2013-10-06 2015-12-24 Shocase, Inc . System and method for delivering certain work posted on a social network to a targeted audience
US10069775B2 (en) * 2014-01-13 2018-09-04 Adobe Systems Incorporated Systems and methods for detecting spam in outbound transactional emails
US10564614B2 (en) 2014-01-31 2020-02-18 Vivint, Inc. Progressive profiling in an automation system
US11044114B2 (en) * 2014-01-31 2021-06-22 Vivint, Inc. Rule-based graphical conversational user interface for security and automation system
US10691872B2 (en) * 2014-03-19 2020-06-23 Microsoft Technology Licensing, Llc Normalizing message style while preserving intent
WO2016018004A1 (en) * 2014-07-31 2016-02-04 Samsung Electronics Co., Ltd. Method, apparatus, and system for providing translated content
US11922344B2 (en) 2014-10-22 2024-03-05 Narrative Science Llc Automatic generation of narratives from data using communication goals and narrative analytics
KR20160059069A (ko) * 2014-11-17 2016-05-26 삼성전자주식회사 메시지 처리 방법 및 장치
US9985922B2 (en) * 2015-05-29 2018-05-29 Globechat, Inc. System and method for multi-langual networking and communication
US10320724B2 (en) 2015-08-28 2019-06-11 International Business Machines Corporation Message assistant via smart templates
US10469436B2 (en) * 2015-11-20 2019-11-05 Accenture Global Solutions Limited Managing messaging services
US10686745B2 (en) * 2015-12-28 2020-06-16 Facebook, Inc. Systems and methods for providing messages based on preconfigured messages templates
CN105635464A (zh) * 2015-12-30 2016-06-01 厦门欣欣信息有限公司 一种消息处理方法及装置
SG11201900484VA (en) * 2016-07-21 2019-02-27 Oslabs Pte Ltd A system and method for multilingual conversion of text data to speech data
JP6767224B2 (ja) * 2016-09-29 2020-10-14 株式会社東芝 コミュニケーション装置、コミュニケーション方法、およびコミュニケーションプログラム
US10467347B1 (en) 2016-10-31 2019-11-05 Arria Data2Text Limited Method and apparatus for natural language document orchestrator
US11954445B2 (en) 2017-02-17 2024-04-09 Narrative Science Llc Applied artificial intelligence technology for narrative generation based on explanation communication goals
US11568148B1 (en) 2017-02-17 2023-01-31 Narrative Science Inc. Applied artificial intelligence technology for narrative generation based on explanation communication goals
CN106997343A (zh) * 2017-03-28 2017-08-01 联想(北京)有限公司 信息处理方法及设备
US10547577B2 (en) * 2017-03-28 2020-01-28 Whatsapp Inc. Techniques for templated messages
US11258734B1 (en) 2017-08-04 2022-02-22 Grammarly, Inc. Artificial intelligence communication assistance for editing utilizing communication profiles
US10963649B1 (en) 2018-01-17 2021-03-30 Narrative Science Inc. Applied artificial intelligence technology for narrative generation using an invocable analysis service and configuration-driven analytics
US11816435B1 (en) 2018-02-19 2023-11-14 Narrative Science Inc. Applied artificial intelligence technology for contextualizing words to a knowledge base using natural language processing
CN110474832B (zh) * 2018-05-09 2022-02-25 深圳市尚云互联技术有限公司 消息推送方法及其应用系统
US11334726B1 (en) * 2018-06-28 2022-05-17 Narrative Science Inc. Applied artificial intelligence technology for using natural language processing to train a natural language generation system with respect to date and number textual features
US11089147B2 (en) * 2018-06-29 2021-08-10 Google Llc Systems, devices, and methods for generating messages
CN110908744B (zh) * 2018-09-17 2023-07-07 福建天泉教育科技有限公司 即时通讯软件系统消息多语言支持方法、存储介质
CN110413574B (zh) * 2019-07-30 2023-04-07 深圳市携众通科技有限公司 一种自动生成代码国际化资源的方法
CN111190667A (zh) * 2019-12-05 2020-05-22 航天信息股份有限公司 一种多语言的消息服务设置方法及系统
CN112818654B (zh) * 2021-02-18 2024-02-02 北京奇艺世纪科技有限公司 消息存储方法、消息生成方法、装置、电子设备及计算机可读介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070233547A1 (en) * 2000-04-21 2007-10-04 John Younger Comprehensive employment recruiting communications system with translation facility
US20080046231A1 (en) * 2006-05-26 2008-02-21 Srk Ventures, Llc System and Method of Language Translation
US20110239160A1 (en) * 2010-03-24 2011-09-29 MobilMate Ltd. Apparatus and method for detecting messages in a parsing process

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1280215C (en) * 1987-09-28 1991-02-12 Eddy Lee Multilingual ordered data retrieval system
JP3129778B2 (ja) * 1991-08-30 2001-01-31 富士通株式会社 ベクトル量子化器
JPH0981569A (ja) * 1995-09-12 1997-03-28 Hitachi Ltd 多カ国対応サービス提供システム
US5884246A (en) * 1996-12-04 1999-03-16 Transgate Intellectual Properties Ltd. System and method for transparent translation of electronically transmitted messages
US5960382A (en) * 1997-07-07 1999-09-28 Lucent Technologies Inc. Translation of an initially-unknown message
US6161082A (en) 1997-11-18 2000-12-12 At&T Corp Network based language translation system
US6623529B1 (en) * 1998-02-23 2003-09-23 David Lakritz Multilingual electronic document translation, management, and delivery system
US6088699A (en) * 1998-04-22 2000-07-11 International Business Machines Corporation System for exchanging compressed data according to predetermined dictionary codes
FI116992B (fi) * 1999-07-05 2006-04-28 Nokia Corp Menetelmät, järjestelmä ja laitteet audiosignaalin koodauksen ja siirron tehostamiseksi
US7171348B2 (en) * 1999-09-10 2007-01-30 Worldlingo.Com Pty Ltd Communication processing system
AU2001249777A1 (en) * 2000-03-31 2001-10-15 Amikai, Inc. Method and apparatus for providing multilingual translation over a network
US20020173946A1 (en) * 2001-03-28 2002-11-21 Christy Samuel T. Translation and communication of a digital message using a pivot language
US7447624B2 (en) * 2001-11-27 2008-11-04 Sun Microsystems, Inc. Generation of localized software applications
US7853557B2 (en) * 2002-06-14 2010-12-14 Siebel Systems, Inc. Method and computer for responding to a query according to the language used
US7072880B2 (en) * 2002-08-13 2006-07-04 Xerox Corporation Information retrieval and encoding via substring-number mapping
GB2395029A (en) 2002-11-06 2004-05-12 Alan Wilkinson Translation of electronically transmitted messages
AU2003291049A1 (en) 2002-11-22 2004-06-18 Transclick, Inc. System and method for speech translation using remote devices
US6917914B2 (en) * 2003-01-31 2005-07-12 Harris Corporation Voice over bandwidth constrained lines with mixed excitation linear prediction transcoding
US8027438B2 (en) * 2003-02-10 2011-09-27 At&T Intellectual Property I, L.P. Electronic message translations accompanied by indications of translation
US20060152479A1 (en) * 2005-01-10 2006-07-13 Carlson Michael P Intelligent text magnifying glass in camera in telephone and PDA
US20070067154A1 (en) * 2005-09-22 2007-03-22 International Business Machines Corporation Language translation system
EP2202612B1 (en) * 2005-10-14 2018-12-19 BlackBerry Limited Automatic language selection for improving text accuracy
WO2007120418A2 (en) * 2006-03-13 2007-10-25 Nextwire Systems, Inc. Electronic multilingual numeric and language learning tool
US7720922B2 (en) * 2006-12-11 2010-05-18 Digital River, Inc. Email content builder system and method
US20080288252A1 (en) * 2007-03-07 2008-11-20 Cerra Joseph P Speech recognition of speech recorded by a mobile communication facility
US9785916B2 (en) * 2007-10-12 2017-10-10 Yahoo Holdings, Inc. Integrating rich media into a web-based calendar
US20090234633A1 (en) 2008-03-17 2009-09-17 Virginia Chao-Suren Systems and methods for enabling inter-language communications
US7933930B1 (en) * 2008-04-08 2011-04-26 United Services Automobile Association (Usaa) Systems and methods for creating documents from templates
US8249857B2 (en) * 2008-04-24 2012-08-21 International Business Machines Corporation Multilingual administration of enterprise data with user selected target language translation
US10049368B2 (en) * 2008-05-08 2018-08-14 Eresearchtechnology, Inc. Systems, methods and computer program products for providing compliant messaging services
US20100017466A1 (en) * 2008-06-17 2010-01-21 Douglas Trauner System and method for dynamic processing of measurement metrics and tagging measurement metrics
EP2261818A1 (en) 2009-06-09 2010-12-15 Dudu Communications FZ-LLC A method for inter-lingual electronic communication
US8392508B2 (en) * 2010-06-11 2013-03-05 International Business Machines Corporation Selectively controlling information flow in a collaborative environment
US8352507B2 (en) * 2010-10-29 2013-01-08 Microsoft Corporation Retrieval and storage of localized instances of data objects
US8848673B2 (en) * 2011-12-19 2014-09-30 Ofinno Technologies, Llc Beam information exchange between base stations

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070233547A1 (en) * 2000-04-21 2007-10-04 John Younger Comprehensive employment recruiting communications system with translation facility
US20080046231A1 (en) * 2006-05-26 2008-02-21 Srk Ventures, Llc System and Method of Language Translation
US20110239160A1 (en) * 2010-03-24 2011-09-29 MobilMate Ltd. Apparatus and method for detecting messages in a parsing process

Also Published As

Publication number Publication date
US9747271B2 (en) 2017-08-29
EP2805442A1 (en) 2014-11-26
EP2805442A4 (en) 2015-09-30
KR20140117536A (ko) 2014-10-07
CN104170293A (zh) 2014-11-26
US9268762B2 (en) 2016-02-23
US20130185051A1 (en) 2013-07-18
CN104170293B (zh) 2018-07-06
WO2013109494A1 (en) 2013-07-25
US20160217120A1 (en) 2016-07-28

Similar Documents

Publication Publication Date Title
KR102050982B1 (ko) 수신자의 언어, 국제화 및 현지화 선호들에 기초하여 아웃고잉 메시지들을 발생시키는 기술들
US11876760B2 (en) Determining strength of association between user contacts
US9875233B1 (en) Associating one or more terms in a message trail with a task entry
US9794198B2 (en) Methods and systems for creating auto-reply messages
US9256674B2 (en) Action clustering for news feeds
US20150161519A1 (en) Name recognition
US10594648B2 (en) Personal messaging assistant
JP6246951B2 (ja) ユーザコンタクトエントリのデータ設定
US10491553B2 (en) Dynamically integrating contact profile pictures into messages based on user input
US20160299954A1 (en) Processing a search query and ranking results from a database system of a network communication software
US9548951B2 (en) Providing additional information related to a vague term in a message
US9965812B2 (en) Generating a supplemental description of an entity
US20170004531A1 (en) Advertisement selection using information retrieval systems
US8868664B2 (en) Systems and methods for registering and managing domain names and e-mail addresses via a resource-limited interface
Yang et al. Interrelationship between randomized F-policy and randomized N-policy queues
Selokela The representation of female councillors in South African municipal elections
JP2017211687A (ja) 関連文書抽出装置
US20170346780A1 (en) Automatic relevance-based information inclusion in electronic communication
US20150046432A1 (en) Performing a dynamic search of electronically stored records based on a search term format
Lewis et al. CANONICALIZING PHONE CONTACTS
Lin et al. On some multiple decision procedures for normal variances
Willis Sellafield Stories: Life with Britain’s first nuclear plant
Wong The Opium War: drugs, dreams and the making of China

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant