CN112005239A - 消息传递应用中的自动语言选择 - Google Patents

消息传递应用中的自动语言选择 Download PDF

Info

Publication number
CN112005239A
CN112005239A CN201980023506.5A CN201980023506A CN112005239A CN 112005239 A CN112005239 A CN 112005239A CN 201980023506 A CN201980023506 A CN 201980023506A CN 112005239 A CN112005239 A CN 112005239A
Authority
CN
China
Prior art keywords
language
user
words
text input
text
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN201980023506.5A
Other languages
English (en)
Inventor
拉贾尔希.古普塔
T.韦斯佩尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
La JiaerxiGuputa
Avast Software sro
Original Assignee
La JiaerxiGuputa
Avast Software sro
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 La JiaerxiGuputa, Avast Software sro filed Critical La JiaerxiGuputa
Publication of CN112005239A publication Critical patent/CN112005239A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval techniques
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0489Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using dedicated keyboard keys or combinations thereof
    • G06F3/04895Guidance during keyboard input operation, e.g. prompting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/263Language identification
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • H04W4/14Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Machine Translation (AREA)
  • Telephonic Communication Services (AREA)
  • User Interface Of Digital Computer (AREA)
  • Document Processing Apparatus (AREA)

Abstract

提供了一种电子消息传递方法,该方法由一个或多个处理器实现。该方法包括:由包括用户界面的用户设备发起文本通信应用。在所述用户界面中启用数据输入界面,所述数据输入界面包括基于以下至少一项确定的特定语言的语言元素:涉及所述用户设备的用户的所存储的文本通信的国际呼叫代码、和涉及所述用户设备的用户的所存储的文本通信的语言,所存储的文本通信包括由所述用户设备的用户发送的文本或所述用户设备的用户从特定方接收的文本。经由所述数据输入界面接收文本输入,所述数据输入界面包括所述特定语言的所述语言元素。

Description

