From 37e9ec842c6c3cf05abbdfe29f652b580ab4f0d5 Mon Sep 17 00:00:00 2001
From: tree786 <40580296+tree786@users.noreply.github.com>
Date: Wed, 19 Jun 2019 17:50:53 +0100
Subject: [PATCH] doc: UPNP: Add example on how to open/close a port
I have added a small code sample to show how to automate the process of port forwarding (and closing after you are done).
Thanks to @mhilbrunner for explaining how to achieve t0his (see #18780)
(cherry picked from commit 2a63853720df3bacf2081795385d8b95fdfc5913)
---
modules/upnp/doc_classes/UPNP.xml | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/modules/upnp/doc_classes/UPNP.xml b/modules/upnp/doc_classes/UPNP.xml
index 102b70b5d31..96ae8f5c5d7 100644
--- a/modules/upnp/doc_classes/UPNP.xml
+++ b/modules/upnp/doc_classes/UPNP.xml
@@ -5,6 +5,17 @@
Provides UPNP functionality to discover [UPNPDevice]s on the local network and execute commands on them, like managing port mappings (port forwarding) and querying the local and remote network IP address. Note that methods on this class are synchronous and block the calling thread.
+ To forward a specific port:
+ [codeblock]
+ const PORT = 7777
+ var upnp = UPNP.new()
+ upnp.discover(2000, 2, "InternetGatewayDevice")
+ upnp.add_port_mapping(port)
+ [/codeblock]
+ To close a specific port (e.g. after you have finished using it):
+ [codeblock]
+ upnp.delete_port_mapping(port)
+ [/codeblock]