Bonjour à tous,

Le but de ce que je dois mettre en place : synchroniser un agenda développer en interne avec Google Calendar.

Après quelques recherches, j'en suis arrivé à :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php include 'loader.php'; 
        require_once $Rep_interne.'lib/Google/Calendar/src/apiClient.php';
        require_once $Rep_interne.'lib/Google/Calendar/src/contrib/apiCalendarService.php';
 
        const CLIENT_ID = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
        const SERVICE_ACCOUNT_NAME = 'yyyyyyyyyyyyyyyyyyyyyyyyyyyyy';
        const KEY_FILE = 'zzzzzzzzzzzzzzzzz.p12';
 
 
        $client = new apiClient();
        $client->setApplicationName("Agenda tech");     
        if (isset($_SESSION['token'])) {
                $client->setAccessToken($_SESSION['token']);
        }
 
        $key = file_get_contents(KEY_FILE);
        $creds = new apiAssertionCredentials(SERVICE_ACCOUNT_NAME,array('https://www.googleapis.com/auth/calendar'),$key);
        $client->setAssertionCredentials($creds);
        $client->setClientId(CLIENT_ID);
 
        if ($client->getAccessToken()) {
                $_SESSION['token'] = $client->getAccessToken();
                
                $cal = new apiCalendarService($client);
 
                $event = new Event();
                $event->setSummary("test title");
                $start = new EventDateTime();
                $start->setDateTime('2012-07-15T09:25:00.000+02:00');
                $event->setStart($start);
                $end = new EventDateTime();
                $end->setDateTime('2012-07-15T20:25:00.000+02:00');
                $event->setEnd($end);
                $createdEvent = $cal->events->insert('primary', $event);
                var_dump($createdEvent);
                echo $createdEvent->getId();
        }
        
?>
Le var_dump($createdEvent) m'indique bien que l'évènement a été créé, mais lorsque je vérifie l'agenda il n'y a aucune entrée de créée.

Je suis preneur de toutes aides ou commentaires.