1E Platform integration
Prerequisites
This page assumes that you have a working 1E Platform installation. For details on implementing 1E, refer to the following articles:
Enabling the 1E Platform integration during Shopping installation or upgrade
Ensure you have configured all the prerequisites listed above, and then follow the steps outlined in Installing Shopping Central or Upgrading Shopping until you reach the screen where you can enable the 1E Platform integration.
1E Platform portal
-
Check the Enable 1E Platform Integration checkbox if you require any of the following Shopping features:
-
Shopping for 1E Instructions
-
Client-side Order Tracking to notify Shoppers via a notification icon and toast pop-ups.
-
-
Fill in the following fields for your 1E Platform implementation.
Field
Description
1E Platform base URL
Set this to the base URL of your 1E Platform. For example, https://tachyon.acme.local:443/.
Setup User
Set this to the user name of the account you want to use for running the 1E Instruction that implements the Client-side Order Tracking feature and any 1E Instructions you are making available as Shopping applications. The user name must be provided in the form of Domain\User. You could even set this to the account details you used for the Shopping Service account to avoid having to provision another account.
This user has to perform the following tasks:
-
Create the Shopping Administrators role in 1E.
-
Create an instruction set called 1E Shopping and add the Client-side Order Tracking instruction to it.
-
Give the Shopping Administrators role permission to run the instruction.
-
Add the specified user account to the 1E Platform.
-
Assign the user account to the Shopping Administrators role.
-
Save the name as 1E username in the Shopping Console settings (also saves its password encrypted).
-
Allow read access on the private key.
Integration User
This user is to be added as a Shopping administrator in the 1E Platform. The user name must be in UPN format.
Client Assertion App ID
The Client Assertion App ID is used to retrieve tokens for authentication in the 1E Platform.
Signing certificate for Platform tokens
This is the thumbprint of the certificate that is added to the Client Assertion App and also imported to the certificate store of the server.
Add private key permissions
This checkbox grants read permission to the Shopping Admin group and Central service account on the private key of the above certificate in the certificate store. This permission is required for creating the jwt required to fetch the authentication platform token.
-
-
Click Next to continue.
Ensure that you have the prerequisites (refer to 1E Platform) before proceeding with the steps below.
Configure Microsoft Entra ID for the integration
Create certificate/principal mapping in 1E Platform
-
Install the certificate with private key locally to the local machine personal certificate store. Ensure that you have added the required permissions to access the private key to the Shopping installer account.
-
Login to your 1E instance using Set-1E Server.
-
Get the certificate kid using:
-
Get-1ECertificateThumbprint -StoreName localmachine\my | fl *
-
The kid value of a certificate is a base 64 encoding of the certificate thumbprint.
-
-
Now create a mapping using:
Upload the public key PEM file in Microsoft Entra ID
-
Export the certificate that you have imported in the above steps in .CER format.
-
Login with the administrator principal role.
-
Navigate to Azure Active Directory > App Registrations > 1E Client Assertion > Certificates and upload the certificate.
Managing 1E instruction sets
If you have enabled the 1E Platform integration, you're now ready for your 1E administrator to manage instructions sets, and upload product packs containing instructions to offer to your Shoppers.
You can only use Shopping to offer 1E action instructions, you cannot offer questions.
By default, Shopping administrators will be able to offer all action instructions from 1E. However, many 1E action instructions are meant to fix technical issues that you and other IT staff understand well, but end users may not. This means that you rely on Shopping administrators using common sense when choosing the instructions to publish as 1E instruction applications.
It's a good idea instead to restrict the range of 1E instructions made available to Shopping administrators to specific Instructions sets. Then, when Shopping administrators are creating 1E instruction applications to make them available to users, they will only be able to select from the 1E instructions available in those sets - not all the 1E instructions. Regardless of whether the Instructions sets contain both action and question instructions, the Shopping administrators will only see action instructions.
Each instruction can belong to only one Instruction set. Each Instruction set can contain multiple instructions, and can be assigned to one or more 1E roles. Shopping uses only one role called Shopping Administrators to which you will assign your chosen Instruction sets.
All of that is optional. You can use the following processes if you want to take the restrictive approach. By default, Shopping administrators will be able to offer all action instructions.
Restrict the 1E Shopping Administrators role to the instruction set
-
In the 1E Platform Settings app, go to the Permissions, Roles node.
-
Click on the Shopping Administrators role - if this does not exist then check with your 1E administrators they have not used a different name, which may happen if Enabling the 1E Platform integration during Shopping installation or upgrade.
-
Click on Members to confirm the listed 1E username is the one specified in your Shopping Console settings.
-
Click onManagement Groups to confirmAll Devicesis listed - this is the default - if required, you can change this to select specificManagement Groupsto limit the scope of devices you can send instructions to.
-
Click on Permissions then for each Instruction set.
-
Click Add then in the Add permission dialog.
-
Click on the Type drop-down and select Instruction set type.
-
Click on the Name drop-down and select your chosen Instruction set - if this does not exist then you will need to Cancel the Add step, and Create an Instruction set.
-
Check Actioner.
-
Click Add.
-
-
If you want to delete an Instruction set, check the checkbox to its left and click Delete button on the right.
Create an Instruction set
Instructions are available from 1E in Product Packs, which are zips provided as part of the 1E Platform installation, or downloaded from the 1E Exchange. You can use the Exchange to search for suitable product packs, or submit requests for new instructions. You or your 1E administrator can also author your own instructions, as described in Writing 1E Instructions.
You can use the 1E Product Pack deployment tool to upload Product Packs, and the tool will automatically create one Instruction set for each pack. This is the preferred way of uploading instructions and creating Instruction sets.
Alternatively, you can use the Instruction sets page to manually upload Product Packs and then assign their instructions to Instructions sets you also create manually.
Upload or move instructions
Upload or move instructions to your instruction set. This process is fairly intuitive once you have created an Instruction set. Please refer to Instruction sets page if you need more detail.
You are now ready to offer 1E instructions to your users. See 1E Instruction applications for more details.
Enabling the 1E Platform integration after Shopping installation or upgrade
If you installed or upgraded to Shopping without enabling the 1E Platform integration, you must perform the following:
-
Create a 1E consumer.
-
Create a 1E Shopping Administrators role.
-
Load a 1E instruction to communicate with the 1E Client Shopping module.
-
Set values in the Shopping console.
These steps are done automatically if you enable the 1E Platform integration while installing or upgrading to Shopping.
The same 1E user permissions are required for the user doing the configuration.
Create a 1E Shopping consumer
In the Settings application in the 1E Platform:
-
Open the Configuration node and select Consumers.
-
Click Add.
-
Set the Name to Shopping.
-
Set the Maximum simultaneous instructions to 1000.
Editing the 1E Shopping consumer workflow
The 1E consumer page does not allow you to specify the workflow for the Shopping consumer. This must be done using SQL Server Management Studio. To do so:
-
Open SQL Server Management Studio and connect to the SQL instance that hosts the TachyonMaster database.
-
Open a New Query and paste the below SQL query - no edits are required.
-
Execute the SQL query and confirm the Shopping workflow setting is changed from NULL to:
- [{"ReferenceType":0,"InstructionWorkflow":[{"InstructionType":1,"Workflow":{"StateMachine":"State"}}]}]
-
Close SQL Server Management Studio.
SQL script to configure the 1E Shopping consumer workflow
/* Script to change TachyonMaster Consumer setting */
USE [TachyonMaster]
GO
DECLARE @setting nvarchar(max), @oldvalue nvarchar(max), @newvalue nvarchar(max)
SET @setting = 'Shopping'
SET @newvalue = '[{"ReferenceType":0,"InstructionWorkflow":[{"InstructionType":1,"Workflow":{"StateMachine":"State"}}]}]'
SET @oldvalue = (SELECT [Workflow] FROM [dbo].[Consumer] WHERE [Name]= @setting)
UPDATE [dbo].[Consumer] SET [Workflow]=@newvalue WHERE [Name]=@setting
SELECT @setting AS 'Setting', @oldvalue AS 'Before', [Workflow] AS 'After' FROM [dbo].[Consumer]
WHERE [Name]=@setting
GO
Create and assign a Shopping Administrators role in 1E
In the Settings application in the 1E Platform:
-
Open the Permissions node and select Roles
-
Click Add
-
For the Name, use Shopping Administrators - any name will do, but this is what the installer would have created automatically
-
For the Description, use something like Users with this role can use the Shopping related instructions
-
Click Save
-
Click on the newly added role
-
Go to the Permissions tab and click Add
-
For the Type, select Instruction set
-
For the Name, select Shopping - If Shopping is not available it is because you don't have a suitable 1E license
-
Click the Actioner checkbox
-
Click Add
-
Click on the newly added role again
-
Select the Members tab and click Add
-
Add a user account - this is the same account specified in the Set values in the Shopping Console.
Upload a 1E instruction to communicate with the 1E Client Shopping module
-
Locate the 1E-Shopping.zip Product Pack (in the ProductPacks folder of the Shopping download zip available from the 1E Support Portal)
-
Upload the 1E-Shopping Product Pack using the 1E Product Pack deployment tool (in the 1E Platform download zip available from the 1E Support Portal)
-
In the 1E Platform, use the Settings app to navigate to Instructions > Instruction sets and confirm
-
existence of an Instruction set called 1E Shopping
-
containing an instruction with name starting with: Show a notification with title %title% and description %description% to user %userName%...
-
-
Search for Shopping
-
Download the Shopping product pack and load it as per the 1E documentation for loading product packs
Set values in the Shopping Console
In the Shopping Admin Console:
-
Open the Settings node and scroll down to the Tachyon Integration section.
-
Set Tachyon Integration to Enabled.
-
Set Tachyon Username and Tachyon Password to a 1E account. This account can be the same as the Shopping Central service account, but to keep to the principal of minimal privileges should be a unique account only used for connecting Shopping to 1E. The account requires no privileges other than being defined as a 1E account and having the 1E Shopping Administrators role.
-
Set the Tachyon Base URL to the URL for your 1E server.
-
The other values can be left at their default settings - see table below for guidance on changing values
-
Click Save to save the settings
-
Restart the Shopping Central service.
Setting name |
Default value |
Description |
---|---|---|
Order Tracking Enabled |
False |
Enables the Order Tracking feature on all clients when set to true. The Order Tracking feature provides users with order tracking information via:
To disable the icon and popups on a subset of clients, add Shopping Client settings: Module.Shopping.OrderTrackingEnabled to the client configuration file and set to false. This setting does not affect emails. You can control which notifications and emails that users receive using the web administration settings described in Order Tracking. |
Tachyon Base URL |
Depends on installation |
Set this to the base URL for your 1E Platform. For example: https://tachyon.acme.local:443/ |
Tachyon Instruction Processor Interval |
5 |
Interval which Shopping checks to see if there are any new 1E Instruction Application orders to be run. This starts the gather period. If you set this value smaller than the default, the 1E instruction applications will complete faster, but will add a bit more server load to the Shopping and 1E servers. Instruction applications will on average take half of whatever this value is. For example, when set to 5, instructions could take from 0 to 5 minutes to be effective, averaging 2.5 minutes. Note that some instructions have their own stagger period to wait after being sent to the client and actually running. |
Tachyon Instruction Status Processor Interval |
5 |
Interval which Shopping polls 1E for status. Default value is 5 minutes. |
Tachyon Instruction TTL Minutes |
60 |
This defines the length of the gather period which 1E uses to wait for offline devices to come online and run the instruction. When a Shopper shops for an Instruction application, they will be online. However, they may be offline if the instruction requires approval in shopping. A device may also be offline if administrators are shopping on behalf of the user. |
Tachyon Integration Enabled |
Depends on installation |
This setting must be true if you want to use 1E Instruction applications (see 1E Instruction applications) or Order Tracking (see Order Tracking) features. If you change this from true to false, and restart the Central service, then pending Instruction applications will not be processed. Instruction applications will not be visible in the Shopping website for new users. Existing users will see them until their Shopping cache is refreshed, and any request will not be processed. Changing this setting back to true will continue to process the requests. |
Tachyon Password |
Depends on installation |
Password for 1E Username - this is saved encrypted. |
Tachyon Username |
Depends on installation |
Set this to the user name for the account you want to use for running the 1E Instructions. |