com.webos.service.wifi

API Summary

Manages Wi-Fi connections on a webOS device. It provides an interface to find available Wi-Fi networks and handle connecting and disconnecting the device from those networks.

Overview of the API

About com.webos.service.wifi API:

This API provides the ability to manage varoius aspects of Wi-Fi connectivity like scanning the Wi-Fi networks, connecting to a network (open/secured/hidden) and managing Wi-Fi profiles.

About webos-connman-adapter daemon:

The webos-connman-adapter is a daemon which acts as the interface between connman (a daemon for managing internet connections) and rest of the webOS world. The webos-connman-adapter communicates to connman via dbus but provides the LS2 interface to all the webOS apps and services to enable them to get all the network related information and manage the connections.

Additional remarks:

Most of the methods under this API require that the connman be running and be able to communicate with the webos-connman-adapter else these methods will return an error.

Methods

changeNetwork

Description

This method allows users to change the properties of already stored Wi-Fi profiles. For non-enterprise networks, only the passphrase can be changed for now. In the future when the support to enterprise networks will be added, this API will be extended to change the other properties as well.

Parameters

Name

Required

Type

Description

profileIdRequiredNumber

ID of the profile that needs to be changed.

passKeyRequiredString

The new passkey to be used for the profile.

Call Returns

Name

Required

Type

Description

returnValueRequiredBoolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details
errorCodeOptionalNumber

The error code for the failed operation.

errorTextOptionalString

Indicates the reason for the failure of the operation. See the "Error Codes Reference" section of this method for details.

Error Codes Reference

Error Code

Error Text

Error Description

1Unknown error

Some unknown error in changing the passkey.

4Connman service unavailable

Error when webos-connman-adapter is not able to talk to the connman daemon.

5WiFi technology unavailable

Error when the Wi-Fi technology is not available.

This could happen either because the wpa-supplicant daemon is not running, connman is not able to communicate with wpa-supplicant or the device does not have Wi-Fi support.

105Profile not found

Profile with the given profileId was not found.

Example

# luna-send -n 1 -f luna://com.webos.service.wifi/changeNetwork '{"profileId": 777, "passKey": "4321" }'

 

Response:


   "returnValue":true
}

connect

Description

This method is used to connect to a given SSID, which can be an open network requiring no passphrase (i.e no security field in its argument), hidden network(requiring wasCreatedWithJoinOther field set to true in its argument), secure networks (authenticating with the specified passphrase), or enterprise networks(currently supported EAP methods are: PEAP, TLS and TTLS).

​Upon successful connection, the Wi-Fi profile is saved on the system along with its SSID and security details. On the other hand if the connection is unsuccessful but the parameter storeProfile is set to true then the Wi-Fi profile is still saved on the system along with the connman .config file, which enables connman to connect to this network once it is available. To connect to an already known network i.e a saved profile, the profileId parameter should be set. 

 

Parameters

Name

Required

Type

Description

ssidOptionalstring

SSID of the desired network. Required for all connections except when using a known profile (profileId parameter is set).

wasCreatedWithJoinOtherOptionalboolean

Indicates whether to connect to a hidden network. Possible values are: 

  • true - Connect to a hidden network
  • false - Connect to a non-hidden network

Default value: false

storeProfileOptionalBoolean

Indicates whether to store a profile for the network when it is not available (i.e out of range). Possible values are:

  • true - Store a profile 
  • false - Ignore a profile 

Default value: true

securityOptionalObject: security

Set to connect to a secured network.

profileIdOptionalnumber

ID of the desired profile, which can be obtained from the getprofilelist call. Required to connect with a known profile.

Call Returns

Name

Required

Type

Description

returnValueRequiredboolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details
errorCodeOptionalNumber

The error code for the failed operation.

errorTextOptionalString

Indicates the reason for the failure of the operation. See the "Error Codes Reference" section of this method for details.

Error Codes Reference

Error Code

Error Text

Error Description

1Unknown error

Connect failed due to unknown reasons.

3Invalid Parameters

Error when neither the parameter SSID nor profileId was specified in the connect method call.

4Connman service unavailable

Error when webos-connman-adapter is not able to communicate to the connman daemon.

5WiFi technology unavailable

Error when the Wi-Fi technology is not available.

This could happen either because the wpa-supplicant daemon is not running, connman is not able to communicate with wpa-supplicant or the device doesn't have Wi-Fi support.

7WiFi switched off

Error when Wi-Fi interface is down.

10The supplied password is incorrect

An invalid key/passphrase was provided.

11Authentication with access point failed

The authentication with the access point failed.

12Login failed

The login failed.

13Could not establish a connection to access point

The association attempt with the selected access point failed.

14Could not retrieve a valid IP address by using DHCP

The DHCP process failed to gather a valid IP address from the access point.

