Social Icons

samedi 14 avril 2012

Comment générer des pistes sur Salesforce depuis sa page Facebook ?

Suite à l'événement Cloudforce Paris 2012 le 10 avril dernier, où "l'Entreprise Sociale" était au cœur des présentations, voici un tutoriel sur la mise en place d'un formulaire de contact sur Facebook générant des pistes dans Salesforce. 

Pour les entreprises, avoir une page Facebook comme vitrine de leur image de marque est devenu incontournable. Grâce à Heroku, il est possible de créer un formulaire de contacts sur sa page Facebook et de le lier aux pistes dans Salesforce.

En suivant l'exemple montré au Developer Garage (événement ayant fait suite à Cloudforce), voici le pas-à-pas permettant de créer une application de contact sur Facebook en utilisant le formulaire standard de Salesforce Web-Vers-Piste (ou Wev2Lead).


La page facebook avec le formulaire de contact est accessible ici.

Etape 1 : créer une application Facebook depuis http://developers.facebook.com/
Cliquer sur Application dans le bandeau haut de l'application puis sur Créer une application

Etape 2 : Facebook vous demande de renseigner votre numéro de téléphone et vous envoie un code de vérification. Lorsque votre compte est vérifié, renseigner le nom de l'application, et cocher la case Heroku Hosting puis sélectionner le langage de votre choix (pour ma part PHP)


Etape 3 : Automatiquement, un compte Heroku est créé et un Email vous est envoyé avec le lien vers la Heroku Toolbelt qui permet d'appeler les utilitaires Heroku en ligne de commande. (git en l'occurence).

Télécharger la Toolbelt qui permet d'utiliser les différents utilitaires en ligne de commande nécessaires à l'utilisation de Heroku.

Dans Facebook, une application par défaut est créée :

L'application est disponible à l'URL indiquée dans le champ URL du site et ça donne ça :
.

Etape 4 : Récupérer en local le projet créé automatiquement sur Heroku

Etape 5 : Aller dans Salesforce et générer un formulaire Web-vers-piste (Web to Lead)
Un prochain article suivra sur la génration de formulaire Web-vers-piste depuis Salesforce, la configuration de la réponse automatique et éventuellement les règles d'assignation en fonction de critères.

Etape 6 : Modifier l'application par défaut :
  • Dans index.php:
    • Intégrer le formulaire obtenu depuis Salesforce,
    • Faire le nettoyage de tous les éléments par défaut
    • Récupérer les informations du profil utilisateur pour pré-remplir le formulaire :
try {
$user_infos = $facebook->api('/me');
$user_first_name = $user_infos['first_name'];
$user_last_name = $user_infos['last_name'];
$user_company = $user_infos['work'][0]['employer']['name'];
$user_gender = $user_infos['gender'];
}catch (FacebookApiException $e) {
error_log($e);
}

Remarque : les informations auxquelles on accède ici sont des infos ne nécesitant pas d'access token comme spécifié dans la Graph API de Facebook.
    • Ajouter les valeurs par défaut dans le formulaire Web 2 Lead
    • Ajouter une redirection vers la page de dialogue Facebook demandant à l'utilisateur d'accepter l'application (OAuth Dialog), cf documentation officielle ici. Pour cette partie, j'ai eu pas mal de soucis (c'est l'opération la plus touchy de cette procédure) car l'application est exécutée dans un onglet. La subtilité est de recharger toute la page (et pas que l'iframe) puis de rediriger l'utilisateur vers l'application au sein de la page. Il faut utiliser le paramètre redirect_uri du type https://www.facebook.com/PAGE_USERNAME/app_YOUR_APP_ID. Je me suis inspirée de la procédure d'authentification décrite ici.
Voici ce la fenêtre OAuth dialog affichée à l'utilisateur :
Cette étape est indispensable pour pré-remplir le formulaire avec les informations l'utilisateur.

  • Ajouter le SDK Facebook qui permet d'accéder aux API Facebook, le télécharger ici :  https://github.com/facebook/php-sdk (dossier src) et copier les fichers dans le dossier SDK - je ne comprends pas pourquoi ces fichiers ne sont pas dans l'application par défaut
  • Nettoyer le projet (dossier image à supprimer notamment)
    • Ajouter les informations 
  • Ajouter une page sur laquelle seront redirigés les utilisateurs après la validation du formulaire

Normalement, la bonne pratique est de tester en local son application avant de la commiter sur Heroku mais ici j'ai fait mes tests directement sur Heroku puisqu'il s'agit d'une application de test.

Etape 7 : Comitter les modifications faites en local sur Heroku


Etape 8 : Déployer les modifications :



Quelques autres commandes utiles
- git add : pour ajouter de nouveaux dossiers/fichiers au projet
- heroku logs : pour afficher les logs

Etape 9 : Ajouter le formulaire à la page de votre entreprise en copiant l'URL suivante depuis la page  :

https://www.facebook.com/dialog/pagetab?app_id=APP_ID&next=URL
où APP_ID et URL sont dans les paramètres de l'application Facebook.

Etape 10 : Tester le formulaire : http://www.facebook.com/pages/Comment-faire-sur-Salesforce-/151619264965226

Cliquer sur valider, une piste est créée dans Salesforce (Attention, il faut impérativement saisir la société pour que la piste soit créée dans Salesforce mais cela n'est pas contrôlé au niveau du formulaire).

Et voilà le résutat dans Salesforce :

Dans la liste associée Historique des activités on voit l'email de confirmation.

En conclusion

Voilà un exemple d'une application Facebook liée à Salesforce permettant de tirer partie des réseaux sociaux en générant des pistes directement dans Salesforce et adapter ses processus de vente à cette nouvelle donne en connaissant au mieux ses suspects, c'est à cibler leurs centres d'intérêts et ensuite faire un suivi commercial approprié.

On pourrait développer cet exemple et envoyer des informations supplémentaires présentes sur le profil Facebook de l'utilisateur pour enrichir la piste avec ses centres d'intérêts, sa liste d'amis, pourquoi pas les marques concurrentes qu'il aurait "liké" etc etc.
On peut aisément imaginer l'intérêt pour une entreprise de collecter ce type d'informations pour communiquer de façon ciblée auprès de ses prospects et pour adapter au mieux ses actions commerciales.


Références
Sur le blog de Salesforce :
http://blogs.developerforce.com/developer-relations/2012/02/facebook-heroku-force-com-social-web-to-lead.html
http://blogs.developerforce.com/developer-relations/2012/03/behind-the-scenes-of-social-web-to-lead.html
Pas à pas pour créer une application Favebook sur  Heroku :
https://devcenter.heroku.com/articles/facebook
Comment ajouter un onglet à une page Facebook ?
https://developers.facebook.com/docs/appsonfacebook/pagetabs/

Aucun commentaire:

Enregistrer un commentaire