A Kotlin library to build and send Slack messages via Slack webhook
Slackalo is available in maven central
dependencies {
implementation 'com.gianluz:slackalo:1.0'
}
Build your custom slack message just using the builder utils provided. Checkout the official Slack Block Kit Builder here Slackalo doesn't provide all the blocks right now, but you can contribute to make it more complete! Here you can find a list of what currently Slackalo support:
Section
asPlainText
orMarkdownText
onlyImage
asImageBlock
- Section with
Fields
asFieldsBlock
- Section with
Image
asImagePlainTextBlock
orImageMarkdownBlock
Divider
asDivider
To create a slack webhook url please follow the official slack app guide here
Here an example:
val message = slackMessage {
blocks {
plainText("Hello this is a plaintext")
markdown("Hello this is a markdown")
divider()
imageMarkdown(
":warning: This is a message with an image and slack emoji",
"https://api.slack.com/img/blocks/bkb_template_images/palmtree.png",
"alt text"
)
divider()
fields {
markdown("Field 1")
markdown("Field 2")
markdown("Field 3")
}
}
}
with(DefaultWebHookClient()) {
sendWebHook("MySlackWebHookUrl", message)
}
Please fork this repo, and add all the new functionalities you would like to have and open a Pull request!