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 ATTRIBUTE_HIDDEN kodi::network::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 ATTRIBUTE_HIDDEN kodi::network::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 ATTRIBUTE_HIDDEN GetIPAddress()
To the current own ip address as a string.
Definition: Network.h:66
◆ GetHostname()
std::string ATTRIBUTE_HIDDEN kodi::network::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 ATTRIBUTE_HIDDEN GetHostname()
Return our hostname.
Definition: Network.h:100
◆ GetUserAgent()
std::string ATTRIBUTE_HIDDEN kodi::network::GetUserAgent |
( |
| ) |
|
|
inline |
Returns Kodi's HTTP UserAgent string.
- Returns
- HTTP user agent
Example:
..
..
std::string ATTRIBUTE_HIDDEN GetUserAgent()
Returns Kodi's HTTP UserAgent string.
Definition: Network.h:135
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 ATTRIBUTE_HIDDEN kodi::network::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 ATTRIBUTE_HIDDEN IsLocalHost(const std::string &hostname)
Check given name or ip address corresponds to localhost.
Definition: Network.h:170
◆ IsHostOnLAN()
bool ATTRIBUTE_HIDDEN kodi::network::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 ATTRIBUTE_HIDDEN kodi::network::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 ATTRIBUTE_HIDDEN URLEncode(const std::string &url)
URL encodes the given string.
Definition: Network.h:221
For example, the string: François ,would be encoded as: FranC3A7ois
◆ DNSLookup()
bool ATTRIBUTE_HIDDEN kodi::network::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 successfull
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 ATTRIBUTE_HIDDEN DNSLookup(const std::string &hostName, std::string &ipAddress)
Lookup URL in DNS cache.
Definition: Network.h:263