Provider para gestionar la comunicación en la aplicación, incluyendo chats, mensajes y reacciones, con soporte para carga de mensajes y notificaciones periódicas.
Importación
import ' package:togie/providers/communication_provider.dart ' ;
Métodos
Método Descripción init()Inicializa el proveedor de comunicación, cargando los canales de chat y configurando las actualizaciones periódicas. finish()Finaliza cualquier tarea en curso. registerUser(String email)Registra al usuario en el sistema utilizando su correo electrónico. getCurrentChatMessages()Obtiene los mensajes actuales del chat seleccionado. getNewestChatMessages()Obtiene los mensajes más recientes del chat seleccionado. getPreviousChatMessages()Obtiene los mensajes anteriores del chat seleccionado. sendMessage(String messageText, List<Document> messageDocuments, Participant sender)Envía un mensaje al chat seleccionado, con la opción de incluir documentos y una respuesta a un mensaje previo. addReaction(String messageID, ConversationReaction emoji)Agrega una reacción de emoji a un mensaje específico. clearRelease()Limpia la selección de mensaje de release.
Propiedades
Propiedad Tipo Descripción isLoadingbool Indica si el proveedor está cargando información o realizando alguna operación. expandedPanelint Índice del panel expandido en la interfaz de usuario. Si no hay panel expandido, tiene un valor de -1. releaseChannelListList< Chat > Lista de canales de chat de releases disponibles. conversationChatListList< Chat > Lista de chats activos de conversación. conversationMessagesList< ConversationMessage > Lista de mensajes en la conversación seleccionada. conversationProfileParticipant? Perfil del participante en la conversación actual. selectedReleaseConversationMessage? Mensaje de release seleccionado actualmente. selectedChatChat? Chat seleccionado actualmente. replyMessageConversationMessage? Mensaje al que se está respondiendo en la conversación actual. errorMessageString Mensaje de error que se muestra si ocurre un fallo en las operaciones del proveedor. articlesMap< String, String > Mapa que contiene los artículos disponibles, mapeando el ID de cada artículo con su nombre.
Ejemplo de uso
CommunicationProvider communicationReader = context. read < CommunicationProvider >();
communicationReader. clearRelease (),