ExUssd.Handler behaviour (ExUssd v0.1.3) View Source

This module provides callbacks to implement ExUssd handler.

Link to this section Summary

Callbacks

Examples

defmodule MyHomeHandler do
  use ExUssd.Handler
  def init(menu, _api_parameters) do
    menu |> ExUssd.set(title: "Enter your pin number")
  end

  def callback(menu, api_parameters) do
    case api_parameters.text == "5555" do
      true ->
        menu
        |> ExUssd.set(title: "success, thank you.")
        |> ExUssd.set(should_close: true)

      _ ->
        menu |> ExUssd.set(error: "Wrong pin number\n")
    end
  end
end

Link to this section Types

Specs

api_parameters() :: map()

Specs

menu() :: ExUssd.t()

Link to this section Functions

Link to this section Callbacks

Link to this callback

init(menu, api_parameters)

View Source

Specs

init(menu :: menu(), api_parameters :: api_parameters()) :: menu :: menu()

Examples

defmodule MyHomeHandler do
  use ExUssd.Handler
  def init(menu, _api_parameters) do
    menu |> ExUssd.set(title: "Enter your pin number")
  end

  def callback(menu, api_parameters) do
    case api_parameters.text == "5555" do
      true ->
        menu
        |> ExUssd.set(title: "success, thank you.")
        |> ExUssd.set(should_close: true)

      _ ->
        menu |> ExUssd.set(error: "Wrong pin number\n")
    end
  end
end
Link to this callback

navigation_response(payload)

View Source

Specs

navigation_response(payload :: map()) :: payload :: any()