Hi,
I work in operations and have a general query about whether a script popup that occurs for calls within a department which provides a button for users to perform a one step transfer. The action could be anything requiring user credentials because to do this transfer the button is backed by an aws object which in turn contains the genesys sdk commands required to do the task.
My concern/query is whether this decoupling of Genesys desktop client and second/third use of users GC credentials within the script might be causing the intermittent issues regarding "your session has become invalid whilst on a call" the users see. We can only examine our Azure SSO logs to indicate that multiple SSO logins are occurring during calls when this script is performing actions.
Does this scenario behave as "multiple concurrent GC logins" or is this perfectly correct way of embedding additional desired behaviour within a script?
You'll need to open a case with Care to investigate why an error in the product UI was shown. We don't have access to your org's data via the forum to research this.
I should not have mentioned any issues. I was hoping to discover whether the approach that was used by our developers is meeting the approved methodology. I saw that " multiple concurrent Genesys Cloud logins" can cause problems, and that Genesys article mentioned:
Genesys Cloud does not support multiple concurrent logins to the same account. Genesys Cloud considers the following scenarios as multiple concurrent logins:
- The same account logs in to [web app] on multiple tabs or browsers.
- The same account logs in to the [desktop app] and in the web app.
- The same account logs in on different computers at the same time.
- The same account logs into an [embedded client] and the desktop, web, or mobile apps at the same time.
What I see in the source code might be failing the test above.
async function start() {
const client = platformClient.ApiClient.instance;
client.setEnvironment(gc_region);
client.setPersistSettings(true, '_single-step-conference_');
await client.loginImplicitGrant(gc_clientId, gc_redirectUrl, {});
}
My concern arises from documentation in the ApiClient.js file:
/**
* Manages low level client-server communications, parameter marshalling, etc. There should not be any need for an
* application to use this class directly - the *Api and model classes provide the public API for the service. The
* contents of this file should be regarded as internal but are documented for completeness.
* @alias module:purecloud-platform-client-v2/ApiClient
* @class
*/
This makes me think that use of this low level class might be considered a concurrent login.
Maybe the script should only have used the ConversationsApi (and others within the client folder).
Genesys Cloud, as a platform, absolutely allows multiple concurrent sessions for the same user; the reality of why that statement exists is more nuanced than that. The main concern that I'm aware of is that base UIs aren't completely multi-tab safe. This statement allows issue reports that have a root cause of multiple concurrent sessions to be rejected as unsupported.
If your app is well-behaved, it probably won't cause any issues. Creating secondary apps that authorize for the user is extremely common. But if you're causing rate or other limits to be hit, it can cause issues with the base app. Some examples could be hitting a global per-user id rate limit or creating too many notification channels causing old ones created by other apps to be closed.
Using any parts of the SDK or none at all is irrelevant. The SDKs are nothing more than a language-specific interface to the public Genesys Cloud Platform. The concern is what your app is doing in the platform, not what its runtime environment is.
This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.