Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev0.3.3

xmpp_stone

O Xmpp Stone é uma biblioteca cliente XMPP leve escrita completamente em Dart.

Downloads em 30 dias
409
Curtidas
72
Pontos Pub
40

Instalar pacote

flutter pub add xmpp_stone

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

Xmpp Stone é uma biblioteca cliente XMPP leve construída inteiramente em Dart, projetada para comunicação em tempo real em aplicativos Flutter. Permite a integração sem problemas de funcionalidades XMPP (Protocolo de Mensagens e Presença Extensível), suportando mensagens instantâneas, atualizações de presença e troca de dados em tempo real. A biblioteca é ideal para desenvolvedores que buscam comunicação em tempo real eficiente e multiplataforma sem dependências pesadas. Com sua API limpa e foco em desempenho, simplifica a implementação de recursos de chat e colaboração em aplicativos. O código-fonte está disponível publicamente no GitHub para transparência e personalização.

Casos de uso

  • Aplicativos de mensagens em tempo real
  • Rastreamento de presença e status
  • Ferramentas de colaboração baseadas em chat
  • comunicação de dispositivo IoT
  • Integração de chat multiplataforma

Principais recursos

  • Leve e rápido
  • Implementação pura em Dart
  • Suporta o protocolo XMPP
  • Integração fácil com o Flutter
  • Open-source e extensível

Indicado para

  • Desenvolvedores construindo aplicativos de bate-papo
  • Equipes que precisam de sincronização em tempo real
  • Projetos que exigem suporte ao XMPP
  • Aplicativos Flutter com baixa latência necessária
  • Soluções personalizadas de comunicação em tempo real

Considerações

  • Documentação limitada
  • Sem status oficial de manutenção
  • Requer configuração do servidor XMPP
  • Não adequado para fluxos de trabalho de mensagens complexos
  • Depende da infraestrutura de servidor XMPP externo

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

XmppStone

Lightweight XMPP client library written completely in Dart. My intention is to write simple to use library for future XMPP client based on Flutter.

Supported documents:

  • RFC6120: Extensible Messaging and Presence Protocol (XMPP): Core
  • RFC6121: Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence
  • XEP-0198: Stream Management
  • XEP-0085: Chat State Notifications
  • XEP-0318: Best Practices for Client Initiated Presence Probes
  • XEP-0280: Message Carbons

Partly supported:

  • XEP-0030: Service Discovery
  • XEP-0313: Message Archive Management

Actively working on:

  • XEP-0059: Result Set Management
  • XEP-0004: Data Forms

Latest news

  • 2020-10-30: Added support for XEP-0280: Message Carbons
  • 2020-10-30: Added initial support for XEP-0313: Message Archive Management
  • 2020-10-30: Added logging mechanism
  • 2020-07-23: Added support for XEP-0318: Best Practices for Client Initiated Presence Probes
  • 2020-05-02: Added initial support for XEP-0198 : Stream Management
  • 2020-05-02: Added initial support for XEP-0085 : Chat State Notifications
  • 2019-04-02: added support for: XEP-0054: vcard-temp
  • 2019-04-01: added support for SHA-1 and SHA-256 authentication algorithm

Usage

import 'package:xmpp_stone/xmpp_stone.dart' as xmpp;

main() {
  xmpp.Connection connection = new xmpp.Connection("user@domain", "password", 5222);
  connection.open();
}

Features

1. Logging
Log level

Client can set logging level of the library with command:

Log.logLevel = LogLevel.VERBOSE;
XMPP traffic logging

Xmpp traffic can be enabled or disabled with:

Log.logXmpp = false
2. Message Archive Management

Feature is work in progress, API is subject to change.

Initial implementation of Message Archive Management.

RST is not yet implemented.

Usage:

  • Grabbing the module
connection.getMamModule()
  • Querying all messages:
mamManager.queryAll();
  • Querying messages based on date (All parameters are optional):
mamManager.queryByTime(start: startTime, end: endTime, jid: buddyJid);
  • Querying messages based on messageId (All parameters are optional): This method requires urn:xmpp:mam:2#extended to be supported by the serve, soon it will be available to check feature support.
mamManager.queryById(beforeId: beforeId, afterId: afterId, jid: buddyJid});

Checking capabilities of the server:

mamManager.isQueryByDateSupported
mamManager.isQueryByIdSupported
mamManager.isQueryByJidSupported

Categorias

Dependências

Lista de dependências 10 itens

Repositório-fonte

Projetos que usam este pacote

Ainda não há dados.