Digital Workplace Solutions Archives | DMC, Inc. https://www.dmcinfo.com/blog/category/digital-workplace-solutions/ Tue, 23 Dec 2025 14:48:52 +0000 en-US hourly 1 https://wordpress.org/?v=6.8.3 https://cdn.dmcinfo.com/wp-content/uploads/2025/04/17193803/site-icon-150x150.png Digital Workplace Solutions Archives | DMC, Inc. https://www.dmcinfo.com/blog/category/digital-workplace-solutions/ 32 32 A Complete Guide to Planning Your IIoT Solution https://www.dmcinfo.com/blog/20635/a-complete-guide-to-planning-your-iiot-solution/ Fri, 26 Sep 2025 16:00:00 +0000 https://www.dmcinfo.com/?p=20635 IoT or Internet of Things is a “system of interrelated computing devices, mechanical and digital machines, objects, animals, or people provided with unique identifiers and the ability to transfer data over a network without requiring human-to-human or human-to-computer interaction.” The Internet of Things continues to develop as technology advances, and the need to interact with […]

The post A Complete Guide to Planning Your IIoT Solution appeared first on DMC, Inc..

]]>
IoT or Internet of Things is a “system of interrelated computing devices, mechanical and digital machines, objects, animals, or people provided with unique identifiers and the ability to transfer data over a network without requiring human-to-human or human-to-computer interaction.” The Internet of Things continues to develop as technology advances, and the need to interact with devices in a new way continues to develop.

Out of IoT, IIoT, or the Industrial Internet of Things, is emerging as a common and necessary term. This guide provides insight into IIoT and into DMC’s process for completing successful IIoT projects.


Table of Contents


IIoT Overview

Much like IoT, IIoT uses sensors and other technology but in an industrial setting to leverage real-time data to monitor and control devices in the field and communicate and display that data in a way that allows for better decision making in industrial processes.


Our Five-Step Process

DMC has completed hundreds of projects incorporating a wide range of solutions. Through experience, our engineers have developed a process for implementing IIoT solutions. We begin by starting at the lowest level and then fill in the gaps, going up the stack.

DMC IIoT Five Step Process

Step One: Field Device Platform Selection

Getting reliable, accurate data from the physical system is the primary challenge for any system design and the most important decision you can make. Once you secure the data, you can do anything you want with it. Answer the following questions to select hardware used in the field:

  • What are you trying to measure or control?
  • What does the device in the field need to be able to do on its own? How complex?
  • How many devices do you anticipate on deploying?
  • Are you the end-user and maintainer of this equipment, or are you selling a solution (operated and maintained by others)?
  • What does new device provisioning look like? (the ideal process)
  • How will this device be powered?
Step One

Keep in mind, the software platform is determined by hardware selection. For example, when you pick a particular PLC, you have to use the manufacturer’s software to program it. For an embedded device this will be C++, etc.

Device Hardware: Selecting the Right Parts

Let’s say the average PLC costs $1,000, so every time you put one out in the field, that is another $1,000 of hard costs. PLCs are great for some things while NI has developed expert tech for other uses. DMC engineers can leverage experience from hundreds of completed projects to advise on making the best choice for each project.

0-10 Devices – Small Deployments

10-100 Devices – Larger Deployment, off the shelf products, but start to have cost-optimized decisions

100-1000+ Devices – Discuss an embedded solution because the hardware starts to get expensive

Step Two: Determine Communications

After determining your device platform, deciding how your networking devices are configured is key. Consistent communication between devices is essential. DMC’s engineers help scope what needs to be done. Consider the following:

  • How are you going to communicate with devices?
  • Where is the internet coming from?
    • Cellular, Wi-Fi, from the plant?
  • What happens when the internet is not available?
    • Local caching, buffer and retry, operational impacts
  • What are the protocol security requirements?
    • Encryptions, certificates, secure comm management

Step Three: Determine Cloud Platform

There are a lot of cloud platforms to choose from when you reach this phase of the process. Ask yourself, what out of the box services (provided by these hosting entities) will your application need/or take advantage of? Some cloud platforms include Azure, AWS, and Google.

This phase is when we need to assess how to save on custom development, and where it’s possible to use solid foundational pieces already developed for these types of applications. Ask yourself:

  • Do you need a website?
  • Do you need database(s)?
  • Do you need user management?
  • Do you need integrations to other cloud services?
  • Do you need SMS, e-Mail, or other mass notification capabilities?
  • Do you need an AI engine or advanced analytics support?
  • Do you need a flexible reporting framework (points to things like PowerBI)?
  • What type of data store is needed?
    • How much data?
    • How often will it be sampled?
    • How will the data be used?
  • Where and how will security be enforced for cloud resources?
  • How many monthly active users do you anticipate on this cloud application?
  • What in house cloud/web development resources do you have?
    • What are they comfortable with and willing to maintain?

Step Four: Web Application Development

DMC’s full-stack development team builds custom web applications with intuitive interfaces designed for usability and stable back ends designed for scalability. 

Consider the following during this step:

  • Define the UI/UX experience
  • How are you going to onboard new users?
  • How are you going to onboard new devices?
  • How are you going to manage devices?
  • How are users going to view data?
  • What access restrictions should apply? (user levels)
  • What types of notification and alerts are required?
  • When should devices be alerted to changes?
  • What visualizations for data or information are required?
  • What type of reporting is required? How are users notified of reports?
  • Is a native Mobile App also required?
  • Is a generic API (accessible by third parties) required?
  • Define support plan for end-users of the application

