Product settings


Once you’ve completed the one time setup, you can use the admin user to access Qbo settings.

The configuration and management of data sources is discussed in the corresponding section of this guide.

Concept dictionary


The Concept dictionary contains information about terms that are related to all the data sources that may be set up within Qbo. There are two key kinds of information that can be provided. One is the list of synonyms for a concept, and the other is a list of unsupported concepts.

../../_images/settings-ConceptDictionary.png

Concepts with synonyms

Concepts with synonyms is a component under concept dictionary that allows users to define synonyms and associate it to a certain concept. This allows Qbo to recognize a synonym and translate it to the associated concept.

To add a concept with synonyms, click on New entry. Specify the Phrase or the concept that you wanted to have synonyms, select qbo under QueryBot Name and list down the synonyms to be associated to the phrase in the Add synonyms field. Finally, click on Save changes.

../../_images/settings-ConceptDictionary-ConceptsWithSynonyms.png

With the example below, the concept customer can now be referred as user, client or subscriber in Qbo.

../../_images/settings-ConceptDictionary-ConceptsWithSynonymsEntry.png

Unsupported concepts

Concepts that are not supported can also be defined under the Unsupported concepts. Unsupported concepts could be defined for reasons like unavailabilty of data, issues with the quality of data, inability of Qbo to appropriately answer some kinds of queries, etc.

To add an unsupported concept, click on New entry. Specify the Phrase or the concept that is not yet supported, select qbo under QueryBot Name and fill out Text field to explain why the concept is not supported. Finally, click on Save changes.

../../_images/settings-ConceptDictionary-UnsupportedConcepts.png

Below is an example of defining an unsupported concept.

../../_images/settings-ConceptDictionary-UnsupportedConceptsEntry.png

Once concepts with synonyms or unsupported concepts have been defined, it is necessary to Reload the data source to reflect the changes.

Channels


A channel is a place where a team or an individual can create threads that allow them to interact with Qbo to work towards a common goal. A channel can be a project, activity, or topic. It can be set to either private or public.

Note

All channels created by users will be visible in the admin panel section.

For more information about channels, see the user guide Channels section.

../../_images/settings-Channels.png

Usage metrics


The usage metrics module displays metrics like the trend of number of distinct users by day and the number of sessions by day. You can specify a timeframe or use the default duration.

../../_images/settings-Usage.png

Organizational settings


In the organization settings module, you can edit the organization name, logo, and other organization-wide settings like the bot image and the default user image.

../../_images/settings-Organization.png

User & role management


In the user and role management module, you can add, delete, and edit user accounts and roles. The admin user and the Administrator role cannot be modified or deleted. The user management interface as shown below shows a list of users and their attributes.

../../_images/settings-User.png

Users

Click on a username to edit information about that user account or reset the account’s password.

../../_images/settings-UserEdit.png

To delete one or more users, select the accounts you want to remove by ticking the checkbox beside them. Click the Delete Selected Users button to remove the accounts.

../../_images/settings-UserDelete.png

Forgot password

If this is enabled, and a user forgets their password, they can use the Forgot password? link to receive an email containing the reset password instructions. Qbo sends this to the user’s registered email address.

Prerequisites

To ensure that the forgot password functionality will work as expected:

  • Add the resetPasswordConfiguration code below to the chai.json file.

  • Configure the send grid configuration setting in the External services section.

  • Map usernames to email addresses.

Add this code to chai.json:

"resetPasswordConfiguration": {
    "expiredResetPasswordLinkCleanupPeriodInDays": 1,
    "resetPasswordLinkExpirationWindowInMinutes": 30,
    "resetPasswordMailTemplateConfiguration": {
         "resetPasswordLinkExpirationWindowInMinutesParameterName": "minutes",
         "resetPasswordLinkParameterName": "activationLink",
         "templateId": "d-038c9bdc5a3949a39f55d622e2f7a945",
         "userDisplayNameParameterName": "name"
     }
  }
../../_images/resetPassword-emailConfiguration.png

If configured correctly, you will see the Forgot password? option on your login screen.

../../_images/resetPassword-loginScreen.png