15PIN is missing

There was no pin provided for the WPS pin connection mode.

16Out of range

The selected access point is out of range and no association could be made.

Example

# luna-send -n 1 -f luna://com.webos.service.wifi/connect '{"ssid": "XXX", "security": {"securityType": "psk", "simpleSecurity": {"passKey": "1234"} } }'

 

Response:


   "returnValue":true
}

deleteprofile

Description

This method is used to delete the profile with the given profile ID.

Parameters

Name

Required

Type

Description

profileIdRequiredstring

ID of the profile to be deleted.

Call Returns

Name

Required

Type

Description

returnValueRequiredboolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details
errorCodeOptionalNumber

The error code for the failed operation.

errorTextOptionalString

Indicates the reason for the failure of the operation. See the "Error Codes Reference" section of this method for details.

Error Codes Reference

Error Code

Error Text

Error Description

4Connman service unavailable

Error when webos-connman-adapter is not able to communicate with the connman daemon.

5WiFi technology unavailable

Error when the Wi-Fi technology is not available.

This could happen either because the wpa-supplicant daemon is not running, or connman is not able to communicate with wpa-supplicant or the device does not have Wi-Fi support.

105Profile not found

Profile with the given profileId was not found.

Example

# luna-send -n 1 -f luna://com.webos.service.wifi/deleteprofile '{"profileId": 777}'

 

Response: 


   "returnValue":true
}

findnetworks

Description

The findnetworks method lists all the available Wi-Fi access points found in the area (from a previous Wi-Fi scan) and lists their details like SSID Name, available Security Types, Signal Strength and Connection Status. Callers can subscribe to this method to be notified of any changes.

As long as there are subscribers to this method, periodic scans will be triggered.

Parameters

Name

Required

Type

Description

subscribeOptionalBoolean

Subscribe for notifications of change in the list of found networks. Possible values are:

  • true - Get notifications
  • false - Notifications are not required

Default value: false

intervalOptionalNumber

Interval in milliseconds which is used to trigger a scan for new networks.

Only the first subscriber is allowed to specify an interval. If any other subscriber provides an interval and error is returned.

The default interval is 15000 milliseconds (15 seconds).

Call Returns

Name

Required

Type

Description

foundNetworksRequiredObject: networkInfo

List of found networks.

subscribedRequiredBoolean

Indicates if subscribed to get notifications. Possible values are:

  • true - Subscribed for changes.
  • false - Not subscribed.
returnValueRequiredBoolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details
errorCodeOptionalNumber

The error code for the failed operation.

errorTextOptionalString

Indicates the reason for the failure of the operation. See the "Error Codes Reference" section of this method for details.

Subscription Returns

Name

Required

Type

Description

returnValueRequiredBoolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details
foundNetworksRequiredObject: networkInfo

List of found networks.

subscribedRequiredBoolean

Indicates if subscribed to get notifications. Possible values are:

  • true - Subscribed for changes.
  • false - Not subscribed.

Error Codes Reference

Error Code

Error Text

Error Description

1Unknown error

An internal error occurred when parsing the JSON object being prepared as a response (extremely unlikely).

4Connman service unavailable

Error when webos-connman-adapter is not able to talk to the connman daemon.

5WiFi technology unavailable

Error when the Wi-Fi technology is not available.

This error can occur either because the wpa-supplicant daemon is not running, or connman is not able to communicate with wpa-supplicant or the device does not have Wi-Fi support.

7WiFi switched off

Error when Wi-Fi interface is down.

108Error in scanning network

Error occurred when trying to scan Wi-Fi interface for networks around.

161Not allowed to specify a scan interval

The client isn't allowed to specify a scan interval.

Example

# luna-send -n 1 -f luna://com.webos.service.wifi/findnetworks '{"interval": 15000}'

 

Response: 


   "foundNetworks":[ 
      { 
         "networkInfo":{ 
            "available":true,
            "signalLevel":70,
            "signalBars":3,
            "displayName":"XXX",
            "supported":true,
            "ssid":"xxx",
            "availableSecurityTypes":[ 
               "psk",
               "wps"
            ]
         }
      },
      { 
         "networkInfo":{ 
            "available":true,
            "signalLevel":49,
            "signalBars":1,
            "displayName":"XXX2",
            "supported":true,
            "ssid":"xxx",
            "availableSecurityTypes":[ 
               "psk",
               "wps"
            ]
         }
      }
   ],
   "subscribed":false,
   "returnValue":true
}

getNetworks

Description

This method will return a list of available, configured but not available(out of range) networks without triggering an active scan. The users can subscribe to this method to be notified when there is a change in the list of networks found.

Parameters

Name

Required

Type

Description

subscribeOptionalBoolean

