MLLP.Client.send
You're seeing just the function
send
, go back to MLLP.Client module for more information.
Link to this function
send(pid, payload, options \\ %{}, timeout \\ :infinity)
Specs
send( pid :: pid(), payload :: HL7.Message.t() | String.t() | binary(), options :: MLLP.ClientContract.send_options(), timeout :: non_neg_integer() | :infinity ) :: {:ok, String.t()} | MLLP.Ack.ack_verification_result() | {:error, MLLP.ClientContract.client_error()}
Sends a message and receives a response.
send/4 supports both HL7.Message
and String.t().
All messages and responses will be wrapped and unwrapped via MLLP.Envelope.wrap_message/1
and
MLLP.Envelope.unwrap_message/1
respectively
In case the payload provided is an HL7.Message.t()
the acknowledgment returned from the server
will always be verified via MLLP.Ack.verify_ack_against_message/2
. This is the only case
where an MLLP.Ack.ack_verification_result()
will be returned.
Options
:reply_timeout
- Optionally specify a timeout value for receiving a response. Must be a positive integer or:infinity
. Defaults to 60 seconds.