Packages

HBCI/FinTS client library for Elixir.

Current section

Files

Jump to
fintex lib command fin_ping.ex
Raw

lib/command/fin_ping.ex

defmodule FinTex.Command.FinPing do
@moduledoc false
alias FinTex.Command.AbstractCommand
alias FinTex.Command.Sequencer
alias FinTex.Segment.HKEND
alias FinTex.Segment.HNHBK
alias FinTex.Segment.HNHBS
alias FinTex.Segment.HKIDN
alias FinTex.Segment.HKVVB
use AbstractCommand
def ping(bank, options) do
IO.puts "ping with #{bank.blz}"
warn "Starting anonymous dialog with #{bank.blz}"
seq = Sequencer.new(bank)
request_segments = [
%HNHBK{},
%HKIDN{},
%HKVVB{},
%HNHBS{}
]
{:ok, response} = seq |> Sequencer.call_http(request_segments)
seq = seq |> Sequencer.update(dialog_id(response)) |> Sequencer.inc
request_segments = [
%HNHBK{},
%HKEND{},
%HNHBS{}
]
{:ok} = seq |> Sequencer.call_http(request_segments, ignore_response: true)
warn "Finishing anonymous dialog with #{bank.blz}"
end
end