All Projects → qlik-bots → QlikBotNet

qlik-bots / QlikBotNet

Licence: Apache-2.0 License
Qlik Bot Net is an example chat bot which enables access to Qlik content via conversational analytics. It's built in .NET/C# and can be used with the Telegram messaging platform.

Programming Languages

C#
18002 projects
powershell
5483 projects

Projects that are alternatives of or similar to QlikBotNet

Telegram.bot
.NET Client for Telegram Bot API
Stars: ✭ 1,964 (+9720%)
Mutual labels:  telegram, chatbot
Telegram Bot Sdk
🤖 Telegram Bot API PHP SDK. Lets you build Telegram Bots easily! Supports Laravel out of the box.
Stars: ✭ 2,212 (+10960%)
Mutual labels:  telegram, chatbot
Expressbot
一个可以帮你订阅、查询快递物流、跟你闲聊Telegram机器人
Stars: ✭ 137 (+585%)
Mutual labels:  telegram, chatbot
Telegram.bot.framework
Simple framework for building Telegram bots
Stars: ✭ 73 (+265%)
Mutual labels:  telegram, chatbot
Bot
Telegram Chatbot Assistant for Managing Club Activities
Stars: ✭ 208 (+940%)
Mutual labels:  telegram, chatbot
Watomatic
Auto reply app helping you move away from less private messengers like WhatsApp and soon Facebook Messenger
Stars: ✭ 83 (+315%)
Mutual labels:  telegram, chatbot
Magento Chatbot
Magento Chatbot Integration with Telegram, Messenger, Whatsapp, WeChat, Skype and wit.ai.
Stars: ✭ 149 (+645%)
Mutual labels:  telegram, chatbot
Node Telegram Bot Api
Telegram Bot API for NodeJS
Stars: ✭ 5,782 (+28810%)
Mutual labels:  telegram, chatbot
Flottbot
A chatbot framework written in Go. All configurations are made in YAML files, or inside scripts written in your favorite language.
Stars: ✭ 175 (+775%)
Mutual labels:  telegram, chatbot
Transcriberbot
TranscriberBot for Telegram
Stars: ✭ 170 (+750%)
Mutual labels:  telegram, chatbot
technopsyna
телеграм бот для техноконфы
Stars: ✭ 16 (-20%)
Mutual labels:  telegram, chatbot
Python Telegram Bot
We have made you a wrapper you can't refuse
Stars: ✭ 17,209 (+85945%)
Mutual labels:  telegram, chatbot
Gpt2 Telegram Chatbot
GPT-2 Telegram Chat bot
Stars: ✭ 41 (+105%)
Mutual labels:  telegram, chatbot
Messaging Apis
Messaging APIs for multi-platform
Stars: ✭ 1,754 (+8670%)
Mutual labels:  telegram, chatbot
Integrations
Connect your App to Multiple Messaging Channels with the W3C Open standard.
Stars: ✭ 721 (+3505%)
Mutual labels:  telegram, chatbot
Claudia Bot Builder
Create chat bots for Facebook Messenger, Slack, Amazon Alexa, Skype, Telegram, Viber, Line, GroupMe, Kik and Twilio and deploy to AWS Lambda in minutes
Stars: ✭ 1,717 (+8485%)
Mutual labels:  telegram, chatbot
Webhook2telegram
🤖 A simple bot to translate JSON HTTP requests into Telegram push messages
Stars: ✭ 357 (+1685%)
Mutual labels:  telegram, chatbot
Bottender
⚡️ A framework for building conversational user interfaces.
Stars: ✭ 3,803 (+18915%)
Mutual labels:  telegram, chatbot
Java Telegram Bot Tutorial
Java Telegram Bot Tutorial. Feel free to submit issue if you found a mistake.
Stars: ✭ 165 (+725%)
Mutual labels:  telegram, chatbot
Urban Bot
🤖 The universal chatbot library based on React. Write once, launch Telegram, Facebook, Slack, ... every messenger with chatbots
Stars: ✭ 223 (+1015%)
Mutual labels:  telegram, chatbot

Telegram chatbot for Qlik Sense

