Pakete, Repositories und App-Kategorien suchen

Paketdetailsv0.3.3

xmpp_stone

Xmpp Stone ist eine leichtgewichtige XMPP-Client-Bibliothek, die vollständig in Dart geschrieben wurde.

30-Tage-Downloads
409
Likes
72
Pub-Punkte
40

Paket installieren

flutter pub add xmpp_stone

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Xmpp Stone ist eine leichte XMPP-Client-Bibliothek, die vollständig in Dart entwickelt wurde und für Echtzeitkommunikation in Flutter-Anwendungen konzipiert ist. Sie ermöglicht eine nahtlose Integration von XMPP-Funktionen (Extensible Messaging and Presence Protocol), unterstützt Instant Messaging, Statusaktualisierungen und den Echtzeitdatenaustausch. Die Bibliothek ist ideal für Entwickler, die effiziente, plattformübergreifende Echtzeitkommunikation ohne schwere Abhängigkeiten suchen. Mit ihrer sauberen API und dem Fokus auf Leistung vereinfacht sie die Implementierung von Chat- und Zusammenarbeitsfunktionen in Apps. Der Quellcode ist öffentlich auf GitHub verfügbar, um Transparenz und Anpassungsfähigkeit zu gewährleisten.

Anwendungsfälle

  • Echtzeit-Messaging-Apps
  • Anwesenheits- und Statusverfolgung
  • Chatbasierte Zusammenarbeitswerkzeuge
  • IoT-Gerätekommunikation
  • Plattformübergreifende Chat-Integration

Hauptmerkmale

  • Leicht und schnell
  • Reine Dart-Implementierung
  • Unterstützt das XMPP-Protokoll
  • Einfache Integration mit Flutter
  • Open-Source und erweiterbar

Geeignet für

  • Entwickler, die Chat-Apps erstellen
  • Teams, die Echtzeit-Synchronisierung benötigen
  • Projekte, die XMPP-Unterstützung erfordern
  • Flutter-Apps mit geringer Latenz benötigt
  • Maßgeschneiderte Echtzeitkommunikationslösungen

Hinweise

  • Beschränkte Dokumentation
  • Kein offizieller Wartungsstatus
  • XMPP-Server-Einrichtung erforderlich
  • Nicht geeignet für komplexe Messaging-Abläufe
  • Abhängig von externer XMPP-Server-Infrastruktur

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

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

Kategorien

Abhängigkeiten

Abhängigkeiten 10 Einträge

Quell-Repository

Projekte, die dieses Paket verwenden

Noch keine Daten verfügbar.