Fermer

octobre 8, 2018

Que contient la dernière version de Twilio Flex?


Alors que Twilio Flex approche d'une date de disponibilité générale (GA), l'équipe continue d'itérer et de peaufiner le démarrage rapide de Flex. Le démarrage rapide de Flex fournit la configuration et le code nécessaires pour provisionner rapidement un nouveau projet Flex. Nous en installons plusieurs versions depuis l’été. Dans les versions 0.12 et 0.13, nous avons constaté des changements intéressants par rapport aux approches précédentes. Nous nous attendions à voir d'autres changements au cours de la conférence Signal ou peu après la conférence Signal la semaine prochaine.

De manière générale, on s'emploie généralement à simplifier les choses pour que les développeurs qui lancent un nouveau projet aient la liste la plus claire possible. Les modèles initiaux de démarrage rapide incluaient davantage de code exemple et de composants. Cela a encouragé les premiers utilisateurs à se mettre rapidement au travail. L'accent semble maintenant être mis davantage sur une palette vierge qui peut servir de point de départ pour toute nouvelle implémentation de Flex.

Les simplifications consistent à passer à un package de style par défaut “créer-réagir-app”, en supprimant Typescript comme expérience de développement par défaut. et en limitant le flux de travail Javascript masqué en utilisant de la méthode ré-app-re-câblée .

Contenu du package actuel

Je vais comparer les derniers packages avec le code de l'original (0.6 ou 0.7) Quickstarts. Cela donnera une idée de ce qui est disponible maintenant et de ce qui a changé.

TaskRouter

Cela a sensiblement la même apparence que dans les versions précédentes. Il comprend la configuration de base de l'espace de travail suivante:

Espace de travail d'affectation de tâches Flex pour Flex. Dans un projet Flex, il devrait s'agir du seul espace de travail.

La file d'attente des tâches Tout le monde destinée à n'importe quel travailleur.

Le flux de travaux Assigner à n'importe qui . Cela enverra simplement le tout à une file d'attente sans filtres, étapes ou logique supplémentaire.

Un Worker en fonction de l'utilisateur qui a configuré le projet. Les attributs de travailleur par défaut sont simplement contact_uri, nom complet, email .

Activités (on peut en gros assimiler à des "états de présence"): Hors ligne, Inactif, Occupé et réservé par défaut . Dans Flex, ce sont plus que de la présence car les travailleurs ne doivent pas nécessairement être des agents en direct. Toute entité à laquelle une tâche peut être affectée peut être un travailleur. Par exemple, vous pouvez avoir un opérateur Voicemail qui sait comment acheminer une connexion Web vers un flux de travail d'enregistrement.

Fonctions

Les fonctions Flex par défaut sont très similaires, mais quelques nouvelles fonctions ont été ajoutées.

Flex Get Plugins Il s'agit d'une fonction qui renvoie les plug-ins JavaScript nécessaires à inclure dans votre déploiement Flex. Il s'agit essentiellement d'actifs privés avec un préfixe «plugin».

Flex Obtenir des actifs avec CORS Cela permet de récupérer un actif à partir des actifs d'exécution avec les en-têtes CORS nécessaires, par exemple dans la console de l'agent. React application.

Voici une capture d'écran de la liste de fonctions par défaut

Flex UI and Samples de discussion

De nombreux changements ont eu lieu depuis le démarrage rapide initial pour l'interface utilisateur Flex. L'exemple de conversation est toujours à peu près le même, bien que la version 0.13 actuelle montre quelques modifications. Je ne vais pas entrer dans les détails de chaque fichier et dossier, mais voici quelques réflexions et commentaires généraux.

  • Tout le code utilise du JavaScript simple. Nous sommes de grands fans de systèmes tels que TypeScript pour appliquer certaines habitudes et habitudes de développeur, mais cela ajoute une couche supplémentaire en termes de flux de travail et de courbe d'apprentissage.
  • Les dépendances dans package.json ont été réduites à seuls les dépôts privés de twilio / flex-ui, réagissent et réagissent, plus quelques dépendances de développement. Cela se compare à 11 dépendances et à 25 dépendances de développement dans la version 0.6. Cependant, il y a encore beaucoup de dépendances dans le projet twilio / flex-ui. Ceux-ci sont supprimés lorsque vous exécutez l’installation de npm, vous n’avez donc pas besoin de les gérer vous-même.
  • Les ressources de points d’entrée de l’application (fichiers app.js et CSS, par exemple) ont été déplacées dans le dossier src. Il n'y a plus de dossier de ressources.
  • Les quickstarts d'origine contenaient divers exemples de composants React pour présenter des fonctionnalités telles que les notifications, le cadre d'action, les thèmes, etc. Le code commenté a été dispersé dans l'application pour montrer comment utiliser le cadre d'interface utilisateur, éclairer certaines fonctionnalités, etc. Rien de tout cela n'est disponible dans le dernier Quickstart. Toutefois, la prise en charge sous forme de documentation et de didacticiels a été considérablement développée au cours de cette période.

Orientation et réflexions relatives au démarrage rapide

Comme je l’ai déjà mentionné, il s’agit plutôt d’une approche «vierge». Je comprends que je vais dans cette direction car il existe presque autant de flux de travaux de développement JavaScript et de préférences d’infrastructure que de développeurs. Toutefois, cela signifie que si vous avez aimé l’approche Quickstart originale, vous devez configurer des éléments tels que la prise en charge de Typescript et le filtrage à votre guise. L'application de console d'agent utilise maintenant une expérience de projet react-app-rewired combinée à une expérience de projet standard create-react-app . Si je comprends bien, réagit-app-recâblée fournit un moyen de conserver la plupart des avantages du paquet create-react-app tout en permettant une certaine personnalisation. Un exemple de personnalisation peut être l'ajout de processus supplémentaires dans le flux de travail (chargeurs, tests, transpileurs, etc.). Lorsque vous utilisez create-react-app vous pouvez toujours utiliser la commande eject pour extraire tous les paramètres par défaut et les packages dans "ouvert", mais vous devrez ensuite être responsable de la gestion de tous les aspects de la configuration du projet vous-même. Pour plus d'informations, lisez la documentation .

Si vous commencez à vous pencher sur Flex (ou que vous attendez le début de l'AG), cela est en grande partie un peu théorique. Mais il est intéressant de suivre l'évolution de Quickstart au fur et à mesure de l'évolution de Flex, car il donne un aperçu de la réflexion, de la direction et des priorités actuelles des équipes de développement. En général, il n’est probablement pas mal de conserver différentes versions de ces Quickstarts. Il y a quelques bonnes choses ici pour la référence, à la fois pour la plate-forme Flex elle-même et pour ceux qui cherchent à en savoir plus sur la programmation frontale JavaScript en général.




Source link