m cpan
use JSON::RPC2::TwoWay 0.07; # for configurable json encoder
# JSON::RPC2::TwoWay depends on JSON::MaybeXS anyways, so it can be used here
# without adding another dependency
use JSON::MaybeXS
itch::Client::Steps;
has [qw(
actions address auth cb_used channels clientid conn debug ioloop
json lastping log method ns ping_timeout port rpc timeout tls token
who
)];
# keep in sync with the
per channel hash of waitids
$self->{debug} = $debug;
$self->{json} = $args{json} // 1;
$self->{jsonobject} = $args{jsonobject} // JSON::MaybeXS->new(utf8 => 1),
$self->{ping_timeout} = $args{ping