Subscribe for notifications of change in the list of found networks. Possible values are:

  • true - Get notifications
  • false - Notifications are not required

Default value: false

Call Returns

Name

Required

Type

Description

foundNetworksRequiredObject array: networkInfo

List of networks found.

returnValueRequiredBoolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details
errorCodeOptionalNumber

The error code for the failed operation

errorTextOptionalString

Indicates the reason for the failure of the operation. See the "Error Codes Reference" section of this method for details.

subscribedRequiredBoolean

Indicates if subscribed to get notifications. Possible values are:

  • true - Subscribed for changes.
  • false - Not subscribed.

Subscription Returns

Name

Required

Type

Description

returnValueRequiredBoolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details
foundNetworksOptionalObject: networkInfo

List of available and not available networks.

subscribedRequiredBoolean

Indicates if subscribed to get notifications. Possible values are:

  • true - Subscribed for changes.
  • false - Not subscribed.

Error Codes Reference

Error Code

Error Text

Error Description

1Unknown error

An internal error occurred when parsing the JSON object being prepared as a response (extremely unlikely).

4Connman service unavailable

Error when webos-connman-adapter is not able to communicate with the connman daemon.

5WiFi technology unavailable

Error when the Wi-Fi technology is not available.

This error can occur either because the wpa-supplicant daemon is not running, connman is not able to communicate with wpa-supplicant or the device does not have Wi-Fi support.

7WiFi switched off

Error when Wi-Fi interface is down.

Example

# luna-send -n 1 -f luna://com.webos.service.wifi/getNetworks '{}'

 

Response:


   "foundNetworks":[ 
      { 
         "networkInfo":{ 
            "available":true,
            "signalLevel":70,
            "signalBars":3,
            "displayName":"xxx",
            "supported":true,
            "ssid":"xxx",
            "availableSecurityTypes":[ 
               "psk",
               "wps"
            ]
         }
      },
      { 
         "networkInfo":{ 
            "available":true,
            "signalLevel":49,
            "signalBars":1,
            "displayName":"xxx",
            "supported":true,
            "ssid":"xxx",
            "availableSecurityTypes":[ 
               "psk",
               "wps"
            ]
         }
      }
   ],
   "subscribed":false,
   "returnValue":true
}

getprofile

Description

This method is used to list the profile with the given profile ID on the system.

Parameters

Name

Required

Type

Description

profileIdRequiredstring

ID of the profile to be listed.

Call Returns

Name

Required

Type

Description

wifiProfileRequiredObject: wifiProfile

Profile corresponding to the given ID.

returnValueRequiredboolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details
errorCodeOptionalNumber

The error code for the failed operation.

errorTextOptionalString

Indicates the reason for the failure of the operation. See the "Error Codes Reference" section of this method for details.

Error Codes Reference

Error Code

Error Text

Error Description

1Unknown error

An internal error occurred when parsing the JSON object being prepared as a response (extremely unlikely).

4Connman service unavailable

Error when webos-connman-adapter is not able to communicate with the connman daemon.

5WiFi technology unavailable

Error when the Wi-Fi technology is not available.

This could happen either because the wpa-supplicant daemon is not running, or connman is not able to communicate with wpa-supplicant or the device does not have Wi-Fi support.

105Profile not found

A profile with the given profileId was not found.

Example

# luna-send -n 1 -f luna://com.webos.service.wifi/getprofile '{"profileId": 777}'

 

Response: 


   "returnValue":true,
   "wifiProfile":{ 
      "profileId":777,
      "ssid":"XXX",
      "security":{ 
         "securityType":[ 
            "psk",
            "wps"
         ]
      }
   }
}

getprofilelist

Description

This method lists all the stored Wi-Fi profiles on the system.

Parameters

None

Call Returns

Name

Required

Type

Description

profileListRequiredObject: wifiProfile

List of stored profiles.

returnValueRequiredboolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details
errorCodeOptionalNumber

The error code for the failed operation.

errorTextOptionalString

Indicates the reason for the failure of the operation. See the "Error Codes Reference" section of this method for details.

Error Codes Reference

Error Code

Error Text

Error Description

1Unknown error

An internal error occurred when parsing the JSON object being prepared as a response (extremely unlikely).

4Connman service unavailable

Error when webos-connman-adapter is not able to communicate with the connman daemon.

5WiFi technology unavailable

Error when the Wi-Fi technology is not available.

This could happen either because the wpa-supplicant daemon is not running, or connman is not able to communicate with wpa-supplicant or the device does not have Wi-Fi support.

 

105Profile not found

There are no stored Wi-Fi profiles on the system.

Example

# luna-send -n 1 -f luna://com.webos.service.wifi/getprofilelist '{}'

 

