A motion-activated spider for Halloween with an Arduino and a Raspberry Pi

Every year my family hangs a large decorative spider over our doorway for Halloween. This year I decided to make it flash red LED eyes and play a random assortment of spooky sounds (including, but not limited to, bats, chains and the Vincent Price laugh from “Thriller”) when trick-or-treaters come to the door. »

An Azure AD OAuth 2 helper microservice

One of the biggest trends in systems architecture these days is the use of “serverless” functions like Azure Functions, Amazon Lambda and OpenFaas. Because these functions are stateless, if you want to use a purely serverless approach to work with resources secured using Azure Active Directory like Dynamics 365 online, a new token will have to be requested every time a function executes. »

Building a simple service relay for Dynamics 365 CE with RabbitMQ and Python - part 4

This is the final post in my series about building a service relay for Dynamics 365 CE with RabbitMQ and Python. In my previous post in this series, I showed the Python code to make the service relay work. In today’s post, I will show how you can use Azure Functions to make a consumer service proxy using C# so client applications don’t have to access to your RabbitMQ broker directly, and I will also discuss some general thoughts on security and scalability for this service relay architecture. »

Building a simple service relay for Dynamics 365 CE with RabbitMQ and Python - part 3

In my last post in this series, I walked through the prerequisites for building a simple service relay for Dynamics 365 CE with RabbitMQ and Python. In today’s post I will show the Python code to make the service relay work. As I described in the first post in this series, this approach relies on a consumer process and a queue listener process that can both access a RabbitMQ message broker. »

Building a simple service relay for Dynamics 365 CE with RabbitMQ and Python - part 2

In my last post in this series, I outlined an approach for building a simple service relay with RabbitMQ and Python to easily expose an on-premises Dynamics 365 Customer Engagement organization to external consumers. In this post I will walk through the prerequisites for building this out. I’m assuming you have access to a Dynamics 365 CE organization, so I’m going to skip the setup for that and focus on just RabbitMQ and Python today. »