Vision: method reference
Methods you can use in your application. A void promise confirms command submission; device data and rejections arrive through events. Operations returning boolean or arrays wait for their specific results.
isAvailableToDispense
public isAvailableToDispense({ machine = 1 }: { machine?: MachineValid } = {}): boolean;Check if a machine is available to dispense based on its status.
requestMachineStatus
public async requestMachineStatus({ machine = 1 }: { machine?: MachineValid } = {}): Promise<void>;Request machine status.
requestStatusChannel
public async requestStatusChannel({ machine, selection }: { machine: MachineValid; selection: Range<1, 81> }): Promise<void>;Request status of a specific channel.
assignChannels
public async assignChannels({ machine }: { machine: MachineValid }): Promise<SelectionStatus[]>;Get status of all channels in a machine. WARNING: This method triggers a sequence of requests for all 80 selections.
requestStatusSelection
public async requestStatusSelection({ selection }: { selection: OneTo240 }): Promise<void>;Request status of a specific selection.
configureSelectionDispense
public async configureSelectionDispense({ selection, speed, timePostRun }: ConfigureSelectionDispenseOptions): Promise<void>;Configure dispense parameters for a selection.
requestSelectionDispenseConfig
public async requestSelectionDispenseConfig({ machine }: { machine: MachineValid }): Promise<void>;Get current dispense configuration for a selection.
configureAddChannelToSelection
public async configureAddChannelToSelection({ selection, machine, tray, channel }: AddChannelToSelectionOptions): Promise<void>;Add a channel to a selection.
requestChannelsLinkedToSelection
public async requestChannelsLinkedToSelection({ selection }: ChannelLinkedToSelectionOptions): Promise<void>;Get channels linked to a selection.
requestMachineIdentification
public async requestMachineIdentification({ machine }: { machine: MachineValid }): Promise<void>;Request machine identification.
configureWorkingTemperature
public async configureWorkingTemperature({ machine, temperature, enable }: ProgramWorkingTemperatureOptions): Promise<void>;Program working temperature.
requestWorkingTemperature
public async requestWorkingTemperature({ machine }: { machine: MachineValid }): Promise<void>;Get working temperature.
configureWaitingTimings
public async configureWaitingTimings({ collectPosition, dispenseManoeuvres, afterPickup }: ProgramWaitingTimingsOptions): Promise<void>;Program waiting timings.
requestWaitingTimings
public async requestWaitingTimings(): Promise<void>;Get waiting timings.
resetSoldOutChannels
public async resetSoldOutChannels({ machine }: { machine: MachineValid }): Promise<void>;Reset sold-out status for all channels in a machine.
resetAllErrors
public async resetAllErrors({ machine }: { machine: MachineValid }): Promise<void[]>;Reset faults and perform self-test for a machine.
configureTimeWaitingAfterPickup
public async configureTimeWaitingAfterPickup({ time }: ProgramTimeWaitingAfterPickupOptions): Promise<void>;Program time waiting after pickup.
requestTimeWaitingAfterPickup
public async requestTimeWaitingAfterPickup(): Promise<void>;Get time waiting after pickup.
requestJSDVersion
public async requestJSDVersion(): Promise<void>;Request JSD firmware version.
requestReportActiveFaults
public async requestReportActiveFaults({ machine }: { machine: MachineValid }): Promise<void>;Request report of active faults.
requestReportInactiveFaults
public async requestReportInactiveFaults({ machine }: { machine: MachineValid }): Promise<void>;Request report of inactive faults.
clearInactiveFaults
public async clearInactiveFaults({ machine }: { machine: MachineValid }): Promise<void>;Request to clear inactive faults.
requestJSDDispensingQueueStatus
public async requestJSDDispensingQueueStatus(): Promise<void>;Request JSD dispensing queue status.
clearJSDDispensingQueue
public async clearJSDDispensingQueue(): Promise<void>;Clear JSD dispensing queue.
configureSpecialCharacteristicsSelection
public async configureSpecialCharacteristicsSelection({
selection,
perishable,
fragileOrHeavy,
typeAdjustElevator,
timeAdjustElevator
}: DefineSpecialCharacteristicsSelectionOptions): Promise<void>;Define special characteristics for a selection.
requestSpecialCharacteristicsSelection
public requestSpecialCharacteristicsSelection({ selection }: SpecialCharacteristicsSelectionOptions): Promise<void>;Get special characteristics for a selection.
configurePerishableProducts
public configurePerishableProducts({ machine, enable, temperatureLimit, minutesToExpiry }: ConfigurePerishableProductsOptions): Promise<void>;Configure perishable products settings.
requestActiveFaults
public async requestActiveFaults({ machine }: { machine: MachineValid }): Promise<void>;Request active faults.
configureExtendedDispenseStatusData
public async configureExtendedDispenseStatusData({ enable }: ConfigureExtendedDispenseStatusDataOptions): Promise<void>;Configure extended dispense status data.
requestExtendedDispenseStatusDataConfig
public async requestExtendedDispenseStatusDataConfig(): Promise<void>;Get extended dispense status data configuration.
requestStatusTrayPositioningPhototransistors
public async requestStatusTrayPositioningPhototransistors({ machine }: { machine: MachineValid }): Promise<void>;Request status of tray positioning phototransistors.
dispenseFromChannel
public async dispenseFromChannel({ machine, tray, channel, speed, timePostRun, cart = false }: DispenseFromChannelOptions): Promise<boolean>;Dispense from a specific channel.
dispense
public async dispense({ machine, selection, speed, timePostRun, cart = false }: DispenseOptions): Promise<boolean>;Dispense from a selection using the channel assignment logic.
dispenseCart
public async dispenseCart(
data: {
machine: MachineValid;
selection: Range0To81;
}[] = []
): Promise<{ selection: Range0To81; dispensed: boolean }[]>;Dispense multiple selections in a cart. WARNING: This method sends dispense commands in batches of 10 and waits for machines to be available before sending the next batch.
requestDispenseStatusFromChannel
public async requestDispenseStatusFromChannel({ token }: DispenseStatusOptions): Promise<void>;Get dispense status from channel using a token.
dispenseFromSelection
public async dispenseFromSelection({ selection, cart = false }: DispenseFromSelectionOptions): Promise<boolean>;Dispense from a selection.
requestDispenseStatusFromSelection
public async requestDispenseStatusFromSelection({ token }: DispenseStatusOptions): Promise<void>;Get dispense status from selection using a token.
lightsOn
public async lightsOn({ machine }: { machine: MachineValid }): Promise<void>;Turn lights on for a machine.
lightsOff
public async lightsOff({ machine }: { machine: MachineValid }): Promise<void>;Turn lights off for a machine.
resetFaultsAndSelfTest
public async resetFaultsAndSelfTest({ machine }: { machine: MachineValid }): Promise<void>;Reset faults and perform self-test.
collect
public async collect({ machine }: { machine: MachineValid }): Promise<void>;Perform collect cycle.
dispenseFromChannelExtended
public async dispenseFromChannelExtended({
machine,
tray,
channel,
speed,
timePostRun,
fragileOrHeavy,
typeAdjustElevator,
timeAdjustElevator,
cart = false
}: DispenseFromChannelExtendedOptions): Promise<boolean>;Dispense from a channel with extended options.
requestDispenseStatusFromChannelExtended
public async requestDispenseStatusFromChannelExtended({ token }: DispenseStatusOptions): Promise<void>;Get dispense status from channel with extended options using a token.
restartJSD
public async restartJSD(): Promise<void>;Request for a complete JSD reset (DANGEROUS).
getMachineStatus
public getMachineStatus(machine: MachineValid): MachineStatus | null;Get the last known status of a machine.
Advanced internal integration reference
Use the methods above in your application. These hooks are reserved for low-level integrations.
_cancelPendingOperations
public _cancelPendingOperations(error: Error): void;Internal lifecycle hook: reject unfinished operations when the serial session ends.
serialMessage
public serialMessage(parsed: VisionResponse): void;