This document provides enterprise IT professionals with comprehensive technical information on Bots.
LiveTiles Bots is an enterprise grade web based chatbot platform built on Microsoft Azure Cognitive Services. From the web-based interface, users can create, manage, monitor and train bots using various out-of-the-box (OOTB) capabilities and integrations - all without requiring deep expertise in AI development concepts. Power users and developers can create complex Bot abilities and integrations that can be published to meet user needs across the organization.
DEPLOYING AND MANAGING LIVETILES BOTS
LiveTiles Bots is a turnkey SaaS platform. This allows organizations to immediately start using LiveTiles Bots, without first having to provision or install any additional services in their existing environments.
The platform runs on Microsoft Azure in the most relevant data centre to your location.
SYSTEM REQUIREMENTS AND DEPLOYMENT CONSIDERATIONS
Microsoft Azure Subscription
To utilize the LiveTiles Bots platform your organization will need to have an active subscription to Microsoft Azure.
Azure Active Directory (AAD) is required for authentication. Additional identity providers are on the roadmap. Bots can be deployed anonymously, not requiring user authentication / identification e.g. on a website or in contexts where it is necessary for the Bot to determine the identity of the user e.g. integrating with an internal system.
Abilities - Default and Custom
The Bot platform comes with a series of default OOTB abilities that are typically dependant on your organization levergaing Microsoft Office 365 and having enabled the Microsoft Graph API. For more information on what Graph API permissions are required for the out of the box abilities see this article http://help.livetiles.nyc/livetiles-bots/authentication
The Bot platform also comes with tooling that will enable you to develop your own custom abilities to fit the needs of your organization. These are discussed in the Customization section of this article.
Register Bot Service
A user with Tenant Administrator permissions (or anyone with permission to register an application in the customer Azure tenant) is required to authenticate initially as part of the deployment process. This allows the LiveTiles Bots services to be registered in your Azure tenant, which in turn allows users from that tenant to use these applications.
DEPLOYMENT OF AZURE SERVICES
The Bots platform comes with abilities as part of the platform. If a customer develops their own abilities, these abilities will reside in the customer's tenant. Abilities are delivered in the form of an API. Please refer to the Abilities Lab Software Development Kit (SDK).
One of the OOTB abilities is the “Flow” ability. This can either connect to “Flow” or “Logic Apps”, therefore these services must be enabled in the customer tenant.
If the user opts-in for conversation logging, a storage location needs to be specified where this data can be stored. If enabled, an endpoint needs to be provided to which the logged data can be streamed. This is needed to mitigate any confidentiality or security concerns around potentially sensitive data being stored in a LiveTiles tenant.
Deployment of QnA service (optional)
If the user is using the QnA ability, the QnA Azure service will need to be deployed into the customer tenant. Please refer to the LiveTiles Deployment Guide on how to deploy and enable this service.
The LiveTiles Bots SaaS version has publicly registered endpoints and therefore only an internet connection is needed from the user and any integrating system.
Required URLs to be whitelisted:
Other URLs may be required depending on the bot use case that will be implemented and the services that needs to be integrated with.
LiveTiles Bots are designed to be simple to administer for the typical business user, below are some of the categories to get you started.
For a Getting Started guide on creating and managing Bots, see this article: http://help.livetiles.nyc/livetiles-bots/overview/getting-started
Dependent on use case, a Bot can have a single ability or deliver multiple abilities. For more information on Bot Abilities, visit: http://help.livetiles.nyc/livetiles-bots/bot-designer/terminology
Communicating with a Bot
There are several existing forms of comunication with a Bot. Whether it be via a message, button or card, communicating with your Bot is effortless. For more info, visit: http://help.livetiles.nyc/livetiles-bots/chat-client/communicating-with-a-bot
Bots can be accessed through distinct channels, including Webchat, Teams or Skype. For more information on Bot supported channels, visit: http://help.livetiles.nyc/livetiles-bots/technical-information/supported-channels
For our full suite of Bots Support Articles visit this link: http://help.livetiles.nyc/livetiles-bots
Updates to the SaaS service are rolled out every few weeks with new features and functionality. The goal is to never roll out any changes that could affect or break production Bots in use by users.
In order to achieve this, we have a very structured approach to rolling out updates:
- The Development team completes internal testing, and publishes an updated release to our internal Test environment.
- Our Quality Assurance team performs testing to confirm there are no performance issues with the new/updated functionality, and also test new/updated feature interaction with existing functionality.
- Once the QA team gives the OK, the Development team pushes the release to our Pre-Production environment. This environment is used by other internal LiveTiles teams for demonstrations as well as internal LiveTiles bots.
- After the release is live on the pre-production environment with desired and expected performance and behavior, it is then pushed out to our production environment.
Power users can extend the platform using the “Flow” ability. The Flow ability allows a designer to connect their Bots to their Flows. The Flow ability fetches information from the user, and passes it off to Flow.For more information on how to create a Flow ability, visit: http://help.livetiles.nyc/livetiles-bots/bot-abilities/flow
This feature is currently in development. The ‘Ability Lab’ is an extension of the LiveTiles Bots solution that will allow customers to build Bot functionality that integrates into the specific systems they require. With this feature, developers can create abilities through the Ability Lab that can then be published into the Ability Catalogue. Abilities are created using the LiveTiles abilities SDK and coded in .net.
LiveTiles Bots allow integration to any O365 service that is available through the Microsoft Graph API. This includes: email, calendar, address book, OneDrive, etc.
The LiveTiles “Flow” ability enables Bot power users to integrate other systems via Microsoft Flow. Below is a diagram of the integration pattern using this ability.
Additional integration options are available through custom abilities that can be provided specific to the system that is required. These custom abilities will allow your Bot developers to design the ability interface that users will see in the LiveTiles Bot designer, and also the custom code that is run once the ability is used. Standard API development patterns are used and abilities are written in .net.
The diagram below shows the logical relationship between LiveTiles, the customer's tenants, and the Microsoft cognitive services.
Azure services being used:
SECURITY AND COMPLIANCE
In-transit encryption is provided via SSL certificates which are owned by Microsoft as part of the App Service platform.
All messages are encrypted from the user to the Directline API. This is the entry point into the LiveTiles Bots environment. From here, messages are encrypted when passed between the different Microsoft services. Though, how some of these services handle the messages is out of our control.
TLS1.1+ in transit in HTTP-based communication.
Configuration encryption at rest
Sensitive fields are encrypted at rest in the databases. The lifecycle of these keys are also controlled by Microsoft.
A Key Vault is used to store sensitive passwords and secrets. The lifecycle of the keys used to encrypt these are controlled by Microsoft.
An administrative overview that will provide inisght and documentation on the organization-level is currently in development. This will provide specified users the visibility of all Bots across their organization. This in turn, will allow central governance and control of the Bots being built, as well as how they operate, and which channels they can be published to.
Backup and restore
LiveTiles uses enterprise backup and restore policies with data replicated for geo-redundancy.
LiveTiles does not store any customer data.
LiveTiles uses Microsoft PaaS infrastructure and have designed in HA with geo-redundancy.
Monitoring is done with Azure Application Insights.
A roadmap can be shared upon request.
HELP & SUPPORT
Please do not hesitate to be in contact with LiveTiles for any further information that you require: