## 6.6.3.1 Method Scan

This method executes the location acquisition process of the RTLS device or system. It overwrites the Scan method of the AutoIdDeviceType defined in 6.1.3.3.

Signature

Scan (
[in]	ScanSettings				Settings
[out]	RtlsLocationResult []			Results
[out]	AutoIdOperationStatusEnumeration	Status
);


Argument Description
Settings Configuration settings for the scan execution. The ScanSettings DataType is defined in 9.3.7.
Result Results of the scan execution. The RtlsLocationResult DataType is defined in 9.3.15.
Status Returns the status of the scan operation.
The AutoIdOperationStatusEnumeration DataType is defined in 9.2.1.

Method Result Codes

ResultCode Description
Bad_MethodInvalid The device does not support this function
Bad_InvalidState This command is not available or not allowed e.g. due to special configuration
Other OPC UA status codes defined for the Call Service in OPC 10000-4.

## 6.6.3.2 Method GetLocation

This method queries the RTLS device or system synchronous and returns the location of an object. Depending on vendor-specific implementation, it may initiate a location or range acquisition and synchronously return a result, or the RTLS device may return the last known location of the object (the age of the last location acquisition will be apparent from the timestamp returned in the result).

Signature

GetLocation (
[in]	ScanData			Identifier
[in]	CodeTypeDataType		CodeType
[in]	LocationTypeEnum		LocationType
[out]	RtlsLocationResult	Result
);


Argument Description
Identifier AutoID Identifier   according to the device configuration as returned as part of a ScanResult in a scan event or scan method. The ScanData DataType is defined in 9.4.2.
If the ScanData is used as returned in the ScanResult, the structure may contain information that must be ignored by the AutoID Device. An example is the ScanDataEpc where only the parameter UId is relevant for this Method.
If the Identifier is provided from a different source than the ScanResult, a ScanData with a ByteString can be used to pass a UId where the CodeType is set to ‘UId’.
CodeType Defines the format of the ScanData in the Identifier as string. The String DataType CodeTypeDataType and the predefined format strings are defined in 9.1.3.
LocationType The requestsd type of the location information returned in the scan results. The LocationTypeEnumeration DataType is defined in 9.2.3.
Result Results of the method execution. The RtlsLocationResult DataType is defined in 9.3.15.

Method Result Codes

ResultCode Description
Bad_MethodInvalid The device does not support this function
Bad_InvalidState This command is not available or not allowed e.g. due to special configuration

## 6.6.3.3 Method GetSupportedLocationTypes

This method returns the RTLSLocationTypes (as defined in RTLSLocationTypeEnum and in section 8.3) the RTLS device or system supports. At least one Type must be returned. The first type that is returned (first position in the resulting array) is the default type that the RTLS device or system will use.

Signature

GetSupportedLocationTypes (
[out]	LocationTypeEnumeration[]	SupportedLocationTypes
);


Argument Description
SupportedLocationTypes[] Array of supported LocationTypeEnumeration values as defined in 9.2.3. At least one Type shall be returned.

Method Result Codes

ResultCode Description
Bad_MethodInvalid The device does not support this function
Bad_InvalidState This command is not available or not allowed e.g. due to special configuration