Response:


   "profileList":[ 
      { 
         "wifiProfile":{ 
            "profileId":777,
            "ssid":"xxx",
            "security":{ 
               "securityType":[ 
                  "psk",
                  "wps"
               ]
            }
         }
      }
   ],
   "returnValue":true
}

getstatus

Description

The getstatus method returns: 

  • The current status of Wi-Fi connection on the system.
  • If the system is connected to an access point, then the details of the access point.
  • If the service is online, then the IP related information like address, gateway, DNS etc.

Callers can subscribe to this method to be notified of any changes in the Wi-Fi connection status. In case there is no subscription, then it will just return the current status once.

 

Parameters

Name

Required

Type

Description

subscribeOptionalBoolean

Subscribe for notifications when Wi-Fi connection status changes. Possible values are:

  • true - Get notifications
  • false - Notifications are not required

Default value: false

Call Returns

Name

Required

Type

Description

statusRequiredString

Indicates the status of the Wi-Fi. Possible values are:

  • serviceEnabled - Wi-Fi is enabled
  • serviceDisabled - Wi-Fi is disabled
networkInfoOptionalObject: networkInfo

Provides information on the current Wi-Fi network. Applicable only if the Wi-Fi is connected.

subscribedRequiredBoolean

Indicates if subscribed to get notifications. Possible values are:

  • true - Subscribed for changes.
  • false - Not subscribed.
returnValueRequiredBoolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details
errorCodeOptionalNumber

The error code for the failed operation.

errorTextOptionalString

Indicates the reason for the failure of the operation. See the "Error Codes Reference" section of this method for details.

Subscription Returns

Name

Required

Type

Description

returnValueRequiredString

Always true in case of subscription response.

statusRequiredString

Indicates the status of the Wi-Fi. Possible values are:

  • serviceEnabled - Wi-Fi is enabled
  • serviceDisabled - Wi-Fi is disabled
networkInfoOptionalObject: networkInfo

Provides information on the current Wi-Fi network. Applicable only if the Wi-Fi is connected.

subscribedRequiredBoolean

Indicates if subscribed to get notifications. Possible values are:

  • true - Subscribed for changes.
  • false - Not subscribed.

Error Codes Reference

Error Code

Error Text

Error Description

1Unknown error

An internal error occurred when parsing the JSON object being prepared as a response (extremely unlikely).

4Connman service unavailable

Error when webos-connman-adapter is not able to communicate with the connman daemon.

5WiFi technology unavailable

Error when the Wi-Fi technology is not available.

This could happen either because the wpa-supplicant daemon is not running, or connman is not able to communicate with wpa-supplicant or the device does not have Wi-Fi support.

Example

# luna-send -n 1 -f luna://com.webos.service.wifi/getstatus {}

 

Response:


   "subscribed":false,
   "status":"serviceEnabled",
   "returnValue":true
}

scan

Description

The scan method is used to trigger a manual scan for the Wi-Fi networks. It should not be used together with the findnetworks method as using both at the same time will result in errors. This method will trigger a scan and return immediately. Results of the scan are posted to the subscribers of findnetworks and getNetworks.

Parameters

None

Call Returns

Name

Required

Type

Description

returnValueRequiredBoolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details
errorTextOptionalString

Indicates the reason for the failure of the operation. See the "Error Codes Reference" section of this method for details.

errorCodeOptionalNumber

The error code for the failed operation.

Error Codes Reference

Error Code

Error Text

Error Description

1Unknown error

An internal error occurred when parsing the JSON object being prepared as a response (extremely unlikely).

4Connman service unavailable

Error when webos-connman-adapter is not able to communicate with the connman daemon.

5WiFi technology unavailable

Error when the Wi-Fi technology is not available.

This error can occur because the wpa-supplicant daemon is not running, connman is not able to communicate with wpa-supplicant or the device does not have Wi-Fi support.

7WiFi switched off

Error when Wi-Fi interface is down.

108Error in scanning network

Error occurred when trying to scan the Wi-Fi interface for networks.

160Already actively scanning for networks

This error is returned when the scan method is called while clients are subscribed to the findnetworks method.

Example

Example 1: Successful call

# luna-send -n 1 -f luna://com.webos.service.wifi/scan '{}'

 

Response:


   "returnValue":true
}

 

Example 2: Failed call

# luna-send -n 1 -f luna://com.webos.service.wifi/scan '{}'

 

Response:


   "errorCode":5,
   "returnValue":false,
   "errorText":"WiFi technology unavailable"
}

setstate

Description

The setstate method will simply enable or disable Wi-Fi on the system by enabling/disabling the Wi-Fi interface.

 

Parameters

Name

Required

Type

Description

stateRequiredString

Indicates whether to enable Wi-Fi. Possible values are: 

  • enabled - Enable Wi-Fi
  • disabled - Disable Wi-Fi