消息传递应用中的自动语言选择
技术领域
本发明通常涉及电子消息传递(messaging),并且更具体地涉及对输入文本实现自动校正或自动翻译的电子消息传递系统。
背景技术
诸如膝上型计算机、智能电话和平板计算机之类的个人计算设备通常在许多不同的消息传递平台上支持文本消息功能。短消息服务(“Short Message Service,SMS”)、电子邮件以及各种各样的专有和开放标准消息传递协议可实现电子设备用户之间的便捷通信。许多消息传递平台的有用功能是支持用户输入的拼写错误(misspelled)或无法识别的单词的自动校正(“auto-correction”)。支持的另一有用功能是自动完成功能,其中消息传递平台预测用户在输入(例如,键入)处理中正在输入哪个单词,并在用户完成将字符输入单词之前推荐或自动插入预测单词。
当自动校正或自动完成呈现的文本无法反映用户所需的单词时,自动校正和自动完成功能可能会给用户带来麻烦或烦恼。对于倾向于使用一种以上的语言进行通信的用户,自动校正和自动完成可能会特别麻烦。虽然通常可以配置消息传递协议以一种以上的语言进行通信,但是切换语言可能不方便或不切实际。试图键入例如包含一种以上语言的单词的消息的用户可能会因自动校正和自动完成功能而受阻。
发明内容
该发明内容引入了简化的概念,这些简化的概念将在下面的具体实施方式中进一步描述。本发明内容并不旨在识别所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。
提供了一种电子消息传递方法,该方法由一个或多个处理器实现。该方法包括:由包括用户界面的用户设备发起文本通信应用。在所述用户界面中启用数据输入界面,所述数据输入界面包括基于以下至少一项确定的特定语言的语言元素:涉及所述用户设备的用户的所存储的文本通信的国际呼叫代码、和涉及所述用户设备的用户的所存储的文本通信的语言,所存储的文本通信包括由所述用户设备的用户发送的文本或所述用户设备的用户从特定方接收的文本。经由所述数据输入界面接收文本输入,所述数据输入界面包括所述特定语言的所述语言元素。
在由一个或多个处理器实现的另一种提供的电子消息传递方法中,经由用户设备的用户界面从用户接收所述用户设备的文本输入,且在所述文本输入中从特定语言中识别术语。在包括所述特定语言的语言元素的所述用户界面中启用数据输入界面,以及经由包括所述特定语言的所述语言元素的所述数据输入界面来接收所述文本输入。
还提供了一种电子消息传递系统。该电子消息传递系统包括用户设备,所述用户设备包括一个或多个硬件处理器和一个或多个非暂时性计算机可读存储介质,所述非暂时性计算机可读存储介质耦合到所述一个或多个硬件处理器并存储用于由所述一个或多个硬件处理器运行的编程指令,其中所述编程指令在被运行时使所述用户设备执行操作。该操作包括:经由所述用户设备的用户界面接收文本输入,和访问包括来自多种语言的术语的第一单词集。将所述文本输入与所述第一单词集进行比较,并基于所述文本输入与所述第一单词集的比较,从所述多种语言中的特定语言中识别术语。响应于所述术语的识别,从网络检索包括来自所述特定语言的术语的第二单词集,所述第二单词集中的来自所述特定语言的术语数量大于所述第一单词集中的来自所述特定语言的术语数量。将所述文本输入与所述第二单词集进行比较。基于与所述第二单词集的比较,对所述特定语言的所述文本输入应用自动校正,以及经由用户界面显示所述文本输入的校正文本。所描述的自动校正例如包括:校正所述文本输入中拼写错误的单词,显示用户可选单词来替换所述文本输入中拼写错误的单词,完成在所述文本输入中部分输入的单词,或者显示用户可选单词以完成在所述文本输入中部分输入的单词。
附图说明
通过示例的方式给出附图,从以下对示例性实施例的详细描述中可以得到更详细的理解。附图中的图和详细描述是示例。图和详细描述不应被认为是限制性的,并且其他示例也是可能的。图中相同的参考标记表示相同的元件,其中:
图1示出了根据说明性实施例的包括用户设备和启用处理器的语言管理器的系统,该语言管理器启用了特定的电子消息传递方法。
图2A-2I示出了根据所描述的电子消息传递方法的具有示例性屏幕显示的用户设备。
图3-7是示出根据说明性实施例的特定电子消息传递方法的流程图。
图8是用户设备与启用处理器的语言管理器之间的说明性通信流程。
图9是根据说明性实施例的用于执行所描述的电子消息传递方法的说明性计算机系统。
具体实施方式
下面参考附图描述本发明的实施例,其中,相同的附图标记始终表示相同的元件。如本文所使用的术语“一”和“一个”不表示数量的限制,而是表示存在至少一个所引用的项目。参照各个图中的方向来获取诸如上、下、左、右、上方和下方的任何方向性信号。
参考图1,在包括一个或多个有线或无线网络或其组合的通信网络8中提供了用于促进设备消息传递处理的系统10,例如,其包括局域网(LAN)、广域网(WAN))、互联网、移动电话网络和无线数据网络(诸如WiFiTM和3G/4G/5G蜂窝网络)。为了便于描述,称为“用户设备12”的移动通信设备12在网络8中操作。驻留在用户设备12上的软件和/或硬件使语言代理14能够监视用户设备12上的消息传递处理,包括短消息服务(“SMS”)协议消息、电子邮件协议消息以及其他消息传递协议(例如,WhatsAppTM)启用的消息。用户设备12可以包括例如被配置为在无线电信网络上操作的智能电话或其他支持蜂窝的移动设备。可替换地,用户设备12可以包括个人计算机、平板设备或其他计算设备,其被配置为与消息网关(例如,SMS网关)通信以实现消息的发送和接收。
用户设备12使用一个或多个消息传递应用16来发送和接收电子消息,一个或多个消息传递应用16被配置为例如经由3G/4G/5G蜂窝协议或WiFiTM协议和/或通过互联网的TCP/IP发送和接收短消息服务(“SMS”)消息或实现其他消息传递协议的消息。消息转发中心70,例如短消息服务中心(“SMSC”),被配置为在用户设备12和其他通信设备80(诸如蜂窝电话或其他计算设备或系统)之间转发消息,该通信设备80可以例如经由GSM无线协议或通过因特网的TCP/IP连接到消息转发中心70。
语言代理14可以被配置为可由用户设备12的处理器与消息传递应用16通信来执行的独立应用。可替换地,语言代理14可以被提供为与消息传递应用16集成在一起的处理器实现的附加应用。此外,语言代理14可以可替换地启用独立的消息传递客户端,例如使用SMS或WhatsAppTM消息传递协议。接收和发送的消息被存储在用户设备12上的语言代理14可访问的消息数据存储18中。
语言代理14经由由用户设备12的处理器启用的分析器15来确定消息传递应用16的用户正在使用或预期将使用的一种或多种语言。语言代理14在用户设备12的用户界面20中启动数据接口,诸如键盘22,其包括适当的语言字符或一种或多种语言的元素。语言代理14还使得能够基于一种或多种语言词典30、34以一种或多种确定的语言进行自动校正和自动翻译。如本文所描述的,自动校正包括自动校正用户输入的拼写错误的单词,或者响应于拼写错误的单词而提出用户可选的替换单词,例如如图2F所示。如本文所描述的,自动校正还包括自动完成仅由用户部分输入的不完整单词,或响应于仅由用户部分输入的不完整单词而提出用户可选的完整单词(即“自动完成”)。在特定计算机操作系统或特定消息传递应用16不允许访问键盘功能的情况下,语言代理14使得键盘22作为与消息传递应用16通信的虚拟键盘,并包括适当的语言字符或元素。语言代理14可以进一步启用经由用户设备12的麦克风的音频语言输入,该输入可以基于一个或多个词典30、34被转换为文本并自动翻译。可替换地,语言代理14可以启用其他输入设备以将字符或单词输入到消息中。
语言代理14可访问国际预拨号(“国家代码”)数据存储28,该数据存储用于确定语言。国际预拨号数据存储包括国家列表以及这些国家使用的主要语言,例如,如下面表1所示的缩略预拨号列表所示。响应于检测到对应于特定传入或传出消息的新国家代码,语言代理14访问消息数据存储18以确定用户是否有任何先前消息包括来自对应于国家代码的特定主要语言的一个或多个单词。如果是这样,则语言代理14启用具有对应于该特定主要语言的字符的特定键盘22,并且启用包括来自用于自动校正和自动翻译的主要语言的术语的语言词典30。有利地,例如,如果用户先前仅使用英语、德语和法语键入消息,则不会响应于用户以0039国家代码指示消息接收者而在用户设备12的用户界面20中启用意大利语键盘22。如果消息数据存储18包括其中用户输入了一个或多个意大利语术语的消息或在当前消息中检测到意大利语术语,则语言代理14将以0039国家代码向接收者传递消息,从而启动意大利语键盘22。可替换地,可以基于用户设备12所位于的国家或地区来进行主要语言的确定,例如,如由诸如全球定位系统(“GPS”)之类的位置确定系统17所接收的信号所确定的那样,或基于接收到的蜂窝塔数据确定。可替换地,语言代理14可以被配置为仅响应于检测到传入或传出消息中的特定主要语言的国家代码或地理位置数据,来启用包括特定语言的术语的语言词典30和特定键盘22。
表1
国际预拨号 国家 主要语言
001 美国 英语
0049 德国 德语
0039 意大利 意大利语
0033 法国 法语
联系人语言数据存储32包括特定联系人之间的优选语言的指定,例如,如下面表2所示的缩略语言列表所示。语言代理14经由分析器15基于对消息数据存储18中的消息的评估或对草拟的消息的实时分析来确定用于在用户设备12的用户与特定方之间进行通信的优选语言。语言代理14用优选语言信息填充联系人语言数据存储32,该优选语言信息可以包括用户发送给特定方的一种或多种优选语言以及用户从该特定方接收的一种或多种优选语言。有利地,联系人语言数据存储32中的数据优先于国家代码数据存储28中的数据,以便确定用于与特定联系人进行消息传递的语言设置(例如,键盘类型、自动校正语言、自动翻译语言)。基于语言代理14所支持的一个或多个消息传递应用16(例如,SMS、电子邮件、WhatsAppTM)内发生的通信来更新联系人语言数据存储32。
表2
Figure BDA0002708448350000051
Figure BDA0002708448350000061
联系人语言数据存储32在用户设备12的用户的许可下用于填充网络语言关联数据存储54,该网络语言关联数据存储54包括联系人详细信息以及执行其上的语言代理14的多个设备12的多个用户的联系人的使用语言。语言关联数据存储54可以由在通信网络8中运行的语言管理器50访问。语言管理器50及其组成元件优选地经由硬件组件、共享一个或多个处理单元的软件组件、或硬件和软件组件的组合,在一个或多个可连接网络的启用处理器的计算系统上实现。语言管理器50不需要在单个位置上的单个系统上实现,而是可以诸如以对等配置分散化,例如在两个或更多个人计算机或移动通信设备上运行。
如果用户发起与联系人语言数据存储32中未包含的特定联系人的通信,则语言代理14经由管理器API 52询问语言关联数据存储54,以基于与其他用户设备12上语言代理14的其他用户的先前的通信来确定该联系人是否与特定语言相关联。来自语言关联数据存储54的信息可以单独使用,也可以与消息数据存储18和/或国家代码数据存储28中的信息关联使用,以确定语言设置(例如,键盘类型、自动校正语言和自动翻译语言),以与该联系人进行通信。有利地,语言代理14基于语言关联数据存储54、联系人语言数据存储32、消息数据存储18和/或国家代码数据存储28中的信息,在切换语言设置之前,经由用户设备12的用户界面20询问用户。例如,参考图2A,为用户设备12提供了用户界面20(即,触摸屏),该用户界面20示出了英语键盘22a和示例询问:“Enable German for this message?(为该消息启用德语吗?)”在用户界面20上显示的可选按钮21允许用户选择“YES(是)”或“NO(否)”,其中,参照图1和图2B,如果用户选择“YES(是)”,则启用德语键盘22b和完整词典30。
语言代理14经由分析器15被配置为确定新消息是否是对现有消息的答案,并且语言代理14基于用户正在响应的一个或多个消息的语言来调整语言设置。例如,如果基于涉及用户和一个或多个其他参与者的特定SMS线程中的语言词典30检测到特定语言,则语言代理14启用语言设置(例如,键盘类型、自动校正语言、翻译语言)以用于线程中使用的特定语言。如果特定语言不同于基于联系人语言数据存储32、语言关联数据存储54、消息数据存储18和/或国家代码数据存储28确定的语言,则语言代理14在切换语言设置之前经由用户设备12的用户界面20有利地询问用户,例如以图2A中所示的方式。
语言代理14启用并有权访问用于确定消息内容的语言的多个简约词典34。每个简约词典34包括一种或多种语言的简化数量的语言术语(单词),有利地,包括在消息传递交互期间可能使用的通用术语。例如,英语的特定简约词典34可以包括100个单词,诸如“I(我)”、“you(你)”、“they(他们)”、“thank(谢谢)”、“best(最好)”、“regards(问候)”、“hello(你好)”、“how(如何)”、“are(是)”、“am(是)”和“nice(好)”。简约词典34有利地建立在机器学习平台上,并且本地存储在用户设备12上,以允许语言代理14容易地访问。
简约词典34还包括所包括的术语的定义或翻译中的一个或两个。如在多个用户设备12上执行的语言代理14包括模块,该模块扫描用户消息历史和当前消息(例如,SMS、电子邮件和WhatsAppTM消息)以确定设备用户使用的语言中的常用术语,并将该信息转发给语言管理器50。语言管理器50经由分析引擎56、有利地使用机器学习算法、基于从实现语言代理14的多个用户设备12接收的消息信息来更新简约词典60和完整词典58。语言管理器50周期性地将简约词典的更新推送到多个用户设备12上的语言代理14,该更新基于由在多个用户设备12上执行的语言代理14扫描的消息。
语言代理14捕获来自由语言代理14启用的特定键盘22的文本输入,以用于在多个消息传递平台(例如,SMS、电子邮件、WhatsAppTM)中生成消息。键盘22还可以使得能够经由移动设备12的音频输入设备(例如,麦克风)接收可听语言,并且通过分析器15将可听语言转换为文本输入。可替换地,键盘22由用户设备12的操作系统或由其他常驻应用启用,在这种情况下,语言代理14启用过滤器以捕获经由键盘22输入的文本。捕获的文本由分析器15分析。分析器15将从可听语言转换的键入的单词或文本与语言代理14例如基于用户设备12的特定用户对相应一种或多种语言的先前使用而启用的一种或多种语言的完整词典30进行比较。完整词典30包括以特定语言使用的大部分、多数或全部单词。如果当前由语言代理14启用的完整词典30中不包括特定单词或单词系列,则分析器15在简约词典34中查找丢失的一个或多个单词,以确定该一个或多个单词是否来自由简约词典表示34的语言。如果分析器15发现丢失的单词是来自由简约词典34之一表示的语言,则语言代理14启动从语言管理器50下载该语言的完整词典58,完整词典58被安装为用户设备上的完整词典30。分析器15可以使用新安装的完整词典30来分析由用户设备12的用户生成的当前消息和将来消息。
安装的完整词典30可由语言代理14组合。这样,用户可以例如在使用德语键盘22b时键入英语单词,从而允许方便地键入变音符(umlauts)(“··”)(例如,在名称中),而无需触发自动校正,例如自动将英语单词校正或完成为德语单词。以这种方式,用户可以访问特定键盘的所需语言元素,而不必在输入其他语言的单词时切换键盘而带来不便。语言代理14有利地使组合词典可用于具有包括一种或多种其他语言的大多数或基本上所有字符的一组键盘字符的特定语言,但反之则不一定。组合词典可以使用多种语言进行校正,也可以将术语从一种语言转换为另一种语言的等效形式。例如,由语言代理14将组合的英语和德语词典应用于英语SMS消息可以将“Joerg”校正为
Figure BDA0002708448350000081
并且将“Baerbel”校正为
Figure BDA0002708448350000082
人对非母语的被动知识可能大于用户的主动知识,以使得在以非母语进行通信期间,该人可能不知道该非母语的一个或多个单词。用户设备12的用户在消息传递应用16中以特定语言生成消息时能够输入另一种语言的语言元素,其中分析器15将术语翻译成通信的主要特定语言。由于语言代理14维护用户设备12的用户使用的语言记录,例如在联系人语言数据存储32和消息数据存储18中,因此启用了此功能。为了说明的目的,输入英语消息的德语母语人士不知道特定单词,而是使用等效的德语单词。实施完整的德语和英语词典30的分析器15被配置为在用户在消息传递应用16中输入消息时将德语单词翻译成英语。例如,参考图2C、2D和2E,说德语的用户使用德语键盘22b键入混合语言消息“I'm sorry Ican't visit today.I just had a Bandscheibenvorfall.”分析器15基于完整的英语和德语词典30,确定通信中的主要语言是英语,而“Bandscheibenvorfall”是德语单词。响应于此,语言代理14基于英语和德语词典30中的定义自动将“Bandscheibenvorfall”校正为“slipped disk”。语言代理14还提供“herniated disk”和“slipped lumbar disk”作为用户界面20中用户可选的替换翻译(alternate translation)按钮23。在图2E中,对应于“herniated disk”的按钮23被示为由用户致动,并且响应于此,语言代理14在用户界面20中修改从“slipped disk”到“herniated disk”的翻译。
参照示出图2F-2I的示例性屏幕显示的用户设备12,语言代理14还被配置为基于用户的消息传递历史来禁用自动校正或启用用于特定语言的完整词典30和键盘22。图2F示出了由分析器15启用的按钮25,允许用户选择示例性校正“Dance”和“Daniel”或原始输入的单词“Danke”(德语单词为“thank you”)。响应于用户忽略特定次数(例如3次)的推荐校正(例如,“Danke”的选择按钮25),语言代理14启用了如图2G所示的按钮27和询问:“Recommended corrections for'Danke'ignored 3times.Disable autocorrect for'Danke'?(对“Danke”的推荐校正被忽略了3次。禁用“Danke”的自动校正?)”。通过选择“YES(是)”按钮27,分析器15不标记单词“danke”的后续文本输入以进行自动校正。替换地或响应于图2G中的“NO(否)”选择,语言代理14启用如图2H所示的按钮29和询问:“Recommendedcorrections for'Danke'ignored 3times.Enable German language?(对“Danke”的推荐校正被忽略了3次。启用德语?)”。基于分析器15确定单词“danke”是表示“thank you(谢谢)”的德语单词(例如,基于简约词典34),按钮29被启用。通过用户选择“YES(是)”按钮29,语言代理使德语键盘22b能够代替英语键盘22a,如图2I所示,并且除了完整的英语词典30之外,还启用了完整的德语词典30以用于后续消息。
参照图3,流程图示出了由用户设备经由处理器执行的方法200。尽管参考图1所示的组件(包括用户设备12和网络可访问的启用处理器的语言管理器50)描述了方法200和相关联的处理,但是方法200可以可替换地经由其他合适的系统执行。
方法200包括由包括用户界面20的用户设备12的处理器发起文本通信应用(步骤202)。数据输入界面,例如键盘22,由用户设备12的处理器在用户界面20中启用(步骤204),该数据输入界面包括基于国际呼叫代码确定的特定语言的语言元素,该国际呼叫代码涉及用户设备的用户的一个或多个存储的文本通信、或涉及用户设备的用户的一种或多种存储的文本通信的一种或多种语言。经由包括特定语言的语言元素(例如字符)的数据输入界面(例如,键盘22)接收文本输入(步骤206)。可替换地,用户设备12可以基于接收到的信号(例如,经由LDS 17)来确定其位置,并且可以基于所确定的位置,例如基于用户设备12所位于的国家的主要语言,来启用包括特定语言的语言元素的数据输入界面。
参照图4,流程图示出了由用户设备经由处理器执行的方法300。方法300包括方法200的步骤和对实现特定说明性实施例有用的附加步骤。尽管参考图1中所示的组件(包括用户设备12和网络可访问的启用处理器的语言管理器50)描述了方法300和相关处理,但是方法300可以可替换地经由其他合适的系统执行。
在步骤302中,用户设备12的处理器发起文本通信应用(例如,消息传递应用16)。在文本通信应用中,用户设备12经由用户设备12的用户界面20接收在特定电话号码处的特定消息接收者的指示(步骤304)。将特定消息接收者的特定电话号码与国际呼叫代码(即,国家代码)的列表以及与对应于国际呼叫代码列表的各个国家相对应的主要语言进行比较(步骤306),并识别与特定电话号码的国际呼叫代码对应的特定语言(步骤308)。将用户的消息历史与包括至少来自特定语言的术语的单词集进行比较(步骤310),并且在用户与不同于特定语言接收的一方之间的存储的通信中,识别来自特定语言的一个或多个术语(步骤312)。响应于识别与国际呼叫代码相对应的特定语言、并在存储的通信中从该特定语言中识别一个或多个术语,在用户界面20中启用了数据输入界面,例如键盘22,数据输入界面包括特定语言的语言元素(步骤314)。可替换地,可以仅基于识别与国际呼叫代码相对应的特定语言来启用数据输入界面。可替换地,用户设备12可以基于接收到的信号(例如,经由LDS 17)来确定其位置,并且可以单独地基于所确定的位置、或者结合识别存储通信中来自特定语言的一个或多个术语,例如基于用户设备所位于的国家的主要语言,来启用特定语言的数据输入界面。基于单词集将自动校正应用于特定语言的文本输入(步骤316),并且经由用户界面20显示文本输入的校正文本(步骤318)。所描述的自动校正可以例如包括以下一项或多项:校正文本输入中的拼写错误的单词、在用户界面20中显示用户可选单词以替换文本输入中的拼写错误的单词、完成文本中的部分输入的单词,以及显示用户可选单词以完成文本输入中的部分输入的单词。
参考图5,流程图示出了由用户设备经由处理器执行的电子消息传递方法400。尽管参考图1中所示的组件(包括用户设备12和网络可访问的启用处理器的语言管理器50)描述了方法400和相关处理,但是方法200可以可替换地经由其他合适的系统执行。
在方法400中,由用户设备12经由用户设备12的用户界面20从用户接收文本输入(步骤402),并且在文本输入中识别来自特定语言的术语(步骤404)。在用户界面20中启用数据输入界面,例如由消息传递应用16启用的屏幕键盘22,该用户界面20包括特定语言的语言元素,例如语言字符(步骤406)。有利地,响应于特定语言的术语的识别而启用数据输入界面。经由数据输入界面接收特定语言的文本输入(步骤408)。
方法400还可包括:接收特定消息接收者的指示;以及将特定消息接收者的特定电话号码与国际呼叫代码列表以及与对应于国际呼叫代码列表的各个国家相对应的主要语言进行比较。可以例如通过分析器15识别与特定电话号码的国际呼叫代码对应的第一语言。可替换地,第一语言可以被识别为基于用户设备12的位置而确定的国家或地区的主要语言,例如由LDS 17确定的。可以将用户的消息历史与包括来自多种语言的术语的单词集进行比较,例如包括在完整词典30或简约词典34中的单词集,并且可以在用户与不同于特定语言接收的一方之间的存储的通信中从第一语言中识别一个或多个术语。可以将文本输入与单词集进行比较,以从包含第二语言的特定语言中识别出该术语。可替换地,可以将用户与特定消息接收者之间的任何传输的文本通信与单词集进行比较,以从包括第二语言的特定语言中识别该术语。语言代理14可以响应于第一语言的识别和第二语言的识别而经由用户界面启用用户询问,并且经由用户询问接收用户对第一语言和第二语言中的一种或两种的选择。此外,可以响应于用户经由用户询问的一个或多个选择,在包括第一语言和第二语言中的一种或两种的语言元素的用户界面中启用数据输入界面。例如,可以启用具有第一语言、第二语言或第一和第二语言两者的字符的键盘。方法400可以还包括例如由分析器15基于单词集以第一语言和第二语言中的一种或两种将自动校正应用于文本输入,以及经由用户界面显示文本输入的校正文本。在用户忽略特定次数的特定校正后,例如,如图2F和2G所示,可以对特定术语禁用自动校正。所描述的自动校正可以例如包括以下一项或多项:校正文本输入中的拼写错误的单词、在用户界面20中显示用户可选单词以替换文本输入中的拼写错误的单词、完成文本中的部分输入的输入,以及显示用户可选单词以完成文本输入中的部分输入的单词。
方法400还可以包括:从特定语言中识别出术语特定次数,其中响应于从特定语言中识别出术语特定次数,可以经由用户界面20启用用户询问(例如,包括图2H所示的按钮29)。用户可以经由用户询问来选择特定语言,并且可以响应于经由用户询问的用户选择,在用户界面20中启用包括特定语言的语言元素的数据输入界面(例如,图2I所示的键盘22b)。还可以检索包括来自特定语言的单词集的完整词典30,并响应于经由用户询问的用户选择而为后续消息启用完整词典30。可以将文本输入与单词集进行比较,并且可以基于与单词集的比较将自动校正应用于特定语言的文本输入。
参照图6,流程图示出了由用户设备经由处理器执行的方法500。方法500包括方法400的步骤和对实现特定说明性实施例有用的附加步骤。尽管参考图1中所示的组件(包括用户设备12、通信网络8和网络可访问的启用处理器的语言管理器50)描述了方法500和相关处理,但是方法500可以可替换地经由其他合适的系统执行。
在步骤502中,用户设备12经由用户设备12的用户界面20从用户接收文本输入。用户设备12访问包括来自多种语言的术语的第一单词集(步骤504)。第一单词集可以包括例如包括从多种语言中选择的单词多个简约词典34。将文本输入与第一单词集进行比较(步骤506),并且在文本输入中识别来自特定语言的术语(步骤508)。经由用户设备12的处理器实现分析器15的语言代理14可以执行比较和识别步骤。检索第二单词集,该第二单词集包括响应于术语的识别而来自特定语言的术语,第二单词集中的来自特定语言的术语数量大于第一单词集中的来自特定语言的术语数量(步骤510)。第二单词集可以包括例如一个或多个完整词典30,完整词典30包括以特定语言使用的大部分、多数或全部单词。有利地,经由通信网络8从网络可访问的启用处理器的系统(例如语言管理器50)中检索第二单词集。在用户界面20中启用包括特定语言的语言元素的数据输入界面,例如由消息传递应用16启用的屏幕键盘22(步骤512),并且经由数据输入界面接收特定语言的文本输入,例如,包括与键盘22的键相对应的语言字符(步骤514)。将文本输入与第二单词集进行比较(步骤516),并且基于文本输入与第二单词集的比较将自动校正应用于特定语言的文本输入(步骤518)。所描述的自动校正可以例如包括以下一项或多项:校正文本输入中的拼写错误的单词、在用户界面20中显示用户可选单词以替换文本输入中的拼写错误的单词、完成文本中的部分输入的输入,以及显示用户可选单词以完成文本输入中的部分输入的单词。
方法500可以还包括接收多种语言的文本输入。可以在第一时间通过第一键盘22接收第一语言的文本输入,并且可以在第二时间经由第二键盘22或响应于分析器15从特定语言识别术语而启用的其他数据输入界面接收包括第二语言的特定语言的文本输入。
参照图7,流程图示出了由用户设备经由处理器执行的方法600。方法600包括方法400的步骤和对实现特定说明性实施例有用的附加步骤。尽管参考图1中所示的组件(包括用户设备12、通信网络8和网络可访问的启用处理器的语言管理器50)描述了方法600和相关处理,但是方法500可以可替换地经由其他合适的系统执行。
在步骤602中,由用户设备12经由用户设备12的用户界面20从用户接收文本输入。另外,用户设备12可以在特定电子地址或电话号码处接收对特定消息接收者的指示。用户设备12访问包括来自第一语言的术语的第一单词集(步骤604)。第一单词集可以包括例如一个或多个完整词典30,完整词典30包括以第一语言使用的大部分、多数或全部单词。将文本输入与第一单词集进行比较(步骤606),并且确定一个或多个术语不包括在第一单词集中(步骤608)。经由处理器实现分析器15的语言代理14可以例如执行比较和识别步骤。检索包括来自多种语言的术语的第二单词集(步骤610)。第二单词集可以包括例如多个简约词典34,简约词典34包括从多种语言中选择的单词。将文本输入与第二单词集进行比较(步骤612),并且基于文本输入与第二单词集的比较来识别来自第二语言的术语(步骤614)。响应于来自第二语言的术语的识别,检索包括来自第二语言的术语的第三单词集,第三单词集中的第二语言的术语数量比第二单词集中的第二语言的术语数量大至少两倍(步骤616)。第三单词集可以包括例如一个或多个完整词典30,完整词典30包括以第二语言使用的大部分、多数或全部单词。有利地,经由通信网络8从网络可访问的启用处理器的系统(例如语言管理器50)中检索第三单词集。
在用户界面20中启用包括第二语言的语言元素的数据输入界面,例如由消息传递应用16启用的屏幕键盘22(步骤618)。经由数据输入界面接收第二语言的文本输入(步骤620),例如作为与键盘22的键对应的语言字符。数据输入界面可以可替换地包括一个或多个键盘22,键盘22包括第一语言和第二语言的字符。将文本输入与第三单词集进行比较(步骤622),并且基于文本输入与第三单词集的比较将自动校正应用于第二语言的文本输入(步骤624)。基于文本输入与第一单词集的比较,自动校正可以附加地应用于第一语言的文本输入,使得单个消息可以包括多种语言。经由用户设备12的用户界面20显示文本输入的校正文本(步骤626)。可替换地,校正文本可以包括翻译文本,例如通过基于第一或第二语言中的哪一种是文本输入中的主要语言、或在用户设备12的用户与文本输入所针对的特定消息接收者之间的一个或多个传输通信中的主要语言,来将文本输入从第一语言翻译成第二语言。
在方法600中,可以由分析器15基于文本输入或其他通信与第一单词集、第二单词集和第三单词集中的一个或多个的比较来确定主要语言,例如,通过确定每种语言的术语数量,并在该语言的术语数量大于或明显大于通信中的一种或多种其他语言的术语数量时,将特定语言指定为主要语言。此外,分析器15可以基于第一单词集、第二单词集和第三单词集中的一个或多个来执行自动翻译,该单词集包括例如第一语言和第二语言的完整词典30。例如,第三单词集可以包括从第二语言到第一语言的翻译,并且应用自动翻译可以包括将来自第三单词集的翻译应用于文本输入。可替换地,可以经由网络8从语言管理器中检索专用于翻译特定语言的一个或多个附加词典,并将其用于翻译。有利地,通过处理器使用完整词典30经由分析器15在用户设备12上执行翻译。可替换地,可以由语言管理器50的一个或多个处理器基于语言词典来执行翻译,并且这种翻译可以经由网络8返回给用户设备12,尽管这种配置可能会遭受取决于网络8的速度和健壮性的等待时间问题。
完整词典30可以很大,并且包括复杂的和处理器密集的算法(例如,机器学习算法),用于实现对特定语言的文本的识别、校正和翻译。本文所述的方法通过仅应用基于先前使用和上述其他数据而确定为需要的完整词典30,并另外应用简约词典34,从而有效地节省设备资源(包括数据储存、存储器、功耗和处理使用)。通过实现相关的完整词典30,可以改善用户体验,而不会大大增加实现语言代理14的用户设备12的等待时间和设备电池使用量。
例如,如图2D和2E所示和本文的描述,可以基于用户文本输入、所接收的通信以及用户对推荐的校正或翻译的选择,例如在用户设备12上本地地更新完整和简约词典30、34以及相应的机器学习算法。可以基于用户文本输入、所接收的通信,以及在多个用户设备12上执行语言代理14的多个用户的推荐校正或翻译的用户选择来更新网络可访问的词典58、60。机器学习还基于用户的特定语言风格输入、接收到的通信以及用户对推荐的校正或翻译的选择,有利地定制例如在设备12上本地地存储的每个完整和简约词典30、34。此外,可以基于对网络可访问的词典58、60的更新来对特定用户的定制词典进行更新。
参照图8,示出了在用户设备12上执行的语言代理14与网络可访问的启用处理器的语言管理器50之间的说明性通信流程700。通信流程700中描述的通信可以是同步的或异步的。在通信702中,语言代理14发送对一组简约词典的请求。例如,响应于分析器15对文本通信中的一个或多个未知术语的确定,语言代理14可以发送该请求。可替换地,可以由语言代理14例如响应于用户设备启动、响应于语言代理14的启动、响应于其他事件,或者以预定的预设时间间隔来发送请求(通信702)。在通信704中,语言管理器50响应于该请求而发送一组简约词典60(通信702),其被保存为简约词典34或被语言代理14用于更新存储在用户设备12上的现有简约词典34。简约词典34包括多种语言的术语,并且有利地还包括定义。在通信706中,语言代理14发送对特定语言的完整词典的请求,例如响应于通过将消息与简约词典34进行比较来识别消息中特定语言中的一个或多个术语。在通信708中,响应于请求(通信706),语言管理器50发送用于特定语言的特定完整词典58,该特定完整词典58被保存在用户设备12上作为用于特定语言的特定完整词典30、或用于由语言代理14更新在用户设备12上存储的用于特定语言的现有特定完整词典30。特定完整词典30包括特定语言的术语,并且有利地还包括定义。特定完整词典30中特定语言的术语数量明显大于简约词典34中特定语言的术语数量。
语言代理14的分析器15将特定完整词典30与用户消息数据进行比较,并通过实施特定完整词典30对消息文本输入进行翻译和校正。基于比较和用户选择以及对推荐校正和翻译的接受,在通信710中,语言代理14将训练数据发送到语言管理器50。语言管理器50响应于从一个或多个用户设备12的语言代理14接收训练数据,来确定针对特定语言的更新的特定完整词典58。在通信712中,语言管理器50将更新的特定完整词典58发送给在一个或多个用户设备12上执行的语言代理14,该用户代理12当前在存储中维持与特定语言相对应的特定完整词典30。更新的特定完整词典58被保存为用于特定语言的特定完整词典30,或者被用于更新语言代理14存储在用户设备12上的用于特定语言的现有特定完整词典30。
图9抽象地示出了示例性计算机系统800的功能。本文所述的系统、方法和处理可以在其上执行。例如,用户设备12、语言管理器50和消息转发中心70可以各自由特定计算机系统800来体现。可以以个人计算机、膝上型计算机、手持移动通信设备、大型机、分布式计算系统或其他合适的配置的形式提供计算机系统800。在某些情况下,说明性主题在本文中被描述为计算机可执行指令,例如以程序模块的形式,该程序模块可以包括被配置为执行特定任务或实现特定抽象数据类型的程序、例程、对象、数据结构、组件或体系结构。计算机可执行指令例如由计算机系统800可执行的指令824表示。
计算机系统800可以作为独立设备操作,或者可以连接(例如联网)到其他机器。在网络部署中,计算机系统800可以在服务器-客户端网络环境中以服务器或客户端机器的身份运行,或者在对等(或分布式)网络环境中作为对等机器运行。计算机系统800也可以被认为包括机器的集,这些机器单独地或共同地执行一组(或多组)指令以执行本文所述的一个或多个方法论。
本领域技术人员将理解,可以使用其他计算机系统(包括但不限于可联网的个人计算机、小型计算机、大型计算机、手持移动通信设备、多处理器系统、基于微处理器的或可编程的电子设备以及智能电话)以启用本文所述的系统、方法和处理。此外,这样的计算机系统可以被配置为分布式计算机环境,其中程序模块被启用并且任务由通过通信网络链接的处理设备执行,并且其中程序模块可以位于本地和远程存储器存储设备中。
示例性计算机系统800包括经由总线808进行通信的处理器802(例如,中央处理单元(CPU)或图形处理单元(GPU))、主存储器804和静态存储器806。提供视觉显示器810,例如液晶显示器(LCD)、发光二极管(LED)显示器或阴极射线管(CRT),用于向系统的用户显示数据。视觉显示器810可以被启用以例如经由电阻式或电容式触摸屏来接收来自用户的数据输入。字符输入装置812可以例如以物理键盘的形式提供,或者可替换地,以程序模块的形式提供,该程序模块使得用户交互式模拟键盘(例如,鼠标)能够在视觉显示器810上并且例如可以使用电阻式或电容式触摸屏来致动。音频输入装置813(例如麦克风)启用了可听语言输入,可以由处理器802经由指令824将其转换为文本输入。可以以例如计算机鼠标的形式提供指示/选择装置814,或者可以经由视觉显示器810中的电阻式或电容式触摸屏来启用指示/选择设备814。还可以提供数据驱动器816、诸如音频扬声器的信号发生器818以及网络接口820。还提供了位置确定系统817,其可以包括例如GPS接收机和支持硬件。
由本文描述的系统、方法和处理体现或使用的指令824和数据结构(例如软件指令)存储在计算机可读介质822上,并且可经由数据驱动器816接入。此外,当执行指令824时,指令824可完全或部分地驻留在主存储器804中或处理器802内的特定时间段。主存储器804和处理器802也被认为是计算机可读介质。
尽管计算机可读介质822被示为单个介质,但是计算机可读介质822可以被认为包括单个介质或多个介质,例如,在集中式或分布式数据库中,或者存储该指令824的相关联的高速缓存和服务器。可以将计算机可读介质822视为包括可以存储、编码或携带由机器执行的指令并且使机器执行本文所述的任何一种或多种方法的任何有形介质,或者可以存储、编码或携带由此类指令使用或与之关联的数据结构。此外,术语“计算机可读存储介质”可以被认为包括但不限于可以以非暂时性方式存储信息的固态存储器以及光学和磁性介质。计算机可读介质可以例如包括诸如半导体存储设备之类的非易失性存储器(例如,诸如内部硬盘和可移动磁盘之类的磁盘、磁光盘,以及CD-ROM和DVD-ROM磁盘、可擦除可编程只读存储器(EPROM)、电可擦可编程只读存储器(EEPROM)和闪存设备)。
指令824可以经由网络接口820使用信号传输介质在通信网络(例如通信网络8)上发送或接收,该网络接口820在一种或多种已知的传输协议(例如,FTP、HTTP或HTTP)下操作。通信网络的示例包括局域网(LAN)、广域网(WAN)、互联网、移动电话网络、普通老式电话(POTS)网络和无线数据网络,例如WiFiTM和3G/4G/5G蜂窝网络。术语“计算机可读信号介质”还可被认为包括能够存储、编码或携带由机器执行的指令的任何瞬时无形介质,并且包括数字或模拟通信信号或其他无形介质以促进这样的指示通信。
尽管以上以特定的组合描述了特征和元件,但是本领域普通技术人员将理解,每个特征或元件可以单独使用或与其他特征和元件以任何组合使用。本文描述的方法可以在并入计算机可读介质中的计算机程序、软件或固件中实现,以由计算机或处理器执行。
尽管上面已经详细描述了实施例,但是这些实施例是非限制性的,并且应当被认为仅仅是示例性的。可以进行修改和扩展,并且所有这样的修改都被认为在所附权利要求限定的范围内。提供摘要是为了使读者能够快速确定技术公开的本质和要旨。摘要不旨在用于限制权利要求的范围。

