Dynamics 365 Portail de service à la clientèle partie 2

Portail de service à la clientèle Dynamics 365 : Défis et solutions - Partie 2

Diogo GouveiaProducts and Solutions, Technical Leave a Comment

Bienvenue dans la deuxième partie de l'article ! Ici, nous allons continuer à expliquer notre expérience dans le développement de notre Portail de service à la clientèle Microsoft Dynamics 365. Si vous n'avez pas lu Première partie Nous avons inclus un plugin conçu sur mesure pour le service client de D365.

Occurrence #3 - Ouverture d'un nouveau cas

Lors de la création de notre portail d'assistance, nous avons rencontré un problème lié au formulaire que nos clients remplissent lorsqu'ils créent un nouveau cas. La conception par défaut de cette page sur le service clientèle de Microsoft Dynamics 365 comprend une zone de texte générale, où les clients sont censés fournir des détails sur les particularités de leur cas.

Bien que ce format puisse convenir à certaines entreprises, il n'était pas adapté au niveau d'automatisation que nous recherchions. Nous cherchions essentiellement un moyen d'acheminer rapidement chaque nouveau dossier créé sur le portail vers une file d'attente appropriée, chacune contenant une équipe de personnes les mieux à même de répondre à chaque dossier. En plus d'être beaucoup plus efficace, ce système est également moins chronophage que de devoir analyser chaque cas individuellement pour ensuite pouvoir le diriger vers les experts appropriés.

Solution - Refonte du formulaire de service à la clientèle D365

Pour optimiser la résolution des cas que nous recevons sur le portail d'assistance, notre équipe a dû remanier la page "Ouvrir un nouveau cas". Au lieu de la boîte de questions générales que nous venons de mentionner, nous avons créé un formulaire qui se développe au fur et à mesure que les clients remplissent les informations relatives à leur cas.

Lorsque l'utilisateur est connecté, c'est ce qu'il voit initialement :

portail du service client dynamics 365 ouvrir un nouveau dossier
Après avoir rempli les champs "Titre" et "Objet", le formulaire continue de s'étendre. À des fins de démonstration, nous allons simuler le scénario d'un client qui rencontre une erreur de connexion lorsqu'il tente d'accéder à son compte SaaS pour CB Dynamics 365 to SharePoint Permissions Replicator.
Exemple de portail de service à la clientèle Dynamics 365

Une fois le formulaire rempli, vous pouvez voir que les informations sont réparties dans différents champs plutôt que dans une seule grande zone de texte. Le système peut désormais lire ces différents champs et diriger correctement le dossier vers la file d'attente appropriée, via des flux de travail prédéfinis.

Chaque fois qu'un cas est dirigé, l'équipe destinataire est alertée par un courriel automatisé l'informant qu'elle a reçu un nouveau cas sur le portail d'assistance. Ensuite, cette équipe doit aller dans le CRM pour vérifier le cas et soit laisser un commentaire sur le portail, qui est un simple commentaire sur le portail de service à la clientèle Dynamics 365 à la demande qui a été faite, soit envoyer un rendez-vous dans le calendrier, également via le CRM, pour organiser un appel si nécessaire. Le client est ensuite informé de ces événements par courrier électronique, et il en va de même pour les membres de l'équipe affectés aux files d'attente chaque fois qu'une mise à jour est apportée à un cas d'assistance (par exemple, une réponse de l'utilisateur à un commentaire sur le portail).

Résoudre des cas en utilisant exclusivement le CRM Microsoft Dynamics 365 est une chose à laquelle notre équipe a dû s'habituer (ce qui sera abordé plus loin), mais qui est extrêmement bénéfique puisque toutes les communications et tous les processus sont désormais suivis. Cela nous permet de générer des données fiables, de les analyser et d'en déduire des initiatives visant à accroître la satisfaction des clients et à continuer d'améliorer notre gamme de produits.

Connecting Software Portail SaaS

Notre Portail SaaSLa page d'accueil de Microsoft Azure SaaS, la ressource utilisée par nos clients pour gérer les solutions déployées via nos serveurs Microsoft Azure SaaS, a également fait l'objet de quelques ajustements. Le pied de page comporte un lien "Nous contacter", qui redirigeait les clients vers un espace dédié où ils pouvaient créer des tickets d'assistance pour leurs demandes.
dynamics 365 customer service portal contact us

Avec notre nouveau portail de service à la clientèle Dynamics 365, cela est devenu une redondance. L'un des principaux objectifs du portail d'assistance étant de centraliser les demandes d'assistance, il n'était pas logique que les demandes émanant de notre portail SaaS passent par un canal différent. C'est pourquoi notre équipe de développement a configuré ce champ "Contactez-nous" de manière à ce qu'il conduise les clients directement à notre portail SaaS. Portail d'assistance.

