Le but de ce guide est d'expliquer comment réaliser une intégration basique de CrowdHandler .NET dans votre application MVC. 

Pour une personnalisation plus poussée et des configurations avancées, veuillez vous référer à ladocumentation Nuget du projet .

1.) Ajoutez une référence à votre projet.

Le plus simple est d'utiliser NuGet, en trouvant le fichier Crowdhandler.MVCSDK dans le gestionnaire de paquets NuGet, ou bien via la CLI de dotnet.

dotnet add package Crowdhandler.MVCSDK

2.) Appliquez l'attribut Crowdhandler Filter à vos actions de contrôleur.

ExampleTicketingController.cs

using Crowdhandler.MVC5SDK;

namespace MyTicketingApp.Controllers
{
    public class TicketingController : Controller
    {
        [CrowdhandlerFilter]
        public ActionResult Index()
        {
            return View();
        }
    }
}

Définissez des modèles d'URL à ignorer en passant le paramètre "Exclusions" au filtre avec une expression régulière contenant les modèles que vous souhaitez ne pas voir pris en compte pour la mise en file d'attente.

Les modèles courants à ignorer sont les suivants

* Chemins utilisés pour le stockage d'actifs statiques et de médias, par exemple /static-media/*
* URL de rappel créées par des fournisseurs de paiement tiers.
* JSON et flux RSS.

ExampleTicketingController.cs

using Crowdhandler.MVCSDK;

namespace MyTicketingApp.Controllers
{
    public class TicketingController : Controller
    {
        [CrowdhandlerFilter(Exclusions = @"^(\/contact-us.*)|((?!.*\?).*(\.(avi|css|eot|gif|ICO|jpg|jpeg|js|json|mov|mp4|mpeg|mpg|og[g|v]|pdf|png|svg|ttf|txt|wmv|woff|woff2|xml)))$")]
        public ActionResult Index()
        {
            return View();
        }
    }
}

3.) Injecter la configuration CrowdHandler.

* Les clés publiques et privées peuvent être trouvées dans la section Compte -> API du panneau de contrôle de CrowdHandler.

via app.config ou web.config

<appSettings>
    <add key="CROWDHANDLER_PUBLIC_KEY" value="YOUR_PUBLIC_KEY"/>
    <add key="CROWDHANDLER_PRIVATE_KEY" value="YOUR_PRIVATE_KEY"/>
</appSettings>

Ils peuvent également être injectés directement dans le filtre.

using Crowdhandler.MVC5SDK;

namespace MyTicketingApp.Controllers
{
    public class TicketingController : Controller
    {
        [CrowdhandlerFilter(PrivateApiKey = "YOUR_PRIVATE_KEY", PublicApiKey = "YOUR_PUBLIC_KEY")]
        public ActionResult Index()
        {
            return View();
        }
    }
}

* Une liste complète des éléments configurables et de leurs paramètres par défaut se trouve dans la section 2b de la documentation Nuget.

https://www.nuget.org/packages/Crowdhandler.MVCSDK/

4.) Installer l'intégration Javascript de CrowdHandler

Pourquoi dois-je faire cela si j'intègre CrowdHandler côté serveur ?

Pour que l'intégration s'exécute le plus rapidement possible, les fonctionnalités qui ne sont pas considérées comme essentielles sont transférées du côté client via notre intégration Javascript.

Si la fonctionnalité n'est pas critique, puis-je sauter cette étape ?

En théorie, oui, mais en pratique, nous vous le déconseillons. L'installation de l'intégration Javascript permet des fonctionnalités telles que le suivi des performances des pages et le maintien d'une session intelligente.

Le premier est une condition nécessaire au bon fonctionnement de notre fonction d'autoréglage, qui permet en outre de connaître les performances de votre application sous charge.

Ce dernier synchronise les informations de session entre le côté client et le backend de CrowdHandler, ce qui empêche les utilisateurs récemment actifs qui ont passé plus de temps que le temps de session configuré de CrowdHandler d'être envoyés au validateur de session de CrowdHandler pour une revalidation inutile. 

Comment installer l'intégration Javascript

Le Javascript peut être installé via Google Tag Manager, en l'incluant directement dans l'en-tête de votre modèle principal ou de toute autre manière qui vous convient.

Vous trouverez ici des instructions sur la manière d'installer notre intégration Javascript.

5.) Changer le type d'intégration en .NET dans le panneau de contrôle de CrowdHandler. 

La sélection du déploiement peut se faire à partir de l'écran des domaines.

6.) Et maintenant ?

Une fois les étapes d'intégration .NET terminées, nous vous recommandons de consulter notre guide de démarrage qui vous aidera à vous familiariser avec la création et la configuration de salles d'attente à partir du panneau de contrôle CrowdHandler.