web-dev-qa-db-fra.com

Le plug-in de chat client Facebook Messenger ne s'affiche pas lorsqu'il n'est pas connecté

J'ai intégré Facebook Customer Plugin sur l'un de nos sites Web. J'ai suivi les instructions de la documentation du développeur. Cela fonctionne bien quand il y a une session facebook active. Cependant, le plugin n'apparaît pas du tout lorsqu'il n'y a pas de session fb active. Il se peut que je manque quelque chose mais je n'ai aucune idée de ce que c'est.

8
roundhousekick

La solution pour moi consistait à ajouter # xfbml = 1 & version = v2.12 & autoLogAppEvents = 1 après le fichier xfbml.customerchat.js comme:

js.src = 'https://connect.facebook.net/en_US/sdk/xfbml.customerchat.js#xfbml=1&version=v2.12&autoLogAppEvents=1';
18
losted

Eh bien, sans vergogne, c’est les «domaines inscrits sur la liste blanche» que je n’ai pas bien gérés.
Après avoir inséré votre domaine, vous devez cliquer sur "Enregistrer" ...

 enter image description here

1
chenop

Nous sommes en mai 2018, l'instruction dans Page -> Paramètres -> plate-forme Messenger -> plug-in de conversation client est beaucoup plus claire.

De plus vérifier Restrictions Pays

0
vanduc1102

J'ai seulement ajouté ce code au code de conversation client fourni dans les paramètres de la page:

    window.fbAsyncInit = function() {
    FB.init({
      appId            : '1175565702494581', // Trokis Philippines App ID; you may use your App ID but this App ID might work on you too.
      autoLogAppEvents : true,
      xfbml            : true,
      version          : 'v2.11'
    });
  };

Code d'origine: 

    <script>
(function(d, s, id){
     var js, fjs = d.getElementsByTagName(s)[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement(s); js.id = id;
     js.src = "https://connect.facebook.net/en_US/sdk/xfbml.customerchat.js";
     fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'facebook-jssdk'));
</script>

<!-- Your customer chat code -->
<div class="fb-customerchat"
  attribution=setup_tool
  page_id="{your-page-id}"
  theme_color="#BE59B9">
</div>

Code final: 

<script>
  window.fbAsyncInit = function() {
    FB.init({
      appId            : '1175565702494581',
      autoLogAppEvents : true,
      xfbml            : true,
      version          : 'v2.11'
    });
  };
(function(d, s, id){
     var js, fjs = d.getElementsByTagName(s)[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement(s); js.id = id;
     js.src = "https://connect.facebook.net/en_US/sdk/xfbml.customerchat.js";
     fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'facebook-jssdk'));
</script>

<!-- Your customer chat code -->
<div class="fb-customerchat"
  attribution=setup_tool
  page_id="{your-page-id}"
  theme_color="#BE59B9">
</div>
0
Chester Alan

Trouvé une solution. Si quelqu'un le rencontre, veuillez vérifier les restrictions Pays de votre page Facebook (Paramètres-> Général-> Restrictions pays). Il doit être disponible partout pour que le plug-in soit rendu même s'il n'y a pas de session active.

0
roundhousekick

j'ai résolu mon problème en utilisant ce script:

<div class="fb-customerchat"
 page_id="<ENTER-YOUR-FACEBOOK-ID-HERE>"
 minimized="true">
</div>
<script>
  window.fbAsyncInit = function() {
    FB.init({
      appId            : 'facebook-developer-app-id',
      autoLogAppEvents : true,
      xfbml            : true,
      version          : 'v2.11'
    });
  };
(function(d, s, id){
     var js, fjs = d.getElementsByTagName(s)[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement(s); js.id = id;
     js.src = "https://connect.facebook.net/en_US/sdk/xfbml.customerchat.js";
     fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'facebook-jssdk'));
</script>

<!-- Your customer chat code -->
<div class="fb-customerchat"
  attribution=setup_tool
  page_id="your-page-id"
  theme_color="#BE59B9">
</div>
0
Narayan Shrestha

Depuis le 8 janvier 2019, Facebook empêche les utilisateurs de demander le plug-in de conversation client avec l'URL suivante: https://connect.facebook.net/en_US/sdk.js

Il faut maintenant utiliser https://connect.facebook.net/en_US/sdk/xfbml.customerchat.js comme argument js.src au lieu de https://connect.facebook.net/en_US/sdk/sdk.js. Si vous utilisez ce dernier, le plug-in de chat client ne sera bientôt plus chargé sur votre site Web.

Si le SDK Javascript de Facebook est déjà inclus sur votre site Web, il vous suffit de définir js.src égal à https://connect.facebook.net/en_US/sdk/xfbml.customerchat.js as indiqué dans l'extrait de code ci-dessous.

(fonction (d, s, id) { var js, fjs = d.getElementsByTagName (s) [0]; if (d.getElementById (id)) return; js = d.createElement (s); js.id = id; js.src = " https://connect.facebook.net/en_US/sdk/xfbml.customerchat.js "; fjs.parentNode. insertBefore (js, fjs); } (document, 'script', 'facebook-jssdk'));

Source: https://www.chatbotino.com/2019/02/06/facebook-customer-chat-plugin-not-working-try-this/

0
Jide

Au début, j'ai essayé avec un code généré par l'assistant Facebook Customer Chat Plugin - pas de chance. Pour que cela fonctionne, je devais ajouter la section FB.init fournissant au développeur valide appId:

  <script>
    window.fbAsyncInit = function() {
        FB.init({
            appId            : 'YOUR-APP-ID-HERE',
            autoLogAppEvents : true,
            xfbml            : true,
            version          : 'v2.11'
        });
    };
    (function(d, s, id) {
    var js, fjs = d.getElementsByTagName(s)[0];
    if (d.getElementById(id)) return;
    js = d.createElement(s); js.id = id;
    js.src = 'https://connect.facebook.net/pl_PL/sdk/xfbml.customerchat.js';
    fjs.parentNode.insertBefore(js, fjs);
  }(document, 'script', 'facebook-jssdk'));</script>

  <!-- Your customer chat code -->
  <div class="fb-customerchat"
    attribution=setup_tool
    page_id="YOUR-PAGE-ID-HERE"
    theme_color="#ed1d24"
    logged_in_greeting="Hello, how can we help you?">
  </div>

Vous trouverez plus d’informations sur le Plugin de chat client Facebook ici

0
Picard