
Customizing Microsoft Teams
By :

Before moving on to learning more about custom apps in Microsoft Teams, it is good to have some understanding of the following technologies:
These concepts will be used in most of the apps that you are going to build and host in Teams. Let us have a look at each of them in brief.
Azure is the core platform that Microsoft Teams is built and hosted on; it takes advantage of core Azure features such as scaling, global footprint, redundancy, and disaster recovery. In this book, we are focusing on apps in Microsoft Teams and these apps can also use Azure services. We will briefly discuss a few of those Azure services, although it would be good for you to explore more about these services as a self-study.
Azure App Service enables you to quickly build and host web apps, mobile backends, and RESTful APIs in the programming language of your choice without worrying about infrastructure. This platform as a service (PaaS) is offered by Azure so that you can focus on developing your application while the platform takes care of infrastructure needs and scaling based on your business requirements. Speaking of scaling, you can scale your app up or down by adding or removing resources based on demand, which helps control infrastructure costs. Scale-out is another option, increasing the machine instances that your app running on.
QnA Maker is a cloud-based service that allows you to create a natural conversational layer over your data. QnA Maker lets you import a knowledge base (KB) of question and answer pairs from any FAQs, support websites, manuals, or documents. It also answers questions with the best answers from the QnA in your KB automatically.
Conversational applications are the most common scenario in which to use QnA Maker. A common scenario would be to create a FAQ bot with no code:
Azure Blob Storage is an optimized solution for storing massive amounts of unstructured data that doesn’t adhere to a particular data model or definition, such as text or binary data. This helps you create data lakes for your analytics needs and provides storage to build powerful cloud-native and mobile apps.
Blob Storage is designed for the following:
These are the resources that Blob storage offers:
You can see the relationship between various resources in the following screenshot:
Figure 1.11 – Representation of the relationship between blob storage resources
Azure Storage supports three types of blobs:
Azure Functions is a serverless event-driven solution that extends Azure App Service on less infrastructure, thereby saving a lot of costs. As a developer, you focus on code and the rest will be handled by Azure Functions.
The following are a few common scenarios for using Azure Functions:
You can write functions in C#, Java, JavaScript, PowerShell, or Python.
Cognitive Services is a collection of intelligent APIs that you can embed into your app, as these REST APIs are very easy to implement. These services can span Vision, Speech, Language, Knowledge, and Web search. There are a variety of domains that give apps a human side, including Speech, Decision, Language, and Vision. Speech-to-text is one feature of the Speech service.
The following figure shows domain-specific pre-trained models:
Figure 1.12 – Screenshot of domain-specific pre-trained models
Microsoft 365 is he platform with the most compliant cloud-based subscription service and brings the best tools together with security and compliance.
SharePoint is the technology part of Microsoft 365 that underpins Teams. So, every Microsoft Team instance has a SharePoint site underneath, as well as an Office 365 group.
Office 365 is a service that connects a variety of collaboration tools across Office 365. You can create an Office 365 Group from a SharePoint page or a SharePoint administrator can create one from SharePoint Online Administration.
You can go to the SharePoint start page by clicking on the app launcher and selecting the SharePoint tile or by clicking on SharePoint in the global navigation bar from any site in SharePoint.
Figure 1.13 – SharePoint start page | + Create site
The preceding screen shows you the + Create site option on the SharePoint start page; the following screen shows the option to create a site in the SharePoint admin center window:
Figure 1.14 – SharePoint admin center | + Create | Team site
Power Platform is a low-code or no-code platform that lets you build end-to-end solutions with custom apps using Power Apps, automation processes using Power Automate, and intelligent bots using Power Virtual Agents (PVA), as well as analyze data with Power BI.
This diagram represents all the services from Power Platform in a row:
Figure 1.15 – Power Platform services
Power BI provides insights into the value of your data; it can visualize most of your organization’s data on the platform. With the Power BI tab, you can embed interactive reports into Microsoft Teams channels and chats.
Microsoft Power Apps is a SaaS for creating and using custom business apps across different mobile and web platforms. Through this, you can connect to various enterprise systems and data sources that may be used in your organization, such as SAP ERP and Oracle.
Power Apps enables you to build applications with no code or very little code. It will help businesses write their application with minimal help and support from IT organizations.
These apps can be shared with co-workers and even with guests across the web, tablets, and mobile devices.
To view the existing Power Apps or to create new ones, go to https://web.powerapps.com. From there, you can click Apps on the left-hand side to view existing apps and + New app to create a new Power App.
Figure 1.16 – Power Apps with options for creating a new app
There are three types of Power Apps you can create as shown in the preceding figure:
Power Automate helps businesses work smarter by automating workflows with personal productivity and various business apps and services across your organization. In addition, you can also integrate a Power App with Power Automate.
To view the existing Power Automate functionality or to add to it, go to https://flow.microsoft.com.
Figure 1.17 – Power Automate with the option to create new flows
Always have one to start Power Automate. You can have the following type of triggers to start Power Automate
You can have as many actions as you like after the trigger condition is successfully met.
The following figure is a sample Power Automate action with a trigger when a new item is created in SharePoint:
Figure 1.18 – Sample Power Automate
With PVA, you can engage with your customers and employees conversationally. It resolves routine issues easily, freeing up staff to focus on complex matters.
PVA enables you to empower your subject matter experts to easily create powerful bots using a guided, no-code graphical interface – no need for developers or data scientists.
We will discuss more of these technologies in Chapter 7, Microsoft Dataverse for Teams.
To work on PVA or add to it, go to https://powerva.microsoft.com/.
Figure 1.19 – PVA
Change the font size
Change margin width
Change background colour