CAN Script Data Types:

ACMService

The ACM Service DataType enables a Content Author to perform below calls to the API.

  1. Activate ACM:
    Content Author can activate a device using the API from VDW using this call method.
    Required: ACM Serial Number and Country Code
    Input Parameters:
    • ACMSerialNumber (string)
    • CountryCode (string)
    Output Parameters:
    • SerialNumber (string)
    • Id (string)
    • Created (datetime)
    • Updated (datetime)
    • currentStepnumber (integer)
    • currentStepName (string)
    • isComplete (boolean)
    • hasError (boolean)
    • Error (string)
    • Result (boolean)

  2. Deactivate ACM:
    Content Author can deactivate a device using the API from VDW using this call method.
    Required: ACM Serial Number
    Input Parameters:
    • ACMSerialNumber (string)
    Output Parameters:
    • SerialNumber (string)
    • Id (integer)
    • Created (datetime)
    • Updated (datetime)
    • currentStepnumber (integer)
    • currentStepName (string)
    • isComplete (boolean)
    • hasError (boolean)
    • Error (string)
    • Result (boolean)

  3. Flash ACM
  4. Get ACM API Data
  5. Get ACM Association
  6. Get Activation Status:
    Content Author can call device activation and deactivation status using the API from VDW using this call method.
    Required: 'id'
    Input Parameters:
    • 'id' (String)This is a GUID generated for an activated/deactivated ACM by the API.
    Output Parameters:
    • SerialNumber (string)
    • id (integer)
    • Created (datetime)
    • Updated (datetime)
    • currentStepnumber (integer)
    • currentStepName (string)
    • isComplete (boolean)
    • hasError (boolean)
    • Error (string)
    • Result (boolean)

  7. Get Firmware Version
  8. Get OAuth Token
  9. Get Trust Store
  10. Send ACM Public Key
  11. Set ACM to VIN Association
  12. Cancel Activation:
    This call method allows a Content Author to cancel an ACM Activation that is in progress (before completely activated).
    Required: ID and Reason
    Input Parameters:
    • 'Id' (String)
    • 'Reason' (String)
    Output Parameters:
    • 'Error' (String)
    • 'Result' (Boolean)

  13. Get Activation Status by Serial Number: The 'GetActivationStatusbySerialNumber' call method allows a Content Author to get status of each step in the activation process for an ACM using Serial Number.
    Required: Serial Number
    Input Parameters:
    • 'SerialNumber' (String)
    Output Parameters:
    • Created (DateTime)
    • currentStepMessage (String)
    • currentStepName (String)
    • currentStepNumber (Integer)
    • Error (String)
    • Id (String)
    • isComplete (Boolean)
    • SerialNumber (String)
    • Result (Boolean)
    • Updated (DateTime)

  14. Get Countries: The 'GetCountries' call method allows a Content Author to get the list of countries from the FUSE API, so that the ACM Plugin no longer has the value hard coded in the FUSE activation services.
    Required: Device Revision
    Input Parameters:
    • 'DeviceRevision' (String)
    Output Parameters:
    • Data (String)
    • Result (String)
    • Error (String)

Array

This variable is used to define a set of values of data.

AuthCode

This is used to create a predefined variable for auth code

Boolean

This is used to set if a condition is true(1)/false(0).

Byte

This is used for programmable data. Single byte is 8bits. Range of Byte is 0-255.

CANUSBType(Enum)

This is used for knowing the state of the AGCO 2x4 or 4x4 VCI.

Channel(Enum)

This is used to know a predefined physical CAN connection to the BUS. An enumeration consisting of the possible CAN Channels. The possible values are:
Channel1
Channel2
Channel3
Channel4

Color

This is used to show the EDT users different colors. An ARGB (alpha, red, green, blue) color. Each color channel is in the range 0 - 255.

ConnectionStep

This is used to notify the user to connect a predefined physical connection. A connection step is an instruction to the user with image and text displayed to describe how to make the appropriate connection.

DateTime

This is used to create current date and current time stamp. Represents an instant in time. The range of values is January 1, 0001 00:00 to December 31, 9999 one moment before January 1, 10000.

Dll

This is used to define length of an array of data in dll.

EEM4Service

This is used to run EEM4 services(AGCO power engine ecu) in different modes. Ex: 1. Development 2. Feature 3. Production 4. Local 5. Local Fiddler 6. Test.

Enum

This is used to create different enumeration of values. The editor for the Enum is typically a dropdown containing the defined values.

EnvironmentData

This is used to define data description ID from an ODX file. The value for EnvironmentData may only be defined as “{Empty}”. In order to get a real EnvironmentData, it must be returned from a CallService snippet. To process an EnvironmentData, use the Process Environment Data snippet.

FeatureUnlock

