# go-iar-notificator A Go client and utility for interacting with the IamResponding (IaR) API, designed to send alerts and keep-alive signals for pager groups. This project is structured for extensibility and integration with custom notification workflows. ## Features - API client for IaR with keep-alive and alerting support - Configurable via YAML and Go structs - Modular codebase for easy extension - Logging with slog ## Project Structure ``` config.yml # Example configuration file main.go # Entry point bus/ # Event bus logic client/ # IaR API client and helpers config/ # Configuration structs and loading utils/ # Utility functions watcher/ # File or event watcher logic ``` ## Getting Started ### Prerequisites - Go 1.20 or newer - Access to the IamResponding API (credentials required) ### Installation Clone the repository: ```sh git clone cd go-iar-notificator ``` Install dependencies: ```sh go mod tidy ``` ### Configuration Edit `config.yml` with your IaR credentials and settings. ### Usage Build and run the main application: ```sh go run main.go ``` Or build a binary: ```sh go build -o iar-notificator main.go ./iar-notificator ``` ## Testing Run all tests: ```sh go test ./... ``` ## License MIT License ## Author Alex Savin