DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Communication / Fonctions Google
  • Utilisation de la fonction GglConnecte (à partir de la version 20 ou de la mise à jour 19 - 89795)
GglConnecte (Exemple)
Utilisation de la fonction GglConnecte (à partir de la version 20 ou de la mise à jour 19 - 89795)
Cet exemple utilise le mode d'authentification "OAuth 2.0".
googleConnexion est un gglConnexion
googleConnexion.Email = gsGoogleCompte
// de la forme : nom_utilisateur@gmail.com
googleConnexion.ClientID = gsGoogleClientID
// de la forme :
// 568705434218-sed6r7rgd7alcnbehs67f1k5s6ixqz84q.apps.googleusercontent.com
googleConnexion.ClientSecret = gsGoogleClientSecret
// de la forme : kshKqXQPxUWmGLDiyBcmrCR2
// Pour créer un ID et un Secret, il faut :
// 1 - Avoir un compte Google
// (pas forcément celui auquel on se connecte,
// ce sera le compte associé à cette application)
// 2 - Créer un projet dans la console Google (https://code.google.com/apis/console)
// 3 - Créer un projet dans la console en indiquant l'identifiant voulu
// (avec les restrictions Google : entre 6 et 30 caractères, que des minuscules...)
// note : ce n'est pas cet identifiant qu'il faudra utiliser
// 4 - Sélectionner le projet dans la console Google et choisir "Activer une API",
// et activer "Calendar API" (et "Contact API" si vous utilisez les contacts)
// 5 - Dans la console, aller sur "Identifiant", puis "Créer un identifiant client",
// et "Application installée"
// ==> Google donne l'identifiant et la clé secrète
 
// Il faut mémoriser et le cas échéant restaurer les informations de connexion
// pour éviter de re-demander l'autorisation à chaque connexion
bufGoogleConnexion est un Buffer
sNomFichierTokenGoogle est une chaîne = fRepDonnées() + "\tokengoogle.bin"
 
// On a précédemment mémorisé une connexion ?
SI fFichierExiste(sNomFichierTokenGoogle) ALORS
// On restaure la connexion avec les autorisations qu'elle a
// pour ne pas re-demander à chaque fois les autorisations
QUAND EXCEPTION DANS
Désérialise(googleConnexion, fChargeBuffer(sNomFichierTokenGoogle), psdBinaire)
FAIRE
// Echec de la dé-sérialisation,
// le fichier est peut-être endommagé
// => il y aura une nouvelle demande d'authentification à l'utilisateur
FIN
FIN
 
// Connexion au compte Google
// ==> Ici la première fois, l'utilisateur devra valider une fenêtre d'authentification
SI PAS GglConnecte(googleConnexion, gglServiceAgenda) ALORS
Erreur(ErreurInfo())
   // Supprime le fichier qui contient le "token" précédent
// (la connexion a échoué : le token est donc invalide)
SI fFichierExiste(sNomFichierTokenGoogle) ALORS fSupprime(sNomFichierTokenGoogle)
// "Vide" la variable gglConnexion
// Note : il faudra donc ré-affecter
// les propriétés Email, ClientID, et ClientSecret
// avant de refaire la connexion
VariableRAZ(googleConnexion)
SINON
// Mémorisation de la connexion Google avec les informations d'autorisation
Sérialise(googleConnexion, bufGoogleConnexion, psdBinaire)
fSauveBuffer(sNomFichierTokenGoogle, bufGoogleConnexion)
 
// Récupération de l'agenda par défaut
AgendaExistant est un gglAgenda
AgendaExistant = GglRécupèreAgenda(googleConnexion)
SI ErreurDétectée ALORS
Erreur(ErreurInfo())
SINON
Info("Agenda récupéré !")
FIN
FIN
Version minimum requise
  • Version 14
Documentation également disponible pour…
Commentaires
ATTENTION
En production la connexion Google nécessite aussi WD200ole.DLL sinon vous aurez la fenêtre d'authentification Google qui apparaîtra vide.
André STASZEWSKI
06 oct. 2015

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale