View Source Runbox.Scenario.Notification (runbox v16.0.0)
Module contains functions for working with scenario notifications.
Summary
Functions
Lists all channels with templates defined for scenario, notification type and template type.
Lists all template languages defined for scenario, notification type, template type and channel.
Lists all notification types for a scenario.
Lists all template types of the specified notification.
Loads and evaluates templates specified by scenario, notification type, template type, channel and language.
Functions
@spec list_channels(String.t(), String.t(), String.t()) :: {:ok, [String.t()]} | {:error, File.posix()}
Lists all channels with templates defined for scenario, notification type and template type.
list_languages(scenario_id, notification_type, template_type, channel)
View Source@spec list_languages(String.t(), String.t(), String.t(), String.t()) :: {:ok, [String.t()]} | {:error, File.posix()}
Lists all template languages defined for scenario, notification type, template type and channel.
@spec list_notification_types(String.t()) :: {:ok, [String.t()]} | {:error, File.posix()}
Lists all notification types for a scenario.
@spec list_template_types(String.t(), String.t()) :: {:ok, [String.t()]} | {:error, File.posix()}
Lists all template types of the specified notification.
load_and_eval_templates(scenario, notification_type, template_type, channel, language, data, fallback_language)
View Source@spec load_and_eval_templates( scenario_id :: String.t(), notification_type :: String.t(), template_type :: String.t(), channel :: String.t(), language :: String.t(), data :: keyword(), fallback_language :: String.t() ) :: {:ok, %{required(String.t()) => String.t()}} | {:error, atom(), String.t()}
Loads and evaluates templates specified by scenario, notification type, template type, channel and language.
If language is not defined or does not exist, fallback_language
is used.