Add Client Manager to monitor connection state and trigger reconnect (#39)

- Support for exponential backoff on reconnect to be gentle on the server.
- Clean up client by moving metrics and retry strategy to the connection manager.
- Update echo_client to use client manager
- Fix echo client XMPP message matching

Fixes #21
Improvements for #8
This commit is contained in:
Mickaël Rémond
2019-06-06 11:58:50 +02:00
committed by GitHub
parent 6cdadc95e9
commit 2f391fde80
8 changed files with 300 additions and 69 deletions

View File

@@ -12,7 +12,6 @@ type Config struct {
Password string
PacketLogger *os.File // Used for debugging
Lang string // TODO: should default to 'en'
Retry int // Number of retries for connect
ConnectTimeout int // Connection timeout in seconds. Default to 15
// Insecure can be set to true to allow to open a session without TLS. If TLS
// is supported on the server, we will still try to use it.