Note: Any other value will result in an error.

Call Returns

Name

Required

Type

Description

returnValueRequiredBoolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details
errorCodeOptionalNumber

The error code for the failed operation.

errorTextOptionalString

Indicates the reason for the failure of the operation. See the "Error Codes Reference" section of this method for details.

Error Codes Reference

Error Code

Error Text

Error Description

4Connman service unavailable

Error when webos-connman-adapter is not able to communicate with the connman daemon.

5WiFi technology unavailable

Error when the Wi-Fi technology is not available.

This could occur either because the wpa-supplicant daemon is not running, connman is not able to communicate with the wpa-supplicant or the device does not have Wi-Fi support.

103Already enabled

Error message when setting the state to enabled if the Wi-Fi is already enabled.

104Already disabled

Error message when setting the state to disabled if the Wi-Fi is already disabled.

Example

Example 1: Successful call

# luna-send -n 1 -f luna://com.webos.service.wifi/setstate '{"state": "disabled"}'

 

Response:


   "returnValue":true
}

 

Example 2: Failed call

# luna-send -n 1 -f luna://com.webos.service.wifi/setstate '{"state": "disabled"}'

 

Response:


   "errorCode":5,
   "returnValue":false,
   "errorText":"WiFi technology unavailable"
}

tethering/getState

Description

Gets the current Wi-Fi tethering state.

Parameters

Name

Required

Type

Description

subscribeOptionalBoolean

Subscribe for notifications when there is a change in the list of found peers. Possible values are:

  • true - Get notifications
  • false - Notifications are not required

Default value: false

Call Returns

Name

Required

Type

Description

returnValueRequiredBoolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details.
errorCodeOptionalNumber

The error code for the failed operation.

errorTextOptionalString

Indicates the reason for the failure of the operation. See the "Error Codes Reference" section of this method for details.

subscribedOptionalBoolean

Returns true to indicate client was successfully subscribed.

enabledRequiredBoolean

Indicates if Wi-Fi tethering is enabled or disabled.

ssidOptionalString

The identifier used as SSID for Wi-Fi tethering. This field cannot be set when Wi-Fi tethering is enabled.

securityTypeOptionalString

The security type to use for authenticating clients. Possible values are

  • open
  • psk

When open is used then the passphrase is cleared. When psk is used a then the passphrase needs to be set before enabling the Wi-Fi tethering.

timeoutRequiredNumber

A timeout in minutes after which the Wi-Fi tethering is disabled, when no client is connected. Default value is 5 minutes.

channelOptionalNumber

Channel of the SoftAP

ipAddressOptionalString

IP address of the SoftAP

Subscription Returns

Name

Required

Type

Description

subscribedRequiredBoolean

True to indicate that the client was successful subscribed.

enabledRequiredBoolean

Indicates if Wi-Fi tethering is enabled or disabled.

ssidRequiredString

The identifier used as SSID for Wi-Fi tethering. This field can't be set when Wi-Fi tethering is enabled.

securityTypeRequiredString

The security type to use for authenticating clients. Possible values are

  • open
  • psk

When open is used, any possible set passPhrase is cleared. When psk is used a passPhrase needs to be set before enabling Wi-Fi tethering.

timeoutRequiredNumber

A timeout in minutes after which the Wi-Fi tethering is disabled, when no client is connected. Default value is 5 minutes.

channelOptionalNumber

Channel of the SoftAP

ipAddressOptionalString

IP address of the SoftAP

Example

Example 1: Successful call

# luna-send -n 1 -f luna://com.webos.service.wifi/tethering/getState '{}'

 

Response:


   "returnValue":true,
   "channel":11,
   "ipAddress":"192.168.6.4",
   "subscribed":false,
   "ssid":"Connect_Me",
   "enabled":true,
   "securityType":"psk",
   "timeout":60
}

 

Example 2: Failed call

# luna-send -n 1 luna://com.webos.service.wifi/tethering/getState {}

 

Response: 


   "errorCode":5,
   "returnValue":false,
   "errorText":"WiFi technology unavailable"
}

tethering/setState

Description

Sets the Wi-Fi tethering state. Wi-Fi tethering can either be enabled or disabled.

At least the ssid field needs to be set before enabling tethering. This can be done either with a separate setState call or within the enable call.

The "ssid", "securityType" and "passPhrase" configuration values are persisted across device reboots.

Note: Although all parameters are optional, at least one parameter needs to be specified.

Parameters

Name

Required

Type

Description

enabledOptionalBoolean

Enable or disable Wi-Fi tethering.

ssidOptionalString

The identifier used as SSID for Wi-Fi tethering. This field cannot be set when Wi-Fi tethering is enabled.

securityTypeOptionalString

The security type to use for authenticating clients. Possible values are

  • open
  • psk