Reset your password

  1. Click the Forgot password? link. Enter your username or email address in the Reset your password page. Click the Sent reset instructions button to reset your password.

    ../../_images/resetPassword-sentResetInstructions.png

    Qbo will send an email to your registered email address. Open the email and click the Reset password button.

    ../../_images/resetPassword-resetPasswordEmail.png
  2. Enter your new password in the Reset your password page, enter it again to confirm, then click the Change password button.

    ../../_images/resetPassword-changePassword.png
  3. Click the Sign in link on the Password changed page. Log in with your new password.

    ../../_images/resetPassword-signIn.png

Roles & Permissions

The roles tab displays the currently configured roles. You can also view the permissions associated with each role.

../../_images/settings-Role.png

To create a role, click the Create new role button. Enter a name for the new role and assign permissions to it.

../../_images/settings-RoleNew.png

To delete a role, click on it and then click the Delete Selected Roles button that appears. Please note that to be deleted, a role must not be assigned to any user.

../../_images/settings-RoleDelete.png

Note

Users with Administrator/AllPermissions roles cannot view their own user details.

LDAP configurations

If your organization has an LDAP server, you can add users from this server to Qbo. A user will then be able to sign into Qbo using their LDAP username and password. Qbo supports:

  • Active Directory

  • OpenLDAP

Active Directory

Server settings

../../_images/LDAPSettingsActiveDirectory.jpg
Server type:                    LDAP server type (ActiveDirectory).
Hostname:                       Host address of the LDAP server.
Port:                           Port of the LDAP server.
Use SSL:                        If the server uses a secure connection.
Verify SSL certificate:         If the server’s certificate is trusted by an authority (true) or self-signed
                                (false).
Base DN:                        Base directory of the LDAP server.
User DN:                        A name that includes an object's entire path to the root of the LDAP namespace.
Group DN:                       Currently unused.
../../_images/LDAPSettingsActiveDirectorySearchSettings.jpg
Enable search user credentials: This is used when we send search queries to the LDAP server. Some server
                                allows anonymous search requests (this can be left unchecked in those cases).
Search user name:               The user name that will be used for authentication of the user search
Search user password:           The password that will be used for authentication of the user search.
Connection timeout (seconds):   Timeout when connecting to the LDAP server.
Read timeout (seconds):         Timeout when waiting for an answer from the LDAP server.
Search timeout (seconds):       Timeout when waiting for search query from the LDAP server.

User schema

../../_images/LDAPSettingsActiveDirectoryUserSchema.jpg
User schema specifies how a user is represented by the LDAP server in an organization.

User object class:                user
Username attribute:               sAMAccountName
Username RDN attribute:           dn
User first name attribute:        givenName
User last name attribute:         sn
User display name attribute:      displayName
User email attribute:             userPrincipalName
User unique identifier attribute: sAMAccountName

For example, John Doe in an organization’s Active Directory LDAP server:

{
"users": [
    {
    "dn": "CN=John Doe,OU=Vendor,DC=intra,DC=yourcompany,DC=co,DC=id",
    "userPrincipalName": "SCRAM.JohnS@intra.yourcompany.co.id",
    "sAMAccountName": "SCRAM.JohnS",
    "mail": "SCRAM.JohnS@ab.co.id",
    "whenCreated": "20190422113605.0Z",
    "pwdLastSet": "132305589928005513",
    "userAccountControl": "512",
    "sn": "Doe",
    "givenName": "John",
    "cn": "John Doe",
    "displayName": "scram.John Doe"
    }
    ],
    "groups": [

    ],
    "other": [

    ]
    }","time":"2020-06-01T05: 48: 44.336Z","v":0} Full result {"users":[{"dn":"CN=JohnDoe,
    OU=Vendor,
    DC=intra,
    DC=yourcompany,
    DC=co,
    DC=id","userPrincipalName":"SCRAM.JohnS@intra.yourcompany.co.id","sAMAccountName":"SCRAM.JohnS","mail":"SCRAM.JohnS@ab.co.id",
    "whenCreated":"20190422113605.0Z","pwdLastSet":"132305589928005513","userAccountControl":"512","sn":"Doe",
    "givenName":"John","cn":"JohnDoe","displayName":"scram.JohnDoe"}],"groups":[],"other":[]}
}

Add an LDAP user to Qbo by searching and updating user details.

Search LDAP User

../../_images/LDAPSearchUser.jpg

Add LDAP user to Qbo

../../_images/LDAPAddUser.jpg

Edit LDAP (user) added

