Invokes the specified device-specific action.

Namespace: ASCOM.DeviceInterface
Assembly: ASCOM.DeviceInterfaces (in ASCOM.DeviceInterfaces.dll) Version: 6.0.0.0 (6.1.1.2619)

Syntax

C#
string Action(
	string ActionName,
	string ActionParameters
)
Visual Basic
Function Action ( _
	ActionName As String, _
	ActionParameters As String _
) As String
Visual C++
String^ Action(
	String^ ActionName, 
	String^ ActionParameters
)

Parameters

ActionName
Type: System..::..String
A well known name agreed by interested parties that represents the action to be carried out.
ActionParameters
Type: System..::..String
List of required parameters or an Empty String if none are required.

Return Value

A string response. The meaning of returned strings is set by the driver author.

Remarks

Can throw a not implemented exception

This method is intended for use in all current and future device types and to avoid name clashes, management of action names is important from day 1. A two-part naming convention will be adopted - DeviceType:UniqueActionName where:
  • DeviceType is the same value as would be used by DeviceType e.g. Telescope, Camera, Switch etc.
  • UniqueActionName is a single word, or multiple words joined by underscore characters, that sensibly describes the action to be performed.

It is recommended that UniqueActionNames should be a maximum of 16 characters for legibility. Should the same function and UniqueActionName be supported by more than one type of device, the reserved DeviceType of “General” will be used. Action names will be case insensitive, so FilterWheel:SelectWheel, filterwheel:selectwheel and FILTERWHEEL:SELECTWHEEL will all refer to the same action.

The names of all supported actions must be returned in the SupportedActions property.

Examples

Suppose filter wheels start to appear with automatic wheel changers; new actions could be “FilterWheel:QueryWheels” and “FilterWheel:SelectWheel”. The former returning a formatted list of wheel names and the second taking a wheel name and making the change, returning appropriate values to indicate success or failure.

Exceptions

ExceptionCondition
ASCOM..::..MethodNotImplementedExceptionThrows this exception if no actions are suported.
ASCOM..::..ActionNotImplementedExceptionIt is intended that the SupportedActions method will inform clients of driver capabilities, but the driver must still throw an ASCOM.ActionNotImplemented exception if it is asked to perform an action that it does not support.
ASCOM..::..NotConnectedExceptionIf the driver is not connected.
ASCOM..::..DriverExceptionMust throw an exception if the call was not successful

See Also