A simple microservice which accepts incoming notifications

Notifier

A gif showing the project in action

A simple microservice which accepts incoming notifications, and questions and redirects them to notification sinks such as Telegram, Email etc.

Building

$ go get -u github.com/swaggo/swag/cmd/swag
$ go generate . && go build .

You can also use the provided dockerfile.

Configuration

Put this to notifier-config.yaml at ./notifier-config.yaml, /etc/notifier/notifier-config.yaml or ~/.config/notifier/notifier-config.yaml:

http:
  jwt_secret: <jwt secret here> # enter jwt secret here (some random characters)
  addr: :8080
sinks:
  - type: telegram
    bot_token: <bot token here>
    chat_id: <chat id to post messages to>
  - type: email
    from: "[email protected]"
    to:
      - "[email protected]"
    smtp_address: "mail.example.com:587"
    smtp_username: "[email protected]"
    smtp_password: "cocker12"
    starttls: true
users:
  - username: user # used to login via web and view API docs at :8080
    password: pass
  - username: my-script
    token: JzvFZ9Rt0lAq6loSrr6nKN4AwfTYfEK1PnhZwWb # Add it in the `Authorization` header to authenticate

Api docs

See docs/swagger.md. Or go to the IP of the server and log-in.

License

This project is licensed under the MIT.

Similar Resources

Uniqush is a free and open source software system which provides a unified push service for server side notification to apps on mobile devices.

Homepage Download Blog/News @uniqush Introduction Uniqush (\ˈyü-nə-ku̇sh\ "uni" pronounced as in "unified", and "qush" pronounced as in "cushion") is

Jan 9, 2023

The Xiaomi message push service is a system-level channel on MIUI and is universal across the platform, which can provide developers with stable, reliable, and efficient push services.

Go-Push-API MiPush、JiPush、UMeng MiPush The Xiaomi message push service is a system-level channel on MIUI and is universal across the platform, which c

Oct 20, 2022

Putcallback: a program which handles callback from Put.io

putcallback putcallback is a program which handles callback from Put.io. It will

Nov 18, 2022

Asynq: simple, reliable, and efficient distributed task queue in Go

Asynq: simple, reliable, and efficient distributed task queue in Go

Asynq Overview Asynq is a Go library for queueing tasks and processing them asynchronously with workers. It's backed by Redis and is designed to be sc

Dec 30, 2022

Abstraction layer for simple rabbitMQ connection, messaging and administration

Abstraction layer for simple rabbitMQ connection, messaging and administration

Jazz Abstraction layer for quick and simple rabbitMQ connection, messaging and administration. Inspired by Jazz Jackrabbit and his eternal hatred towa

Dec 12, 2022

Go simple async message bus

Go simple async message bus

🚌 message-bus Go simple async message bus. 📖 ABOUT Contributors: Rafał Lorenz Want to contribute ? Feel free to send pull requests! Have problems, b

Dec 29, 2022

A simple pubsub package for go.

Package pubsub implements a simple multi-topic pub-sub library. Install pubsub with, go get github.com/cskr/pubsub This repository is a go module and

Dec 31, 2022

A single binary, simple, message queue.

MiniQueue A stupid simple, single binary message queue using HTTP/2. Most messaging workloads don't require enormous amounts of data, endless features

Nov 9, 2022

Simple, high-performance event streaming broker

Styx Styx is a simple and high-performance event streaming broker. It aims to provide teams of all sizes with a simple to operate, disk-persisted publ

Nov 24, 2022
Related tags
May 11, 2023
Bark is an iOS App which allows you to push customed notifications to your iPhone.
Bark is an iOS App which allows you to push customed notifications to your iPhone.

Bark is an iOS App which allows you to push customed notifications to your iPhone.

Jan 3, 2023
A dead simple Go library for sending notifications to various messaging services.
A dead simple Go library for sending notifications to various messaging services.

A dead simple Go library for sending notifications to various messaging services. About Notify arose from my own need for one of my api server running

Jan 7, 2023
ntfy is a super simple pub-sub notification service. It allows you to send desktop notifications via scripts.

ntfy ntfy (pronounce: notify) is a super simple pub-sub notification service. It allows you to send desktop and (soon) phone notifications via scripts

Jan 9, 2023
⚡ HTTP/2 Apple Push Notification Service (APNs) push provider for Go — Send push notifications to iOS, tvOS, Safari and OSX apps, using the APNs HTTP/2 protocol.

APNS/2 APNS/2 is a go package designed for simple, flexible and fast Apple Push Notifications on iOS, OSX and Safari using the new HTTP/2 Push provide

Jan 1, 2023
💨 A real time messaging system to build a scalable in-app notifications, multiplayer games, chat apps in web and mobile apps.
💨 A real time messaging system to build a scalable in-app notifications, multiplayer games, chat apps in web and mobile apps.

Beaver A Real Time Messaging Server. Beaver is a real-time messaging server. With beaver you can easily build scalable in-app notifications, realtime

Jan 1, 2023
Sending line notifications using a binary, docker or Drone CI.
Sending line notifications using a binary, docker or Drone CI.

drone-line Sending line notifications using a binary, docker or Drone CI. Register Line BOT API Trial Please refer to LINE Business Center. Feature Se

Sep 27, 2022
Package notify provides an implementation of the Gnome DBus Notifications Specification.

go-notify Package notify provides an implementation of the Gnome DBus Notifications Specification. Examples Display a simple notification. ntf := noti

Dec 27, 2022
Send slack notifications using Github action

Slack notification This is a simple Slack notification action which runs using a Bot token. Example Action A simple example on how to use this action:

Aug 9, 2021
Golang tool to send notifications to LINE app
Golang tool to send notifications to LINE app

Golang tool to send notifications to LINE app

Nov 9, 2022