Azure Percept Audio – Custom Keywords and Commands

Azure Percept Audio – Custom Keywords and Commands

This article is contributed. See the original author and article here.

In the latest in my series of blog posts on the Azure Percept Developer Kit and specifically around the Audio System on a Module  (SoM), we look at how we can create and use Custom Keywords and Commands with the Audio SoM.


 


Previously


 


In the previous post – Azure Percept Audio – First Steps We got started with the Azure Percept Audio System on a Module (SoM).


 


We deployed a sample Hospitality application and saw how we could issue commands to the Percept DK, how it would respond, and how the Sample Application would simulate the effects of the commands on screen.


 


Azure-Percept-Screen-Time-0_17_5329-Large-1


 


In this post we’ll take the sample further by training our own Custom keyword and creating a Custom Command.


 


Custom Keywords


 


For the Azure Percept Audio, a Keyword is the word that the Percept DK“listens” for in order to begin listening for commands. Sometimes referred to as a “Wake-Word”, this word defaults to “Computer” in the Hospitality Sample.


 


We have access to some pre-trained keywords deployed along with the sample, allowing us to choose from;


 



  • Assistant

  • Abigail

  • Computer

  • Jayden


Which we can set by pressing the “change” link next to the “Custom Keyword” item below the toolbar area;


 


PerceptImages-CustomKeyword-Cropped


 


Hitting the Custom Keyword Change Link shows us the “Change custom keyword” flyout with the various options available to choose from.


 


image-25


 


Selecting another custom keyword and pressing the “Save” button at the bottom of the dialog will update the Percept DK, and we can then wake the device with the new Keyword.


 


Interestingly, I found that using the alternative keywords of Assistant and Abigail, allowed the Percept DK to wake faster than with the default of “Computer”, I’m not sure why this is to be fair, but it’s possibly due to the number of syllables in the word maybe?


 


Training our own Custom Keywords


 


In case none of the built in Wake Words are suitable, we can also train our own custom keywords to wake the device. We can do this directly from the Sample Application, allowing us to use a word of our own choosing;


 


PerceptImages-CreateCustomKeyword-Cropped


 


Pressing the “Create Custom Keyword” button in the toolbar at the top of the page allows us to configure and train our own custom keyword;


 


image-26


Here we can enter the keyword of our choosing, select an Azure Speech Resource and a Language, and pressing save will begin the training process.


 


image-29


 


Bear in mind however, that the keyword must have between 2 and 40 syllables to be accepted;









Microsoft 365 Certification is here to ease your concerns about data security while using 3P Apps

Microsoft 365 Certification is here to ease your concerns about data security while using 3P Apps

This article is contributed. See the original author and article here.

Picture2.png


 


Microsoft 365 App Compliance Program is designed to provide assurance to organizations and enterprise IT admins like you, that when your data interacts with a certified application, that application has undergone a security and privacy review. Microsoft 365 Certification requires a thorough assessment of an app and its underlying infrastructure against a series of security controls under these security domains:  



  • Application Security  

  • Operational Security 

  • Data Handling Security and Privacy  

  • Optional External Compliance Frameworks Review 


 


When an app undergoes Microsoft 365 Certification, a third-party assessor validates and assesses the app and its supporting infrastructure. An ISV must pass the controls in each of the following security domains to be awarded a certification: 


 


1. Application Security:
The application security domain focuses upon the following three areas:



  • GraphAPI Permission Validation – GraphAPI permission validation is carried out to validate that the app/add-in does not request overly ensures that the permissions requested are required for the functionality of the app.

  • External Connectivity Checks – Analyst will perform a walkthrough of the applications functionality to identify connections outside of Microsoft 365. Any connections which are not identified as being Microsoft or any direct connections to a service will be flagged and discussed during the assessment.

  • Application Security Testing – Application security testing in the form of penetration testing MUST be carried out if the application has any connectivity to any service not published by Microsoft. If the app operates standalone without connectivity to any non-Microsoft service or backend, then penetration testing is not required. 
    Learn More!


2. Operations Security:
This domain measures the alignment of an app’s supporting infrastructure and deployment processes with security best practices. There are various controls assessed in this layer like malware protection, patch management, vulnerability scanning and firewalls, account management and incident management, and change control to name a few.
Learn More!



3. Data Handling and Privacy:
Data in transit between the application user, intermediary services, and ISV’s systems will be required to be protected by encryption through a TLS connection. If an application retrieves and stores customer data, you will be required to implement a data storage encryption scheme that follows the specification as defined Here. This domain also tests controls like data at rest, data retention and disposal, data access management and GDPR.
Learn More!


 


