All Archives - Page 3 of 4 - Bistec Global Services - Services enabled, digitally!

Blog Category: All

Intelligent Chatbot on Azure

June 19, 2021

Business Problem

Recently one of our customers in Australia came to us to solve a problem yet they were facing in the support department. They still receive a lot of support requests daily. The solutions for most of these requests are already available in the user manuals, support site, and other materials to which the customers have access. Since many of these requests are easy to fix, it’s a struggle to invoice the customers properly. Also, a lot of support staff is needed to meet the demand. Our client wanted us to come up with a solution to this problem.

We looked at the following parameters to suggest a solution.

The channels of support request

The volume of resources (support documents)

The channels of support requests.

  • Microsoft Teams
  • Help desk system
  • Email requests

The volume of the resources

  • Support site
  • User manuals
  • Q&A site

Based on these facts we decided to organize the resources in a manner that a customer would be able to find out the answers using one of the above-mentioned mediums without having to contact the support staff.

Proposed Solution

We proposed an intelligent Chat-Bot that will be deployed on Microsoft Teams and in their Help Desk system. So, the customers would first chat with the bot and the bot would analyze the available resources for possible solutions. However if the Chat-Bot failed to respond positively then, it would create a support ticket and assign it to support staff.

Tools

We then looked at the tools that we can use to develop our Chat-Bot. Furthermore there are plenty of resources out there but, we felt the suite of tools provided by Microsoft are more reliable and easy to use. Microsoft has invested a lot in AI and Natural language processing and has come up with several tools that are ideal to build an intelligent Chat-Bot. Also, it’s easy to test and deploy these tools because of the integration with Azure.

QnA service

QnA service extracts question and answer pairs from the content that you upload. The content can be uploaded as URLs, PDFs, Excel files, SharePoint documents, and many more.

Adaptive cards

Adaptive Card is an open-source toolset that helps apps and services exchange rich snippets of native UI.

Microsoft Teams

Microsoft Teams is a unified communications platform that combines persistent workplace chat, video meetings, file storage, and application integration.

Azure Cosmos DB

Azure Cosmos DB is Microsoft’s globally distributed, multi-model database service. With a click of a button, Cosmos DB enables you to elastically and independently scale throughput and storage across any number of Azure regions worldwide.

Chat Bot Behavior

The ChatBot uses QnA service to query the proposed answers for customer queries. We have used Cosmos DB to store the chat session and related data. It’s deployed to Microsoft Teams as a plugin and is available on the support site as a widget.

Generally speaking, once a user enters the chat room in Microsoft Teams he would be initiating a chat with the Bot. The rest of the flow is as follows,

  • A customer initiates a chat with the bot in Microsoft Teams
  • The customer is greeted and shown a welcome card asking for the name and email address
  • Customer types in his question
  • Chat-Bot responds with an answer or more options to fine-tune the response
  • A customer gives feedback on the answers
  • If Chat-Bot is unable to find the best answer then, A feedback form is displayed
  • A customer fills in the feedback form
  • Chat-Bot creates a support ticket with all the information
  • Send the link to the customer

Implementation

We first created the repository using all the documents, manuals, and URLs. The QnA service allows us to import these different types of resources and generates question and answer pairs. Also, we can extract multipart answers as well so that when a customer asks a question it will be able to refine the answers by giving options.

QnA Maker

We first set up the knowledge base in the QnA maker. Go to https://www.qnamaker.ai/ and click on Create a knowledge base. You must go through 5 steps to set up the knowledge base.

  • Create QnA service in Microsoft Azure
  • Connect your QnA service to KB
  • Name your KB
  • Populate your KB
  • Create your KB
  • Publish your KB

Once the QnA maker is set up it gives us an interactive window to test the chat. Also, we can build a tool to train our Bot using the Train API. In the process of setting up QnA, we need to set up a QnA service in Azure as well. This is an app service where the Bot deployed and hosted.

Cosmos DB

Go to the Azure dashboard and set up Cosmos DB instance.

