Bibliothèque PHP pour l'API Google Contacts (V3)
Remarque: Si vous démarrez un nouveau projet, nous recommandons fortement d'utiliser notre package API Php Google People à la place. Il est plus capable que ce package et utilise une API plus récente qui sera probablement prise en charge plus longtemps.
Ce package et ses dépendances peuvent être installés à l'aide composer .
Il suffit d'exécuter composer require rapidwebltd/php-google-contacts-v3-api .
.config_blank.json à .config.json . Notez le point ( . ) Au début du nom du fichier.clientID , clientSecret et redirectUri dans .config.json .redirectUri doit être configuré pour pointer vers le fichier redirect-handler.php .clientID et clientSecret se trouvent dans la console Google Developers à https://console.develovers.google.com/ sous 'API & AUTH' -> 'IDEDALCATIONS', après avoir activé l'API Contacts.authorise-application.php dans un navigateur Web. Cela devrait vous donner une URL pour autoriser votre application pour les contacts Google.redirect-handler.php .redirect-handler.php doit alors vous présenter un jeton de rafraîchissement. Copiez-le dans votre .config.json .Une fois la bibliothèque installée et que les étapes de configuration et d'association de compte ont été terminées, vous pouvez utiliser la bibliothèque.
Si votre framework ne le fait pas pour vous, n'oubliez pas d'inclure le fichier vendor/autoload.php sur toutes les pages sur lesquelles vous souhaitez utiliser cette bibliothèque.
Le code suivant récupérera tous les contacts du compte Google associé.
$ contacts = rapidweb googlecontacts factories ContactFactory:: getAll ();
var_dump ( $ contacts ); La méthode ContactFactory::getAll() renvoie un tableau d'objets Contact . Les coordonnées du contact seront disponibles en tant que variables de membres publics de ces objets.
Le selfURL contenu dans chaque objet Contact est la référence unique à ce contact particulier. Si vous avez besoin de récupérer un contact spécifique à l'avenir, vous devrez stocker cette selfURL .
Pour récupérer un contact spécifique (par son selfurl), utilisez le code suivant.
$ selfURL = " ... " ;
$ contact = rapidweb googlecontacts factories ContactFactory:: getBySelfURL ( $ selfURL );
var_dump ( $ contact ); Cette méthode ContactFactory::getBySelfURL renverra un seul objet Contact .
Les propriétés de contact Google sont accessibles comme suit.
$ selfURL = " ... " ;
$ contact = rapidweb googlecontacts factories ContactFactory:: getBySelfURL ( $ selfURL );
echo $ contact -> name ;
echo $ contact -> phoneNumber ;
echo $ contact -> email ;
echo $ contact -> content ;La mise à jour des contacts Google à l'aide de cette bibliothèque se fait de manière très orientée objet.
Vous devez d'abord récupérer un objet Contact en utilisant l'une des méthodes mentionnées précédemment. Vous pouvez ensuite modifier les variables des membres publics de l'objet de contact. Pour récupérer ces modifications au service Google Contacts, vous passez ensuite l'objet modifié à la méthode ContactFactory::submitUpdates($contact) .
Le code suivant démontre en pleine récupération d'un contact, le modifiant et la soumission des mises à jour.
$ selfURL = " ... " ;
$ contact = rapidweb googlecontacts factories ContactFactory:: getBySelfURL ( $ selfURL );
var_dump ( $ contact );
$ contact -> name = ' Test ' ;
$ contact -> phoneNumber = ' 07812363789 ' ;
$ contact -> email = ' [email protected] ' ;
$ contact -> content = ' Note for example ' ;
$ contactAfterUpdate = rapidweb googlecontacts factories ContactFactory:: submitUpdates ( $ contact );
var_dump ( $ contactAfterUpdate ); La création d'un nouveau contact Google est très facile. Appelez simplement la méthode ContactFactory::create($name, $phoneNumber, $emailAddress) , en passant par des paramètres appropriés. Cette méthode renverra le contact créé en tant qu'objet Contact , y compris son selfURL nouvellement attribué.
$ name = " Frodo Baggins " ;
$ phoneNumber = " 06439111222 " ;
$ emailAddress = " [email protected] " ;
$ note = " Note for example " ;
$ newContact = rapidweb googlecontacts factories ContactFactory:: create ( $ name , $ phoneNumber , $ emailAddress , $ note );Chaque méthode a un argument facultatif pour la priorité du fichier de configuration. Il est utile lorsque vous souhaitez utiliser le travail avec plusieurs comptes Google en même temps.
$ customConfig = ( object ) array (
' clientID ' => ' <clientId which you get according to setup above> ' ,
' clientSecret ' => ' <clientSecret which you get according to setup above> ' ,
' redirectUri ' => ' <your redirect uri> ' ,
' developerKey ' => ' <developer key> ' ,
' refreshToken ' => ' <refresh token specific for google account> '
);
$ contacts = ContactFactory:: getAll ( $ customConfig );Vous devez définir toutes les variables car la configuration d'origine est complètement ignorée. Pour être plus précis, il ne doit pas du tout exister.
Jetez un œil aux fichiers suivants pour des exemples de base de la récupération des contacts. Ils peuvent également être utilisés pour vous assurer que vous avez actuellement associé votre compte Google à la bibliothèque.