../../_images/LDAPEditUser.jpg

OpenLDAP

../../_images/LDAPSettingsOpenLDAP.jpg

Server settings

Server type:                    LDAP server type (Open LDAP).
Hostname:                       Host address of the LDAP server.
Port:                           Port of the LDAP server.
Use SSL:                        If the server uses a secure connection.
Verify SSL certificate:         If the server’s certificate is trusted by an authority (true) or self-signed
                                (false).
Base DN:                        Base directory of the LDAP server.
User DN:                        UserDN.
Group DN:                       Currently unused.
Enable search user credentials: Used when we send search queries to the LDAP server. Some servers
                                allow anonymous search requests (this can be left unchecked in those cases).
Connection timeout (seconds):   Timeout when connecting to the LDAP server.
Read timeout (seconds):         Timeout when waiting for an answer from the LDAP server.
Search timeout (seconds):       Timeout when waiting for search query from the LDAP server.

User schema

User schema sets how a user is represented by the LDAP server in an organization.

User object class:                inetOrgPerson
Username attribute:               uid
Username RDN attribute:           dn
User first name attribute:        givenName
User last name attribute:         sn
User display name attribute:      displayName
User email attribute:             mail
User unique identifier attribute: uid

For example, John Doe in an organization’s LDAP server:

{
"dn": "cn=John Doe,ou=People,dc=yourcompany,dc=com",
"controls": [],
"cn": "John Doe",
"givenName": "John",
"gidNumber": "500",
"sn": "Doe",
"objectClass": [
    "inetOrgPerson",
    "posixAccount",
    "top",
    "sambaSamAccount"
],
"uid": "john",
"uidNumber": "10009",
"homeDirectory": "/gemenon/home/john",
"loginShell": "/bin/bash",
"mobile": "+1 (222) 213 1234",
"sambaSID": "S-2-6-31-1383322941-1231234567-1345676223-1998",
"displayName": "John Doe",
"sambaAcctFlags": "[U]",
"mail": "john@yourcompany.com",
"title": "Software Developer"
}

Add LDAP users to Qbo by searching and updating user details.

OAuth configurations

You can add OAuth - Open Authorization - to allow users to login with OAuth services like Active Directory. OAuth does not share password information, but instead uses authorization tokens to demonstrate user-Qbo identity. Qbo supports OAuth for Active Directory. It is not necessary to create a user for Qbo, nor is it necessary to remember any username or password for Qbo.

To configure OAuth, you’ll need a client ID and client secret. Register your application on the Azure portal to get these.

Find out more about OAuth about OAuth.

Register an application

Before your application can authenticate Active Directory users, you must register your application and get its client ID and client secret.

  1. Navigate to the Microsoft identity platform for developers in the Azure portal - App registrations page. You can login using a personal or work Microsoft account.

  2. Click New registration.

    ../../_images/OAuthNewRegistration.jpg
  3. Enter your application’s registration information on the Register an application page:

    • In the Name section, enter a meaningful application name that will be displayed to users of the app. For example, qbo.

    • In the Supported account types section, select Accounts in any organizational directory and personal Microsoft accounts.

    ../../_images/OAuthAppRegister.jpg
  4. Click Register to create the application.

  5. On the app Overview page, copy the Application (client) ID value . You can use it as the client id during OAuth configuration.

    ../../_images/OAuthConfigurationOverviewPage.jpg
  6. Click Authentication under Manage. Click the Add a platform button and select Web applications.

    ../../_images/OAuthConfigurationRedirectURLPage.jpg
    • For web applications, provide the base URL of your application. For example, http://localhost:3154/chai or https://qbank.qbo.ai/chai might be the URL for a web application.

    • Add entitlements_manager/azure_oauth_callback in your base URL. For example, https://qbank.qbo.ai/chai/entitlements_manager/azure_oauth_callback and click the Configure button.

    Note

    • The redirect URI must begin with the scheme https. There are some exceptions for localhost redirect URIs.

    ../../_images/OAuthConfigurationRedirectURL.jpg
  7. For web applications, select Certificates & secrets under Manage. Click the New client secret button. Enter a value in Description - for example, NewSecret, select any option for Expires, and click Add.

    Copy the Application (client) secret value. While configuring OAuth, you can use it as the client secret.

    ../../_images/OAuthGenerateClientSecrets.jpg ../../_images/OAuthClientSecrets.jpg

