cover/Elixir.WalletAuth.Events.OtpChallengeStarted.html

1 defmodule WalletAuth.Events.OtpChallengeStarted do
2 @moduledoc "Emitted when an OTP challenge is initiated."
3 @behaviour WalletEvents.DomainEvent
4
5 @impl true
6
:-(
def event_name, do: "OtpChallengeStarted.v1"
7
8 @impl true
9
:-(
def event_version, do: 1
10
11
:-(
def build(user_id, purpose, opts \\ []) do
12
:-(
%{
13 event_id: WalletSharedKernel.Correlation.new_request_id(),
14 event_name: event_name(),
15 event_version: event_version(),
16 aggregate_id: user_id,
17 correlation_id: Keyword.get(opts, :correlation_id, WalletSharedKernel.Correlation.new_correlation_id()),
18 occurred_at: DateTime.utc_now(),
19 payload: %{
20 user_id: user_id,
21 purpose: purpose,
22 channel: Keyword.get(opts, :channel, :sms)
23 }
24 }
25 end
26 end
Line Hits Source