Step Five: Go Live and Maintenance

  • Are you using continuous Integration tools in Development, Staging, and Production environments?
  • Do you have planned downtime for production-level updates?
  • Are database migrations required? Data integrity checks?
  • Deploy and active service health monitors?
  • Are support and service avenues (emails/phone) active and being monitored?

Industry Credentials

DMC holds several key industry credentials with leading technology providers.

Our Work

Ready to take your Automation project to the next level? Contact us today to learn more about our solutions and how we can help you achieve your goals. 

The post A Complete Guide to Planning Your IIoT Solution appeared first on DMC, Inc..

]]>
Updating Microsoft Defender for IoT https://www.dmcinfo.com/blog/15825/updating-microsoft-defender-for-iot/ Tue, 26 Nov 2024 17:01:50 +0000 https://www.dmcinfo.com/blog/15825/updating-microsoft-defender-for-iot/ Microsoft Defender for IoT is a powerful security tool that can help to protect your IoT/OT environment. Almost every new update improves the detection, brings new features to help protect your systems and fixing issues in previous releases, you need to keep your sensors up to date. Since there are multiple deployment options, including cloud, […]

The post Updating Microsoft Defender for IoT appeared first on DMC, Inc..

]]>
Microsoft Defender for IoT is a powerful security tool that can help to protect your IoT/OT environment. Almost every new update improves the detection, brings new features to help protect your systems and fixing issues in previous releases, you need to keep your sensors up to date. Since there are multiple deployment options, including cloud, on-premises, or hybrid networks, your update options might also be different. 

How to Update Defender for IoT

1. Navigate to portal.azure.com and search for Microsoft Defender for IoT. 

Microsoft Defender for IoT welcome screen

2. Navigate to “Sites and Sensors.” 

3. In the “Site and Sensors” list, choose the sensor you want to update. 

Microsoft Defender for IoT sites and sensors list

4. You’ll have two options: “Remote update” (push an online upgrade) or “Download upgrade files” (manually upgrade from the local network). 

Microsoft Defender for IoT upgrade options

5. In our example we will update locally to 22.3.10 and push an online update to 24.1.3 after. 

6.1.1. If you select “Download upgrade files,” you need to choose your sensor version (in our case it’s 22.3.9) and if you have a local manager. 

Microsoft Defender for IoT download upgrade

6.1.2. From the “Available versions” list you need to choose what version you want to update. If you need to update to an older version, choose “Show more.” 

Microsoft Defender for IoT versions

6.1.3. Navigate to your Defender for IoT internal IP address and login with CyberX credentials.

Microsoft Defender for Iot sensor sign in
Microsoft Defender for IoT dashboard

6.1.4. Navigate to system settings, software update, upload file. Choose the upgrade file you previously downloaded and click open. When it finishes uploading it will display “Status: Updated successfully (Agent will reboot in 30 seconds)." Note: it took ~5 minutes.

6.1.5. When it’s done, you can see that the version of the system changed.

Microsoft Defender for IoT new version
Microsoft Defender for IoT system settings
Microsoft Defender for IoT downloads
Microsoft Defender for IoT software update

6.2.1. Choose “Step one: Send package to sensor.” 

Microsoft Defender for IoT send package

6.2.2. Choose the version you want to install (the latest available version will display). If you need an older version, click on “Show more” and choose the version you prefer to install. Then, click on “Send package.”

Microsoft Defender for IoT install version

6.2.3 You should see the status under “Sensor version” tab.

Microsoft defender for iot sensor version

6.2.4. When it’s done, the status will change to “Ready to update."

microsoft defender for iot ready to update

6.2.5. Navigate to the “Remote update” and choose “Step two: Update sensor” and click “Update now”, “Confirm update.”

microsoft defender for iot confirm update
microsoft defender for iot confirm update

6.2.6. The “Sensor version" will change to “Installing."

microsoft defender for iot installing

Learn more about DMC's IoT expertise and contact us for your next project. 

The post Updating Microsoft Defender for IoT appeared first on DMC, Inc..

]]>
Copying and Populating Word Documents in SharePoint Online Using Power Automate https://www.dmcinfo.com/blog/15946/copying-and-populating-word-documents-in-sharepoint-online-using-power-automate/ Thu, 10 Oct 2024 11:24:49 +0000 https://www.dmcinfo.com/blog/15946/copying-and-populating-word-documents-in-sharepoint-online-using-power-automate/ Does your team spend too much time creating Word documents from templates and monotonously changing only a small set of specific details in its content? Tasks like these are common for businesses that author reports or proposals as deliverables to clients, but few take the time to automate this data entry process. With SharePoint Online […]

The post Copying and Populating Word Documents in SharePoint Online Using Power Automate appeared first on DMC, Inc..

]]>
Does your team spend too much time creating Word documents from templates and monotonously changing only a small set of specific details in its content? Tasks like these are common for businesses that author reports or proposals as deliverables to clients, but few take the time to automate this data entry process. With SharePoint Online and Power Automate, you can inject content from any data source directly into a template Word file and avoid this work altogether!

Requirements

Power Automate

We will use Power Automate, Microsoft's cloud-based business automation platform, to automate this process. In Power Automate, a single executable task is called a flow. Each component of a flow is called an action.

