K2InformaticsGmbH / smpp_parser

A parser for SMPP protocol PDUs
Apache License 2.0
3 stars 1 forks source link

decode / encode interface #2

Closed c-bik closed 6 years ago

c-bik commented 6 years ago
smpp:encode(PDU :: map()) -> {ok, PDU :: hex_string()} | {error, Error :: string()}.

Example

> smpp:encode(#{command_id => 1, ...}).
{ok, "00 AB ..."}
> smpp:encode(#{bad_field => 1, ...}).
{error, "Invalid field bad_field"}

smpp:decode(PDU :: hex_string()) -> {ok, PDU :: map()}.

Example

> smpp:decode("00 00 AB ...").
{ok, #{command_id => 1, short_message = <<"...">>...}}
> smpp:decode("0000AB...").
{ok, #{command_id => 1, short_message = <<"...">>...}}
> smpp:decode(<<"0000AB...">>).
{ok, #{command_id => 1, short_message = <<"...">>...}}
> smpp:decode("00 00 FF GG ...").
{error, "unable to encode FF GG"}