This document provides comprehensive information about the introduction and concepts around Nexthink Chatbot SDK, its API and use cases. The information contained herein is subject to change without notice and is not guaranteed to be error-free. If you find any errors, please report them to us via Nexthink Support Portal. This document is intended for readers with a detailed understanding of Nexthink technology.
This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.
The table below demonstrates recommended hardware characteristics for the Chatbot SDK appliance in relation to the number of Engines and devices. Additionally, it predicts the number of user conversations supported by Chatbot SDK within given parameters.
CPU, disk & RAM
Number of concurrent conversations
800 concurrent conversations
assuming 100 requests to Chatbot SDK per second
1600 concurrent conversations
assuming 200 requests to Chatbot SDK per second
3200 concurrent conversations
assuming 400 requests to Chatbot SDK per second
The number of concurrent conversations is estimated with the assumption that every conversation makes 4 requests every 30 seconds. For more information refer to the Measurement methodology section below.
It is preferable to use SSD for the disk storage as there is a lot of data movement in the cache.
The discovery process is responsible for downloading required information from Engines to the local cache. The table demonstrates the estimated duration time of the discovery process, which depends on the number of engines and bandwidth. The bandwidth between Chatbot SDK and Engines is critical to get a reasonable time for the discovery process.
Chatbot SDK - Engine
Number of engines
Discovery duration per engine
< 1 minute
1 minute 35 seconds
3 minutes 15 seconds
5 minutes 30 seconds
8 minutes 15 seconds
To validate a scenario with a high number of endpoints, a custom traffic generator was used to interact with the API. Chatbot SDK was installed on virtual machines where Engines were a part of the performance environment running on Azure.
The hardware requirements were calculated to avoid maximum memory and CPU usage when generating traffic that started to stress the engines. The limits were set in order to avoid an impact on the response time of Engines. They were set when the response time started to increase.
To estimate the maximum number of concurrent conversations the following scenario was used:
For each conversation, there was one request per 30 seconds.
With this estimation, a hundred simultaneous conversations translate to 400 requests in 30 seconds or around 13 requests per second.
Different tests were conducted using the same scenario. The variables that had a higher impact on the discovery duration were:
Number of engines
Number of devices