Red de conocimiento informático - Conocimiento del nombre de dominio - OpenIM, un proyecto de mensajería instantánea de código abierto, ha lanzado una API de envío de mensajes para admitir una integración profunda de aplicaciones con interoperabilidad de mensajería instantánea.

OpenIM, un proyecto de mensajería instantánea de código abierto, ha lanzado una API de envío de mensajes para admitir una integración profunda de aplicaciones con interoperabilidad de mensajería instantánea.

Tomando como ejemplo escenarios de oficina, como notificaciones de empleados, notificaciones de vacaciones y otras notificaciones comerciales, el sistema oa maneja una lógica comercial específica y luego llama a la API de envío de mensajes para llegar a los usuarios objetivo.

Ejemplos de resultados

Por ejemplo, en un escenario de oficina colaborativa, los empleados reciben una notificación enviada por el sistema que informa que es necesario procesar una nueva tarea. ?

Los empleados hacen clic en las notificaciones de trabajo para ver detalles específicos, y cada notificación tiene un apodo y avatar de remitente diferente. Este tipo de notificación es un nuevo tipo de sesión en el que todas las notificaciones se agregan en la misma sesión.

Introducción a OpenIM

OpenIM: SDK de código abierto para la solución global de mensajería instantánea desde servidor a cliente. Los desarrolladores pueden reemplazar fácilmente los servicios en la nube de mensajería instantánea de terceros para crear aplicaciones con funciones sociales y de chat, y también pueden integrar SDK en sus propias aplicaciones para proporcionar funciones de mensajería instantánea. El valor de la mensajería instantánea de código abierto radica en "todo está bajo control" y "mi información es mi decisión", tanto en términos de tecnología como de seguridad de la información.

En total, más de 7,2 mil estrellas. Como líder en mensajería instantánea de código abierto, OpenIM continúa agregando nuevas funciones, incluida la API de envío de mensajes, lectura de chat grupal, etc. El servidor y el SDK tienen la licencia Apache-2.0 y su uso es gratuito. Los productos con UI requieren autorización comercial. Los clientes interesados ​​pueden contactarnos para discusiones en profundidad.

Servicio exclusivo VIP de 5X8 horas, que incluye:

(1) Consulta técnica personalizada, llamadas telefónicas WeChat, etc.

(2) Consulta de capacitación sobre el uso del SDK;

(3) Preguntas y respuestas sobre arquitectura e implementación del lado del servidor;

(4) Se priorizan las nuevas necesidades de mensajería instantánea para la programación;

(5 ) Se prioriza la corrección de errores;

p>

(6) Mantenimiento del sistema y respuesta a fallas;

Experiencia web:

Experiencia de Android: /#/

Breve descripción

El administrador envía mensajes de tipo notificación a través de la interfaz backend

Solicitar URL

",?

"senderNickname":?"SystemNotification2", ?

"content": {

"notificationName": ?"Gestión de documentos oficiales", ?

"notificationFaceURL": ?"", ?

"notificationType":?1,?

"text":?""Hola a todos, hoy es...",?

"externalUrl" : "",

"mixType": ?0, ?

"pictureElem": {

"sourcePath" : ?"", ?

"sourcePicture": {

"uuid": ?", ?

"type": ?", ? , ?

"tamaño": ?0, ?

"ancho": ?0, ?

"alto": ?0, ?

"url": ? "

},?

"bigPicture": {

"uuid":?""

},?,?

"tipo": ?"" }?, ?

"tamaño": ?0, ?

"ancho ": ?0, ?

"altura": ?0, ?

"url": ?"

}, ?

"snapshotPicture": {

"uuid":?""

},?,?

"type":?"" }?,?

"tamaño ":?0,?

"ancho":?0,?

"alto":?0,?

"url":?0, ?

?}

}, ?

"soundElem": {

"uuid ": ?""

}

"soundElem": ?, ?

"soundPath": ?"" , ?, ?

"sourceUrl": ?"" ,?,?

"dataSize":?0,?

"duración":?0

}, ?

" videoElem": {

"videoPath":?"" },?,?

"videoUUID":?"" }?,?

"videoUrl ":?"",?,?,?

"videoType":?"",?,?,?

"videoSize" :?0

,?

"duration":?0,?

"snapshotPath":?"" ,?,?

"snapshotUUID":?"" , ?

"snapshotSize": ?0, ?

"snapshotUrl": ?"" , ?, , ?

"snapshotWidth": ?0, ?

"snapshotHeight": ?0

}, ?

"fileElem": {

"filePath": ?" } , ?,?

"uuid":?"" }?,?

"sourceUrl":?"" ,?,?

"fileName" : ?"",?,?

"fileSize":?0

},?

"ex":?

} , ?

}, ?

"contentType": ?1400, ?

"sessionType": ?4, ?

" isOnlineOnly":? false,?

"offlinePushInfo": {

"title":? admin revocar su mensaje",?

"desc": ? ", ?

"ex": ?, ?

"iOSPushSound": ?"", ? predeterminado", ?

"iOSBadgeCount": ?

?}

}Copiar?clipboardErrorCopied

