ES2362359T3 - Servicio de mensajes. - Google Patents

Servicio de mensajes. Download PDF

Info

Publication number
ES2362359T3
ES2362359T3 ES05026309T ES05026309T ES2362359T3 ES 2362359 T3 ES2362359 T3 ES 2362359T3 ES 05026309 T ES05026309 T ES 05026309T ES 05026309 T ES05026309 T ES 05026309T ES 2362359 T3 ES2362359 T3 ES 2362359T3
Authority
ES
Spain
Prior art keywords
message
entity
utility
sending
attribute values
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.)
Expired - Lifetime
Application number
ES05026309T
Other languages
English (en)
Inventor
Natasa Milic-Frayling
Jan Muntermann
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.)
Microsoft Corp
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
Application granted granted Critical
Publication of ES2362359T3 publication Critical patent/ES2362359T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/06Message adaptation to terminal or network requirements
    • H04L51/066Format adaptation, e.g. format conversion or compression

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Inorganic Insulating Materials (AREA)
  • Surface Acoustic Wave Elements And Circuit Networks Thereof (AREA)
  • Crystals, And After-Treatments Of Crystals (AREA)
  • Communication Control (AREA)

Abstract

Un servidor de mensajes (16) dispuesto para enviar un mensaje desde una entidad emisora (12) a una entidad receptora (14) sobre uno de una pluralidad de canales de comunicación, comprendiendo el citado servidor de mensajes: (i) una entrada dispuesta para recibir valores de atributo de mensaje asociados con el mensaje y una o más partes de contenido de mensaje; habiendo sido esas partes de contenido de mensaje identificadas como componentes para ser enviadas al servidor de mensajes desde la entidad emisora mediante selecciones de usuario en un enlace de comunicaciones basado en la red entre la entidad emisora y el servidor de mensajes; (ii) una entrada dispuesta para acceder a valores de canal de comunicación asociados con uno o más de los canales de comunicación; a valores de atributo de entidad emisora asociados con la entidad emisora y a valores de atributo de la entidad receptora asociados con la entidad receptora; (iii) un procesador dispuesto para calcular una utilidad de enviar el mensaje sobre al menos uno de los canales de comunicación sobre la base de al menos algunos de los valores de atributo de mensaje, de los valores de atributo de canal de comunicación, de los valores de atributo de entidad emisora y de los valores de atributo de entidad receptora; (iv) una salida dispuesta para formatear una o más de las partes de contenido de mensaje para enviar sobre uno de los canales de comunicación, habiendo sido el canal de comunicación seleccionado sobre la base de la utilidad calculada; en el que la salida también está dispuesta para enviar información a la entidad emisora acerca de cualquier parte de contenido de mensaje omitida desde el formato para enviar.

Description

CAMPO TÉCNICO Esta descripción se refiere generalmente a servicios de mensajes. Se refiere particularmente, pero no está de ninguna manera limitada a, servicios de mensajes para evaluar cuál de una pluralidad de canales de comunicación utilizar.
ANTECEDENTES Hoy en día se utilizan diferentes tipos de tecnología de mensajes para la comunicación. Por ejemplo, correo electrónico, instant messaging (IM – mensajes Instantáneo), short message service (SMS – Servicio de Mensajes Cortos), multi-media message service (MMS – Servicio de Mensaje de Multi-media), wireless application protocol push (WAP push – Protocolo de Aplicación Inalámbrica de conexión directa) y otros. Esto introduce una mayor cantidad de opciones y flexibilidad que las disponibles previamente pero al mismo tiempo aumenta la complejidad para los usuarios finales. Por ejemplo, el usuario que envía un mensaje a menudo no tiene suficiente información acerca de la capacidad de conexión, preferencias y otros aspectos relevantes del receptor de un mensaje. Es decir, Juan podría no saber si Juana tiene acceso a correo electrónico fuera del horario de oficina y si Juana prefiere correo electrónico o SMS. Esto dificulta el que los usuarios finales elijan un canal de comunicación adecuado para cada receptor, particularmente si el mensaje necesita ser entregado dentro de un cierto marco de tiempo, mientras que la persona está en una ubicación particular, o similar.
La complejidad mencionada anteriormente se introduce no sólo porque los dispositivos de comunicación están equipados con múltiples canales de comunicación sino también porque esos canales de comunicación (por ejemplo correo electrónico, mensajes instantáneos, voz, mensajes de texto y multi-media) están desconectados o son independientes entre ellos tanto en el mismo dispositivo de comunicación como también entre dispositivos.
Actualmente los emisores típicamente tienen que gestionar múltiples cuentas de usuario y números/direcciones para el mismo receptor. Además, tanto el emisor como el receptor tienen que gestionar múltiples canales de comunicación. Por ejemplo, diferentes canales de comunicación proporcionan diferentes características y capacidades y a menudo puede resultar difícil para un usuario final evaluar rápida y exactamente el mejor canal de comunicación para su uso en una situación particular.
Otro problema se refiere a la falta de capacidades de comunicación para diferentes plataformas. Por ejemplo, considérese un usuario que opera un cliente de correo electrónico en su PC. Ese usuario crea un correo electrónico que contiene un texto particular. No obstante, típicamente no es posible que el usuario envíe el mismo mensaje de texto desde el cliente de correo electrónico directamente a un receptor como un mensaje de SMS. Generalmente, el usuario necesitaría copiar o reescribir el texto en un mensaje de SMS en un teléfono móvil y a continuación enviar el mensaje de SMS al receptor. No obstante, esto lleva tiempo y es susceptible de error. Además, tanto el emisor como el receptor necesitan tener disponibles el mismo tipo de canales de comunicación y las aplicaciones de cliente correspondientes. Si el receptor tiene un conjunto de cuentas de comunicación diferentes (dirección de correo electrónico, número de teléfono móvil, cuenta de mensajes instantáneos, etc.) a las cuales podría enviarse el mensaje, el emisor necesita suscribirse a todas esas cuentas de comunicación con el fin de aprovechar la capacidad de conexión del receptor.
Previamente se han hecho intentos de aumentar la cantidad de información disponible para los emisores acerca de los receptores con el fin de permitir que los emisores realicen mejores elecciones acerca del envío de mensajes. Algunos de estos intentos previos han utilizado formas limitadas de conversión automática de mensaje aunque existen varios inconvenientes con estos planteamientos, como se explica ahora.
Nakanishi et al. en su publicación “iCAMS2: Developing a Mobile Communication Tool using Location Information and Schedule Information with J2ME”, Proceedings of Mobile HCI, 2003, 400-404 describen un esquema para enviar mensajes entre miembros de un grupo de usuarios cerrado. Dependiendo de la situación del receptor y del contexto los canales de comunicación disponibles son ordenados y mostrados de acuerdo con su idoneidad. No obstante, el esquema requiere que se comparta información de situación y de planificación entre miembros del grupo de manera que los miembros del grupo deben querer compartir información sensible y privada. Este planteamiento es difícil de extender a un grupo de usuarios mayor porque aparecen problemas de seguridad como resultado de la información sensible compartida. Además, en este esquema, el dispositivo de comunicación del emisor debe soportar el canal de comunicación elegido; no hay capacidad de conversión automática de tipo de mensaje.
Maniatis et al. describen un modelo de organización de mensajes en capas que añade información personal a un modelo de organización en capas tradicional que consiste en capas de aplicación, de transporte/red y de enlace (Maniatis et al. “The Mobile People Architecture”. Mobile Computing and Communications Review, 1, 2, 1999. 1-7.). La información de capa adicional se utiliza para encaminar mensajes entrantes a la aplicación/dispositivo actualmente utilizados por el receptor. Así, el receptor tiene un proxy de comunicación personal sobre el cual son redirigidos mensajes y, si es necesario, convertidos en diferentes formatos de mensaje. Un problema con este planteamiento es que los mensajes entrantes son redirigidos a todos los dispositivos disponibles actualmente. Esto aumenta la carga de red y también provoca serios problemas cuando se envían grandes cantidades de datos a dispositivos con capacidad de conexión de bajo ancho de banda o cuando el dispositivo tiene una baja capacidad de recepción, por ejemplo, un espacio de almacenamiento de mensajes limitado. También, pueden enviarse datos inadvertidamente a dispositivos que son incapaces de procesar datos en ese formato. La característica de conversión de mensaje automático particular utilizada es problemática puesto que no todas las partes del mensaje son convertidas. Como resultado, se pierde algo de información durante la conversión del mensaje y no se ha hecho ninguna provisión para informar al emisor acerca de esta pérdida.
El documento 2001, (221-228) describe un prototipo para dispositivos de telefonía móvil que proporciona información de ubicación y de capacidad de conexión para un grupo de usuarios cerrado. Con el fin de proporcionar un soporte simple para identificar un canal de comunicación apropiado, el sistema señala el canal con la actividad más reciente. No obstante, el canal con la más reciente actividad podría no ser ya el canal más apropiado para ser utilizado. También, este planteamiento adolece de problemas de seguridad relativos a la necesidad de compartir información sensible entre usuarios.
El documento 2002/0174199A1 describe un sistema para identificar y establecer canales para comunicaciones preferidos basados en preferencias y capacidades de conexión de los participantes. Las interferencias son analizadas para maximizar la esperada utilidad de la comunicación con un usuario contactado.
SUMARIO La invención proporciona un servidor de mensajes tal como el definido en la reivindicación 1 y un método en un servidor de mensajes como el definido en la reivindicación 11.
Lo que sigue presenta un resumen simplificado de la descripción con el fin de proporcionar un conocimiento básico al lector. El resumen no es una visión extensa de la descripción y no identifica elementos clave/críticos de la invención o delinea el alcance de la invención. Su único propósito es presentar algunos conceptos descritos en esta memoria de una manera simplificada como preludio de una descripción más detallada que la que se presenta a continuación.
Se describe un servicio de mensajes que proporciona mensajes independientes de la aplicación y para diferentes plataformas. Los emisores compilan componentes de contenido de mensajes y especifican preferencias de mensaje. El servicio de mensajes calcula una utilidad y un coste de enviar el mensaje sobre diferentes tipos de canal de comunicación. Un canal de comunicación es seleccionado utilizando la información de coste y de utilidad y el servicio de mensajes formatea los componentes del contenido del mensaje para el canal de comunicación particular. El mensaje es entonces enviado, por ejemplo, como correo electrónico, SMS, MMS u otro tipo adecuado dependiendo del canal seleccionado. La utilidad es calculada utilizando las preferencia del mensaje del emisor, los atributos del canal de comunicación, los atributos del dispositivo del emisor y del receptor y preferiblemente también, pero no esencialmente, las preferencias del receptor. En otra realización, el coste puede ser englobado en la función de utilidad y viceversa.
En un ejemplo, un servidor de mensajes está dispuesto para enviar mensajes desde una entidad emisora a una entidad receptora sobre uno de una pluralidad de canales de comunicación. La entidad emisora puede ser un usuario con un dispositivo de comunicaciones tal como un PDA, ordenador portátil, teléfono móvil u otro dispositivo de comunicaciones, o bien la entidad emisora puede ser un servicio automatizado. Esto aplica también a la entidad receptora. El servidor de mensajes comprende:
 una entrada dispuesta para recibir valores de atributo de mensaje asociados con el mensaje y una o más partes de contenido del mensaje para el mensaje;  una entrada dispuesta para acceder a valores de atributo de canal de comunicación asociados con uno o más de los canales de comunicación, de los valores de atributo de la entidad emisora asociados con la entidad emisora y de los valores de atributo de la entidad receptora asociados con la entidad receptora;  un procesador dispuesto para calcular una utilidad de enviar el mensaje sobre al menos uno de los canales de comunicación sobre la base de al menos uno de los valores de atributo del mensaje, de los valores de atributo del canal de comunicación, de los valores de atributo de la entidad emisora y de los valores de atributo de la entidad receptora;  una salida dispuesta para formatear una o más partes de contenido del mensaje para su envío sobre uno de los canales de comunicación, habiendo el citado canal de comunicación sido seleccionado sobre la base de la utilidad calculada.
