aioupnp/README.md

56 lines
1.5 KiB
Markdown
Raw Normal View History

2018-10-08 07:55:42 +02:00
[![codecov](https://codecov.io/gh/lbryio/aioupnp/branch/master/graph/badge.svg)](https://codecov.io/gh/lbryio/aioupnp)
2018-09-26 06:16:02 +02:00
2018-10-08 04:30:13 +02:00
# UPnP for asyncio
2018-07-30 23:48:20 +02:00
2018-10-08 04:30:13 +02:00
`aioupnp` is a python 3 library and command line tool to interact with UPnP gateways using asyncio. `aioupnp` requires the `netifaces` module.
2018-07-30 23:48:20 +02:00
## Installation
2018-07-30 23:51:59 +02:00
```
2018-10-08 04:30:13 +02:00
pip install --upgrade aioupnp
2018-07-30 23:51:59 +02:00
```
2018-07-30 23:48:20 +02:00
## Usage
2018-07-31 17:35:24 +02:00
```
2018-10-08 07:00:42 +02:00
aioupnp [-h] [--debug_logging=<debug_logging>] [--interface=<interface>]
[--gateway_address=<gateway_address>]
[--lan_address=<lan_address>] [--timeout=<timeout>]
[--service=<service>]
command [--<arg name>=<arg>]...
```
2018-07-30 23:52:16 +02:00
2018-10-08 07:00:42 +02:00
### Commands
add_port_mapping | delete_port_mapping | get_external_ip | get_next_mapping | get_port_mapping_by_index | get_redirects | get_soap_commands | get_specific_port_mapping | m_search
2018-07-30 23:52:16 +02:00
2018-07-30 23:48:20 +02:00
2018-10-08 23:57:45 +02:00
### Examples
2018-07-30 23:52:16 +02:00
2018-10-08 23:57:45 +02:00
To get the external ip address from the UPnP gateway
aioupnp get_external_ip
To list the active port mappings on the gateway
aioupnp get_redirects
To debug the default gateway
aioupnp --debug_logging=1 m_search
To debug a gateway on a non default network interface
aioupnp --interface=vmnet1 --debug_logging=1 m_search
To debug a gateway on a non default network interface that isn't the router
aioupnp --interface=vmnet1 --gateway_address=192.168.1.106 --debug_logging=1 m_search
2018-07-30 23:48:20 +02:00
## License
This project is MIT licensed. For the full license, see [LICENSE](LICENSE).
## Contact
2018-10-08 07:00:42 +02:00
The primary contact for this project is [@jackrobison](mailto:jack@lbry.io)