Difference between revisions of "Configure EventNotification Endpoint and Enterprise Service for CUI"
(→Enterprise Service) |
(→Direct Access) |
||
(4 intermediate revisions by the same user not shown) | |||
Line 9: | Line 9: | ||
* Make sure all files are accessible | * Make sure all files are accessible | ||
+ | [[Category:Version 4.3|Configure EventNotification Endpoint and Enterprise Service for CUI]] | ||
= Install Notification Endpoint = | = Install Notification Endpoint = | ||
Line 25: | Line 26: | ||
* Configure a "Binding" for the website.<br/>[[Image:BindingIISConf.PNG|300px]] | * Configure a "Binding" for the website.<br/>[[Image:BindingIISConf.PNG|300px]] | ||
** The URL can be used as a direct access target, | ** The URL can be used as a direct access target, | ||
− | * '''or used as an internal target for [[Configure_EventNotification_Endpoint_and_Enterprise_Service_for_CUI#URL_redirection|URL redirection]].''' | + | ** '''or used as an internal target for [[Configure_EventNotification_Endpoint_and_Enterprise_Service_for_CUI#URL_redirection|URL redirection]].''' |
+ | [[Category:Version 4.3|Configure EventNotification Endpoint and Enterprise Service for CUI]] | ||
=URL redirection= | =URL redirection= | ||
Line 92: | Line 94: | ||
} | } | ||
</source> | </source> | ||
− | + | * Example: | |
− | + | ** "SQLUser": "aaa" | |
− | + | ** "SQLPassoword": "bbb" | |
− | + | ** "SQLServer": "(localdb)\ProjectModels" | |
− | + | ** "SQLInitialCatalog": "TEMPLATE.LOCAL" | |
'''Pay attention on JSON escape with ' \" ', ' \\ '''' | '''Pay attention on JSON escape with ' \" ', ' \\ '''' | ||
==See also== | ==See also== | ||
Line 102: | Line 104: | ||
* [[HowTo:Install_UBIK_Web_Service#UBIK.C2.AE_Authentication_Web_Service_USAM.svc]] | * [[HowTo:Install_UBIK_Web_Service#UBIK.C2.AE_Authentication_Web_Service_USAM.svc]] | ||
* [[HowTo:Install_UBIK_Enterprise_Service]] | * [[HowTo:Install_UBIK_Enterprise_Service]] | ||
+ | |||
+ | [[Category:Version 4.3|Configure EventNotification Endpoint and Enterprise Service for CUI]] |
Latest revision as of 12:20, 23 August 2023
EventNotification Endpoint is a middleware which is responsible for receiving incoming COMOS event notifications, queuing them internally and forwarding them to the UBIK® Enterprise Service for further processing. This page describes how to setup the system.
Contents
Overview
- Make sure the Enterprise Service and the USAM are installed on the IIS Server.
- Install the Notification Endpoint Webservice on the IIS Server
- Configure all mandatory settings for the Notification Endpoint Webservice
- Configure the Notification Endpoint Webservice URL in COMOS and enable notifications
- Make sure all files are accessible
Install Notification Endpoint
- Download the Notification Endpoint Webservice from the release portal.
- Deploy the Notification Endpoint Webservice to the designated web app folder on the IIS Server (web app folder needs to be created if necessary)
- IIS Manager setting check: see IIS Manager
- Make sure COMOS is configured to send notifications.
IIS Manager
Direct Access
- Add a new website under the "Sites" folder in IIS Manager.
- Connect the new site to the corresponding physical folder via the website's "basic settings".
- "Site Name", "Application pool" and "Physical path" should be adapted by your setting, here are only example
- Configure a "Binding" for the website.
- The URL can be used as a direct access target,
- or used as an internal target for URL redirection.
URL redirection
- Install URL redirect feature by using "Server Manager", to "Add Roles and Features Wizard":
- Click on the Web Site, which will be exposed to the outside
- Open "URL Rewrite" at "....Home"
- Add rule(s) as 'Inbound Rule' like the following:
Rewrite URL is defined base on direct access
Notification Endpoint
Adapt “Your/EventNotificationEndpoint/Folder/Configuration/config.json” file, configure at least the mandatory settings:
- "USAMUrl": The URL of the USAM Service
- "QueuePath": The folder containing all files, which will be sent to Enterprise Service for processing. After having been processed by ES, the corresponding files will be deleted.
- "InComingLogPath": All received COMOS notifications will be stored here
- "ProcessUrl": The URL of the Enterprise Service web interface
Optional settings:
- "LogPath": Path to your log files folder
- "DeleteLogAfter": Maximum age (in days) to keep log files for
- "DBkeys": Json string array containing the white list of COMOS DBkeys (empty or delete for receiving all DBkeys)
Enterprise Service
- Go to the UBIK.EnterpriseService folder,
- Copy and paste UBIK.Interface.CUI.dll to the “Injection” folder (create it if it does not exist).
- Open UBIK.EnterpriseService.exe.config, find the “appSettings” section, configure all necessary information, and add the "ContentControllerConfigPath" setting to the end:
<appSettings>
<!-- System.Diagnostics.ProcessWindowStyle: Normal = 0, Hidden = 1, Minimized = 2, Maximized = 3 -->
<add key="ConsoleRunMode" value="1" />
<!-- Nothing = 0, Mark = 1, Delete = 2 -->
<add key="CommandFileAction" value="0" />
<add key="ClearWatchFolders" value="0" />
<!-- Path to json file. Pointing to EnterpriseServicePluginExecutionConfigHolder -->
<add key="PluginExecutionConfigPath" value="" />
<add key="ClientSettingsProvider.ServiceUri" value="" />
<!--TEST IF ONLINE USING BROWSER // GET http://localhost:9000/api/basicenterpriseservice/getuptimeinfo-->
<!-- switch on WebInterface: 1, switch off WebInterface : 0 -->
<add key="ExecuteWebInterface" value="1" />
<add key="ExecuteTaskByJsonFile" value="0" />
<!-- Notification Endpoint config ProcessUrl -->
<add key="WebInterfacePort" value="9000" />
<add key="WebInterfaceHost" value="http://localhost" />
<!-- Add this to the ES config file -->
<add key="ContentControllerConfigPath" value="your\setting\path\ContentController.json" />
</appSettings>
<!-- System.Diagnostics.ProcessWindowStyle: Normal = 0, Hidden = 1, Minimized = 2, Maximized = 3 -->
<add key="ConsoleRunMode" value="1" />
<!-- Nothing = 0, Mark = 1, Delete = 2 -->
<add key="CommandFileAction" value="0" />
<add key="ClearWatchFolders" value="0" />
<!-- Path to json file. Pointing to EnterpriseServicePluginExecutionConfigHolder -->
<add key="PluginExecutionConfigPath" value="" />
<add key="ClientSettingsProvider.ServiceUri" value="" />
<!--TEST IF ONLINE USING BROWSER // GET http://localhost:9000/api/basicenterpriseservice/getuptimeinfo-->
<!-- switch on WebInterface: 1, switch off WebInterface : 0 -->
<add key="ExecuteWebInterface" value="1" />
<add key="ExecuteTaskByJsonFile" value="0" />
<!-- Notification Endpoint config ProcessUrl -->
<add key="WebInterfacePort" value="9000" />
<add key="WebInterfaceHost" value="http://localhost" />
<!-- Add this to the ES config file -->
<add key="ContentControllerConfigPath" value="your\setting\path\ContentController.json" />
</appSettings>
Make sure ContentController.json exists.
- Create or adapt ContentController.json according to your database connection:
{
"SqlConnectionDefinition":
{
"SSPI": false (or true, based on your DB setting),
"SQLUser": "username",
"SQLPassword": "password",
"SQLServer": "your SQL Server",
"SQLInitialCatalog": "DB name"
}
}
"SqlConnectionDefinition":
{
"SSPI": false (or true, based on your DB setting),
"SQLUser": "username",
"SQLPassword": "password",
"SQLServer": "your SQL Server",
"SQLInitialCatalog": "DB name"
}
}
- Example:
- "SQLUser": "aaa"
- "SQLPassoword": "bbb"
- "SQLServer": "(localdb)\ProjectModels"
- "SQLInitialCatalog": "TEMPLATE.LOCAL"
Pay attention on JSON escape with ' \" ', ' \\ '