DESCRIPCIÓNDESCRIPTION
Gestión de elementos gráficos y/o de audio en un sistema de mensajeríaManagement of graphic and/or audio elements in a messaging system
[0001]La presente invención se refiere a un sistema de mensajería mejorado, preferentemente instantáneo, para gestionar elementos gráficos y/o de audio en un sistema de mensajería.[0001] The present invention refers to an improved messaging system, preferably instant, to manage graphic and/or audio elements in a messaging system.
[0002]Actualmente, los emoticonos, que implican el uso de combinaciones concretas de caracteres (letras, números, signos de puntuación, etc.) en el texto del propio mensaje para crear gráficos simbólicos para expresar un estado de ánimo particular, ya se utilizan ampliamente en los sistemas de mensajería, particularmente del tipo instantáneo.[0002] Currently, emoticons, which involve the use of specific combinations of characters (letters, numbers, punctuation marks, etc.) in the text of the message itself to create symbolic graphics to express a particular state of mind, are already used widely used in messaging systems, particularly the instant type.
[0003]También se conocen ya los denominados emojis, los cuales son, en cambio, imágenes reales asociadas y conectadas a un determinado código, generalmente del tipo Unicode. Para este fin, los emojis deben ser soportados por unsoftwareapropiado capaz de leerlo, de lo contrario no pueden mostrarse.[0003] So-called emojis are also already known, which are, instead, real images associated and connected to a certain code, generally of the Unicode type. To this end, emojis must be supported by appropriatesoftware capable of reading them, otherwise they cannot be displayed.
[0004]En este contexto, cuando se intercambian mensajes que contienen emojis, puede suceder que el mismo código esté asociado a diferentes imágenes entre el emisor y el receptor, provocando así malentendidos no deseables. No solo eso, en ocasiones sucede que un determinado emoji no está soportado en el terminal del receptor o no hay ninguna imagen asociada con la codificación utilizada por el emisor, provocando de este modo la visualización de un espacio molesto o un cuadrado blanco.[0004] In this context, when messages containing emojis are exchanged, it may happen that the same code is associated with different images between the sender and the receiver, thus causing undesirable misunderstandings. Not only that, sometimes it happens that a certain emoji is not supported in the receiver's terminal or there is no image associated with the encoding used by the sender, thus causing the display of an annoying space or a white square.
[0005]En el documento WO2017/059524 se describe un sistema de mensajería en el que todos los usuarios pueden utilizar todos los elementos gráficos (tales como emojis,stickers,memes) cargados en el sistema y, particularmente, no existe un mecanismo previo de arquitectura y autorización/permiso (o para monitorizar dicha autorización/permiso) proporcionado para utilizar o insertar los elementos gráficos en un mensaje que se quiere enviar. En concreto, para facilitar la difusión viral de los elementos gráficos utilizados en dicho sistema, cuando un mensaje con un elemento gráfico es recibido por el dispositivo correspondiente del receptor y, posiblemente, se descarga de la biblioteca centralizada, dicho elemento puede insertarse entonces libremente mediante el receptor en un nuevo mensaje que se quiere enviar como emisor.[0005] Document WO2017/059524 describes a messaging system in which all users can use all the graphic elements (such as emojis,stickers, memes) loaded in the system and, particularly, there is no prior mechanism for architecture and authorization/permission (or to monitor said authorization/permission) provided to use or insert the graphic elements in a message to be sent. In particular, in order to facilitate the viral spread of graphic elements used in such a system, when a message with a graphic element is received by the corresponding device of the recipient and possibly downloaded from the centralized library, said element can then be freely inserted via the receiver in a new message that you want to send as a sender.
[0006]En el documento WO2014/100682 se describe un sistema de mensajería en el que, cuando un mensaje con un elemento gráfico y/o de audio (que ya no está presente en la biblioteca local del dispositivo receptor) es recibido por el correspondiente dispositivo del receptor, dicho elemento gráfico y/o de audio se descarga de la biblioteca centralizada, presente en el servidor, a la biblioteca local del dispositivo receptor. A continuación, una vez que se ha descargado a la biblioteca local del dispositivo receptor, dicho elemento gráfico y/o de audio puede ser insertado libremente por el receptor en un nuevo mensaje que se quiere enviar como emisor.[0006] Document WO2014/100682 describes a messaging system in which, when a message with a graphic and/or audio element (which is no longer present in the local library of the receiving device) is received by the corresponding receiving device, said graphic and/or audio element is downloaded from the centralized library, present on the server, to the local library of the receiving device. Then, once it has been downloaded to the local library of the receiving device, said graphic and/or audio element can be freely inserted by the receiver in a new message that he wishes to send as sender.
[0007]El documento US2015/0327033 describe un sistema de mensajería en que se insertan secuencias de Unicode de ancho cero (ZW) en el propio mensaje para enviar un mensaje que contiene gráficos y para identificar unívocamente estos elementos gráficos.[0007] Document US2015/0327033 describes a messaging system in which zero-width (ZW) Unicode sequences are inserted into the message itself to send a message containing graphics and to uniquely identify these graphic elements.
[0008]En el documento US9699299 se describe un sistema de mensajería para enviar mensajes que contienen elementos gráficos y/o de audio asociados con etiquetas, que están destinadas a ser insertadas (mediante el teclado) por el usuario emisor cuando prepara un mensaje que se quiere enviar. Además, en este sistema de mensajería, cada etiqueta puede estar asociada con múltiples elementos gráficos y/o de audio. En concreto, siempre que el usuario emisor escriba una palabra correspondiente a una determinada etiqueta durante la etapa de preparación de un nuevo mensaje, el software está configurado para realizar dos consultas, una dirigida a la biblioteca local cargada en el dispositivo emisor, y una dirigida a la memoria remota cargada en el servidor central, y esto con el fin de identificar todos los elementos gráficos y/o de audio asociados con dicha etiqueta. También en este caso, cuando un mensaje con un elemento gráfico y/o de audio (que ya no está presente en la biblioteca local del dispositivo receptor) es recibido por el correspondiente dispositivo del receptor, dicho elemento gráfico y/o de audio se descarga de la biblioteca centralizada, presente en el servidor, a la biblioteca local del dispositivo receptor. A continuación, una vez que se ha descargado a la biblioteca local del dispositivo receptor, dicho elemento gráfico y/o de audio puede ser insertado entonces libremente por el receptor durante la etapa de preparación de un nuevo mensaje que se quiere enviar, de nuevo de acuerdo con los métodos anteriormente descritos.[0008] Document US9699299 describes a messaging system for sending messages containing graphic and/or audio elements associated with labels, which are intended to be inserted (using the keyboard) by the sending user when preparing a message to be sent. want to send. Furthermore, in this messaging system, each tag may be associated with multiple graphic and/or audio elements. Specifically, whenever the sending user types a word corresponding to a certain label during the preparation stage of a new message, the software is configured to perform two queries, one directed to the local library loaded on the sending device, and one directed to the remote memory loaded on the central server, and this in order to identify all the graphic and/or audio elements associated with said label. Also in this case, when a message with a graphic and/or audio element (which is no longer present in the local library of the receiving device) is received by the corresponding receiving device, said graphic and/or audio element is downloaded from the centralized library, present on the server, to the local library of the receiving device. Then, once it has been downloaded to the local library of the receiving device, said graphic and/or audio element can then be freely inserted by the receiver during the preparation stage of a new message to be sent, again according to the methods described above.
[0009]En el documento WO2015/122993 se describe un sistema de mensajería en el que el emisor y el receptor pueden crear una animación en sus conversaciones en la que los respectivos avatares del emisor y del receptor interactúan entre sí. Dicho sistema está configurado para que, en el mensaje, los avatares se identifiquen por medio de la combinación de valores que se asocian con una serie de sus atributos, en lugar de ser identificados por un código unívoco y, además, un código (ACC) que indica el tipo de animación que se crea entre el avatar del emisor y el avatar del receptor también se inserta en el mensaje. Para mostrar el mensaje correctamente, el software del dispositivo receptor está configurado para reconstruir y mostrar a continuación la animación de los respectivos avatares y, para ello, identifica el código ACC en el mensaje para recuperar una primera base de datos a partir de la animación correspondiente e identifica los atributos individuales de los avatares (el del emisor y el del receptor) para ser capaz de reconstruir/reunir localmente los avatares que se van a utilizar en la animación. Asimismo, dicho sistema de mensajería está configurado para que la animación en la pantalla del dispositivo del emisor se cree y se visualice únicamente tras haber recibido la confirmación de recibo del dispositivo del receptor.[0009] Document WO2015/122993 describes a messaging system in which the sender and receiver can create an animation in their conversations in which the respective avatars of the sender and receiver interact with each other. Said system is configured so that, in the message, the avatars are identified by means of the combination of values that are associated with a series of their attributes, instead of being identified by a unique code and, in addition, a code (ACC) indicating the type of animation that is created between the avatar of the sender and the avatar of the receiver is also inserted in the message. To display the message correctly, the software of the receiving device is configured to reconstruct and then display the animation of the respective avatars, and to do this, it identifies the ACC code in the message to retrieve a first database from the corresponding animation and identifies the individual attributes of the avatars (the one of the sender and the one of the receiver) to be able to locally reconstruct/assemble the avatars that are going to be used in the animation. Likewise, said messaging system is configured so that the animation on the screen of the sender's device is created and displayed only after receiving confirmation of receipt from the receiver's device.
[0010]El objeto de la presente invención es sugerir un sistema de mensajería para transferir, transmitir e intercambiar elementos gráficos y/o de audio en un sistema de mensajería que supere los inconvenientes anteriormente descritos presentes en la técnica tradicional.[0010] The object of the present invention is to suggest a messaging system for transferring, transmitting and exchanging graphic and/or audio elements in a messaging system that overcomes the previously described drawbacks present in the traditional technique.
[0011]Otro objeto de la invención es sugerir un sistema que permita que el usuario utilice/inserte los elementos gráficos y/o de audio personalizados en el texto de los mensajes.[0011] Another object of the invention is to suggest a system that allows the user to use/insert personalized graphic and/or audio elements in the text of the messages.
[0012]Otro objeto de la invención es sugerir un sistema que permita que el usuario personalice los bocadillos (es decir, los marcos que incluyen el texto) que se utilizan en los mensajes, particularmente en mensajes en los que los elementos gráficos y/o de audio personalizados se transmitan dentro del bocadillo.[0012] Another object of the invention is to suggest a system that allows the user to personalize the speech bubbles (that is, the frames that include the text) that are used in the messages, particularly in messages in which the graphic elements and/or custom audio streams into the speech bubble.
[0013]Otro objeto de la invención es sugerir un sistema que permita que el usuario personalice el avatar (es decir, la representación gráfica utilizada por los usuarios para identificarse a sí mismos cuando se comunican con otros usuarios, por ejemplo, en un chat) que se utiliza en los mensajes, particularmente en mensajes en los que los elementos gráficos y/o de audio personalizados se transmitan dentro del bocadillo.[0013] Another object of the invention is to suggest a system that allows the user to customize the avatar (that is, the graphic representation used by users to identify themselves when they communicate with other users, for example, in a chat) which is used in messages, particularly in messages where custom graphic and/or audio elements are transmitted within the speech bubble.
[0014]Otro objeto de la invención es sugerir un sistema que haga posible transmitir elementos gráficos y/o de audio que no estén necesariamente presentes en el terminal del receptor.[0014] Another object of the invention is to suggest a system that makes it possible to transmit graphic and/or audio elements that are not necessarily present in the receiver terminal.
[0015]Otro objeto de la invención es sugerir un sistema que garantice la correcta visualización del mismo elemento gráfico tanto por parte del emisor como por parte del receptor del mensaje.[0015] Another object of the invention is to suggest a system that guarantees the correct display of the same graphic element by both the sender and the receiver of the message.
[0016]Otro objeto de la invención es sugerir un sistema en el que el usuario pueda crear fácilmente un elemento gráfico y/o de audio y pueda ponerlo a disposición de otros usuarios para que estos puedan utilizarlo en sus mensajes.[0016] Another object of the invention is to suggest a system in which the user can easily create a graphic and/or audio element and can make it available to other users so that they can use it in their messages.
[0017]Otro objeto de la invención es sugerir un sistema en el que el usuario pueda sincronizar fácil y rápidamente elementos gráficos y/o de audio para utilizarlos en mensajes en múltiples terminales y mantenerlos sincronizados.[0017] Another object of the invention is to suggest a system in which the user can easily and quickly synchronize graphic and/or audio elements to be used in messages in multiple terminals and keep them synchronized.
[0018]Otro objeto es sugerir un sistema en el que los usuarios puedan utilizar activamente (es decir, insertar en un mensaje del que sean el emisor) únicamente los elementos gráficos que hayan creado y/o adquirido y/o (generalmente) estén autorizados a utilizar, mientras que, al mismo tiempo, los receptores de un mensaje puedan visualizar correctamente todos los elementos gráficos, es decir, incluso aquellos que no han creado y/o adquirido y/o para los que no estén autorizados.[0018] Another object is to suggest a system in which users can actively use (i.e. insert into a message of which they are the sender) only the graphical elements that they have created and/or acquired and/or (generally) are authorized to use, while, at the same time, the receivers of a message can correctly display all the graphic elements, that is, even those that they have not created and/or acquired and/or for which they are not authorized.
[0019]Otro objeto de la invención es sugerir un sistema en el que los elementos gráficos que se utilicen en los mensajes sean independientes de la codificación estándar Unicode y que, por lo tanto, no estén sujetos a la aprobación por parte del Consorcio Unicode.[0019] Another object of the invention is to suggest a system in which graphic elements used in messages are independent of the standard Unicode encoding and therefore not subject to approval by the Unicode Consortium.
[0020]Otro objeto de la invención es sugerir un sistema que sea mejor que los tradicionales y/o alternativo a estos.[0020] Another object of the invention is to suggest a system that is better than the traditional ones and/or an alternative to them.
[0021]Otro objeto de la invención es sugerir un sistema con una caracterización alternativa, en términos tanto de función como de implementación, con respecto a los tradicionales.[0021] Another object of the invention is to suggest a system with an alternative characterization, in terms of both function and implementation, with respect to the traditional ones.
[0022]Otro objeto de la invención es sugerir un sistema que sea simple, fácil e intuitivo de usar.[0022] Another object of the invention is to suggest a system that is simple, easy and intuitive to use.
[0023]Otro objeto de la invención es sugerir un sistema que permita un menor consumo de recursos por los dispositivos dehardwareimplicados y un menor uso del ancho de banda ocupado por la red.[0023] Another object of the invention is to suggest a system that allows a lower consumption of resources by thehardware devices involved and a lower use of the bandwidth occupied by the network.
[0024]Otro objeto de la invención es sugerir un sistema que pueda implementarse de manera simple, rápida y rentable.[0024] Another object of the invention is to suggest a system that can be implemented simply, quickly and cost-effectively.
[0025]Todos estos y otros objetos que se pondrán de manifiesto a partir de la descripción que se muestra a continuación se consiguen, de acuerdo con la invención, mediante el sistema que presenta las características indicadas en la reivindicación 1.[0025] All these and other objects that will become apparent from the description shown below are achieved, according to the invention, by means of the system that has the characteristics indicated in claim 1.
[0026]Además, la presente invención se explica por medio de una forma de realización preferida proporcionada a modo de ejemplo práctico no limitativo, únicamente en referencia a las figuras adjuntas, en las cuales:[0026] In addition, the present invention is explained by means of a preferred embodiment provided by way of non-limiting practical example, solely with reference to the attached figures, in which:
la figura 1 muestra una vista esquemática de la infraestructura del sistema de mensajería de acuerdo con la invención, la figura 2 muestra esquemáticamente la implementación de la base de datos,figure 1 shows a schematic view of the infrastructure of the messaging system according to the invention, figure 2 shows schematically the implementation of the database,
la figura 3 muestra un ejemplo de la estructura de datos enviada mediante el terminal emisor a la unidad central,Figure 3 shows an example of the data structure sent by the sending terminal to the central unit,
la figura 4 muestra un ejemplo del paquete de datos estructurado procesado por la unidad central,Figure 4 shows an example of the structured data packet processed by the central unit,
la figura 5 muestra un ejemplo de la pantalla de selección del avatar,Figure 5 shows an example of the avatar selection screen,
la figura 6 muestra un ejemplo de la pantalla que muestra la biblioteca de avatares,figure 6 shows an example of the screen showing the library of avatars,
la figura 7 muestra un ejemplo de la pantalla de un chat con la biblioteca de elementos gráficos que se insertan en el texto, la figura 8 muestra un ejemplo de la pantalla de un chat con la biblioteca de bocadillos,figure 7 shows an example of a chat screen with the library of graphic elements that are inserted into the text, figure 8 shows an example of a chat screen with the speech bubble library,
la figura 9 muestra un ejemplo de la pantalla de un chat en un dispositivo portátil, yFigure 9 shows an example of a chat screen on a portable device, and
la figura 10 muestra un ejemplo de la pantalla de un chat en un navegador de un ordenador,figure 10 shows an example of a chat screen in a computer browser,
la figura 11 muestra un diagrama de flujo de las etapas proporcionadas en el envío de un mensaje desde un emisor hasta el receptor en el sistema de mensajería de acuerdo con la invención,figure 11 shows a flow diagram of the steps provided in sending a message from a sender to the receiver in the messaging system according to the invention,
la figura 12 muestra un diagrama de flujo del funcionamiento de la arquitectura/mecanismo para garantizar la corrección de la identidad de un usuario emisor en el sistema de mensajería de acuerdo con la invención,Figure 12 shows a flow diagram of the operation of the architecture/mechanism to guarantee the correctness of the identity of a sending user in the messaging system according to the invention,
la figura 13 muestra un diagrama de flujo del funcionamiento de la arquitectura/mecanismo para sincronizar y utilizar únicamente los gráficos/audio autorizados en el dispositivo emisor.Figure 13 shows a flowchart of the operation of the architecture/mechanism to synchronize and use only the graphics/audio authorized in the sending device.
[0027] Preliminarmente, cabe destacar que en adelante el término «mensaje» 60 hace referencia al conjunto de los elementos, ya sean textuales, gráficos (tanto estáticos como animados) y/o de audio y/o vídeo, que se representan en la pantalla en un único marco, que también se denomina «bocadillo» en adelante, o que se muestran en la pantalla ya sea separados o desconectados gráficamente de otros mensajes en el chat. El término «avatar» se refiere a la representación gráfica utilizada por los usuarios para identificarse cuando se comunican con otros usuarios, por ejemplo, en un chat, o cuando envían un mensaje.[0027] Preliminarily, it should be noted that from now on the term "message" 60 refers to the set of elements, whether textual, graphic (both static and animated) and/or audio and/or video, that are represented in the screen in a single frame, which is also called a "speech bubble" from now on, or that are displayed on the screen either graphically separated or disconnected from other messages in the chat. The term "avatar" refers to the graphic representation used by users to identify themselves when they communicate with other users, for example, in a chat, or when they send a message.
[0028] Como se muestra en las figuras, la infraestructura del sistema de mensajería de acuerdo con la invención, indicada en conjunto mediante el número de referencia 2, comprende al menos un dispositivo emisor 4 y al menos un dispositivo receptor 6, que están provistos de medios de comunicación para la transmisión y recepción de datos hacia y desde al menos una unidad central 8.[0028] As shown in the figures, the infrastructure of the messaging system according to the invention, indicated as a whole by reference number 2, comprises at least one sending device 4 and at least one receiving device 6, which are provided of means of communication for the transmission and reception of data to and from at least one central unit 8.
[0029] Ventajosamente, los datos se transfieren entre los dispositivos 4, 6 y la unidad central 8 de acuerdo con una arquitectura tradicional cliente-servidor que utiliza, por ejemplo HTTP (Protocolo de transferencia de hipertexto). Preferentemente, dicho protocolo de transferencia/comunicación está asegurado, es decir, es por ejemplo del tipo HTTPS, utilizando una conexión cifrada, p. ej., conforme a los protocolos cifrados de Seguridad de la capa de transporte (TLS) o Capa de puertos seguros (SSL).[0029] Advantageously, the data is transferred between the devices 4, 6 and the central unit 8 according to a traditional client-server architecture using, for example, HTTP (Hyper Text Transfer Protocol). Preferably, said transfer/communication protocol is secured, that is, it is for example of the HTTPS type, using an encrypted connection, e.g. eg, conforming to Transport Layer Security (TLS) or Secure Ports Layer (SSL) encrypted protocols.
[0030] Preferentemente, el dispositivo emisor 4 y/o el dispositivo receptor 6 comprenden un cliente constituido por un ordenador o un dispositivo de tipo portátil, por ejemplo, un teléfono inteligente o tableta. Preferiblemente, la unidad central 8 comprende al menos un procesador 10, p. ej., tal como un servidor remoto virtual o real y/o un sistema en la nube.[0030] Preferably, the transmitting device 4 and/or the receiving device 6 comprise a client constituted by a computer or a portable type device, for example, a smartphone or tablet. Preferably, the central unit 8 comprises at least one processor 10, e.g. such as a real or virtual remote server and/or a cloud system.
[0031] Además, se carga al menos una base de datos 12 de la unidad central 8 que se proporciona, de manera convencional, con medios de almacenamiento de datos y con un procesador para el procesamiento de los datos (servidor de base de datos), y aplicaciones desoftware(es decir, un sistema de gestión de bases de datos) para crear, manipular, gestionar y consultar de forma eficiente los datos almacenados en los medios.[0031] In addition, at least one database 12 of the central unit 8 is loaded, which is provided, in a conventional manner, with data storage means and with a processor for processing the data (database server). , andsoftware applications (ie, a database management system) to efficiently create, manipulate, manage, and query data stored on the media.
[0032] Como se muestra en la figura 2, la base de datos central 12 comprende:[0032] As shown in Figure 2, the central database 12 comprises:
- un conjunto de datos de usuario 14 que contiene los datos de cada usuario del sistema; en concreto, dicho conjunto de datos contiene al menos un código de identificación unívoco ID para el usuario, un nombre de usuario y una contraseña, y preferentemente también el nombre y apellido(s), una referencia de contacto (p. ej., la dirección de correo electrónico) y otros datos de registro convencionales.- a user data set 14 containing the data of each user of the system; specifically, said set of data contains at least a unique identification code ID for the user, a username and a password, and preferably also the name and surname(s), a contact reference (eg, the email address) and other conventional registration data.
- uno o más conjuntos de datos de elemento 16 que contienen al menos los códigos de identificación unívocos (ID) de todos los elementos gráficos (tanto estáticos como animados) y/o de audio y/o vídeo 31 que pueden ser gestionados por el sistema de mensajería 2; en concreto, en el caso de un elemento gráfico, dicho conjunto de datos contiene al menos el código de identificación unívoco (ID) 30 para cada elemento gráfico.- one or more element data sets 16 containing at least the unique identification codes (ID) of all graphic elements (both static and animated) and/or audio and/or video elements 31 that can be managed by the system messaging 2; specifically, in the case of a graphic element, said data set contains at least the unique identification code (ID) 30 for each graphic element.
[0033] De manera apropiada, en concreto, en el caso de los elementos gráficos, el mismo conjunto de datos de elemento 16 puede contener también datos que definan la imagen real 31 (es decir, la representación numérica de mapa de bits, preferentemente según la base 64 o el vector que codifica la imagen digital), el tipo y/o una descripción de la imagen, una miniatura de la imagen y el código de identificación ID del autor/creador de dicho elemento gráfico.[0033] Appropriately, in particular, in the case of graphic elements, the same element data set 16 may also contain data defining the actual image 31 (i.e., the numerical bitmap representation, preferably according to the base 64 or the vector that encodes the digital image), the type and/or a description of the image, a thumbnail of the image and the ID identification code of the author/creator of said graphic element.
[0034] Preferentemente, el conjunto de datos de elemento 16 contiene, además del código de identificación unívoco (ID) 30 del elemento gráfico y/o de audio 31, una dirección/ubicación (p. ej., una URL web) de otra base de datos 47, posiblemente basada en la nube (y preferiblemente la dirección o ubicación precisa de los registros correspondientes en la base de datos 47), en la que los datos que definen el elemento gráfico y/o de audio real 31 están almacenados de manera organizada. Ventajosamente, de acuerdo con una forma de realización preferida, en el conjunto de datos 16 de la base de datos central 12, el código de identificación unívoco (ID) 30 del elemento gráfico y/o de audio 31 corresponde a la dirección/ubicación unívoca (preferiblemente basada en web) que identifica el registro en la base de datos adicional 47 (posiblemente basada en la nube) en la que están almacenados los datos que definen el elemento real 31.[0034] Preferably, the element data set 16 contains, in addition to the unique identification code (ID) 30 of the graphic and/or audio element 31, an address/location (eg, a web URL) of another database 47, possibly cloud-based (and preferably the precise address or location of the corresponding records in the database 47), in which the data defining the actual graphic and/or audio element 31 is stored organized way. Advantageously, according to a preferred embodiment, in the data set 16 of the central database 12, the unique identification code (ID) 30 of the graphic and/or audio element 31 corresponds to the unique address/location (preferably web-based) that identifies the record in the additional database 47 (possibly cloud-based) in which the data defining the actual element 31 is stored.
[0035] Convenientemente, todos los elementos gráficos y/o de audio y/o vídeo 31 que pueden transferirse mediante el sistema de mensajería 2 de acuerdo con la invención se identifican unívocamente en la base de datos 12 mediante el código de identificación unívoco 30 del conjunto de datos de elemento 16. En concreto, esto significa que, en la base de datos 12, cada elemento gráfico y/o de audio y/o vídeo 31 que puede gestionarse y transferirse mediante el sistema de mensajería 2 está provisto de su propio código de identificación unívoco que, por lo tanto, es ciertamente distinto y diferente de los de todos los otros elementos gráficos y/o de audio. Preferentemente, el código de identificación unívoco 30 de cada elemento gráfico y/o de audio y/o vídeo 31 de los conjuntos de datos de elemento 16 se crea de manera aleatoria o predeterminada (y después se asocia) mediante un módulo desoftwarede asignación específico proporcionado en la base de datos 12 y/o en la unidad central 8.[0035] Conveniently, all the graphic and/or audio and/or video elements 31 that can be transferred by means of the messaging system 2 according to the invention are uniquely identified in the database 12 by means of the unique identification code 30 of the user. element data set 16. Specifically, this means that, in the database 12, each graphic and/or audio and/or video element 31 that can be managed and transferred by the messaging system 2 is provided with its own unique identification code that is therefore certainly distinct and different from those of all other graphic and/or audio elements. Preferably, the unique identification code 30 of each graphic and/or audio and/or video element 31 of the element data sets 16 is randomly or predetermined created (and then associated) by an allocationsoftware module provided in the database 12 and/or in the central unit 8.
[0036]De manera apropiada, la base de datos 12 está configurada y estructurada para que el conjunto de datos de usuario 14 y el conjunto de datos de elemento 16 estén asociados mutuamente por medio de una relación 18 (que sustancialmente constituye otro conjunto de datos) que contiene los elementos 31 del conjunto de datos 16 que son gestionables/utilizables/disponibles para cada usuario del conjunto de datos 14.[0036] Appropriately, the database 12 is configured and structured so that the user data set 14 and the item data set 16 are mutually associated via a relationship 18 (which substantially constitutes another data set ) containing the elements 31 of the dataset 16 that are manageable/usable/available for each user of the dataset 14.
[0037]Preferentemente, cada fila de la relación 18 del conjunto de datos contiene el código de identificación unívoco ID para un usuario (ya que deriva del conjunto de datos de usuario 14), un código de identificación unívoco 30 de un elemento gráfico y/o de audio 31 (ya que deriva del conjunto de datos de elemento 16) que está asociado con ese determinado usuario y una indicación de si dicho usuario está habilitado/autorizado para utilizar este elemento gráfico y/o de audio 31 en el sistema de mensajería 2 o no.[0037] Preferably, each row of the relation 18 of the data set contains the unique identification code ID for a user (since it is derived from the user data set 14), a unique identification code 30 of a graphic element and/or or audio 31 (since it is derived from the element data set 16) that is associated with that particular user and an indication of whether said user is enabled/authorized to use this graphic and/or audio element 31 in the messaging system 2 or not.
[0038]De manera apropiada, la base de datos 12 está configurada y estructurada de tal manera que, en la relación 18, el mismo elemento gráfico y/o de audio del conjunto de datos 16 pueda estar asociado con múltiples usuarios y, por lo tanto, ser gestionado por múltiples usuarios del conjunto de datos 14. De manera apropiada, de acuerdo con la invención, se entiende que la base de datos 12 de la unidad central 8 contiene los datos de todos los elementos gráficos y/o de audio de todos los usuarios.[0038] Appropriately, database 12 is configured and structured such that, in relationship 18, the same graphic and/or audio element of data set 16 may be associated with multiple users and thus therefore, be managed by multiple users of the data set 14. Appropriately, according to the invention, it is understood that the database 12 of the central unit 8 contains the data of all the graphic and/or audio elements of all users.
[0039]Ventajosamente, de este modo, es decir, correlacionando cada usuario con uno o más elementos gráficos y/o de audio 31 (y, por lo tanto, también viceversa, es decir, poniendo cada elemento gráfico y/o de audio en relación con uno o más usuarios), se define una arquitectura en la que los usuarios pueden gestionar y utilizar de manera activa (es decir, como emisor en un mensaje) únicamente los elementos gráficos y/o de audio 31 asociados con ellos, según lo proporcionado por las relaciones 18 entre los conjuntos de datos 14 y 16. Sustancialmente, un determinado usuario está habilitado/autorizado para insertar un determinado elemento gráfico y/o de audio 31 en un mensaje que se quiere enviar únicamente si hay una relación 18 entre dicho usuario y dicho elemento, y particularmente si el código de identificación unívoco ID del usuario está en relación con el código de identificación unívoco 30 de dicho elemento.[0039] Advantageously, in this way, that is, by correlating each user with one or more graphic and/or audio elements 31 (and therefore also vice versa, that is, by putting each graphic and/or audio element in relation to one or more users), an architecture is defined in which users can actively manage and use (i.e., as a sender in a message) only the graphic and/or audio elements 31 associated with them, as provided by the relations 18 between the data sets 14 and 16. Substantially, a certain user is enabled/authorized to insert a certain graphic and/or audio element 31 in a message that is to be sent only if there is a relation 18 between said user and said element, and particularly if the unique identification code ID of the user is related to the unique identification code 30 of said element.
[0040]De manera apropiada, la relación 18 (que, de hecho, hace posible habilitar/autorizar a un determinado usuario a utilizar un elemento gráfico y/o de audio concreto 31 en un mensaje que se quiere enviar) puede crearse cuando el usuario es el sujeto que ha creado/subido dicho elemento gráfico y/o de audio en el sistema de mensajería 2 y/o cuando el usuario ha sido autorizado (p. ej., porque lo ha adquirido sin cargo o tras pagar una tasa) a utilizar dicho elemento gráfico y/o de audio en el sistema de mensajería 2.[0040] Appropriately, the relationship 18 (which, in fact, makes it possible to enable/authorize a certain user to use a specific graphic and/or audio element 31 in a message to be sent) can be created when the user is the subject that has created/uploaded said graphic and/or audio element in the messaging system 2 and/or when the user has been authorized (eg, because he has acquired it free of charge or after paying a fee) to use said graphic and/or audio element in the messaging system 2.
[0041]De manera apropiada, la base de datos 12 está configurada y estructurada para que el conjunto de datos de usuario 14 y el conjunto de datos de elemento 16 estén asociados mutuamente por medio de dos tipos de relaciones 18 (que, por lo tanto, definen sustancialmente dos conjuntos de datos adicionales) que contienen los elementos del conjunto de datos 16 que fueron creados por cada uno de los usuarios del conjunto de datos 14 y los elementos del conjunto de datos 16 para los que cada usuario del conjunto de datos 14 estaba autorizado/habilitado (p. ej., porque lo había adquirido), respectivamente.[0041] Appropriately, the database 12 is configured and structured so that the user data set 14 and the item data set 16 are mutually associated via two types of relationships 18 (which therefore , substantially define two additional data sets) containing the elements of data set 16 that were created by each of the users of data set 14 and the elements of data set 16 for which each user of data set 14 was authorized/enabled (eg, because I had purchased it), respectively.
[0042]Ventajosamente, como se muestra en la fig. 2, el conjunto de datos de elemento 16 comprende un primer conjunto de datos 21 que contiene los datos y/o referencias (es decir, las direcciones o la ubicación en otra base de datos 47) de símbolos e iconos o imágenes en general 33 que se insertan, con o sin ningún texto 39, en el bocadillo del propio mensaje, así como un código de identificación unívoco (ID) 23 de dichas imágenes 33 que pueden insertarse con o en el texto del mensaje. Preferentemente, aunque no necesariamente, estas imágenes 33 representan un concepto, una emoción o un estado de ánimo, sustancialmente de manera correspondiente a los emojis.[0042] Advantageously, as shown in fig. 2, the item data set 16 comprises a first data set 21 containing the data and/or references (i.e. addresses or location in another database 47) of symbols and icons or images in general 33 that are inserted, with or without any text 39, in the bubble of the message itself, as well as a unique identification code (ID) 23 of said images 33 that can be inserted with or in the text of the message. Preferably, although not necessarily, these images 33 represent a concept, an emotion or a state of mind, substantially corresponding to the emojis.
[0043]Ventajosamente, como se muestra en la figura 2, el conjunto de datos de elemento 16 comprende un segundo conjunto de datos 17 que contiene los datos (al menos un código de identificación unívoco) y/o las referencias (es decir, las direcciones o la ubicación en otra base de datos) de símbolos, iconos o imágenes en general para utilizar como avatar 35, así como su código de identificación unívoco (ID) 34.[0043] Advantageously, as shown in Figure 2, the item data set 16 comprises a second data set 17 containing the data (at least one unique identification code) and/or the references (i.e. the addresses or location in another database) of symbols, icons or images in general to be used as an avatar 35, as well as their unique identification code (ID) 34.
[0044]Ventajosamente, como se muestra en la figura 2, el conjunto de datos de elemento 16 comprende un tercer conjunto de datos 19 que contiene los datos (al menos un código de identificación unívoco) y/o las referencias (es decir, las direcciones o la ubicación en otra base de datos) de bocadillos 37 de diferentes formas o tamaños que encierran el texto del mensaje, así como su código de identificación unívoco (ID) 32.[0044] Advantageously, as shown in Figure 2, the item data set 16 comprises a third data set 19 containing the data (at least one unique identification code) and/or the references (i.e. the addresses or the location in another database) of speech bubbles 37 of different shapes or sizes that enclose the text of the message, as well as its unique identification code (ID) 32.
[0045]Convenientemente, cualquier sujeto, como autor, y no necesariamente identificado/registrado en el conjunto de datos de usuario 14, puede generar un elemento gráfico y/o de audio y subirlo apropiadamente en el conjunto de datos de elemento 16 de la base de datos 12 para que esté disponible para los usuarios del sistema 2, según lo identificado/registrado en el conjunto de datos de usuario 14, y permitirles así descargar, de la base de datos 12 localmente a sus dispositivos, elementos gráficos y/o de audio identificados mediante los códigos de identificación unívocos 30 presentes en el conjunto de datos de elemento 16 para ser capaces de utilizarlos en los mensajes que se quieren enviar en el sistema de mensajería 2, como se explicará mejor a continuación.[0045] Conveniently, any subject, such as author, and not necessarily identified/registered in the user data set 14, can generate a graphic and/or audio element and appropriately upload it in the database element data set 16 of data 12 to be available to users of system 2, as identified/recorded in user data set 14, and thus allow them to download, from database 12 locally to their devices, graphic and/or graphical elements. audio identified by means of the unique identification codes 30 present in the element data set 16 in order to be able to use them in the messages that are to be sent in the messaging system 2, as will be better explained below.
[0046]El dispositivo emisor 4 y el dispositivo receptor 6 están configurados para enviar y recibir mensajes de texto 60 a través de la red o mediante Internet o localmente por medio de la unidad central 8 con la que se comunican ambos dispositivos.[0046] The sending device 4 and the receiving device 6 are configured to send and receive text messages 60 through the network or through the Internet or locally through the central unit 8 with which both devices communicate.
[0047]Se carga y se ejecuta un primer módulo desoftwareen el dispositivo emisor 4 y/o el dispositivo receptor 6. Convenientemente, en el caso de un dispositivo portátil, tal como un teléfono inteligente o tableta, el primer módulo desoftwareconsiste en una aplicación desoftwaremóvil, también conocida comoapp.[0047] A firstsoftware module is loaded and executed on the sending device 4 and/or the receiving device 6. Conveniently, in the case of a portable device, such as a smartphone or tablet, the firstsoftware module consists in a mobilesoftware application, also known as anapp.
[0048]El primer módulo desoftwaredel dispositivo 4, 6 también está configurado para cargar en la base de datos 12 de la unidad central 8 un elemento gráfico y/o de audio generado por un usuario (autor) para ponerlo también a disposición de otros usuarios del sistema de mensajería 2. En concreto, para tal fin, el primer módulo desoftwareenvía un elemento gráfico y/o de audio particular 31, que ha sido generado o está disponible localmente en un dispositivo, a la unidad central 8, y la unidad central 8 lo almacena en la base de datos 12 asociando un código de identificación unívoco 30 con este. Convenientemente, para un elemento gráfico y/o de audio 31 que se vaya a ser utilizado/insertado por un usuario emisor en un mensaje 60, el elemento gráfico 31 con su código de identificación unívoco 30 debe estar disponible/presente en la memoria local del dispositivo emisor 4 para que el código de identificación unívoco 30 pueda insertarse de manera apropiada en el mensaje 60 y, por lo tanto, en la estructura de datos 20 enviada a la unidad central 8, de acuerdo con los métodos descritos a continuación.[0048] The firstsoftware module of the device 4, 6 is also configured to load in the database 12 of the central unit 8 a graphic and/or audio element generated by a user (author) to also make it available to other users of the messaging system 2. Specifically, for this purpose, the firstsoftware module sends a particular graphic and/or audio element 31, which has been generated or is available locally on a device, to the central unit 8, and the central unit 8 stores it in the database 12 by associating a unique identification code 30 with it. Conveniently, for a graphic and/or audio element 31 to be used/inserted by a sending user in a message 60, the graphic element 31 with its unique identification code 30 must be available/present in the local memory of the user. sender device 4 so that the unique identification code 30 can be properly inserted in the message 60 and therefore in the data structure 20 sent to the central unit 8, according to the methods described below.
[0049]De manera apropiada, el sistema de mensajería 2 también comprende un segundo módulo desoftware,que se carga y se ejecuta en la unidad central 8 y está configurado para definir una nueva relación 18 que asocia un correspondiente elemento gráfico y/o de audio 31 (y, en concreto, asocia el código de identificación unívoco 30 del elemento gráfico y/o de audio 31 con el código de identificación unívoco ID para ese usuario) con un usuario, y viceversa, para que el usuario pueda utilizar solo los elementos gráficos y/o de audio 31 que estén asociados con el usuario por medio de una relación 18 en los mensajes que se quieren enviar.[0049] Appropriately, the messaging system 2 also comprises a secondsoftware module, which is loaded and executed in the central unit 8 and is configured to define a new relationship 18 that associates a corresponding graphic element and/or audio 31 (and, specifically, associates the unique identification code 30 of the graphic and/or audio element 31 with the unique identification code ID for that user) with a user, and vice versa, so that the user can use only the graphic and/or audio elements 31 that are associated with the user through a relationship 18 in the messages to be sent.
[0050]Preferentemente, el primer módulo desoftwareestá configurado para que, en la pantalla del dispositivo emisor 4 de un determinado usuario, se muestre un teclado que contiene únicamente los elementos gráficos y/o de audio 31 que están asociados con dicho usuario por medio de una relación de 18, es decir, para los que los usuarios han sido autorizados/habilitados como creador del elemento gráfico y/o de audio o, por ejemplo, porque lo han adquirido. Ventajosamente, el primer módulo desoftwareestá configurado para que los usuarios del sistema 2, identificados de este modo y ya registrados en el conjunto de datos de usuario 14, puedan subir al sistema de mensajería 2 (y, particularmente, enviar a la base de datos 12 de la unidad central 8), un elemento gráfico y/o de audio que hayan creado; en concreto, en tal caso, el segundo módulo desoftware(cargado y ejecutándose en la unidad central 8) está configurado para crear una nueva relación 18 (preferiblemente de primer tipo anteriormente definido) que asocia el código de identificación unívoco 31 del elemento gráfico y/o de audio 31 subido de este modo con el código de identificación del usuario.[0050] Preferably, the firstsoftware module is configured so that, on the screen of the sending device 4 of a certain user, a keyboard is displayed that contains only the graphic and/or audio elements 31 that are associated with said user by through a ratio of 18, that is, for which the users have been authorized/enabled as the creator of the graphic and/or audio element or, for example, because they have acquired it. Advantageously, the firstsoftware module is configured so that the users of the system 2, identified in this way and already registered in the user data set 14, can upload to the messaging system 2 (and, in particular, send to the database data 12 from the central unit 8), a graphic and/or audio element that they have created; specifically, in such a case, the secondsoftware module (loaded and running in the central unit 8) is configured to create a new relation 18 (preferably of the first type previously defined) that associates the unique identification code 31 of the graphic element and /o of audio 31 uploaded in this way with the user identification code.
[0051]Ventajosamente, el primer módulo desoftwareestá configurado para que los usuarios del sistema 2, identificados de este modo y ya registrados en el conjunto de datos de usuario 14, puedan preguntar para obtener la autorización/permiso (p. ej., por medio de una adquisición directa o indirecta, sin cargo o tras el pago de una tasa) para utilizar un elemento gráfico y/o de audio creado por otros usuarios en un mensaje que se quiere enviar; en concreto, también en tal caso, el segundo módulo desoftwareestá configurado para crear una nueva relación 18 (preferiblemente del segundo tipo anteriormente definido) que asocia el código de identificación unívoco 31 del elemento gráfico y/o de audio 31 autorizado/habilitado de este modo con el código de identificación del usuario.[0051] Advantageously, the firstsoftware module is configured so that the users of the system 2, identified in this way and already registered in the user data set 14, can ask for authorization/permission (eg, by means of a direct or indirect acquisition, free of charge or upon payment of a fee) to use a graphic and/or audio element created by other users in a message to be sent; specifically, also in such a case, the secondsoftware module is configured to create a new relationship 18 (preferably of the second type previously defined) that associates the unique identification code 31 of the graphic and/or audio element 31 authorized/enabled this mode with the user identification code.
[0052]En concreto, el primer módulo desoftwaretambién está configurado para enviar mensajes de texto 60 enviando una solicitud a la unidad central 8 (servidor) basándose en un protocolo de comunicación, preferiblemente HTTPS. Ventajosamente, esta solicitud se realiza por medio del método POST para enviar una estructura de datos 20 a la unidad central 8 sin que se muestre en la cadena de consulta; no obstante, dicha solicitud también podría realizarse por medio del método GET, pasando así los datos en la cadena de búsqueda.[0052] Specifically, the firstsoftware module is also configured to send text messages 60 by sending a request to the central unit 8 (server) based on a communication protocol, preferably HTTPS. Advantageously, this request is made by means of the POST method to send a data structure 20 to the central unit 8 without showing it in the query string; however, such a request could also be made via the GET method, thus passing the data in the search string.
[0053]De manera apropiada, la estructura de datos 20 (denominada "$data" en la figura 3), que se genera mediante el primer módulo desoftware,contiene todos los datos/valores/campos de registro que se envían como entrada al segundo módulo desoftware,que se carga y se ejecuta en el procesador 10 de la unidad central 8.[0053] Appropriately, the data structure 20 (named "$data" in Figure 3), which is generated by the firstsoftware module, contains all the data/values/record fields that are sent as input to the secondsoftware module, which is loaded and executed in the processor 10 of the central unit 8.
[0054]Con más detalle, como se muestra en la figura 3, la estructura de datos 20 contiene los siguientes campos:[0054] In more detail, as shown in Figure 3, the data structure 20 contains the following fields:
- el campo del código de identificación de la conversación ("id_conversation")y/o del receptor 24 (es decir,"id_receiver"),- the identification code field of the conversation ("id_conversation") and/or of the receiver 24 (that is,"id_receiver"),
-el campo de texto del mensaje 26 (es decir,"Text").- the message text field 26 (ie"Text").
[0055]Convenientemente, en una forma de realización, la estructura de datos 20 también puede contener un campo que identifique al emisor 22 (esto es,"id_sender").[0055] Conveniently, in one embodiment, the data structure 20 may also contain a field that identifies the sender 22 (ie,"id_sender").
[0056]En concreto, el campo de texto 26 contiene tanto texto 39 (es decir, el conjunto de palabras que forman el mensaje) como el código de identificación unívoco 30 de un elemento gráfico y/o de audio 31. De manera apropiada, este código de identificación unívoco 30, que se inserta en el campo de texto 26, está situado adecuadamente antes y/o después, entre marcas/caracteres/símbolos precodificados 28. Con más detalle, como se muestra en la figura 3, el código de identificación "123" de un primer elemento gráfico se inserta entre los caracteres precodificados "&#", y se aplica lo mismo para el código de identificación "456" de un segundo elemento gráfico.[0056] Specifically, the text field 26 contains both text 39 (that is, the set of words that make up the message) and the unique identification code 30 of a graphic and/or audio element 31. Appropriately, this unique identification code 30, which is inserted in the text field 26, is suitably placed before and/or after, between pre-coded marks/characters/symbols 28. In more detail, as shown in figure 3, the identification code The identification code "123" of a first graphic element is inserted between the pre-encoded characters "&#", and the same applies for the identification code "456" of a second graphic element.
[0057]Ventajosamente, la estructura de datos 20 también comprende un campo para identificar unívocamente el bocadillo 32 (es decir,"ID_balloon")y un campo para identificar unívocamente el avatar 34 (es decir,"ID_avatar").Ventajosamente, la estructura de datos también comprende un campo para definir el tipo de mensaje 36 (es decir,"Message Type")y para indicar si es un mensaje enviado a un único receptor o a múltiples receptores.[0057] Advantageously, the data structure 20 also comprises a field to uniquely identify the balloon 32 (ie"ID_balloon") and a field to uniquely identify the avatar 34 (ie"ID_avatar"). Advantageously, the data structure also comprises a field to define the type of message 36 (ie,"Message Type") and to indicate whether it is a message sent to a single recipient or to multiple recipients.
[0058]De manera apropiada, el primer módulo desoftwareestá configurado para asignar a los campos 22, 24, 26, 32, 34 y 36 de la estructura de datos 20 los correspondientes valores 38 que están configurados y seleccionados por el usuario interactuando con la interfaz gráfica del dispositivo emisor 4 cuando se prepara y se envía un mensaje 60 y/o se definen automáticamente mediante el propio módulo desoftware.Por ejemplo, el campo de identificación del receptor 24 y el campo del mensaje de texto 26 se rellenan en función de lo que elige el usuario interactuando con la interfaz gráfica del dispositivo, mientras que el campo de identificación del emisor 22 (si se proporciona) puede rellenarse directamente y automáticamente mediante el módulo desoftwarede acuerdo con las configuraciones por defecto en el dispositivo.[0058] Appropriately, the firstsoftware module is configured to assign to the fields 22, 24, 26, 32, 34 and 36 of the data structure 20 the corresponding values 38 that are configured and selected by the user interacting with the graphical interface of the sending device 4 when a message 60 is prepared and sent and/or are automatically defined by thesoftware module itself. For example, the recipient identification field 24 and the text message field 26 are populated based on what the user chooses by interacting with the device's graphical interface, while the sender identification field 22 (if provided) it can be filled directly and automatically by thesoftware module according to the default settings in the device.
[0059]Como se menciona, el segundo módulo desoftwarese carga y se ejecuta en el ordenador 10 de la unidad central 8.[0059] As mentioned, the secondsoftware module is loaded and executed on the computer 10 of the central unit 8.
[0060]Ventajosamente, en una forma de realización preferida, el primer módulo desoftwarecargado en el dispositivo emisor 4 y el segundo módulo desoftwarecargado en la unidad central 8 también está configurado para implementar una arquitectura/proceso para la autentificación del usuario emisor (véase la fig. 12) que está utilizando el sistema de mensajería 2, y esto para garantizar la corrección de la identidad del usuario emisor en el sistema de mensajería de acuerdo con la invención.[0060] Advantageously, in a preferred embodiment, the firstsoftware module loaded in the issuing device 4 and the secondsoftware module loaded in the central unit 8 is also configured to implement an architecture/process for the authentication of the issuing user (see fig. 12) that the messaging system 2 is using, and this to guarantee the correctness of the identity of the sending user in the messaging system according to the invention.
[0061]En concreto, para implementar dicho proceso de autentificación del usuario emisor, el primer y el segundo módulo desoftwareestán configurados para realizar las siguientes acciones:[0061] Specifically, to implement said issuing user authentication process, the first and secondsoftware modules are configured to perform the following actions:
- el primer módulo desoftwaredel dispositivo emisor 4 envía los datos (nombre de usuario y contraseña), que introducen los usuarios interactuando en su dispositivo emisor (4), cuando estos acceden al sistema de mensajería 2, al segundo módulo desoftwarede la unidad central 8,- the firstsoftware module of the sending device 4 sends the data (user name and password), which are entered by users interacting with their sending device (4), when they access the messaging system 2, to the secondsoftware module of the mainframe 8,
- el segundo módulo desoftwarede la unidad central 8 verifica los datos recibidos (es decir, controla, preferiblemente consultando el conjunto de datos de usuario 14, si en conjunto corresponden a un usuario que ya está registrado en el sistema de mensajería), extrae el código de identificación ID del usuario correspondiente y genera un correspondiente objeto de equipo X que contiene dicho código, entre otros datos,- the secondsoftware module of the central unit 8 verifies the received data (that is, it checks, preferably by consulting the set of user data 14, if they altogether correspond to a user who is already registered in the messaging system), extracts the identification code ID of the corresponding user and generates a corresponding equipment object X containing said code, among other data,
- el segundo módulo desoftwarede la unidad central 8 cifra el objeto de equipo X con una clave privada, generando así el objeto de equipo cifrado Y,- the secondsoftware module of the central unit 8 encrypts the equipment object X with a private key, thus generating the encrypted equipment object Y,
- el segundo módulo desoftwarede la unidad central 8 envía el objeto de equipo cifrado Y al primer módulo desoftwaredel dispositivo emisor 4, que lo almacena temporalmente.- the secondsoftware module of the central unit 8 sends the encrypted equipment object Y to the firstsoftware module of the sending device 4, which stores it temporarily.
[0062]De manera apropiada, las siguientes operaciones se llevan a cabo cuando un usuario envía (por medio del dispositivo emisor 4) un mensaje de texto 60:[0062] Appropriately, the following operations are performed when a user sends (via sending device 4) a text message 60:
- el primer módulo desoftwareenvía tanto la estructura de datos 20 como el objeto de equipo cifrado Y previamente recibido a la unidad central 8,- the firstsoftware module sends both the data structure 20 and the previously received encrypted equipment object Y to the central unit 8,
- el segundo módulo desoftwarede la unidad central 8, preferiblemente antes de procesar la estructura de datos 20, descifra el objeto de equipo cifrado Y y extrae, por lo tanto, el objeto de equipo X que contiene el ID del usuario, - el segundo módulo desoftwarede la unidad central 8 procesa la estructura de datos 20, teniendo también a su disposición el código de identificación ID del usuario.- the secondsoftware module of the central unit 8, preferably before processing the data structure 20, decrypts the encrypted equipment object Y and thus extracts the equipment object X containing the user ID, - the secondsoftware module of the central unit 8 processes the data structure 20, also having at its disposal the identification code ID of the user.
[0063]De manera apropiada, se entiende que si la estructura de datos 20 no contiene el campo del código de identificación del emisor 22 en esta. Ventajosamente, de este modo, únicamente la unidad central 8 conoce, posee, extrae y verifica los códigos de identificación ID de los correspondientes usuarios, de manera que el primer módulo desoftwaredel dispositivo emisor 4 no tiene que recuperar y enviar (en texto plano, es decir, de manera no cifrada) el código del usuario emisor a la unidad central 8, con el posible riesgo de sufrir alteraciones o modificaciones en el lado del cliente. Por lo tanto, para cada estructura de datos 20 y, en consecuencia, por cada mensaje enviado, la unidad central 8 puede deducir en cierto modo (y sin la posibilidad/riesgo de alteraciones) quién es el usuario emisor de dicho mensaje, autentificando así la identidad del usuario y garantizando también que el usuario está registrado en el sistema de mensajería 2.[0063] Appropriately, it is understood that if the data structure 20 does not contain the issuer identification code field 22 in it. Advantageously, in this way, only the central unit 8 knows, possesses, extracts and verifies the identification codes ID of the corresponding users, so that the firstsoftware module of the sending device 4 does not have to retrieve and send (in plain text , that is, in an unencrypted manner) the code of the issuing user to the central unit 8, with the possible risk of being altered or modified on the client side. Therefore, for each data structure 20 and, consequently, for each message sent, the central unit 8 can deduce in a certain way (and without the possibility/risk of alterations) who is the sending user of said message, thus authenticating the identity of the user and also ensuring that the user is registered in the messaging system 2.
[0064]Ventajosamente, como comprobación de seguridad adicional (véase la fig. 11) para impedir que los usuarios del sistema de mensajería 2 utilicen elementos gráficos y/o de audio 31 para los que no estén correctamente o realmente autorizados/habilitados en los mensajes que se quieren enviar, el segundo módulo desoftwarecargado y en la unidad central 8 está configurado para:[0064] Advantageously, as an additional security check (see Fig. 11) to prevent users of the messaging system 2 from using graphic and/or audio elements 31 for which they are not correctly or actually authorized/enabled in the messages to be sent, the secondsoftware module loaded and in the central unit 8 is configured to:
- extraer el código de identificación unívoco 30 de un elemento gráfico y/o de audio 31 de la estructura de datos 20 (que se envió a dicha unidad 8 mediante el dispositivo emisor 4),- extracting the unique identification code 30 of a graphic and/or audio element 31 of the data structure 20 (which was sent to said unit 8 by means of the sending device 4),
- verificar si el usuario que ha enviado la estructura de datos 20 (y cuyo código de identificación ID se ha recuperado preferiblemente durante la etapa de autentificación anteriormente descrita) está habilitado/autorizado para utilizar/insertar el elemento gráfico y/o de audio 31 asociado con el código de identificación unívoco 30 previamente extraído en los mensajes que se quieren enviar; en concreto, para tal fin, se consulta la base de datos 12 para verificar si hay alguna relación 18 que asocie el código de identificación del usuario que ha enviado la estructura de datos 20 utilizando el dispositivo emisor 4 (y cuyos datos se derivan del conjunto de datos de usuario 14) y el código de identificación unívoco 30 que se ha extraído mediante la estructura 20 (y cuyos datos se derivan del conjunto de datos de elemento 16); con más detalle, por ejemplo, se puede ejecutar una primera consulta para verificar si hay un primer tipo de relación 18 (es decir, si el usuario es el sujeto que ha creado/cargado el elemento gráfico y/o de audio en el sistema de mensajería 2), y solo en caso de que el resultado de dicha primera consulta sea negativo, se ejecuta una segunda pregunta para verificar si existe un segundo tipo de relación 18 (esto es, si el usuario ha sido habilitado/autorizado a utilizar el elemento gráfico y/o de audio en el sistema de mensajería 2, por ejemplo, como resultado de una compra);- verify if the user who has sent the data structure 20 (and whose identification code ID has preferably been retrieved during the authentication stage described above) is enabled/authorized to use/insert the associated graphic and/or audio element 31 with the unique identification code 30 previously extracted from the messages to be sent; specifically, for this purpose, the database 12 is consulted to verify if there is any relationship 18 that associates the identification code of the user who has sent the data structure 20 using the sending device 4 (and whose data is derived from the set user data set 14) and the unique identification code 30 that has been extracted by the structure 20 (and whose data is derived from the element data set 16); in more detail, for example, a first query can be executed to check if there is a first type of relationship 18 (that is, if the user is the subject that has created/loaded the graphic and/or audio element in the messaging system 2), and only in case the result of said first query is negative, a second question is executed to check if a second type of relationship 18 exists (that is, if the user has been enabled/authorized to use the graphic and/or audio element in the messaging system 2, for example, as a result of A purchase);
- si el resultado de la comprobación es positivo, entonces el método continua el procesamiento de la solicitud enviada por el dispositivo emisor para devolver un paquete de datos estructurado 40 en un formato adecuado para el intercambio de datos; por el contrario, en cambio, en caso de resultado negativo en la comprobación, el procesamiento de la solicitud enviada por el dispositivo emisor 4 se interrumpe/bloquea y, de manera apropiada, puede enviarse automáticamente una alerta correspondiente a este.- if the result of the check is positive, then the method continues processing the request sent by the sending device to return a structured data packet 40 in a format suitable for data exchange; on the contrary, instead, in case of a negative result in the check, the processing of the request sent by the sending device 4 is interrupted/blocked and, appropriately, a corresponding alert can be automatically sent to it.
[0065]En concreto, como se ha mencionado, el segundo módulo desoftwareestá configurado para procesar la solicitud enviada por el dispositivo emisor y devolver así un paquete de datos estructurado 40 en un formato apropiado para el intercambio de datos. Preferentemente, el paquete de datos 40 está en formato "json", pero también puede estar en otros formatos, por ejemplo, "yaml" o "xml".[0065] Specifically, as mentioned, the secondsoftware module is configured to process the request sent by the sending device and thus return a structured data packet 40 in an appropriate format for data exchange. Preferably, data packet 40 is in "json" format, but may also be in other formats, eg, "yaml" or "xml".
[0066]Particularmente, el paquete de datos 40 contiene una serie de campos 42 a los que se asignan de manera apropiada los valores 38 de los campos de la estructura de datos 20 enviada por el dispositivo emisor 4 y/o a los que se asignan los valores derivados automáticamente del segundo módulo desoftware.Preferiblemente, el paquete de datos 40 comprende los datos del mensaje 60 creado por el emisor y necesarios para transmitir correctamente dicho mensaje al receptor y para permitir que este visualice el mensaje 60 en su dispositivo.[0066] In particular, the data packet 40 contains a series of fields 42 to which the values 38 of the fields of the data structure 20 sent by the sending device 4 are assigned in an appropriate manner and/or to which the values 38 are assigned. automatically derived values from the secondsoftware module. Preferably, the data packet 40 comprises the data of the message 60 created by the sender and necessary to correctly transmit said message to the recipient and to enable the recipient to view the message 60 on his device.
[0067]Con más detalle, como se muestra en la figura 4, el paquete de datos estructurado 40 comprende los siguientes campos:[0067] In more detail, as shown in Figure 4, the structured data packet 40 comprises the following fields:
- un campo de ID 42, que identifica unívocamente el paquete de datos 40 (es decir, el campo"IDmessage")y que se rellena automáticamente mediante el segundo módulo desoftwareasignando un código aleatorio numérico o alfanumérico o por defecto,- an ID field 42, which uniquely identifies the data packet 40 (ie the"IDmessage" field) and which is automatically filled in by the secondsoftware module by assigning a random numeric or alphanumeric code or by default,
- un campo de emisor 44 (es decir, el campo"MessageFrom")al que se le asigna el valor del campo de emisor 22 de la estructura de datos 20 o, preferiblemente, el valor del código ID que identifica al correspondiente usuario emisor obtenido por la unidad central 8 partiendo del objeto de equipo cifrado Y, así como, preferiblemente, proporcionado en el proceso de autentificación anteriormente descrito y que se muestra en la figura 12.- a sender field 44 (that is, the"MessageFrom" field) to which is assigned the value of the sender field 22 of the data structure 20 or, preferably, the value of the ID code that identifies the corresponding sending user obtained by the central unit 8 starting from the encrypted equipment object Y, as well as, preferably, provided in the authentication process described above and shown in figure 12.
- un campo de receptor 46 (es decir, el campo"MessageTo")y al que se le asigna el valor del campo de receptor 24 de la estructura de datos 20,- a receiver field 46 (ie the"MessageTo" field) and assigned the value of the receiver field 24 of the data structure 20,
- un campo 48 relacionado con el cuerpo del mensaje (esto es, el campo"MessageBody")y que contiene el valor 38 del campo de mensaje de texto 26 de la estructura de datos 20 y preferiblemente también la etiqueta (marca) 49 de este campo; ventajosamente, el campo de cuerpo de mensaje 48 también contiene tanto la etiqueta (marca) 49 como los correspondientes valores 38 del campo de identificación del avatar 32 y del campo de identificación del bocadillo 34 de la estructura de datos 20.- a field 48 related to the body of the message (that is, the"MessageBody" field) and containing the value 38 of the text message field 26 of the data structure 20 and preferably also the label (mark) 49 of this countryside; Advantageously, the message body field 48 also contains both the label (mark) 49 and the corresponding values 38 of the avatar identification field 32 and the bubble identification field 34 of the data structure 20.
[0068]Esencialmente, el paquete de datos estructurado 40 contiene un campo de cuerpo de mensaje 48, que contiene tanto las etiquetas 49 (es decir, los metadatos) de los campos de mensaje de texto 26, identificación del avatar 32 e identificación del bocadillo 34 de la estructura de datos 20, como los valores correspondientes 38 (es decir, los datos) asignados a estos campos dentro de la propia estructura.[0068] Essentially, the structured data packet 40 contains a message body field 48, which contains both the labels 49 (i.e., the metadata) of the text message 26, avatar 32, and speech bubble id fields. 34 of the data structure 20, as the corresponding values 38 (ie, the data) assigned to these fields within the structure itself.
[0069]Ventajosamente, el paquete de datos estructurado 40 también comprende un campo al que se le asignan los valores correspondientes de fecha y/u hora en la que el mensaje 60 ha sido enviado por el dispositivo emisor 6 y/o en la que la unidad central 8 recibió la estructura de datos 20.[0069] Advantageously, the structured data packet 40 also comprises a field to which are assigned the corresponding values of date and/or time in which the message 60 has been sent by the sending device 6 and/or in which the central unit 8 received data structure 20.
[0070]El primer módulo de software cargado y ejecutado en el dispositivo receptor 6 está configurado para descargar un paquete de datos estructurado 40 preparado por dicha unidad y dirigido a dicho dispositivo desde la unidad central 8. Preferiblemente, la descarga desde la unidad central 8 del paquete de datos estructurado 40 por el dispositivo receptor 6 o, en cualquier caso, la transmisión del paquete de datos estructurado 40 desde la unidad central 8 al dispositivo receptor 6, se realiza por medio de una arquitectura de transferencia de estado representacional (REST), preferiblemente, aunque no necesariamente, utilizada en un protocolo HTTPS.[0070] The first software module loaded and executed in the receiving device 6 is configured to download a structured data packet 40 prepared by said unit and directed to said device from the central unit 8. Preferably, the download from the central unit 8 of the structured data packet 40 by the receiving device 6 or, in any case, the transmission of the structured data packet 40 from the central unit 8 to the receiving device 6, is carried out by means of a representational state transfer (REST) architecture , preferably, but not necessarily, used in an HTTPS protocol.
[0071]Ventajosamente, el primer módulo de software cargado y ejecutado en el dispositivo receptor 6 puede estar configurado para acceder periódicamente, conforme a una frecuencia predefinida, a la unidad central 8 para consultar si uno más paquetes de datos estructurados 40 (es decir, mensajes) están presentes/disponibles para este, siguiendo así un modo de diálogo cliente-servidor denominado «sondeo» y, en caso positivo, descargar dicho paquete de datos estructurado 40 de la unidad central 8.[0071] Advantageously, the first software module loaded and executed in the receiving device 6 can be configured to periodically access, according to a predefined frequency, the central unit 8 to query if one or more structured data packets 40 (that is, messages) are present/available for it, thus following a client-server dialogue mode called "polling" and, if positive, download said structured data packet 40 from the central unit 8.
[0072]Preferiblemente, como se muestra en la figura 1, el sistema 2 de acuerdo con la invención comprende, además, una plataforma de notificación 50, como por ejemploGoogle Cloud MessagingoApple Push Notification Service,que actúa como mediador entre los dispositivos 4, 6 y la unidad central 8 y que está configurado para alertar a dichos dispositivos, de forma asíncrona, cuando hay nuevos datos dirigidos a estos y, por lo tanto, siguiendo un modo denominado «notificaciónpusho de inserción», disponibles en la unidad central. En concreto, a tal efecto, el segundo módulo de software también está configurado de manera que, tras haber procesado y preparado el paquete de datos estructurado 40 basándose en la estructura de datos 20 enviada por el dispositivo emisor 4, envía una alerta 52 en la plataforma de notificación 50, que está configurada, por lo tanto, para enviar dicha alerta al correspondiente dispositivo receptor 6. De manera apropiada, la alerta 52 que envía la unidad central 8 a la plataforma de notificación 50 comprende un código de identificación de la unidad central 8 que envía la alerta, el código de identificación del dispositivo receptor 6 al que se debe enviar la notificación, y el contenido de dicha alerta 52. De manera apropiada, el contenido de dicha alerta que se envía al dispositivo receptor comprende al menos el campo 42 que identifica unívocamente al paquete de datos estructurado 40, para permitir que el dispositivo receptor 6 que ha recibido dicha alerta 52 consulte directamente la unidad central 8 para descargar el paquete de datos estructurado 40 identificado mediante dicho código.[0072] Preferably, as shown in Figure 1, the system 2 according to the invention further comprises a notification platform 50, such asGoogle Cloud Messaging orApple Push Notification Service, which acts as a mediator between the devices 4, 6 and the central unit 8 and which is configured to alert said devices, asynchronously, when there is new data addressed to them and, therefore, following a mode called «push or insertion notification», available in the core unit. Specifically, for this purpose, the second software module is also configured in such a way that, after having processed and prepared the structured data packet 40 based on the data structure 20 sent by the sending device 4, it sends an alert 52 in the notification platform 50, which is therefore configured to send said alert to the corresponding receiving device 6. Appropriately, the alert 52 sent by the central unit 8 to the notification platform 50 comprises an identification code of the unit central 8 that sends the alert, the identification code of the receiving device 6 to which the notification should be sent, and the content of said alert 52. Appropriately, the content of said alert that is sent to the receiving device comprises at least the field 42 that uniquely identifies the structured data packet 40, to allow the receiving device 6 that has received said alert 52 to directly consult the central unit 8 to download the structured data packet 40 identified by said code.
[0073]También se entiende que, en una forma de realización no representada en el presente documento, la alerta 52 enviada por la unidad central a la plataforma de notificación 50, y desde esta al dispositivo receptor 6, comprende la totalidad del paquete de datos estructurado 40. Dicho de otro modo, la unidad central 8 envía inmediatamente al dispositivo receptor 6, por medio de la plataforma 50, la totalidad del paquete de datos estructurado 40, el cual, por lo tanto, es descargado localmente por el propio dispositivo sin tener que consultar directamente a la unidad central 8.[0073] It is also understood that, in an embodiment not represented here, the alert 52 sent by the central unit to the notification platform 50, and from there to the receiving device 6, comprises the entire data packet structured 40. In other words, the central unit 8 immediately sends to the receiving device 6, via platform 50, the entire structured data packet 40, which is therefore downloaded locally by the device itself without having to consult directly with the central unit 8.
[0074]Preferiblemente, el primer módulo desoftwarecargado en el dispositivo emisor 4 y/o el dispositivo receptor 6 está configurado para presentar un primer estado activo, en el que se establece y se mantiene una conexión bidireccional con la unidad central 8, y un segundo estado de reposo, en el que el dispositivo emisor 4 y/o el dispositivo receptor 6 no están conectados con la unidad central 8. Ventajosamente, el primer módulo desoftwaretambién está configurado para que, cuando esté en dicho primer estado activo, las consultas del dispositivo receptor 6 a la unidad central 8 no sean periódicas (es decir, conforme a un modo de «sondeo»), sino solo cuando reciba una alerta 52, preferentemente por medio de la plataforma de notificación 50 y de acuerdo con el modo denominado «notificación de inserción». Convenientemente, de manera correspondiente, cuando hay disponibles en la unidad central 8 nuevos datos dirigidos para un determinado dispositivo receptor 6 en el que el primer módulo desoftwareestá en un estado activo, el segundo módulo desoftwareestá configurado para enviar una alerta 52 a dicho dispositivo receptor 6 para consultar a la unidad central 8.[0074] Preferably, the firstsoftware module loaded in the sending device 4 and/or the receiving device 6 is configured to present a first active state, in which a bidirectional connection with the central unit 8 is established and maintained, and a second idle state, in which the transmitting device 4 and/or the receiving device 6 are not connected to the central unit 8. Advantageously, the firstsoftware module is also configured so that, when it is in said first active state, queries from the receiving device 6 to the central unit 8 are not periodic (that is, according to a «polling» mode), but only when it receives an alert 52, preferably through the notification platform 50 and in accordance with the mode called "push notification". Conveniently, correspondingly, when new targeted data is available at the central unit 8 for a given receiving device 6 in which the firstsoftware module is in an active state, the secondsoftware module is configured to send an alert 52 to said receiving device 6 to consult the central unit 8.
[0075]De manera adecuada, cuando hay disponibles en la unidad central 8 nuevos datos dirigidos para un determinado dispositivo receptor 6 en el que el primer módulo desoftwareestá en un estado de reposo, el segundo módulo desoftwaretambién está configurado para enviar una alerta 52 (preferiblemente por medio de la plataforma de notificación 50 y de acuerdo con el modo denominado «notificación de inserción») a dicho dispositivo receptor 6 para avisarle para que cambie al primer estado activo.[0075] Suitably, when new directed data is available in the central unit 8 for a given receiving device 6 in which the firstsoftware module is in an idle state, the secondsoftware module is also configured to send a alerting 52 (preferably via the notification platform 50 and according to the so-called "push notification" mode) to said receiving device 6 to notify it to switch to the first active state.
[0076]En esencia, de este modo, consulta a la unidad central 8 solo cuando hay nuevos datos para descargar, evitando así consultas periódicas e innecesarias; esto resulta particularmente ventajoso debido a que posibilita la reducción del tráfico de datos y, sobre todo, evita el consumo innecesario del ancho de banda de transmisión de datos.[0076] In essence, in this way, it consults the central unit 8 only when there is new data to download, thus avoiding periodic and unnecessary consultations; this is particularly advantageous because it makes it possible to reduce data traffic and, above all, avoids unnecessary consumption of data transmission bandwidth.
[0077]Ventajosamente, el dispositivo emisor 4 y/o receptor 6 comprende:[0077] Advantageously, the transmitter 4 and/or receiver 6 device comprises:
- una primera memoria local 90 en la que descargar y almacenar los códigos de identificación 30 de todos los elementos gráficos y/o de audio 31 que están asociados (por medio de una relación 18) con el código de identificación unívoco del usuario determinado que ha accedido al sistema de mensajería 2 utilizando dicho dispositivo emisor 4 y/o dicho dispositivo receptor 6.- a first local memory 90 in which to download and store the identification codes 30 of all the graphic and/or audio elements 31 that are associated (by means of a relationship 18) with the unique identification code of the determined user who has accessed the messaging system 2 using said sending device 4 and/or said receiving device 6.
- una segunda memoria local 91, en la que descargar y almacenar todos los elementos gráficos y/o de audio 31 correspondientes a los códigos de identificación 30 descargados y almacenados en la primera memoria.- a second local memory 91, in which to download and store all the graphic and/or audio elements 31 corresponding to the identification codes 30 downloaded and stored in the first memory.
[0078]Preferentemente, la primera y la segunda memoria local son ambas memorias masivas o memorias primarias o memorias RAM. Preferiblemente, la segunda memoria local 91 es de tipo caché.[0078] Preferably, the first and second local memories are both mass memories or primary memories or RAM memories. Preferably, the second local memory 91 is of the cache type.
[0079]En concreto, como se muestra en el diagrama de flujo en la figura 13, el primer módulo desoftwarecargado y ejecutado en el dispositivo emisor 4 y/o el dispositivo receptor 6 y el segundo módulo desoftwarecargado en la unidad central 8 también están configurados de manera que:[0079] Specifically, as shown in the flowchart in figure 13, the firstsoftware module loaded and executed in the sending device 4 and/or the receiving device 6 and the secondsoftware module loaded in the central unit 8 are also configured so that:
- el primer módulo desoftwaredel dispositivo emisor 4 envía los datos (nombre de usuario y contraseña), que introducen los usuarios interactuando con su dispositivo 4 y/o 6), cuando estos acceden al sistema de mensajería 2, a la unidad central 8- the firstsoftware module of the sending device 4 sends the data (user name and password), entered by users interacting with their device 4 and/or 6), when they access the messaging system 2, to the central unit 8
- el segundo módulo desoftwarede la unidad central 8 verifica los datos de acceso recibidos de este modo (es decir, comprueba, preferiblemente consultando el conjunto de datos de usuario 14, si en conjunto se corresponden con un usuario ya registrado en el sistema de mensajería), extrae el código de identificación ID del usuario correspondiente y, utilizando el código extraído de este modo, identifica los códigos de identificación unívocos 30' de todos los elementos gráficos y/o de audio 31' que están asociados, por medio de una relación 18, con el código de identificación ID de dicho usuario,- the secondsoftware module of the central unit 8 verifies the access data received in this way (that is, it checks, preferably by consulting the user data set 14, if altogether they correspond to a user already registered in the access system messaging), extracts the identification code ID of the corresponding user and, using the code thus extracted, identifies the unique identification codes 30' of all the graphic and/or audio elements 31' that are associated, by means of a relation 18, with the identification code ID of said user,
- el primer módulo desoftwaredel dispositivo emisor 4 descarga los códigos de identificación unívocos 30' de todos los elementos gráficos y/o de audio 31' identificados de este modo a la primera memoria local 90 del dispositivo 4 y/o 6,- the firstsoftware module of the sending device 4 downloads the unique identification codes 30' of all the graphic and/or audio elements 31' identified in this way to the first local memory 90 of the device 4 and/or 6,
- el primer módulo desoftwaredel dispositivo emisor 4 descarga los elementos gráficos y/o de audio 31' identificados de este modo a la segunda memoria local 91 del dispositivo 4 y/o 6.- the firstsoftware module of the sending device 4 downloads the graphic and/or audio elements 31' identified in this way to the second local memory 91 of the device 4 and/or 6.
[0080]Preferentemente, dichas operaciones se llevan a cabo en el momento del primer uso del sistema de mensajería 2, una vez que el primer módulo desoftware(app)se ha descargado e instalado en el dispositivo emisor 4 y/o el dispositivo receptor 6. Convenientemente, la sincronización preliminar del dispositivo emisor 4 y/o el dispositivo receptor 6 se realizan de la siguiente manera.[0080] Preferably, said operations are carried out at the time of the first use of the messaging system 2, once the firstsoftware module (app) has been downloaded and installed on the sending device 4 and/or the receiving device 6. Conveniently, the preliminary synchronization of the sending device 4 and/or the receiving device 6 is carried out as follows.
[0081]De manera apropiada, el primer módulo desoftwaredel dispositivo emisor 4 y/o el dispositivo receptor 6 está configurado para mostrar un teclado en la pantalla del propio dispositivo (y con el fin de crear un mensaje que se quiere enviar), que tiene acceso, tal y como se muestra en dicha pantalla, solo a los elementos gráficos y/o de audio 31' cuyos códigos de identificación unívocos 30' se almacenan en la primera memoria del propio dispositivo.[0081] Appropriately, the firstsoftware module of the sending device 4 and/or the receiving device 6 is configured to display a keyboard on the screen of the device itself (and in order to create a message to be sent), which has access, as shown on said screen, only to the graphic and/or audio elements 31' whose unique identification codes 30' are stored in the first memory of the device itself.
[0082]De manera adecuada, el primer módulo desoftwareque se ejecuta en el dispositivo receptor 4 está configurado para realizar las siguientes operaciones:[0082] Suitably, the firstsoftware module running on the receiving device 4 is configured to perform the following operations:
- recuperar una lista de los códigos de identificación unívocos 30' presentes en la primera memoria local 90 del dispositivo emisor 4,- retrieve a list of unique identification codes 30' present in the first local memory 90 of the sending device 4,
- utilizando dichos códigos 30', recuperar los correspondientes elementos gráficos y/o de audio 31' de la segunda memoria local 91 del dispositivo emisor 4,- using said codes 30', retrieve the corresponding graphic and/or audio elements 31' from the second local memory 91 of the emitting device 4,
- mostrar los elementos gráficos y/o de audio 31' recuperados de este modo en el teclado del dispositivo emisor 4.- displaying the graphic and/or audio elements 31' retrieved in this way on the keyboard of the sending device 4.
[0083]El primer módulo desoftwarecargado y ejecutado en el dispositivo receptor 6 también está configurado para procesar el paquete de datos estructurado 40 que se descarga desde la unidad central 8 para extraer/descodificar los contenidos de los campos 42, 44, 46 y 48 de dicho paquete.[0083] The firstsoftware module loaded and executed in the receiving device 6 is also configured to process the structured data packet 40 that is downloaded from the central unit 8 to extract/decode the contents of fields 42, 44, 46 and 48 of said package.
[0084]En concreto, este módulo desoftwareestá configurado para analizar los contenidos del campo de cuerpo del mensaje 48 del paquete de datos estructurado 40 para obtener los valores 38 de los campos de mensaje de texto 26, la identificación del bocadillo 32 y/o la identificación del avatar 32.[0084] Specifically, thissoftware module is configured to analyze the contents of the message body field 48 of the structured data packet 40 to obtain the values 38 of the text message fields 26, the identification of the speech bubble 32 and/or or avatar id 32.
[0085]Con más detalle, el primer módulo desoftwareestá configurado para:[0085] In more detail, the firstsoftware module is configured to:
- buscar, directamente dentro del campo de cuerpo del mensaje 48 del paquete de datos estructurado 40 y/o en el valor 38 en el campo de texto 26, una vez que este ha sido identificado por su etiqueta 49 dentro de campo de cuerpo del mensaje 48, las marcas/caracteres/símbolos precodificados 28 para identificar los códigos unívocos 30 de los elementos gráficos.- search, directly within the message body field 48 of the structured data packet 40 and/or in the value 38 in the text field 26, once it has been identified by its label 49 within the message body field 48, the pre-coded marks/characters/symbols 28 to identify the unique codes 30 of the graphic elements.
- comprobar si los elementos gráficos 31 identificados mediante los códigos unívocos extraídos 30 ya están presentes en la memoria local del dispositivo receptor 6; preferentemente, para tal fin, buscar los códigos de identificación unívocos 30' presentes en la primera memoria local 90 del dispositivo receptor 6 y, si no están ya presentes en la memoria local del dispositivo receptor 6, enviar una solicitud a la unidad central 8 para descargar los elementos gráficos 31" identificados mediante códigos unívocos 30 identificados en el paquete de datos estructurado 40 y no presentes en la primera memoria local 90 a la memoria local del dispositivo receptor 6, preferiblemente a la segunda memoria local 91 del dispositivo receptor 6.- check if the graphic elements 31 identified by the extracted unique codes 30 are already present in the local memory of the receiving device 6; preferably, for this purpose, search for the unique identification codes 30' present in the first local memory 90 of the receiving device 6 and, if they are not already present in the local memory of the receiving device 6, send a request to the central unit 8 to download the graphic elements 31" identified by unique codes 30 identified in the structured data packet 40 and not present in the first local memory 90 to the local memory of the receiving device 6, preferably to the second local memory 91 of the receiving device 6.
[0086]Por lo tanto, de manera apropiada, los elementos gráficos y/o de audio 31" que se descargan cuando se reciben determinados paquetes de datos estructurados 40 se almacenan también en la segunda memoria local 91 del dispositivo receptor 6, con el fin de visualizar siempre correctamente todos los elementos gráficos y/o de audio contenidos en el mensaje recibido.[0086] Therefore, appropriately, the graphic and/or audio elements 31" that are downloaded when certain structured data packets 40 are received are also stored in the second local memory 91 of the receiving device 6, in order to always correctly display all the graphic and/or audio elements contained in the received message.
[0087]Por lo tanto, de manera más detallada, los siguientes componentes se almacenan/conservan en la segunda memoria local 91 de cualquier dispositivo 4 y/o 6:[0087] Therefore, in more detail, the following components are stored/kept in the second local memory 91 of any device 4 and/or 6:
- un primer conjunto de elementos gráficos y/o de audio 31' cuyos códigos unívocos 30' están almacenados/presentes en la primera memoria local 90; en concreto, estos son elementos gráficos y/o de audio 31' que, en la base de datos central 12, están asociados con un determinado usuario por medio de una relación 18 porque dicho usuario los ha creado/subido al sistema de mensajería o porque el usuario ha sido autorizado/habilitado para usarlos (p. ej., tras una compra directa o indirecta),- a first set of graphic and/or audio elements 31' whose unique codes 30' are stored/present in the first local memory 90; specifically, these are graphic and/or audio elements 31' that, in the central database 12, are associated with a certain user through a relationship 18 because said user has created/uploaded them to the messaging system or because the user has been authorized/enabled to use them (eg, after a direct or indirect purchase),
- un segundo conjunto de elementos gráficos y/o de audio 31' cuyos códigos unívocos no están almacenados/presentes, en cambio, en la primera memoria local 90; en concreto, estos son elementos gráficos y/o de audio 31 que fueron descargados de la unidad central 8 cuando se recibe un determinado paquete de datos estructurado 40, y con el fin de mostrar correctamente todos los elementos gráficos y/o de audio contenidos en el mensaje recibido.- a second set of graphic and/or audio elements 31' whose unique codes are not stored/present, instead, in the first local memory 90; specifically, these are graphic and/or audio elements 31 that were downloaded from the central unit 8 when a certain structured data packet 40 is received, and in order to correctly display all the graphic and/or audio elements contained in the received message.
[0088]De manera apropiada, como se ha mencionado, el primer módulo desoftwaredel dispositivo emisor 4 y/o el dispositivo receptor 6 está configurado para mostrar un teclado en la pantalla del propio dispositivo (y con el fin de crear un mensaje que se quiere enviar) que tiene acceso y, por lo tanto, muestra en dicha pantalla, solo el primer conjunto de los elementos gráficos y/o de audio 31' presentes en la segunda memoria local 91 del dispositivo.[0088] Appropriately, as mentioned, the firstsoftware module of the sending device 4 and/or the receiving device 6 is configured to display a keyboard on the screen of the device itself (and in order to create a message that want to send) that has access and, therefore, shows on said screen, only the first set of graphic and/or audio elements 31' present in the second local memory 91 of the device.
[0089]Esto resulta particularmente ventajoso puesto que hace posible tener un sistema de mensajería en el que los usuarios pueden utilizar en los mensajes que se envían únicamente los elementos gráficos y/o de audio que ellos han creado o para los que están autorizados/habilitados (p. ej., como resultado de una compra), mientras que, al mismo tiempo, siempre pueden visualizar correctamente todos los elementos gráficos y/o de audio presentes en los mensajes que reciben.[0089] This is particularly advantageous since it makes it possible to have a messaging system in which users can use in the messages that are sent only the graphic and/or audio elements that they have created or for which they are authorized/enabled (eg, as a result of a purchase), while, at the same time, they can always correctly display all the graphic and/or audio elements present in the messages they receive.
[0090]Adecuadamente, de forma más detallada, la solicitud (que es enviada por el dispositivo receptor 6 a la unidad central 8 para descargar un elemento gráfico y/o de audio cuyo código de identificación 30 no está presente en la primera memoria local 90 del propio dispositivo) contiene el código unívoco 30 de dicho elemento gráfico y/o de audio, código que es utilizado después por el módulo desoftwarede la unidad central 8 para consultar a la base de datos 12 y extraer los datos del elemento gráfico identificado unívocamente con dicho código 30 del conjunto de datos de elemento 16. Por lo tanto, los datos del elemento gráfico identificado de este modo, y particularmente la imagen real 31 asociada con el código de identificación identificado 30, se envían mediante la unidad central 8 al dispositivo solicitante.[0090] Suitably, in more detail, the request (which is sent by the receiving device 6 to the central unit 8 to download a graphic and/or audio element whose identification code 30 is not present in the first local memory 90 of the device itself) contains the unique code 30 of said graphic and/or audio element, a code that is later used by thesoftware module of the central unit 8 to consult the database 12 and extract the data of the graphic element uniquely identified with said code 30 of the element data set 16. Therefore, the data of the graphic element identified in this way, and particularly the real image 31 associated with the identified identification code 30, is sent by means of the central unit 8 to the requesting device.
[0091]Adecuadamente, para este propósito, el primer módulo desoftwaredel dispositivo solicitante está configurado para enviar una solicitud, por medio del método POST del protocolo HTTPS, a la unidad central 8 y descargar así a la memoria local del dispositivo solicitante, y en concreto a la segunda memoria local 91, el elemento gráfico 31" identificado por el código unívoco 30 presente en el campo de cuerpo de mensaje 48 del paquete de datos estructurado 40. Preferiblemente, el elemento gráfico 31" puede ser una imagen 33 que se inserta, ya sea con o en un posible texto 39, en el bocadillo del mensaje 60, preferiblemente, aunque no necesariamente, para representar un concepto o una emoción, de manera sustancialmente correspondiente a los emojis.[0091] Suitably, for this purpose, the firstsoftware module of the requesting device is configured to send a request, by means of the POST method of the HTTPS protocol, to the central unit 8 and thus download to the local memory of the requesting device, and specifically to the second local memory 91, the graphic element 31" identified by the univocal code 30 present in the message body field 48 of the structured data packet 40. Preferably, the graphic element 31" can be an image 33 that is displayed inserted, either with or in possible text 39, in the message bubble 60, preferably, but not necessarily, to represent a concept or an emotion, substantially corresponding to emojis.
[0092]En consecuencia, el primer módulo desoftwareestá configurado para solicitar y descargar desde la unidad central 8 la imagen del avatar 35 correspondiente a la identificación del avatar 34 y/o al tipo de bocadillo 37 correspondiente a la identificación de bocadillo 32 contenida en el campo de cuerpo de mensaje 48 del paquete de datos estructurado 40 descargado desde la unidad central 8 si no están ya presentes en la memoria local del dispositivo receptor.[0092] Consequently, the firstsoftware module is configured to request and download from the central unit 8 the image of the avatar 35 corresponding to the identification of the avatar 34 and/or the type of sandwich 37 corresponding to the identification of the sandwich 32 contained in the message body field 48 of the structured data packet 40 downloaded from the central unit 8 if they are not already present in the local memory of the receiving device.
[0093]Adecuadamente, la identificación del avatar 34 y/o la identificación del bocadillo 32 pueden gestionarse, como se ha descrito anteriormente, por medio de campos de estructura de datos apropiados 20 o pueden insertarse directamente en el campo de texto 26 de dicha estructura de datos situada de manera apropiada entre las etiquetas/caracteres/símbolos precodificados 28. De manera adecuada, pueden utilizarse varios caracteres/etiquetas/símbolos precodificados 28, por ejemplo, tales como "&#", "&%" y "&A" para pasar también los valores de identificación del avatar 34 y los valores de la identificación del bocadillo 32 al campo de texto 26 de la estructura de datos 20, además de los valores de las imágenes 33 que se muestran junto con el texto 39 dentro del bocadillo.[0093] Suitably, the avatar identification 34 and/or the speech bubble identification 32 may be managed, as described above, by means of appropriate data structure fields 20 or may be inserted directly into the text field 26 of said structure. appropriately located between the pre-encoded labels/characters/symbols 28. Suitably, various pre-encoded characters/labels/symbols 28 may be used, for example, such as "&#", "&%" and "&A" to also passing the avatar id values 34 and the bubble 32 id values to the text field 26 of the data structure 20, in addition to the values of the images 33 displayed along with the text 39 within the bubble.
[0094]En función del contenido de los campos del paquete de datos estructurado 40 y utilizando la imagen 33 que se va a insertar junto con el texto en el bocadillo, la imagen del avatar 35 y/o la imagen del bocadillo 37 (que ya están presentes en la memoria local del dispositivo receptor 6 o que han sido descargadas a este mediante consultas apropiadas a la unidad central 8), el primer módulo desoftwareestá configurado para componer y mostrar de manera adecuada el mensaje 60 con los correspondientes elementos gráficos, como la imagen 33 que se quiere insertar en el bocadillo, la imagen del avatar 35 y/o la imagen del bocadillo 37, en la pantalla 62 de visualización del dispositivo receptor 6.[0094] Depending on the content of the fields of the structured data packet 40 and using the image 33 to be inserted together with the text in the speech bubble, the image of the avatar 35 and/or the image of the speech bubble 37 (already are present in the local memory of the receiving device 6 or that have been downloaded to it by means of appropriate queries to the central unit 8), the firstsoftware module is configured to compose and adequately display the message 60 with the corresponding graphic elements, such as the image 33 to be inserted in the speech bubble, the avatar image 35 and/or the speech bubble image 37, on the display screen 62 of the receiving device 6.
[0095]En concreto, como se muestra en la figura 9, en la pantalla del dispositivo receptor 6 se muestra la imagen 33 junto con el texto 39 del mensaje 60 dentro del bocadillo particular 37 seleccionado por el usuario emisor. Además, en la pantalla 62 de visualización del dispositivo receptor 6, el bocadillo 37 está situado cerca y/o conectado gráficamente a la imagen del avatar 35 utilizado por el usuario emisor en esa conversación.[0095] Specifically, as shown in Figure 9, the screen of the receiving device 6 shows the image 33 together with the text 39 of the message 60 within the particular speech bubble 37 selected by the sending user. Furthermore, on the display screen 62 of the receiving device 6, the bubble 37 is located close to and/or graphically connected to the image of the avatar 35 used by the sending user in that conversation.
[0096]Se entiende también que el sistema 2 anteriormente descrito puede contemplar la gestión/personalización/selección únicamente de las imágenes 33 que se quiere insertar junto con el texto 39 del mensaje 60 o incluso únicamente las imágenes del avatar 35 o las imágenes del bocadillo 37.[0096] It is also understood that the system 2 described above can contemplate the management/personalization/selection only of the images 33 to be inserted together with the text 39 of the message 60 or even only the images of the avatar 35 or the images of the speech bubble 37.
[0097]También se entiende que el mensaje 60 gestionado por el sistema de mensajería 2 puede ser solo texto 39 o tener solo elementos gráficos y/o de audio 31 (en forma de imágenes que pueden insertarse en el bocadillo, de un bocadillo con el interior vacío, o imágenes del avatar sin bocadillo) o, preferentemente, una combinación apropiada de texto 39 y dichos elementos gráficos y/o de audio 31.[0097] It is also understood that the message 60 managed by the messaging system 2 can be only text 39 or have only graphic and/or audio elements 31 (in the form of images that can be inserted in the speech bubble, of a speech bubble with the empty interior, or avatar images without speech bubble) or, preferably, an appropriate combination of text 39 and said graphic and/or audio elements 31.
[0098]El funcionamiento del sistema de mensajería descrito en el presente documento proporciona una secuencia de etapas que se enumeran y describen a continuación.[0098] The operation of the messaging system described herein provides a sequence of steps that are listed and described below.
[0099]Preliminarmente, para poder utilizar el sistema de mensajería, el usuario debe descargar e instalar el primer módulo desoftwareen un dispositivo 4 y/o 6. Posteriormente, el usuario debe ejecutar el primer módulo de software en dicho dispositivo, iniciar sesión para activar la etapa de sincronización del dispositivo y descargar así localmente (preferiblemente en la primera memoria local 90 y en la segunda memoria local 91, respectivamente) los códigos de identificación unívocos 30' asociados con el código de identificación unívoco del usuario que ha iniciado sesión y los elementos gráficos y/o de audio 31 identificados unívocamente mediante dichos códigos 30'.[0099] Initially, in order to use the messaging system, the user must download and install the firstsoftware module on a device 4 and/or 6. Subsequently, the user must run the first software module on said device, log in to activate the synchronization step of the device and thus download locally (preferably in the first local memory 90 and in the second local memory 91, respectively) the unique identification codes 30' associated with the unique identification code of the logged in user and the graphic and/or audio elements 31 uniquely identified by said codes 30'.
[0100]De manera adecuada, el proceso de comprobación y autentificación anteriormente descrito y representado preferiblemente en el diagrama de flujo de la figura 12 también se activan cuando el usuario inicia sesión en el sistema de mensajería 2.[0100] Suitably, the verification and authentication process described above and preferably represented in the flowchart of figure 12 are also activated when the user logs into the messaging system 2.
[0101]Preliminarmente, interactuando con los medios de entrada de la interfaz gráfica del dispositivo emisor, el usuario, además de definir el texto 39 del mensaje 60, selecciona/elige el avatar 35 (véase la figura 5) y/o el bocadillo 37 (véase la figura 8) que se utiliza para ese mensaje y selecciona/examina la imagen/símbolo 33 que se inserta en ese mensaje (véase la figura 7).[0101] Initially, interacting with the input means of the graphical interface of the sending device, the user, in addition to defining the text 39 of the message 60, selects/chooses the avatar 35 (see figure 5) and/or the speech bubble 37 (see figure 8) that is used for that message and selects/examines the image/symbol 33 that is inserted in that message (see figure 7).
[0102]En función de lo definido e insertado por el usuario, el primer módulo desoftwaredel dispositivo emisor 4 genera la estructura de datos 20, asignando de manera apropiada los valores correspondientes 38 a los campos 22, 24, 26, 32, 34 y 36 de estos, y envía una solicitud que contiene la estructura de datos creada de este modo al segundo módulo desoftwarede la unidad central 8.[0102] Depending on what is defined and inserted by the user, the firstsoftware module of the sending device 4 generates the data structure 20, appropriately assigning the corresponding values 38 to the fields 22, 24, 26, 32, 34 and 36 of these, and sends a request containing the data structure thus created to the secondsoftware module of the central unit 8.
[0103]De manera apropiada, el segundo módulo desoftwareprocesa la solicitud enviada por el dispositivo emisor 4 y prepara un paquete de datos estructurado 20 en un formato apropiado para el intercambio de datos.[0103] Appropriately, the secondsoftware module processes the request sent by the sending device 4 and prepares a structured data packet 20 in an appropriate format for data exchange.
[0104]Asimismo, en función del código de identificación del receptor 24, la unidad central 8 prepara y envía una correspondiente alerta 52 a la plataforma de notificación 50 a la que pertenece el dispositivo receptor 6.[0104] Likewise, based on the identification code of the receiver 24, the central unit 8 prepares and sends a corresponding alert 52 to the notification platform 50 to which the receiving device 6 belongs.
[0105]Convenientemente, en el caso de múltiples receptores, para cada código de identificación del receptor 24, la unidad central 8 prepara y envía una correspondiente alerta 52 a la plataforma de notificación 50 a la que pertenece el dispositivo receptor 6.[0105] Conveniently, in the case of multiple receivers, for each receiver identification code 24, the central unit 8 prepares and sends a corresponding alert 52 to the notification platform 50 to which the receiving device 6 belongs.
[0106]El contenido de la alerta 52 se envía entonces mediante la plataforma de notificación 50 al dispositivo receptor 6, que utiliza entonces el contenido de dicha alerta para consultar directamente a la unidad central 8 y descargar el paquete de datos estructurado correspondiente 40 preparado por el segundo módulo desoftwarey dirigido para este.[0106] The content of the alert 52 is then sent via the notification platform 50 to the receiving device 6, which then uses the content of said alert to directly query the central unit 8 and download the corresponding structured data packet 40 prepared by the secondsoftware module and directed for it.
[0107]En ausencia de la alerta 52, o además de la alerta 52 enviada por la plataforma de notificación 50, el primer módulo desoftwarepuede acceder periódicamente a la unidad central 8 para consultar la posible presencia/disponibilidad de uno o más paquetes de datos estructurados 40 (es decir, mensajes) para esta y, en caso afirmativo, descargar dicho paquete de datos estructurado de la unidad central 8.[0107] In the absence of the alert 52, or in addition to the alert 52 sent by the notification platform 50, the firstsoftware module can periodically access the central unit 8 to consult the possible presence/availability of one or more packages of structured data 40 (ie messages) for it and, if so, downloading said structured data packet from the central unit 8.
[0108]A continuación, una vez que el dispositivo receptor 6 ha descargado el paquete de datos estructurado 40, el módulo desoftwarecargado y ejecutado en dicho dispositivo lo procesa y descompone para extraer/descodificar el contenido de los campos en este paquete 40. En concreto, los valores del campo de mensaje 26 y los campos de identificación del bocadillo 32 y/o identificación del avatar 34 se extraen del campo de cuerpo del mensaje 48 del paquete de datos estructurado 40.[0108] Next, once the receiving device 6 has downloaded the structured data packet 40, thesoftware module loaded and executed on said device processes and decomposes it to extract/decode the content of the fields in this packet 40. Specifically, the values of the message field 26 and the speech bubble identification 32 and/or avatar identification 34 fields are extracted from the message body field 48 of the structured data packet 40.
[0109]Con más detalle, los códigos unívocos 30 de los elementos gráficos y/o de audio 31 se identifican buscando los caracteres/etiquetas/símbolos precodificados 28 dentro del campo de texto 26 y, si no están ya presentes en la memoria local del dispositivo receptor 6, el primer módulo de software envía una solicitud a la unidad central 8, que, tras consultar la correspondiente base de datos 12, extrae el elemento gráfico y/o de audio correspondiente 31 y lo envía al dispositivo receptor 6, elemento que se almacena después en la memoria local del dispositivo receptor 6 para que esté fácilmente disponible localmente en caso de cualquier posterior uso adicional.[0109] In more detail, the unique codes 30 of the graphic and/or audio elements 31 are identified by searching for the pre-coded characters/labels/symbols 28 within the text field 26 and, if they are not already present in the local memory of the receiving device 6, the first software module sends a request to the central unit 8, which, after consulting the corresponding database 12, extracts the corresponding graphic and/or audio element 31 and sends it to the receiving device 6, an element that it is then stored in the local memory of the receiving device 6 so that it is readily available locally in the event of any subsequent further use.
[0110]De manera adecuada, si los códigos unívocos 30 de los elementos gráficos y/o de audio 31 están ya presentes, en cambio, en la memoria local del dispositivo receptor 6, el primer módulo desoftwareno envía ninguna solicitud a la unidad central 8.[0110] Suitably, if the unique codes 30 of the graphic and/or audio elements 31 are already present, instead, in the local memory of the receiving device 6, the firstsoftware module does not send any request to the unit middle 8.
[0111]En consecuencia, la identificación del avatar 32 y/o la identificación del bocadillo 34 se extraen del campo de cuerpo de mensaje 48 del paquete de datos estructurado 40 y/o buscando marcas/caracteres/símbolos precodificados 28 apropiados en el campo de texto 26 de la estructura de datos 20, y, si no estaban ya presentes en la memoria local del dispositivo receptor 6, el primer módulo desoftwareenvía una solicitud a la unidad central 8, que, tras consultar la base de datos correspondiente 12, extrae y envía las correspondientes imágenes del avatar 35 y/o bocadillo 37 al dispositivo receptor.[0111] Accordingly, the avatar ID 32 and/or the speech bubble ID 34 are extracted from the message body field 48 of the structured data packet 40 and/or by searching for appropriate pre-encoded marks/characters/symbols 28 in the message body field 48 . text 26 of the data structure 20, and, if they were not already present in the local memory of the receiving device 6, the firstsoftware module sends a request to the central unit 8, which, after consulting the corresponding database 12, extracts and sends the corresponding images of the avatar 35 and/or speech bubble 37 to the receiving device.
[0112]Por último, en función del contenido de los campos del paquete de datos estructurado 40 y utilizando la imagen 33 que se va a insertar junto con el texto en el bocadillo, la imagen del avatar 35 y/o la imagen del bocadillo 37 (que ya están presentes en la memoria local del dispositivo receptor 6 o que han sido descargadas a este mediante consultas apropiadas a la unidad central 8), el primer módulo desoftwareestá configurado para componer y mostrar de manera adecuada el mensaje 60 con los correspondientes elementos gráficos, como la imagen 33 que se quiere insertar en el bocadillo, la imagen del avatar 35 y/o la imagen del bocadillo 37, en la pantalla 62 de visualización del dispositivo receptor 6 (véase la figura 9).[0112] Lastly, depending on the content of the fields of the structured data packet 40 and using the image 33 to be inserted together with the text in the speech bubble, the image of the avatar 35 and/or the image of the speech bubble 37 (which are already present in the local memory of the receiving device 6 or have been downloaded to it by means of appropriate queries to the central unit 8), the firstsoftware module is configured to compose and display the message 60 with the corresponding graphic elements, such as the image 33 to be inserted in the speech bubble, the avatar image 35 and/or the speech bubble image 37, on the display screen 62 of the receiving device 6 (see Figure 9).
[0113]Preferiblemente, el sistema de mensajería 2 es de tipo instantáneo y asíncrono, y puede utilizarse de manera adecuada entre dispositivos portátiles, tales como teléfonos inteligentes y tabletas, y entre ordenadores que accedan a un sitio web/portal adecuado (véase la figura 10).[0113] Preferably, the messaging system 2 is of the instantaneous and asynchronous type, and can be used in a suitable way between portable devices, such as smartphones and tablets, and between computers that access a suitable website/portal (see figure 10).
[0114]La invención se describió en particular para elementos gráficos (imágenes); no obstante, se entiende que la misma configuración y funcionamiento también se aplica a elementos de audio o vídeo.[0114] The invention was described in particular for graphic elements (images); however, it is understood that the same configuration and operation also applies to audio or video elements.
[0115]Ventajosamente, de acuerdo con la invención, en la unidad central 8 también se implementa una plataforma informática, que interactúa y se comunica con los dispositivos de los usuarios registrados en el sistema de mensajería descrito 2, y que están configurados para actuar como un mercado en el que los usuarios del sistema de mensajería pueden descargar uno o más de los elementos gráficos y/o de audio presentes en el sistema de mensajería localmente a su dispositivo, como resultado de una compra (es decir, a cambio de una tasas, preferiblemente utilizando una moneda virtual) y/o sin coste.[0115] Advantageously, according to the invention, a computer platform is also implemented in the central unit 8, which interacts and communicates with the devices of the users registered in the described messaging system 2, and which are configured to act as a market in which users of the messaging system can download one or more of the graphic and/or audio elements present in the messaging system locally to their device, as a result of a purchase (i.e., in exchange for fees , preferably using a virtual currency) and/or free of charge.
[0116]Además, la plataforma informática está configurada para que los usuarios que se registren en el sistema de mensajería 2 como «autores» (o «artistas») puedan crear y visualizar páginas, que actúan sustancialmente mediante presentaciones, en la propia plataforma en la que se muestran los elementos gráficos y/o de audio que han creado, preferiblemente recogidos en colecciones. Ventajosamente, las páginas que se muestran en la plataforma pueden tener una fecha de expiración predeterminada, para definir una campaña demarketing.[0116] In addition, the computer platform is configured so that users who register in the messaging system 2 as «authors» (or «artists») can create and view pages, which act substantially through presentations, on the platform itself in which the graphic and/or audio elements they have created are displayed, preferably collected in collections. Advantageously, the pages displayed on the platform can have a predetermined expiration date, to define amarketing campaign.
[0117]En consecuencia, los usuarios del sistema de mensajería 2 acceden utilizando sus dispositivos a la plataforma informática para visualizar las páginas-presentaciones de los diversos usuarios «autores». Una vez que el usuario selecciona uno o más elementos gráficos y/o de audio, se permite al usuario, a cambio de una tasa y/o sin coste, utilizar y gestionar estos elementos gráficos y/o de audio. En concreto, para tal fin, como se ha mencionado, se crea una relación 18 en el nivel de base de datos 12 que asocia los elementos gráficos y/o de audio elegidos y adquiridos del conjunto de datos 16 con los usuarios compradores, identificados en el conjunto de datos 14. Convenientemente, los usuarios los descargan localmente al dispositivo en que están actuando y/o también a otros dispositivos asociados con estos.[0117] Consequently, the users of the messaging system 2 access the computer platform using their devices to view the pages-presentations of the various "author" users. Once the user selects one or more graphic and/or audio elements, the user is allowed, for a fee and/or at no cost, to use and manage these graphic and/or audio elements. Specifically, for this purpose, as mentioned, a relation 18 is created at the database level 12 that associates the graphic and/or audio elements chosen and acquired from the data set 16 with the purchasing users, identified in data set 14. Conveniently, users download them locally to the device they are acting on and/or also to other devices associated with them.
[0118]Ventajosamente, dicha plataforma comprende una sección, p. ej., un blog, donde los usuarios «autores» y los usuarios del sistema de mensajería pueden interactuar entre sí. De manera adecuada, dicha plataforma comprende una sección en la que los usuarios del sistema de mensajería pueden encargar a uno o más usuarios «autores» a crear un elemento gráfico y/o de audio deseado.[0118] Advantageously, said platform comprises a section, e.g. eg, a blog, where "author" users and users of the messaging system can interact with each other. Suitably, said platform comprises a section where users of the messaging system can instruct one or more "author" users to create a desired graphic and/or audio element.
[0119]Adecuadamente, estos elementos gráficos, que pueden descargarse y obtenerse de la plataforma, pueden incluir imágenes que se insertan dentro del bocadillo (de manera correspondiente a los emojis) y/o los propios bocadillos y/o imágenes que se utilizan como avatar. Ventajosamente, los elementos gráficos también comprenden una representación gráfica (p. ej., una roseta, una bufanda, un gorro, etc.) para añadir como accesorio a la imagen del avatar o a la imagen que puede insertarse dentro del bocadillo.[0119] Appropriately, these graphic elements, which can be downloaded and obtained from the platform, may include images that are inserted inside the speech bubble (corresponding to the emojis) and/or the speech bubbles themselves and/or images that are used as avatars . Advantageously, the graphic elements also comprise a graphic representation (eg, a rosette, a scarf, a hat, etc.) to add as an accessory to the avatar image or to the image that can be inserted inside the speech bubble.
[0120]De manera adecuada, la plataforma informática está configurada para enviar una primera parte de la tasa, que ha pagado el usuario para adquirir los elementos gráficos y/o de audio de la plataforma, preferiblemente para adquirir las representaciones gráficas que se añaden como accesorio de la imagen del avatar, al autor o al sujeto que ha puesto a disposición dichos elementos gráficos en la plataforma, mientras que otra parte de dicha tasa se envía al sujeto gestor de toda la plataforma informática. Adecuadamente, la plataforma informática está configurada para recopilar/reunir las partes (que están destinadas al sujeto gestor de la propia plataforma) de las tasas pagadas por los usuarios para adquirir elementos gráficos y/o de audio concretos, con el fin de enviarlas a continuación a una única organización, preferentemente a una organización con fines solidarios, sociales y/o humanitarios.[0120] Suitably, the computer platform is configured to send a first part of the fee, which the user has paid to acquire the graphic and/or audio elements of the platform, preferably to acquire the graphic representations that are added as accessory of the avatar image, to the author or to the subject that has made said graphic elements available on the platform, while another part of said fee is sent to the managing subject of the entire computer platform. Properly, the computer platform is configured to collect/gather the parts (which are intended for the manager of the platform itself) of the fees paid by users to acquire specific graphic and/or audio elements, in order to send them below to a single organization, preferably to an organization with solidarity, social and/or humanitarian purposes.
[0121]El sistema de mensajería y el método de acuerdo con la invención resultan muy ventajosos porque:[0121] The messaging system and the method according to the invention are very advantageous because:
- permiten a los usuarios transmitir con éxito elementos gráficos y/o de audio personalizados en un sistema de mensajería,- allow users to successfully transmit personalized graphic and/or audio elements in a messaging system,
- hacen posible transmitir y visualizar con éxito elementos gráficos y/o de audio que pueden no haber estado presentes en el dispositivo del receptor cuando el mensaje se ha enviado,- make it possible to successfully transmit and display graphic and/or audio elements that may not have been present on the recipient's device when the message was sent,
- al utilizar una única unidad central en la que se identifican unívocamente todos los elementos gráficos y/o de audio, así como la implementación de un primer módulo desoftwareque, cuando los elementos gráficos y/o de audio no están presentes localmente en el dispositivo, descargan fácilmente los correspondientes elementos gráficos y/o de audio desde la unidad central 8, garantizando que estos elementos se implementan/visualizan siempre de forma correcta y completa en el mensaje y garantizando que se implementan del mismo modo entre el emisor y el receptor, - la descarga del elemento gráfico y/o de audio localmente en un dispositivo determinado se produce solo la primera vez, ya que, una vez descargado, el propio elemento se almacena en la memoria local del dispositivo; en concreto, el hecho de que dicha descarga no se produzca de manera constante y continua, posibilita la aceleración de la subida de los datos en el mensaje, guardar/optimizar el tráfico de datos para los dispositivos y reducir el número de llamadas a la unidad central, reduciendo así tanto el procesamiento informático como el ancho de banda ocupado- by using a single central unit in which all the graphic and/or audio elements are unequivocally identified, as well as the implementation of a firstsoftware module that, when the graphic and/or audio elements are not present locally in the device, easily download the corresponding graphic and/or audio elements from the central unit 8, guaranteeing that these elements are always implemented/displayed correctly and completely in the message and guaranteeing that they are implemented in the same way between the sender and the receiver , - the download of the graphic and/or audio element locally on a given device occurs only the first time, since, once downloaded, the element itself is stored in the local memory of the device; specifically, the fact that said download does not occur constantly and continuously, makes it possible to speed up the upload of the data in the message, save/optimize the data traffic for the devices and reduce the number of calls to the unit central, thus reducing both computer processing and bandwidth occupied
- permiten que los usuarios (en concreto en virtud de la estructura de la base de datos) tengan disponibles únicamente los elementos gráficos y/o de audio asociados con ellos (y, por lo tanto, para los que han sido autorizados/habilitados, por ejemplo, como autor y/o comprador) cuando preparan los mensajes que quieren enviar y, al mismo tiempo, hacen posible que se muestre cualquier elemento gráfico y/o de audio proporcionado en los mensajes recibidos siempre de manera correcta, completa y unívoca,- allow users (in particular by virtue of the database structure) to have available only the graphic and/or audio elements associated with them (and therefore for which they have been authorized/enabled, by example, as author and/or buyer) when they prepare the messages they want to send and, at the same time, make it possible to display any graphic and/or audio element provided in the received messages always correctly, completely and univocally,
- la estructura de la base de datos provoca que el usuario descargue localmente en cada dispositivo todos los elementos gráficos y/o de audio únicamente en el momento del registro de este dispositivo al sistema de mensajería o para la descarga/configuración/primer uso de dicho módulo en dicho dispositivo, lo que hace que la sincronización de cada dispositivo asociado con ese usuario predeterminado sea particularmente rápida y simple,- the structure of the database causes the user to download locally on each device all the graphic and/or audio elements only at the time of registration of this device to the messaging system or for the download/configuration/first use of said device module on said device, which makes the synchronization of each device associated with that default user particularly fast and simple,
- permiten al usuario crear elementos gráficos y/o de audio para compartir y hacerlos disponibles a otros usuarios, - permiten al usuario utilizar una imagen de avatar y/o bocadillo diferente para cada mensaje,- allow the user to create graphic and/or audio elements to share and make them available to other users, - allow the user to use a different avatar image and/or speech bubble for each message,
- permiten al usuario introducir imágenes (de manera correspondiente a los emojis) que están personalizadas o pueden personalizarse dentro de los bocadillos, que también están personalizados o pueden personalizarse, con o sin la presencia de texto dentro del propio bocadillo,- allow the user to insert images (corresponding to emojis) that are personalized or can be personalized within the speech bubbles, which are also personalized or can be personalized, with or without the presence of text within the speech bubble itself,
- los elementos gráficos y/o de audio, así como las imágenes de avatar y/o los bocadillos, no se envían junto con el mensaje ni unidos a este; en concreto, el uso de códigos de identificación unívocos que se introducen como texto dentro del paquete de datos estructurado hace posible reducir la cantidad de tráfico de datos y el ancho de banda de la red que ocupa el intercambio de mensajes.- graphic and/or audio elements, as well as avatar images and/or speech bubbles, are not sent together with the message or attached to it; in particular, the use of unique identification codes that are inserted as text within the structured data packet makes it possible to reduce the amount of data traffic and the network bandwidth that the exchange of messages occupies.
[0122]Sustancialmente, a diferencia de los documentos WO2017/059524, WO2014/100682, US2015/0327033, US9699299 y WO2015/122993, en la presente invención hay:[0122] Substantially, unlike documents WO2017/059524, WO2014/100682, US2015/0327033, US9699299 and WO2015/122993, in the present invention there are:
- una base de datos 12 en la que el conjunto de datos de usuario 14, que contiene los datos de cada usuario del sistema de mensajería 2, está en relación 18 con al menos un conjunto de datos de elemento 16, que contiene al menos los códigos de identificación unívocos 30 de todos los elementos gráficos y/o de audio y/o vídeo que pueden ser gestionados por el sistema de mensajería 2, con el fin de definir así los elementos gráficos y/o de audio a los que puede acceder/que puede gestionar cada usuario del conjunto de datos de usuario 14, y también el primer módulo desoftwareestá configurado de manera que- a database 12 in which the user data set 14, which contains the data of each user of the messaging system 2, is in relation 18 with at least one element data set 16, which contains the minus the unique identification codes 30 of all the graphic and/or audio and/or video elements that can be managed by the messaging system 2, in order to thus define the graphic and/or audio elements to which it can accessed/managed by each user of the user data set 14, and also the firstsoftware module is configured such that
- cuando es ejecutado en un dispositivo emisor 4 por un determinado usuario del conjunto de datos de usuario 14, solo pueden insertarse en dicho mensaje que se quiere enviar 60 elementos gráficos 31 que tengan los respectivos códigos de identificación 30 asociados con dicho usuario,- when it is executed in a sending device 4 by a certain user of the user data set 14, only 60 graphic elements 31 that have the respective identification codes 30 associated with said user can be inserted in said message to be sent,
- cuando es ejecutado en dicho dispositivo receptor 6, el elemento gráfico y/o de audio proporcionado en el mensaje recibido siempre se muestra de forma correcta y unívoca y, en concreto, está configurado para que, si dicho elemento gráfico y/o de audio no está ya presente en el dispositivo receptor 6, se descargue a la memoria local del dispositivo receptor 6 solo con fines de visualización del mensaje recibido.- when it is executed in said receiving device 6, the graphic and/or audio element provided in the received message is always displayed correctly and unambiguously and, specifically, it is configured so that, if said graphic and/or audio element is not already present in the receiving device 6, it is downloaded to the local memory of the receiving device 6 only for display purposes of the received message.
[0123]Sustancialmente, a diferencia de los documentos WO2017/059524, WO2014/100682, US2015/0327033, US9699299 y WO2015/122993, en la presente invención se proporciona ventajosamente una arquitectura dehardwareysoftware,que hace posible disociar la etapa de visualización de los elementos gráficos y/o de audio (que, en cualquier caso, está configurada para garantizar siempre y en todos los casos la visualización correcta y completa de dichos elementos en un mensaje recibido) durante la etapa de preparación/envío de un mensaje, en el que, en cambio, solo los elementos gráficos y/o de audio asociados con cada usuario emisor pueden utilizarse/insertarse en un mensaje que se quiere enviar, es decir, únicamente los elementos gráficos y/o de audio para los que cada usuario ha sido previamente autorizado/habilitado en el sistema de mensajería.[0123] Substantially, unlike documents WO2017/059524, WO2014/100682, US2015/0327033, US9699299 and WO2015/122993, the present invention advantageously provides ahardware andsoftware architecture, which makes it possible to dissociate the display stage of the graphic and/or audio elements (which, in any case, is configured to always and in all cases guarantee the correct and complete display of said elements in a received message) during the preparation/sending stage of a message, in which, instead, only the graphic and/or audio elements associated with each sending user can be used/inserted in a message to be sent, that is, only the graphic and/or audio elements for which each user has been previously authorized/enabled in the messaging system.
[0124]La unidad central 8 puede implementarse según diversos tipos de ordenadores digitales, tales como ordenadores portátiles, ordenadores de sobremesa, estaciones de trabajo, ordenadores (PDA), servidores, servidoresblade,ordenadores centrales y otros ordenadores apropiados.[0124] The mainframe 8 can be implemented as various types of digital computers, such as laptops, desktops, workstations, PCs (PDAs), servers,blade servers, mainframes, and other appropriate computers.
[0125]Los dispositivos 4 y 6 pueden implementarse por medio de ordenadores de sobremesa, ordenadores portátiles, asistentes digitales personales (PDA), teléfonos inteligentes, tabletas,netbooks,ordenadores personales ultramóviles (UMPC),carputersy otros dispositivos similares.[0125] Devices 4 and 6 may be implemented by desktop computers, laptop computers, personal digital assistants (PDAs), smartphones, tablets,netbooks, ultra-mobile personal computers (UMPCs),carputers , and other similar devices.
[0126]Los componentes, sus conexiones y relaciones, así como sus funciones, se describen en adelante únicamente a modo de ejemplo no limitativo.[0126] The components, their connections and relationships, as well as their functions, are described below solely by way of non-limiting example.
[0127]La unidad central 8 comprende un procesador, una memoria, un dispositivo de almacenamiento, una interfaz de alta velocidad conectada a la memoria y a los puertos de expansión de alta velocidad y una interfaz de baja velocidad conectada al bus a baja velocidad y al dispositivo de almacenamiento. Cada uno de los componentes anteriormente mencionados está interconectado utilizando varios buses, y pueden montarse en una placa base común o de otra manera apropiada. El procesador puede procesar instrucciones para ejecutarlas en la unidad central 8 que comprende las instrucciones almacenadas en la memoria o en un dispositivo de almacenamiento, o para visualizar información gráfica adaptada para una interfaz gráfica de usuario (GUI) en un dispositivo externo de entrada/salida, por ejemplo, una pantalla acoplada a la interfaz de alta velocidad. En otras implementaciones, pueden utilizarse varios procesadores y/o múltiples buses, de acuerdo con diferentes memorias y tipos de memoria. También pueden conectarse a múltiples ordenadores, donde cada ordenador proporciona parte de las operaciones necesarias (p. ej., un banco servidor, una unidad de servidorbladeo un sistema multiprocesador).[0127] The central unit 8 comprises a processor, a memory, a storage device, a high-speed interface connected to the memory and high-speed expansion ports, and a low-speed interface connected to the low-speed bus and the storage device. Each of the aforementioned components is interconnected using various buses, and may be mounted on a common motherboard or in another suitable manner. The processor can process instructions to execute them in the central unit 8 comprising the instructions stored in memory or on a storage device, or to display graphic information adapted for a graphical user interface (GUI) on an external input/output device. , for example, a display coupled to the high-speed interface. In other implementations, multiple processors and/or multiple buses may be used, according to different memories and memory types. They can also be connected to multiple computers, with each computer providing part of the necessary operations (eg, a server bank, a serverblade unit, or a multi-processor system).
[0128]La memoria almacena la información dentro de la unidad central 8. En una implementación, la memoria comprende una o más unidades de almacenamiento volátiles o no volátiles. La memoria puede comprender otra forma de dispositivo de almacenamiento, tal como un disco magnético u óptico.[0128] The memory stores the information within the central unit 8. In one implementation, the memory comprises one or more volatile or non-volatile storage units. The memory may comprise another form of storage device, such as a magnetic or optical disk.
[0129]El dispositivo de almacenamiento puede proporcionar una memoria masiva para la unidad central 8. En una implementación, el dispositivo de almacenamiento puede ser o contener medios legibles por ordenador, p. ej., un dispositivo de disquete, un dispositivo de disco duro, un dispositivo de disco óptico, un dispositivo de cinta, una memoriaflashu otro dispositivo similar de memoria de estado sólido o una serie de dispositivos, incluyendo dispositivos en una red de área de almacenamiento (SAN) o en otras configuraciones.[0129] The storage device may provide a mass memory for the central unit 8. In one implementation, the storage device may be or contain computer readable media, eg. a floppy disk drive, hard disk drive, optical disk drive, tape drive,flash memory, or other similar solid-state memory device, or a series of devices, including devices on an area network (SAN) or in other configurations.
[0130]El segundo módulo desoftwarepuede estar incorporado tangiblemente en un dispositivo de almacenamiento. El dispositivo de almacenamiento puede ser un medio no informatizado o legible por ordenador, tal como la memoria, el dispositivo de almacenamiento o la memoria del procesador.[0130] The secondsoftware module may be tangibly embedded in a storage device. The storage device may be a non-computerized or computer-readable medium, such as memory, storage device, or processor memory.
[0131]La interfaz de alta velocidad gestiona en la unidad central 8 operaciones a una intensidad de banda alta, mientras que la interfaz de baja velocidad gestiona operaciones a una intensidad baja de la banda. Esta asignación de funciones es únicamente a modo de ejemplo. En una implementación, la interfaz de alta velocidad está acoplada a la memoria, a la pantalla (p. ej., a través de un acelerador o procesador gráfico) y a los puertos de expansión de alta velocidad que pueden aceptar varias tarjetas de expansión (no representados). En la implementación, el regulador de baja velocidad está acoplado al dispositivo de almacenamiento y al puerto de expansión de baja velocidad. El puerto de expansión de baja velocidad, que puede comprender varios puertos de comunicación (p. ej., USB, Bluetooth, Ethernet, inalámbrica), puede estar acoplado a uno o más dispositivos de entrada/salida, p. ej., un teclado, un dispositivo puntero, un escáner o un dispositivo de red, como un interruptor orouter,p. ej., a través de un adaptador de red.[0131] The high speed interface manages 8 operations at a high band intensity in the central unit, while the low speed interface manages operations at a low band intensity. This role assignment is for example only. In one implementation, the high-speed interface is coupled to memory, the display (eg, through a graphics processor or accelerator), and high-speed expansion ports that can accept multiple expansion cards (not represented). In the implementation, the low-speed regulator is coupled to the storage device and the low-speed expansion port. The low-speed expansion port, which may comprise multiple communication ports (eg, USB, Bluetooth, Ethernet, wireless), may be coupled to one or more input/output devices, e.g. a keyboard, a pointing device, a scanner, or a network device such as a switch orrouter, e.g. e.g. via a network adapter.
[0132]La unidad central 8 puede implementarse en una pluralidad de formas distintas. Por ejemplo, puede implementarse como un servidor estándar o en grupos de dichos servidores. También puede implementarse como parte de un sistema de servidorrack, oen un ordenador personal, posiblemente portátil. Alternativamente, los componentes de la unidad central 8 pueden estar combinados con otros componentes en un dispositivo móvil. Cada uno de dichos componentes puede contener uno o más ordenadores y, por lo tanto, la unidad central 8 puede consistir en múltiples ordenadores que se comunican entre sí.[0132] The central unit 8 can be implemented in a number of different ways. For example, it can be implemented as a standard server or in groups of such servers. It can also be implemented as part of a systemrack server, or on a personal computer, possibly a laptop. Alternatively, the components of the mainframe 8 may be combined with other components in a mobile device. Each of said components may contain one or more computers and therefore the central unit 8 may consist of multiple computers that communicate with each other.
[0133]El dispositivo emisor 4 o el dispositivo receptor 6 comprenden un procesador, memoria, medios de entrada/salida, como una pantalla, una interfaz de comunicación y un transceptor. El dispositivo 4 o 6 también puede estar provisto de un medio de almacenamiento, tal como unmicrodriveu otro medio, para proporcionar espacio de almacenamiento adicional. Cada uno de estos componentes está interconectado utilizando varios buses y pueden estar montados en una placa base común o de otra manera, según sea apropiado. El procesador puede ejecutar instrucciones dentro del dispositivo 4 o 6, incluyendo instrucciones almacenadas en la memoria. El procesador puede implementarse como un conjunto de circuitos integrados (conjunto de chips) que comprenden procesadores analógicos y digitales separados y múltiples. El procesador puede incluir, por ejemplo, la coordinación de otros componentes del dispositivo, como el control de interfaces de usuario, las aplicaciones gestionadas por el dispositivo y la comunicación inalámbrica del dispositivo. El procesador puede comunicarse con un usuario a través de la interfaz de control y la interfaz de visualización unida a una pantalla. La pantalla puede ser, por ejemplo, una pantalla TFT (pantalla de cristal líquido de transistor de película delgada) o una pantalla OLED (diodo orgánico de emisión de luz) u otra tecnología de pantalla apropiada. La interfaz de visualización puede comprender circuitos apropiados para controlar la pantalla para presentar información gráfica y otra información a un usuario. La interfaz de control puede recibir controles de un usuario y convertirlos para someterse al procesador. Asimismo, se puede proporcionar una interfaz externa en comunicación con el procesador, con el fin de permitir la comunicación cercana del dispositivo con otros dispositivos. La interfaz externa puede proporcionar, por ejemplo, comunicación con cables en algunas implementaciones, o comunicación inalámbrica en otras implementaciones, y se pueden utilizar múltiples interfaces. La memoria almacena la información dentro del dispositivo 4 o 6. La memoria puede implementarse como un medio o más medios legibles por ordenador, una unidad de almacenamiento o múltiples unidades volátiles, o una unidad o más unidades de almacenamiento no volátiles. La memoria de expansión también puede proporcionarse y conectarse al dispositivo a través de la interfaz de expansión, que puede incluir, por ejemplo, una interfaz de tarjeta SIMM (módulo de memoria en línea simple). Dicha expansión de memoria puede proporcionar espacio adicional para almacenar el dispositivo 4 o 6, o también puede almacenar aplicaciones u otra información para el propio dispositivo. En concreto, la expansión de la memoria puede incluir instrucciones para realizar o completar procesos anteriormente descritos, y también puede incluir información segura. Así, por ejemplo, la memoria de expansión puede proporcionarse como forma de seguridad para el dispositivo, y puede estar programada con las instrucciones que permiten el uso seguro del propio dispositivo. Asimismo, mediante las tarjetas SIMM, pueden proporcionarse aplicaciones de seguridad e información adicional, como la inserción de la tarjeta SIMM que identifica información de tal manera que previene la piratería. La memoria puede incluir, por ejemplo, la memoriaflashy/o NVRAM, como se ha descrito abajo.[0133] The sending device 4 or the receiving device 6 comprise a processor, memory, input/output means, such as a display, a communication interface and a transceiver. Device 4 or 6 may also be provided with a storage medium, such as amicrodrive or other medium, to provide additional storage space. Each of these components is interconnected using various buses and may be mounted on a common motherboard or otherwise as appropriate. The processor may execute instructions within device 4 or 6, including instructions stored in memory. The processor may be implemented as a set of integrated circuits (chipsets) comprising separate and multiple analog and digital processors. The processor may include, for example, the coordination of other components of the device, such as control of user interfaces, applications managed by the device, and wireless communication of the device. The processor may communicate with a user through control interface and display interface attached to a screen. The display may be, for example, a TFT (Thin Film Transistor Liquid Crystal Display) display or an OLED (Organic Light Emitting Diode) display or other appropriate display technology. The display interface may comprise appropriate circuitry for controlling the display to present graphic and other information to a user. The control interface may receive controls from a user and convert them to submit to the renderer. Also, an external interface may be provided in communication with the processor, in order to allow close communication of the device with other devices. The external interface may provide, for example, wired communication in some implementations, or wireless communication in other implementations, and multiple interfaces may be used. The memory stores the information within the device 4 or 6. The memory may be implemented as one or more computer readable media, one or more volatile storage units, or one or more non-volatile storage units. Expansion memory may also be provided and connected to the device through the expansion interface, which may include, for example, a SIMM (simple in-line memory module) card interface. Said memory expansion may provide additional space to store the device 4 or 6, or may also store applications or other information for the device itself. In particular, the memory expansion may include instructions to perform or complete processes described above, and may also include secure information. Thus, for example, the expansion memory may be provided as a form of security for the device, and may be programmed with instructions that enable the secure use of the device itself. Also, through SIMM cards, additional information and security applications can be provided, such as inserting the SIMM card that identifies information in such a way as to prevent hacking. Memory may include, for example,flash memory and/or NVRAM, as described below.
[0134]En una implementación, el primer módulo desoftwareestá incorporado tangiblemente en un dispositivo de almacenamiento, que incluye medios legibles por ordenador o por máquina, tales como la memoria interna, la memoria de expansión, la memoria del procesador o una señal propagada que puede ser recibida, por ejemplo, por el transceptor o por la interfaz externa.[0134] In one implementation, the firstsoftware module is tangibly embedded in a storage device, including computer or machine-readable media, such as internal memory, expansion memory, processor memory, or a propagated signal which can be received, for example, by the transceiver or by the external interface.
[0135]Los dispositivos 4 y 6 pueden comunicarse de manera inalámbrica mediante la interfaz de comunicación, que puede incluir los circuitos de procesamiento de señal digital, en caso necesario. La interfaz de comunicación puede proporcionar, entre otros, comunicaciones en varios modos o protocolos, tales como llamadas de voz GSM, SMS, EMS o MMS, CDMA, TDMA, PDC, WCDMA, CDMA2000 o GPRS. Dicha comunicación puede producirse, por ejemplo, por medio del transceptor de radiofrecuencia. Además, puede producirse una comunicación de rango corto, p. ej., con el uso de un Bluetooth, wifi u otro transceptor similar (no representado). El módulo de receptor GPS (sistema de posicionamiento global) puede proporcionar datos inalámbricos adicionales relativos a la navegación o a la ubicación del dispositivo, que pueden ser utilizados convenientemente por aplicaciones que se ejecutan o pueden ejecutarse en el propio dispositivo.[0135] Devices 4 and 6 may communicate wirelessly via the communication interface, which may include digital signal processing circuitry, if necessary. The communication interface may provide, among others, communications in various modes or protocols, such as GSM, SMS, EMS or MMS, CDMA, TDMA, PDC, WCDMA, CDMA2000 or GPRS voice calls. Said communication may occur, for example, by means of the radio frequency transceiver. In addition, short range communication may occur, e.g. g., with the use of a Bluetooth, Wi-Fi, or other similar transceiver (not shown). The GPS (Global Positioning System) receiver module may provide additional wireless data relating to the navigation or location of the device, which may be conveniently used by applications running or capable of running on the device itself.
[0136]El dispositivo 4 o 6 también puede comunicarse desde el punto de vista del audio utilizando audio códec que puede recibir información verbal de un usuario y convertirla en información digital que se puede utilizar. El audio códec también puede generar un sonido audible a un usuario, p. ej., a través de un altavoz, por ejemplo, en un receptor del cliente. Dicho sonido puede incluir un sonido procedente de llamadas de voz, puede incluir sonidos registrados (p. ej., mensajes de voz, archivos de música, etc.) y también puede incluir los sonidos generados por aplicaciones que funcionan en el dispositivo.[0136] Device 4 or 6 may also communicate audio-wise using an audio codec that can receive verbal information from a user and convert it into usable digital information. The audio codec can also generate a sound audible to a user, e.g. via a loudspeaker, for example, at a customer's receiver. Such sound may include sound from voice calls, may include recorded sounds (eg, voice messages, music files, etc.), and may also include sounds generated by applications running on the device.
[0137]El dispositivo de cliente 4 o 6 puede implementarse en una pluralidad de formas distintas y, por ejemplo, puede implementarse con un teléfono móvil, un teléfono inteligente, PDA u otro dispositivo portátil similar.[0137] The client device 4 or 6 can be implemented in a number of different ways and, for example, can be implemented with a mobile phone, smartphone, PDA or other similar portable device.
[0138]El sistema y método descritos en el presente documento pueden implementarse utilizando diferentes circuitos electrónicos digitales, circuitos integrados, ASIC (es decir, circuito integrado de aplicación específica),hardware, firmware, softwarey/o combinaciones de estos. Estas diferentes implementaciones pueden incluir la implementación en uno o más programas informáticos, que pueden ejecutarse y/o interpretarse en un sistema programable, que comprende al menos un procesador programable, que puede ser dedicado o general, conectado para recibir datos e instrucciones y para transmitir datos e instrucciones en un sistema de almacenamiento, provisto de al menos un dispositivo de entrada y al menos un dispositivo de salida.[0138] The system and method described herein may be implemented using different digital electronic circuits, integrated circuits, ASICs (ie, application specific integrated circuits),hardware, firmware, software, and/or combinations of these. These different implementations may include implementation in one or more computer programs, which can be executed and/or interpreted in a programmable system, comprising at least one programmable processor, which can be dedicated or general, connected to receive data and instructions and to transmit data and instructions in a storage system, provided with at least one input device and at least one output device.
[0139]Estos programas informáticos (también denominadossoftware,aplicaciones desoftwareo código) incluyen instrucciones de máquina para un procesador programable y pueden estar implementados en un lenguaje de programación de proceso de alto nivel y/u orientado al objeto y/o en un lenguaje ensamblador o lenguaje de máquina.[0139] These computer programs (also referred to assoftware, softwareapplications , or code) include machine instructions for a programmable processor and may be implemented in a high-level process and/or object-oriented programming language and/or in a assembly language or machine language.
[0140]Las expresiones «medio legible por máquina» y «medio legible por ordenador» hacen referencia en el presente documento a cualquier producto, aparato y/o medio para ordenadores (p. ej., discos magnéticos, discos ópticos, memoria, dispositivos lógicos programables) utilizados para proporcionar instrucciones de máquina y/o datos a un procesador programable, incluyendo un medio que es legible por una máquina y que recibe instrucciones de máquina en forma de una señal legible por la propia máquina. El término «señal legible por máquina» se refiere a cualquier señal utilizada para proporcionar instrucciones y/o datos de máquina a un procesador programable.[0140] The terms "machine-readable medium" and "computer-readable medium" refer herein to any product, apparatus, and/or medium for computers (e.g., magnetic disks, optical disks, memory, devices programmable logic) used to provide machine instructions and/or data to a programmable processor, including a medium that is machine-readable and that receives machine instructions in the form of a machine-readable signal. The term "machine-readable signal" refers to any signal used to provide machine instructions and/or data to a programmable processor.
[0141]Con el fin de interactuar con el usuario, los dispositivos 4 o 6 descritos en el presente documento pueden estar provistos de una pantalla (p. ej., un tubo de rayos catódicos) o una pantalla LCD (pantalla de cristal líquido) para que el usuario visualice información y un teclado y puntero (por ejemplo, un ratón o bola de seguimiento) con los que el usuario puede proporcionar información al propio dispositivo. Pueden utilizarse otros tipos de medios para interactuar con el usuario; por ejemplo, la retroalimentación al usuario puede ser cualquier forma de retroalimentación sensorial (p. ej., retroalimentación gráfica, retroalimentación auditiva o retroalimentación táctil) y puede recibirse una entrada de usuario en cualquier forma que incluya una entrada acústica, vocal o táctil.[0141] In order to interact with the user, the devices 4 or 6 described herein may be provided with a screen (eg, a cathode ray tube) or an LCD (liquid crystal display) screen. for the user to display information and a keyboard and pointer (for example, a mouse or trackball) with which the user can provide information to the device itself. Other types of media may be used to interact with the user; for example, the feedback to the user may be any form of sensory feedback (eg, graphical feedback, auditory feedback, or tactile feedback), and user input may be received in any form that includes acoustic, vocal, or tactile input.
[0142]El sistema también puede comprender cualquier sistema informático que comprenda un componente deback-end(p. ej., un servidor de datos) o un componente demiddleware(p. ej., un servidor de aplicaciones) o un componente defront-end(p. ej., un ordenador de cliente, equipado con una interfaz gráfica de usuario o un navegador web a través del cual puede interactuar un usuario) o cualquier combinación de dichos componentes deback-end, middlewareofront-end.[0142] The system may also comprise any computer system that comprises aback-end component (eg, a data server) or amiddleware component (eg, an application server) or an application component.front-end (e.g., a client computer, equipped with a graphical user interface or a web browser through which a user can interact) or any combination of suchback-end, middleware, orfront-end components.
[0143]Los componentes del sistema pueden estar interconectados con cualquier forma o medio de comunicación de datos digitales (por ejemplo, una red de comunicación). Ejemplos de redes de comunicación incluyen la red de área local («LAN»), la red de área amplia («WAN») e Internet.[0143] The components of the system may be interconnected with any form or medium of digital data communication (eg, a communication network). Examples of communication networks include the local area network ("LAN"), the wide area network ("WAN"), and the Internet.
[0144]El sistema de acuerdo con la invención puede comprender al menos dos clientes, que actúan respectivamente como dispositivo emisor 4 y dispositivo receptor 6, y al menos un servidor que actúa como unidad central 8. Por lo general, el cliente y el servidor están distantes entre sí e interactúan generalmente a través de una red de comunicación y, preferentemente, interactúan siempre y únicamente a través de Internet. La relación entre el cliente y el servidor se implementa por medio de programas informáticos apropiados que se ejecutan en los respectivos procesadores y que presentan relaciones mutuas cliente-servidor.[0144] The system according to the invention may comprise at least two clients, acting respectively as sending device 4 and receiving device 6, and at least one server acting as central unit 8. In general, the client and the server they are distant from each other and generally interact through a communication network and, preferably, always and only interact through the Internet. The relationship between the client and the server is implemented by means of appropriate computer programs running on the respective processors and having mutual client-server relationships.
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| IT102017000080016AIT201700080016A1 (en) | 2017-07-14 | 2017-07-14 | Improved messaging system. |
| PCT/IB2018/055193WO2019012493A1 (en) | 2017-07-14 | 2018-07-13 | Managing graphic and/or audio elements in a messaging system |
| Publication Number | Publication Date |
|---|---|
| ES2902777T3true ES2902777T3 (en) | 2022-03-29 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES18750504TActiveES2902777T3 (en) | 2017-07-14 | 2018-07-13 | Management of graphic and/or audio elements in a messaging system |
| Country | Link |
|---|---|
| US (1) | US10848447B2 (en) |
| EP (1) | EP3652900B1 (en) |
| KR (1) | KR102550427B1 (en) |
| CN (1) | CN111095878B (en) |
| AU (1) | AU2018299050B2 (en) |
| CA (1) | CA3068790A1 (en) |
| EA (1) | EA202090152A1 (en) |
| ES (1) | ES2902777T3 (en) |
| HU (1) | HUE056188T2 (en) |
| IT (1) | IT201700080016A1 (en) |
| PL (1) | PL3652900T3 (en) |
| PT (1) | PT3652900T (en) |
| SG (1) | SG11202000207TA (en) |
| WO (1) | WO2019012493A1 (en) |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115373645A (en)* | 2022-10-24 | 2022-11-22 | 济南新语软件科技有限公司 | Complex data packet operation method and system based on dynamic definition |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2020102349A1 (en)* | 2018-11-13 | 2020-05-22 | Illumy, Inc. | Methods, systems, and apparatus for email to persistent messaging and/or text to persistent messaging |
| CN110417640A (en)* | 2019-07-22 | 2019-11-05 | 北京达佳互联信息技术有限公司 | Message method of sending and receiving, device, electronic equipment and storage medium |
| US11005802B1 (en)* | 2020-06-25 | 2021-05-11 | Sony Corporation | Importance determination for undelivered messages |
| CN114915853B (en)* | 2021-02-08 | 2024-12-03 | 中国电信股份有限公司 | Interactive information processing method, device, terminal and storage medium |
| MA62944A1 (en)* | 2023-11-01 | 2025-05-30 | Abderrahim Rafi | Keyboard with a method for improving communication in electronic messages and web pages |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8775341B1 (en)* | 2010-10-26 | 2014-07-08 | Michael Lamport Commons | Intelligent control with hierarchical stacked neural networks |
| US20130090961A1 (en)* | 2011-10-11 | 2013-04-11 | Stanley Benjamin Smith | System for a data supply chain to enable data suppliers to contribute data collection questions to data collection protocols and post data into said data collection protocols aligned with said data collection questions and compensate data suppliers and collect fees from data consumers and advertisers associated with the data supply chain. |
| WO2014100682A2 (en)* | 2012-12-21 | 2014-06-26 | Gnotech Llc | Messaging providing graphical and audible features |
| WO2015122993A1 (en)* | 2014-02-12 | 2015-08-20 | Young Mark H | Methods and apparatuses for animated messaging between messaging participants represented by avatar |
| US20150327033A1 (en)* | 2014-05-08 | 2015-11-12 | Aniways Advertising Solutions Ltd. | Encoding and decoding in-text graphic elements in short messages |
| CN105049318B (en)* | 2015-05-22 | 2019-01-08 | 腾讯科技(深圳)有限公司 | Message method and device, message treatment method and device |
| US20180314409A1 (en)* | 2015-10-08 | 2018-11-01 | Magnificus Software Inc. | Method and system for creating and using emojis and other graphic content in instant messaging systems |
| US9699299B1 (en)* | 2016-09-15 | 2017-07-04 | Amojee, Inc. | Messaging including custom characters with embedded content |
| US20180240138A1 (en)* | 2017-02-22 | 2018-08-23 | Qualtrics, Llc | Generating and presenting statistical results for electronic survey data |
| US10956454B2 (en)* | 2018-09-25 | 2021-03-23 | Microsoft Technology Licensing, Llc | Probabilistically generated identity database system and method |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115373645A (en)* | 2022-10-24 | 2022-11-22 | 济南新语软件科技有限公司 | Complex data packet operation method and system based on dynamic definition |
| CN115373645B (en)* | 2022-10-24 | 2023-02-03 | 济南新语软件科技有限公司 | Complex data packet operation method and system based on dynamic definition |
| Publication number | Publication date |
|---|---|
| IT201700080016A1 (en) | 2019-01-14 |
| KR20200024317A (en) | 2020-03-06 |
| CA3068790A1 (en) | 2019-01-17 |
| EP3652900A1 (en) | 2020-05-20 |
| PL3652900T4 (en) | 2022-05-02 |
| US10848447B2 (en) | 2020-11-24 |
| US20200228479A1 (en) | 2020-07-16 |
| EP3652900B1 (en) | 2021-08-04 |
| PT3652900T (en) | 2021-12-06 |
| AU2018299050B2 (en) | 2022-12-22 |
| KR102550427B1 (en) | 2023-06-30 |
| WO2019012493A1 (en) | 2019-01-17 |
| CN111095878B (en) | 2022-03-15 |
| SG11202000207TA (en) | 2020-02-27 |
| AU2018299050A1 (en) | 2020-01-30 |
| HUE056188T2 (en) | 2022-01-28 |
| PL3652900T3 (en) | 2022-05-02 |
| EA202090152A1 (en) | 2020-08-21 |
| CN111095878A (en) | 2020-05-01 |
| Publication | Publication Date | Title |
|---|---|---|
| ES2902777T3 (en) | Management of graphic and/or audio elements in a messaging system | |
| US11317240B2 (en) | Geo-location based event gallery | |
| ES2870509T3 (en) | Method and system of messaging and content exchange controlled by the issuer | |
| US10681081B2 (en) | Secure content and encryption methods and techniques | |
| KR102111180B1 (en) | Platform to build secure mobile collaborative applications using dynamic presentation and data configurations | |
| US9998473B2 (en) | WiFi access management system and methods of operation thereof | |
| EP2883180B1 (en) | System for providing multiple levels of authentication before delivering private content to client devices | |
| US9577989B2 (en) | Methods and systems for decrypting an encrypted portion of a uniform resource identifier | |
| US9537925B2 (en) | Browser notifications | |
| US20140140508A1 (en) | Method, System and Program Product for Secure Storage of Content | |
| US10419578B2 (en) | Method and system for sharing data between terminals | |
| US20150200936A1 (en) | System and method for security authentication via mobile device | |
| CN113254121A (en) | Messaging application interfacing with one or more extension applications | |
| US20180150881A1 (en) | Data transfer between mobile computing devices using short-range communication systems | |
| US20210319868A1 (en) | Systems and methods for secure prescription status updates using a mobile device | |
| WO2013184441A1 (en) | Confidential message exchange using benign, context-aware cover message generation | |
| CN104641613A (en) | Information sharing using token received using visual tag | |
| JP7015328B2 (en) | Peer transaction system | |
| ES2667485T3 (en) | Systems and procedures for the transmission of user-specific data with enhanced data protection | |
| WO2023177850A2 (en) | Selective redaction and access control for document segments | |
| US10194287B2 (en) | Information transmitting device and method and information receiving device and method | |
| HK40029496A (en) | Managing graphic and/or audio elements in a messaging system | |
| HK40029496B (en) | Managing graphic and/or audio elements in a messaging system | |
| EA040331B1 (en) | MESSAGE SYSTEM | |
| US9864976B2 (en) | Transferring funds between financial accounts of two accountholders |