4. Optional External Compliance Review
If external security frameworks have been included within the Publisher Attestation, certification analysts will need to check the validity of those compliance audit reports as part of the Microsoft 365 Certification assessment. These external frameworks can be leveraged in your certification assessment to expedite the process. Evidence for the following supported external compliance audits include:



If you have questions, please reach out to appcert@microsoft.com.


 


See the following resources to learn more about the Microsoft 365 App Compliance Program:


Zero Trust for Network & Infrastructure – Essentials Series – Episode 4

Zero Trust for Network & Infrastructure – Essentials Series – Episode 4

This article is contributed. See the original author and article here.

Apply Zero Trust principles and policies to your network and infrastructure with this essentials episode. It’s a high-level overview of the principles of the Zero Trust security model, spanning identity, endpoints, applications, networks, infrastructure, and data.


 


Screen Shot 2021-07-07 at 12.14.09 PM.png


 


Your network and its underlying configuration provides secure access to your resources. Infrastructure, whether on premises servers, local or cloud hosted VMs, containers, storage, or PaaS databases, all represent a critical threat vector. Jeremy Chapman, Director of Microsoft 365, walks you through how to apply the core Zero Trust tenets of verify explicitly, apply least privileged access, and assume breach for each of these layers, along with your options.


 



 





QUICK LINKS:








Link References:






Unfamiliar with Microsoft Mechanics?




 


Keep getting this insider knowledge, join us on social:










Video Transcript:



























Using Azure Maps to Create Location Based Experiences for Retail

Using Azure Maps to Create Location Based Experiences for Retail

This article is contributed. See the original author and article here.

Due to virus lockdowns, many businesses have had to shift their customer engagement model away from the more traditional Brick & Mortar, in person experiences and either add or expand their online shopping experience to keep their customers.  Azure Maps can help retailers realize these benefits through experiences created using features of Azure Maps such as:


 

















IoTGirl_2-1625450623721.png

Store or Locker Locator


 


Find the closest locked delivery box to avoid box theft from front door delivery and return items to locked box location rather than brick and mortar store. Further Azure Search capability could be used to suggest the locations that have the specific item the customer wants in stock and pre-purchase so it is ready for curb-side pick-up


 


IoTGirl_3-1625450642898.png

Valid Address Entry 


 


Avoid costly returned as undeliverable packages due to poorly completed addresses in web forms.  Accepting only addresses that are populated in a drop down ensures the address is recognized within Azure Maps and is “routable” for delivery option offerings.


 


IoTGirl_4-1625450666906.png

Point of Interest Advertising


 


Want to have your business found organically by folks looking for businesses in Azure Maps, Bing Maps and TomTom?  To ensure your business listing is correct on all Microsoft connected maps we have the following two suggested links:



 



 


In all cases, it is important for retail customers to know where the business is located and that is where Azure Maps pulls it all together.


As part of the Azure IoT Suite of offerings from Microsoft, Azure Maps exists to give you the ability to make your location-based scenarios a reality.  In the case of retail these are pretty well known but there is always room to innovate!


 










For example, World-wide children’s clothes retailer and Azure Maps customer, Okaïdi, has created their own “LocateShop” experience using the store locator functionality offered through the Azure Maps Web SDK. Customers easily find the “Location” option and then can type any city or country worldwide in the edit box to find the closest store or web retail site. They can then get their expectation set for a trip to the physical store to shop and pick up or follow the link to an online shopping experience if there is no retail store in their region.


 


Okaïdi has created a completely blended online and off-line shopping experience for their customers based on where they live and immediately sets the expectation o which shopping experiences they have available to them through their location finder page.


IoTGirl_5-1625451639719.png

 


While this blog focused on how Azure maps can help within your Retail solution, I also wanted to let you know that Microsoft has initiatives to help businesses succeed including:



  • https://startups.microsoft.com/ – You are doing big things. We are here to help! Accelerate growth with a customized set of offerings and resources that evolve with your startup from idea to exit.

  • https://partner.microsoft.com/ – Members of the Microsoft Partner Network have access to resources, programs, tools, and connections. Discover a community designed to help businesses grow.

  • https://www.microsoftiotinsiderlabs.com/ – Accelerate your AI and/or IOT Project with personalized help from our Microsoft technology experts.


 


To Find out more about Azure for Retail and Microsoft for Business check out these information-packed links:



 