To copy and populate Word documents in Power Automate, we must use an action from the Word Online connector which requires a Power Automate Premium account.

SharePoint Online

For the flow we will write, we need a cloud-based location to source the Word document template and a destination to send the populated template copy. If your organization uses SharePoint Online, there are actions we can add that retrieve and save files in SharePoint out of the box!

Word

The document templates are created in Word and saved as a .docx file.

Implementation

Part 1: Creating Your Word Template

Let us start off with an example document template that has some placeholder fields.

A white screen with black textDescription automatically generated

To denote the {insert} placeholder values as fields that we want to be able to overwrite with our flow, mark each of them as a "Plain Text Control" which you can do on the "Developer" tab in the Word editor.

A screenshot of a computerDescription automatically generated

We can then configure the control by selecting it on the page (it should show up as a gray box outline around the placeholder text) and select the "Control Properties" widget next to the plain text control button.

A screenshot of a computerDescription automatically generated

This will open the following dialog. You can name the control anything, but make sure it is descriptive if you are adding multiple controls to your template so there is no confusion when connecting data sources to the controls in Power Automate.

A screenshot of a computerDescription automatically generated

At this point, the file is ready for use as a template. Let us save it to a location in SharePoint Online so that our Power Automate flow can make copies of it. If the account creating the flow is different from the account which uploads the document, make sure that it is saved to a location that the former can also access.

Part 2: Creating the Flow in Power Automate

To create the template population flow, go to the Power Automate console in your browser and click "Create." The type of flow you create depends on what will trigger it. There are three cloud-native flow types available:

  1. Automated Cloud flow – a flow that is triggered through a designated event.
  2. Instant Cloud flow – a flow that is triggered manually through the Power Automate console or through an external command like an HTTP request.
  3. Scheduled flow – a flow that is triggered automatically on a set schedule.

Your situation may differ, but as an example, we will create a flow that is manually triggered via an HTTP request that contains all the data populated to the template.

A screenshot of a computerDescription automatically generated

Once we've created the flow, we need to source the content that will populate our template. Since our content passes into the flow with the HTTP request trigger, we will update the output schema of the trigger so we have references to the values we want to pull from the request body. Again, this will differ based on the type of trigger/data source for your flow. Here is an example of what this looks like with our example HTTP trigger, where we define the input schema and specify that the request includes the "projectName" value.

A screenshot of a computerDescription automatically generated

Next, we will add the "Populate a Microsoft Word Template" action. When we select the template file, we can see the control fields that can be populated in our flow in the "Advanced Parameters" section, identified by the names we specified in the template document. We will specify the values that should be inserted to each field.

A screenshot of a computerDescription automatically generated

The output of the Word connector is an unsaved copy of our populated template file, which we will then pipe to the "Create File" action that saves the file in a specified location in SharePoint.

A screenshot of a computerDescription automatically generated

Once you specify the location to save the file, the flow is complete. Go ahead and save the flow and test it out.

Further Considerations

As stated before, access to template documents is not guaranteed when you create the flow, based on the SharePoint sites your account has access to. It may be worth setting up flows with an admin account in your organization to ensure they will not break if permissions for certain users are modified. Additionally, updating the template file may cause issues, as references to the control fields in your flow may break when the source template document is updated in the future. If your flow is mission-critical, make sure there is a well-defined system for modifying your template files to avoid any unexpected failures.

Power Automate is incredibly useful for automating workflows like these Word templates we have populated. Additionally, you can easily extend a flow like this with conditional logic or other downstream actions for SharePoint/other integrated services, all in one portal. DMC has extensive experience with Power Automate and many other digital workplace technologies. To see how your business processes can be optimized, give us a call!

Learn more about DMC’s SharePoint expertise and contact us today for your next project.

The post Copying and Populating Word Documents in SharePoint Online Using Power Automate appeared first on DMC, Inc..

]]>
SharePoint Online: Programmatically Syncing Templates Across All Site Collections https://www.dmcinfo.com/blog/15989/sharepoint-online-programmatically-syncing-templates-across-all-site-collections/ Tue, 17 Sep 2024 08:25:53 +0000 https://www.dmcinfo.com/blog/15989/sharepoint-online-programmatically-syncing-templates-across-all-site-collections/ Managing content types across an organization is important. Businesses and organizations need to be able to standardize templates in SharePoint. Doing this programmatically is a little bit of a puzzle, and it takes a few steps. For starters, we will be working with a few packages: Microsoft.SharePoint.Online.CSOM and Microsoft.Graph, and PnP.Framework Step 1: Define Your […]

The post SharePoint Online: Programmatically Syncing Templates Across All Site Collections appeared first on DMC, Inc..

]]>
Managing content types across an organization is important. Businesses and organizations need to be able to standardize templates in SharePoint. Doing this programmatically is a little bit of a puzzle, and it takes a few steps. For starters, we will be working with a few packages: Microsoft.SharePoint.Online.CSOM and Microsoft.Graph, and PnP.Framework

Step 1: Define Your Tenant-wide Content Type 

It’s best to do this step through the portal. In the admin-portal, navigate to manage content types, and add a content type. When you publish, go ahead and add the desired content type. You can upload this content type as a file, or it can be a relative site URL to a file that lives in a different site collection.