De esta manera, se proporciona mensajes para diferentes plataformas e independientes de la aplicación porque el servidor de mensaje formatea automáticamente las partes de contenido del mensaje de manera que sean apropiadas para el canal de comunicación seleccionado. El emisor no necesita hacer sus propias elecciones acerca de qué tipo de mensajes utilizar, sea SMS, MMS, correo electrónico u otro. Además, debido a que el servidor de mensaje calcula la utilidad utilizando los valores de atributo entonces se selecciona un canal de comunicación de una manera que está diseñada para proporcionar el mejor funcionamiento para el emisor teniendo en cuenta muchos factores que incluyen al menos características del canal, características de la entidad emisora y receptora y características del mensaje.
En otro ejemplo se proporciona un método correspondiente de enviar un mensaje desde una entidad emisora a una entidad receptora sobre uno de una pluralidad de canales de comunicación. Esto utiliza las siguientes etapas, las cuales, por ejemplo, son llevadas a cabo en el servidor del mensaje.
 recibir valores de atributo del mensaje asociados con el mensaje y una o más partes de contenido del mensaje para el mensaje;  acceder a valores de atributo del canal de comunicación asociados con uno o más de los canales de comunicación, de los valores de atributo de la entidad emisora asociados con la entidad emisora y de los valores de atributo de la entidad receptora asociados con la entidad receptora;  calcular una utilidad de enviar el mensaje sobre al menos uno de los canales de comunicación sobre la base de al menos algunos de los valores de atributo del mensaje, de los valores de atributo del canal de comunicación, de los valores de atributo de la entidad emisora y de los valores de atributo de la entidad receptora;  formatear una o más partes de contenido del mensaje para su envío sobre uno de los canales de comunicación, habiendo sido el canal de comunicación seleccionado sobre la base de la utilidad calculada.
En otro ejemplo se proporciona una entidad de envío de mensajes. La entidad de envío de mensajes puede ser un dispositivo de comunicaciones con software para relacionarse con el servidor de mensajes mencionado anteriormente. También puede ser un servicio automático o un dispositivo de comunicaciones que accede desde otro sitio a la funcionalidad para interactuar con el servidor de mensajes. La entidad de envío de mensajes comprende:
 una entrada dispuesta para recibir información acerca del contenido de mensaje para ser usada para un mensaje que se va a enviar;  una entrada dispuesta para recibir características de mensaje asociadas con el mensaje;  una salida dispuesta para enviar las características del mensaje a un servidor de mensajes;  una entrada dispuesta para recibir información acerca de canales de comunicación disponibles para enviar el mensaje y los valores de utilidad asociados con esos canales de comunicación; y  una salida dispuesta para enviar información acerca de un canal de comunicación seleccionado para el servidor de mensajes y enviar el contenido del mensaje al servidor de mensajes.
