Mensajes Privados

Habilita la mensajería privada entre usuarios con conversaciones en hilos, bloqueo de usuarios, etiquetado y notificaciones por correo electrónico.

privatemsg
3,431 sites
29
drupal.org

Overview

Private Messages es un módulo completo de mensajería privada para Drupal que permite a los usuarios intercambiar mensajes directamente entre sí. El módulo implementa un sistema de conversaciones en hilos donde los mensajes se agrupan, soportando tanto conversaciones individuales como chats grupales con múltiples participantes.

El módulo proporciona una experiencia de mensajería completa que incluye composición de mensajes con formato de texto enriquecido, seguimiento de estado leído/no leído, etiquetado de hilos para organización, capacidades de bloqueo de usuarios y notificaciones por correo electrónico configurables. Los usuarios pueden gestionar sus conversaciones a través de una interfaz de bandeja de entrada dedicada con filtrado y operaciones masivas potenciadas por Views Bulk Operations.

Para desarrolladores, el módulo ofrece un servicio API robusto para crear mensajes e hilos programáticamente, junto con hooks para extender la funcionalidad de bloqueo/desbloqueo. El módulo también incluye rutas de migración desde los módulos Private Message de Drupal 6 y Drupal 7.

Features

  • Sistema de mensajería privada en hilos con soporte para conversaciones individuales y grupales
  • Composición de mensajes con texto enriquecido y formatos de texto configurables
  • Seguimiento de estado leído/no leído con indicadores visuales para mensajes nuevos
  • Sistema de bloqueo de usuarios para prevenir mensajes no deseados, con roles no bloqueables configurables
  • Etiquetado de hilos usando términos de taxonomía para organizar conversaciones
  • Notificaciones por correo electrónico para mensajes nuevos (configurable por usuario)
  • Soporte de operaciones masivas vía Views Bulk Operations (marcar leído/no leído, eliminar, cambiar etiquetas)
  • Visualización de avatares de usuario en hilos de mensajes con imágenes predeterminadas de respaldo
  • Funcionalidad para abandonar chat en conversaciones grupales
  • Permisos de mensajería basados en roles para controlar quién puede enviar mensajes
  • Configuración de rol de moderador para manejar quejas
  • Eliminación automática de mensajes eliminados después de días configurables
  • Integración con perfil de usuario permitiendo a los usuarios habilitar/deshabilitar mensajería
  • Enlace para enviar mensaje privado en páginas de perfil de usuario
  • Contador de mensajes no leídos en el menú de cuenta con carga diferida
  • API programática para crear mensajes e hilos
  • Soporte de migración desde Drupal 6 y Drupal 7

Use Cases

Mensajería Privada de Foro Comunitario

Habilita la comunicación privada entre miembros del foro. Los usuarios pueden enviarse mensajes directos entre sí, discutir temas privadamente y bloquear contactos no deseados. Los moderadores pueden recibir quejas sobre mensajes inapropiados.

Comunicación de Soporte al Cliente

Permite a los clientes comunicarse privadamente con el personal de soporte. Configure los roles de soporte como no bloqueables para que siempre puedan contactar a los clientes. Use etiquetas para organizar hilos de soporte por tema o estado.

Colaboración de Equipo

Habilita la mensajería grupal para equipos de proyecto. Múltiples usuarios pueden participar en un solo hilo, compartir actualizaciones y recibir notificaciones por correo para mensajes nuevos.

Mensajería Comprador-Vendedor de Comercio Electrónico

Permite a compradores y vendedores comunicarse sobre productos o pedidos. Los usuarios pueden bloquear spammers mientras mantienen comunicación abierta con contactos legítimos.

Notificaciones Programáticas

Use el servicio API para enviar mensajes privados automatizados desde módulos personalizados. Por ejemplo, enviar mensajes de bienvenida a nuevos usuarios o mensajes de notificación sobre actualizaciones de contenido.

Tips

  • Use la función de etiquetado de taxonomía para organizar hilos por proyecto, prioridad o categoría para una gestión más fácil.
  • Configure las notificaciones por correo a nivel de sitio y permita que los usuarios opten por participar o no en sus perfiles para preferencias de notificación flexibles.
  • Configure un rol de moderador y configúrelo en los ajustes para permitir a los usuarios reportar mensajes inapropiados.
  • Para sitios de alto tráfico, considere ajustar la configuración de días de 'Eliminar mensajes borrados' para equilibrar el uso de almacenamiento con los requisitos de auditoría.
  • Use los plugins de Devel Generate para probar con grandes volúmenes de mensajes antes de poner en producción.
  • La API programática (servicio privatemsg.common) permite la integración con módulos personalizados para mensajería automatizada.
  • Coloque el bloque de Mensajes Privados en una barra lateral para acceso rápido a la bandeja de entrada sin navegar a la página completa.

Technical Details

Admin Pages 7
Configuración de Mensajes Privados /admin/config/content/privatemsg-settings

Configura los ajustes globales para el módulo Private Messages incluyendo retención de mensajes, roles permitidos para mensajería, asignación de moderador y qué roles no pueden ser bloqueados.

Configuración de Mensaje PrivateMsg /admin/structure/privatemsg-message

Página de configuración de entidad para el tipo de entidad Mensaje Privado. Permite la configuración de ajustes de visualización de campos para mensajes.

