Native Go XMPP library
Go to file
Mickaël Rémond 2f391fde80
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
2019-06-06 11:58:50 +02:00
cmd Add Client Manager to monitor connection state and trigger reconnect (#39) 2019-06-06 11:58:50 +02:00
.gitignore More file to ignore 2019-05-16 17:48:53 +02:00
auth.go Refactor / clean up registry 2019-06-04 18:47:44 +02:00
backoff_test.go Add Client Manager to monitor connection state and trigger reconnect (#39) 2019-06-06 11:58:50 +02:00
backoff.go Add Client Manager to monitor connection state and trigger reconnect (#39) 2019-06-06 11:58:50 +02:00
check_cert.go Fix import path 2019-05-16 18:01:47 +02:00
client_manager.go Add Client Manager to monitor connection state and trigger reconnect (#39) 2019-06-06 11:58:50 +02:00
client_test.go Move project to gosrc.io/xmpp 2018-12-26 18:50:01 +01:00
client.go Add Client Manager to monitor connection state and trigger reconnect (#39) 2019-06-06 11:58:50 +02:00
CODE_OF_CONDUCT.md Add CoC and contribution guide 2019-01-21 16:24:26 +01:00
codecov.yml Disable Codecov comments on PR 2019-05-31 19:08:20 +02:00
codeship-services.yml Add Codecov support 2018-01-01 18:57:56 +01:00
codeship-steps.yml Workaround Codeship coverage upload report issues 2018-01-02 16:21:45 +01:00
codeship.env.encrypted Add missing codecov token 2018-01-01 18:59:19 +01:00
component_test.go Move project to gosrc.io/xmpp 2018-12-26 18:50:01 +01:00
component.go [BUGFIX] no pointer in type case in component 2019-05-31 13:46:57 +02:00
config.go Add Client Manager to monitor connection state and trigger reconnect (#39) 2019-06-06 11:58:50 +02:00
CONTRIBUTING.md Add CoC and contribution guide 2019-01-21 16:24:26 +01:00
control_test.go Refactor / clean up registry 2019-06-04 18:47:44 +02:00
doc.go Move project to gosrc.io/xmpp 2018-12-26 18:50:01 +01:00
Dockerfile Run tests on Golang 1.12 2019-06-04 18:59:34 +02:00
go.mod Use tagged version for soundcloud and mgp123 2019-01-23 09:22:15 +01:00
go.sum Use tagged version for soundcloud and mgp123 2019-01-23 09:22:15 +01:00
iot_control.go fix import after moving 2019-06-05 08:41:40 +02:00
iq_test.go Apply namespace fixes from #33 2019-06-05 08:51:21 +02:00
iq.go Expose type registry for custom user-defined payload and extensions 2019-06-05 10:23:18 +02:00
jid_test.go Improve JID parsing 2019-06-05 10:02:24 +02:00
jid.go Improve JID parsing 2019-06-05 10:02:24 +02:00
LICENSE Moving XMPP library to Fluux project 2018-01-01 18:12:33 +01:00
message_test.go Refactor / clean up registry 2019-06-04 18:47:44 +02:00
message.go Expose type registry for custom user-defined payload and extensions 2019-06-05 10:23:18 +02:00
msg_chat_markers.go Expose type registry for custom user-defined payload and extensions 2019-06-05 10:23:18 +02:00
msg_oob.go Expose type registry for custom user-defined payload and extensions 2019-06-05 10:23:18 +02:00
msg_receipts_test.go Refactor / clean up registry 2019-06-04 18:47:44 +02:00
msg_receipts.go Expose type registry for custom user-defined payload and extensions 2019-06-05 10:23:18 +02:00
ns.go Move project to gosrc.io/xmpp 2018-12-26 18:50:01 +01:00
packet.go Move project to gosrc.io/xmpp 2018-12-26 18:50:01 +01:00
parser.go Add Client Manager to monitor connection state and trigger reconnect (#39) 2019-06-06 11:58:50 +02:00
pep.go fix import after moving 2019-06-05 08:41:40 +02:00
presence_test.go Update presence_test.go 2019-05-16 18:03:44 +02:00
presence.go Parse show, status, and priority of presence stanzas as child elements instead of attributes 2019-02-09 14:18:37 +00:00
README.md Fix codecov badge 2019-05-31 19:10:42 +02:00
registry_test.go Refactor / clean up registry 2019-06-04 18:47:44 +02:00
registry.go Expose type registry for custom user-defined payload and extensions 2019-06-05 10:23:18 +02:00
session.go Add tool to check XMPP certificate on starttls 2019-05-16 17:48:53 +02:00
socket_proxy.go Add tool to check XMPP certificate on starttls 2019-05-16 17:48:53 +02:00
starttls.go Move project to gosrc.io/xmpp 2018-12-26 18:50:01 +01:00
stream.go Add tool to check XMPP certificate on starttls 2019-05-16 17:48:53 +02:00
tcp_server_mock.go Move project to gosrc.io/xmpp 2018-12-26 18:50:01 +01:00
test.sh Add test (and refactor them) for PR#15 (#18) 2019-02-10 17:53:18 +01:00
xmpp_test.go Update xmpp_test.go 2019-05-16 18:04:09 +02:00

Go XMPP

Codeship Status for FluuxIO/xmpp GoDoc GoReportCard codecov

Fluux XMPP is a Go XMPP library, focusing on simplicity, simple automation, and IoT.

The goal is to make simple to write simple adhoc XMPP clients:

  • For automation (like for example monitoring of an XMPP service),
  • For building connected "things" by plugging them on an XMPP server,
  • For writing simple chatbot to control a service or a thing.
  • For writing XMPP servers components.

The library is designed to have minimal dependencies. For now, the library does not depends on any other library.

Usage

Please, check GoDoc for more information: gosrc.io/xmpp