Network functions
The network module offers functions that allow you to control it.
It has the header #include <kodi/Network.h> be included to enjoy it.
◆ WakeOnLan()
bool ATTR_DLL_LOCAL WakeOnLan |
( |
const std::string & | mac | ) |
|
|
inline |
Send WakeOnLan magic packet.
- Parameters
-
[in] | mac | Network address of the host to wake. |
- Returns
- True if the magic packet was successfully sent, false otherwise.
◆ GetIPAddress()
std::string ATTR_DLL_LOCAL GetIPAddress |
( |
| ) |
|
|
inline |
To the current own ip address as a string.
- Returns
- Own system ip.
Example:
#include <kodi/Network.h>
...
fprintf(stderr, "My IP is '%s'\n", ipAddress.c_str());
...
std::string ATTR_DLL_LOCAL GetIPAddress()
To the current own ip address as a string.
Definition Network.h:66
◆ GetHostname()
std::string ATTR_DLL_LOCAL GetHostname |
( |
| ) |
|
|
inline |
Return our hostname.
- Returns
- String about hostname, empty in case of error
Example:
#include <kodi/Network.h>
...
fprintf(stderr, "My hostname is '%s'\n", hostname.c_str());
...
std::string ATTR_DLL_LOCAL GetHostname()
Return our hostname.
Definition Network.h:101
◆ GetUserAgent()
std::string ATTR_DLL_LOCAL GetUserAgent |
( |
| ) |
|
|
inline |
Returns Kodi's HTTP UserAgent string.
- Returns
- HTTP user agent
Example:
..
std::string agent = kodi::network::GetUserAgent()
..
example output: Kodi/19.0-ALPHA1 (X11; Linux x86_64) Ubuntu/20.04 App_Bitness/64 Version/19.0-ALPHA1-Git:20200522-0076d136d3-dirty
◆ IsLocalHost()
bool ATTR_DLL_LOCAL IsLocalHost |
( |
const std::string & | hostname | ) |
|
|
inline |
Check given name or ip address corresponds to localhost.
- Parameters
-
[in] | hostname | Hostname to check |
- Returns
- Return true if given name or ip address corresponds to localhost
Example:
#include <kodi/Network.h>
...
fprintf(stderr, "Is localhost\n");
...
bool ATTR_DLL_LOCAL IsLocalHost(const std::string &hostname)
Check given name or ip address corresponds to localhost.
Definition Network.h:173
◆ IsHostOnLAN()
bool ATTR_DLL_LOCAL IsHostOnLAN |
( |
const std::string & | hostname, |
|
|
bool | offLineCheck = false ) |
|
inline |
Checks whether the specified path refers to a local network.
- Parameters
-
- Returns
- True if host is on a LAN, false otherwise
◆ URLEncode()
std::string ATTR_DLL_LOCAL URLEncode |
( |
const std::string & | url | ) |
|
|
inline |
URL encodes the given string.
This function converts the given input string to a URL encoded string and returns that as a new allocated string. All input characters that are not a-z, A-Z, 0-9, '-', '.', '_' or '~' are converted to their "URL escaped" version (NN where NN is a two-digit hexadecimal number).
- Parameters
-
[in] | url | The code of the message to get. |
- Returns
- Encoded URL string
Example:
#include <kodi/Network.h>
...
fprintf(stderr, "Encoded URL is '%s'\n", encodedUrl.c_str());
...
std::string ATTR_DLL_LOCAL URLEncode(const std::string &url)
URL encodes the given string.
Definition Network.h:224
For example, the string: François ,would be encoded as: FranC3A7ois
◆ DNSLookup()
bool ATTR_DLL_LOCAL DNSLookup |
( |
const std::string & | hostName, |
|
|
std::string & | ipAddress ) |
|
inline |
Lookup URL in DNS cache.
This test will get DNS record for a domain. The DNS lookup is done directly against the domain's authoritative name server, so changes to DNS Records should show up instantly. By default, the DNS lookup tool will return an IP address if you give it a name (e.g. www.example.com)
- Parameters
-
[in] | hostName | The code of the message to get. |
[out] | ipAddress | Returned address |
- Returns
- true if successful
Example:
#include <kodi/Network.h>
...
std::string ipAddress;
fprintf(stderr, "DNSLookup returned for www.google.com the IP '%s', call was %s\n", ipAddress.c_str(), ret ? "ok" : "failed");
...
bool ATTR_DLL_LOCAL DNSLookup(const std::string &hostName, std::string &ipAddress)
Lookup URL in DNS cache.
Definition Network.h:267