When open is used then the passphrase is cleared. When psk is used a then the passphrase needs to be set before enabling the Wi-Fi tethering.

passPhraseOptionalString

The passphrase used to authenticate the new clients when Wi-Fi tethering is enabled. This field cannot be set when Wi-Fi tethering is enabled. A valid passphrase should have 8 to 63 characters.

timeoutOptionalNumber

A timeout in minutes after which the Wi-Fi tethering is disabled, when no client is connected. Default value is 5 minutes.

channelOptionalString

Channel of the softap to be used for Wi-Fi tethering.

Possible values are 1~11.

Note: If value greater than 11 is set, channel is automatically set to 6.

ipAddressOptionalString

IP address of the SoftAP

Call Returns

Name

Required

Type

Description

returnValueRequiredBoolean
  • If the method succeeds, returnValue will contain true.
  • If the method fails, returnValue will contain false. 

The method may fail because of one the error conditions described in the Error Codes Reference table of this method. See the Error Code Reference table for more information. 

errorCodeOptionalNumber

errorCode contains the error code if the method fails. The method will return errorCode only if it fails.

See the Error Codes Reference of this method for more details.

errorTextOptionalString

errorText contains the error text if the method fails. The method will return errorText only if it fails.

See the Error Codes Reference of this method for more details.

Error Codes Reference

Error Code

Error Text

Error Description

1Unknown error

An internal error occurred when parsing the JSON object being prepared as a response (extremely unlikely).

4Connman service unavailable

Error when webos-connman-adapter is not able to talk to the connman daemon.

5WiFi technology unavailable

Error when the Wi-Fi technology is not available. This could happen either because the wpa-supplicant daemon is not running, or connman is not able to communicate with wpa-supplicant or the device does not have WiFi support.

146Failed to enable tethering mode

Failed to enable Wi-Fi tethering mode because of unmet requirements. Check if fields ssid, passPhrase and securityType are all set to the right values.

147Failed to disable tethering mode

Failed to disable Wi-Fi tethering mode cause for an unknown reason.

149Error in setting tethering passphrase

An error occured while processing the supplied passphrase.

151No passphrase set but required for security type psk

A passphrase must be set for Wi-Fi tethering when security type psk is selected.

152Failed to disable tethering mode through support library

It was not possible to enable Wi-Fi tethering through using the webOS connman adapter support library.

153Not allowed to change securityType while tethering is enabled

When Wi-Fi tethering is enabled it is not allowed to change the security type.

154With security typen open specifying a passphrase is not possible

When security type is set to open it is not possible to set a passphrase in the same call.

155Passphrase doesn't match the requirements

Passpharse does not match the requirements. Must be between 8 and 63 characters long.

156Failed to restore WiFi state after disbling tethering

When Wi-Fi tethering is disabled the previous Wi-Fi state is restored (enabled or disabled) and this error occurs when something during this process fails.

207Error in setting tethering Channel

Error occurred during processing tethering channel.

148Not allowed to change IP Address while tethering is enabled

User is not allowed to change IP address while tethering is already enabled.

Example

Example 1: 

# luna-send -n 1 luna://com.webos.service.wifi/tethering/setState '{ 
   "enabled":true,
   "securityType":"open",
   "ssid":"MyTestAP",
   "timeout":60
}'

 

Response: 


   "returnValue":true
}

 

Example 2: 

# luna-send -n 1 luna://com.webos.service.wifi/tethering/setState '{ 
   "enabled":true,
   "securityType":"psk",
   "passPhrase":"MyTestPassphrase",
   "ssid":"MyTestAP",
   "timeout":60
}'

 

Response: 


   "returnValue":true
}

 

Example 3:

# luna-send -n 1 -f luna://com.webos.service.wifi/tethering/setState '{ 
   "enabled":true,
   "securityType":"psk",
   "passPhrase":"11111111",
   "ssid":"Connect_Me",
   "timeout":60,
   "channel":11,
   "ipAddress":"192.168.6.1"
}'

 

Response:


   "returnValue":true
}

 

Example 4: Failed call

# luna-send -n 1 luna://com.webos.service.wifi/tethering/setState '{"enabled":true, "ssid":"MyTestAP"}'

 

Response: 


   "errorCode":5,
   "returnValue":false,
   "errorText":"WiFi technology unavailable"
}

tethering/getStationCount

Description

Gets the number of devices that are connected to the signage softAP. 

Parameters

Name

Required

Type

Description

subscribeOptionalBoolean

Subscribe to this method to get notified when a device connects or disconnects from the signage softAP. Possible values are:

  • true - Get notifications
  • false - Notifications are not required

Default value: false

Call Returns

Name

Required

Type

Description

stationCountRequiredNumber

Number of devices that are connected to the signage softAP.