Note: Using the relative site URL to your content type template may or may not work. This is a documented issue with Microsoft and has required us to contact Microsoft support to fix this. Yet, using a relative site URL is the ideal method as it allows you to keep the document template updated whenever a change is made to the template online. Otherwise, any changes you made to the document template you have uploaded will have to be saved and re-uploaded.

Adding a content type to SharePoint Online

Step 2: Publish the Defined Content Type

In the same admin portal, you can publish the defined content type, which adds the content type to all the site collection across your tenant. You need to repeat this step when you make an update to the content type template. Since you are publishing the content type template, any changes you make to the template will only take effect if you re-publish those changes again. 

SharePoint Online publish content type

Step 3: Sync the Content Type

Through the UI, you can add these content types to whichever library you choose. Go to the library you wish to modify, select Library Settings, and add an existing content type from the site. I recommend doing this manually if you only need to use the document template through one or two site collections. Adding a content type from the existing site through the UI syncs the content type automatically on the backend.

In our case, we had to figure out how to sync these content types programmatically and add them to several libraries. To do so, we used the Microsoft.Graph package allowing us to sync content types down to a site collection. We had to sync the desired content types for each site collection. Then, could we programmatically access them across the site collection’s libraries. 

Here is an example of how to use the Microsoft.Graph package to sync down content types:

SharePoint Online sync content type

Step 4: Add Content Type to Desired List/Content Types

Once you have synced down the content types to the site collection, you are able to use it however you please across the different libraries in the site collection. Here is a code example of adding a content type to a site collection:

SharePoint Online add content type to site collection

Putting this all together, we are now able to successfully sync down any custom content types to any site collection and add the desired content types into whichever library requires the content type.

A common use case for this method is iterating through a number of site collections. Using these functions may help you with each site collection. Below is a use case of how I would sync down the desired content sites programmatically for a site collection.

SharePoint Online sync content sites

While there are a few steps involved, programmatically syncing your content types across all site collections can help your organization standardize templates in SharePoint Online. 

Learn more about DMC’s SharePoint expertise and contact us today for your next project.

The post SharePoint Online: Programmatically Syncing Templates Across All Site Collections appeared first on DMC, Inc..

]]>
Pros and Cons of Using the Share Button in SharePoint https://www.dmcinfo.com/blog/16072/pros-and-cons-of-using-the-share-button-in-sharepoint/ Tue, 13 Aug 2024 14:51:49 +0000 https://www.dmcinfo.com/blog/16072/pros-and-cons-of-using-the-share-button-in-sharepoint/ Storing files in the cloud and sharing them has never been easier thanks to tools like Microsoft OneDrive and SharePoint Online. OneDrive cloud storage allows you to control permissions on your files, collaborate with others on them at the same time, and share them in a variety of ways. One popular way to share files […]

The post Pros and Cons of Using the Share Button in SharePoint appeared first on DMC, Inc..

]]>
Storing files in the cloud and sharing them has never been easier thanks to tools like Microsoft OneDrive and SharePoint Online. OneDrive cloud storage allows you to control permissions on your files, collaborate with others on them at the same time, and share them in a variety of ways. One popular way to share files in the cloud is using the share button. While the share button is easy to use, I considered its pros and cons and offer some best practices for sharing files.  

Pros: The Share Button is Convenient 

If you’ve used SharePoint Online or OneDrive, you’ll recognize the share button located in the navigation ribbon above your document library. This button appears as a default unless you turn it off on a tenant level. 

Share Button Navigation in SharePoint Online
When you click the share button, it prompts you to type the name, group, or email of the party you would like to send the document to. It also offers a field to send a message along with the file. An automated email containing the file and any message you included will arrive in the recipient’s inbox. Users appreciate how easy it is for any employee to share content with other people inside or outside of their organization using the share button.   

Share button window in SharePoint Online

Cons: The Share Button Can Cause Permissions Issues 

While Microsoft’s share button is convenient for users, it can cause some unanticipated issues on the backend. When people use the share button, it creates a unique set of permissions for that one file or location. Then, permissions are managed at the level of the individual name of the user who received it rather than at a companywide level. 

This can become an issue when a change happens. Instead of managing permissions in Active Directory by team, you may have to edit permissions for every user who received the file via share button. This can cause headaches for IT and cost extra time for maintenance.  

For example, if someone shares the OneNote file for Project Awesome with Jane, Jamal, and Jennifer using the share button then permissions are created at each of their individual name levels. If this option is continuously used, the organization could have a permissions web on their hands. Instead, users should share the file with the Project Awesome Team and that team should be defined as containing Jane, Jamal, and Jennifer. In this instance, future changes can be addressed at the Project Awesome Team level rather than every individual member. When you’re making sitewide changes this time savings can add up.  

Sharing a document with individuals in SharePoint Online
 
The best way to share a document in SharePoint Online