The FeatureUnlock DataType enables a Content Author to perform below calls to the Feature Unlock API.

  1. GetDeviceFeature:
    The GetDeviceFeature allows the content author to retrieve an Activation Status and Authorization Code by VIN and FeatureID from the Feature Unlock Web API.
    Required: Feature ID, VIN, and Access Token
    Input Parameters:
    • FeatureID (String)
    • VIN (String)
    • AccessToken (String)
    Output Parameters:
    • ActivationStatuses (Array: String)
    • AuthorizationCodes (Array: String)
    • Result (Boolean)
    • Error (String)

  2. GetDeviceFeatures:
    The GetDeviceFeatures allows the content author to retrieve a list of FeatureIDs, Authorization Codes, and Activation Statuses by VIN and optionally a FeatureID from the Feature Unlock Web API.
    Required: VIN and Access Token
    Input Parameters:
    • VIN (String)
    • AccessToken (String)
    • FeatureID (String)
    Output Parameters:
    • FeatureIDs (Array: String)
    • ActivationStatuses (Array: String)
    • AuthorizationCodes (Array: String)
    • Result (boolean)
    • Error (String)

  3. GetFeature:
    The GetFeature allows the content author to retrieve a FeatureID by Part Number from the Feature Unlock Web API.
    Required: Part Number and Access Token
    Input Parameters:
    • PartNumber (String)
    • AccessToken (String)
    Output Parameters:
    • FeatureIDs (String)
    • Result (boolean)
    • Error (String)

  4. GetOAuthToken:
    The GetOAuthToken call method returns an access token required to communicate with other Feature Unlock API calls
    Required: None
    Input Parameters: None
    Output Parameters:
    • AccessToken (String)
    • Result (boolean)
    • Error (String)

  5. OrderFeatures:
    The OrderFeatures call method is used during manufacturing to send a FeatureID by VIN to the Feature Unlock API.
    Required: Feature IDs, VIN, and Access Token
    Input Parameters:
    • FeatureIDs (Array: String)
    • VIN (String)
    • AccessToken (String)
    • ActivationLocation (String)
    Output Parameters:
    • Result (boolean)
    • Error (String)

  6. PromptAndValidateCode:
    EDT will display a standardized UI input prompts to the user for entering an Authorization Code. After the user clicks on the OK button, EDT will validate if the Authorization Code is not expired and whether the VIN/Serial Number associated to the Authorization Code matches to what equipment is connected to EDT.
    Required: Serial Number
    Input Parameters:
    • SerialNumber (string)
    Output Parameters:
    • DataParamenters (Array: Byte)
    • Error (String)
    • Expiration (DateTime)
    • AuthorizationCodes (Array: String)
    • IsValid (Boolean)

  7. SetNT03SToVINAssociation:
    Content Author can associate an NT03 serial number to a specific VIN.
    Required: Access Token, NT03 Serial Number, and VIN
    Input Parameters:
    • AccessToken (Array: String)
    • NT03SerialNumber (String)
    • VIN (String)
    Output Parameters:
    • Result (boolean)
    • Error (String)

  8. ValidateCode:
    Content Author can validate if the Authorization Code is not expired and whether the VIN/Serial Number associated to the Authorization Code matches to what equipment is connected to EDT. No UI is displayed by EDT.
    Required: Serial Number and Authorization Code
    Input Parameters:
    • SerialNumber (string)
    • AuthorizationCode (string)
    Output Parameters:
    • DataParamenters (Array: Byte)
    • Error (String)
    • Expiration (DateTime)
    • IsValid (Boolean)

File

A link to a file along with a version and notes. This is used to define a file path/location.

FileIO

This is used to read or write to a file.

  1. ReadBytes:
    The ReadBytes Call Method is used to read the bytes of a file into a Byte Array. The FileIO DataType contains a Position property that is persistent for the context of the script and should be explicitly set before each Call Method.
    Required: Array, Offset, Count
    Input Parameters:
    • Array (ByRef Array: Byte) - The array containing the bytes read.
    • Offset (Integer) - The Offset refers to the position in the Byte Array to insert the file's bytes.
    • Count (Integer) - The Count is the number of bytes to read from the file.
    Output Parameters:
    • BytesRead (Integer) - The count of the bytes read into the array.
  2. ReadLine:
    The ReadLine Call Method is used to read a line from a file and return a string. The read will start at the current position in the file and read to the next Carriage Return Line-feed. The FileIO DataType contains a Position property that is persistent for the context of the script and should be explicitly set before each Call Method.
  3. ReadToEnd:
    The ReadToEnd Call Method is used to read the file from the current position in the file to the end of the file and return a string. The FileIO DataType contains a Position property that is persistent for the context of the script and should be explicitly set before each Call Method.
  4. SetLength:
    The SetLength Call Method is used to set the byte length of the file, when using the FileIO DataType for writing a new file.
  5. WriteBytes:
    The WriteBytes Call Method is used to write the bytes of Byte Array to a file. The FileIO DataType contains a Position property that is persistent for the context of the script and should be explicitly set before each Call Method.
    Required: Array, Offset, Count
    Input Parameters:
    • Array (ByRef Array: Byte) - The array containing the bytes to write.
    • Offset (Integer) - The Offset refers to the position in the Byte Array to write to the file.
    • Count (Integer) - The Count is the number of bytes to write to the file.
  6. WriteLine:
    The WriteLine Call Method is used to write a string as a new line in a file. The FileIO DataType contains a Position property that is persistent for the context of the script and should be explicitly set before each Call Method.
  7. WriteText:
    The WriteText Call Method is ued to write a string in a file. The FileIO DataType contains a Position property that is persistent for the context of the script and should be explicitly set before each Call Method.

