MX2008010477A - Traduccion de maquina en aplicaciones de envio de mensaje instantaneo. - Google Patents

Traduccion de maquina en aplicaciones de envio de mensaje instantaneo.

Info

Publication number
MX2008010477A
MX2008010477A MX2008010477A MX2008010477A MX2008010477A MX 2008010477 A MX2008010477 A MX 2008010477A MX 2008010477 A MX2008010477 A MX 2008010477A MX 2008010477 A MX2008010477 A MX 2008010477A MX 2008010477 A MX2008010477 A MX 2008010477A
Authority
MX
Mexico
Prior art keywords
translation
message
user
language
translated
Prior art date
Application number
MX2008010477A
Other languages
English (en)
Inventor
Sean Blagsvedt
Ganesh Ananthanarayanan
Kentaro Toyama
Edward Cutrell
Swagath Kannan
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of MX2008010477A publication Critical patent/MX2008010477A/es

Links

Classifications

    • 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/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • 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
    • 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/06Message adaptation to terminal or network requirements
    • H04L51/063Content adaptation, e.g. replacement of unsuitable content

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Machine Translation (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Una conexión de traducción de envío de mensaje instantáneo interactúa con un programa de envío de mensaje instantáneo para interceptar mensajes de entrada y enviar estos mensajes a un servicio de traducción de lenguaje. La conexión después presenta una traducción recibida del servicio junto con el mensaje original. Esto proporciona la traducción que puede ser utilizada por usuarios de envío de mensaje instantáneo para comunicarse a través de barreras de lenguaje, y sin traducción local o conocimiento de los trabajos internos de los servicios de traducción utilizados. Además, la conexión de traducción también proporciona traducción manual de mensajes, lo cual permite la comunicación con usuarios que utilizan un lenguaje diferente pero no utilizan la conexión de traducción. Los mensajes son modificados antes de la traducción con el fin de corregir la ortografía, para prevenir que palabras o frases particulares sean traducidas, y para cambiar el lenguaje de envío de mensaje instantáneo a una forma de lenguaje estándar. Las técnicas pueden ser realizadas en varios servicios de envío de mensaje, incluyendo el envío de mensaje en computadoras o dispositivos móviles, así como SMS.

Description

TRADUCCION DE MAQUINA EN APLICACIONES DE ENVIO DE MENSAJE INSTANTANEO ANTECEDENTES El envío de mensajes instantáneos se ha convertido en una herramienta ampliamente utilizada para comunicarse en tiempo real a través del Internet. Millones de usuarios de Internet utilizan aplicaciones de envío de mensajes instantáneos para conversar con amigos y familia, comunicarse en salas de plática, e incluso para intercambiar imágenes o documentos. Además, varias organizaciones y negocios están integrando aplicaciones de envío de mensaje instantáneo en su repertorio de herramientas de red estándares para mejorar la comunicación de negocio y reemplazar servicios de telecomunicación costosos (por ejemplo, conferencia por teléfono y video). Mientras la popularidad de Internet continúa en aumento alrededor del mundo, la comunicación internacional es crecientemente común. Esto significa, sin embargo, que los usuarios encontrarán barreras de lenguaje cuando utilizan envío de mensaje instantáneo. Existen varias técnicas actualmente disponibles para dirigir tales barreras de lenguaje. En una, un usuario de una herramienta de envío de mensaje instantáneo escribe un mensaje en su propio, o preferido, lenguaje en un programa de traducción separado o sitio web. El usuario entonces debe activar la herramienta de traducción para traducir el mensaje en el lenguaje de destino, y cortar y pegar el texto traducido de nuevo en el campo de texto de la herramienta de envío de mensaje instantáneo. Una vez que esto se completa, el usuario puede transmitir el mensaje. Mientras este método puede ser efectivo, es obvio que el procedimiento de cortar, pegar e intercambiar continuamente aplicaciones impide significativamente el procedimiento de comunicación. A localización de buenas herramientas de traducción puede ser también difícil y puede distraer a los usuarios. Debido a que cualquier herramienta de traducción puede no soportar todos los lenguajes necesarios un usuario particular puede tener, un usuario puede encontrarse a sí mismo al utilizar numerosas herramientas diferentes para conversar con diferentes contactos alrededor del mundo, que también disminuye la utilidad del servicio de envío de mensaje. En otras técnicas, una herramienta de traducción dedicada se integra con un programa de envío de mensaje instantáneo. Estas técnicas carecen de flexibilidad, sin embargo, debido a que unen el programa de envío del mensaje a una herramienta de traducción individual no toman ventaja de herramientas de traducción existentes disponibles, que pueden estar en línea, algunas de las cuales se actualizan frecuentemente y son de una calidad superior. En otras técnicas, una clase de traducción "intermediario" se utiliza para traducir mensajes mientras se envían desde un usuario a otro. Mientras esta técnica requiere de poco trabajo adicional en la parte del usuario, algunos usuarios pueden encontrar que requieren demasiada delegación de control al traductor, lo que previene que los usuarios controlen como se traduce sus mensajes y reciben los mensajes traducidos. Un problema final con técnicas de traducción automatizadas existentes es que muchos requieren que un usuario utilice la misma tecnología de traducción con el fin de comunicarse ambos a través de una división de lenguaje.
BREVE DESCRIPCION DE LA INVENCION Se describen técnicas y herramientas para traducción en aplicaciones de envío de mensaje. En particular, una conexión a una aplicación de envío de mensaje instantáneo dirige mensajes a servicios de traducción de tercera parte antes de presentar los mensajes a un usuario. Esto permite que el usuario se comunique con contactos que no hablan o escriben necesariamente el lenguaje del usuario. Adicionalmente, las características de interfase de usuario se describen y permiten mayor flexibilidad de uso de lenguaje con los servicios de traducción, así como la capacidad de corregir traducciones y adaptar como se realiza en las traducciones. De esa forma, en un ejemplo, se describe un método de traducir texto en envío de mensaje instantáneo y comprende, bajo control de un programa de envío de mensaje instantáneo, interceptar un mensaje de entrada, enviar el mensaje a un servicio de traducción, y presentar una traducción del mensaje. En otro ejemplo, se describe un sistema para presentar traducciones de texto de envío de mensaje instantáneo. El sistema ilustrativo comprende un módulo de traducción y un módulo de envío de mensaje instantáneo configurado para recibir un mensaje. El módulo de traducción se configura para recibir una indicación que el mensaje se va a traducir, que permite que el mensaje se modifique automáticamente de acuerdo con preferencias de usuario para facilitar la traducción, y traducir el mensaje. El módulo de envío de mensaje instantáneo se configura para presentar el mensaje traducido. En otro ejemplo, se describen uno o más medios legibles por computadora y contienen instrucciones ejecutables por máquina que describen un método para facilitar envío de mensaje entre dos usuarios que se comunican en diferentes lenguajes. El método comprende recibir una indicación de un usuario en un primer lenguaje utilizado por el usuario y un segundo lenguaje utilizado por una persona con quien se comunica el usuario, recibir una indicación que un mensaje se recibió por un servicio de envío de mensaje, realizar modificaciones al mensaje para preparar el mensaje para traducción, enviar el mensaje a un traductor que se configura para traducir texto del segundo lenguaje al primer mensaje, recibir una traducción del mensaje del traductor, y presentar la traducción al usuario. Esta breve descripción de la invención se proporciona para introducir una selección de conceptos en una forma simplificada que además se describe posteriormente en la Descripción detallada. Esta breve descripción no pretende identificar características clave o características esenciales del tema reclamado, ni pretende utilizarse como un auxiliar al determinar el alcance del tema reclamado. Características y ventajas adicionales serán evidentes a partir de la siguiente descripción detallada de las modalidades que procede con referencia a los dibujos anexos.
BREVE DESCRIPCION DE LOS DIBUJOS La Figura 1 es un diagrama de interacciones ilustrativas entre computadoras de envío de mensaje instantáneo y herramientas de traducción en una red. La Figura 2 es un diagrama de bloques que ilustra componentes ilustrativos e interacciones entre un programa de envío de mensaje instantáneo ilustrativo con conexión de traducción y un servidor de traducción ilustrativo de un servicio de traducción ilustrativo. La Figura 3 es un diagrama de una ventana de envío de mensaje instantáneo ilustrativa antes de activación de la conexión de traducción de la Figura 2. La Figura 4 es un cuadro de flujo que ilustra un procedimiento ilustrativo del programa de envío de mensaje instantáneo para activar la conexión de traducción de la Figura 2. La Figura 5 es un diagrama de una ventana de envío de mensaje instantáneo ilustrativa que utiliza la conexión de traducción de la Figura 2.
La Figura 6 es un cuadro flujo que ¡lustra un procedimiento ilustrativo de la conexión de traducción para preparar mensajes para traducir. La Figura 7 es un cuadro de flujo que ilustra un procedimiento ilustrativo de la conexión de traducción para producir mensajes que se reciben por el programa de envío de mensaje instantáneo de la Figura 2. La Figura 8 es un diagrama de una ventana de envío de mensaje instantáneo ilustrativa que utiliza un cuadro de traducción en la conexión de traducción de la Figura 2. La Figura 9 es un diagrama de una ventana de envío de mensaje instantáneo ilustrativa que muestra el cuadro de traducción de la Figura 8 que se utiliza para traducir manualmente un mensaje.
La Figura 10 es un cuadro de flujo que ilustra un procedimiento ilustrativo de la conexión de traducción para traducir mensajes a través del cuadro de traducción. La Figura 11 es un diagrama de bloques de un ambiente de cómputo adecuado ilustrativo para implementar la conexión de traducción de la Figura 2.
DESCRIPCIÓN DETALLADA La siguiente descripción se refiere a la traducción de envío de mensaje instantáneo por una coaexión de traducción a un programa de envío de mensaje instantáneo que se comunica con servicios de traducción externos para realizar trabajo de traducción. Al utilizar una conexión de peso ligero, se le ofrece un usuario de un grado fuerte de flexibilidad en la traducción mientras se descarga la traducción real para separar servicios con el fin de reducir cargas de cálculo en la computadora del usuario. Adicionalmente, al utilizar servicios de traducción de tercera parte, la conexión de traducción permite a los usuarios seleccionar de muchos servicios diferentes, lo que permite a los usuarios seleccionar el servicio que trabaja bien para ellos. En particular, la conexión de traducción trabaja al interceptar mensajes recibidos por un programa de envío de mensaje instantáneo, y entonces enviar esos mensajes a un servicio de traducción pre-seleccionado. Una vez que se recibe una respuesta con una traducción del mensaje del servicio, la conexión de traducción entonces presenta la traducción. De esta forma, los mensajes pueden traducirse al utilizar la traducción servida sin requerir reconocimiento de los procedimientos de servicio por la conexión de traducción. Adicionalmente, la conexión de traducción ofrece un cuadro de traducción que permite a un usuario ingresar datos para enviarse inmediatamente a un servicio de traducción, traducido, y entonces enviado al contacto de usuario. Mientras no se garantiza que las producciones sean perfectas, la información contextual adicional proporcionada a través de las traducciones debe ser suficiente para facilitar a un usuario en comunicación a través de una división de lenguaje, incluso, con una persona que no tiene acceso a la conexión de traducción. Mientras algunas de las características de envío de mensaje instantáneo aquí descrito se describen con referencia particular a aplicaciones de envío de mensaje instantáneo, las técnicas y características aquí descritas pueden utilizarse en varias aplicaciones y situaciones de envío de mensaje alternativas, que incluyen, pero no se limita a dispositivos de envío de mensaje instantáneo que corren en teléfonos móviles (u otros dispositivos móviles) y envío de mensaje de SMS. 1. Interacción de Red La Figura 1 es un diagrama que ilustra componentes de las técnicas de traducción de envío de mensaje instantáneo aquí descritas mientras se comunican a través de una red 100. En una implementación, la red 100 comprende Internet, para que los usuarios en diferentes países utilicen las técnicas descritas aquí para comunicarse. En implementaciones alternativas, la red 100 puede comprender otras implementaciones de red, tal como, por ejemplo, intranets, redes de área local, redes de área amplia y Ethernet, tal como redes que comprenden, en todo o en parte, protocolos en red inalámbricos (por ejemplo, 802.11a, 802.11b, 802.11g, etc.). La Figura 1 también ilustra dos computadoras 110 y 120, cada una de las cuales se utiliza por un usuario para comunicarse a través de un programa de envío de mensaje instantáneo. En el ejemplo ilustrado en la Figura 1, la computadora 110 se utiliza por un Usuario A quien se comunica en inglés, mientras la computadora 120 se utiliza por un Usuario B quien se comunica en alemán. La Figura 1 también ilustra varios servicios de traducción 130, 140 y 150, que se conectan a la red 100 y que pueden traducir textos de un lenguaje a otro. Como se ilustró en la Figura 1, los servicios de traducción 130, 140 y 150 cada uno proporciona traducción en una dirección (por ejemplo, de alemán a inglés). En algunas interpretaciones alternativas, uno o más servicios de traducción proporcionarán traducción en ambas direcciones (por ejemplo de inglés a alemán así como alemán a inglés). En una implementación, los servicios de traducción permiten comunicación a través de un protocolo de servicios web estándares; en implementaciones alternativas, se utiliza un protocolo de traducción dedicado. En una implementación, al utilizar métodos de comunicaciones conocidos para solicitar y recibir una traducción, la conexión de traducción se habilita para enviar texto y recibir traducciones de servicios de traducción sin conocer nada sobre la operación interna de los servicios. En otra implementación, uno o más servicios de traducción se localizan en computadoras que corren los programas de envío de mensaje instantáneo (por ejemplo, como bibliotecas dinámicamente enlazadas o como programas recopilados) y la conexión de traducción no requiere uso de la red para comunicarse con los servicios. Sin embargo, en estas implementaciones, los servicios aún pueden ser opacos para la conexión y de esa forma confiarse sin referencia a sus trabajos internos. La Figura 1 también ilustra un servidor de conexión de traducción 160, que en una implementación, contiene código para la conexión de traducción y proporciona el código en respuesta a una solicitud de un programa de envío de mensaje instantáneo. El servidor de conexión de traducción también puede proporcionar direcciones o ubicaciones para los varios servicios de traducción; en una implementación, esto se hace por el servidor de conexión de traducción 160 que mantiene en una lista de servicios de traducción conocidos, así como sus direcciones de red. La Figura 2 es un diagrama de bloques que ilustra componentes de un programa de envío de mensaje ilustrativo 200, un servidor de traducción ilustrativo 210 y un servicio de traducción ilustrativo 230 que interactúa en la red 100 de acuerdo con las técnicas aquí descritas para proporcionar traducción de envío de mensaje instantáneo. En varias implementaciones, el programa de envío de mensaje instantáneo 200 puede implementarse como una de las varias plataformas de envío de mensaje instantáneo de propiedad o de fuente abierta, que incluye, pero nos e limita a, Windows Messenger, MSN Messenger, Messenger Instantáneo de AOL, Messenger de Yahoo, Conversación de Google, ICQ, e implementaciones que utilizan el protocolo de Jabber. En una implementación preferida, el programa de envío de mensaje instantáneo 200 soporta el uso de conexiones u otros programas modulares que tienen la funcionalidad del programa de envío de mensaje instantáneo. En implementaciones alternativas, se implementan varias técnicas de traducción aquí descritas como una parte integrada del programa de envío de mensaje instantáneo. La Figura 2 ilustra un ejemplo de una conexión de traducción 260 que implementa las técnicas de traducción aquí descritas. La conexión de traducción puede implementarse en una variedad de formas. En una implementación, la conexión se implementa al utiliza un lenguaje escrito tal como, por ejemplo, JavaScript. En implementaciones alternativas, la conexión de traducción puede implementarse al utilizar un lenguaje recopilado o interpretado. En la implementación ilustrada, la conexión de traducción 260 se descarga en la red 100 del servidor de traducción 210, que mantiene un escrito de conexión de traducción 240 y que proporciona el escrito a programas de envío mensaje instantáneo con solicitudes. En la implementación ilustrada, el programa de envío de mensaje instantáneo es capaz de comunicarse con el servidor de traducción 210 debido a que mantiene una dirección 250 para el servidor que lo utiliza cuando envía solicitudes para el escrito en la red 100. Como se describió anteriormente, en algunas implementaciones la conexión de traducción 260 puede no implementarse como una conexión, en lugar de eso como una porción integrada del programa de envío de mensaje instantáneo 200, en cuyo caso, no es necesario mantener un estricto para la conexión 260 en un servidor. Como en la Figura 2 también ilustra, el servidor de traducción mantiene una lista 220 de servicios de traducción disponibles para descargar en la red 100 por el programa de envío de mensaje instantáneo 200 o conexión de traducción 260. En una implementación, esta lista comprende direcciones de red para los servicios de traducción, así como una indicación de los lenguajes que se traducen por los servicios enlistados. Una razón para proporcionar esta lista en un servidor de traducción es que una lista centralizada de servicios pueda mantenerse y actualizarse, en lugar de requerir que los usuarios de la conexión de traducción locales en los servicios de traducción que desean utilizar. En una implementación alternativa, la lista no se mantiene en un servidor central, pero a su vez los usuarios ingresan los servicios que desean utilizar con la conexión de traducción. Incluso en otra implementación, se mantiene la lista centralizada, pero los usuarios también son capaces de ingresar servicios no enlistados para utilizarse con la conexión de traducción, o para sugerir servicios para inclusión en la lista 220. Como ilustra la Figura 2, la información de la lista 220, una vez descargada del servidor de traducción 210, se mantiene en el programa de envío de mensaje instantáneo como una lista 270 de servicios de traducción disponibles. En varias implementaciones, la lista 270 puede representar toda o parte de la información en la lista 220, así como información de servicio de traducción adicional ingresada por un usuario. El programa de envío de mensaje instantáneo también comprende código de inicio de conexión 280 que proporciona funcionalidad para descargar el escrito de conexión de traducción 240 y la lista 220 de servicios de traducción disponibles del servidor de traducción 210. Como ilustra la Figura 2, la conexión de traducción 260 también tiene asociado con ella un protocolo de traducción 265, que facilita comunicación en la red 100 entre la conexión de traducción 260 y varios servicios de traducción, tal como servicio de traducción 230. Para facilitar esta comunicación, el servicio de traducción ilustrativo 230 también implementa el protocolo de traducción 265 para permitir que las solicitudes y resultados de traducción se transmitan en la red 100. En implementaciones alternativas, la comunicación entre servicios de traducción y el programa de envío de mensaje instantáneo no requiere un protocolo de traducción dedicado, y a su vez hace uso de otros protocolos de comunicaciones mutuamente entendidos. Puede notarse que no se ilustran otros componentes internos del servicio de traducción. Esto representa la flexibilidad de las técnicas de traducción aquí descritas, ya que no se unen a ninguna implementación de servicio de traducción particular. Mientras la conexión de traducción puede comunicarse con el servicio de traducción, las traducciones pueden obtenerse, sin importar los mecanismos internos del servicio de traducción 230. 2. Ejemplos de la Conexión de Traducción en Operación La Figura 3 muestra un diagrama de una ventana 300 de un programa de envío de mensaje instantáneos 200 que se utiliza para iniciar la traducción de mensajes instantáneos que utilizan una conexión de traducción. En la ¡mplementación ilustrada, el programa de envío de mensaje instantáneo (que se inició previamente por un usuario) se configuró para presentar un artículo de menú 320, selección por la cual un usuario inicia la traducción. En otra ¡mplementación, las técnicas de traducción se inician cuando el programa de envío de mensaje instantáneo comienza, y no hay requerimiento para iniciar separadamente la traducción, y de esa forma ningún requerimiento tiene la selección de menú 320. La Figura 4 ilustra un procedimiento ilustrativo 400 realizado por el programa de envío de mensaje instantáneo 200 para comenzar e iniciar una conexión de traducción 260. En varias implementaciones del procedimiento 400, los bloques de procedimiento ilustrados pueden dividirse, fusionarse u omitirse. En una ¡mplementación, el procedimiento 400 se realiza por el programa envío de mensaje instantáneo 200 que ejecuta el código de inicio de conexión de traducción 280. El procedimiento comienza en el bloque 420, en donde el programa de envío de mensaje instantáneo recibe una indicación de un usuario para comenzar la traducción de mensajes instantáneos. Como se ilustró en la Figura 3, esta indicación puede tomar la forma de una selección de menú; otras implementaciones del procedimiento 400 pueden utilizar diferentes indicaciones o pueden comenzar la traducción automáticamente cuando se inicia el programa de envío de mensaje instantáneo, omitiendo el bloque 420.
Después en el bloque 440, el programa de envío de mensaje Instantáneo solicita el escrito de conexión y la lista de servicios de traducción disponibles del servidor de traducción. En el bloque 460, el programa de envío de mensaje instantáneo ejecuta el escrito de conexión (o causa que el escrito se ejecute en la computadora que el programa corre), que inicia la conexión de traducción y permite que ocurra la traducción. Finalmente, el bloque 480, el programa de envío de mensaje continúa ejecutándose en el bloque 480, lo que deja que la conexión de traducción que ahora corre realice los trabajos de traducción. La Figura 5 muestra un diagrama de un programa de envío de mensaje instantáneo 200 mientras corre una conexión de traducción 260 y presenta un panel de traducción 500. Como ilustra la Figura 5, el panel de traducción 500 es un extremo frontal a la conexión e traducción que proporciona una interfase para dar a presentación de traducciones mientras se hace y para interactuar con la conexión de traducción. Por ejemplo, la Figura 5 muestra menús de desplazamiento 510 y 520 que proporcionan a un usuario una selección de lenguajes para los cuales puede realizarse la traducción. De esa forma, el usuario de la conexión de traducción en la Figura 5 sabe que su contacto se comunicará en francés, y así selecciona la opción de menú de desplazamiento 510 para indicar que el contacto escribirá en francés. Similarmente, el usuario puede seleccionar un lenguaje del menú de desplazamiento 520 para indicar el lenguaje en el que se comunica, que en este ejemplo es inglés.
Como se describirá, en una implementación, lo menús de desplazamiento se llenan por información de la lista de servicios de traducción disponibles descargados del servidor de traducción. Adicionalmente, en algunas implementaciones, los menús de desplazamiento pueden ser interactivos, con un menú que cambia sus entradas dependiendo de la elección seleccionada en el otro menú basándose en que servicios de traducción están disponibles. De esa forma, por ejemplo, si se selecciona francés en el primer menú 510, entonces el menú 520 sólo contendrá lenguajes para los cuales existen servicios de traducción disponibles para traducir en francés. En otra implementación, si existe más de un servicio de traducción disponible que traduce entre cierto par de lenguajes, los menús de desplazamiento pueden indicar, además de los lenguajes seleccionares, que servicios de traducción se seleccionaron, con el fin de que un usuario seleccione su servicio de traducción preferido.
La Figura 5 también muestra un ejemplo de la conexión de traducción que se utiliza para realizar traducciones. La Figura 5 ilustra un ejemplo de una conversación que toma lugar en la ventana de envío de mensaje 505 entre un usuario local "George" Y su contacto remoto de "Jean Doc". En este ejemplo, Jean respondió al saludo inicial de George con e| mensaje en el lenguaje de francés "¡Salut, George! Comment ca va" (530). Debido a que George no entiende francés, y debido a que sabe que Jean escribirá en francés, previamente seleccionó esos mensajes que deben traducirse de francés a inglés en los menús de desplazamiento 510 y 520. De esa forma, el mensaje 530 de Jean se repitió en el panel de traducción junto con una traducción "¡Hola, George! ¿Cómo estás?" (540). De esa forma George puede utilizar la traducción 540 para entender mejor la respuesta de Jean. Mientras se apreciará que la producción presentada en el panel de traducción puede no ser perfecta (dependiendo de las capacidades del servicio de traducción utilizado) la traducción debe servir para proporcionar suficiente información que el usuario (aquí, George) puede hacer el significado general del mensaje recibido de su contacto. El panel de traducción 500 también incluye un cuadro de traducción 550 que puede utilizarse para traducciones manualmente solicitadas, de acuerdo con ejemplos que se describirán con referencia a las figuras subsecuentes. La Figura 6 ilustra un procedimiento ilustrativo 600 realizado por la conexión de traducción 260 para prepararse para traducir mensajes instantáneos. En varias implementaciones del procedimiento 600 los bloques de procedimiento ilustrados pueden dividirse, fusionarse u omitirse. El procedimiento comienza en el bloque 610, en donde la conexión de traducción 260 presenta el panel de traducción 500. Después, en el bloque 620 el cuadro de traducción 550 se presenta dentro del panel. En otra implementación del procedimiento 600, el cuadro de traducción no se presenta inmediatamente cuando se presenta el panel de traducción 500, pero a su vez se oculta hasta que se recibe una indicación de un usuario para presentar el cuadro.
Después en el bloque 630 la conexión de traducción llena los menús de selección del lenguaje 510 y 520 basándose en la lista de servicios de traducción disponibles descargados en el procedimiento 400. En otra implementación, el procedimiento del bloque 630 también llena la lista con servicios de traducción que se indican por el usuario. En el bloque 640, el procedimiento recibe indicaciones del usuario sobre el lenguaje de usuario y su lenguaje de contacto. Finalmente, en el bloque 650, la conexión de traducción traduce mensajes mientras llegan al programa de mensaje instantáneo 200. El procedimiento de bloque 650 se describe en detalle general con referencia a la Figura 7. La Figura 7 ilustra un procedimiento ilustrativo 700 realizado por la conexión de traducción 260 para traducir mensajes instantáneos. En varias implementaciones del procedimiento 700, los bloques de procedimiento ilustrados pueden dividirse, fusionarse u omitirse. En una implementación, el procedimiento del bloque 650 comprende procedimiento 700. El procedimiento comienza en el bloque 710, en donde la conexión de traducción 260 espera a que los mensajes instantáneos se reciban por el programa de envío de mensaje instantáneo 200. Después, en el bloque 720, la conexión de traducción 260 intercepta un mensaje de entrada. En una implementación, esta intersección se hace a través de un controlador de evento que alerta al programa de mensaje instantáneo cuando se recibió un nuevo mensaje. En otra implementación, la conexión de traducción puede encuestar periódicamente al programa de envío de mensaje instantáneo para determinar si se recibió un nuevo mensaje. Siguiendo al bloque 720, en el bloque 725 la conexión de traducción realiza modificaciones al mensaje para prepararlo para traducción por un servicio de traducción. Ejemplos de tal modificación incluyen, pero no se limitan a, corrección automática de errores de ortografía y corrección de estructuras de lenguaje de envío de mensaje instantáneo en lenguaje estándar. Después, en el bloque 730, la conexión de traducción 260 envía el mensaje a un servicio de traducción apropiado para traducirse del lenguaje de contacto al lenguaje del usuario. En una implementación el servicio de traducción al cual se envía el mensaje será un elegido por las elecciones del lenguaje de menús de desplazamiento 510 y 520. Adicionalmente, como se mencionó anteriormente, en varias implementaciones, el mensaje enviado en el bloque 530 puede estar en un protocolo de mensaje de traducción conocido, o alternativamente puede enviarse en otros protocolos mutuamente conocidos para el servicio de traducción y la conexión de traducción.
Después, en el bloque 740, la traducción para el mensaje se recibe del servicio de traducción, y, en el bloque 750, se presenta la traducción. En varias implementaciones, la traducción puede presentarse con o sin el texto de lenguaje extraño original; la elección para presentar el mensaje original o no puede dejarse al usuario como una opción. 3. Ejemplos de Características de Traducción de Envío de Mensaje Instantáneo Mientras se describen aquí varias herramientas y características en el contexto de la conexión de traducción, se reconocerá que, en varias implementaciones, las características también pueden utilizarse en otras implementaciones de traducción de envío de mensaje instantáneo. Varias de estas características pueden utilizarse en cualquiera de las implementaciones de traducción de máquinas descritas anteriormente, o en otras aplicaciones de envío de mensaje con traducción, que incluyen, pero no se limitan a programas de envío de mensaje instantáneo que corren en teléfonos móviles u otros dispositivos móviles y envío de mensaje de SMS que utiliza traducción. La Figura 8 muestra un diagrama de un uso ilustrativo del cuadro de traducción 550. En el ejemplo de la Figura 8, la conversación originalmente iniciada en la Figura 5 continúa. El usuario, George, respondió al mensaje enviado por el contacto, Jean, con la respuesta "genial. ¿Cómo estás tú?" Jean, sin embargo no entiende esta respuesta, posiblemente debido a que no tiene capacidades de traducción en su extremo, y respondió con un mensaje "Quoi?" (810) que pregunta lo que significa el mensaje previo. En este punto en el ejemplo, George decide que será mejor enviar una traducción de francés de su oración previa para ver si Jean entiende la traducción. George puede hacer esto al utilizar el cuadro de traducción 550 para crear y enviar una traducción manual del mensaje. Para hacer esto, George escribe el mensaje en el cuadro de texto 820 del cuatro de traducción 550 y entonces oprime el botón "Enviar" 830. El texto entonces se envía para traducirse por un servicio de traducción y entonces la traducción se envía al contacto. Se debe notar que debido a que cada servicio de traducción no se asume que proporcione traducciones bi-direccionales, y debido a que la traducción manual necesaria en el ejemplo de la Figura 8 está en una dirección diferente (por ejemplo inglés a francés) que la traducción automática previa (que fue francés a inglés), la traducción realizada que utiliza el cuadro de traducción 550 puede utilizar un servicio de traducción diferente al utilizado en el procedimiento 700. En otra implementación se integra un botón de "traducir" adicional en el cuadro de traducción 550, que permite que el texto se envíe a un servicio de traducción y se traduzca si la traducción que se envía inmediatamente al contacto de usuario. La Figura 9 muestra un ejemplo de un mensaje que se tradujo y envió manualmente por uso del cuadro de traducción 550. En el ejemplo, el mensaje de lenguaje en inglés "Genial. ¿Cómo estás tú?" Se envió a un servicio de traducción y se tradujo en el mensaje de francés "Je suis grand. Comment allez-vous? y el texto de ambos mensajes se envió con un mensaje combinado 910 a Jean, contacto de George. Adicionalmente, la traducción también se presenta como una "última traducción" 920 en el cuadro de traducción 550 del panel de traducción 500 para que el usuario George pueda ver cuál fue la última traducción manual.
La capacidad de revisar la última traducción es de uso particular con las presentes técnicas debido a que no siempre se asume que la traducción será perfecta. Esto es de importancia adicional debido a la flexibilidad de las técnicas aquí descritas para utilizar diferentes servicios de traducción (y posiblemente no probados) sin conocimiento de sus trabajos internos. Esto es verdadero en el caso ilustrado, ya que el mensaje de traducción 910 implica algo para Jean que está más entre las líneas de "Soy grande" en lugar de "Genial". Para tratar con errores de traducción posibles, el cuadro de traducción ilustrado utiliza varias herramientas para proporcionar comunicación de traducción adicional entre los usuarios. Una de tal herramienta es el botón "Estoy confundido" 930 del cuadro de traducción. Esta funcionalidad permite que el usuario envíe un mensaje a su contacto que señala que no entiende el último mensaje enviado y que pide un nuevo mensaje o explicación adicional. En una implementación, el mensaje puede ser un mensaje pre-establecido para cada lenguaje posible que no requiere traducción adicional; en otro, un mensaje universal estándar puede enviarse al servicio de traducción para traducirse en el lenguaje de contacto. Incluso en otro, un código pre-establecido, en lugar de un mensaje de texto, puede enviarse al usuario que indica una falta de entendimiento. Esto será de uso particular cuando dos usuarios utilizan las conexiones de traducción, como en esta implementación la conexión puede recibir el código e indicar la falta de entendimiento fuera de la ventana de mensaje. Otra herramienta para aumentar el entendimiento es el botón de "Sugerir" 940, también presentado en el cuadro de traducción 550. El cuadro de "Sugerir" permite un usuario, cuando nota que una traducción no es buena como cree que es, ofrecer una sugerencia para una traducción de reemplazo. De esa forma, el usuario puede dar clic al cuadro, escribir una nueva traducción sugerida, y enviar este mensaje a su contacto. En una ¡mplementación, esta sugerencia también puede guardarse localmente para utilizarse en conversaciones futuras. En otra implementación, la sugerencia puede enviarse al servicio de traducción que actualmente se utiliza, en un esfuerzo de mejorar el desempeño futuro del servicio. Incluso en otra implementación, la funcionalidad de "Sugerir" puede utilizarse en una implementación de traducción de envío de mensaje instantáneo diferente. La Figura 10 ilustra un procedimiento ilustrativo 1000 realizado por la conexión de traducción 260 para traducir manualmente mensajes instantáneos a través del cuadro de traducción. En varias implementaciones del procedimiento 1000 los bloques de procedimiento ilustrados pueden dividirse, fusionarse u omitirse. El procedimiento inicia en el bloq.ue 1010, en donde el mensaje para traducirse se recibe en el cuadro de traducción. En una implementación, esto se hace por el usuario que escribe manualmente el mensaje en el cuadro. En otro, el cuadro de traducción puede sostener automáticamente el mensaje actual o el último mensaje enviado por el usuario en su cuadro de entrada. Después, en el bloque 1020, la traducción recibe una indicación para enviar a una traducción del mensaje de entrada, usualmente debido a que el botón de "Enviar" 830 tuvo un clic. Como se mencionó anteriormente, en una implementación, el bloque 1020 a su vez puede involucrar recibir una indicación para traducir, pero no enviar, un mensaje, tal como si se presentará y se le diera clic a un botón de "Traducir". El procedimiento entonces continúa al bloque 1030, en donde el mensaje se envía a un servicio de traducción para traducir de lenguaje de usuario al lenguaje del contacto de usuario. Como se discutió anteriormente, el servicio de traducción al cual este mensaje se envía no necesariamente es el mismo que el utilizado en el procedimiento 700, ya que no se asume que cada servicio sea bi-direccional. Después, en el bloque 1040, una traducción del mensaje se recibe del servicio de traducción. La traducción se presenta en el bloque 1050 (por ejemplo, en el cuadro de traducción como una "última traducción" 920) y entonces en el bloque 1060 el mensaje se envía al contacto. En una implementación, si se realiza la traducción manual debido a que se da clic a un botón de "Traducir" en lugar de "Enviar", el procedimiento del bloque 1060 no se realiza y el usuario puede decidir si desea enviar la traducción. Mientras las herramientas antes descritas proporcionan funcionalidad para un usuario que necesita traducir directamente un mensaje, otras implementaciones de la conexión de traducción proporcionan a un usuario la capacidad de elegir realizar la traducción por sí mismo. De esa forma, si un usuario recibió una traducción deficiente, el usuario puede elegir auto-traducir palabras o frases particulares en la traducción. En una implementación, la auto-traducción se realiza al ingresar la palabra o frase para traducirse utilizando el cuadro de traducción 550. Además de ofrecer una interfase conveniente para esta auto-traducción, el cuadro de traducción 550 también, al proporcionar a un usuario una elección de servicios de traducción, permite al usuario una oportunidad de corregir errores de traducción al seleccionar un servicio de traducción diferente al utilizado para la mayoría de los mensajes de entrada. En una implementación, la conexión de traducción puede presentar el servicio que se utiliza para mensajes de entrada para que el usuario pueda seleccionar un servicio diferente en el caso de una mala traducción. En otra implementación, la conexión de traducción permite que un usuario restante una palabra o frase y seleccione traducir la frase, a través de un botón de "Traducir" o un menú de contexto. En varias implementaciones, las técnicas y herramientas de traducción descritas aquí se extienden para proporcionar traducción en el contexto de un lenguaje de envío de mensaje instantáneo modificado que utiliza abreviaturas o sustituciones para vocabulario estándar. Por ejemplo, una oración tal como "¿Vas a salir esta noche?" Puede escribirse "R U going out 2nite?" o la frase "Ahora regreso" escribe como "brb". Mientras un usuario puede acostumbrarse a envío de mensaje al utilizar este lenguaje modificado, la mayoría de los servicios de traducción asumen lenguaje estándar como entrada. De esa forma, es útil, en efecto, corregir este lenguaje modificado en un lenguaje estándar, con lo cual prepara el mensaje para traducción. En una implementación, las correcciones se proporcionan con un diccionario local que se mantiene de características de lenguaje de envío de mensaje instantáneo, que incluye vocabulario y/o sustituciones de letra. Esto puede hacerse al permitir que un usuario ingrese estos aspectos de lenguaje en el diccionario, o al utilizar un diccionario pre-establecido. En esta implementación, cuando un mensaje se envía a un contacto, el texto del mensaje se compara con el diccionario local, por la conexión de traducción u otra herramienta de traducción de envío de mensaje instantáneo. Si el texto del mensaje se encuentra que corresponde a las estructuras de lenguaje en el diccionario, se hace sustituciones para conformar el mensaje al lenguaje estándar. Entonces el mensaje puede dirigirse a un servicio de traducción. En una implementación alternativa, en lugar de mantener un diccionario de lenguaje de envío de mensaje instantáneo local, puede identificarse un servicio de traducción que conforman mensajes al lenguaje estándar. De esa forma, antes de enviar un mensaje a un servicio de traducción para traducirlo en un lenguaje diferente, tal herramienta primero enviará el mensaje al Servicio identificado para conformarlo al lenguaje estándar, y entonces al servicio que lo traduce en el lenguaje extranjero. En cualquiera de estas implementaciones, puede proporcionarse a un usuario la capacidad de determinar si el o ella desea que los mensajes se conformen al lenguaje estándar antes de traducción. Otra herramienta proporcionada por las técnicas y herramientas de traducción aquí descritas es el control de palabras mal escritas. Actualmente, la traducción de máquina no ha alcanzado una etapa en donde las palabras mal escritas puedan detectarse antes de traducción. Las palabras para las cuales un servicio no puede determinar una traducción, por ejemplo debido a que tan mal escritas, usualmente sólo pasan a través sin la traducción. Debido a que este paso no es deseable en traducción de envío de mensaje instantáneo, varias implementaciones de las técnicas aquí descritas preparan mensajes para traducción al realizar corrección de ortografía automática al momento en el que se envió un mensaje para traducción. En una implementación, no se corrige toda falta de ortografía automáticamente; la herramienta puede corregir palabras mal escritas solamente de forma común o palabras en donde una corrección es mucho más probable que otras. Incluso en otra implementación, el usuario puede proporcionarse con ortografías sugeridas y permitidas para elegir una antes de enviar el mensaje a un servicio de traducción. Mientras la herramienta de corrección de ortografía proporciona una traducción tan completa como posible, en algunas situaciones, un usuario puede desear que las palabras o frases particulares no se traduzcan. Esto puede ser deseable si un usuario desea que el contacto vea una palabra o frase en su lenguaje original, si el usuario utiliza jerga particular o nombres propios que no se traducen, o si el usuario sabe que una palabra en el lenguaje de usuario se entiende mutuamente y que traducir la palabra probablemente causará confusión. En una implementación, las técnicas y herramientas permiten que un usuario no enmarque una palabra o frase con símbolos particulares, tal como, por ejemplo, marcas de comillas, que indica que la palabra o frase no se va a traducir. En otra implementación, un usuario puede seleccionar una palabra o frase y entonces utilizar un menú de contexto o herramienta basada en botón para indicar que la palabra o frase no se va a traducir. Las técnicas de traducción pueden hacer uso de un número de métodos para prevenir la traducción de palabras o frases particulares. En una implementación, las técnicas de traducción aquí descritas pueden remover las palabras o frases particulares del mensaje antes de enviar el mensaje a un servicio de traductor. Las palabras o frases entonces se envían al programa de envío de mensaje instantáneo de contacto directamente, en donde pueden recombínarse con el mensaje traducido y presentarse al contacto. En otra implementación, después que se remueven las palabras o frases, las palabras restantes en el mensaje se envían para traducirse y enviarse de nuevo al programa en el mensaje instantáneo de usuario, en donde el mensaje se re combina y entonces se envía al contacto. Incluso en otra implementación, las palabras o frases particulares se modifican de tal forma que el servicio de traducción no será capaz de traducirlos. En esta implementación, debido a que el servicio de traducción muy probablemente pasará a través de palabras que no pueden traducirse, estas palabras y frases se ignorarán y entonces pueden modificarse de nuevo a su forma original por el programa de envío de mensaje instantáneo de contacto. Esta implementación es deseable desde la perspectiva en que preserva la semántica de una palabra hasta alguna extensión y puede utilizarse tanto en esquemas que proporcionan traducción en el lado de usuario como en el lado del contacto. 4. Ambiente de Cómputo Las técnicas de traducción de envío de mensaje instantáneo antes descritas pueden realizarse en cualquiera de una variedad de dispositivos o ambientes de cómputo, que incluyen computadoras de varios factores de forma (personal, estación de trabajo, servidor, móvil, portátil, tableta, u otro móvil), redes de cómputo distribuidas, y servicios de web, como pocos ejemplos generales. Las técnicas de traducción pueden implementarse en sistema de circuito de hardware, así como en software que se ejecuta dentro de una computadora u otro ambiente de cómputo, tal como se muestra en la Figura 11. La Figura 11 ilustra un ejemplo generalizado de un ambiente de cómputo adecuado (1100) en el cual pueden implementarse modalidades descritas. El ambiente de cómputo (1100) no pretende sugerir ninguna limitación al alcance de uso o funcionalidad de la invención, ya que la presente invención puede implementarse en diversos ambientes de cómputo de propósito general o propósito especial. Con referencia a la Figura 11, el ambiente de cómputo (1100) incluye al menos una unidad de procesamiento (1110), y memoria (1120). En la Figura 11, esta configuración muy básica (1130) se incluye dentro de una línea punteada. La unidad de procesamiento (1110) ejecuta instrucciones ejecutables por computadora y puede ser un procesador real o uno virtual. En un sistema de multi-procesamiento, las unidades de procesamiento múltiple ejecutan instrucciones ejecutables por computadora para aumentar la energía de procesamiento. La memoria (1120) puede ser memoria volátil (por ejemplo, registros, memoria caché, RAM), memoria no volátil (por ejemplo, ROM, EEPROM, memoria flash, etc.), o alguna combinación de los dos. La memoria (1120) almacena software (1180) implementando las técnicas de traducción descritas. La GPU (1115) puede integrarse con la unidad de procesamiento 1110 en una tabla individual o puede contenerse de forma separada. Un ambiente de cómputo puede tener características adicionales. Por ejemplo, el ambiente de cómputo (1100) incluye almacenamiento (1140), uno o más dispositivos de entrada (1150), uno o más dispositivos de salida (1160), y una o más conexiones de comunicación (1170). Un mecanismo de interconexión (no mostrado) tal como un conductor común, controlador, o red interconecta los componentes del ambiente de cómputo (1100). Típicamente, el software de sistema operativo (no mostrado) proporciona ambiente operativo para otro software que se ejecute del ambiente de cómputo (1100), y coordina actividades de los componentes del ambiente de cómputo (1100). El almacenamiento (1140) puede ser removible o no removible, e incluye discos magnéticos, cintas magnéticas o casetes magnéticos, CD-ROM, CD-RWS, DVDs, o cualquier otro medio que pueda utilizarse para almacenar información y que pueda accederse dentro del ambiente de cómputo (1100). El almacenamiento (1140) almacena instrucciones para el software (1180) implementando las técnicas de traducción descritas. El dispositivo(s) de entrada (1150) puede ser un dispositivo de entrada táctil tal como un teclado, ratón, pluma, o seguibola, un dispositivo de entrada de voz, un dispositivo de escaneo, u otro dispositivo que proporciona entrada al ambiente de cómputo (1100). Para audio, el dispositivo(s) de entrada (1150) puede ser una tarjeta de sonido o dispositivo similar que acepta de entrada de audio en forma analógico o digital, o un lector de CD-ROM que proporciona muestras de audio al ambiente de cómputo. El dispositivo(s) de salida (1160) puede ser una presentación, impresora, bocina, escritor de CD, u otro dispositivo que proporciona salida del ambiente de cómputo (1100).
La conexión(es) de comunicación (1070) permite comunicación en un medio de comunicación a otra entidad de cómputo. El medio de comunicación transporta información tal como instrucciones ejecutables por computadora, audio comprimido o información de video, u otros datos en una señal de datos modulada. Una señal de datos modulada es una señal que tiene una o más de sus características establecidas o cambiadas de tal forma para codificar información en la señal. A manera de ejemplo, y no de limitación, los medios de comunicación incluyen técnicas por cable o inalámbricas implementadas con un portador eléctrico, óptico, de RF, infrarrojo, acústico, u otro. Las técnicas de traducción de aquí pueden describirse en el contexto general de medios legibles por computadora. Los medios legibles por computadora son cualquier medio que puede accederse dentro de un ambiente de cómputo a manera de ejemplo, y no de limitación, con el ambiente de cómputo (1100), los medios legibles por computadora incluyen memoria (1120), almacenamiento (1140), medios de comunicación, y combinaciones de cualquiera de los anteriores. Las técnicas de traducción de aquí pueden describirse en el contexto general de instrucciones ejecutables por computadora, tal como aquellas incluidas en módulos de programa, que se ejecutan en un ambiente de cómputo en un procesador real o virtual de objetivo. Generalmente, los módulos de programa incluyen rutinas, programas, bibliotecas, objetos, clases, componentes, estructuras de datos, etc. que realizan tareas particulares o implementan tipos de datos abstractos particulares. La funcionalidad de los módulos de programa puede combinarse o dividirse entre módulos de programa como se desee en varias modalidades las instrucciones ejecutables por computadora para módulos de programa pueden ejecutarse dentro de un ambiente de cómputo local o distribuido. Por presentación, la descripción detallada utiliza términos como "determinar", "generar", "interpolar", y "calcular" para describir operaciones de computadora en un ambiente de cómputo. Estos términos son abstracciones de nivel alto para operaciones realizadas por una computadora, y no deben confundirse con actos realizados por un ser humano. Las operaciones de computadora reales que corresponden a estos términos varían dependiendo de la implementación. En vista de muchas variaciones posibles del tema aquí descrito, se reclama como nuestra invención todas tales modalidades que vienen dentro del alcance de las siguientes reivindicaciones y equivalentes a esto.

Claims (20)

REIVINDICACIONES
1.- Un método para traducir texto en envío de mensaje instantáneo, el método comprende: bajo control de un programa de envío de mensaje instantáneo (200): interceptar (720) un mensaje de entrada; enviar (730) el mensaje a un servicio de traducción; y presentar (750) una traducción del mensaje.
2.- Un método de acuerdo con la reivindicación 1, en donde: el método se realiza a través de una conexión de traducción al programa de envío de mensaje instantáneo; y la conexión de traducción presenta un panel de traducción separado dentro de una ventana del programa de envío de mensaje instantáneo.
3. - El método de acuerdo con la reivindicación 2, que además comprende: en el programa de envío de mensaje instantáneo: recibir una indicación de un usuario para comenzar servicios de traducción; solicitar código de conexión de traducción de un servidor; y ejecutar código de conexión de traducción recibido para presentar la conexión de traducción.
4. - El método de acuerdo con la reivindicación 1, que además comprende: en el programa de envío de mensaje instantáneo, solicitar una lista de servicios de traducción de un servidor; recibir la lista de servicios de traducción; y proporcionar opciones de traducción a un usuario basándose en las capacidades de traducción de servicios listados en la lista de servicios de traducción.
5. - El método de acuerdo con la reivindicación 2, que además comprende: presentar un cuadro de traducción en el panel de traducción; recibir, en el cuadro de traducción, texto de un usuario para traducirse; recibir, en el cuadro de traducción, una indicación que el texto debe ser traducido; y presentar texto traducido en el cuadro de traducción.
6. - El método de acuerdo con la reivindicación 5, que además comprende: recibir, en el cuadro de traducción, una indicación que el texto traducido debe enviarse como un mensaje instantáneo; y enviar el texto traducido como un mensaje instantáneo.
7. - El método de acuerdo con la reivindicación 6, que además comprende: recibir una indicación que el texto traducido se tradujo inapropiadamente; recibir una traducción alternativa del usuario; y enviar la traducción alternativa como un mensaje instantáneo.
8.- El método de acuerdo con la reivindicación 6, que además comprende: corregir automáticamente palabras mal escritas en el texto antes de traducción.
9.- El método de acuerdo con la reivindicación 6, que además comprende: si el texto contiene lenguaje de envío de mensaje instantáneo, corregir automáticamente el texto en lenguaje estándar antes de traducción.
10.- El método de acuerdo con la reivindicación 1, que además comprende: recibir una indicación de un usuario receptor que el usuario no entiende la traducción del mensaje; y basándose en la indicación, enviar un mensaje de error a un contacto que envió el mensaje de entrada indicando que el mensaje no se entendió; en donde no se requiere que el usuario sea capaz de comunicarse en un lenguaje utilizado por el contacto para indicar que el usuario no entendió la traducción.
11.- El método de acuerdo con la reivindicación 10, que además comprende: basándose en la indicación, enviar un mensaje al servicio de traducción para que el servicio de traducción pueda registrar que la traducción no se entendió por el usuario.
12.- El método de acuerdo con la reivindicación 1, en donde el método se realiza en un dispositivo móvil.
13. - Un sistema para presentar traducciones de textos de envío de mensaje instantáneo, el sistema comprende: un módulo de traducción (260); y un módulo de envío de mensaje instantáneo (200) configurado para recibir un mensaje; en donde el módulo de traducción se configura para: recibir (720) una indicación que el mensaje se va a traducir; permitir (725) que el mensaje se modifique automáticamente de acuerdo con preferencias de usuario para facilitar traducción; y traducir (730) el mensaje; y en donde el módulo de envío de mensaje instantáneo se configura para presentar (750) el mensaje traducido.
14. - El sistema de acuerdo con la reivindicación 13, en donde el módulo de traducción además se configura para presentar un cuadro de traducción que comprende un campo de entrada de texto y un botón de traducir, y configurado para: permitir que un usuario ingrese texto para traducirse manualmente; y después que el usuario golpea el botón de traducir: enviar el texto al servicio de traducción; y presentar una traducción del texto ingresado.
15. - El sistema de acuerdo con la reivindicación 13, en donde el módulo de traducción se configura para: corregir automáticamente la ortografía de mensajes antes de traducción; utilizar un diccionario de mensaje instantáneo para corregir lenguaje de envío de mensaje instantáneo en una forma de lenguaje estándar; y después de recibir indicaciones que las palabras particulares no se van a traducir, evitar que esas palabras se traduzcan por el servicio de traducción.
16. - Uno o más medios legibles por computadora que contienen instrucciones ejecutables por máquina que describen un método para facilitar el envío de mensaje entre dos usuarios que se comunican en diferentes lenguajes, el método comprende: recibir (640) una indicación de un usuario de un primer lenguaje utilizado por el usuario y un segundo lenguaje utilizado por una persona con la cual el usuario se está comunicando; recibir (720) una indicación que un mensaje se recibió por un servicio de envío de mensaje; realizar (725) modificaciones al mensaje para preparar el mensaje para traducción; enviar (730) el mensaje a un traductor que se configura para traducir texto del segundo lenguaje al primer mensaje; recibir (740) una traducción del mensaje del traductor; y presentar (750) la producción al usuario.
17. - Los medios legibles por computadora de acuerdo con la reivindicación 16, en donde el método además comprende: reconocer una indicación que una o más porciones del mensaje no deben traducirse; y modificar una o más porciones para que no se traduzcan cuando se traduce el mensaje.
18. - Los medios legibles por computadora de acuerdo con la reivindicación 16, que además comprenden: presentar un cuadro de traducción al usuario; recibir texto para traducirse en el cuadro de traducción; y traducir el texto del primer lenguaje el segundo lenguaje.
19. - Los medios legibles por computadora de acuerdo con la reivindicación 16, en donde realizar modificaciones al mensaje para preparar el mensaje para traducción comprende: corregir automáticamente la ortografía de una o más palabras en el mensaje; y corregir automáticamente el lenguaje de envío de mensaje instantáneo modificado en lenguaje estándar.
20. - Los medios legibles por computadora de acuerdo con la reivindicación 16, en donde el servicio de envío de mensaje es SMS.
MX2008010477A 2006-02-17 2007-02-13 Traduccion de maquina en aplicaciones de envio de mensaje instantaneo. MX2008010477A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/357,447 US8660244B2 (en) 2006-02-17 2006-02-17 Machine translation instant messaging applications
PCT/US2007/004045 WO2007098012A1 (en) 2006-02-17 2007-02-13 Machine translation in instant messaging applications

Publications (1)

Publication Number Publication Date
MX2008010477A true MX2008010477A (es) 2008-10-23

Family

ID=38437703

Family Applications (1)

Application Number Title Priority Date Filing Date
MX2008010477A MX2008010477A (es) 2006-02-17 2007-02-13 Traduccion de maquina en aplicaciones de envio de mensaje instantaneo.

Country Status (14)

Country Link
US (1) US8660244B2 (es)
EP (1) EP1989643A4 (es)
JP (1) JP5323499B2 (es)
KR (1) KR101344177B1 (es)
CN (1) CN101385024A (es)
AU (1) AU2007217948B2 (es)
BR (1) BRPI0707946A2 (es)
CA (1) CA2642171A1 (es)
IL (1) IL193300A0 (es)
MX (1) MX2008010477A (es)
NO (1) NO20083490L (es)
RU (1) RU2008133569A (es)
WO (1) WO2007098012A1 (es)
ZA (1) ZA200806927B (es)

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8137105B2 (en) 2003-07-31 2012-03-20 International Business Machines Corporation Chinese/English vocabulary learning tool
US7676357B2 (en) * 2005-02-17 2010-03-09 International Business Machines Corporation Enhanced Chinese character/Pin Yin/English translator
US9042921B2 (en) * 2005-09-21 2015-05-26 Buckyball Mobile Inc. Association of context data with a voice-message component
US8275399B2 (en) * 2005-09-21 2012-09-25 Buckyball Mobile Inc. Dynamic context-data tag cloud
US8509827B2 (en) * 2005-09-21 2013-08-13 Buckyball Mobile Inc. Methods and apparatus of context-data acquisition and ranking
US8509826B2 (en) * 2005-09-21 2013-08-13 Buckyball Mobile Inc Biosensor measurements included in the association of context data with a text message
US9166823B2 (en) * 2005-09-21 2015-10-20 U Owe Me, Inc. Generation of a context-enriched message including a message component and a contextual attribute
US8489132B2 (en) * 2005-09-21 2013-07-16 Buckyball Mobile Inc. Context-enriched microblog posting
US7551935B2 (en) * 2005-09-21 2009-06-23 U Owe Me, Inc. SMS+4D: short message service plus 4-dimensional context
US8515468B2 (en) 2005-09-21 2013-08-20 Buckyball Mobile Inc Calculation of higher-order data from context data
US7580719B2 (en) * 2005-09-21 2009-08-25 U Owe Me, Inc SMS+: short message service plus context support for social obligations
US20080243472A1 (en) * 2007-03-26 2008-10-02 Telestic, Llc Accurate Instant Message Translation in Real Time
US20090043562A1 (en) * 2007-08-08 2009-02-12 Vinay Vishwas Peshave Method and apparatus for receiving and displaying a short message in a user preferred language
US20090248392A1 (en) * 2008-03-25 2009-10-01 International Business Machines Corporation Facilitating language learning during instant messaging sessions through simultaneous presentation of an original instant message and a translated version
US20090300126A1 (en) * 2008-05-30 2009-12-03 International Business Machines Corporation Message Handling
US8509824B2 (en) * 2008-06-04 2013-08-13 Broadcom Corporation Phone based text message language translation
US9323854B2 (en) * 2008-12-19 2016-04-26 Intel Corporation Method, apparatus and system for location assisted translation
US8010615B2 (en) * 2008-12-31 2011-08-30 International Business Machines Corporation Instant messaging multilingual configuration
US9055414B2 (en) * 2009-02-20 2015-06-09 Microsoft Technology Licensing, Llc Text messaging pipeline configuration
US8489131B2 (en) * 2009-12-21 2013-07-16 Buckyball Mobile Inc. Smart device configured to determine higher-order context data
US20110193866A1 (en) * 2010-02-09 2011-08-11 Estes Emily J Data input system
US9183560B2 (en) 2010-05-28 2015-11-10 Daniel H. Abelow Reality alternate
US20120117456A1 (en) * 2010-11-05 2012-05-10 Nokia Corporation Method and apparatus for automated interfaces
US20120209589A1 (en) * 2011-02-11 2012-08-16 Samsung Electronics Co. Ltd. Message handling method and system
JP5875675B2 (ja) * 2011-05-05 2016-03-02 オルツボ, インコーポレイテッド 近接するモバイルデバイス間の言語間通信
US8538742B2 (en) * 2011-05-20 2013-09-17 Google Inc. Feed translation for a social network
US20120323565A1 (en) * 2011-06-20 2012-12-20 Crisp Thinking Group Ltd. Method and apparatus for analyzing text
WO2013013209A2 (en) * 2011-07-21 2013-01-24 Ortsbo, Inc. Translation system and method for multiple instant message networks
GB2497284A (en) * 2011-12-04 2013-06-12 Peter John Charles Spurgeon A system to provide translations
KR20130071958A (ko) * 2011-12-21 2013-07-01 엔에이치엔(주) 인스턴트 메시징 어플리케이션에서 메시지 통번역을 제공하는 시스템 및 방법
KR101271285B1 (ko) * 2011-12-28 2013-06-04 (주)카카오 채팅창 내에 포함된 메시지에 대하여 다국어 번역을 지원하는 방법
US9189476B2 (en) 2012-04-04 2015-11-17 Electronics And Telecommunications Research Institute Translation apparatus and method thereof for helping a user to more easily input a sentence to be translated
KR101626109B1 (ko) * 2012-04-04 2016-06-13 한국전자통신연구원 통역 장치 및 방법
CN103455160B (zh) 2012-05-29 2017-07-28 阿里巴巴集团控股有限公司 一种根据地理位置推荐候选词的方法和装置
JP6083067B2 (ja) * 2012-10-26 2017-02-22 株式会社コナミデジタルエンタテインメント 表示装置、およびプログラム
CN103853707A (zh) * 2012-12-06 2014-06-11 英业达科技有限公司 一次性翻译多个目标字词的系统及其方法
US9191344B2 (en) * 2013-02-11 2015-11-17 International Business Machines Corporation Validating content from an original communication included in a new communication
US9069759B2 (en) * 2013-03-15 2015-06-30 One Hour Translation, Ltd. System and method for website tranlsations
KR20140120192A (ko) * 2013-04-02 2014-10-13 삼성전자주식회사 데이터 처리 방법 및 그 전자 장치
CN104298491B (zh) * 2013-07-18 2019-10-08 腾讯科技(深圳)有限公司 消息处理方法及装置
KR20150026338A (ko) * 2013-09-02 2015-03-11 엘지전자 주식회사 이동 단말기
US9602449B2 (en) 2013-10-17 2017-03-21 International Business Machines Corporation Correction of incoming messaging
US20150113072A1 (en) * 2013-10-17 2015-04-23 International Business Machines Corporation Messaging auto-correction using recipient feedback
EP3158893B1 (en) 2015-10-21 2021-04-28 noonee AG Seat unit for wearable sitting posture assisting device
CN106648345A (zh) * 2015-11-04 2017-05-10 腾讯科技(深圳)有限公司 一种数据文本修改方法、终端及系统
CN105912531B (zh) * 2016-02-03 2021-03-12 冯忠 翻译系统和方法
US11494206B2 (en) 2016-05-17 2022-11-08 Google Llc Automated initiation and adaptation of a dialog with a user via user interface devices of a computing device of the user
JP6339623B2 (ja) * 2016-05-18 2018-06-06 株式会社ナビット 多言語路線図作成プログラム及び多言語路線図作成方法
US10595169B2 (en) 2016-06-12 2020-03-17 Apple Inc. Message extension app store
US10785175B2 (en) * 2016-06-12 2020-09-22 Apple Inc. Polling extension application for interacting with a messaging application
US10852912B2 (en) 2016-06-12 2020-12-01 Apple Inc. Image creation app in messaging app
US10162817B2 (en) * 2016-06-14 2018-12-25 Microsoft Technology Licensing, Llc Computer messaging bot creation
US10341267B2 (en) 2016-06-20 2019-07-02 Microsoft Technology Licensing, Llc Anonymized identifiers for secure communication systems
CN106453887B (zh) * 2016-09-30 2019-11-19 维沃移动通信有限公司 一种信息处理方法及移动终端
JP6382475B1 (ja) * 2017-01-17 2018-08-29 初実 田中 多言語コミュニケーションシステムおよび多言語コミュニケーション提供方法
JP6243071B1 (ja) * 2017-04-03 2017-12-06 旋造 田代 通信内容翻訳処理方法、通信内容翻訳処理プログラム、及び、記録媒体
CN107205089A (zh) * 2017-05-26 2017-09-26 广东欧珀移动通信有限公司 消息发送方法及相关产品
JP6318292B1 (ja) * 2017-06-16 2018-04-25 株式会社シアンス・アール 信号処理装置、通信システム、信号処理装置で実施される方法、信号処理装置で実行されるプログラム、通信端末で実施される方法、及び通信端末で実行されるプログラム
US11093110B1 (en) * 2017-07-17 2021-08-17 Amazon Technologies, Inc. Messaging feedback mechanism
CN109598001A (zh) * 2017-09-30 2019-04-09 阿里巴巴集团控股有限公司 一种信息显示方法、装置及设备
US10788972B2 (en) * 2017-10-02 2020-09-29 Fisher-Rosemount Systems, Inc. Systems and methods for automatically populating a display area with historized process parameters
US11349868B2 (en) 2018-01-18 2022-05-31 Forcepoint, LLC Detection of spoofed internally-addressed email using trusted third party's SPF records
EP3761182A4 (en) * 2018-02-26 2021-10-13 Loveland Co., Ltd. WEB PAGE TRANSLATION SYSTEM, WEB PAGE TRANSLATION DEVICE, WEB PAGE PROVIDING DEVICE AND WEB PAGE TRANSLATION PROCESS
JP6372947B1 (ja) * 2018-05-14 2018-08-15 Jeインターナショナル株式会社 チャットシステム、チャット方法、およびプログラム
KR102041935B1 (ko) * 2018-07-18 2019-12-02 주식회사 토리웍스 웹툰체 사전 서비스 제공 방법
CN111147346A (zh) * 2018-10-16 2020-05-12 阿里巴巴集团控股有限公司 通信方法、装置、设备和系统
US11245723B2 (en) 2018-11-02 2022-02-08 Forcepoint, LLC Detection of potentially deceptive URI (uniform resource identifier) of a homograph attack
US11297099B2 (en) 2018-11-29 2022-04-05 Forcepoint, LLC Redisplay computing with integrated data filtering
US11379426B2 (en) 2019-02-05 2022-07-05 Forcepoint, LLC Media transfer protocol file copy detection
US11562093B2 (en) 2019-03-06 2023-01-24 Forcepoint Llc System for generating an electronic security policy for a file format type
US11232271B1 (en) * 2019-04-11 2022-01-25 Meta Platforms, Inc. Systems and methods for message-based interaction
KR102192447B1 (ko) * 2019-04-29 2020-12-18 엔에이치엔 주식회사 복수의 언어 사용자 대화 시 자동 번역 제공 방법
WO2021179048A1 (en) * 2020-03-13 2021-09-16 Tstreet Pty Limited Language communication method and system
JP7302520B2 (ja) 2020-04-17 2023-07-04 株式会社豊田自動織機 船舶用操舵装置
US11477286B2 (en) * 2020-05-01 2022-10-18 Microsoft Technology Licensing, Llc Combined local and server context menus
JP7375689B2 (ja) 2020-06-26 2023-11-08 株式会社豊田自動織機 船舶用操舵装置
US20230401393A1 (en) * 2020-10-14 2023-12-14 Bhawana MITRA System and method for multi-lingual translation in message communication
KR102264224B1 (ko) 2020-12-30 2021-06-11 주식회사 버넥트 실시간 번역 서비스 기반의 원격 커뮤니케이션 방법 및 그 시스템
CN114124864B (zh) * 2021-09-28 2023-07-07 维沃移动通信有限公司 消息处理方法、装置

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5715466A (en) * 1995-02-14 1998-02-03 Compuserve Incorporated System for parallel foreign language communication over a computer network
US5987401A (en) * 1995-12-08 1999-11-16 Apple Computer, Inc. Language translation for real-time text-based conversations
US6424983B1 (en) * 1998-05-26 2002-07-23 Global Information Research And Technologies, Llc Spelling and grammar checking system
JP2001236347A (ja) 2000-02-23 2001-08-31 Ascii Corp コンテンツ翻訳装置および方法
AU2001249777A1 (en) * 2000-03-31 2001-10-15 Amikai, Inc. Method and apparatus for providing multilingual translation over a network
JP2001306563A (ja) 2000-04-18 2001-11-02 Nippon Telegr & Teleph Corp <Ntt> 翻訳処理システムおよび翻訳処理方法とその処理プログラムを記録した記録媒体
CN1399208A (zh) 2000-06-02 2003-02-26 顾钧 多种语言文字处理通信方法和多种语言文字处理通信系统
KR20020043937A (ko) 2000-12-05 2002-06-12 전대식 인터넷 서비스의 실시간 사용자 언어 지원 방법
WO2002086737A1 (en) * 2001-04-20 2002-10-31 Wordsniffer, Inc. Method and apparatus for integrated, user-directed web site text translation
US20020169592A1 (en) * 2001-05-11 2002-11-14 Aityan Sergey Khachatur Open environment for real-time multilingual communication
JP2003058454A (ja) 2001-08-14 2003-02-28 Nippon Telegr & Teleph Corp <Ntt> 多言語遠隔マルチユーザコミュニケーションシステム
US20030125927A1 (en) * 2001-12-28 2003-07-03 Microsoft Corporation Method and system for translating instant messages
US7272377B2 (en) * 2002-02-07 2007-09-18 At&T Corp. System and method of ubiquitous language translation for wireless devices
EP1365553A1 (en) * 2002-05-23 2003-11-26 Accenture Global Services GmbH Method and device for instant messaging
KR20040017952A (ko) 2002-08-22 2004-03-02 인터웨어(주) 메신저서비스를 통한 번역데이터의 실시간 제공시스템 및그 제어방법
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
US8392173B2 (en) * 2003-02-10 2013-03-05 At&T Intellectual Property I, L.P. Message translations
US7272406B2 (en) * 2003-06-30 2007-09-18 Sybase 365, Inc. System and method for in-transit SMS language translation
US7870199B2 (en) * 2003-10-06 2011-01-11 Aol Inc. System and method for seamlessly bringing external services into instant messaging session
US20050210396A1 (en) * 2003-10-06 2005-09-22 Galli Marcio D S System and method for seamlessly bringing external services into instant messaging sessions and into users' authoring environment
US8566081B2 (en) * 2004-03-25 2013-10-22 Stanley F. Schoenbach Method and system providing interpreting and other services from a remote location
KR100766463B1 (ko) * 2004-11-22 2007-10-15 주식회사 에이아이코퍼스 메신저 연동 외국어 전환 서비스 시스템 및 그 서비스 방법
US7343556B2 (en) * 2004-12-30 2008-03-11 Sap Ag Technique for processing and generating messages in multiple languages
US20070041370A1 (en) * 2005-07-15 2007-02-22 Aaron Cleveland System for Translating Electronic Communications

Also Published As

Publication number Publication date
CA2642171A1 (en) 2007-08-30
AU2007217948B2 (en) 2012-01-12
WO2007098012A1 (en) 2007-08-30
RU2008133569A (ru) 2010-02-20
AU2007217948A1 (en) 2007-08-30
BRPI0707946A2 (pt) 2011-05-17
JP5323499B2 (ja) 2013-10-23
US20070208813A1 (en) 2007-09-06
US8660244B2 (en) 2014-02-25
ZA200806927B (en) 2009-10-28
IL193300A0 (en) 2009-05-04
JP2009527811A (ja) 2009-07-30
EP1989643A1 (en) 2008-11-12
EP1989643A4 (en) 2014-03-26
KR20080094068A (ko) 2008-10-22
CN101385024A (zh) 2009-03-11
KR101344177B1 (ko) 2013-12-20
NO20083490L (no) 2008-11-17

Similar Documents

Publication Publication Date Title
MX2008010477A (es) Traduccion de maquina en aplicaciones de envio de mensaje instantaneo.
JP5248321B2 (ja) 翻訳文の柔軟な表示
CA2779117C (en) Automated systems and methods for integrated multi-platform communication including real-time language translation
US8739031B2 (en) System and method for text translations and annotation in an instant messaging session
US8725753B2 (en) Arrangements of text type-ahead
US20020188670A1 (en) Method and apparatus that enables language translation of an electronic mail message
EP3929774A1 (en) Name label display method and apparatus
JP2009505284A (ja) エンドポイントによってカスタマイズされる仮想ロボット通信フォーマット
US8170863B2 (en) System, method and program product for portlet-based translation of web content
CN117992164A (zh) 经由可选的图形元素初始化与自动代理的交谈
KR102390187B1 (ko) 회의보조용 번역 도구를 위한 방법 및 시스템
CN109598001A (zh) 一种信息显示方法、装置及设备
KR20020002527A (ko) 실시간 다 국어 다중 번역 대화 장치 및 그 방법
Al-Dosri et al. Arabic sign language easy communicate ArSLEC
CN110674645B (zh) 一种转换中文、英文语言的信息沟通方法及电子设备
US20230306187A1 (en) System for generating outline navigational interface for native mobile browser applications
Othman et al. TransSMS: A Multi-Lingual SMS Tool.
JP2003216635A (ja) エージェント情報提示装置
JP2000259633A (ja) 機械翻訳装置、機械翻訳方法および記録媒体
KR20010044531A (ko) 전자우편 번역기를 구비하는 전자우편시스템, 번역기능을포함하는 전자우편 발송방법 및 수신전자우편 열람방법
KR20100119735A (ko) 자동 입출력 인터페이스를 갖춘 번역기

Legal Events

Date Code Title Description
FA Abandonment or withdrawal