Sharing documents at a team level (right) is preferred over sharing documents at an individual level (left.

Best Practices for Sharing Files 

The best practice for sharing files within your organization is to consider a companywide strategy. In general, permissions should be handled at the organizational level and not be managed by individuals.  

There is a configuration setting at the site collection level that allows you to only share with people who already have permissions. This will allow users to send an email sharing the document and it does not alter the permissions. As part of your organizational strategy, consider choosing this option by default and being cautious about where to leave the share button feature on. 

The share button can be useful if you need the ability to share documents with users outside of your organization. However, it should be used judiciously. DMC can help you set this up. 

Use the Copy Link Option to Share Files 

Fortunately, Microsoft offers more than one way to share files. Rather than use the share button, users can copy a link to the file and share it with others.  

Select your file and click the three dots or overflow menu to the right of the file name. A navigation window will appear.

Copy Link Sharing Window in SharePoint Online
 

After you click “copy link,” you can paste the link into an email or chat window. This method has the added benefit of being able to customize your message to the recipient when including the document link, rather than generating an automated email.  

Link copied window in SharePoint online

If you need to further customize the permissions, click “Settings” on the “Link copied” window. This will display additional options for sharing the document link if they are available per your organization’s link-sharing strategy.  

Link settings window in SharePoint Online

While Microsoft makes it easy to share documents between users, the method that users choose may have unintended consequences for permissions at the user level. Considering a companywide strategy for document management permissions and communicating best practices to your users can save your IT team time and keep your organization productive.  

Learn more about our Digital Workplace Solutions and contact DMC today for help implementing cloud storage solutions. 

The post Pros and Cons of Using the Share Button in SharePoint appeared first on DMC, Inc..

]]>
The Pros of Windows Hello for Hybrid Azure Active Directory Domains https://www.dmcinfo.com/blog/16354/the-pros-of-windows-hello-for-hybrid-azure-active-directory-domains/ Wed, 01 May 2024 14:53:18 +0000 https://www.dmcinfo.com/blog/16354/the-pros-of-windows-hello-for-hybrid-azure-active-directory-domains/ Windows Hello enables users to log in to their Windows devices with biometrics or a pin. These methods are accepted for Microsoft logins as well. Logging in with face recognition, fingerprint, or pin allows for a more seamless authentication experience. In environments that restrict local admin access, Windows Hello can be used on User Account […]

The post The Pros of Windows Hello for Hybrid Azure Active Directory Domains appeared first on DMC, Inc..

]]>
Windows Hello enables users to log in to their Windows devices with biometrics or a pin. These methods are accepted for Microsoft logins as well. Logging in with face recognition, fingerprint, or pin allows for a more seamless authentication experience.

Windows Devices Log In Methods

In environments that restrict local admin access, Windows Hello can be used on User Account Control (UAC) prompts when users are temporarily granted admin rights. This reduces the burden of keying in passwords multiple times when launching programs as an administrator.

User Account Control

Optionally, the password method of logging in can be hidden to promote a ‘Passwordless Experience’ with password authentication only appearing when setting up Windows Hello. Overall, this leads to a more streamlined authentication experience, enabling access with the touch of a finger; however, it is important to select the correct Windows Hello deployment model to ensure that it works correctly on and off the corporate network.

If Windows Hello is not integrated with Active Directory correctly, users on the corporate network will experience issues when using pin, fingerprint, or face recognition.

Windows Couldn't Sign You In

The next section covers guidance for deploying Windows Hello to different environments.

Azure AD Only Environments

If your Domain is hosted in Azure AD only (no On-Premises/on-premActive Directory), then Windows Hello will work right out of the box with no need to link with an on-premises environment. Microsoft Intune can be used to manage Hello Policy, such as pin complexity, allowed authentication options, etc.

Azure AD Hybrid Environments

If you have an on-prem AD that synchronizes to Azure AD, you will want to configure Windows Hello to utilize one of the following trust types:

  • Key Trust
  • Certificate Trust
  • Cloud Kerberos Trust

Certificate & Key Trust

Both Certificate and Key Trust require an on-prem PKI to function. If your domain does not have this, you can defer to the ‘Cloud Kerberos Trust’ Section. If your domain is federated, you will utilize the Certificate Trust model. If it is not federated, then use the Key Trust deployment plan.

See the resources below for each deployment type:

Cloud Kerberos Trust

If you do not have or do not wish to utilize an on-prem PKI, you can instead opt to use Azure AD Kerberos and create an Active Directory server object that handles Azure Kerberos Ticket-Granting-Ticket requests.

All four deployment models are specific implementations of Windows Hello. Which trust type you choose comes down to compatibility and preference. For example, we do have a PKI in our environment, and we could utilize the certificate-based trust types — yet we opt to use the Cloud Kerberos Trust Deployment for simplicity, as integrating it with Kerberos proved simpler. Choose the correct deployment plan for your environment and follow the documentation carefully to ensure the best user experience.

Solving Deployment Issues

Sometimes the deployment is bumpy, it is important to recognize known deployment issues quickly, and establish where the issue is from: client configuration, domain configuration, or issues with Kerberos or PKI.

Sometimes the cause of errors is not so obvious, so do not forget to check event viewer when troubleshooting as well: ‘Application logs and Services > Microsoft > Windows> Hello For Business’

Hello for Business

If your organization uses Azure AD exclusively, implementing Windows Hello is a no brainer, and it works right out of the box. Most organizations, however, utilize a hybrid domain. Using Windows Hello without tailoring it to your environment can rob users of a consistent passwordless experience. Windows Hello requires a bit more planning and effort to deploy in hybrid environments, but, with a little bit of planning, users can enjoy a consistent passwordless experience.

DMC is a Microsoft Solution Partner. Learn more about DMC’s Enterprise Mobility + Security (EMS) expertise and contact us today for your next project.

 

