@algaillard m’a parlé de Smartcar que je ne connaissais pas mais avec l’aide de Gemini, il est possible de récupérer les infos une fois le véhicule inscrit sur Smartcar et surtout de donner des ordres comme lancer ou stopper une recharge électrique.
Étape 1 : Obtenir les identifiants d’API Smartcar
-
Connectez-vous à votre espace développeur sur le Dashboard Smartcar.
-
Créez une nouvelle application.
-
Dans le menu de gauche, rendez-vous dans Configuration puis ouvrez l’onglet API credentials.
-
Copiez et notez précieusement le Client ID.
-
Cliquez sur Generate new secret pour générer votre clé secrète (Client Secret). Notez-la immédiatement, car elle ne s’affichera qu’une seule fois.
Étape 2 : Associer le véhicule et récupérer les identifiants uniques
-
Dans le menu de gauche de votre tableau de bord Smartcar, allez sur l’onglet Vehicles.
-
En haut à droite de l’écran, cliquez sur le bouton Share Connect link.
-
Ouvrez le lien généré dans un nouvel onglet de votre navigateur.
-
Sélectionnez la marque de votre véhicule, puis connectez-vous à l’aide des identifiants de votre application mobile constructeur officielle.
-
Une fois la validation terminée, fermez la fenêtre d’association : votre véhicule apparaît instantanément dans la liste sur votre tableau de bord Smartcar.
-
Copiez et notez les deux identifiants affichés dans les colonnes de votre écran :
-
User ID
-
Vehicle ID
-
Étape 3 : Déployer le script PHP sur Jeedom
Connectez-vous en SSH à votre serveur Jeedom (ou utilisez l’éditeur de fichiers intégré) pour créer le script de commande, par exemple ici: /var/www/html/plugins/script/data/smartcar_charge.php
Remplissez smartcar_charge.php avec ce code qu’il faudra adapter (en haut) avec vos données de connexion:
<?php
// /var/www/html/plugins/script/data/smartcar_charge.php
$client_id = 'VOTRE_CLIENT_ID'; // À remplacer par votre Client ID Smartcar
$client_secret = 'VOTRE_CLIENT_SECRET_M2M'; // À remplacer par votre Client Secret M2M
$user_id = 'VOTRE_USER_ID'; // À remplacer par votre User ID
$vehicle_id = 'VOTRE_VEHICLE_ID'; // À remplacer par votre Vehicle ID unique
// 1. Get global application token (V3 - Client Credentials Flow)
$ch = curl_init('https://iam.smartcar.com/oauth2/token');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_USERPWD => "$client_id:$client_secret",
CURLOPT_POSTFIELDS => http_build_query([
'grant_type' => 'client_credentials'
]),
]);
$token_auth = json_decode(curl_exec($ch), true);
curl_close($ch);
$access_token = $token_auth['access_token'] ?? null;
if (!$access_token) {
die("Error: Unable to retrieve application token. Check your client_secret.");
}
// 2. Determine command action (START or STOP)
$action = strtoupper($_GET['action'] ?? 'START');
$endpoint_action = ($action === 'STOP') ? 'stop' : 'start';
// 3. Send the charging command directly to the vehicle via API V3
$ch_cmd = curl_init("https://vehicle.api.smartcar.com/v3/vehicles/$vehicle_id/commands/charge/$endpoint_action");
curl_setopt_array($ch_cmd, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer $access_token",
"sc-user-id: $user_id",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS => '{}', // Corps vide requis pour valider la requête POST
]);
$result = curl_exec($ch_cmd);
$http_code = curl_getinfo($ch_cmd, CURLINFO_HTTP_CODE);
curl_close($ch_cmd);
echo "Action: $action | HTTP Status $http_code | Response: $result";
Étape 4 : Configuration dans Jeedom
-
Ouvrez votre interface Jeedom et accédez au plugin Script (Plugins > Programmation > Script).
-
Ajoutez un nouvel équipement (ex: Mon Véhicule Électrique).
-
Rendez-vous dans l’onglet Commandes et ajoutez deux commandes de type Action / Défaut en HTTP :
| Nom de la commande | Type | Requête / URL de commande |
|---|---|---|
| Démarrer Charge | Action | https://VOTRE_DOMAINE_JEEDOM/plugins/script/data/smartcar_charge.php?action=START |
| Arrêter Charge | Action | https://VOTRE_DOMAINE_JEEDOM/plugins/script/data/smartcar_charge.php?action=STOP |
(Veillez à remplacer VOTRE_DOMAINE_JEEDOM par l’adresse d’accès locale ou externe de votre box).
- Sauvegardez l’équipement. Vous disposez maintenant de deux boutons fonctionnels sur votre dashboard Jeedom pour piloter votre charge à la demande ou les intégrer au sein de vos scénarios automatiques (gestion des heures creuses, surplus photovoltaïque, etc.).
Il doit également être possible d’avoir les infos (kilométrage, pourcentage de charge, etc.).. à vous de jouer ![]()
EDIT du 18.6.26 - message de smartcar:
Unfortunately we don’t offer the ability to control HVAC via Smartcar’s API for VW’s in Europe. Our partnership with VW only enables us to manage electric vehicle charging. You can see more about the signals and commands supported for different vehicles here: https://compatibility.smartcar.com/.
une piste alternative à creuser: GitHub - TA2k/ioBroker.vw-connect: ioBroker Adapter for VW We connect and Skoda connect · GitHub