vue Probleme creation de groupe dans gmail
Kommunauty
Connexion
Inscription

Probleme creation de groupe dans gmail


Typhon Messages : 2

Bonjour à tous,

Je viens vers vous car j'ai un problème au niveau d'un script.

Je m'explique, je suis entrain de développer un module en php/zendframework

pour pouvoir exporter les contacts d'une base de données vers un compte gmail.

J'ai réussi a récupérer les contacts gmail, créer des contacts dans gmail mais je suis bloqué sur la création de groupe.

Pourtant je l'impression de suivre le protocole de google.

donc voici le protocole google pour la création d'un groupe:

et voici donc ma fonction qui devrait me permettre de créer un groupe mais qui ne marchepas .

Clique pour afficher la zone invisible
Fermer ce cadre

<?php
$gdata = new Zend_Gdata($client);
  $gdata->setMajorProtocolVersion(3);

  // Ajout un nouvel utilisateur
  $doc  = new DOMDocument();
  $doc->formatOutput = true;
  $entry = $doc->createElement('atom:entry');
  $entry->setAttributeNS('http://www.w3.org/2000/xmlns/' ,
   'xmlns:atom', 'http://www.w3.org/2005/Atom');
  $entry->setAttributeNS('http://www.w3.org/2000/xmlns/' ,
   'xmlns:gd', 'http://schemas.google.com/g/2005');
  $doc->appendChild($entry);

$org = $doc->createElement('atom:category');
$org->setAttribute('scheme', 'http://schemas.google.com/g/2005#kind');
$org->setAttribute('term', 'http://schemas.google.com/contact/2008#group');
$entry->appendChild($org);

$org = $doc->createElement('atom:title');
$org->setAttribute('type', 'text');
$org->setAttribute('value', 'Salsa group');
$entry->appendChild($org);

$orgex = $doc->createElement('gd:extendedProperty');
$orgex->setAttribute('name', 'more info about the group');
$org->appendChild($orgex);

$info = $doc->createElement('info');
$info->setAttribute('value', 'Nice people.');
$orgex->appendChild($info);

// insert entry  
$entryResult = $gdata->insertEntry($doc->saveXML(),'https://www.google.com/m8/feeds/groups/adresse%40gmail.com/full');
echo  $entryResult->id."<br/>";

?>

Au niveau de insert entry il n'y a aucun retour de google.

Si quelqu'un parmis vous aurait une petite idée du problème

Petite exemple de fonction pour l'ajout de contact qui lui marche:

Clique pour afficher la zone invisible
Fermer ce cadre