The post The Pros of Windows Hello for Hybrid Azure Active Directory Domains appeared first on DMC, Inc..

]]>
Enhancing Customer Service with AI: Introducing Sales Buddy at DMC  https://www.dmcinfo.com/blog/16360/enhancing-customer-service-with-ai-introducing-sales-buddy-at-dmc/ Tue, 30 Apr 2024 12:16:14 +0000 https://www.dmcinfo.com/blog/16360/enhancing-customer-service-with-ai-introducing-sales-buddy-at-dmc/ DMC recently identified a critical need to enhance the speed and accuracy with which we handle incoming customer inquiries. Historically, our dedicated team of Project Coordinators managed this process. They played a crucial role in filtering and routing inquiries from potential customers who reached out through our website's contact page. This manual process, while effective, […]

The post Enhancing Customer Service with AI: Introducing Sales Buddy at DMC  appeared first on DMC, Inc..

]]>
DMC recently identified a critical need to enhance the speed and accuracy with which we handle incoming customer inquiries. Historically, our dedicated team of Project Coordinators managed this process. They played a crucial role in filtering and routing inquiries from potential customers who reached out through our website's contact page. This manual process, while effective, posed challenges in scalability and speed as DMC continued to grow.

The Need for Innovation

Our goal has always been to respond to potential clients swiftly, as we believe promptness is key to building trust and demonstrating our dedication to potential customers; however, the manual process required Project Coordinators to:

  1. Continually monitor a shared Outlook inbox for new leads.
  2. Pre-qualify each inquiry to filter out spam and identify legitimate leads.
  3. Determine the most appropriate service area within DMC for the lead.
  4. Assign the lead to the most appropriate engineer and ensure a timely response.
  5. Create a new lead in our Customer Relationship Management (CRM) system.

To streamline these steps and enhance our responsiveness, we introduced Sales Buddy.

How Sales Buddy Works

sales buddy's incoming lead notification in Slack.

Sales Buddy is an AI-powered Slack Bot that automates the initial stages of our customer inquiry handling process. It integrates cutting-edge technology using Azure OpenAI models, Slack's Webhook API, and Microsoft Power Automate. Here’s how it functions:

  • Monitoring and Qualification: Sales Buddy continually monitors our shared Outlook inbox for incoming leads. Utilizing Azure OpenAI, it evaluates each inquiry based on sophisticated criteria to determine its legitimacy and relevance.

  • Intelligent Routing: After qualifying an inquiry, Sales Buddy identifies the most suitable DMC service area to handle the request. This decision is based on predefined logic that understands our service offerings and their alignment with the potential needs of the customer.

  • Seamless Integration: Once an appropriate service area is selected, Sales Buddy communicates this via a message to one of many designated Slack channels, ensuring that the right sales teams are promptly notified about new opportunities.

  • CRM Integration: Finally, Sales Buddy automatically creates a new lead record in our Microsoft Dynamics CRM system. This reduces manual data entry, enabling faster and more efficient follow-ups from the DMC team.

Benefits and Impact

The implementation of Sales Buddy has transformed the way we manage customer inquiries. By automating the pre-qualification and routing processes, we have significantly reduced the response time, allowing our engineering teams to engage with potential clients quicker than ever before. This not only enhances customer satisfaction but also allows our Project Coordinators to focus on more strategic tasks, thereby improving overall productivity.

Furthermore, Sales Buddy serves as a perfect example of how AI and automation can be leveraged in a low-code environment: making advanced technology accessible to non-developers. This accessibility ensures that our teams can easily maintain and adapt the system as our needs evolve.

Looking Forward

The success of Sales Buddy is a steppingstone towards more comprehensive AI integration across various facets of DMC’s operations. We are committed to continuous improvement and innovation, ensuring that we not only meet but exceed the expectations of our clients and stakeholders.

If you’d like to stay informed on how DMC is leveraging the latest technologies to improve our operations, please subscribe to our newsletter.

The post Enhancing Customer Service with AI: Introducing Sales Buddy at DMC  appeared first on DMC, Inc..

]]>
The Ultimate Guide to Using Arrays in Power Automate https://www.dmcinfo.com/blog/16914/the-ultimate-guide-to-using-arrays-in-power-automate/ Wed, 03 Jan 2024 10:06:23 +0000 https://www.dmcinfo.com/blog/16914/the-ultimate-guide-to-using-arrays-in-power-automate/ When using Power Automate flows, we have become familiar with using the vast array of variable options. Strings, Integers, floats, and even Booleans if the mood strikes. However, one option that is often overlooked is the humble Array.  You may be familiar with Arrays from your programming days (you have those rights?), and in a lot […]

The post The Ultimate Guide to Using Arrays in Power Automate appeared first on DMC, Inc..

]]>
When using Power Automate flows, we have become familiar with using the vast array of variable options. Strings, Integers, floats, and even Booleans if the mood strikes. However, one option that is often overlooked is the humble Array. 

You may be familiar with Arrays from your programming days (you have those rights?), and in a lot of ways, they act in similar capacities. You can store a series of data points and references or modify them later. However, while that is what immediately comes to mind, the Array can store multiple data points in each Array node, allowing you to store tables of data in variable form. 

Why is this good? Why would I need this? Often, when we need to store a list or order of operations, the dark temptation of hard-coding creeps back from our school days. “Why not just hard-code this just once? I am in a rush, and it won’t come back to bite me later” are the words of someone who has hidden a snake in their code. Storing these items in an Array allows for a relatively ease of changing run-time configuration options. Other good examples are: 

  • Storing the order for a sequence, such as an approval order. 
  • Storing connection information. 
  • Storing Page or batch sizes for long-running processes. 