Thank you for your interest in Azure Maps. All of the samples above are directly accessible through the links and have Github repositories for you to leverage the sample code within your solutions.  If you need any assistance or have any questions feel free to post them in our Q&A section, we are here to help!

Announcing App Service Environment GA

This article is contributed. See the original author and article here.

We are happy to announce the GA of App Service Environment v3 (ASEv3) along with Isolated V2.  The ASEv3 was developed in response to customer feedback and has many improvements over the earlier versions while still providing an isolated single tenant web application hosting platform. As part of the Azure App Service, the ASEv3 provides a PaaS experience to host your Windows or Linux applications. You can deploy Windows or Linux applications as code and Microsoft will manage the OS your applications run in. If you want greater control over your app, you have the ability to host Linux containers as well.


 


Just like with earlier versions, the ASEv3 deploys into a subnet in one of your Azure Virtual Networks (VNets). You can choose to deploy the ASE with an internal VIP in your VNet or with an external VIP that faces the internet. Apps that are deployed into an ASEv3 can access resources within the same VNet without any additional configuration. The inbound and outbound traffic to your apps can be controlled completely with Network Security Groups (NSGs) or any supported type of routes.


 


Pricing


Applications are hosted in App Service plans which are created in an App Service Environment. The App Service plan is essentially a provisioning profile for an application host. As you scale your App Service plan out, you create more application hosts with all of the apps in that App Service plan on each host. Pricing for ASEv3 is centered on the App Service plan Isolated v2 pricing with some variation based on deployment type. This is an improvement over the App Service Environment v2, which carried a stamp fee in addition to the App Service plan rate. While there is no stamp fee, there is a minimum charge for your ASEv3 based on the deployment type. These are minimum charges though and are not additive. Beyond selecting if you want an internal or external VIP, an ASEv3 can be deployed in one of three ways:



  • Default ASEv3: If ASE is empty there is a charge as if you had one ASP with one instance of Windows I1v2. This is not an additive charge but only applies if the ASEv3 is totally empty. If the ASEv3 has one or more instances, you just pay for your Isolated v2 App Service plans.

  • Availability Zone ASEv3: An AZ ASEv3 requires a minimum 9 Windows I1v2 instance charge. This is not an added charge but only applies if you have fewer than 9 total App Service plan instances. All App Service plans in an AZ ASEv3 have a minimum instance count of three. This ensures that customer workloads are zone redundant and are spread across each availability zone.

  • Dedicated host ASEv3:  With the dedicated host option, you pay for two dedicated hosts with a small percentage of the Isolated V2 per core charge as you scale. The dedicated host deployment does not support availability zone based deployments.


The App Service plan size options in ASEv3 are: 2 core 8 GB RAM, 4 core 16 GB RAM, 8 core 32 GB RAM. The larger sizes handle larger applications but also allows for holding more apps within a single App Service plan. Availability zone support is only available in select regions where all of the App Service dependencies are deployed zone redundant. Reserved instance pricing is available for Isolated v2 App Service plans. With reserved instance pricing you have 1 year and 3 year options that substantially reduce costs.


 


Networking differences between multi-tenant and ASEv3


In the multi-tenant App Service, there are a number of networking features that enable apps to be exposed on a private address or access resources within a VNet. Those features need to be enabled on at an app by app basis. If you want to enforce network access control on your app, then you need to configure that on each app that this is desired upon. In ASEv3 you do not need to enable anything on your apps for them to be in your VNet. All apps that are in Isolated v2 plans are already in your VNet. 


 


With ASEv3 you can enforce your network access external to the application. Unlike the earlier versions of the App Service Environment (ASE), with ASEv3 there are no networking dependencies in your VNet. While it was possible to control application traffic with earlier versions of the ASE, you always needed to allow for the dependency traffic. With ASEv3 you can completely control your VNet making it far easier to manage.


 


If you have used earlier versions of the ASE, you will find that scaling is improved. While it isn’t as fast as in the multi-tenant service, it is substantially faster than earlier versions. Scaling now will only block other scale operations of the same OS and App Service plan size combination. You can simultaneously scale a Windows small I1v2 and a Linux medium I1v2 for example. There is also no need to manage the front end scaling as with earlier ASE versions. In ASEv3, the front ends that handle inbound HTTP/HTTPS are automatically scaled without any customer adjustment required.


 


The ASEv3 is available in most commercial regions now and will soon be in all commercial regions. To learn more about the App Service Environment v3, read: