Skip to content

Latest commit

 

History

History
108 lines (63 loc) · 4.03 KB

natupnp_v2.md

File metadata and controls

108 lines (63 loc) · 4.03 KB

Module natupnp_v2

Client for UPnP Device Control Protocol Internet Gateway Device v2.

Description

documented in detail at: http://upnp.org/specs/gw/UPnP-gw-InternetGatewayDevice-v2-Device.pdf

Function Index

add_port_mapping/4Add a port mapping with default lifetime to 0 seconds.
add_port_mapping/5Add a port mapping and release after Timeout.
delete_port_mapping/4Delete a port mapping from the router.
discover/0discover the gateway and our IP to associate.
get_device_address/1
get_external_address/1
get_internal_address/1
get_port_mapping/3get specific port mapping for a well known port and protocol.
status_info/1get router status.

Function Details

add_port_mapping/4


add_port_mapping(Context::nat:nat_upnp(), Protocol::nat:nat_protocol(), InternalPort::integer(), ExternalPort::integer()) -> {ok, non_neg_integer(), non_neg_integer(), non_neg_integer(), non_neg_integer()} | {error, any()}

Add a port mapping with default lifetime to 0 seconds

add_port_mapping/5


add_port_mapping(Ctx::nat:nat_upnp(), Protocol0::nat:nat_protocol(), InternalPort::integer(), ExternalPort::integer(), Lifetime::integer()) -> {ok, non_neg_integer(), non_neg_integer(), non_neg_integer(), non_neg_integer()} | {error, any()}

Add a port mapping and release after Timeout

delete_port_mapping/4


delete_port_mapping(Context::nat:nat_upnp(), Protocol::nat:nat_protocol(), InternalPort::integer(), ExternalPort::integer()) -> ok | {error, term()}

Delete a port mapping from the router

discover/0


discover() -> {ok, Context::nat:nat_upnp()} | {error, term()}

discover the gateway and our IP to associate

get_device_address/1

get_device_address(Nat_upnp) -> any()

get_external_address/1

get_external_address(Nat_upnp) -> any()

get_internal_address/1

get_internal_address(Nat_upnp) -> any()

get_port_mapping/3


get_port_mapping(Context::nat:nat_upnp(), Protocol::nat:nat_protocol(), ExternalPort::integer()) -> {ok, InternalPort::integer(), InternalAddress::string()} | {error, any()}

get specific port mapping for a well known port and protocol

status_info/1


status_info(Context::nat:nat_upnp()) -> {Status::string(), LastConnectionError::string(), Uptime::string()} | {error, term()}

get router status