Overview
The AutomationAgent module provides an easy way for companies to automate repeatable tasks on a consistent schedule with minimal human intervention. These tasks can be already existing functionalities within SalesPad Desktop, such as transferring documents to another workflow queue, running a script, or invoicing.
In addition, AutomationAgent also provides users with the capability of interfacing and interacting with outside services. For example, a customer could use AutomationAgent to import orders from a Magento store daily and export inventory to the same store once a week.
AutomationAgent gives users these abilities through three screens, which will be reviewed in this document: Automation Lookup, Automation Center, and Automation Service.
Note: This is for the version of AutomationAgent built into the SalesPad Desktop application. This version of AutomationAgent is available in SalesPad versions starting with 4.6.3.0.
Note: AutomationAgent does not have access to store/drawer functionality.
Terminology
Automation Card - Much like a Customer Card or Item Card, the Automation Card displays the information about an instance of a given Automation Platform (eBay, for example). The view is separated into a header and a tabbed section, as in other cards within SalesPad.
Automation Component - An Automation Component refers to a specific part of an automation. If an eBay automation includes Order Import, Customer Import, and Tracking Info Export, then those three components make up the automation as a whole.
Automation Platform - An Automation Platform refers to the third-party store or service SalesPad is integrating with. Examples include eBay, Amazon Marketplace, Magento, and Shopify.
Basic Usage
Enable the Automation (Windows) Service
To configure and install the service, click Automations on the ribbon along the top of SalesPad Desktop, then click the Automation Service button. From here, click the Install As Service button. This will open the configuration wizard to assist with setting up the service.
AutomationAgent will use the security group of whichever account installed the Automation Agent service.
For example, if the AutomationAgent service is installed by a user who is a member of the security group "Admin", then the AutomationAgent service will use the "Admin" security group.
Choose the desired Service Startup Type, then click Next. Choose the account to run the service. The service can be run as either the local (current) account or credentials can be entered for another account (an administrator account, for example). Click Next again, then Finish. To start the service now (not required if Automatic for the Service Startup Type was chosen), click the Start button.
Create a New Automation
To create a new automation instance, open the Automation Lookup window from within the Automations module in SalesPad Desktop. From here, click the New Automation button found along the top of the Automation Lookup window. Give the automation a name and select the platform for the integration (e.g. script or workflow) and click OK. Configure additional settings as necessary using the Settings window (these options will vary between platforms).
To have the automation run on a schedule, set the schedule by clicking Set Automation Schedule and specifying the desired intervals for the automation to run, then click Enable Automation.
To set a different schedule for a particular component, click the Set Custom Schedule button and enter the schedule (being sure to check the Enabled checkbox to the right of the schedule name). From here, click the Enable Automation button at the component level. When ready, click Save to save the automation instance.
View/Edit an Existing Automation
To make changes to an existing automation, open the automation instance in the Automation Lookup window. The Automation Name text box can be used to search for the automation by name. After locating the desired the automation instance to edit, select the hyperlinked automation name in the Automation Name column.
Various windows will appear, based on the type of platform SalesPad is integrated with. Choose the appropriate tab and modify the necessary settings. When ready, click Save from within the Automation Lookup window.
Automation Lookup
Functionality Overview
Automation Lookup allows searching for existing automations, creating new instances of automations, deleting automations, and enabling/disabling automations.
Creating a New Instance
Users can create as many automations of a given type that they wish. For Example, if customer ‘X’ has two eBay stores, they are able to setup and configure those separately. They will have completely independent settings (accessible as a tab on the Automation Card). Create a new instance by clicking on New Automation.
Deleting an Automation
The only time an automation is truly deleted is if the Delete option is selected and the automation has never run. Automations that have been run will remain in the database, but will no longer be present in the user interface. To remove an automation, click Delete.
Automation Card
The Automation Card, much like other cards in SalesPad Desktop, houses all of the configuration for each individual automation. All automations can be controlled and configured independently using their respective Automation Card.
Functionality Overview
On the Automation Card, users can enable/disable automations, enable/disable specific component automations, edit automation schedules, edit component schedules, view automation history, configure automation settings, and view/resolve automation errors related to a specific automation.
Enabling/Disabling an Automation
An automation can be enabled or disabled. Disabling an automation will disable all of the automation’s components, regardless of their individual enabled status. Components can also be individually enabled or disabled. In addition, individual components can have their automation status, whether or not they will execute on a scheduled interval, enabled or disabled. This allows for a high level of customization when it comes to automation components, as individual components can be set to only be run manually, or they can be disabled entirely without affecting the rest of the automation’s components.
Automations can be disabled from the Automation Lookup card. The current status of all automations can be viewed on the card grid as well.
Automations and automation components can be enabled and disabled from the Automation Card. The automation status of an automation’s components is also controlled from the Automation Card. Each automation component can be controlled individually using the corresponding Automation Component tab.
Scheduling
Schedules can be set at both the automation and automation component level. If an automation component does not have a schedule, it will use the schedule set at the automation level.
As an example, if a user wants an automation to run once an hour, they can set an hourly schedule at the automation level, then enable automation for the automation components. All of the automation components will then use the automation’s schedule because they do not have a custom schedule.
If the user wanted the automation to run once every hour but also wanted a specific automation component to run only once at the end of the day, a custom schedule can be set at the automation component level for that specific automation component. This new schedule will override the automation’s schedule for that specific automation component.
AutomationAgent will always defer to individual automation components for scheduling purposes, but will fall back to the schedule created for the automation if no component schedules exist.
Note: If the automation service is currently running and a schedule is changed, it may take up to 5 minutes for the new schedule to take effect.
Automation Service
AutomationAgent is a Windows service, and it will run in the background and execute the appropriately scheduled automations. In order for a component to be picked up and integrated by the service, the following conditions must be met:
- The automation is enabled (ex. eBay Store 1)
- The component is enabled (ex. Order Import)
- The automation is enabled at the component level
- A schedule has been set, either at the component schedule level or at the automation level
Functionality overview
The Automation Service window is where users can start/stop the service, install/uninstall the service, and viewing logging details.
Note: For settings and schedule changes to take effect, the Automation Service must be reconfigured.
Action Center
The Action Center allows the user to view any errors that occurred during an automation. Each error will display the error text that AutomationAgent received when trying to execute the automation. Detailed information can be viewed in the Other Details text box. For integrations, this will include the external data on which an integration was attempted as well as the internal result. Notes can be entered into the Notes text box. This allows troubleshooters to document their process as they attempt to resolve the automation’s error. Marking errors as "Resolved" will remove them from the grid.
Note: If an automation error results from something being imported or exported, the automation framework will ignore trying to import or export that entity again until the automation error has been resolved. For example, if a user tries to import a customer and it results in an error, that automation error will need to be resolved before the system will try to import that customer again.
Security
Automation Settings - Allows the user to set automation details.
Automation Instance Action Center - Allows the user to view/use the Instance Action Center.
Automation Action Center - Allows the user to view/use the automation action center
Automation Instance Card - Allows the user to view a particular automation’s Instance Card.
Automation Lookup - Allows the user to query automations based on name.
Automation Run Configuration - Allows the user modify the run configuration of an automation.