CP Extender runs as a Windows service and depends upon .NET Framework 4.8
Extract the files from the installer package to this location
C:\Program Files\Red Rook\RR_CPExtensionServices - Production\
Install using InstallUtil.exe
installutil /ServiceName=Production.RedRookCPExtensionService /DisplayName="Red Rook CPExtension Service - Production" "C:\Program Files\Red Rook\RR_CPExtensionServices - Production\RR_CPExtensionService.exe"
pause
net start "Red Rook CPExtension Service - Production"
Please note that this service can be installed multiple times at different locations. Should you wish to deploy a staging environment, copy the files to a separate location and install by replacing all references to production with staging.
C:\Program Files\Red Rook\RR_CPExtensionServices - Staging\
installutil /ServiceName=Staging.RedRookCPExtensionService /DisplayName="Red Rook CPExtension Service - Staging" "C:\Program Files\Red Rook\RR_CPExtensionServices - Staging\RR_CPExtensionService.exe"
pause
net start "Red Rook CPExtension Service - Staging"
Configuration
The following settings can be modifed in the file: RR_CPExtensionService.exe.config
<add key="URL" value="cp.demogolf.com"/>
<add key="PORT" value="50999"/>
<add key="CERT_SERIAL_NO" value="00e710c599992001c7"/><!-- User Serial number from Cert MMC snapin -->
<add key="SY_USR.USR_ID" value="Z"/>
<add key="CP_ITEMS_FILTER" value=""/>
<add key="CP_ITEMS_BARCOD_ID" value="ITEM"/>
<add key="CP_ITEMS_DIM_FILTER" value=""/>
<add key="CP_ITEMS_INV_FILTER" value="LOC_ID = "1" OR LOC_ID = "4""/>
<add key="CP_PICKTICKETS_ENABLED" value="true"/>
<add key="CP_PICKTICKETS_COLLECTION" value="Order"/>
<add key="CP_PICKTICKETS_POSTURL" value="{baseURL}/api/v1/ipaas/pick_tickets"/>
<add key="CP_PICKTICKETS_ACCESSTOKEN" value=""/>
<add key="CP_GC_ENABLED" value="true" />
<add key="CP_GFC_ITEM_NO" value="GIFTCARD" />
<add key="CP_GFC_PIN_CHARS" value="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" />
<add key="CP_GFC_PIN_LENGTH" value="4" />
<add key="CP_GFC_REQUEST_EXP_HOURS" value="36" />
<add key="GC_PREFIX" value="WEB-" />
<add key="GC_NUM_LENGTH" value="20" />
<add key="GC_CARDPOOL_MAX" value="500" />
<add key="CP_GFC_AUTH_VALID_PERIOD" value="300000" />
<!-- ENTER IN MS -->
<add key="CP_GFC_TEMP_RESERVE_VALID_PERIOD" value="300000" />
<add key="CP_GFC_AUTH_CLEANUP_INTERVAL" value="60000" />
<add key="CP_GFC_EVENT_WRKGRP" value="1" />
<add key="CP_GFC_RENAME_PROMPT_COD" value="GC#" />
<add key="CP_LOY_ENABLED" value="true" />
<add key="CP_LOY_EVENT_WRKGRP" value="1" />
<add key="CP_LOY_AUTH_VALID_PERIOD" value="30000" />
<!-- ENTER IN MS -->
<add key="CP_LOY_AUTH_CLEANUP_INTERVAL" value="60000" />
<add key="CP_LOY_GFC_CONVERT_ENABLED" value="true" /> <!-- Used only for the Service, not when creating gift cards from loyalty in the API -->
<add key="CP_LOY_GFC_CONVERT_INTERVAL" value="3600000" />
<add key="CP_LOY_EXPIRE_ENABLED" value="false" />
<add key="CP_LOY_EXPIRE_INTERVAL" value="14400000" />
<!-- EVERY 4 HOURS -->
<add key="CP_LOY_EXPIRE_TYPE" value="PERIOD" />
<!-- Acceptable: PERIOD -->
<add key="CP_LOY_EXPIRE_PERIOD_TYPE" value="ANNUAL" />
<!-- Acceptable: ANNUAL, MONTHLY, DAILY -->
<add key="CP_LOY_EXPIRE_PERIODS" value="1" />
<add key="CP_IMAGE_SERVICE_ENABLED" value="true"/>
<add key="CP_IMAGE_CP_ALIAS" value="DEMOGIFT"/>
<add key="CP_IMAGE_SCOUT_INTERVAL" value="300000"/> <!-- ENTER IN MS -->
<add key="CP_IMAGE_SCOUT_BATCHSIZE" value="100"/>
<add key="CP_IMAGE_QUEUE_INTERVAL" value="3000"/>
<add key="CP_IMAGE_QUEUE_BATCHSIZE" value="20"/>
<add key="CP_IMAGE_UPLOAD_INTERVAL" value="60000"/>
<add key="CP_IMAGE_UPLOAD_BATCHSIZE" value="100"/>
<add key="CP_IMAGE_POSTSYSTEM" value="MG"/> <!-- Acceptable: MG, BC -->
<add key="CP_IMAGE_BC_StoreHash" value=""/>
<add key="CP_IMAGE_BC_ClientID" value=""/>
<add key="CP_IMAGE_BC_AuthToken" value=""/>
<add key="CP_IMAGE_MG_BearerToken" value=""/>
<add key="LOG_LEVEL" value="Errors"/> <!-- Acceptable: None, Errors, Diagnostics, Verbose -->
<add key="LOG_GC_LEVEL" value="Errors"/> <!-- Optional -->
<add key="LOG_LOY_LEVEL" value="Errors"/>
<add key="LOG_IMAGE_LEVEL" value="Errors"/>
<add key="LOG_PICKTICKETS_LEVEL" value="Errors"/>
<add key="LOG_ITEMS_LEVEL" value="Errors"/>
Logging
All logging is output to text files saved in a subfolder of the root install directory.
Logging can be optionally configured to output by module into separate files.
Each Log file configured can be configured for different logging levels.