<?php
function InsertContact($client, $objet)
{
$gdata = new Zend_Gdata($client);
  $gdata->setMajorProtocolVersion(3);
  
  // Ajout un nouvel utilisateur
  $doc  = new DOMDocument();
  $doc->formatOutput = true;
  $entry = $doc->createElement('atom:entry');
  $entry->setAttributeNS('http://www.w3.org/2000/xmlns/' ,
   'xmlns:atom', 'http://www.w3.org/2005/Atom');
  $entry->setAttributeNS('http://www.w3.org/2000/xmlns/' ,
   'xmlns:gd', 'http://schemas.google.com/g/2005');
    $entry->setAttributeNS('http://www.w3.org/2000/xmlns/' ,
   'xmlns:gContact', 'http://schemas.google.com/contact/2008');
  $doc->appendChild($entry);
        
  // add name element
  $name = $doc->createElement('gd:name');
  $entry->appendChild($name);
  $fn = $objet->getCivilite()." ".$objet->getPrenom()." ".$objet->getNom();
  $fullName = $doc->createElement('gd:fullName', $fn);
  $objet->getCivilite()!=NULL?$prefix = $doc->createElement('gd:namePrefix', $objet->getCivilite()):$prefix = $doc->createElement('gd:namePrefix', " ");
  $objet->getPrenom()!=NULL?$givenName = $doc->createElement('gd:givenName', $objet->getPrenom()):$givenName = $doc->createElement('gd:givenName', " ");
  $objet->getNom()!=NULL?$familyName = $doc->createElement('gd:familyName', $objet->getNom()):$familyName = $doc->createElement('gd:familyName', " ");
  $name->appendChild($fullName);
  $name->appendChild($prefix);
  $name->appendChild($givenName);
  $name->appendChild($familyName);
  
  // add email element
  $email = $doc->createElement('gd:email');
  $objet->getEmail()!=NULL?$email->setAttribute('address' ,$objet->getEmail()):$email->setAttribute('address' ," ");
  $email->setAttribute('rel' ,'http://schemas.google.com/g/2005#work');
  $entry->appendChild($email);
  
  // add org name element
  $org = $doc->createElement('gd:organization');
  $org->setAttribute('rel' ,'http://schemas.google.com/g/2005#other');
  $entry->appendChild($org);
  $objet->getTiersID()!=NULL?$orgName = $doc->createElement('gd:orgName', $objet->getTiersID()):$orgName = $doc->createElement('gd:orgName', " ");
  $objet->getFonctionLibelle()!=NULL?$orgTitle = $doc->createElement('gd:orgTitle', $objet->getFonctionLibelle()):$orgTitle = $doc->createElement('gd:orgTitle', " ");
  $org->appendChild($orgName);
  $org->appendChild($orgTitle);
        
  //add org structuredPostalAddress
  $org = $doc->createElement('gd:structuredPostalAddress');
  $org->setAttribute('rel' ,'http://schemas.google.com/g/2005#work');
  $entry->appendChild($org);
  if (($objet->getSite() != NULL) && ($objet->getSite() != 0))
  {
   //adresse du site
$adr=" ";
$adr .= $objet->getSiteAdresse()!=NULL&&$objet->getSiteAdresse()!=" "?$objet->getSiteAdresse():false;
$objet->getSiteAdresseComplementaire()!=NULL&&$objet->getSiteAdresseComplementaire()!=" "?$adr!=NULL?$adr.=" ".$objet->getSiteAdresseComplementaire():$adr.=$objet->getSiteAdresseComplementaire():false;
$objet->getSiteAdresseComplementaireSuite()!=NULL&&$objet->getSiteAdresseComplementaireSuite()!=" "?$adr!=NULL?$adr.=" ".$objet->getSiteAdresseComplementaireSuite():$adr.=$objet->getSiteAdresseComplementaireSuite():false;
$objet->getSiteCodePostal()!=NULL&&$objet->getSiteCodePostal()!=" "?$adr!=NULL?$adr.=" ".$objet->getSiteCodePostal():$adr.=$objet->getSiteCodePostal():false;
$objet->getSiteVille()!=NULL&&$objet->getSiteVille()!=" "?$adr!=NULL?$adr.=" ".$objet->getSiteVille():$adr.=$objet->getSiteVille():false;
$objet->getSitePays()!=NULL&&$objet->getSitePays()!=" "?$adr!=NULL?$adr.=" ".$objet->getSitePays():$adr.=$objet->getSitePays():false;
$orgformatAddress = $doc->createElement('gd:formattedAddress', $adr);
$objet->getSiteAdresse()!=NULL?$orgstreet = $doc->createElement('gd:street', $objet->getSiteAdresse()):$orgstreet = $doc->createElement('gd:street', " ");
$objet->getSiteAdresseComplementaire()!=NULL?$orgneighborhood = $doc->createElement('gd:neighborhood', $objet->getSiteAdresseComplementaire()):$orgneighborhood = $doc->createElement('gd:neighborhood'," ");
$objet->getSiteAdresseComplementaireSuite()!=NULL?$orgpobox = $doc->createElement('gdobox', $objet->getSiteAdresseComplementaireSuite()):$orgpobox = $doc->createElement('gdobox', " ");
$objet->getSiteCodePostal()!=NULL?$orgpostcode = $doc->createElement('gdostcode', $objet->getSiteCodePostal()):$orgpostcode = $doc->createElement('gdostcode', " ");
$objet->getSiteVille()!=NULL?$orgcity = $doc->createElement('gd:city', $objet->getSiteVille()):$orgcity = $doc->createElement('gd:city', " ");
$objet->getSitePays()!=NULL?$orgcountry = $doc->createElement('gd:country', $objet->getSitePays()):$orgcountry = $doc->createElement('gd:country', " ");
  }
  else
  {   
   //adresse perso
$adr=" ";
$adr .= $objet->getAdresse()!=NULL&&$objet->getAdresse()!=" "?$objet->getAdresse():false;
$objet->getAdresseComplementaire()!=NULL&&$objet->getAdresseComplementaire()!=" "?$adr!=NULL?$adr.=" ".$objet->getAdresseComplementaire():$adr.=$objet->getAdresseComplementaire():false;
$objet->getAdresseComplementaireSuite()!=NULL&&$objet->getAdresseComplementaireSuite()!=" "?$adr!=NULL?$adr.=" ".$objet->getAdresseComplementaireSuite():$adr.=$objet->getAdresseComplementaireSuite():false;
$objet->getCodePostal()!=NULL&&$objet->getCodePostal()!=" "?$adr!=NULL?$adr.=" ".$objet->getCodePostal():$adr.=$objet->getCodePostal():false;
$objet->getVille()!=NULL&&$objet->getVille()!=" "?$adr!=NULL?$adr.=" ".$objet->getVille():$adr.=$objet->getVille():false;
$objet->getPays()!=NULL&&$objet->getPays()!=" "?$adr!=NULL?$adr.=" ".$objet->getPays():$adr.=$objet->getPays():false;
$orgformatAddress = $doc->createElement('gd:formattedAddress', $adr);
$objet->getAdresse()!=NULL?$orgstreet = $doc->createElement('gd:street', $objet->getAdresse()):$orgstreet = $doc->createElement('gd:street', " ");
$objet->getAdresseComplementaire()!=NULL?$orgneighborhood = $doc->createElement('gd:neighborhood', $objet->getAdresseComplementaire()):$orgneighborhood = $doc->createElement('gd:neighborhood'," ");
$objet->getAdresseComplementaireSuite()!=NULL?$orgpobox = $doc->createElement('gdobox', $objet->getAdresseComplementaireSuite()):$orgpobox = $doc->createElement('gdobox', " ");
$objet->getCodePostal()!=NULL?$orgpostcode = $doc->createElement('gdostcode', $objet->getCodePostal()):$orgpostcode = $doc->createElement('gdostcode', " ");
$objet->getVille()!=NULL?$orgcity = $doc->createElement('gd:city', $objet->getVille()):$orgcity = $doc->createElement('gd:city', " ");
$objet->getPays()!=NULL?$orgcountry = $doc->createElement('gd:country', $objet->getPays()):$orgcountry = $doc->createElement('gd:country', " ");
  }
  $org->appendChild($orgformatAddress);
  $org->appendChild($orgneighborhood);
  $org->appendChild($orgpobox);
  $org->appendChild($orgpostcode);
  $org->appendChild($orgcity);
  $org->appendChild($orgcountry);
     
  //add org extended property
  $org = $doc->createElement('gd:extendedProperty');
  $org->setAttribute('name' ,'id_antidote');
  $org->setAttribute('value' ,$objet->getID());
  $entry->appendChild($org);


//Ajout dans un groupe
/*
  $org = $doc->createElement('gContact:groupMembershipInfo');
  $org->setAttribute('deleted' ,'false');
  $org->setAttribute('href' ,'http://www.google.com/m8/feeds/groups/adresse%40gmail.com/base/145255');
  $entry->appendChild($org);*/

  // insert entry
  $entryResult = $gdata->insertEntry($doc->saveXML(),'http://www.google.com/m8/feeds/contacts/default/full');
  //echo   $entryResult->id."<br/>";
}
?>

lundi 25 juillet 2011

Anonyme Messages : 0

Salut,

J'ai peut être quelques pistes pour toi:

http://mail.google.com/support/bin/answer.py?hl=fr&answer=30970

http://www.commentfaiton.com/fiche/voir/18882/comment-fait-on-pour-creer-des-groupes-dans-gmail-

@+

lundi 25 juillet 2011

Typhon Messages : 2

Ouai mais ça c'est avec une interface, mais enfaite c'est bon merci quand même j'ai trouvé ma faute... fallait faire:

<?php 
$org = $doc->createElement('atom:title', 'Salsa group');
$org->setAttribute('type', 'text');
$entry->appendChild($org);

 ?>
mardi 26 juillet 2011

Répondre Pour répondre, tu dois d'abord t'inscrire rapidement sur Kommunauty. Rejoins-nous vite !