Premier coup d'œil: l'outil de mashup d'API de Microsoft pour le reste d'entre nous

Toutes les applications cloud ne doivent pas nécessairement être à l'échelle du cloud. Il s'agit souvent de simples applications de routage et de commutation qui prennent les informations d'une source, les traitent au minimum, puis les transmettent. C'est là que des outils comme IFTTT et Yahoo Pipes sont entrés en jeu, vous permettant de créer et de partager rapidement des flux d'informations reliant un service à un autre. Malheureusement, Yahoo Pipes a été fermé et IFTTT s'est concentré sur de simples liens vers l'Internet des objets.

Cela signifie qu'il y a de la place sur le marché pour un nouvel outil - un outil axé sur le travail avec des applications et des services, et capable de gérer des chaînes d'opérations plus complexes que le mappage de base d'une entrée à une sortie d'IFTTT. Vous pouvez créer des microservices sur Node.js pour automatiser ces types de connexions entre les applications et entre les API, mais ce serait excessif. Tout comme Azure Logic Apps ou AWS Lambda.

Parallèlement au lancement de son nouvel outil de développement visuel, PowerApps, Microsoft a récemment dévoilé son nouvel outil de développement basé sur la connexion, Flow. Tout comme IFTTT et Pipes, Flow est conçu pour vous aider à connecter rapidement les sorties et les entrées pour créer des applications déclenchées par un événement sur une entrée et fournir des réponses à un ou plusieurs services. Là où IFTTT peut analyser un flux de tweets et enregistrer un contenu spécifique dans un fichier, Flow peut prendre une entrée et l'utiliser comme base pour un flux d'informations plus complexe, en interrogeant plusieurs sources d'informations et en gérant plusieurs actions en conséquence.

Avec la prise en charge initiale de 12 services (et de nombreuses autres API), Microsoft Flow est clairement conçu pour automatiser ce qui serait autrement des tâches fastidieuses. Les services pris en charge incluent Twitter, GitHub, Salesforce, Dropbox, Slack et Office 365, vous donnant accès à une grande partie d'Office Graph. En utilisant ces services, vous pouvez, par exemple, scanner Twitter à la recherche de mentions d'un produit et les diffuser dans un canal Slack pour l'équipe produit, permettant à l'équipe de voir ce que leurs utilisateurs disent de leur produit.

Tenants et aboutissants, si et puis

Microsoft fournit un ensemble de 63 modèles initiaux qui gèrent une variété de tâches, qui sont toutes également prêtes à être personnalisées. La gamme de modèles couvre la gestion de la relation client, les notifications devops et les moyens de gérer votre vie en ligne, en comblant les écarts entre le stockage, les médias sociaux, la messagerie électronique et d'autres services cloud.

J'ai commencé par personnaliser l'un des modèles de base, en prenant les tweets que j'ai envoyés et en les archivant dans un fichier CSV sur mon OneDrive personnel. La modification d'un flux est relativement simple. Vous êtes présenté avec les éléments clés d'un modèle dans votre navigateur sous forme de diagramme de flux de base, les entrées en haut d'un écran, les sorties en bas. Vous pouvez cliquer sur un bloc pour ouvrir ses propriétés. Par exemple, dans un bloc Twitter, vous trouverez une requête Twitter standard.

Une différence clé entre Flow et IFTTT est la prise en charge des conditions. Par exemple, si un fichier dont vous avez besoin n'est pas présent, votre flux peut le créer et placer un ensemble initial de données. Une fois qu'il est en place, un chemin alternatif ajoutera de nouvelles données au fichier. Flow propose un ensemble très basique d'opérateurs conditionnels, mais c'est suffisant pour vous permettre de créer des applications relativement complexes. Vous pouvez enchaîner les entrées, les requêtes et les conditions, vous aidant à contrôler le flux de votre flux, de l'entrée à votre choix de sorties.

Il y a beaucoup de flexibilité dans Flow. Lorsque vous explorez la création de vos propres flux plutôt que d'utiliser les modèles fournis, vous constaterez que vous êtes en mesure d'utiliser les définitions d'API Swagger pour connecter rapidement des API REST arbitraires à un flux. Vous pouvez également vous connecter à une action HTTP, une option qui vous permettrait de vous connecter à un crochet Web dans une application comme Slack, ou de travailler avec des données envoyées via un formulaire Web ou via JSON C'est une fonctionnalité importante, car elle signifie que vous n'êtes pas limité à l'ensemble de contrôles par défaut.

Vous pouvez également créer un flux dans une application PowerApps, en lui donnant sa propre interface utilisateur. Le débogage est facile, avec des rapports pour chaque opération qui vous permettent d'explorer chaque bloc, afin que vous puissiez voir ce qui n'a pas fonctionné - et tout aussi important, ce qui a bien fonctionné.

Seul le début

Le résultat est un petit outil puissant qui peut rapidement gratter une démangeaison. La possibilité d'accéder à n'importe quelle API est importante, tout comme la prise en charge d'une gamme de types d'entrée différents. Microsoft a fourni suffisamment de routes dans Flow pour que vous puissiez en trouver une qui fonctionnera avec votre choix d'entrées, même si elles ne font pas partie des déclencheurs spécifiques définis par Flow. Les extrants sont peut-être un peu plus limités à ce stade. J'aurais aimé voir un meilleur support pour Office Graph et ses différentes entités, y compris plus de types de documents qu'Excel.

Certains aspects du processus de développement de Flow sont encore un peu bogués, en particulier autour de son intégration OneDrive. J'ai trouvé qu'il était presque impossible de faire défiler une longue liste de dossiers, par exemple, et j'ai dû saisir manuellement le dossier que j'avais l'intention d'utiliser. Malgré ces problèmes de démarrage, Flow se présente comme un remplacement pour les Yahoo Pipes, malheureusement perdus, bien que conçus pour le monde des API que nous avons aujourd'hui, plutôt que simplement HTTP, RSS et XML.

Flow est un service qui prend rapidement du sens, même pour les non-programmeurs. Il est assez facile de commencer à personnaliser un modèle, mais une fois que vous avez créé vos propres flux, la présentation graphique des blocs de flux et de programme prend rapidement du sens. Si vous souhaitez aller au-delà des modèles et des actions par défaut, vous devrez vous familiariser avec la syntaxe des API RESTful. La prise en charge par Flow du langage de description de l'API Swagger devrait simplifier les choses, du moins là où les sites et les services offrent des définitions Swagger.

Avec des outils comme Flow et PowerApps, Microsoft sert enfin un public de développeurs composé de travailleurs de l'information qui souhaitent résoudre de petits problèmes. Flow n'est pas un outil de programmation à usage général, mais il est néanmoins à la fois puissant et flexible. Flow est une rampe d'accès à un nouveau style de développement d'applications, et c'est celui que tout le monde peut utiliser.