Claims (33)

1.一种由一个或多个处理器实现的电子消息传递方法,所述方法包括:
由包括用户界面的用户设备发起文本通信应用;
在所述用户界面中启用数据输入界面,所述数据输入界面包括基于以下至少一项确定的特定语言的语言元素:
涉及所述用户设备的用户的至少一种所存储的文本通信的国际呼叫代码;或
涉及所述用户设备的用户的所存储的文本通信的至少一种语言,所存储的文本通信包括由所述用户设备的用户发送的文本或所述用户设备的用户从特定方接收的文本中的至少一种;以及
经由所述数据输入界面接收文本输入,所述数据输入界面包括所述特定语言的所述语言元素。
2.根据权利要求1所述的方法,还包括:
在所述文本通信应用中,所述用户设备经由所述用户设备的所述用户界面接收特定电话号码处的特定消息接收者的指示;
将所述特定消息接收者的所述特定电话号码与国际呼叫代码列表以及与对应于所述国际呼叫代码列表的各个国家相对应的主要语言进行比较,并识别与所述特定电话号码的国际呼叫代码相对应的特定语言;
将所述用户的消息历史与包含至少一种所述特定语言的术语的单词集进行比较,并在所述用户与所述特定消息接收者以外的一方之间的存储的通信中,从所述特定语言中识别至少一个术语;以及
响应于识别与所述国际呼叫代码相对应的所述特定语言、以及从所述存储的通信中的所述特定语言中识别所述至少一个术语,启用所述用户界面中的所述数据输入界面,所述数据输入界面包括所述特定语言的所述语言元素。
3.根据权利要求2所述的方法,还包括:
基于所述单词集将自动校正应用于所述特定语言的所述文本输入;以及
经由所述用户界面显示所述文本输入的校正文本。
4.一种由一个或多个处理器实现的电子消息传递方法,所述方法包括:
经由用户设备的用户界面从用户接收所述用户设备的文本输入;
在所述文本输入中识别来自特定语言的术语;
在包括所述特定语言的语言元素的所述用户界面中启用数据输入界面;以及
经由包括所述特定语言的所述语言元素的所述数据输入界面来接收所述文本输入。
5.根据权利要求4所述的方法,还包括:
检索与所述特定语言相对应的单词集;
比较所述文本输入和所述单词集;以及
基于与所述单词集的比较将自动校正应用于所述特定语言的所述文本输入。
6.根据权利要求4所述的方法,还包括:
由所述用户设备访问包括来自多种语言的术语的第一单词集;
将所述文本输入与所述第一单词集进行比较,以识别来自所述特定语言中的所述术语;
响应于来自所述特定语言的所述术语的识别,检索包括来自所述特定语言的术语的第二单词集,所述第二单词集中来自所述特定语言的所述术语数量大于所述第一单词集中来自所述特定语言的所述术语数量;
比较所述文本输入与所述第二单词集;以及
基于与所述第二单词集的比较,将自动校正应用于所述特定语言的所述文本输入。
7.根据权利要求6所述的方法,还包括:经由网络从网络可访问的计算系统检索所述第二单词集。
8.根据权利要求4所述的方法,还包括:
在第一时间接收所述用户设备以第一语言的所述文本输入;以及
经由数据输入界面在第二时间接收所述用户设备以包括第二语言的特定语言的所述文本输入,所述数据输入界面响应于从所述特定语言识别所述术语而启用。
9.根据权利要求4所述的方法,还包括:
由所述用户设备访问包括来自第一语言的术语的第一单词集;
比较所述文本输入与所述第一单词集,并确定所述文本输入的至少一个术语不包括在所述第一单词集中;
检索包括来自多种语言的术语的第二单词集;
将所述文本输入与所述第二单词集进行比较,其中,从所述特定语言中识别所述术语包括:基于所述文本输入与所述第二单词集的比较,从第二语言中识别术语,并且其中,所述数据输入界面包括所述第二语言中的语言元素;
响应于来自所述第二语言的所述术语的识别,检索包括来自所述第二语言的所述术语的第三单词集,所述第三单词集中的所述第二语言的所述术语数量比所述第二单词集中的所述第二语言的所述术语数量大至少两倍;
由所述用户设备经由包括所述第二语言的所述语言元素的所述数据输入界面接收所述文本输入;
将所述文本输入与所述第三单词集进行比较;
对所述第二语言的文本输入应用自动校正;以及
经由所述用户界面显示所述文本输入的校正文本。
10.根据权利要求9所述的方法,还包括:提供所述数据输入界面作为包括所述第二语言的字符的键盘。
11.根据权利要求9所述的方法,还包括:
提供所述数据输入界面作为至少一个包括所述第一语言和所述第二语言的字符的键盘;以及
将所述自动校正应用于所述第一语言的所述文本输入。
12.根据权利要求4所述的方法,还包括:
由用户设备访问包括来自第一语言的术语的第一单词集;
将所述文本输入与所述第一单词集进行比较,并确定所述文本输入中的至少一个术语不包括在所述第一单词集中;
检索包括来自多种语言的术语的第二单词集;
将所述文本输入与所述第二单词集进行比较,其中,从所述特定语言中识别所述术语包括:基于所述文本输入与所述第二单词集的比较,从第二语言中识别术语,并且其中,所述数据输入界面包括所述第二语言中的语言元素;
响应于来自所述第二语言的所述术语的识别,检索包括来自所述第二语言的术语的第三单词集,所述第三单词集中的所述第二语言的所述术语数量比所述第二单词集中的所述第二语言的所述术语数量大至少两倍;
由所述用户设备经由包括所述第二语言的所述语言元素的所述数据输入界面接收所述文本输入;
将所述文本输入与所述第三单词集进行比较;
将自动翻译应用于所述第二语言的所述文本输入,以将所述文本输入的至少一个术语从所述第二语言翻译成所述第一语言;以及
经由所述用户界面显示所述文本输入的翻译文本。
13.根据权利要求12所述的方法,还包括:
由所述用户设备经由所述用户界面接收在特定电话号码处的特定消息接收者的指示;
基于所述第一单词集、所述第二单词集或所述第三单词集的至少一个,确定所述用户与所述第一单词中的所述特定消息接收者之间的所述文本输入或存储的文本通信中至少一个的术语数量大于所述第二语言中的术语数量;以及
至少基于确定所述第一语言中的所述术语数量大于所述第二语言中的所述术语数量来应用所述自动翻译。
14.根据权利要求12所述的方法,还包括:
基于所述第一单词集、所述第二单词集或所述第三单词集的至少一个,确定所述用户与所述第一语言和第二语言中的所述特定消息接收者之间的所述文本输入或存储的文本通信中至少一个的术语数量;以及
至少基于所述第一语言中的所述术语数量和所述第二语言中的所述术语数量来应用所述自动翻译。
15.根据权利要求12所述的方法,其中,应用所述自动翻译包括:
由所述用户设备经由网络将所述文本输入发送到网络可访问的计算系统;以及
经由所述网络从所述网络可访问的计算系统接收翻译文本。
16.根据权利要求12所述的方法,其中,应用所述自动翻译包括:
经由网络检索包括所述第一语言和所述第二语言的翻译词典;以及
将所述翻译词典应用于所述文本输入。
17.根据权利要求16所述的方法,其中,所述第三单词集包括从所述第二语言到所述第一语言的翻译,并且应用自动翻译包括将来自第三单词集的翻译应用于所述文本输入。
18.根据权利要求4所述的方法,还包括:
通过所述用户设备经由所述用户设备的所述用户界面接收特定电话号码处的特定消息接收者的指示;
将所述特定消息接收者的所述特定电话号码与国际呼叫代码列表以及与对应于所述国际呼叫代码列表的各个国家相对应的主要语言进行比较,并识别与所述特定电话号码的国际呼叫代码相对应的第一语言;
将所述用户的消息历史与包括来自多种语言的术语的单词集进行比较,并且在所述用户与不同于所述特定消息接收者的一方之间的存储的通信中,识别来自所述第一语言的至少一个术语;
将所述文本输入与所述单词集进行比较以从所述特定语言中识别所述术语,其中所述特定语言包括第二语言;
响应于从所述第一语言中识别出所述至少一个术语并从包括所述第二语言的所述特定语言中识别出所述术语,经由所述用户界面启用用户询问,并经由所述用户询问接收用户对所述第一语言或所述第二语言中的至少一个的选择;以及
响应于所述用户经由所述用户询问的选择,启用所述用户界面中的所述数据输入界面,所述数据输入界面包括所述第一语言或所述第二语言中的至少一种的语言元素。
19.根据权利要求18所述的方法,还包括:
基于所述单词集以所述第一语言或所述第二语言中的至少一种对所述文本输入应用自动校正;以及
经由所述用户界面显示所述文本输入的校正文本。
20.根据权利要求4所述的方法,还包括:
由所述用户设备经由所述用户设备的所述用户界面接收特定电话号码处的特定消息接收者的指示;
将所述特定消息接收者的所述特定电话号码与国际呼叫代码列表以及与对应于所述国际呼叫代码列表的各个国家相对应的主要语言进行比较,并识别与所述特定电话号码的国际呼叫代码相对应的第一语言;
将所述用户的消息历史与包括来自多种语言的术语的单词集进行比较,并且在所述用户与不同于所述特定语言接收的一方之间的存储的通信中,识别来自所述第一语言的至少一个术语;
将所述用户和所述特定消息接收者之间传输的文本通信与所述单词集进行比较,并在所述用户和所述特定消息接收者之间传输的文本通信中从第二语言中识别至少一个术语;
响应于从所述第一语言中识别出所述至少一个术语、并从所述第二语言中识别出所述至少一个术语,经由所述用户界面启用用户询问,并经由所述用户询问接收用户对所述第一语言或所述第二语言中的至少一个的选择,所述第一语言或所述第二语言中的至少一个包括所述特定语言;
响应于所述用户经由所述用户询问的选择,启用所述用户界面中的所述数据输入界面,所述数据输入界面包括所述第一语言或所述第二语言中的至少一种的语言元素;
由所述用户设备经由所述数据输入界面接收所述文本输入,所述数据输入界面包括所述第一语言或所述第二语言中的所述至少一种的所述语言元素;
以所述第一语言或所述第二语言中的所述至少一种将自动校正应用于所述文本输入;以及
经由所述用户界面显示所述文本输入的校正文本。
21.根据权利要求20所述的方法,还包括基于所述单词集将所述自动校正应用于所述文本输入。
22.根据权利要求4所述的方法,还包括响应于所述识别而启用所述数据输入界面。
23.根据权利要求4所述的方法,其中,从所述文本输入中识别出所述术语包括:从所述特定语言中识别出所述术语特定次数,所述方法还包括:
响应于从所述特定语言中识别出所述术语特定次数,经由用户界面启用用户询问;
经由所述用户询问接收所述用户对所述特定语言的选择;以及
响应于经由所述用户询问的用户选择,在所述用户界面中启用包括所述特定语言的语言元素的所述数据输入界面。
24.根据权利要求23所述的方法,还包括:
响应于经由所述用户询问的用户选择,检索对应于所述特定语言的单词集;
将所述文本输入与所述单词集进行比较;以及
基于与所述单词集的比较,将自动校正应用于所述特定语言的所述文本输入。
25.根据权利要求4所述的方法,还包括:
通过所述用户设备经由所述用户设备的所述用户界面接收特定电话号码处的特定消息接收者的指示;
将所述特定消息接收者的所述特定电话号码与国际呼叫代码列表以及与对应于所述国际呼叫代码列表的各个国家相对应的主要语言进行比较,并识别与所述特定电话号码的国际呼叫代码相对应的第一语言;
将所述文本输入与所述单词集进行比较以从所述特定语言中识别所述术语,其中所述特定语言包括第二语言;
响应于所述第一语言的识别和所述第二语言的识别,经由所述用户界面启用用户询问,并经由所述用户询问接收所述用户对所述第一语言或所述第二语言中的至少一种的选择;以及
响应于所述用户经由所述用户询问的选择,启用所述用户界面中的所述数据输入界面,所述数据输入界面包括所述第一语言或所述第二语言中的至少一种的语言元素。
26.根据权利要求4所述的方法,还包括:
基于所述用户设备接收的信号来确定所述用户设备的位置;
将所确定的所述用户设备的位置和与所确定的位置所对应的各个国家相对应的主要语言的列表进行比较,并识别与所确定的位置相对应的第一语言;
将所述文本输入与包括来自多种语言的术语的单词集进行比较,以从所述特定语言中识别所述术语,其中,所述特定语言包括第二语言;
响应于所述第一语言的识别以及来自包括所述第二语言的所述特定语言的所述术语的识别,经由所述用户界面启用用户询问,并经由所述用户询问接收用户对所述第一语言或所述第二语言中的至少一个的选择;以及
响应于所述用户经由所述用户询问的选择,启用所述用户界面中的所述数据输入界面,所述数据输入界面包括所述第一语言或所述第二语言中的至少一种的语言元素。
27.根据权利要求4所述的方法,还包括:
通过所述用户设备经由所述用户设备的所述用户界面接收特定消息接收者的指示;
基于所述用户设备接收的信号来确定所述用户设备的位置;
将所确定的所述用户设备的位置和与所确定的位置所对应的各个国家相对应的主要语言的列表进行比较,并识别与所确定的位置相对应的第一语言;
将所述用户的消息历史与包括来自多种语言的术语的单词集进行比较,并在所述用户与不同于所述特定语言接收的一方之间的存储的通信中,识别来自所述第一语言的至少一个术语;
将所述文本输入与所述单词集进行比较,以从所述特定语言中识别所述术语,其中所述特定语言包括第二语言;
响应于所述第一语言的识别和所述第二语言的识别,经由用户界面启用用户询问,并经由所述用户询问接收所述用户对所述第一语言或所述第二语言中的至少一个的选择;和
响应于所述用户经由所述用户询问的选择,启用所述用户界面中的所述数据输入界面,所述数据输入界面包括所述第一语言或所述第二语言中的至少一种的语言元素。
28.一种电子消息传递系统,包括用户设备,所述用户设备包括至少一个硬件处理器和至少一个非暂时性计算机可读存储介质,所述非暂时性计算机可读存储介质耦合到所述至少一个硬件处理器并存储用于由所述至少一个硬件处理器运行的编程指令,其中所述编程指令在被运行时使所述用户设备执行包括以下内容的操作:
经由所述用户设备的用户界面接收文本输入;
访问包括来自多种语言的术语的第一单词集;
将所述文本输入与所述第一单词集进行比较,并基于所述文本输入与所述第一单词集的比较,从所述多种语言中的特定语言中识别术语;
响应于所述术语的识别,经由网络检索包括来自所述特定语言的术语的第二单词集,所述第二单词集中的来自所述特定语言的术语数量大于所述第一单词集中的来自所述特定语言的术语数量;
将所述文本输入与所述第二单词集进行比较;
基于与所述第二单词集的比较,对所述特定语言的所述文本输入应用自动校正;以及
经由用户界面显示所述文本输入的校正文本。
29.根据权利要求28所述的电子消息传递系统,其中,所述编程指令在被运行时使所述用户设备执行操作,还包括:响应于从所述特定语言中识别所述术语,在所述用户界面中启用包括所述特定语言的语言元素的用户数据输入界面。
30.根据权利要求28所述的电子消息传递系统,其中,所述编程指令在被运行使所述用户设备从网络可访问的计算机服务器检索所述第二单词集。
31.根据权利要求28所述的电子消息传递系统,其中,所述编程指令在被运行还使所述用户设备执行包括以下操作:
基于所述文本输入与所述第一单词集的比较,从所述多种语言中的第二特定语言中识别术语;和
响应于所述术语的识别,经由网络检索包括来自所述第二特定语言的术语的第三单词集,所述第三单词集中来自所述第二特定语言的术语数量大于所述第一单词集中来自所述第二特定语言的术语数量。
32.根据权利要求28所述的电子消息传递系统,其中,所述编程指令在被运行还使所述用户设备执行包括以下操作:
将基于所述第二单词集的自动翻译应用于所述文本输入,以将所述文本输入的至少一个术语从包括第一语言的所述特定语言翻译成第二语言;以及
经由所述用户界面显示所述文本输入的翻译文本;
其中所述第二单词集包括至少包括所述第一语言和所述第二语言的词典。
33.根据权利要求28所述的电子消息传递系统,其中,所述编程指令在被运行还使所述用户设备执行包括将所述自动校正应用于以下至少之一的操作:
校正所述文本输入中拼写错误的单词;
显示用户可选单词来替换所述文本输入中拼写错误的单词;
完成在所述文本输入中部分输入的单词;或者
显示用户可选单词以完成在所述文本输入中部分输入的单词。
CN201980023506.5A 2018-03-30 2019-03-29 消息传递应用中的自动语言选择 Pending CN112005239A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/942,360 2018-03-30
US15/942,360 US10915183B2 (en) 2018-03-30 2018-03-30 Automatic language selection in messaging application
PCT/US2019/024765 WO2019191546A1 (en) 2018-03-30 2019-03-29 Automatic language selection in messaging application

