Welcome to Mario Brothers Plumbing Field Service for all customers
First we will show how the customers can order and pay for the service
Here is the backend function for the mighty Donkey Kong to have full control of all orders and the whereabouts of the plumbers at all times. Documents sent out to customers are stored in SharePoint
The plumbers are using a Canvas app to perform their work. The gamification aspect involves receiving a random question from Azure AI through a custom connector that is connected to an Azure function.
We all know that Power FX is supposed to revolutionize the way we implement new buttons the D365 ribbon. But we stick to the good stuff, we used the beloved XRM Toolbox tool Ribbon Workbench to implement a cancelling button for Donkey Kong, in order for him to save time cancelling Work orders:
Throughout the challenging days of coding and inventing awesome features, our team has consistently demonstrated strong camaraderie. We bond over rounds of Mario, sharing hearty laughs, and enjoying refreshing beers together.
You’ve likely heard our laughter echoing through the room in recent days!
Behold, as the final flourish to this grand adventure, the customer’s inbox lights up like a beacon of achievement! With a twinkle in its digital eye, the Microsoft Outlook connector springs into action, delivering a virtual diploma straight to the customer’s awaiting hands. It’s not just an email; it’s a messenger of triumph, carrying the seal of excellence from the Awesome Plumber Firm. With every diploma received, another customer joins the ranks of plumbing champions, their victory celebrated far and wide in the kingdom of email!
Imagine the triumphant moment: the work order completed, the last wrench tightened, and voila! Like magic, a path unfurls in the digital realm, leading straight to the treasure trove of work order documents! It’s like discovering a hidden treasure map in the depths of SharePoint! Every document, every detail neatly arranged along the path, beckoning with the promise of knowledge and accomplishment. With each completed task, another chapter is added to the epic saga of plumbing prowess, all waiting to be explored in the enchanted halls of SharePoint!
Behold the power of PowerPages! Picture this: a distressed customer, facing a flood of plumbing woes, summons help with a mere click of their mouse or tap of their finger. With the agility of a ninja and the simplicity of a child’s game, they dispatch a plumber to their aid! It’s like summoning a superhero, but instead of capes, they wield wrenches and plungers! With PowerPages, plumbing problems are no match for our valiant customers
Donkey Kong, the mighty supervisor, perched atop his virtual throne in the Field Service app’s Schedule Board. With a stroke of his mighty ape paw, he oversees his troop of employees as they navigate the jungle of bookings. It’s a wild ride, but with Donkey Kong at the helm, chaos turns into coordinated mayhem
Our trusty plumbers, armed with wrenches and know-how, embarking on their daily quests to conquer leaks and vanquish clogs! But fear not, for with the power of the Bing connector, they’re armed with more than just tools—they’ve got the magic of automatic latitude and longitude retrieval! As they navigate the labyrinth of streets, our fearless plumbers rely on the Canvas app like seasoned adventurers, ensuring they always reach the pot of gold at the end of the address rainbow!
We have implementet piplines for azure infrastructure and publishing azure function.
YAML and PowerShell scripts to ensure CI/CD.
Infrastructure as code:
We have created a pipeline for our Bicep code to handle the infrastructure in Azure.
Currently the infrastructure consists of:
Storage account
Webapp
Function App
Application insights
Pipeline to build and deploy the Azure Functions:
We have created a pipeline in Azure devops to build and publish the functions we are using in the canvas app. The build is triggered on code push to the “main” repository
Use power fx to handle the overall function of the canvas app and send the more difficult logic to azure functions and custom api pluggin.
The azure function handles all the major quiz master logic between Azure AI and canvas app.
The custom api plugin in dynamics written in C# handles the positioning of the user of the app relative to the work order and return if the user is close enough for a quizz to appen.
In order to generate questions about Super Mario in for the canvas app we are using both Lowcode and Procode. The Azure Function APP consists of two functions written in C# to talk to the Azure Open AI Service through their SDK. In Power Apps there has been defined a new Custom Connector that talks with handles the requests to the Function App. There is also a plugin that has been written in C# to calculate the current position of the user so we can trigger the questions to be shown at the right location.
GetQuestion function: The purpose of this function is to generate a new question about Super Mario. The canvas app will store these questions and if present it will be included in the next request to ensure that the same question wont be repeated.
CheckAnswer: The canvas app uses this function together with the saved session to check if the answer is correct. This function will only return true or false.