Los dispositivos y aplicaciones de la entidad emisora pueden ser diferentes de y potencialmente incompatibles con los dispositivos y aplicaciones de la entidad receptora. El servidor de mensajes, reformateando las partes de contenido del mensaje es capaz de tratar con éste. El reformateo es de tal manera que el mensaje resultante es compatible con la entidad receptora y con su software de aplicación de mensajes.
Preferiblemente el procesador está también dispuesto para calcular la utilidad sobre la base de un coste de enviar el mensaje sobre al menos uno de los canales de comunicación.
Preferiblemente se recibe también información de contexto externa y se calcula la utilidad sobre la base de al menos algo de esta información de contexto externa. Por ejemplo, la información de contexto externa puede ser acerca del estado del propio servidor de mensajes (cómo está de ocupado el servidor), información de congestión de red, información acerca de la cantidad de usuarios e información de fuentes independientes tales como de entradas de RSS o servicios basados en la Red. En el caso de un terremoto, por ejemplo, esta información podría ser utilizada para desaconsejar el uso del correo electrónico.
Preferiblemente la entrada está dispuesta para recibir valores de atributo de preferencias del mensaje del receptor y la utilidad se calcula también sobre la base de al menos alguno de esos valores de atributo de preferencias del mensaje del receptor. Esto resulta ventajoso porque las preferencias del mensaje del receptor pueden ser tenidas en cuenta, por ejemplo, si el receptor prefiere SMS en lugar de correo electrónico en momentos particulares del día.
Ventajosamente el procesador está dispuesto para formar un vector de relación de utilidad que cubre la relación de utilidades cuando se envía el mensaje por medio de un canal de comunicación comparado con otro. Esto permite que se consiga una comparación de los valores de la utilidad para varias opciones de canal de comunicación de una manera rápida y no costosa en términos de cálculo.
Preferiblemente el procesador está también dispuesto para formar un vector de relación de coste. Esto permite que se consiga una comparación de los valores de coste para las diferentes opciones de canal de comunicación de una manera rápida y poco costosa en cuanto a cálculo.
Preferiblemente el procesador está dispuesto para concatenar el vector de relación de utilidad y el vector de relación de coste y para aplicar una métrica al vector concatenado con el fin de permitir que los canales de comunicación sean ordenados en términos de utilidad y coste. Esto permite que se haga una selección de un canal de comunicación efectiva y simplemente con bajo coste de cálculo.
En un ejemplo el servidor del mensaje está dispuesto para enviar la información de utilidad calculada a la entidad emisora y para recibir información acerca de un canal de comunicación seleccionado desde esa entidad emisora. Ventajosamente, esto proporciona control al emisor para que sea capaz de seleccionar un canal de comunicación particular sobre la base de la información de utilidad (y/o de coste).
En otro ejemplo el servidor del mensaje está dispuesto para seleccionar un canal de comunicación para que envíe el mensaje sobre la base de al menos la utilidad calculada. Esto es ventajoso cuando el emisor requiere un servicio automático en el cual la selección de canal se realiza sin consultar al emisor acerca de opciones disponibles junto con la información de utilidad y/o de coste.
Preferiblemente la salida también está dispuesta para enviar información acerca del estado del mensaje a la entidad emisora y o a la entidad receptora. Por ejemplo, esto puede comprender una recepción de lectura, información de entrega y o información acerca de las partes de contenido de cualquier mensaje omitidas del mensaje enviado.
Cualquiera de los métodos descritos en esta memoria puede ser llevado a cabo mediante software en una forma legible mediante una máquina en un medio de almacenamiento. El software puede ser adecuado para la ejecución en un procesador paralelo o en una serie de procesadores de manera que las etapas del método pueden ser llevadas a cabo en cualquier orden adecuado, o simultáneamente.
Esto significa que el software puede ser un producto valioso, vendible de manera separada. Se pretende que englobe software, que corre sobre o controla hardware “mudo” o estándar, para llevar a cabo las funciones deseadas, (y por lo tanto el software esencialmente define las funciones del registro, y puede por lo tanto ser denominado registro, incluso antes de que sea combinado con su hardware estándar). Por razones similares, se pretende también que englobe software que “describe” o define la configuración de hardware, tal como software de HDL (hardware description language – Lenguaje de Descripción de Hardware), tal como se utiliza para designar pastillas de sílice, o para configurar pastillas programables universales, para llevar a cabo funciones deseadas.
Muchas de las características intrínsecas se apreciarán más a partir de la siguiente descripción detallada considerada en conexión con los dibujos que se acompañan.
DESCRIPCIÓN DE LOS DIBUJOS La presente descripción se entenderá mejor a partir de la siguiente descripción detallada leída a la luz de los dibujos que se acompañan, en los cuales:
la FIG. 1 es un diagrama esquemático de una red de comunicaciones que proporciona un servicio de mensajes; la FIG. 2 es un diagrama esquemático de un servidor de mensajes; la FIG. 3 es un ejemplo de un esquema de base de datos para su uso por un servidor de mensajes; la FIG. 4 es un pantallazo de una interfaz de usuario de ejemplo con una parte de gestión de usuario de un servicio de mensajes; la FIG. 5 es un pantallazo de una interfaz de usuario de ejemplo con un conjunto de mensaje y parte de selección de preferencias de un servicio de mensajes para su uso en un PC; la FIG. 6 es un pantallazo de una interfaz de usuario de ejemplo con un servicio de mensajes para su uso en un PDA; la FIG. 7 es un pantallazo de una interfaz de usuario de ejemplo con un servicio de mensajes para su uso en un Teléfono Inteligente; la FIG. 8 es un diagrama de flujo de un método de utilizar un servicio de mensajes para enviar un mensaje; la FIG. 9 es un diagrama de flujo de un método llevado a cabo en un servidor de mensajes; la FIG. 10 es un diagrama de flujo de un método de ordenar canales de comunicación en términos de utilidad y de coste.
Números de referencia iguales se utilizan para designar partes iguales en los dibujos que se acompañan.
DESCRIPCIÓN DETALLADA La descripción detallada proporcionada a continuación junto con los dibujos adjuntos pretende ser una descripción de los presentes ejemplos y no pretende representar sólo formas en las cuales puede ser construido o utilizado el presente ejemplo. La descripción muestra las funciones del ejemplo y la secuencia de etapas para construir u operar el ejemplo. No obstante, las mismas o equivalentes funciones y secuencias pueden ser cumplidas por diferentes ejemplos.
Como se ha mencionado anteriormente, actualmente existe una variedad de servicios de mensajes que utilizan diferentes infraestructuras y tecnologías tales como Internet/correo electrónico y GSM/SMS. La presente invención se refiere particularmente a servicios de mensajes que soportan comunicación asíncrona entre usuarios o entre servicios y usuarios. Habiendo dicho esto, la invención no está de ninguna manera limitada a la comunicación asíncrona. El término “comunicación asíncrona” se utiliza para referirse a una comunicación que comprende mensajes enviados desde un emisor en un momento dado y que se pretende que sean recibidos o se espera que sean respondidos por un usuario tras un intervalo de tiempo significativo, por ejemplo, mensaje de correo y voz, mensajes de correo electrónico, mensaje de texto y otros. En contraste, la comunicación síncrona se lleva a cabo en tiempo real tal como una llamada de voz. Además, la presente invención se refiere en primer lugar a, pero no está limitada a, situaciones de mensaje de conexión directa en las que un emisor inicia el envío de un mensaje a un receptor. Además, el mensaje podría abrir un canal de comunicación síncrono (por ejemplo cliente de chat o llamada de teléfono). En contraste, el mensaje de conexión directa requiere la iniciativa de un receptor o la petición de información. Implementaciones de sistemas de mensajes puede abarcar un planteamiento mixto que combina planteamientos de enviar y recibir. Por ejemplo, un mensaje puede ser entregado a un receptor en dos etapas: primero el sistema envía una notificación de que ha llegado un mensaje al sistema y proporciona un enlace al mensaje para permitir que el usuario extraiga el contenido al dispositivo.
Reconocemos que un emisor de un mensaje se enfrenta típicamente a varias decisiones, con poca información sobre la que basarse. Resumimos la situación encarada por el emisor de un mensaje en las siguientes tres preguntas:
¿Cuál es la aplicación de mensajes más apropiada (por ejemplo correo electrónico, SMS, otros) para su uso en el envío de un mensaje particular, teniendo en mente sus características específicas?
¿Cuál es la mejor manera de entregar un mensaje al receptor, teniendo en mente, pero no restringiéndose a, la capacidad de conexión del receptor y el estado de los canales disponibles?
¿Cómo pueden conseguirse los anteriores objetivos aun optimizando la utilidad total para el emisor y el receptor, incluyendo el coste de comunicación?
Hemos desarrollado un servicio de mensajes que aborda estos problemas y que también proporciona mensajes independiente de la aplicación y para diferentes plataformas. El término “independiente de la aplicación” se utiliza en esta memoria para referirse a un servicio de mensajes que es operable con cualquier tipo de aplicación de mensajes, ya sea correo electrónico, SMS, MMS u otros. El término “mensajes para diferentes plataformas” se utiliza para referirse a la capacidad para enviar mensajes entre entidades que soportan diferentes tipos de mensajes, mediante la provisión de conversión automática del tipo de mensaje.
La FIG. 1 es un diagrama esquemático de una red de comunicaciones 10 que proporciona un servicio de mensajes. Un emisor 12 está representado esquemáticamente teniendo uno o más dispositivos de comunicaciones tales como teléfonos móviles, asistentes digitales personales, ordenadores portátiles, ordenadores personales y otros. (No obstante, también es posible que el propio emisor sea un servicio automatizado. Esos dispositivos de comunicaciones (llamados clientes) están dispuestos para comunicarse con un servidor de mensajes 16 llamado en esta memoria mCommunicator Server (marca comercial). Esta comunicación se consigue de cualquier manera adecuada tal como utilizar una conexión de Internet. En un ejemplo preferido, cada uno de los dispositivos de comunicaciones o clientes comprende también software de aplicación de mensajes para interactuar con el servidor de mensajes 16. Preferiblemente, pero no esencialmente, este software de aplicación de mensajes es compatible con diferentes tipos de dispositivo de comunicación tal como Teléfonos Inteligentes, PDAs, ordenadores de sobremesa y otros dispositivos. No obstante, no es esencial para la funcionalidad que el software de aplicación de mensajes esté presente en los dispositivos de comunicaciones. También es posible que esta funcionalidad exista en el servidor de mensajes 16 ó en otra entidad de red y que sea extraída por los clientes como se conoce en el sector tal como una aplicación de mensajes basada-en-la-Red/basada-en-navegador.
La FIG. 1 muestra también a un receptor 14 y esquemáticamente representa una pluralidad de dispositivos de comunicaciones que están disponibles para el receptor de una manera similar al del receptor 12. Cada uno de los dispositivos de comunicación del receptor está conectado con una red de comunicaciones 10 mediante una conexión a Internet o a cualquier otro tipo de conexión adecuado. Los dispositivos de comunicaciones del receptor preferiblemente comprenden también el software de aplicación de mensajes o tienen acceso a este software. De la misma manera que la entidad emisora puede ser un servicio automatizado la entidad receptora también puede ser un servicio automatizado.
La red de comunicaciones 10 comprende también una puerta de enlace de conexión de telefonía móvil 17 y un servidor de conexión de Internet 18 ambos en comunicación con el servidor de mensajes 16. También puede utilizarse cualquier otro tipo adecuado de puerta de enlace, tal como varias puertas de enlace de mensajes instantáneos. El servidor de mensajes 16 es responsable de gestionar y procesar mensajes entrantes. Ahorra componentes de mensaje en un servidor de base de datos (que bien es integral con el servidor de mensajes o está en comunicación con el servidor de mensajes) y, para el receptor especificado, determina canales de comunicación potencialmente disponibles. Además el servidor de mensajes 16 propone canales de comunicación adecuados, compila el contenido de mensajes en formatos apropiados e inicia la entrega de mensajes mediante un canal elegido para el receptor. En el caso de que se elijan canales de correo electrónico o de mensajes instantáneos el servidor de mensajes 16 hace uso del servidor de conexión de Internet 18 para enviar el mensaje. En el caso de que se elijan canales de SMS, MMS o WAPP de conexión directa el servidor de mensajes 16 hace uso de la puerta de enlace de conexión de telefonía móvil 17 para enviar el mensaje como se indica en la FIG. 1. Como se ha mencionado anteriormente, pueden también utilizarse otros tipos de puerta de enlace y esto significa que pueden enviarse también mensajes de otros tipos utilizando el servicio de mensajes.
La FIG. 1 ilustra también un proceso de suscripción o de registro. Los usuarios de servicio de mensajes proporcionados sobre la red de comunicaciones 10 preferiblemente se abonan a este servicio de mensajes ya sean emisores 12, receptores 14 ó servicios automatizados que actúan como emisores 12 ó receptores 14. En una realización, como parte del proceso de suscripción, los usuarios proporcionan información acerca de sus detalles de contacto, preferencias de mensajes y dispositivos/canales de comunicación disponibles. Esta información es almacenada para su uso por el servicio de mensajes. No obstante, esto no es esencial. El servicio de mensajes puede utilizar cualquier medio adecuado para obtener comunicación acerca de detalles de contacto de los usuarios, preferencias de mensajes y de dispositivos o canales de comunicación. Éstos pueden incluir utilizar información de un sistema de gestión de presencia como se conoce en el sector, utilizando información histórica acerca del comportamiento de mensajes pasado de los usuarios y utilizando información disponible en las bases de datos asociadas con los operadores de red, de otros proveedores de servicio o de sistemas de grupo de cooperación.
La FIG. 2 ilustra el servidor de mensajes 16 con más detalle. Recibe una entrada desde un servidor de base de datos 20 que es de cualquier tipo adecuado. El servidor de base de datos 20 almacena información acerca de usuarios, canales de mensajes de usuario, estado y mensajes de los usuarios. Esa información se obtiene de cualquier manera adecuada como se conoce en el sector. El término “canales de mensajes de usuario” se utiliza para referirse a medios disponibles para permite que un usuario comunique mensajes a otro usuario, por ejemplo, correo electrónico, puesto que dispositivos individuales típicamente soportan sólo los tipos de mensajes seleccionados.
La FIG. 3 es un ejemplo de un esquema de base de datos utilizado por el servidor de base de datos 20 que muestra ejemplos de tablas y relaciones entre tablas. La tabla datos de usuario 30 almacena información personal acerca de usuarios de un servicio de mensajes. Además de, la base de datos y la clave que se utilizan para la identificación y la validación, almacena información de contacto del usuario tal como dirección de correo electrónico, número de teléfono móvil e intercambiador de mensajes instantáneo. Otra tabla se utiliza para almacenar información de cliente (véase la tabla clientes 31 en la FIG. 3). Esta tabla almacena el estado de capacidad de conexión de los usuarios así como la marca de tiempo del último uso con éxito del servicio de mensajes por el usuario. Información acerca de mensajes enviados y no enviados es almacenada en una tercera tabla llamada tabla mensajes 32. Esta tabla almacena también la fecha de entrega del mensaje si es apropiado. Otra tabla llamada tabla de ficheros adjuntos 33 almacena todos los datos binarios (ficheros adjuntos como imágenes, ficheros de sonido, etc.) de los mensajes.
En un ejemplo preferido, la comunicación entre el servidor de mensajes 16 y los clientes 12 se consigue utilizando servicios de Red y requiere Internet u otra capacidad de conexión adecuada entre los clientes y el servidor de mensajes. En una realización particularmente preferida el servidor de mensajes 16 proporciona dos servicios de red, uno para gestión de usuarios y otro para procesamiento de mensajes. Estos servicios de red utilizan diferentes funciones para la comunicación entre clientes 12 y el servidor de mensajes 16 tal como se ha resumido anteriormente.
Funciones de gestión de usuarios de ejemplo se proporcionan en la siguiente tabla:
Nombre de la función
Parámetros Respuesta
Entrada()
sID: secuencia de caracteres sEstadodeentrada: secuencia de caracteres
Obtenerusuarios()
-/- aNombresdeusuario: matriz
Añadirusuario()
sID: secuencia de caracteres sPW: secuencia de caracteres sCorreoelectrónico: secuencia de caracteres sTeléfonomóvil: secuencia de caracteres sIM: secuencia de caracteres sEstadodecreación: secuencia de caracteres
Actualizarcliente()
sID: secuencia de caracteres sCliente: secuencia de caracteres sEstadodeactualización: secuencia de caracteres
Obtenerdatosdeusuario()
sID: secuencia de caracteres sPw: secuencia de caracteres Adetallesdeusuario: matriz
Funciones de procesamiento de mensaje se proporcionan en la tabla siguiente:
Nombre de la función
Parámetros Devolución
Enviar
sEmisor: secuencia de caracteres sReceptor: secuencia de caracteres dFechadeCreación: fecha sPrioridad: secuencia de caracteres sEnlacea: secuencia de caracteres bConfirmarentrega: booleano bConfirmarlectura: booleano sClasedemensaje: secuencia de caracteres sTema: secuencia de caracteres sTextodemensaje: secuencia de caracteres sConexióndered: secuencia de caracteres dFechadeentregade: fecha dFechadeentregaa: fecha dDeseo2pago: doble wFechadeCreación: doble wPrioridad: doble wEnlacea: doble wConfirmacióndeentrega: doble wConfirmacióndelectura: doble wClasedemensaje: doble wTema: doble wTextodemensaje: doble wFicheroadjunto: doble wControldevidaútil: doble wConexióndered: doble ID: GuID
Confirmar
sId: Guía sCanal
salvarFicheroadjunto()
sID: secuencia de caracteres sNombredelfichero: secuencia de caracteres aFicheroadjunto: matriz de bytes Itamañodeficheroadjunto: largo
(continuación)
Nombre de la función
Parámetros Devolución
Borrar
sID: Guía
Como se ha mencionado anteriormente, en un ejemplo preferido, se proporciona un software de aplicación de mensajes en los clientes 12 para la interacción con el servidor de mensajes 16. Este software proporciona la siguiente funcionalidad:
 entrar al servidor de mensajes 16  componer un mensaje  especificar atributos del mensaje  enviar mensajes al servidor de mensajes 16  comunicar con el servidor acerca del proceso de mensajes (recibir notificación acerca del estado del mensaje, modificar la petición de entrega, etc.).
Opcionalmente también proporciona funciones de gestión de usuario tales como establecer una nueva cuenta de usuario. Las FIGS. 4 a 7 muestran pantallazos del software de cliente de la aplicación de mensajes de ejemplo.Éstas se explican con más detalle a continuación en este documento.
Un método de utilizar el servicio de mensajes para enviar un mensaje se describe ahora con referencia a la FIG. 8.
Un usuario final selecciona primero uno de sus dispositivos de comunicaciones 12 (en la FIG. 1) y utilizando el software de cliente de servicio de mensajes proporcionado en él o al que se accede desde él, compila contenido para que un mensaje sea enviado. Este contenido puede comprender texto, grabación de voz, ficheros de imagen adjuntos, u otro tipo cualquiera de contenido adecuado (véase la etapa 80 de la FIG. 8). Información que comprende los detalles del receptor, características del mensaje y las preferencias del emisor para la entrega del mensaje es enviada al servidor de mensajes 16 (véase la FIG. 1). Esto es enviado con o sin el propio contenido del mensaje (véase la etapa 81 de la FIG. 8), en el caso de que el usuario final sea un servicio automatizado o de que las etapas de proxy 80 y 81 sean llevadas a cabo usando un sistema basado en una regla o en cualquier otro medio automatizado adecuado.
El dispositivo de cliente 12 recibe a continuación del servidor de mensajes 16 una lista de canales de comunicación disponibles para el mensaje propuesto junto con un valor de utilidad y con o sin un valor de coste para cada uno de los canales de comunicación disponibles (véase la etapa de la FIG. 8). Por ejemplo, de una manera simple el 19 de utilidad comprende un coste de utilizar un canal particular y/o un número de partes de mensaje soportadas. Las partes de mensaje soportadas son aquellas partes de un mensaje que pueden ser enviadas y recibidas sobre un canal de comunicación particular. Por ejemplo, suponiendo que el canal de comunicación soporte sólo SMS, entonces la parte de texto de un mensaje es una parte del mensaje soportada pero ningún fichero adjunto, imagen o grabación de sonido es una parte del mensaje soportada.
Debe observarse que no es esencial que el cliente reciba una lista de canales de comunicación disponibles junto con información de utilidad y coste asociada con ellos. También es posible que el servidor de mensajes seleccione por sí mismo uno de los canales de comunicación sobre la base de la información de utilidad y/o la información de coste.
El emisor selecciona uno de los canales de comunicación disponibles y envía información acerca de esta selección al servidor de mensajes. A menos que ya se haya enviado, el contenido del mensaje también es enviado al servidor de mensajes en esta etapa. (Véase la caja 83 de la FIG. 8). El emisor entonces opcionalmente recibe información acerca del estado del mensaje desde el servidor de mensajes (véase la caja 84). Por ejemplo, éste comprende información acerca de si el mensaje ha sido enviado y de un tiempo de entrega. El emisor también tiene la capacidad de revocar el mensaje hasta un momento particular. En algunas realizaciones ese momento particular es el momento en el que el contenido del mensaje es mostrado o presentado al receptor. Es decir, en una realización preferida el sistema de mensajes mantiene el control sobre un mensaje hasta que el mensaje se muestra realmente. El mensaje puede ser revocado antes de este punto. Con el fin de conseguir esto, no se utiliza ninguna captación de mensaje intermedia en el dispositivo del receptor que pueda impedir el control del mensaje por el sistema de mensajes antes de ser mostrado. En una implementación tal como ésta, un mensaje es entregado directamente desde el servidor de mensajes en el momento en que la aplicación del receptor está preparada para mostrar el contenido. No obstante, se proporcionan también otras realizaciones en las que los mensajes son cargados localmente en la entidad receptora para su posterior presentación. En ese caso los mensajes pueden ser revocados sólo antes de la descarga a la entidad receptora.
La FIG. 9 es un diagrama de flujo del método llevado a cabo por el servidor de mensajes 16. Éste comprende recibir detalles del mensaje desde un cliente (véase la etapa 90). Los detalles del mensaje comprenden detalles del receptor, características del mensaje, preferencias del emisor y opcionalmente, el contenido del mensaje. El servidor de mensajes a continuación accede al servidor de la base de datos 20 para obtener información acerca de los canales de comunicación registrados asociados con el receptor (véase la caja 91 de la FIG. 9) incluyendo información acerca del estado de esos canales. Por ejemplo, puede tener información acerca de cuántos mensajes recibidos recientemente no leídos están en la bandeja de entrada para mensajes de correo electrónico del receptor. El servidor de mensajes a continuación ordena los canales de comunicación disponibles (véase la caja 92 de la FIG.
9). Esto se realiza sobre la base de la información acerca de los canales de comunicación registrados del receptor, del estado de esos canales, de las preferencias del emisor y de las características del mensaje. En otra realización se basa también en información acerca de las preferencias del receptor o de otras especificaciones que pueden implicar un contexto más general. Por ejemplo, la especificación puede venir del estado del dispositivo de comunicación, o de información externa que el servicio puede recibir, por ejemplo noticias de RSS, estadísticas de tráfico de la Red, etc. En otra realización, puede basarse en la información agregada acerca de la populación de usuarios que están usando el servicio. Por ejemplo, el sistema de mensajes puede disponerse para no procesar ficheros adjuntos si el sistema está sobrecargado con mensajes de usuario debido a un evento externo, por ejemplo un desplome de la Bolsa, desastre natural, o similar.
El servidor de mensajes envía información acerca de los canales ordenados al cliente (véase la caja 93 de la FIG. 9) y como respuesta recibe información del cliente como cuál de los canales ha seleccionado el usuario final (véase la caja 94 de la FIG. 9). La información acerca de la ordenación de canales puede ser tan detallada como se requiera para facilitar la decisión del emisor. Por ejemplo, además del coste del envío del mensaje, el emisor es informado acerca de las restricciones que el canal puede tener tales como incapacidad de enviar ficheros adjuntos por medio de SMS. Una vez que el usuario toma una decisión, si el servidor de mensajes no ha recibido todavía el contenido del mensaje desde el cliente lo hace en este momento. El servidor de mensajes reorganiza a continuación en paquetes el contenido del mensaje, formateándolo para el canal seleccionado particular (véase la caja 95) e inicia el envío del mensaje por medio del canal seleccionado. Por ejemplo, si el usuario seleccionó SMS, el contenido es separado de los ficheros adjuntos y sólo el texto del mensaje es entregado. El servidor de mensajes también notifica al cliente el estado del mensaje por ejemplo, especificando un momento de entrega y/o una recepción de lectura (véase la caja 96).
También es posible que el servidor de mensajes incorpore información adicional en el mensaje reformateado. Por ejemplo, ésta comprende información acerca de partes del mensaje omitidas. De esta manera el receptor es informado de que, por ejemplo, un mensaje de texto recibido es asociado con un fichero adjunto de grabación de sonido que no ha sido enviado. Además, la etapa 96 de notificar al cliente el estado del mensaje, preferiblemente incluye notificar al cliente cualquier parte del mensaje que no ha sido enviada porque no estaba soportada.
Así, puede verse que la capacidad de proporcionar mensajes para diferentes plataformas e independiente de la aplicación se consigue descompilando un mensaje en partes de contenido de mensaje y recompilando ese mensaje de una manera adecuada para un canal de comunicación seleccionado. Preferiblemente, pero no esencialmente, la descompilación se consigue como resultado de un enlace de comunicación basado en la Red entre el cliente y el servidor de mensajes. Dado que un usuario selecciona partes de contenido del mensaje para añadirlas al mensaje, tales como texto, ficheros adjuntos, cabeceras de tema, ficheros adjuntos de imagen, ficheros adjuntos de grabación de sonido, etc. esas partes de contenido de mensaje son identificadas como componentes para ser enviados al servidor de mensajes por medio del enlace de Red. La descompilación ha tenido lugar entonces ya antes de que los componentes del mensaje alcancen el servidor de mensajes. La compilación se consigue también utilizando reglas, marcos, esquemas u otras estructuras adecuadas para definir formatos requeridos para canales de comunicación particulares (tales como SMS a un teléfono móvil, o correo electrónico a un PDA.)
Más detalles acerca del método utilizado por el servidor de mensajes 16 para ordenar los canales de comunicación disponibles, se dan ahora con respecto a la FIG. 10.
La FIG. 10 es un diagrama de flujo de un ejemplo de un método de calcular una utilidad y un coste de enviar un mensaje sobre canales de comunicación particulares. Características de un mensaje se describen mediante un vector de valores de atributo ponderados (caja 100 de la FIG. 10). También, los atributos y funcionalidades de un canal de comunicación se describen utilizando un vector de atributo (caja 101 de la FIG. 10). Las características de un dispositivo de envío y de recepción se describen también utilizando un vector de atributo para cada uno (caja 102, FIG. 10). Cada canal de comunicación y dispositivo son analizados y los valores de sus vectores de atributo son pre-especificados por un operador tal como el proveedor de servicio de mensajes o el operador de la red. Reglas, criterios u otra información pre-especificados se utilizan para determinar automáticamente los valores de atributo para el mensaje junto con información acerca del propio mensaje.
Para cada atributo se calcula una utilidad de enviar un mensaje particular. En un ejemplo particular, si el valor del atributo es cumplido o sobrepasado por el vector del canal de comunicación y el vector del dispositivo de envío, y el vector del dispositivo de recepción, entonces la utilidad es 1. Si no, la utilidad es cero (véase la caja 103 de la FIG. 10). (Debe observarse que puede utilizarse cualquier función adecuada para la utilidad, pre-especificada o calculada por el sistema sobre la base de un comportamiento anterior). Se forma entonces un vector de relación de utilidad que describe la relación de utilidades cuando se envía el mensaje por medio de un canal de comunicación comparado con otro (véase la caja 104 de la FIG. 10). Se forma también un vector de relación de coste. Éste describe la relación de costes cuando se envía el mensaje por medio de un canal de comunicación comparado con otro (véase la caja 105 de la FIG. 10). Los vectores de relación de coste y de utilidad son concatenados (véase la
5
15
25
35
45
55
caja 16) y se utiliza entonces cualquier métrica adecuada sobre los vectores concatenados para ordenar los canales de comunicación en términos de utilidad y coste (véase la caja 107).
En el ejemplo descrito anteriormente la utilidad se calcula sin referencia a preferencias del receptor (distintas de atributos del dispositivo o entidad receptora). No obstante, en otra realización atributos relativos a preferencias del receptor se utilizan también en el cálculo de la utilidad. Los receptores son, por ejemplo, capaces de definir multiplicadores para atributos específicos y/o canales de comunicación para disminuir la utilidad para formas de comunicación no deseadas. Por ejemplo, el receptor puede especificar que no se reciba ningún correo electrónico durante un periodo de tiempo predefinido porque el receptor no tiene tiempo de gestionar una Bandeja de Entrada del correo electrónico sobrecargada.
El ejemplo de la FIG. 10 se describe ahora con más detalle.
El vector de atributo A = (a1, a2,…, an) describe atributos relevantes en el espacio de la comunicación. Se describen características del mensaje mediante una función M sobre el espacio de valor de atributo A:
M:A  M siendo A  R’’ y M  Rk. Donde n es el número de componentes en el vector y R es el conjunto de números reales.
Los atributos de mensaje mi: (a1, …, an)  mi(m1,…,mn)  R resumen las características del mensaje que se va a enviar. La relevancia (peso del atributo) de estos atributos de mensaje se describe mediante un vector de peso W = (w(m1), w(m2),…,w(mn))  [0, 1] que expresa la importancia de elementos en el vector de atributo M y tiene la dimensión del vector de mensaje. En este ejemplo los pesos están entre cero y 1 aunque esto no es esencial. Puede utilizarse cualquier número real para los pesos. En consecuencia, w(mi) es el mínimo valor requerido (en %) de mi; si no, la característica del mensaje correspondiente no se mira. W(mi) del valor 0 indica que un atributo no es necesariamente requerido para un mensaje pero podría aumentar el valor del mensaje si está soportado por el canal de comunicación elegido (siempre que mi >0; si no, el atributo no es requerido en absoluto).
Un canal de comunicación es una combinación de la conexión de red (por ejemplo, GPRS) y el tipo de mensaje de conexión directa (por ejemplo., SMS). Se describe como un vector CC con elementos definidos como cci: (a1,…, an)  cci(a1,…,an)  R siendo mi  cci(A).
Este vector de atributo muestra las características y funcionalidades de un canal de comunicación.
De acuerdo con esto, los vectores característicos Dj de los dispositivos describen las características de los dispositivos de envío y de recepción (D1 y D2). Sus elementos se definen como
imagen1
La utilidad de enviar el mensaje por medio de un canal de comunicación x se calcula para cada atributo i:
imagen1
Para i=1..n
Los costes del canal de comunicación están también definidos para un canal de comunicación x como una función de un vector de atributo general.
imagen1
El resultado de la función de coste Cx son los costes totales en los que se incurre enviando el mensaje por medio del canal x.
Como la utilidad y los costes tienen diferentes dimensiones, se requiere transformarlos con el fin de conseguir que sean comparables.
Por lo tanto, el vector de relación de utilidad URx, y cubre la relación de utilidades cuando se envía el mensaje por medio del canal de comunicación x comparado con enviarlo por medio de y.
imagen2
Para i=1…n De acuerdo con esto, las relaciones de coste CRx, y son calculadas.
imagen3
Para i=1..n Los valores del vector de utilidad y la relación de coste son ahora ‘adimensionales’ y pueden ser utilizadas para posteriores evaluaciones. Por lo tanto, los vectores de utilidad y la relación de coste son simplemente concatenadas,
15 resultando en un vector de relación general Rx, y.
imagen1
Con el fin de determinar si un canal de comunicación x es mejor que y, se requiere una única métrica:
Este cálculo puede, por ejemplo, ser llevado a cabo con el uso de medias estándar de funciones tales como media ponderada, mediana, etc. Utilizando una media ponderada es posible definir la relevancia para cada uno de los elementos del vector de relación Rx,y. La preferencia para el canal x, comparada con un canal y podría entonces venir dada como:
imagen4
imagen5
La matriz resultante puede ser utilizada para identificar el canal de comunicación más apropiado. La lista siguiente resume un conjunto de atributos para canales de comunicación y mensajes típico.
Atributos
SMS MMS WAP Push SI WAP Push SL Correo electrónico
Fecha de Creación
0 0 1 0 1
Niveles de Prioridad
0 1 1 1 1
Enlace a servicios externos
0 0 1 1 0
Confirmación de entrega
0 1 1 0 1
Confirmación de lectura
0 1 0 0 1
Identificador del emisor
0 0 1 0 1
Atributos de clase de mensaje
0 1 0 0 0
Campo de Tema del Mensaje
0 50 0 0 255 (Outlook)
Tamaño de mensaje (Máximo)*
160 U(d) U(d) 0 U
Fichero adjunto de contenido de Multimedia (tamaño)
0 U(d) 0 0 U
Control de vida útil de notificación
0 0 1 0 0
*U(d) = Ilimitado (dependiente del dispositivo)
5
15
25
35
45
55
En la tabla anterior “WAP Push Si” se refiere a una indicación de servicio de protocolo de acceso inalámbrico por la que, por ejemplo, un receptor recibe un mensaje SMS asociado con un URL que se conecta a una página de la red o a un servicio de red. “WAP Service Load” se refiere a una carga de servicio de protocolo de acceso inalámbrico que fuerza a una entidad receptora a cargar un URL asociado (por ejemplo, esto es utilizado a menudo por los operadores de red para vender tonos de llamada).
Para cada canal de comunicación existe una función de coste para calcular los costes totales cuando se envía un mensaje por medio de un canal. Ejemplos de funciones de coste se proporcionan a continuación. Costes para itinerancia, donde se envían mensajes a receptores en redes de telefonía móvil remotas de la entidad emisora pueden ser también incorporados en las funciones de coste como resulta evidente para el experto.
Función de coste
SMS
= mat..techo (tamaño de mensaje/160)*5p
MMS
= mat..techo (tamaño de mensaje + tamaño de fichero adjunto)/300kb)*20p
WAP Push SI
= mat..techo (tamaño de mensaje/160)*5p
WAP Push SL
= mat..techo (tamaño de mensaje/160)*5p
Correo electrónico
0p
La Figura 4 es un ejemplo de partes de una interfaz de usuario para un PC dispuesto para interactuar con el servicio de mensajes. Es un pantallazo de ejemplo de un dialogo de gestión de usuario por el que puede añadirse un nuevo usuario o abonado a un servicio de mensajes y pueden establecerse detalles de contacto, clave e ID de usuario para ese nuevo usuario.
La Figura 5 es un ejemplo de una parte de una interfaz de usuario para un PC dispuesta para interactuar con el servicio de mensajes. Es un pantallazo de un editor de mensajes por el que un emisor es capaz de adjuntar partes de contenido de mensaje y establecer características de mensaje (o preferencias de mensaje). Por ejemplo, estos atributos comprenden importancia de mensaje, si se requiere confirmación de entrega, si se requiere confirmación de lectura, si cualquier fichero adjunto proporcionado en el contenido del mensaje debe ser enviado con el mensaje, si cualquier enlace de URI proporcionado en el contenido del mensaje debe ser activado con el mensaje, si cualquier texto de mensaje debe ser enviado con el mensaje, si se requiere un tema en el mensaje, una prioridad para el mensaje y un tiempo de vida para el mensaje.
La FIG. 6 es un ejemplo de parte de una interfaz de usuario para su uso en un PDA y muestra un editor de mensajes. La FIG. 7 es un ejemplo de parte de una interfaz de usuario para su uso en un Teléfono Inteligente. Muestra un editor de mensajes para especificar imágenes como partes de contenido del mensaje.
Resultará evidente para los expertos en la materia que los dispositivos de almacenamiento utilizados para almacenar instrucciones de programa pueden ser distribuidos a través de la red. Por ejemplo, un ordenador remoto puede almacenar un ejemplo del proceso descrito como software. Un ordenador local o terminal puede acceder al ordenador remoto y descargar una parte de todo el software para ejecutar el programa. Alternativamente, el ordenador local puede descargar trozos del software según necesidades, o ejecutar algunas instrucciones de software en el terminal local y algunas en el ordenador remoto (o red de ordenadores). Resultará también evidente para los expertos en la materia que utilizando técnicas convencionales conocidas para los expertos en la materia que todos, o una porción de las instrucciones de software pueden ser llevadas a cabo mediante un circuito dedicado, tal como un DSP, matriz lógica programable, u otros.
También es posible que el servicio de mensajes opere para mensajes síncronos. Por ejemplo, el mensaje enviado por el servidor de mensajes en los ejemplos anteriores puede ser configurado para abrir una sesión de comunicación síncrona entre la entidad emisora y la entidad receptora. Esto se consigue de cualquier manera adecuada. Por ejemplo, una aplicación de SIM AT instalada en un teléfono móvil (típicamente por un operador de red) puede ser utilizada para forzar que el teléfono llame a otra entidad. Cualquier sesión de comunicación síncrona adecuada puede ser abierta tal como una llamada de voz tradicional, una llamada de protocolo voz sobre Internet, una sección de chat u otro.
Cualquier valor de intervalo o dispositivo dado en esta memoria puede ser extendido o alterado sin perder el efecto sought, como resultará evidente para el experto.
Las etapas de los métodos descritos en esta memoria pueden ser llevadas a cabo en cualquier orden adecuado, o simultáneamente donde sea apropiado.
Debe entenderse que la descripción anterior de una realización preferida viene dada sólo a modo de ejemplo y que los expertos en la materia pueden realizar varias modificaciones.