appsettings.json

Bot app is a .Net Core Web API project. Hence, it has the same structure as a Web API Project. The Bot client communicates using JSON.

The request received by the BotController and passed over to Microsoft.Bot.Builder.IBot instance. This configuration added in the startup.cs as follows,

services.AddTransient<​IBot, QnABot.Bots.QnABot>();

The IBot instance has three delegates,

  • OnMembersAddedAsync
  • OnTurnAsync
  • OnMessageActivityAsync

OnMembersAddedAsync

This delegate triggered when a new chat window is created. This is the delegate we use to send a welcome notification to the user.

OnTurnAsync

When implemented in a bot, handles an incoming activity.

OnMessageActivityAsync

This is the delegate that is triggered when a message is sent by the client to the bot.

In our application, we identified 4 chat states which are,

  • User-information
  • Chat-information
  • User-feedback
  • Support-ticket

User-information

This is the initial state. User information is when we capture the user’s name and email and show a welcome message.

Chat-information

Chat information is when we capture user’s requests and send the data to the QnA service. The QnA service would return either response or prompts. This goes on until the user receives the answer he is looking for or he decides to create a support ticket.

User-feedback

User feedback when we capture whether the user’s request answered properly or whether a support ticket needs to be created. When the support ticket created we log the entire chat history in the ticket.

Support-ticket

