Vincent biret azure functions and flow (ottawa)
- 2. Introduction to
Azure Fonctions
and Microsoft Flow
Or reliable and fast development
Vincent Biret
MVP Office Servers and
Services
Cloud Architect @ 2ToLead
@baywet
bit.ly/vincentbiret
- 7. • Customizing SharePoint Workflows with SPD?
• Developing WF with Visual Studio?
• Maintaining a WF infrastructure?
Your experience?
- 8. • SharePoint workflows are a complicated thing
• Limited to SharePoint
• Software development is costly
• Reusing what already exists
Why this session?
- 10. • Demo (“broken bridges” solution)
• Introduction to Microsoft Flow
• Introduction to Azure Functions
• Conclusion
Agenda
- 16. • User based workflow solution
• 91 services integrated as of today
• Web editor
• You can leverage on prem data via a gateway
• Steps based concept
• Numerous templates already available
Description
- 18. • Free – 750 ex/month, 15 min
• Plan 1 – 5USD/u/m – 4500 ex/month, 3min
• O365 or D365 – free – 2000 ex/month, 5 min
• Plan 2 – 15USD/u/m – 15 000 ex/month, 1 min
Pricing
- 20. • Performances are not
guaranteed
• Delivery is not guaranteed
• User based execution
context
• No import/export
• Inconstancies
Folder/SPItem
Some remarks
- 21. • WebHooks to start the flows
• Private API’s => use of swagger + AAD app
• Public API’s => Swagger (Icone…) => flowdev@microsoft.com
• Catalog => Iframes + URL params system or SDK JS
What about the devs?
- 23. • Run « pieces of code »
• Focus on code, nothing else
• Supported by Azure App Service/WebJobs
• .NET is .netcore
Azure Functions
- 29. • One trigger per function
• Can have multiple inputs (SQL, Azure Storage, DocumentDB…)
• Can have multiple outputs (same as inputs + http, SendGrid, Twilio…)
Triggers/Inputs/Outputs
- 31. • Web Editor
• Git + Visual Studio
• VS 2015 update 3
• Azure SDK 2.9.6 +
• Web dev tools
• https://aka.ms/azfunctiontools (SDK in preview)
• #r ‘’Newtonsoft.Json’’
Tools
- 34. • WebHooks (both ways)
• Simple API (limitations)
• API + swagger
• API + Swagger + PowerApps
Multiple integration options
- 36. • Native access to tons of services and data
• Short developement cycles
• More power to users
• Time saved
• Money saved
Conclusion
Editor's Notes
- Difficultés à recruter
Overengineering
coûts
- Audience: power users, devs, décideurs
- L’objectif c’est que les usagers fassent des flow et demandent aux développeurs des API/functions
- Gestion des questions, interaction, ok avec ce programme?
- Verifier le compte de la personne avec twilio.com/user/account/phone-numbers/verified
- https://flow.microsoft.com/
- https://flow.microsoft.com/fr-fr/pricing/
- Le débuggueur a cessé quand j’ai oublié d’approuver
On peut attendre jusqu’à plusieurs minutes sur une approbation
https://powerusers.microsoft.com/t5/Flow-Ideas/Flow-export/idi-p/8912
http://social.technet.microsoft.com/wiki/contents/articles/36906.microsoft-flow-and-sharepoint.aspx
- https://flow.microsoft.com/fr-fr/documentation/get-started-flow-dev/
https://flow.microsoft.com/fr-fr/documentation/embed-flow-dev/
https://flow.microsoft.com/fr-fr/documentation/customapi-webhooks/
https://flow.microsoft.com/fr-fr/documentation/register-custom-api/
https://sandervandevelde.wordpress.com/2016/10/09/triggering-microsoft-flow-using-an-azure-function/
- Emphase: faible courbe d’apprentissage car langages très présents dans l’industrie
C# et Javascript ceux qui ont le plus d’intégration pour le moment
- Toutes les 15 minutes, data scavenging
Event blob storage, transformation du CSV en données, explotation via powerbi
Event excel onedrive, creation de graphiques automatisée
- Photo prise qui appelle un webhook, stockage dans le blob storage, redimensionnement des images
Implémentation d’un bot via le SDK, commandes mappées à des functions, sortie mappée à des réponses
- Les autres paramètres d’entrées vont être mappés aux paramètres de notre fonction en fonction des noms qu’on fournit
- Expliquer ce qu’est un webhook
Modèles de route permettent de réutiliser la même fonction en contextualisant les appels
- https://blogs.msdn.microsoft.com/webdev/2016/12/01/visual-studio-tools-for-azure-functions/
Syntaxe r avec le pool de librairies à disposition
Référencer une dll existante comme point d’entrée
http://stackoverflow.com/questions/36577584/how-to-put-the-entry-point-of-an-azure-function-inside-a-net-dll
- https://www.visualstudio.com/fr-fr/docs/build/concepts/agents/hosted#software