Claims (19)

  1. REIVINDICACIONES
    1. Un servidor de mensajes (16) dispuesto para enviar un mensaje desde una entidad emisora (12) a una entidad receptora (14) sobre uno de una pluralidad de canales de comunicación, comprendiendo el citado servidor de mensajes:
    (i)
    una entrada dispuesta para recibir valores de atributo de mensaje asociados con el mensaje y una o más partes de contenido de mensaje; habiendo sido esas partes de contenido de mensaje identificadas como componentes para ser enviadas al servidor de mensajes desde la entidad emisora mediante selecciones de usuario en un enlace de comunicaciones basado en la red entre la entidad emisora y el servidor de mensajes;
    (ii)
    una entrada dispuesta para acceder a valores de canal de comunicación asociados con uno o más de los canales de comunicación; a valores de atributo de entidad emisora asociados con la entidad emisora y a valores de atributo de la entidad receptora asociados con la entidad receptora;
    (iii) un procesador dispuesto para calcular una utilidad de enviar el mensaje sobre al menos uno de los canales de comunicación sobre la base de al menos algunos de los valores de atributo de mensaje, de los valores de atributo de canal de comunicación, de los valores de atributo de entidad emisora y de los valores de atributo de entidad receptora;
    (iv) una salida dispuesta para formatear una o más de las partes de contenido de mensaje para enviar sobre uno de los canales de comunicación, habiendo sido el canal de comunicación seleccionado sobre la base de la utilidad calculada;
    en el que la salida también está dispuesta para enviar información a la entidad emisora acerca de cualquier parte de contenido de mensaje omitida desde el formato para enviar.
  2. 2.
    Un servidor de mensajes de acuerdo con la reivindicación 1, en el que la entidad emisora y la entidad receptora comprenden cada una software de aplicación de mensajes, siendo el software de aplicación de la entidad emisora incompatible con el software de aplicación de la entidad receptora y en el que la salida está dispuesta para formatear las partes de contenido de mensaje para su compatibilidad con el software de aplicación de la entidad receptora.
  3. 3.
    Un servidor de mensaje (16) de acuerdo con la reivindicación 1 ó la reivindicación 2, en el que el procesador también está dispuesto para calcular la utilidad sobre la base de un coste de enviar el mensaje.
  4. 4.
    Un servidor de mensaje (16) de acuerdo con cualquiera de las reivindicaciones precedentes, en el que la citada entrada está dispuesta para recibir valores de atributo de preferencias de mensaje receptor y en el que la utilidad se calcula también sobre la base de al menos algunos de esos valores de atributo de preferencias de mensaje del receptor.
  5. 5.
    Un servidor de mensajes de acuerdo con cualquiera de las reivindicaciones precedentes en el que la citada entrada está dispuesta para recibir información de contexto externa y en el que la utilidad se calcula también sobre la base de al menos algo de esa información de contexto externa.
  6. 6.
    Un servidor de mensajes (16) de acuerdo con cualquiera de las reivindicaciones precedentes, en el que el citado procesador está dispuesto para formar un vector de relación de utilidad que cubre la relación de utilidades cuando se envía el mensaje por medio de un canal de comunicación comparado con otro.
  7. 7.
    Un servidor de mensajes de acuerdo con la reivindicación 6, en el que el citado procesador está también dispuesto para formar un vector de relación de coste.
  8. 8.
    Un servidor de mensajes de acuerdo con la reivindicación 7, en el que el procesador está dispuesto para concatenar el vector de relación de utilidad y el vector de relación de coste y para aplicar una métrica al vector concatenado para permitir que los canales de comunicación sean ordenados.
  9. 9.
    Un servidor de mensajes de acuerdo con cualquiera de las reivindicaciones precedentes, en el que la salida está también dispuesta para enviar información acerca del estado del mensaje a la entidad emisora y o a la entidad receptora.
  10. 10.
    Un servidor de mensajes de acuerdo con cualquiera de las reivindicaciones precedentes, en el que la salida está también dispuesta para enviar información a la entidad receptora acerca de cualquier parte de contenido del mensaje omitida del formato para el envío.
  11. 11.
    Un método en un servidor de mensajes de enviar un mensaje a una entidad receptora (14) sobre uno de una pluralidad de canales de comunicación, comprendiendo el método las etapas de:
    (i)
    recibir valores de atributo de mensaje asociados con el mensaje y una o más partes de contenido de mensaje para el mensaje; habiendo sido esas partes de contenido de mensaje identificadas como componentes para ser enviados al servidor de mensajes desde la entidad emisora mediante selecciones de usuario en un enlace de comunicaciones basado en la red entre una entidad emisora y el servidor de mensajes;
    (ii)
    acceder a los valores de atributo de canal de comunicación asociados con uno o más de los canales de comunicación, a los valores de atributo de entidad emisora asociados con la entidad emisora y a los valores de atributo de la entidad receptora asociados con la entidad receptora;
    (iii) calcular una utilidad de enviar el mensaje sobre al menos uno de los canales de comunicación sobre la base de al menos alguno de los valores de atributo de mensaje, de los valores de atributo de canal de comunicación, de los valores de atributo de la entidad emisora y de los valores de atributo de la entidad receptora;
    (iv)
    formatear una o más partes de contenido del mensaje para su envío sobre uno de los canales de comunicación, habiendo sido el citado canal de comunicación seleccionado sobre la base de la utilidad calculada;
    (v)
    enviar comunicación a la entidad emisora acerca de cualquier parte de contenido de mensaje omitida del formato para enviar.
  12. 12.
    Un método de acuerdo con la reivindicación 13, en el que la entidad emisora y la entidad receptora comprenden cada una software de aplicación de mensajes, siendo el software de aplicación de la entidad emisora incompatible con el software de aplicación de la entidad receptora y en el que la etapa de formatear una o más partes de contenido de mensaje comprende hacer eso para compatibilidad con el software de aplicación de entidad receptora.
  13. 13.
    Un método de acuerdo con la reivindicación 11 ó la reivindicación 12, que comprende calcular la utilidad sobre la base de un coste de enviar el mensaje.
  14. 14.
    Un método de acuerdo con cualquiera de las reivindicaciones 11 a 13, que comprende también recibir valores de atributo de preferencias de mensaje receptor y en el que la utilidad se calcula también sobre la base de al menos algunos de esos valores de atributo de preferencia de mensaje receptor.
  15. 15.
    Un método de acuerdo con cualquiera de las reivindicaciones 13 a 16, que comprende recibir información de contexto externa y calcular la utilidad sobre la base de al menos algo de la información de contexto externa.
  16. 16.
    Un método de acuerdo con cualquiera de las reivindicaciones 11 a 15, que comprende formar un vector de relación de utilidad que cubre la relación de utilidades cuando se envía el mensaje por medio de un canal de comunicación comparado con otro.
  17. 17.
    Un método de acuerdo con la reivindicación 16, que comprende formar un vector de relación de coste.
  18. 18.
    Un método de acuerdo con la reivindicación 17, que comprende concatenar el vector de relación de utilidad y el vector de relación de coste y aplicar una métrica al vector concatenado para permitir que los canales de comunicación sean ordenados en términos de utilidad y coste.
  19. 19.
    Un método de acuerdo con cualquiera de las reivindicaciones 11 a 18 que es llevado a cabo por un programa de ordenador.