subscribedRequiredBoolean

Indicates if subscribed to get notified when a device connects or disconnects from the signage softAP. Possible values are:

  • true - Subscribed for changes
  • false - Not subscribed
returnValueRequiredBoolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details.
errorCodeOptionalNumber

The error code for the failed operation.

errorTextOptionalString

Indicates the reason for the failure of the operation. See the "Error Codes Reference" section of this method for details.

connectedStationsRequiredString array

MAC addresses of the connected clients.

Subscription Returns

Name

Required

Type

Description

subscribedRequiredBoolean

Returns true to indicate client was successfully subscribed to get notified when a device connects or disconnects from the signage softAP.

stationCountRequiredNumber

Number of devices that are connected to the signage softAP.

returnValueRequiredBoolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details.
errorCodeOptionalNumber

The error code for the failed operation.

errorTextOptionalString

Indicates the reason for the failure of the operation. See the "Error Codes Reference" section of this method for details.

connectedStationsRequiredString array

MAC addresses of the connected clients.

Error Codes Reference

Error Code

Error Text

Error Description

1Unknown error

An internal error occurred when parsing the JSON object being prepared as a response (extremely unlikely).

4Connman service unavailable

Indicates that webos-connman-adapter is unable to communicate with the connman daemon.

5WiFi technology unavailable

Indicates that Wi-Fi technology is not available. This can occur due to the following reasons:

  • The wpa-supplicant daemon is not running 
  • connman is not able to communicate with wpa-supplicant
  • The device does not have WiFi support

Example

# luna-send -i -f luna://com.webos.service.wifi/tethering/getStationCount '{"subscribe":true}'

 

Response: 


   "subscribed":true,
   "connectedStations":[ 

   ],
   "returnValue":true,
   "stationCount":0
}


   "subscribed":true,
   "connectedStations":[ 
      "8c:3a:e3:46:ab:7a"
   ],
   "returnValue":true,
   "stationCount":1
}


   "subscribed":true,
   "connectedStations":[ 
      "dc:0b:34:bf:c4:f8",
      "8c:3a:e3:46:ab:7a"
   ],
   "returnValue":true,
   "stationCount":2
}

setCountryCode

Description

Sets the current country code of the Wi-Fi adapter. This affects the allowed Wi-Fi channel for both AP (Access Point) and STA (Station) modes.

Format of the country code follows the alpha-2 code of ISO-3166-1.

Parameters

Name

Required

Type

Description

countryCodeRequiredString

Alpha-2 country code. For possible values, see List of ISO 3166 country codes​.

Call Returns

Name

Required

Type

Description

returnValueRequiredBoolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details.
errorCodeOptionalNumber

The error code for the failed operation.

errorTextOptionalString

Indicates the reason for the failure of the operation. See the Error Codes Reference section of this method for details.

Error Codes Reference

Error Code

Error Text

Error Description

9Could not validate json message against schema

Parameters passed to this method are not following the schema format.

Example

Example 1: Successful call

# luna-send -n 1 -f luna://com.webos.service.wifi/setCountryCode '{"countryCode":"US"}'

 

Response: 


   "returnValue":true
}

 

Example 2: Failed call

# luna-send -n 1 -f luna://com.webos.service.wifi/setCountryCode '{"countryCode":1}'

 

Response:


   "errorCode":9,
   "returnValue":false,
   "errorText":"Could not validate json message against schema"
}

getCountryCode

Description

Gets the current country code of the Wi-Fi adapter.

Format of the country code follows the alpha-2 code of ISO-3166-1. 

Parameters

None

Call Returns

Name

Required

Type

Description

countryCodeRequiredString

Current country code of the Wi-Fi adapter. For possible values, see List of ISO 3166 country codes

returnValueRequiredBoolean

Indicates the status of operation. Possible values are:

  • true - Indicates that the operation was successful.
  • false - Indicates that the operation failed. Check the "errorCode" and "errorText" fields for details.

Example

# luna-send -n 1 -f luna://com.webos.service.wifi/getCountryCode '{}'

 

Response: 


   "returnValue":true,
   "countryCode":"US"
}

Objects

wifiProfile

A Wi-Fi profile stores all information for a previously successfully connected wireless network. However, it does not store critical security things like the passphrase.

Example:

"wifiProfile": {

"profileId": 777,

"ssid": "xxx",

"security": { "securityType": [ "psk", "wps" ] }

}

Name

Required

Type

Description

ssidRequiredString

SSID associated with the profile.

profileIdRequiredString

ID string naming the profile (can be used with connect method).

securityRequiredObject: securityTypeSecurity type which was used to connect to the network the last time.

security

This object is used to provide security information for establishing a connection.

Example:

"security": {

"securityType": "psk",

"simpleSecurity": {"passKey": "1234"}

}

