Changer la photo de profil de tous les contacts 👤 appartenant a un groupe de contact Le sujet est résolu

Avatar de l’utilisateur
Lolowr
Messages : 18
Inscription : 29 nov. 2022 17:16
A remercié : 8 fois

Changer la photo de profil de tous les contacts 👤 appartenant a un groupe de contact

Message par Lolowr »

Sujet :Changer la photo de profil de tous les contacts appartenant a un groupe de contact

Bonjour la Team,

A l aide d un google appscript est il possible de changer la photo de profil de tous les contacts appartenant a un groupe de contact "SORTIES PATIENTELE" par une photo stocker dans Google photo

Photo dans Google Photo : var nouvellePhotoUrl = 'https://lh3.googleusercontent.com/conta ... TQ4oLS-0xQ'; // URL de la nouvelle photo dans Google Photos

J''écris actuellement un Script qui me permetrais de travailler et d'affecter des Photos de Profil plutot Emojii ou Signalétique Visuelle à la place de la Photos de Profil

mais j'obtiens une  erreur à cette ligne en mode Debogage.  var response = UrlFetchApp.fetch(apiUrl, options);  // erreur à cette ligne en mode Debogage //
mais j'ai activé People API dans le script

17:10:32
Erreur
Exception: Request failed for https://people.googleapis.com returned code 404. Truncated server response: <!DOCTYPE html> <html lang=en> <meta charset=utf-8> <meta name=viewport content="initial-scale=1, minimum-scale=1, width=device-width"> <titl... (use muteHttpExceptions option to examine full response)
changerPhotoProfilAPIPeople
@Code.gs:27
//

function changerPhotoProfilAPIPeople() {
var groupeContacts = 'SORTIES PATIENTELE'; // Nom du groupe de contacts
var nouvellePhotoUrl = 'URL_de_la_photo_dans_Google_Photos'; // URL de la nouvelle photo dans Google Photos
var nouvellePhotoUrl = 'https://lh3.googleusercontent.com/conta ... TQ4oLS-0xQ'; // URL de la nouvelle photo dans Google Photos
var contacts = ContactsApp.getContactGroup(groupeContacts).getContacts();
for (var i = 0; i < contacts.length; i++) {
var contact = contacts;
var resourceId = contact.getId().split('/')[1];
var apiUrl = 'https://people.googleapis.com/v1/people/' + resourceId + ':updateContactPhoto';
var accessToken = ScriptApp.getOAuthToken();
var requestBody = {
photoBytes: UrlFetchApp.fetch(nouvellePhotoUrl).getContent(),
};
var options = {
method: 'post',
contentType: 'application/octet-stream',
headers: {
'Authorization': 'Bearer ' + accessToken,
},
payload: JSON.stringify(requestBody),
};
var response = UrlFetchApp.fetch(apiUrl, options);  // erreur à cette ligne en mode Debogage
Utilities.sleep(1000); // Attendre 1 seconde entre chaque mise à jour de photo (pour éviter les limitations)
}
}

 
Pièces jointes
Capture d’écran 2023-06-01 à 17.33.35.png
Capture d’écran 2023-06-01 à 17.33.35.png (64.38 Kio) Consulté 7197 fois
Avatar de l’utilisateur
NC_Quentin

Coach Numericoach
Invétéré
Messages : 32
Inscription : 10 oct. 2022 09:06
A remercié : 1 fois
Remercié : 11 fois

Re: Changer la photo de profil de tous les contacts 👤 appartenant a un groupe de contact

Message par NC_Quentin »

Bonjour !

Pour utiliser l’API People, il faut l’ajouter aux Services dans vos scripts. Après quoi, après avoir récupéré les différents contacts, il vous faudra effectivement faire une boucle en utilisant la méthode updateContactPhoto sur les contacts en question. 

C’est loin d’être trivial, mais avec ça, vous devriez vous en sortir !
Répondre

Rejoignez la discussion 💬

Vous devez être enregistré pour participer à la discussion et échanger avec les différents membres

Inscrivez-vous dès aujourd'hui

Vous n'êtes pas encore membre ? Rejoignez-nous gratuitement dès aujourd'hui et contribuer en postant votre réponse ou question sur tous les forums disponibles

Inscription

Connectez-vous