pulse_flutter 1.0.0
pulse_flutter: ^1.0.0 copied to clipboard
A pulse-droid-inspired MQTT orchestration layer for Flutter: retry policies, auto-resubscription, offline outbox, connection health monitoring, and a true Android background transport on top of mqtt_client.
Changelog #
1.0.0 #
- Initial release.
PulseClient—connect()/publish()/publishBytes()/subscribe()/unsubscribe()ergonomic API.PulseMqttKit—pulse-droid-parity API (submitCommand, listener-based results, declared command dependencies).- Two transports:
MqttClientTransport(pure Dart, all platforms) andNativeForegroundTransport(Android, Eclipse Paho in a foreground service — survives app backgrounding). - Retry policies:
RetryPolicy.sequential,.exponential,.jitter,.none, with per-error-code exclusions. - Sequential command queue, structured
CommandResult<T>/MqttCommandResult. - Auto-resubscription after reconnect.
- In-memory offline outbox with ordered flush on reconnect.
ConnectionHealthMonitor— periodic liveness check + connectivity-change reaction, with native AlarmManager/WorkManager backstop on Android.- Typed event stream (
PulseConnected,PulseDisconnected,PulseReconnecting,PulseMessageReceived,PulseMessageQueued,PulseOutboxFlushed,PulseSubscribed,PulseUnsubscribed,PulseHealthCheckFailed,PulseError).