Name

Required

Type

Description

securityTypeRequiredString

Connection type. e.g. wep or psk.

simpleSecurityOptionalObject: simpleSecuritySecurity options when using simple security type.
enterpriseSecurityOptionalObject: enterpriseSecurity

Different fields to connect to enterprise networks.

networkInfo

Information of each of the networks found by the findNetworks, getNetworks or getstatus method.

Example:

"networkInfo": {

"available": true,

"signalLevel": 49,

"signalBars": 1,

"displayName": "xxx",

"supported": true,

"ssid": "xxx",

"availableSecurityTypes": [ "psk", "wps" ],

"connectState": "ipConfigured",

"bssInfo":[
     { "frequency": 2462,
       "bssid": "EE:94:F6:33:5F:F7",
        "signal": -65 }
 ]

}

 

Name

Required

Type

Description

ssidRequiredString

SSID of discovered AP.

availableSecurityTypesRequiredString array

List of supported security mechanisms.

signalBarsRequiredNumber

Coarse indication of signal strength.

availableRequiredBoolean

Indicates if the network is currently available or not.

signalLevelRequiredNumber

Fine indication of signal strength.

ipInfoOptionalObject: ipInfo

Only returned for getstatus method.

bssInfoOptionalObject array: bssInfo

Radio information on stations associated with this network. Only returned for getNetworks and findNetworks methods, only for in-range wifi networks.

displayNameRequiredString

Displayable name of the network.

The value of this field should be always used to the display the name of the network in the UI. The field ssid should never be used. It is only there to identify the network object and as an argument for several other methods like connect.

In most cases the content is the same as for the ssid field. The content will be different when the SSID the access point sends out is not encoded in UTF-8. In this case the service tries several conversion options to convert the SSID to UTF-8 and the result is the value in this field.

connectStateOptionalString

Current connection state of the service.

The following values are possible: "notAssociated", "associating", "associated", "ipConfigured", "ipFailed".

supportedRequiredBoolean

Displays false if found that Wi-Fi supports "ieee8021x" (enterprise security).

Displays true for all other Wi-Fi security types.

simpleSecurity

Connection information for a simple connection.

Example:

"simpleSecurity": {

"passKey": "1234"

}

Name

Required

Type

Description

passKeyRequiredString

Passkey for the network to be connected.

securityType

A list of array types.

Example:

"securityType": [ "open", "psk", "wps" ]

Name

Required

Type

Description

securityTypeRequiredString array

Types of security supported.

ipInfo

IP information for the connected network i.e. connected Wi-Fi interface returned as a response from the getstatus method.

Example:

"ipInfo": {

"interface": "wifi0",

"ip": "192.168.1.2",

"subnet": "255.255.255.0",

"gateway": "192.168.1.1",

"dns": ["192.168.1.1"]

}

Name

Required

Type

Description

interfaceRequiredString

The Wi-Fi interface for the connected network.

ipRequiredString

IP address of the Wi-Fi interface.

subnetRequiredString

Subnet for the Wi-Fi interface.

gatewayRequiredString

Gateway address for routing over Wi-Fi interface.

dnsRequiredString array

List of DNS server IP addresses for the Wi-Fi interface.

enterpriseSecurity

Different security fields for connecting to enterprise networks.

Example:

"enterpriseSecurity": {

"eapType": "tls",

"identity": "work",

"passphrase": "1234",

"caCertFile": "/etc/cert/ca.pem",

"clientCertFile": "/etc/cert/user.pem",

"privateKeyFile": "/etc/cert/user.prv",

"privateKeyPassphrase": "4321"

}

Name

Required

Type

Description

eapTypeRequiredString

The authentication method for this connection, which is supported by the AP. Currently supported methods are peap, ttls and tls.

identityOptionalString

The name of the user to be authenticated.

passphraseOptionalString

Passphrase for authenticating the user.

caCertFileOptionalString

The location of server certificate file for authenticating the server.

clientCertFileOptionalString

The location of client side X.509 certificate file to authenticate the client.

privateKeyFileOptionalString

The location of the private key file to decrypt the client certificate.

privateKeyPassphraseOptionalString

Passphrase used to encrypt the private key file.

phase2OptionalString

The inner authentication protocol for authenticating to user databases containing user information.

bssInfo

Information on one station in a Basic Service Set.

 

Example:

"bssInfo": {

 "frequency": 2462,
 "bssid": "EE:94:F6:33:5F:F7",
 "signal": -65 

}

Name

Required

Type

Description

bssidRequiredString

Mac address of the wireless station.

frequencyRequiredNumber

Station frequency in MHZ

signalRequiredNumber

Station signal strength, DBm. Typical range -100 (weak) ... -10 (strong).

Contents