athari-thirdparty is a collection of centralized wrappers and clients for third-party services used within the Flow ecosystem. It simplifies integration with external platforms by providing idiomatic Go interfaces and standardizing configuration.
To install the package:
go get github.com/factory24/athari-thirdpartyProvides clients for Azure services:
- Service Bus: Simplified message sending and receiving.
- Direct Method: Interface for Azure IoT Hub direct methods.
A high-level wrapper for the Pulsar Go client, supporting:
- Multi-topic producers and consumers.
- Automatic reconnection and standardized logging.
- JSON-based event processing using
flow-systemevent structures.
Streamlined Sentry initialization and error reporting.
Usage:
import "github.com/factory24/athari-thirdparty/sentry"
sentryClient := sentryClient.NewSentryClient(cfg.GetSentryConfig())
sentryClient.Connect()
defer sentryClient.Flush(2 * time.Second)Wrapper for the Elasticsearch v8 client for indexing and searching documents.
Integration with Infisical for secret management and environment variable injection.
Clients for interacting with the ChirpStack LoRaWAN Network Server API.
Standardized interfaces for multiple payment gateways (e.g., Arkesel, Hubtel).
This package depends on github.com/factory24/flow-system for shared configurations and models.
- Always use the provided factory functions (e.g.,
New...Client) to instantiate wrappers. - Ensure that credentials and connection strings are managed via
flow-system/pkg/config.