Mais il y a un bonus ! Lorsqu'un client atteint cette page, certains champs du formulaire remanié que nous avons créé sont automatiquement remplis en fonction de la page d'où provient le client. Cela nous permet de gagner en efficacité et de rester en phase avec les objectifs qui nous ont amenés à développer ce portail de service à la clientèle Dynamics 365 en premier lieu.

Occurrence #4 - Taille totale de la pièce jointe

Comme vous le savez sans doute, les pièces jointes sont extrêmement utiles lors de la création d'un dossier d'assistance, car elles facilitent l'échange d'informations entre l'utilisateur et le professionnel chargé de l'assistance. Toutefois, en fonction de la complexité du dossier, la taille totale des pièces jointes peut varier, et il existe généralement des limitations à cet égard.

Le portail de service à la clientèle Dynamics 365 a une limite de 5MB pour la taille totale des pièces jointes que les clients peuvent envoyer avec leurs cas. Pour les clients qui joignent une simple capture d'écran, cette limite est plus que suffisante, mais pour les cas qui nécessitent un enregistrement d'écran ou un plus grand nombre d'images par exemple, cela devient un problème.

      public void Execute(IServiceProvider serviceProvider)
    {
        var tracingService = (ITracingService) serviceProvider.GetService(typeof(ITracingService)) ;
        var context = (IPluginExecutionContext) serviceProvider.GetService(typeof(IPluginExecutionContext)) ;
        var serviceFactory = (IOrganizationServiceFactory) serviceProvider.GetService(typeof(IOrganizationServiceFactory)) ;
        var service = serviceFactory.CreateOrganizationService(context.UserId) ;
        if (!context.InputParameters.Contains("Target") || !(context.InputParameters["Target"] is Entity))
        {
            retour ;
        }

        var entity = (Entity) context.InputParameters["Target"] ;
        var isLoginEnabled = HasLoginEnabled(entity) ;
        
        if (isLoginEnabled == false)
        {
            return ;
        }

        try
        {
            var emailAddress = (string) entity["emailaddress1"] ;
            var contactsWithSameEmailAddress = GetContactsByEmailAddress(service, entity.Id, emailAddress) ;
            if (contactsWithSameEmailAddress.Entities.Count > 0)
            {
                var hasLoginEnabled = HasLoginEnabled(contactsWithSameEmailAddress.Entities[0]) ;
                if (hasLoginEnabled)
                {
                    throw new InvalidPluginExecutionException(OperationStatus.Failed,
                        "L'utilisateur existe déjà. Essayez une autre adresse électronique pour vous inscrire ou connectez-vous à votre compte existant") ;
                }

                var mergeRequest = new MergeRequest
                {
                    SubordinateId = entity.Id,
                    Target = new EntityReference("contact", contactsWithSameEmailAddress.Entities[0].Id),
                    UpdateContent = GetUpdateContent(entity)
                } ;
                var _ = (MergeResponse) service.Execute(mergeRequest) ;
                entity[CustomAttributeName] = true ;
                service.Update(entity) ;
            }
            else
            {
                var domain = emailAddress.Split('@')[1] ;
                if (_publicDomains.Contains(domain))
                {
                    SendEmailAndDeactivateContact(service, tracingService, entity) ;
                }
                else
                {
                    var contactsWithSameDomain = GetContactsByDomain(service, entity.Id, domain) ;
                    if (contactsWithSameDomain.Entities.Count > 0)
                    {
                        entity["parentcustomerid"] = contactsWithSameDomain.Entities[0]["parentcustomerid"] ;
                        service.Update(entity) ;
                    }
                    else
                    {
                        SendEmailAndDeactivateContact(service, tracingService, entity) ;
                    }
                }
            }
        }
        catch (FaultException ex)
        {
            throw new InvalidPluginExecutionException("An error occurred in ContactPostOperationPlugin.", ex) ;
        }
    }
Fermer le code

Solution - Une solution de contournement

Bien que notre équipe de développement soit brillante, il n'y a pas grand-chose que nous puissions faire pour remédier à cette limitation des pièces jointes. La meilleure solution consiste à fournir à l'utilisateur un dépôt alternatif pour le téléchargement des fichiers, qui sont analysés par l'équipe chargée du dossier. À cette fin, la plateforme que nous utilisons est ownCloud.

Autres événements

Outre les quatre cas précédents, d'autres situations ont prouvé que nous étions prêts et capables de modifier le déploiement initial du projet en cas de besoin. À titre d'exemple, nous avons

  • Adaptation des vues Microsoft Dynamics 365 et des possibilités de recherche dans les descriptions des commentaires du portail.
  • Amélioration de la lisibilité des commentaires du portail pour les clients et l'équipe d'assistance en supprimant le code HTML et en incluant du texte enrichi.
  • Ajout d'une colonne supplémentaire pour compiler l'URL d'une base de connaissances externe
  • Mettre en place un processus de résolution automatique des cas restés sans réponse
  • Apprentissage des méthodes de rendu HTML de Microsoft Dynamics 365 pour s'assurer que les courriels d'information envoyés aux clients s'affichent comme ils le souhaitent (Indice: Le code HTML doit se présenter sous la forme d'une seule ligne de code plutôt que dans un format standard).