ES05026309T 2005-12-02 2005-12-02 Servicio de mensajes. Expired - Lifetime ES2362359T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP05026309A EP1793543B1 (en) 2005-12-02 2005-12-02 Messaging service

Publications (1)

Publication Number Publication Date
ES2362359T3 true ES2362359T3 (es) 2011-07-04

Family

ID=36088516

Family Applications (1)

Application Number Title Priority Date Filing Date
ES05026309T Expired - Lifetime ES2362359T3 (es) 2005-12-02 2005-12-02 Servicio de mensajes.

Country Status (7)

Country Link
US (1) US8484350B2 (es)
EP (1) EP1793543B1 (es)
CN (1) CN101322147B (es)
AT (1) ATE503323T1 (es)
DE (1) DE602005027090D1 (es)
ES (1) ES2362359T3 (es)
WO (1) WO2007064418A1 (es)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7974414B2 (en) * 2004-02-27 2011-07-05 Research In Motion Limited Methods and apparatus for automatically grouping user-specific information in a mobile station
US8539029B2 (en) 2007-10-29 2013-09-17 Microsoft Corporation Pre-send evaluation of E-mail communications
US8280963B2 (en) 2008-04-10 2012-10-02 Microsoft Corporation Caching and exposing pre-send data relating to the sender or recipient of an electronic mail message
CN101742431B (zh) * 2008-11-19 2014-04-02 华为技术有限公司 一种消息发送方法,装置及系统
US20100298009A1 (en) * 2009-05-22 2010-11-25 Amazing Technologies, Llc Hands free messaging
CN101800762B (zh) * 2009-12-30 2014-03-19 中兴通讯股份有限公司 一种对多个业务进行融合的业务云系统及业务实现方法
WO2011100229A1 (en) * 2010-02-09 2011-08-18 Joseph Bekanich Multi-format message communication
KR101701151B1 (ko) * 2010-09-20 2017-02-02 삼성전자주식회사 휴대 단말기를 이용한 통합 메시지 송수신 방법 및 장치
US8499048B2 (en) 2010-10-27 2013-07-30 Facebook, Inc. Indexing and organizing messages in a messaging system using social network information
BR112013011691A2 (pt) * 2010-11-12 2018-03-13 Facebook Inc sistema de mensagem com múltiplos canais de mensagem
US8880627B2 (en) 2011-08-08 2014-11-04 Facebook, Inc. Providing transparency in a messaging system with multiple messaging channels
US9203796B2 (en) 2010-11-12 2015-12-01 Facebook, Inc. Messaging system with multiple messaging channels
US8706824B2 (en) 2011-08-08 2014-04-22 Facebook, Inc. Rescinding messages in a messaging system with multiple messaging channels
US9602453B2 (en) * 2011-02-10 2017-03-21 International Business Machines Corporation Smart attachment to electronic messages
CN102404248B (zh) * 2011-10-28 2015-11-18 深圳市易联盛世科技有限公司 融合消息和邮件应用的方法及装置
US9935907B2 (en) * 2012-11-20 2018-04-03 Dropbox, Inc. System and method for serving a message client
US9729695B2 (en) 2012-11-20 2017-08-08 Dropbox Inc. Messaging client application interface
WO2014183267A1 (zh) * 2013-05-14 2014-11-20 华为技术有限公司 消息发送方法、消息阅读通知方法、消息接收方法及装置
US20140364082A1 (en) * 2013-06-05 2014-12-11 Dynmark International Ltd. System And Method For Routing A Message, And A Computer Program Product
US9479909B2 (en) * 2014-03-20 2016-10-25 Tigertext, Inc. Method of sending messages to devices not configured to receive them
CN105578426B (zh) * 2014-10-10 2019-03-29 阿里巴巴集团控股有限公司 一种通讯信息的发送方法和装置
KR102256642B1 (ko) * 2014-12-04 2021-05-27 삼성전자주식회사 메시지 송수신 장치 및 메시지 송수신 방법
US10033670B2 (en) * 2014-12-22 2018-07-24 Chicago Mercantile Exchange Inc. Electronic messaging management
US10498692B2 (en) * 2016-02-11 2019-12-03 T-Mobile Usa, Inc. Selective call connection system with in-flight control
US10397175B2 (en) * 2016-08-16 2019-08-27 International Business Machines Corporation Communication channel selection and usage
US10313295B2 (en) * 2016-12-16 2019-06-04 Dreamworks Animation L.L.C. Scalable messaging system
KR101948863B1 (ko) * 2018-06-28 2019-02-15 이니그마(주) 메시지 전송채널 자동선택 및 메시지 전송방법, 장치 및 프로그램
US11115373B1 (en) * 2020-06-11 2021-09-07 Movius Interactive Corporation Multi-channel engagement platform converter
US11463389B1 (en) 2021-05-05 2022-10-04 Rovi Guides, Inc. Message modification based on device compatability
US11563701B2 (en) 2021-05-05 2023-01-24 Rovi Guides, Inc. Message modification based on message format
US11562124B2 (en) 2021-05-05 2023-01-24 Rovi Guides, Inc. Message modification based on message context
EP4335097B1 (en) * 2021-05-05 2026-01-28 Adeia Guides Inc. Message modification based on message context
US11778069B2 (en) * 2021-11-08 2023-10-03 Twilio Inc. Multi-channel message exchange system demand API
US12395459B2 (en) * 2022-08-31 2025-08-19 Messagebird Bidco B.V. Logic injection in messaging state machines
US12126585B2 (en) * 2022-11-16 2024-10-22 Twilio Inc. Selecting message routing providers for message routing by communication services platform

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5995597A (en) * 1997-01-21 1999-11-30 Woltz; Robert Thomas E-mail processing system and method
FI105971B (fi) * 1998-04-30 2000-10-31 Nokia Mobile Phones Ltd Menetelmä ja laitteisto sähköpostin käsittelemiseksi
US7159011B1 (en) * 1999-05-11 2007-01-02 Maquis Techtrix, Llc System and method for managing an online message board
US6360272B1 (en) * 1999-05-28 2002-03-19 Palm, Inc. Method and apparatus for maintaining a unified view of multiple mailboxes
US7389351B2 (en) * 2001-03-15 2008-06-17 Microsoft Corporation System and method for identifying and establishing preferred modalities or channels for communications based on participants' preferences and contexts
US7103806B1 (en) * 1999-06-04 2006-09-05 Microsoft Corporation System for performing context-sensitive decisions about ideal communication modalities considering information about channel reliability
US6507812B1 (en) * 1999-06-29 2003-01-14 International Business Machines Corporation Mock translation method, system, and program to test software translatability
KR20010070026A (ko) * 2000-01-12 2001-07-25 백종우 정보 기록 매체를 이용한 통신 접속 방법
KR20010086838A (ko) 2000-03-03 2001-09-15 김혜숙 통신기기 통합검색시스템 및 방법
US7577834B1 (en) * 2000-05-09 2009-08-18 Sun Microsystems, Inc. Message authentication using message gates in a distributed computing environment
US20020016818A1 (en) * 2000-05-11 2002-02-07 Shekhar Kirani System and methodology for optimizing delivery of email attachments for disparate devices
AU2002239391A1 (en) * 2000-11-30 2002-06-11 Message Machines, Inc. Systems and methods for routing messages to communications devices
KR20020044306A (ko) 2000-12-05 2002-06-15 구자홍 무선 인터넷에서의 멀티미디어 스트리밍 서비스 시스템 및방법
US6988132B2 (en) * 2001-03-15 2006-01-17 Microsoft Corporation System and method for identifying and establishing preferred modalities or channels for communications based on participants' preferences and contexts
US20030093565A1 (en) * 2001-07-03 2003-05-15 Berger Adam L. System and method for converting an attachment in an e-mail for delivery to a device of limited rendering capability
KR20010079363A (ko) 2001-07-09 2001-08-22 박민철 웹사이트를 통한 모바일 음성 맞춤 정보 제공 방법
US7506068B2 (en) * 2001-08-30 2009-03-17 Siebel Systems, Inc. Method, apparatus and system for transforming, converting and processing messages between multiple systems
ATE463910T1 (de) * 2002-07-04 2010-04-15 Ericsson Telefon Ab L M Verfahren und anordnung zur bereitstellung eines nachrichtenübermittlungsdienstes
AU2003278495A1 (en) 2002-11-25 2004-06-18 Nokia Corporation System and method for user-initiated group messaging
US20040215472A1 (en) * 2003-04-22 2004-10-28 Harris Gleckman System and method for the cross-platform transmission of messages
JP2007537650A (ja) * 2004-05-14 2007-12-20 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 受信者から受信者へメッセージを伝送する方法、メッセージ伝送システム及びメッセージ変換手段
US20090157869A1 (en) * 2005-07-27 2009-06-18 Cleary James D Tracking Content in Communication Networks
US8332475B2 (en) * 2005-08-22 2012-12-11 Triplay Communications Ltd. Messaging system and method
US7987511B2 (en) * 2005-11-23 2011-07-26 Research In Motion Limited E-mail with secure message parts
US20070130340A1 (en) * 2005-12-02 2007-06-07 Qwest Communications International Inc. Cross-platform redirection of communications
JP2008109380A (ja) * 2006-10-25 2008-05-08 Media Exchange Inc 電子メール送受信システム
US9203912B2 (en) * 2007-11-14 2015-12-01 Qualcomm Incorporated Method and system for message value calculation in a mobile environment
US8225219B2 (en) * 2008-02-12 2012-07-17 Microsoft Corporation Identifying unique content in electronic mail messages
US20100325227A1 (en) * 2009-06-23 2010-12-23 Alon Novy Systems and methods for composite data message