Note

Ensure you copy the client secret value - you won’t see this again next time you visit this screen.

Configure Qbo

../../_images/OAuthConfigurationSetting.jpg

Authority base url: For Azure, the authority base URL should be https://login.microsoftonline.com.

Client ID: The application (client) ID that the Azure portal (during registration) assigned your app.

Client secret: The application (client) secret that you created in the app registration portal for your app.

Tenant ID: The tenant value in the path of the request can be used to control who can sign into the application. To ensure that your application supports both personal accounts and Azure work accounts, we suggest that you use Common as the tenant authentication.

Login page: Users will now see the Sign in with Microsoft button on their login screens.

../../_images/LoginPageOAuthConfigurationSetting.jpg

You can connect to Qbo by clicking the Sign in with Microsoft button.

Signup applications

You can add multiple users by allowing them to sign up with your Qbo instance.

Select Users & Roles from the navigation menu and click the Sign up Application tab

../../_images/select_signup_application.jpg

Enable Signup application configuration and input these fields:

  • Default user roles: Select a default user role to be assigned to new users.

  • Default data access role names: Select data sources that a new user will have access to by default.

  • Allowed email domains: Restrict unauthorized access to your Qbo instances by whitelisting specific domains and only allowing users from those domains to access the application. To add a domain, enter @ and then the domain name.

    ../../_images/add_inputs_email_domains.jpg
  • Accepted signup application mail template

  • Display name parameter name - Display name in the email.

  • Email parameter name: Sender name for the email.

  • Username parameter name: Username of the email sender.

  • Template ID: Enter the ID of an email template to use for successful signup emails.

  • Declined signup application mail template

  • Display name parameter name: Display name for the email.

  • Email parameter name: Email sender name for the email.

  • Username parameter name: Username of the email sender.

  • Template ID: Enter the ID of an email template to use for emails to users whose signup was declined.

../../_images/accepted_and_declined_email.jpg

Auto process configuration

You can automate the process of accepting and declining signups when any user is qualified, based on the conditions you configure.

Select:

  • Auto accept to automatically create user accounts for signups that meet your conditions.

  • Auto decline to automatically reject signups that don’t meet your conditions.

  • None to use the default manual process for accepting or rejecting applications.

../../_images/auto_progess_configuration.jpg

To save your configuration changes, click the Save button in the top right corner of the page. Once changes are saved, users will be allowed to self-register.

../../_images/save_configuration.jpg

Registration page for users

Your users can register themselves to get access to Qbo and share their details.

../../_images/register_sign_up_application.jpg

View the information submitted by users requesting access in the Users and Roles section, Users tab, of Qbo. Click the ellipsis or kebab menu in the top right corner of the screen and select Signup application.

../../_images/choose_signup_application.jpg

Click Accept or Decline for each application.

../../_images/accept_email_option.jpg

External services


External services allow Qbo to communicate with users using voice-enabled conversations, and to send reports using email or WhatsApp.

Click the Communication Services tab to configure Qbo to send reports using email or WhatsApp.

../../_images/settings-Report.png

Click the Speech Configurations tab to configure Qbo for voice conversations with users.

../../_images/settings-Speech.png

Configuration


You can change how charts and other visuals are displayed in the Configurations module. You can modify:

  • colors used

  • transparency

  • default currency

  • display locale.

../../_images/settings-Configurations.png

You can modify geographic visualizations on the Map Configurations tab.

../../_images/settings-MapConfigurations.png

Bot Command Response

Users can enter bot commands in conversational threads to complete tasks like linking a Microsoft Teams account, asking for help, or choosing the data source they want to use. For example, if a user doesn’t know how to start a conversation with Qbo, they can use the help bot command to find out how.

You can configure Qbo with new bot commands.

../../_images/settings-BotCommandResponseConfigurations.png
  • Title: A descriptive name for the bot command.

  • Regex Pattern: The pattern Qbo should use to recognize the bot command with different phrases. For example, ^(choose data source | select data source)$ allows users to enter choose data source or select data source for the command. This field is optional.

  • Command: An NLP phrase for the bot command.

  • Case Sensitive: Enable this to differentiate between commands based on the case used. This field is optional.

  • Conversation channels: The channels this command will be enabled for. Select Directline and Web chat to enable it in the Qbo web application. Select Microsoft Teams to enable it in Teams conversations.

  • Message generation configuration type: The type of configuration you want to use for the bot’s response. Select Text to manually configure a custom response, or Message generator to choose from default response options.

  • Message generator ID: If you chose Message generator, select a message generator id from the list of response options.

