Skip to content

ASAB Iris is a microservice for rendering documents and sending them using email, SMS and instant messaging

License

Notifications You must be signed in to change notification settings

TeskaLabs/asab-iris

Folders and files

NameName
Last commit message
Last commit date
Feb 9, 2023
Nov 8, 2022
Oct 26, 2022
Feb 9, 2023
Jan 30, 2023
Oct 13, 2022
Nov 8, 2022
Feb 21, 2023
Oct 13, 2022
Feb 3, 2023
Nov 8, 2022
Feb 9, 2023
Jan 29, 2023
Oct 13, 2022

Repository files navigation

ASAB Iris

ASAB Iris is a microservice for (1) rendering documents (reports, email bodies and attachments) using templates and (2) sending these documents to users using email, SMS and instant messaging services such as Slack.

ASAB Iris could be used for e.g. generating emails based on templates, rendering regular reports from dataset and so on. It is a multifuntional messanger.

Documentation

https://teskalabs.github.io/asab-iris/

Supported technologies

  • HTTP REST API
  • Apache Kafka (for incoming async requests)
  • Email (SMTP for outgoing mails)
  • Slack
  • Jinja2 for templating
  • Markdown (for templating, using Jinja2)
  • HTML (for templating, using Jinja2)
  • PDF (conversion of the output)
  • Powered by ASAB

Use cases

Send email

  • Use a template for email (Jinja, Markdown or HTML)
  • Use a template for attachment(s) (Jinja or Markdown) and format is HTML or PDF
  • Specify To, From, CC, BCC; or use defaults from configuration
  • Specify Subject or extract it from email body
  • Triggers by a web handler call (or calls), or Apache Kafka message
  • Use SMTP to send email
  • Templates are in the ASAB library

Render a report

  • Use a template from ASAB library
  • Use formatter(s) to get HTML or PDF document
  • HTTP REST API to get the report
  • Templates are in the ASAB library

Send slack Alerts

  • Consume the messages from Kafka topic.
  • With the help of info from messages , get a template from ASAB library.
  • HTTP REST API to send the alert messages using rendered template.

Architecture

WARNING: Templates used for email or Slack must be stored in Templates dir in filesystem or Templates node in zookeeper

Templates used for emailing must be stored under

/Templates/Email/

Templates used by Slack must be stored under

/Templates/Slack/

Templates used for other purpose must be stored under

/Templates/General/

About

ASAB Iris is a microservice for rendering documents and sending them using email, SMS and instant messaging

Resources

License

Stars

Watchers

Forks

Packages

No packages published