Configuración de Hilo PrivateMsg /admin/structure/privatemsg-thread

Página de configuración de entidad para el tipo de entidad Hilo de Mensaje Privado. Permite la configuración de ajustes de visualización de campos para hilos.

Mensajes Privados (Bandeja de entrada) /messages

Página de bandeja de entrada para el usuario que muestra todos los hilos de mensajes privados. Incluye filtros expuestos para buscar por asunto, miembros y etiquetas. Soporta operaciones masivas vía Views Bulk Operations incluyendo marcar como leído/no leído, eliminar y cambiar etiquetas. Muestra asunto del hilo, participantes, hora de última actualización, cantidad de mensajes y etiquetas.

Escribir nuevo mensaje /messages/new

Formulario para componer y enviar un nuevo mensaje privado. Los usuarios pueden especificar uno o más destinatarios, un asunto opcional y el cuerpo del mensaje.

Usuarios bloqueados /messages/blocked

Gestiona los usuarios que están bloqueados para enviarle mensajes privados. Vea los usuarios actualmente bloqueados y bloquee usuarios adicionales.

Ver Hilo de Mensaje /messages/view/{thread_id}

Muestra un hilo de mensaje completo con todos los mensajes, información de participantes, etiquetas y un formulario de respuesta. Muestra avatares de usuario, marcas de tiempo, indicadores de leído/no leído y proporciona acciones para bloquear usuarios y eliminar mensajes.

Permisos 7
Administrar configuración de mensajes privatemsg

Otorga acceso administrativo completo para configurar los ajustes de Mensajes Privados y gestionar entidades de mensajes/hilos. Este es un permiso de acceso restringido.

Escribir y ver mensajes

Permite a los usuarios componer y enviar mensajes privados, ver sus hilos de mensajes y responder a conversaciones existentes.

Usar acciones de mensajes

Permite a los usuarios realizar acciones masivas en hilos de mensajes como marcar como leído, marcar como no leído y eliminar hilos.

Eliminar mensajes propios

Permite a los usuarios eliminar (eliminación suave) sus propios mensajes dentro de los hilos. Los mensajes eliminados muestran un marcador de posición indicando la eliminación.

Ver mensajes eliminados

Permite a los usuarios ver el contenido de los mensajes que han sido marcados como eliminados por sus autores.

Permitir enviar mensajes a roles

Permite a los usuarios enviar mensajes privados a todos los usuarios con un rol específico de una vez.

Permitir bloquear a otros usuarios

Permite a los usuarios bloquear a otros usuarios para que no les envíen mensajes privados y gestionar su lista de usuarios bloqueados.

Hooks 2
hook_privatemsg_block_user

Se invoca cuando un usuario bloquea a otro usuario. Permite a los módulos reaccionar al bloqueo de usuarios.

hook_privatemsg_unblock_user

Se invoca cuando un usuario desbloquea a otro usuario. Permite a los módulos reaccionar al desbloqueo de usuarios.

Drush Commands 1
drush privatemsg:1to2

Migra datos de mensajes privados de la versión 1.x del módulo a la estructura basada en entidades 2.x. Lee de las tablas heredadas pm_message_old y pm_index_old y crea nuevas entidades de mensajes e hilos.

Troubleshooting 5
Los usuarios no pueden enviarse mensajes entre sí

Verifique que ambos usuarios tengan roles habilitados en la configuración 'Permitir enviar mensajes privados para estos roles', ambos usuarios tengan la mensajería habilitada en su perfil (Editar perfil > Mensajes Privados > Habilitar mensajes privados), y ningún usuario haya bloqueado al otro.

Las notificaciones por correo no se están enviando

Verifique que el destinatario tenga 'Recibir notificación por correo para mensajes privados entrantes' habilitado en la configuración de su perfil y que el sistema de correo de Drupal esté correctamente configurado.

Los mensajes eliminados no se están removiendo de la base de datos

Asegúrese de que cron se ejecute regularmente. Los mensajes eliminados son permanentemente removidos por el trabajo de cron después del número configurado de días en la configuración 'Eliminar mensajes borrados de la BD después de (días)'.

No se puede bloquear a ciertos usuarios

El usuario puede tener un rol configurado en 'Los usuarios no pueden bloquear a otros usuarios con estos roles'. Los administradores típicamente configuran roles importantes como el personal de soporte como no bloqueables.

El elemento de menú de Mensajes Privados muestra un conteo incorrecto de no leídos

El conteo usa construcción diferida sin caché. Si los problemas persisten, limpie todas las cachés y verifique que las tablas de base de datos pm_thread_history y pm_index estén correctamente pobladas.

Security Notes 5
  • El permiso 'administer privatemsg' otorga acceso completo a todos los mensajes y configuraciones - asigne solo a administradores de confianza.
  • El bloqueo de usuarios solo previene el envío de mensajes; no oculta los mensajes existentes de ninguna de las partes.
  • Las notificaciones por correo incluyen un enlace al hilo del mensaje - asegúrese de que su sitio use HTTPS para proteger estos enlaces.
  • El permiso 'Ver mensajes eliminados' permite ver el contenido de mensajes incluso después de la eliminación - considere cuidadosamente quién recibe este permiso.
  • Los mensajes usan el sistema de formatos de texto de Drupal - asegúrese de que los formatos apropiados estén disponibles para prevenir ataques XSS.