Kogno
Search
⌃K

Replies / Notifications

This chapter talks about the different formats used when replying to or sending an on-demand notification to a user.

Usage

On-demand

user = User.first
user.notification.text "Hello!"
user.notification.typing 1.second
user.notification.text("How are you today?")
user.notification.send()

As Reply in the Conversation

Using the @reply instance, accessible from any action block in a context or in the callbacks from the Conversation class.
class MainContext < Conversation
def blocks
intent "greeting" do
@reply.text "Hello!"
@reply.typing_on(2)
@reply.quick_reply(
"How are you today?",
[
{
title: "I'm good",
payload: :good
},
{
title: "Had better days",
payload: :bad
}
]
)
end
end
end
For this case, the call to the send() method is not necessary, since it's a reply within the conversation, therefore the framework will do it automatically.

Notification Formats

In Kogno, we try to unify as many formats as possible, in order to allow developers to write a unified code for a cross-platform conversational application.
Format
Description
Platforms
text
Text message
All
button
Text message with one or more buttons.
All
Text message with one or more buttons below.
All
raw
Calls to each platform with raw params.
All
list
Multiple choice list.
WhatsApp
carousel
Carrousel images, title, description, link, among others.
Messenger
url
Url with image, title and description.
All
typing
Pause for X seconds.
All
image
Sends an image.
All
video
Sends a video.
All
html
Message in HTML format.
Telegram
markdown
Message in Markdown format.
Telegram
contact
Contact information.
WhatsApp & Telegram
location
Sends a location.
WhatsApp & Telegram
Request for subscription to recurring notifications in Messenger.
Messenger
The generic template from Messenger.
Messenger
WhatsApp media message template.
WhatApp