En outre, dans le cadre des efforts déployés par Microsoft pour rendre la plate-forme Power Pages plus sûre, la société a introduit une fonction de sécurité Application Dataverse Concept de l'utilisateur. En bref, toutes les actions effectuées au sein des applications web sont liées à un type d'utilisateur, et chaque type d'utilisateur dispose de privilèges différents.

L'utilisateur SYSTEM était celui utilisé par la solution D365 que nous avons construite, mentionnée dans la première partie de cet article. Avec la nouvelle introduction, cet utilisateur SYSTEM est devenu un utilisateur d'application, qui n'a pas les mêmes privilèges que l'ancien utilisateur SYSTEM. De ce fait, la solution que nous avons élaborée a été restreinte et ne fonctionnait pas correctement.

La seule chose à faire était d'assigner les permissions de l'Administrateur Système (portées par l'ancien utilisateur SYSTEM) au nouvel Utilisateur d'Application que Microsoft a mis en place. Une fois cette opération effectuée, notre plugin a repris son efficacité 100% !

Dynamics 365 Formation CRM

Maintenant que nous avons abordé les obstacles techniques auxquels nous avons été confrontés lors de la création de notre portail d'assistance, nous souhaitons évoquer brièvement les aspects managériaux de la mise en œuvre du portail de service à la clientèle Dynamics 365, à savoir la formation CRM Dynamics 365 que notre équipe a dû suivre. Comme tout chef de projet vous le dira, l'engagement de l'équipe à s'adapter aux nouvelles méthodes de travail peut être l'un des plus grands défis à relever lors de la mise en œuvre d'une amélioration.

Vous savez peut-être que notre équipe assurait auparavant le soutien à la clientèle par courrier électronique. Désormais, les membres de l'équipe doivent laisser des commentaires sur le portail ou envoyer des invitations à des réunions exclusivement par le biais de notre CRM. Pour assurer une transition en douceur vers un nouveau processus comme celui-ci, il était important d'informer l'équipe des raisons de cette évolution afin qu'elle en perçoive les avantages, que ce soit du point de vue du temps gagné, des besoins de reporting de l'entreprise, des initiatives d'amélioration continue ou de la rationalisation de l'expérience de l'assistance à la clientèle. Même pour nos clients, nous pensons qu'ils ont dû s'habituer à utiliser le portail d'assistance pour leurs demandes, plutôt que d'envoyer un courriel aux membres de l'équipe avec lesquels ils étaient déjà familiers.

Enfin, la maintenance de notre base de connaissances a été une autre occasion de changement. Maintenant que notre portail de service à la clientèle Microsoft Dynamics 365 nous donne une vision beaucoup plus claire des questions posées par nos clients, l'équipe doit non seulement fournir une assistance, mais aussi continuer à ajouter les cas récurrents à la base de connaissances afin de s'assurer que ces informations sont facilement accessibles à tous les utilisateurs du portail d'assistance.

À emporter

Nous portons un regard positif sur ces événements, car ils nous ont permis de donner à notre portail d'assistance la meilleure forme possible pour nos clients. Bien qu'il s'agisse d'un projet de longue haleine qui a nécessité les efforts et le dévouement total des membres de notre équipe, il a indubitablement porté ses fruits. Le fait de pouvoir offrir plus de commodité à nos clients et une source d'information solide pour nous signifie que nous avons gagné en puissance pour continuer à atteindre nos objectifs, et nous sommes impatients de voir comment nous pouvons continuer à optimiser nos processus à l'aide du portail de service à la clientèle Microsoft Dynamics 365.

Nous espérons que vous avez apprécié d'en savoir plus sur notre expérience de la création de notre Portail d'assistance. En Première partie de cet article, nous avons inclus une partie d'un plugin que nous avons construit spécifiquement pour le Service clientèle Microsoft Dynamics 365. Cela nous a été extrêmement utile, alors n'hésitez pas à y jeter un coup d'œil et à nous contacter pour obtenir la version complète !


A propos de l'auteur

Diogo Gouveia

Par Diogo Gouveia

"Après avoir terminé mes études au Royaume-Uni, j'ai rejoint l'équipe marketing de Connecting Software pour créer du contenu sur l'intégration des logiciels et divers autres sujets liés aux technologies de l'information. Si vous avez des observations ou des suggestions, n'hésitez pas à me contacter."

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

For security, use of Google's reCAPTCHA service is required which is subject to the Google Privacy Policy and Terms of Use.