Publications (1)

Publication Number Publication Date
CN112005239A true CN112005239A (zh) 2020-11-27

Family

ID=68057049

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980023506.5A Pending CN112005239A (zh) 2018-03-30 2019-03-29 消息传递应用中的自动语言选择

Country Status (3)

Country Link
US (1) US10915183B2 (zh)
CN (1) CN112005239A (zh)
WO (1) WO2019191546A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11474838B2 (en) * 2018-10-31 2022-10-18 Verizon Patent And Licensing Inc. Modifying content interface based upon level of activity
WO2021248383A1 (en) * 2020-06-10 2021-12-16 Orange Method for inputting message on terminal
US20220308905A1 (en) * 2020-06-17 2022-09-29 Arris Enterprises Llc Automatic selection of language for graphical user interface of electronic device based on wifi country code
WO2023226848A1 (zh) * 2022-05-24 2023-11-30 北京字跳网络技术有限公司 视频数据生成方法、装置、电子设备及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090170536A1 (en) * 2005-05-27 2009-07-02 Sony Ericsson Mobile Communications Ab Automatic language selection for text input in messaging context
US20090327948A1 (en) * 2008-06-27 2009-12-31 Nokia Corporation Text input
CN102033617A (zh) * 2004-08-31 2011-04-27 捷讯研究有限公司 手持电子设备中的多语言文本输入
US20140067371A1 (en) * 2012-08-31 2014-03-06 Microsoft Corporation Context sensitive auto-correction
US20140281944A1 (en) * 2013-03-14 2014-09-18 Apple Inc. Automatic supplementation of word correction dictionaries
CN104102629A (zh) * 2013-04-02 2014-10-15 三星电子株式会社 文本数据处理方法及其电子装置
CN105335355A (zh) * 2014-08-08 2016-02-17 掌赢信息科技(上海)有限公司 即时通信软件中的文本消息自动翻译方法、装置及系统
CN106453043A (zh) * 2016-09-29 2017-02-22 安徽声讯信息技术有限公司 基于多语言转换的即时通信系统
CN107046497A (zh) * 2016-02-05 2017-08-15 斯备希亚洲私人有限公司 消息扩充系统和方法
CN107656924A (zh) * 2017-10-20 2018-02-02 泾县麦蓝网络技术服务有限公司 一种应用于移动终端的双语翻译方法和系统

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001075662A2 (en) * 2000-03-31 2001-10-11 Amikai, Inc. Method and apparatus for providing multilingual translation over a network
DE602006016604D1 (de) * 2006-09-18 2010-10-14 Lg Electronics Inc Verfahren zur Verwaltung von Sprachinformation für Texteingabe, Verfahren für Texteingabe und mobiles Endgerät
US7890493B2 (en) 2007-07-20 2011-02-15 Google Inc. Translating a search query into multiple languages
WO2009029865A1 (en) * 2007-08-31 2009-03-05 Google Inc. Automatic correction of user input
CN101868797B (zh) 2007-09-21 2013-05-01 谷歌公司 跨语言搜索
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US20120035905A1 (en) * 2010-08-09 2012-02-09 Xerox Corporation System and method for handling multiple languages in text
US9098488B2 (en) * 2011-04-03 2015-08-04 Microsoft Technology Licensing, Llc Translation of multilingual embedded phrases
US20140035823A1 (en) * 2012-08-01 2014-02-06 Apple Inc. Dynamic Context-Based Language Determination
US20140267045A1 (en) * 2013-03-14 2014-09-18 Microsoft Corporation Adaptive Language Models for Text Predictions

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102033617A (zh) * 2004-08-31 2011-04-27 捷讯研究有限公司 手持电子设备中的多语言文本输入
US20090170536A1 (en) * 2005-05-27 2009-07-02 Sony Ericsson Mobile Communications Ab Automatic language selection for text input in messaging context
US20090327948A1 (en) * 2008-06-27 2009-12-31 Nokia Corporation Text input
US20140067371A1 (en) * 2012-08-31 2014-03-06 Microsoft Corporation Context sensitive auto-correction
US20140281944A1 (en) * 2013-03-14 2014-09-18 Apple Inc. Automatic supplementation of word correction dictionaries
CN104102629A (zh) * 2013-04-02 2014-10-15 三星电子株式会社 文本数据处理方法及其电子装置
CN105335355A (zh) * 2014-08-08 2016-02-17 掌赢信息科技(上海)有限公司 即时通信软件中的文本消息自动翻译方法、装置及系统
CN107046497A (zh) * 2016-02-05 2017-08-15 斯备希亚洲私人有限公司 消息扩充系统和方法
CN106453043A (zh) * 2016-09-29 2017-02-22 安徽声讯信息技术有限公司 基于多语言转换的即时通信系统
CN107656924A (zh) * 2017-10-20 2018-02-02 泾县麦蓝网络技术服务有限公司 一种应用于移动终端的双语翻译方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
余娟娟;钟鑫;: "针对iMessage等即时通信服务的攻击探究", 中国安防, no. 05, pages 96 - 102 *