Parámetros de solicitud

Nombre del parámetro tipo descripción requerida

operaciónIDcadena es el ID de operación y permanece único. Se recomienda utilizar un número aleatorio en microsegundos de la hora actual para el uso de problemas de seguimiento de enlaces en segundo plano.

p> sendIDstring es el ID del administrador y el ID del administrador configurado en la configuración en segundo plano. file 1. El valor predeterminado es openIM123456

recvIDstring es el ID de usuario del receptor

senderPlatformIDint no tiene ID de plataforma del remitente, simula el envío del usuario cuando Complete, 1-gt; -gt; Android, 3-gt; Windows, 4-gt; OSX, 5-gt; Web, 5-gt; MiniWeb, 7-gt; senderFaceURLstringNo La imagen del encabezado notificaciones Generación de sesión

senderNicknamestringSin apodo del remitente, utilizado para la generación de sesión de notificación del cliente

contentobject es el contenido específico del mensaje y el interior es un objeto json

notificationNamestring es el título de la notificación

notificationFaceURLstring es el avatar de la notificación

notificationTypeint es el tipo de notificación, por ejemplo: 1 significa notificación de incorporación

notificationFaceURLstring significa el avatar de la notificación

notificationTypeint significa tipo de notificación.

Por ejemplo, 1 representa el aviso de entrada, 2 representa el aviso de renuncia

textstring es el texto de la notificación

externalUrlstring es la dirección de notificación que debe ser redirigida después de hacer clic

externalUrlstring es un objeto json. El enlace de dirección al que saltar después de hacer clic (si no está completado, no es necesario saltar)

mixTypeint es el tipo mixto de notificación 0: Notificación de texto sin formato 1: Notificación de imagen de texto 2: Notificación de video de texto 3: Notificación de documento de texto: notificación de documento de texto

PictureElemobject sin PictureElemobject

sourcePictureobject sin imagen original

bigPictureobject sin imagen grande

snapshotPictureobject sin miniatura

soundElemobject no tiene ningún objeto de elemento de sonido

videoElemobject no tiene ningún Elemobject de vídeo

fileElemobject no tiene ningún archivo Elemobject

uuidstring no tiene un ID único para el objeto que se almacenará en caché

iOSPushSoundstringNo hay sonido de inserción de IOS

iOSBadgeCountboolNo se incluye ningún mensaje de inserción de IOS en el recuento de no leídos del icono del escritorio

Ejemplo de devolución

{

"errCode": ?0, ?

"errMsg": ?", ?

"datos": {

"serverMsgID": ?

"datos":?,?

"clientMsgID":?"",?,?

"sendTime":? 1645697804432

}

}Copiar?clipboardErrorCopied

Parámetros devueltos

Nombre del parámetro tipo descripción

errCodeint0 éxito, error no 0

mensaje de error errMsgstring

sendTimeint La hora exacta en la que se envió el mensaje, especialmente la marca de tiempo de milisegundos

serverMsgIDstring El ID único del mensaje generado por el servidor

clientMsgIDstring cliente El ID único del mensaje generado por el punto final. Se utiliza como clave principal de forma predeterminada.

Descripción del formato del tipo de información

Breve descripción

El tipo de contenido en el campo de información enviado por el administrador. Descripción de los tipos de mensajes admitidos y descripciones de campos específicos en el contenido del mensaje.

Descripción del tipo de mensaje ContentType

Descripción del tipo de valor ContentType

Mensaje de texto 101

Mensaje de imagen 102

103 Mensajes de audio

104 Mensajes de vídeo

105 Mensajes de archivo

106 Chat grupal con mensajes tipo @

107 Fusionar mensaje tipo reenvío

108 Mensaje de tarjeta de visita

109 Mensaje de tipo geolocalización

110 Mensaje personalizado

111 Mensaje de tipo retiro

112 Leer mensaje de tipo de confirmación

114 Mensaje de tipo de referencia

Contenido específico

El contenido de un objeto json específico, diferentes tipos de mensajes son diferentes objetos json

Mensaje de texto

{

...

"content": {

" text":?" nihao "

},

....

}Copiar?a?clipboardErrorCopied

El nombre del parámetro debe completar la descripción del tipo

texto es el contenido específico de la cadena mensaje de texto

Mensaje personalizado

{

...

"contenido": {

"datos":?",?

"descripción":?"",?,?

"extensión": ?"",?,?

},

....

}Copiar?a?clipboardErrorCopied

Tipo de nombre de parámetro descripción obligatoria

la cadena datajson es un mensaje definido por el usuario, como una cadena de conversión del objeto json

la cadena descripciónjson es un mensaje definido por el usuario, como una cadena de conversión del objeto json String

la cadena descripciónjson no tiene extensión. La cadena descripciónjson es un mensaje definido por el usuario. Como cadena de conversión de un objeto json, no se puede utilizar.

la cadena extensiónjson no tiene campo de extensión y está temporalmente. no disponible.