Declaring an Array 

Creating an Array that stores simple data is, as implied, pretty simple. 

Choose the “Initialize Variable” option from the list of actions and choose the “array” type. Then format your data as follows: 

JavaScript
[
"Item 1", 
"Item 2", 
"Item 4", 
"Item 3"
"Items are sometimes out of order" 
]
Photo 1 - Array
Photo 2 - Array

Declaring an Array with multiple values.

The more interesting and customizable way of using Arrays is to store multiple data points within a single node of each Array. The only thing that needs to change from the previous step is to use a different format. 

JavaScript
[ 
{ 
"DataPoint1":"Please use something funnier than this", 
"ClownShoeSize":7, 
}, 
{ 
"DataPoint1":"That last joke was not funny", 
"ClownShoeSize":-1, 
}, 
]
Photo 3 - Array
Photo 4 - Array

With this, you can store what amounts to a table of data in this form. You could parse data from a table into an Array or grab items from the Array in order. 

Getting data from Arrays

The easiest way to grab data from the Array is to put the Array into an “Apply to Each” control action on the Array to access each item separately. 

However, while this is very easy for a single-value Array, using a multiple-item Array takes an extra step. 

With a single-item Array, one just needs to add the variable to the “apply to each” and reference the “current item” in whatever action you’re using. 

Photo 5 - Array
Photo 6 - Array
Phot 7 - Array
Photo 8 - Array

You can do the same thing with a multi-valued Array, but you just get a text outline of the node, without easy access to the individual nodes. 

Photo 9 - Array

To get the data out of the multi-valued Array, use the Parse JSON action. Use the multi-valued Array as the input then click the Use Sample payload to generate Scheme Button. 

Photo 10 - Array

Paste in the value from the variable (this needs to be done only once).

Photo 11 - Array

Click done and the schema is generated for you. 

Photo 12 - Array

Now in a loop you can use the body from the Parse JSON action as the input. 

Photo 13 - Array

Then within that loop, you can access each of the data points of the multi-valued array separately. 

Photo 14 - Array
Photo 15 - Array

Searching Arrays to approximate a key value pair

Sometimes you have an Array that is so large that looping through it would be time-consuming. 

When this occurs, you can use an Array like a Key Value pair. Which, if you know the unique value of a field in a node, it can act as a key, from which you can retrieve a value from the corresponding node. 

First, create a new Array with a field which you can ensure is of unique value. 

Note: There is no way to enforce uniqueness in the Array, so this will be entirely dependent on you to ensure that the inputs are valid. 

Photo 16 -Array

Next, use the “Filter” action and use the Array as the input. 

Photo 17 - Array

Use the following syntax to reference the key value “item ()[‘KeyFieldName’]” Then enter the value of your key in the second field. 

Photo 20 - Array

This will return the node in the Array that contains the key you entered. From there you can access the values as noted above. 

Photo 21 - Array

Learn more about our Digital Workplace Solutions expertise and our open positions!

The post The Ultimate Guide to Using Arrays in Power Automate appeared first on DMC, Inc..

]]>
A Guide to Inter-Organizational Collaboration with Microsoft Teams https://www.dmcinfo.com/blog/17018/a-guide-to-inter-organizational-collaboration-with-microsoft-teams/ Mon, 04 Dec 2023 14:11:56 +0000 https://www.dmcinfo.com/blog/17018/a-guide-to-inter-organizational-collaboration-with-microsoft-teams/ If you frequently work with outside organizations, you understand the importance of consistent communication during collaborative projects. Microsoft Teams provides various ways to connect with your collaborators and coordinate efficiently. Read on to learn four of these methods, and choose the one that works best for you. Short term client – Client Tenant Teams is locked down (cannot update Teams settings or […]

The post A Guide to Inter-Organizational Collaboration with Microsoft Teams appeared first on DMC, Inc..

]]>
If you frequently work with outside organizations, you understand the importance of consistent communication during collaborative projects. Microsoft Teams provides various ways to connect with your collaborators and coordinate efficiently. Read on to learn four of these methods, and choose the one that works best for you.

  • Note:  If you are communicating with a client and you see the word ‘(Guest)’ next to their name, it means that they must sign into your organization’s tenant in order to receive your messages. 
  • If you see ‘(External)’ or nothing next to their name, it means they can communicate with you from their own tenant.
  • There are multiple ways to chat, but chat capability will be limited by the settings of the client tenant.  Use options 1-3 if your IT department is unable to update the client’s settings.  
  • Option 4 is the best interface for you and your client but will require them to update their settings.

Short term client – Client Tenant Teams is locked down (cannot update Teams settings or highly restrictive):

Option 1 – Start and pin a group chat 

The benefit of this option is that both users will be able to view the chat in their own tenant. However, it doesn’t allow for threaded conversations.

On the chat page in teams, click on the pencil edit icon to start a new chat and enter the client’s email address. 

Creating a new chat in Microsoft Teams

If their settings allow for communication, Teams will find the user and display ‘(External)’ next to their name so you can start a chat which allows both of you to stay within your own tenant. 

If you need to add multiple team members you can include members from other organizations. Teams will notify everyone in the group when you send a chat depending on their settings.  Pin the chat by clicking on the 3 dots and selecting ‘Pin’.