FlashScriptReturn(Enum)

This is used to define the state of the flash script return. Ex: success, fail, skipped.

Float

This is used to define a float variable. A double precision floating point value. The range of Float is negative 1.79769313486232e308 to positive 1.79769313486232e308, with a precision of 15 - 17 decimal digits. Float also has representations for positive and negative infinity and for NaN (not a number).

GlobalString

This is used to assign a global string to a particular variable to use in CANScripts.

Image

This is used to assign an image from local directory or Global Image Library to a particular variable.

Integer

A 64 bit integer. The range of Integer is -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807.

JSONObject

This is used in typically ACM to know values in JSON format.

ModelRegion(Enum)

This is used to define the region for the machine in EDT.

RecordSet

A collection of records. Each record consists of one or more fields. The names and types of the fields may be defined by the user. This is used to create recordset of data. Ex: parameter name, type of parameter

SatelliteHealth(Enum)

This is used to define the health of the satellite. Ex: bad, good, not available, not used.

SatelliteType(Enum)

This is used to define the connection state of the satellite. Ex: correction, gps, glonass

SCPObject

This is used to create Secure COpy Protocol for ECUs. Ex: ACM

ScriptReturnCode(Enum)

This returns information whether script failed or skipped or success.

ScriptSignal

This is used to return a signal value.

StandardizedDTC

This is used to return an array of diagnostic trouble codes.

Status(Enum)

This is used to define an array of integer values and associate a status(Alert, Highlight, Normal, Success and Warning) to Grid Control on a graphical surface of VDW

String

A text value. A string is composed of wide characters (Unicode). This is used to define an array of length- integer type to associate to a string [ or define a string value].

SubFunction

This is used to perform/call sub-routines in a script.

SubFunctionInstance

Confirm with EDT Support if this data type is obselete.

TimeSpan

This is used to define an array of length of integer type to associate to timespan [ or to define a timespan]. This represents a time interval. Range is approximately negative 10,675,199 days to 10,675,199 days.

UIM Service

The UIM Service Datatype enables Content Author to perform below calls to the API:

  1. ACMParing
  2. GetVehicleConfigurationFile
    NOTE: Please refer to Technical Appendix: UIM ACM Pairing & Download MCF
  3. ReportSerialNumber: This call method is used to submit ECU Serial Numbers to UIM from EDT, so that the Machine Data Registry(MDR) contains the as built information about the machine. Pre-requisites:
    • Machine connected to VPN (Be on AGCO's Network).
    • Machine configured to UIM Base URL.
    Input Parameters:
    • MachineIdentifier (Required) - String
    • HardwareFeatureID (Required) - String
    • SerialNumber (Required) - String
    • ReassignSerialNumber (Optional) - Boolean
    Output Parameters:
    • StatusCode (Optional) - Integer
    • Error (Optional) - String
    • AssignedSerialNumber (Optional) - String

WiFiObject

This is used to connect to a Wi-Fi network.
Here are the various CallMethods that this DataType supports:

  1. ConnectToACMSSID:
    Input Parameters:
    • SSID (Required) - String
    • Password (Optional) - String
      If password is not provided, an open Wi-Fi network is expected
    Output Parameters:
    • Result (Optional) - Boolean
    • Error (Optional) - String
  2. ConnectToInternetSSID:
    Input Parameters:
    • SSID (Required) - String
    Output Parameters:
    • Result (Optional) - Boolean
    • Error (Optional) - String
  3. GetCurrentSSID:
    Output Parameters:
    • SSID (Optional) - String
    • Result (Optional) - Boolean
    • Error (Optional) - String
  4. QuerySSIDs:
    Output Parameters:
    • SSID (Optional) - Array: String
    • Result (Optional) - Boolean
    • Error (Optional) - String

(listed as of 06/12/2020)