The support ticket is the step of creating a support ticket in the ticketing system( https://www.servicenow.com/) based on user feedback.

Source Code

Source code can be downloaded from here. Once you download the source code you should do the following.

  • Take a copy of appsettings_dev.json
  • Rename appsettings_dev.json to appsettings.json

#Chatbots #Azure #Luis #Microsoft Bot Framework

Authored by Pragash Rajarathnam @ BISTEC Global

5 Benefits of Having an Extended Development Team

February 6, 2024

In today’s fast-paced tech landscape, staying ahead of the curve means agility and efficiency. But with limited resources and talent pools, how can companies ensure they’re delivering innovative software solutions at breakneck speed? The answer lies in embracing a powerful strategy: building an extended development team.

While you might have an amazing in-house team, tapping into a pool of specialized remote talent can unlock a treasure trove of benefits. Forget the limitations of traditional outsourcing extended teams offer a collaborative, cost-effective, and time-saving approach to achieving your software development goals.

So, let’s dive into the top 5 reasons why building an extended development team is a game-changer for your business:

Streamlined Recruitment, Rapid Deployment

Cost-Effectiveness without Compromising Quality

Enhanced Transparency, Trust, and Collaboration

Minimal Operational Hassle

Accelerated Time to Market

1. Streamlined Recruitment, Rapid Deployment

Forget the tedious recruitment process and lengthy onboarding cycles. Extended teams offer a rapid deployment solution, allowing you to assemble a dedicated team and hit the ground running in no time. Plus, you stay in complete control, as project management remains firmly in-house.

2. Cost-Effectiveness without Compromising Quality

Let’s face it, budget matters. Extended teams offer significant cost savings compared to traditional hiring. Imagine cutting your development costs by 15-40% without sacrificing quality. This efficiency comes from leveraging nearshore or offshore talent pools where salaries are often lower, but the skillset remains exceptional. Remember, cost-effectiveness doesn’t translate to compromise – you get access to a global pool of vetted developers with proven track records, delivering exceptional results without breaking the bank.

3. Enhanced Transparency, Trust, and Collaboration

Collaboration is the cornerstone of success, and extended teams foster an environment where transparency and trust reign supreme. Your in-house and remote teams work side-by-side, sharing knowledge, ideas, and responsibilities. This fosters open communication, clear project visibility, and a shared sense of ownership. The result? Increased productivity, enhanced problem-solving, and a learning environment where everyone benefits.

4. Minimal Operational Hassle

Ditch the setup headaches. Staff augmentation requires minimal operational hassle. Say goodbye to managing payroll, employee benefits, office space, and tech support. We handle that for you, freeing you to focus on what you do best – building amazing software. You simply provide the remote team with access to the tools and information they need, and watch the magic unfold.

5. Accelerated Time to Market

Speed is crucial in today’s competitive market. Extended teams accelerate your time to market by adding more hands to the development deck. With additional resources working simultaneously, tasks get distributed and completed faster. But that’s not all – dedicated remote teams laser-focus on your project, eliminating the distractions of juggling multiple assignments. This translates to faster development cycles, quicker product launches, and a competitive edge in the market.

Building an extended development team is not just about filling skill gaps; it’s about unlocking a strategic advantage. It’s about injecting your project with a dose of agility, cost-efficiency, and collaborative spirit.

9 reasons why your business need “Extended Teams”

July 4, 2021

The concept of ETM is a strategic advantage that has been lost in the chaos of offshoring. The concept of offshoring started in India more than 3 decades ago and already spread across many countries across the globe.
So what is ETM and why it is different?

I cite this article in Forbes talking about this concept without the branding in 2010. Now it is reality!

Imagine the team in your head office, spread throughout the globe. This gives the ability to extend your team to reach the human talent that is not available locally, but you can find through a partner like BistecGlobal.

Having a remote team in an offshore context can be a strain on you mainly because of the lack of transparency.

Most often offshore providers use the team on multiple projects and you may find yourself working with different people than who were initially assigned to you just when you were just getting started.

ETM takes the best offshoring minus the bad experience. It gives you the control you need while you retain better financial and logistical benefits. It provides you total integration with the remote teams and also with your business.

With ETM you are able to synchronize all of your “well-tuned” processors, practices and values, into your Extended Team making it a fully functional branch office with a similar design and identity.

The advantages of an Extended Team Model

“At Bistec Global, we’ve had different experiences working with a verity of engagement models, including ETM and we thrive in this particular environment, and here’s why”

  1. Constant control of time and effort of your team
  2. Growth opportunities without distracting the home team.
  3. Having an access to a wider knowledge base
  4. Cost-effectiveness
  5. Common contribution to the success and equal responsibilities.
  6. Employee training throughout the enterprise
  7. Reduced staff fluctuations
  8. Increased global market reach
  9. The Time Zone advantage

1. Constant control of time and effort of your team

You have the flexibility where you can apply any time or task-driven mechanism/tool to your extended team. Thereby measuring performance with 100% transparency and synchronization.

2. Growth opportunities without distracting the home team

You might have a successful project that your in-house team is working on and you plan on them continuing to complete it. You can delegate all the new projects to your extended team.

Or you can focus on moving some of the work your home team is doing to the ETM while the home team takes on high-value customer-centric work.

3. Having access to a wider knowledge base

Not being tied down to a single location is a great thing. By using the ETM you can have a team in another location of the world, with a wider knowledge base of technologies, local markets, and other skills that your business can benefit from.

Having different kinds of people working globally, using their knowledge, will lead to creating a startup environment that can take a solution or application on a global market easier than having a centralized local team.

4. Cost-effectiveness

An extended offshore team can save time and money and yet give the expertise that you need to make your application or solution work.

5. Common contribution to the success and equal responsibilities

The extended team is involved in the complete cycle of a job/project, not just an isolated part of it which makes for better transition and continuity.

6. Employee training throughout the enterprise

Your corporate image should reflect through all your products and service. This can only be achieved by extensive and continuous team training throughout the company and your extended team…

7. Reduced staff fluctuations

An extended team is part of a bigger team and employees associate better with their job roles with larger companies which reduces the effect on turnover and dependencies.

By doing so, leads to a steady workflow and becomes resilient to changes in the cooperates which otherwise would be difficult to manage.

8. Increased global market reach

A global team means that you can easily have a presence in more than one market. Of course, in today’s world, you can have global reach just by having a great solution and also great marketing, but having people in different parts of the world, that knows the local market and the local mentality can indeed help you build a market reach faster.

9. The Time Zone advantage

Your business generally requires extended hours of work which can result in overworked and demotivated employees. Moreover, the overlap of work hours with your extended teams is likewise important and the part that does not overlap will work to your advantage when planning your project delivery, especially at peak times.

The use of a global talent pool has gained popularity over the last decade. The Extended Team Model is the next stage of outsourcing. Affiliation of your business rather than a group of contractors. ETM offers more flexibility and a new level of dedication. Your extended team may extend according to the objectives set and the resources you require while maintaining your core values and identity.

Why LinkedIn should be your #1 marketing platform

June 19, 2021

LinkedIn is the #1 platform for Lead Generation according to DemandWave state of B2B Digital Marketing Report in both 2016 & 2017

If LinkedIn was a country, it is only second to China & India. With over 560 million users, it stands 3rd in the list well ahead of the USA.

LinkedIn members come from 200 countries & 18 million companies. So the power of the LinkedIn platform is enormous.

In 2016 Microsoft purchased LinkedIn for 26.2 billion USD in cash. 

Beyond the numbers, let’s look at why LinkedIn should be your main marketing platform!

LinkedIn as a marketing platform

LinkedIn has been traditionally thought of as a platform to maintain a professional profile. Although this is true even today, B2B Digital Marketing Report identifies LinkedIn as the #1 platform for lead generation both in 2016 & 2017.

Let’s look at why LinkedIn has gained its status as the #1 marketing platform.

If you are looking to enhance your marketing and improve lead generation, LinkedIn is THE place to go.

What benefits you get out of LinkedIn as a marketing platform?

The two words answer is “cost-effectiveness”.

It is said that around 10% of the total company budget is going to marketing. This money can go a total waste unless planned correctly. Below are five reasons why you should choose LinkedIn to spent most of your marketing budget.

  1. LinkedIn is a focused platform: You will not somebody’s vacation pictures in LinkedIn. By design LinkedIn downgrades not relevant content. Therefore your marketing messages and content has a comparatively much greater chance of reaching the target audience compared with other digital marketing platforms.
  2. Free marketing: LinkedIn marketing is not depends on paid ads & content. You can do posts, publish articles, make comments, send direct messages, etc. without paying a single cent. These non-paid activities will give you a huge milage in terms of lead generation & brand awareness.
  3. Target marketing: In terms of paid advertisements, LinkedIn has a powerful campaign manager & where you can use it to narrow down your target audience. It provides many parameters to target the exact audience you want compared to traditional marketing.
  4. Complete ecosystem: LinkedIn comes with wide array of tools which can be used to market product or services. For example, you can use company page or showcase pages to provide marketing content to its 563 million users. LinkedIn introduces tools such as LinkedIn formsplugins, etc. to make the lead generation efficient. Further many third party companies have developed tools on top of LinkedIn. Further, LinkedIn creates lot of content by themselves to help businesses to grow. Example is LinkedIn for small businesses.
  5. LinkedIn communities & groups: LinkedIn is having a rich & vibrant communities & groups. You can use these groups to further narrow down your marketing segments and activities to have a better hit. LinkedIn official and unofficial community gatherings provides opportunities for face to face marketing.

Summary

You have a higher chance of connecting to a person whom you don’t know on LinkedIn. The chance of an unknown professional in the USA accepting your connection request is higher in LinkedIn compared to Facebook or any other social marketing platform.

Also the % digital marketing spending will take over the traditional marketing within the next 5 years. companies will invest heavily in digital marketing in the coming years.

If you want to be at the helm of this trend and to get the best value for the money you spent in marketing, you need to make a move to LinkedIn today.

You can download our white paper to understand how you should LinkedIn for your marketing activities. Please fill in the form. At #bistec, we understand this and would love to help you in your journey.

 
Let's talk

We love connecting

We are here to help and support you.

If you believe that we can help you or your businesses requirements - do feel free to drop your details here and don’t hesitate to give us a ring.

Connecting with us on LinkedIn works best.

  • Footer Email