Also Published As

Publication number Publication date
CN101322147A (zh) 2008-12-10
DE602005027090D1 (de) 2011-05-05
EP1793543A1 (en) 2007-06-06
ATE503323T1 (de) 2011-04-15
US8484350B2 (en) 2013-07-09
US20080294735A1 (en) 2008-11-27
EP1793543B1 (en) 2011-03-23
WO2007064418A1 (en) 2007-06-07
CN101322147B (zh) 2013-03-13

Similar Documents

Publication Publication Date Title
ES2362359T3 (es) Servicio de mensajes.
US11533587B2 (en) Device for sending and receiving packet switched messages
ES2809237T3 (es) Procesamiento de contenido y servicios de redes para dispositivos móviles o fijos
US7313106B2 (en) Method of operating a virtual private wireless network implementing message delivery preferences of the user
EP1887747B1 (en) Messaging system and service
US20070282959A1 (en) Message push with pull of information to a communications computing device
US10257671B2 (en) System and method of creating and providing SMS HTTP tagging
US20050198179A1 (en) Management of message stores
ES2382649B1 (es) Proporcionar anuncios digitales usando un protocolo generico
YAHYA et al. STUDY OF TECHNIQUES OF CLASS SCHEDULE/TIMETABLE RETRIEVAL VIA SMS FOR STUDENTS CONVENIENCE
Andreadis et al. Multimedia Messaging Service (MMS)
GB2436182A (en) Preformatting portions of a message for later delivery
Wong Goals for Internet Messaging to Support Diverse Service Environments
Wong RFC 4416: Goals for Internet Messaging to Support Diverse Service Environments