This is example source code for QlikBotNet, a Qlik Sense chatbot for use with the Telegram messaging platform. QlikBotNet is the middle layer between Telegram and Qlik products which enable users to perform analytics from any devices.

Bot Basics

Current Feature List

  • Natural Language Query
  • Get KPI values
  • List Measures and get current values
  • List Dimensions and get KPIs based on selected dimension
  • Get related charts
  • Get Reports
  • Speak in English, Spanish, Portuguese, Italian, Russian and French

Planned Feature List

  • Set Alarms
  • Get related news
  • Integrate Natural Language Generation
  • Port to other messaging platforms

Getting Started

For Users

Basic Usage

Command Response Notes
Help Shows available commands
Kpi Shows some buttons with Measures from the master items. At the end, the Bot will show an Analysis button with access to the app in the Qlik Sense Hub. This is a way to show a quick access to the most used measures. And to jump to the hub to have all the analytic capabilities from Qlik Sense. The last used measures will appear first.
Kpi <measure> Shows the value of measure Current filters are applied.
Reports Shows all available NPrinting reports to the user. Then the user will be able to download any of them, and open it directly in Telegram. The Bot will show all the PDF files available in the Report folder.
Dimensions Shows with buttons all the dimensions included in master items. When one of them is selected, the Bot sends a message with an analysis of the dimension by the last measure used. The Bot maintains the context during the conversation, and uses the last measure asked.
Measures Shows with buttons all the measures included in master items. When one of them is selected, the Bot sends a message with its value. It shows the total value for this measure, with no filters. Change App The Bot shows the applications published in the Qlik Sense Streams defined in the config file. When the user selects one app, the Bot will close the current one and open the new one. Every user could be connected to different apps.
Language The Bot will show buttons for the user to select the desired language to receive the Bot messages. If any user changes the language, at this moment it will be changed for all users.
English The language is changed to English
Español The language is changed to Spanish
Português The language is changed to Portuguese
Italiano The language is changed to Italian
Pусский The language is changed to Russian
Français The language is changed to French
/demo Switch the demo mode (on or off) When the Demo mode is activated, the Bot will only listen to the Bot Administrator
Clear <dimension> Remove the filter applied by default to that dimension.
Clear Remove all filters

Detailed User Guide

For Administrators

Bot Architecture

Detailed Installation Guide

For Developers

For developers, please make sure you have completed all of the steps at Open Source at Qlik

Bot Modules

Developer Wiki

Prerequisites

This Bot is built with .Net framework, make sure all of the Nuget packages are correctly referenced. Below is a class diagram describing the dependencies between all classes.

Tips on modifying QlikSense chatbot

  • Make telegram chatbot smarter
    • You will need to make several modification
      • BotOnMessageReceived (QlikSenseBot.cs line 513)
        • Taking care of messages received from telegram
      • ProcessConversationResponse (QlikSenseBot.cs line 852)
        • Decide what to do with response from ConversationService
      • BotOnCallbackQueryReceived (QlikSenseBot.cs line 979)
        • Taking care of call back query from telegram
      • Conversation.cs
        • General Qlik sense related operations
      • New NLP service
        • This is relatively easier, you just need to create your NLP helper class and modify QlikNLP.cs to use it.
  • Making a chatbot for slack
    • You will need to create a QlikSlackBot to replace QlikSenseBot
    • You will need to rewrite user management functions in ConversationService

Refactoring (In progress)

  • The chatbot is also undergoing a process of reconstruction, the objective of refactoring is to
    • Enhance code reusability
    • Enhance readability
    • Enhance scalability
    • Enhance maintainability
    • More reliable
    • Estimated day of completion
      • It is an ongoing project so there is no fixed deadline
    • Your help is welcome, please join our development team on Qlik Community or on Qlik Branch Slack

Acknowledgments

Credit and special thanks to Juan Gerardo Cabeza and others for all of their hard work in version 1.0 and 2.1.

Copyright

Copyright 2017 QlikTech International AB

Licensed under the Apache License, Version 2.0 (the "License");you may not use this file except in compliance with the License.You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, softwaredistributed under the License is distributed on an "AS IS" BASIS,WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.See the License for the specific language governing permissions andlimitations under the License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].