Option 2 – Invite your client to a Team in your Tenant

This requires your organization’s tenant to allow external users. The benefit of this option is that you can share project documents and other content as needed and have threaded conversations in Microsoft 365. But users will be required to switch from their own tenant to yours, which is an inconvenience. This can be accomplished by switching tenants with the drop-down next to your name in the Teams interface, or by opening Teams in a private browser session.  Make sure you have permissions accounted for before taking this step to ensure that clients only have access to content you want them to have access to.

Create a Team by clicking on the left icon from the project’s SharePoint site and invite them as a guest to your tenant.

Once your team is created, click on the ‘…’ next to the team name, select ‘Add Member’, and type in the client’s email address.

 

Option 3 – Be invited as a guest to their tenant’s Team

This option is simplest for clients but requires you to sign into their tenant. You will be required to switch between tenants for meetings or communication with other clients. 

When entering a Teams meeting while using the client tenant on your desktop, the app will treat you as an external user and client permission will be required to enter meeting rooms. The client’s settings will need to allow for this, but once admitted, you will have a shared collaboration space. 

Tip: Use Teams in an incognito browser to simultaneously keep both tenants open without having to switch back and forth for Teams Meetings. 

Long term client, can update Teams setting to allow for collaboration.

Option 4 – Create a Shared Channel 

This option is the best for all parties, as you can each work in your own tenant. It gives you access to threaded conversations, ​shared documents, and content without having to worry about permissions. This method only provides access to content in one specific channel and creates a separate space for documents, but it requires the client’s IT to update their tenant to allow collaboration with your domain. 

Step 3 – Create the Teams team as shown in Option 2 above.

Step 4 – Create a new channel in the Team and use the shared channel option.  Add the email addresses of your clients once step 1 has been completed (this will take a few hours to take effect).  If the settings are not correct, you will not be allowed to invite them.

 

 

 Whether it’s real-time messaging, virtual meetings, file sharing, or integrated project management, Microsoft Teams empowers you to collaborate seamlessly with those outside of your organization. 

DMC is a Microsoft Solutions Partner. Learn more about our Microsoft Teams expertise and contact us for your next project.

The post A Guide to Inter-Organizational Collaboration with Microsoft Teams appeared first on DMC, Inc..

]]>
Onboarding Employees with SharePoint and Power Automate https://www.dmcinfo.com/blog/17155/onboarding-employees-with-sharepoint-and-power-automate/ Mon, 16 Oct 2023 12:56:03 +0000 https://www.dmcinfo.com/blog/17155/onboarding-employees-with-sharepoint-and-power-automate/ A previous version of this article was originally published in October 2023. For many years, DMC has used a custom-built employee onboarding solution using SharePoint and has expanded this solution to use with many clients. Onboarding employees seamlessly and with no stress is crucial to employee success. As DMC has grown throughout the years, we’ve […]

The post Onboarding Employees with SharePoint and Power Automate appeared first on DMC, Inc..

]]>
A previous version of this article was originally published in October 2023.

For many years, DMC has used a custom-built employee onboarding solution using SharePoint and has expanded this solution to use with many clients.

Onboarding employees seamlessly and with no stress is crucial to employee success. As DMC has grown throughout the years, we’ve automated this process, so tasks don’t get forgotten and there is less time spent tracking down the status of these tasks.

In the past, we have automated the process of creating onboarding tasks and assigning those onboarding tasks using a SharePoint Designer workflow, in conjunction with SharePoint of course. As SharePoint Designer is being phased out, we have switched to using Power Automate, modern SharePoint lists, and page views to make this solution more robust and keep up with the current Microsoft technology practices.

The Onboarding Process

Onboarding is a process that happens over time both before an employee starts and continuing well into their first few weeks or months. In SharePoint, we create a custom list to track the status of each new employee depending on what stage they are in. We add new employees to the list as soon as they accept an offer, and then the workflow is immediately started. The different stages are defined based on how many days until or after the employees start date. Our workflow allows for these stages to be dynamic and allow for changes over time.

Stage Configuration SharePoint

Once the stages are defined, the super users of this solution can define the different tasks that need to be assigned to different people throughout the onboarding process. These tasks have expiration dates relative to the start dates of the new employees.

These tasks are configurable and customizable to your company. There are many small details that go into the onboarding process, and these details are always changing. We create a SharePoint list that acts as the "template" for all onboarding tasks. This ensures that your team can update the process when needed. The workflow uses this template to automatically copy and assign the specific tasks needed for the new employee into the Onboarding Task List. 

Task Template SharePoint

When the new employee falls into the defined stage, depending on how many days they are from their start date, the different tasks will be automatically added into the Onboarding Task List and notify the employee assigned to each task that they have new onboarding tasks to complete. The email includes a link leading directly to a view of their tasks. Users can sort/filter their view at their convenience and check a box to mark tasks as complete when done.

Test Task SharePoint

Building the Workflow

DMC builds this custom workflow using Microsoft Power Automate combined with SharePoint. There is no custom code. We only use the features that come with both Power Automate and SharePoint. The structure of this workflow works great for any company that is looking to streamline the process of onboarding their employees.

Learn more about our Digital Workplace Solutions and contact DMC today for help implementing your own workflow process!

The post Onboarding Employees with SharePoint and Power Automate appeared first on DMC, Inc..

]]>