Update Virtual Sensor Reading

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Want more browser support for this feature? Tell us why.

The Update Virtual Sensor Reading command of the WebDriver API provides a new reading for a virtual sensor previously created using the Create Virtual Sensor command. The new reading is made available to platform sensors through the Sensor APIs, letting tests drive sensor-dependent behavior with predetermined data.

Syntax

Method URI template
POST /session/{session id}/sensor/{type}

URL parameters

session id

Identifier of the session.

type

The virtual sensor type to update. Possible values include "ambient-light", "accelerometer", and "gyroscope".

Payload

The input is an object:

reading

An object representing the new sensor reading. The properties it must contain depend on the sensor type; for example, an "ambient-light" sensor expects an illuminance value.

Return value

null if successful.

Errors

invalid session id

Session does not exist.

invalid argument

The type is not a supported virtual sensor type, no virtual sensor of that type exists, the reading is not an object, or the reading is not valid for the given sensor type.

Examples

Updating a virtual sensor reading

With a WebDriver server running on localhost:4444, assume a virtual "ambient-light" sensor has been created for the active session. To set a new reading, send the reading object in the request payload, replacing ID with the sessionId from the New Session response:

bash
curl -i -H "Content-Type: application/json" \
  -d '{"reading": {"illuminance": 42}}' \
  http://localhost:4444/session/ID/sensor/ambient-light

The server responds with a null value to indicate success:

http
HTTP/1.1 200 OK
content-type: application/json; charset=utf-8

{"value":null}

Specifications

Specification
Generic Sensor API
# update-virtual-sensor-reading-command

Browser compatibility

See also