Unteach Qbo

Qbo can learn new queries when users use the teach Qbo option. However, sometimes you’ll need to undo accidental or undesirable queries. You can use the unteach qbo bot command for this.

Qbo will display custom queries defined by users in bold, with the linked canonical query listed beside each. Select one or more queries and click Unteach selected queries to remove them from Qbo and unlink them from associated canonical queries.

../../_images/Unteach_qbo_example.png

For example, in the screenshot above, show region performance report is the user-defined query, and What is the Total revenue in the last 3 months monthly and by city is the linked canonical query.

Configure the bot command, including alternative command phrasing, in the Bot Command Response section of the Qbo configuration module.

../../_images/Unteach_qbo_configuration.png

Explore Data

Users can understand Qbo’s underlying data model and data source configuration using the Explore data command. Qbo will return a summary of the entities, aggregations, named filters, and relationships available. It will also provide sample queries that the user could ask for each.

../../_images/explore_data_example.png

Click more… to view more entities.

Click an entity to view more information about the entity and the next action you can take to understand it.

../../_images/explore_data_example_2.png

For example, on the Accounts entity, clicking What are the accounts causes Qbo to display some sample rows of data.

../../_images/explore_data_example_3.png

Common options are:

  • Attributes: attributes associated with the entity.

    ../../_images/explore_data_example_4.png

  • Co-occurrence: Sample co-occurrence queries - help in identifying values of a given attribute that frequently occur together in a defined group

    ../../_images/explore_data_example_5.png

  • Sample queries: A list of sample queries that can be asked about the entity.

    ../../_images/explore_data_example_6.png

  • Named aggregates: Any named aggregates that have been configured against the entity.

    ../../_images/explore_data_example_7.png

  • Named filters Any named filters that have been configured against the entity.

    ../../_images/explore_data_example_8.png

  • Relations: Query relationships between attributes.

    ../../_images/explore_data_example_9.png

Configure the bot command, including alternative command phrasing, in the Bot Command Response section of the Qbo configuration module.

../../_images/explore_data_configuration.png

Dialog message generation

You can configure custom responses for the query bot, including introductions and error messages.

If you want to use an inbuilt message, select one from the Message generator ID field. If you want to write your own, enter it in the Text field. You must choose from one of these options; both cannot be filled.

../../_images/settings-DialogMessageGeneration.png

If you start a new thread, the bot introduction message will appear.

../../_images/settings-BotIntroductionMessage.png

Qgram

Qbo can initiate conversations with users. This means that users do not have to supply the initial prompt. You can use the functionality - also known as machine initiated conversations - to deliver alerts, relevant insights, or messages.

  • Global count threshold: The total number of notifications that Qbo can send to users via qgrams.

  • Maximum qgrams: The maximum number of notifications that Qbo can send to a single user via qgrams.

    Enter a number and select a time period. For example, if you enter 100 and weekly, Qbo will limit qgrams to 100 per user per week.

    ../../_images/settings-QgramContactPolicy.png
  • Conversation initiation modules: Expand this section to configure & schedule prebuilt modules that can initiate

    conversations with users. You can set a schedule - for example, running at the start of the day. You can also specify a channel through which the conversation is initiated. Qbo offers a prebuilt module that will send the top trending questions in the last 7 days to all users.

    Note

    These alerts are sent to all users in their General thread in the web UI, or in the personal chat in Microsoft Teams.

    ../../_images/settings-QgramConversationInitiationModules.png
  • Kafka settings: Send messages to users through a Kafka server. You need to specify at least an IP address and

    port number for the Kafka server, plus the conversation channels you want it to use, the number of partitions to use, and a name for the topic. Messages will be sent to a user in their General thread in the web UI or in the personal chat in Microsoft Teams.

    ../../_images/settings-QgramKafkaSettings.png

License management


In the license management module, you can track the current license or upload a new one. You can view details like the expiration date, the number of users (conversational) allowed, and the number of users with conversational permissions already configured in Qbo.

../../_images/settings-License.png