Also Published As

Publication number Publication date
US10915183B2 (en) 2021-02-09
WO2019191546A1 (en) 2019-10-03
US20190302897A1 (en) 2019-10-03

Similar Documents

Publication Publication Date Title
CN112005239A (zh) 消息传递应用中的自动语言选择
US9002699B2 (en) Adaptive input language switching
US8169409B2 (en) Method of managing a language information for a text input and method of inputting a text and a mobile terminal
US8923507B2 (en) Alpha character support and translation in dialer
US20140189532A1 (en) Editing text-based communications
US10165097B2 (en) Call processing method and device
US9996586B2 (en) Method and device for searching for contact object, and storage medium
JP2010175967A (ja) 音声認識サーバ、電話機、音声認識システム、および音声認識方法
US20200288007A1 (en) Method and apparatus for storing telephone numbers in a portable terminal
KR20130108601A (ko) 신속하게 수취인을 부가하기 위한 방법 및 장치, 및 이동 단말
EP2339479A2 (en) Provision of text messaging services
CN106792604B (zh) 在通信过程中进行服务提示的方法及装置
US8805332B2 (en) Device and method for storing subscriber information in mobile terminal
US20170272402A1 (en) Method and electronic device for searching for special contacts
US8750840B2 (en) Directory assistance information via executable script
GB2443652A (en) Disambiguating text input using probability
CN112333337B (zh) 一种消息查看方法、装置、设备及存储介质
US10187744B2 (en) Simplified method for placing telephone call and simplified method for requesting location-based service
US11474691B2 (en) Method for displaying a virtual keyboard on a mobile terminal screen
US20150271337A1 (en) International dialing through a relay
KR100761807B1 (ko) 휴대 단말기의 문자 입력 장치 및 방법
Harutyunyan et al. Symbiosis of Email and SMS
US20130225138A1 (en) Method and Apparatus Pertaining to Telephone Number Display Formatting
KR20090063969A (ko) 이동통신단말기의 전화번호부 자동 갱신 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination