Erreur last Beta plugin-hyundaibluelink

Malheureusement non, dans l’api Bluelink, les deux appels sont malheureusement séparés. Et comme le nombre d’appel par jour est limité (200 par véhicule), j’ai choisi de ne pas regrouper ces informations de mon coté non plus.

Bonjour
J’ai changé d’hébergement de ma Jeedom en passant d’une VM sur Freebox Delta à une JeedUP. J’ai réinstallé avec succès tous mes plugin, sauf le plugin Hyndai
Le démon ne se lance pas (voir ci dessous le log)
J’ai un compte sur Hyundai et je n’en ai jamais eu sur Bluelink
Pouvez vous m’aider SVP
Merci

message: 'Deamon hyundaibluelink_node is starting',
level: 'info',
timestamp: '2021-05-01T20:32:27.535Z'
}
{
message: 'Checking the pin code validity',
level: 'debug',
timestamp: '2021-05-01T20:32:30.404Z'
}
{
message: 'Deamon hyundaibluelink_node started',
level: 'info',
timestamp: '2021-05-01T20:32:30.569Z'
}
events.js:291
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE: address already in use :::8090
at Server.setupListenHandle [as _listen2] (net.js:1316:16)
at listenInCluster (net.js:1364:12)
at Server.listen (net.js:1450:7)
at Function.listen (/var/www/html/plugins/hyundaibluelink/node/node_modules/express/lib/application.js:618:24)
at ge (/var/www/html/plugins/hyundaibluelink/node/main.js:1:10932)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Emitted 'error' event on Server instance at:
at emitErrorNT (net.js:1343:8)
at processTicksAndRejections (internal/process/task_queues.js:84:21) {
code: 'EADDRINUSE',
errno: 'EADDRINUSE',
syscall: 'listen',
address: '::',
port: 8090
}
{
saisir ou coller le code ici

Bonjour @pme999,

Le type d’erreur EADDRINUSE est lié au fait que le port (le mécanisme technique qui permet a jeedom de communiquer avec le démon est déjà utilisé par une autre application).

Si le message Deamon hyundaibluelink_node started s’affiche c’est que l’authentification c’est déroulée correctement, il est donc probable que ce soit purement un problème lié au port.

Je vais donc déployer une version beta qui permet de configurer le port en question.

Une fois la beta installée:

  • Mettre à jours les dépendances (il y a du nouveau sur l’authentification aussi)
  • Changer le port dans la configuration du plugin (8090 par défaut), le remplacer par un autre nombre
    • :warning: seul un port disponible fera l’affaire, ça va de 1000 à 65 535 donc on devrais finir par en trouver un de libre
  • Redémarrer le démon

Une version stable est en cours de réalisation pour intégrer définitivement cet aspect.

Salut @pme999,
tu peux avoir la liste de tous les ports en écoute avec cette commande :

netstat -paunt |grep LISTEN

dessous tu vois mon port 80 ouvert par l’apache (HTTP)

Avec cette commande tu vas trouver le processus qui utilise le port 8090 (surement un serveur web) et tu pourras modifier le port dans la conf du processus…

Salut @NeoPixl,
dans mon plugin, j’ai fait une mise à jour forcé en cas de mouvement de la voiture.
Par défaut j’ai mis un cron sur 15min et si la voiture est en mouvement je passe à 3min tant qu’elle roule.
Je l’ai paramétré avec mon utilisation 40min maximum par jour.
Donc si la voiture ne roule pas, j’ai 72 interrogations par jour.
Si tu roule pendant 1 heure ca fait 180 interrogations !

Hello @cstan77,

Effectivement le nombre d’action envoyés au véhicule est limité par jour. La limite est a 200 chez Kia, mais j’imagine que chez Hyundai c’est pareil. (API Rate Limits · Hacksore/bluelinky Wiki · GitHub)

L’actualisation dite forcée (depuis le véhicule) compte pour 1, le GPS aussi, et l’odomètre aussi. Dans le plugin, l’utilisateur peu configurer le rythme d’actualisation, et je propose des valeurs plutôt lente par défaut pour limiter ce risque.

Pour gérer ça au mieux, j’ai ajouté un mode live (Plugin Kia UVO | jeedom-kiauvo-documentation) qui suite au déclenchement d’une action utilisateur accélère la récupération des information. En ce qui me concerne j’utilise Automate sur Android pour détecter la connexion/deconnexion du Bluetooth pour activer/désactiver ce mode.

Donc hors live, => récupération lente.
En live => récupération toutes les deux minutes (configurable ça aussi) (GPS + Status) soit ~60 requêtes par heure de route.

Salut,
Peux-tu me dire à quoi correspondent ces boutons, je ne les avais jamais remarqués ?

Cool, un grand merci… J’attends donc la beta . Faut il ouvrir le port en question sur le routeur ?
Merci aussi @cstan77 pour ton aide. Je viens de lancer la commande sur ma Jeedup. Voici le résultat :
Il y a bien le port 8090
root@jeedup:/home/jeedup# netstat -paunt |grep LISTEN
tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN 534/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 523/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1056/exim4
tcp 0 0 127.0.0.1:9050 0.0.0.0:* LISTEN 624/tor
tcp 0 0 127.0.0.1:55070 0.0.0.0:* LISTEN 1427/python3
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 652/mysqld
tcp6 0 0 :::21 :::* LISTEN 980/proftpd: (accep
tcp6 0 0 :::53 :::* LISTEN 534/dnsmasq
tcp6 0 0 :::22 :::* LISTEN 523/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1056/exim4
tcp6 0 0 :::8090 :::* LISTEN 655/apache2
tcp6 0 0 :::443 :::* LISTEN 655/apache2
tcp6 0 0 :::3456 :::* LISTEN 1400/nodejs
tcp6 0 0 :::80 :::* LISTEN 655/apache2

Rebonjour @NeoPixl
Je viens de charger la beta et j’ai mis un nouveau port (9046). J’ai relancé les dépendances et le démon est passé au vert… mais lorsque je vais sur le plugin, j’ai un bandeau rouge : La connexion au démon Bluelink à échoué, assurez vous qu’il est démarré. Details : http://127.0.0.1:9046/cars?key=****** Curl error : Failed to connect to 127.0.0.1 port 9046: Connection refused

Si cela peut aider, j’ai aussi le log http avec ces erreurs…
sh: 1: cannot create /var/www/html/core/class/…/…/log/cron_execution: Permission denied
sh: 1: cannot create /var/www/html/core/class/…/…/log/cron_execution: Permission denied
sh: 1: cannot create /var/www/html/core/class/…/…/log/cron_execution: Permission denied
sh: 1: kill: Operation not permitted
sh: 1: kill: Operation not permitted
sh: 1: kill: Operation not permitted
sh: 1: kill: Operation not permitted
kill: (11257): No such process
kill: (11259): No such process
sh: 1: cannot create /var/www/html/core/class/…/…/log/hyundaibluelink_node: Permission denied
sh: 1: cannot create /var/www/html/core/class/…/…/log/cron_execution: Permission denied
sh: 1: cannot create /var/www/html/core/class/…/…/log/cron_execution: Permission denied
sh: 1: cannot create /var/www/html/core/class/…/…/log/hyundaibluelink_node: Permission denied
sh: 1: cannot create /var/www/html/core/class/…/…/log/hyundaibluelink_node: Permission denied
sh: 1: cannot create /var/www/html/core/class/…/…/log/hyundaibluelink_node: Permission denied

Désolé mais je ne suis pas très familier de ces sujets… encore merci pour ton aide
Patrice

Bon, je donne tout ce que je trouve…
Un nouveau log vient d’apparaitre sur le Bluelink-node :

[2021-05-02 18:56:09] e[31merrore[39m: @EuropeController.login: sign in with EuropeanBrandAuthStrategy failed with error RequestError: socket hang up
{
source: GotError [HTTPError]: Response code 400 (Bad Request)
at EventEmitter.<anonymous> (/var/www/html/plugins/hyundaibluelink/node/node_modules/got/source/as-promise.js:74:19)
at processTicksAndRejections (internal/process/task_queues.js:97:5) {
host: 'prd.eu-ccapi.hyundai.com:8080',
hostname: 'prd.eu-ccapi.hyundai.com',
method: 'POST',
path: '/api/v1/user/signin',
socketPath: undefined,
protocol: 'https:',
url: 'https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin',
gotOptions: {
path: '/api/v1/user/signin',
protocol: 'https:',
slashes: true,
auth: null,
host: 'prd.eu-ccapi.hyundai.com:8080',
port: '8080',
hostname: 'prd.eu-ccapi.hyundai.com',
hash: null,
search: null,
query: null,
pathname: '/api/v1/user/signin',
href: 'https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin',
retry: {
retries: [Function],
methods: Set { 'GET', 'PUT', 'HEAD', 'DELETE', 'OPTIONS', 'TRACE' },
statusCodes: Set { 408, 413, 429, 500, 502, 503, 504 },
errorCodes: Set {
'ETIMEDOUT',
'ECONNRESET',
'EADDRINUSE',
'ECONNREFUSED',
'EPIPE',
'ENOTFOUND',
'ENETUNREACH',
'EAI_AGAIN'
}
},
headers: {
'user-agent': 'got/9.6.0 (https://github.com/sindresorhus/got)',
accept: 'application/json',
'accept-encoding': 'gzip, deflate',
'content-type': 'application/json',
'content-length': 61,
cookie: 'account=NzI5ZWViNWYtMDk4Ni00YmNiLWIwMjAtZTlhOTk3ZTdlNjc3.5d6cf40e967de8af0c89c05ded8c3b818ebe5a14; TS0154565f=01cbaa6f70999b490ca37067a4a9ad9ce2000f10dfc14d67c146b52b4d4e3c475a0a2a7d70037144789e3a8d6de4fefedf032b51953c6cdb10e890482ae1f7e3e9cf1c4eb6'
},
hooks: {
beforeRequest: [],
beforeRedirect: [],
beforeRetry: [],
afterResponse: [],
beforeError: [],
init: []
},
decompress: true,
throwHttpErrors: true,
followRedirect: true,
stream: false,
form: false,
json: true,
cache: false,
useElectronNet: false,
method: 'POST',
body: '{"email"XXXXXXXX"","password":"XXXXXXXX?"}',
cookieJar: CookieJar {
rejectPublicSuffixes: true,
enableLooseMode: false,
allowSpecialUseDomain: false,
store: { idx: {
'prd.eu-ccapi.hyundai.com': {
'/': {
account: Cookie="account=NzI5ZWViNWYtMDk4Ni00YmNiLWIwMjAtZTlhOTk3ZTdlNjc3.5d6cf40e967de8af0c89c05ded8c3b818ebe5a14; Expires=Sun, 02 May 2021 17:56:09 GMT; Max-Age=3600; Path=/; HttpOnly; hostOnly=true; aAge=151ms; cAge=383ms",
TS0154565f: Cookie="TS0154565f=01cbaa6f70999b490ca37067a4a9ad9ce2000f10dfc14d67c146b52b4d4e3c475a0a2a7d70037144789e3a8d6de4fefedf032b51953c6cdb10e890482ae1f7e3e9cf1c4eb6; Path=/; hostOnly=true; aAge=152ms; cAge=384ms"
}
}
} },
prefixSecurity: 'silent',
_cloneSync: [Function],
_importCookiesSync: [Function],
getCookiesSync: [Function],
getCookieStringSync: [Function],
getSetCookieStringsSync: [Function],
removeAllCookiesSync: [Function],
setCookieSync: [Function],
serializeSync: [Function]
}
},
statusCode: 400,
statusMessage: 'Bad Request',
headers: {
'ccsp-request-id': '2e7321ff-aa0a-4705-ab9a-5ce4534cea28',
'ccsp-span-id': '4',
'content-length': '133',
'content-type': 'application/json',
date: 'Sun, 02 May 2021 16:56:10 GMT',
vary: 'Origin',
'x-ratelimit-limit': '0',
'x-ratelimit-remaining': '0',
'x-ratelimit-reset': '0',
connection: 'close'
},
body: {
errId: '2e7321ff-aa0a-4705-ab9a-5ce4534cea28',
errCode: '4003',
errMsg: 'Invalid values',
errBody: { userId: '', remainTime: 300 }
}
},
name: 'ManagedBluelinkyError',
level: 'error',
message: '@EuropeController.login: [400] Bad Request on [POST] https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin - {"errId":"2e7321ff-aa0a-4705-ab9a-5ce4534cea28","errCode":"4003","errMsg":"Invalid values","errBody":{"userId":"","remainTime":300}}',
stack: 'ManagedBluelinkyError: @EuropeController.login: [400] Bad Request on [POST] https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin - {"errId":"2e7321ff-aa0a-4705-ab9a-5ce4534cea28","errCode":"4003","errMsg":"Invalid values","errBody":{"userId":"","remainTime":300}}\n' +
'    at d (/var/www/html/plugins/hyundaibluelink/node/node_modules/bluelinky/dist/index.js:17:144947)\n' +
'    at Y.<anonymous> (/var/www/html/plugins/hyundaibluelink/node/node_modules/bluelinky/dist/index.js:17:169022)\n' +
'    at Generator.throw (<anonymous>)\n' +
'    at P (/var/www/html/plugins/hyundaibluelink/node/node_modules/bluelinky/dist/index.js:17:136)\n' +
'    at processTicksAndRejections (internal/process/task_queues.js:97:5)',
timestamp: '2021-05-02T16:56:10.189Z'
}
{
message: 'Deamon hyundaibluelink_node is starting',
level: 'info',
timestamp: '2021-05-02T16:57:05.277Z'
}

Effectivement il semble que le port 8090 soit déjà utilisé sur votre machine. Ce port ne fais pas lié a un protocole particulier (TCP/UDP Ports -> Port 8090) mais on a effectivement un conflit ici.

tcp6 0 0 :::8090 :::* LISTEN 655/apache2

Le changer était donc effectivement nécessaire.

Pour la suite des erreurs, il s’agit vraisemblablement de la tentative de redémarrage du démon. Ca ressemble a un problème d’autorisation system sur la machine. C’est habituellement Jeedom qui gère cette partie, donc c’est étonnant.

Visiblement se service finis par se lancer et tenter de se connecter.
Cette ligne sign in with EuropeanBrandAuthStrategy failed with error RequestError: socket hang up que le plugin a essayer de se connecter avec le nouveau système d’authentification et a échoué.
Il essai ensuite de se connecter avec l’ancien système mais échoue aussi.

Pour avoir plus de détails sur ce qui se passe, pouvez vous mettre les niveau de logs du plugin en mode debug. Les logs seront beaucoup plus riches et nous aiderons peut-être a mieux comprendre le problème.

Bonjour,
Il s’agit des boutons permettant d’activer et de désactiver le mode live que j’évoquais plus tôt avec @cstan77 Erreur last Beta plugin-hyundaibluelink - #31 par NeoPixl.

Une documentation est disponible ici: Plugin Hyundai Bluelink | jeedom-hyundaibluelink-documentation

Merci, a priori ça ne sert pas à grand chose.

C’est utile pour ceux qui cherchent a avoir des stats plus régulières sur leurs véhicule quand ils sont sur la route. C’est notamment le cas avec les propriétaires de voiture électrique qui utilisent ABRP pour leurs itinéraires et qui cherchent a optimiser leurs parcours et leurs pauses charge en fonction du niveau de batterie, leur consommation moyenne…

Comme la bêta n’a pas l’air de fonctionner chez toi, tu peux modifier le port 8090 dans ton fichier de configuration apache/http.
Il est dans /etc/apache2/ normalement tout dépend de la version et du noyau de ton Linux.
3 ports http c’est rare par défaut.
Ensuite du redémarre le service pour prendre en compte la modification

Bonsoir.
J’ai activé le mode débug et voici le log. Je ne sais pas si cela aidera…
Merci encore
Patrice


message: 'Deamon hyundaibluelink_node is starting',
level: 'info',
timestamp: '2021-05-02T18:56:43.472Z'
}
{
message: 'Deamon hyundaibluelink_node is starting',
level: 'info',
timestamp: '2021-05-02T18:57:02.125Z'
}
[2021-05-02 21:00:06] e[31merrore[39m: @EuropeController.login: sign in with EuropeanBrandAuthStrategy failed with error RequestError: socket hang up
{
source: GotError [HTTPError]: Response code 400 (Bad Request)
at EventEmitter.<anonymous> (/var/www/html/plugins/hyundaibluelink/node/node_modules/got/source/as-promise.js:74:19)
at processTicksAndRejections (internal/process/task_queues.js:97:5) {
host: 'prd.eu-ccapi.hyundai.com:8080',
hostname: 'prd.eu-ccapi.hyundai.com',
method: 'POST',
path: '/api/v1/user/signin',
socketPath: undefined,
protocol: 'https:',
url: 'https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin',
gotOptions: {
path: '/api/v1/user/signin',
protocol: 'https:',
slashes: true,
auth: null,
host: 'prd.eu-ccapi.hyundai.com:8080',
port: '8080',
hostname: 'prd.eu-ccapi.hyundai.com',
hash: null,
search: null,
query: null,
pathname: '/api/v1/user/signin',
href: 'https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin',
retry: {
retries: [Function],
methods: Set { 'GET', 'PUT', 'HEAD', 'DELETE', 'OPTIONS', 'TRACE' },
statusCodes: Set { 408, 413, 429, 500, 502, 503, 504 },
errorCodes: Set {
'ETIMEDOUT',
'ECONNRESET',
'EADDRINUSE',
'ECONNREFUSED',
'EPIPE',
'ENOTFOUND',
'ENETUNREACH',
'EAI_AGAIN'
}
},
headers: {
'user-agent': 'got/9.6.0 (https://github.com/sindresorhus/got)',
accept: 'application/json',
'accept-encoding': 'gzip, deflate',
'content-type': 'application/json',
'content-length': 61,
cookie: 'account=NzU4NDVhMzEtY2YwOC00ZGIwLTg5ODEtNjc0MTFhNTBmOGY3.d9c9d0e0235478a5dd5f5fe1f77cb45ee22d5acd; TS0154565f=01cbaa6f701f3c50071dde7d57c4f4841568cc5b75b60df58598b82831a467550e087a1f4189fceb69ddbc5b04ba52581f13fc9312b09e91400e49c8be722d1a20c2ea2116'
},
hooks: {
beforeRequest: [],
beforeRedirect: [],
beforeRetry: [],
afterResponse: [],
beforeError: [],
init: []
},
decompress: true,
throwHttpErrors: true,
followRedirect: true,
stream: false,
form: false,
json: true,
cache: false,
useElectronNet: false,
method: 'POST',
body: '{"email":"XXXXXXXX","password":"XXXXX"}',
cookieJar: CookieJar {
rejectPublicSuffixes: true,
enableLooseMode: false,
allowSpecialUseDomain: false,
store: { idx: {
'prd.eu-ccapi.hyundai.com': {
'/': {
account: Cookie="account=NzU4NDVhMzEtY2YwOC00ZGIwLTg5ODEtNjc0MTFhNTBmOGY3.d9c9d0e0235478a5dd5f5fe1f77cb45ee22d5acd; Expires=Sun, 02 May 2021 20:00:06 GMT; Max-Age=3600; Path=/; HttpOnly; hostOnly=true; aAge=147ms; cAge=383ms",
TS0154565f: Cookie="TS0154565f=01cbaa6f701f3c50071dde7d57c4f4841568cc5b75b60df58598b82831a467550e087a1f4189fceb69ddbc5b04ba52581f13fc9312b09e91400e49c8be722d1a20c2ea2116; Path=/; hostOnly=true; aAge=149ms; cAge=384ms"
}
}
} },
prefixSecurity: 'silent',
_cloneSync: [Function],
_importCookiesSync: [Function],
getCookiesSync: [Function],
getCookieStringSync: [Function],
getSetCookieStringsSync: [Function],
removeAllCookiesSync: [Function],
setCookieSync: [Function],
serializeSync: [Function]
}
},
statusCode: 400,
statusMessage: 'Bad Request',
headers: {
'ccsp-request-id': '53c168ae-930b-44b0-a011-c2afbe5add7b',
'ccsp-span-id': '4',
'content-length': '149',
'content-type': 'application/json',
date: 'Sun, 02 May 2021 19:00:07 GMT',
vary: 'Origin',
'x-ratelimit-limit': '0',
'x-ratelimit-remaining': '0',
'x-ratelimit-reset': '0',
connection: 'close'
},
body: {
errId: '53c168ae-930b-44b0-a011-c2afbe5add7b',
errCode: '4003',
errMsg: 'Invalid values',
errBody: { userId: '', remainCount: 4, remainTime: 300 }
}
},
name: 'ManagedBluelinkyError',
level: 'error',
message: '@EuropeController.login: [400] Bad Request on [POST] https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin - {"errId":"53c168ae-930b-44b0-a011-c2afbe5add7b","errCode":"4003","errMsg":"Invalid values","errBody":{"userId":"","remainCount":4,"remainTime":300}}',
stack: 'ManagedBluelinkyError: @EuropeController.login: [400] Bad Request on [POST] https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin - {"errId":"53c168ae-930b-44b0-a011-c2afbe5add7b","errCode":"4003","errMsg":"Invalid values","errBody":{"userId":"","remainCount":4,"remainTime":300}}
' +
'    at d (/var/www/html/plugins/hyundaibluelink/node/node_modules/bluelinky/dist/index.js:17:144947)
' +
'    at Y.<anonymous> (/var/www/html/plugins/hyundaibluelink/node/node_modules/bluelinky/dist/index.js:17:169022)
' +
'    at Generator.throw (<anonymous>)
' +
'    at P (/var/www/html/plugins/hyundaibluelink/node/node_modules/bluelinky/dist/index.js:17:136)
' +
'    at processTicksAndRejections (internal/process/task_queues.js:97:5)',
timestamp: '2021-05-02T19:00:07.386Z'
}
{
message: 'Deamon hyundaibluelink_node is starting',
level: 'info',
timestamp: '2021-05-02T19:01:02.724Z'
}
[2021-05-02 21:04:07] e[31merrore[39m: @EuropeController.login: sign in with EuropeanBrandAuthStrategy failed with error RequestError: socket hang up
{
source: GotError [HTTPError]: Response code 400 (Bad Request)
at EventEmitter.<anonymous> (/var/www/html/plugins/hyundaibluelink/node/node_modules/got/source/as-promise.js:74:19)
at processTicksAndRejections (internal/process/task_queues.js:97:5) {
host: 'prd.eu-ccapi.hyundai.com:8080',
hostname: 'prd.eu-ccapi.hyundai.com',
method: 'POST',
path: '/api/v1/user/signin',
socketPath: undefined,
protocol: 'https:',
url: 'https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin',
gotOptions: {
path: '/api/v1/user/signin',
protocol: 'https:',
slashes: true,
auth: null,
host: 'prd.eu-ccapi.hyundai.com:8080',
port: '8080',
hostname: 'prd.eu-ccapi.hyundai.com',
hash: null,
search: null,
query: null,
pathname: '/api/v1/user/signin',
href: 'https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin',
retry: {
retries: [Function],
methods: Set { 'GET', 'PUT', 'HEAD', 'DELETE', 'OPTIONS', 'TRACE' },
statusCodes: Set { 408, 413, 429, 500, 502, 503, 504 },
errorCodes: Set {
'ETIMEDOUT',
'ECONNRESET',
'EADDRINUSE',
'ECONNREFUSED',
'EPIPE',
'ENOTFOUND',
'ENETUNREACH',
'EAI_AGAIN'
}
},
headers: {
'user-agent': 'got/9.6.0 (https://github.com/sindresorhus/got)',
accept: 'application/json',
'accept-encoding': 'gzip, deflate',
'content-type': 'application/json',
'content-length': 61,
cookie: 'account=M2I5NmZkYjctNjFmZS00ODE5LTgyNWQtYjRhNmE5ZjczYjc4.8e626bbff35f18b1a8449b3ca67028b91993c9a5; TS0154565f=01cbaa6f708e5444c65474aeb311602ba4ee9ad6ebeda3d596080a78e36da1615894862fb7e2b29332115d5bd286c408309113450faf329dea4529898122a668e815c4b33c'
},
hooks: {
beforeRequest: [],
beforeRedirect: [],
beforeRetry: [],
afterResponse: [],
beforeError: [],
init: []
},
decompress: true,
throwHttpErrors: true,
followRedirect: true,
stream: false,
form: false,
json: true,
cache: false,
useElectronNet: false,
method: 'POST',
body: '{"email":"XXXXXXXXX","password":"XXXXXXXX"}',
cookieJar: CookieJar {
rejectPublicSuffixes: true,
enableLooseMode: false,
allowSpecialUseDomain: false,
store: { idx: {
'prd.eu-ccapi.hyundai.com': {
'/': {
account: Cookie="account=M2I5NmZkYjctNjFmZS00ODE5LTgyNWQtYjRhNmE5ZjczYjc4.8e626bbff35f18b1a8449b3ca67028b91993c9a5; Expires=Sun, 02 May 2021 20:04:07 GMT; Max-Age=3600; Path=/; HttpOnly; hostOnly=true; aAge=149ms; cAge=376ms",
TS0154565f: Cookie="TS0154565f=01cbaa6f708e5444c65474aeb311602ba4ee9ad6ebeda3d596080a78e36da1615894862fb7e2b29332115d5bd286c408309113450faf329dea4529898122a668e815c4b33c; Path=/; hostOnly=true; aAge=150ms; cAge=377ms"
}
}
} },
prefixSecurity: 'silent',
_cloneSync: [Function],
_importCookiesSync: [Function],
getCookiesSync: [Function],
getCookieStringSync: [Function],
getSetCookieStringsSync: [Function],
removeAllCookiesSync: [Function],
setCookieSync: [Function],
serializeSync: [Function]
}
},
statusCode: 400,
statusMessage: 'Bad Request',
headers: {
'ccsp-request-id': '8f702519-3c94-48f1-913c-4a23172b4bb1',
'ccsp-span-id': '4',
'content-length': '149',
'content-type': 'application/json',
date: 'Sun, 02 May 2021 19:04:07 GMT',
vary: 'Origin',
'x-ratelimit-limit': '0',
'x-ratelimit-remaining': '0',
'x-ratelimit-reset': '0',
connection: 'close'
},
body: {
errId: '8f702519-3c94-48f1-913c-4a23172b4bb1',
errCode: '4003',
errMsg: 'Invalid values',
errBody: { userId: '', remainCount: 3, remainTime: 300 }
}
},
name: 'ManagedBluelinkyError',
level: 'error',
message: '@EuropeController.login: [400] Bad Request on [POST] https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin - {"errId":"8f702519-3c94-48f1-913c-4a23172b4bb1","errCode":"4003","errMsg":"Invalid values","errBody":{"userId":"","remainCount":3,"remainTime":300}}',
stack: 'ManagedBluelinkyError: @EuropeController.login: [400] Bad Request on [POST] https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin - {"errId":"8f702519-3c94-48f1-913c-4a23172b4bb1","errCode":"4003","errMsg":"Invalid values","errBody":{"userId":"","remainCount":3,"remainTime":300}}
' +
'    at d (/var/www/html/plugins/hyundaibluelink/node/node_modules/bluelinky/dist/index.js:17:144947)
' +
'    at Y.<anonymous> (/var/www/html/plugins/hyundaibluelink/node/node_modules/bluelinky/dist/index.js:17:169022)
' +
'    at Generator.throw (<anonymous>)
' +
'    at P (/var/www/html/plugins/hyundaibluelink/node/node_modules/bluelinky/dist/index.js:17:136)
' +
'    at processTicksAndRejections (internal/process/task_queues.js:97:5)',
timestamp: '2021-05-02T19:04:07.865Z'
}
{
message: 'Deamon hyundaibluelink_node is starting',
level: 'info',
timestamp: '2021-05-02T19:05:05.165Z'
}
[2021-05-02 21:08:09] e[31merrore[39m: @EuropeController.login: sign in with EuropeanBrandAuthStrategy failed with error RequestError: socket hang up
{
source: GotError [HTTPError]: Response code 400 (Bad Request)
at EventEmitter.<anonymous> (/var/www/html/plugins/hyundaibluelink/node/node_modules/got/source/as-promise.js:74:19)
at processTicksAndRejections (internal/process/task_queues.js:97:5) {
host: 'prd.eu-ccapi.hyundai.com:8080',
hostname: 'prd.eu-ccapi.hyundai.com',
method: 'POST',
path: '/api/v1/user/signin',
socketPath: undefined,
protocol: 'https:',
url: 'https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin',
gotOptions: {
path: '/api/v1/user/signin',
protocol: 'https:',
slashes: true,
auth: null,
host: 'prd.eu-ccapi.hyundai.com:8080',
port: '8080',
hostname: 'prd.eu-ccapi.hyundai.com',
hash: null,
search: null,
query: null,
pathname: '/api/v1/user/signin',
href: 'https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin',
retry: {
retries: [Function],
methods: Set { 'GET', 'PUT', 'HEAD', 'DELETE', 'OPTIONS', 'TRACE' },
statusCodes: Set { 408, 413, 429, 500, 502, 503, 504 },
errorCodes: Set {
'ETIMEDOUT',
'ECONNRESET',
'EADDRINUSE',
'ECONNREFUSED',
'EPIPE',
'ENOTFOUND',
'ENETUNREACH',
'EAI_AGAIN'
}
},
headers: {
'user-agent': 'got/9.6.0 (https://github.com/sindresorhus/got)',
accept: 'application/json',
'accept-encoding': 'gzip, deflate',
'content-type': 'application/json',
'content-length': 61,
cookie: 'account=YjNiZWY1Y2UtOGE5Zi00MmNhLThiOGYtYzhiMDRhZWM2ODA3.43ba327efeb2bf4a4e1de313f48dca3c99f7ad82; TS0154565f=01cbaa6f70fe9c486c1f15f623777f9af63f606ff479b212885b4c9398a6b467732d53fd7c52e59fd2b32885f9ac934dea8644afb6f81bfc71aa11f21a5ab314bacd45c0de'
},
hooks: {
beforeRequest: [],
beforeRedirect: [],
beforeRetry: [],
afterResponse: [],
beforeError: [],
init: []
},
decompress: true,
throwHttpErrors: true,
followRedirect: true,
stream: false,
form: false,
json: true,
cache: false,
useElectronNet: false,
method: 'POST',
body: '{"email":"XXXXXXXX","password":"XXXXXXXXX"}',
cookieJar: CookieJar {
rejectPublicSuffixes: true,
enableLooseMode: false,
allowSpecialUseDomain: false,
store: { idx: {
'prd.eu-ccapi.hyundai.com': {
'/': {
account: Cookie="account=YjNiZWY1Y2UtOGE5Zi00MmNhLThiOGYtYzhiMDRhZWM2ODA3.43ba327efeb2bf4a4e1de313f48dca3c99f7ad82; Expires=Sun, 02 May 2021 20:08:10 GMT; Max-Age=3600; Path=/; HttpOnly; hostOnly=true; aAge=158ms; cAge=392ms",
TS0154565f: Cookie="TS0154565f=01cbaa6f70fe9c486c1f15f623777f9af63f606ff479b212885b4c9398a6b467732d53fd7c52e59fd2b32885f9ac934dea8644afb6f81bfc71aa11f21a5ab314bacd45c0de; Path=/; hostOnly=true; aAge=159ms; cAge=393ms"
}
}
} },
prefixSecurity: 'silent',
_cloneSync: [Function],
_importCookiesSync: [Function],
getCookiesSync: [Function],
getCookieStringSync: [Function],
getSetCookieStringsSync: [Function],
removeAllCookiesSync: [Function],
setCookieSync: [Function],
serializeSync: [Function]
}
},
statusCode: 400,
statusMessage: 'Bad Request',
headers: {
'ccsp-request-id': 'ee2e1b25-b17c-4622-b6d4-9358e296c45b',
'ccsp-span-id': '4',
'content-length': '149',
'content-type': 'application/json',
date: 'Sun, 02 May 2021 19:08:10 GMT',
vary: 'Origin',
'x-ratelimit-limit': '0',
'x-ratelimit-remaining': '0',
'x-ratelimit-reset': '0',
connection: 'close'
},
body: {
errId: 'ee2e1b25-b17c-4622-b6d4-9358e296c45b',
errCode: '4003',
errMsg: 'Invalid values',
errBody: { userId: '', remainCount: 2, remainTime: 300 }
}
},
name: 'ManagedBluelinkyError',
level: 'error',
message: '@EuropeController.login: [400] Bad Request on [POST] https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin - {"errId":"ee2e1b25-b17c-4622-b6d4-9358e296c45b","errCode":"4003","errMsg":"Invalid values","errBody":{"userId":"","remainCount":2,"remainTime":300}}',
stack: 'ManagedBluelinkyError: @EuropeController.login: [400] Bad Request on [POST] https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin - {"errId":"ee2e1b25-b17c-4622-b6d4-9358e296c45b","errCode":"4003","errMsg":"Invalid values","errBody":{"userId":"","remainCount":2,"remainTime":300}}
' +
'    at d (/var/www/html/plugins/hyundaibluelink/node/node_modules/bluelinky/dist/index.js:17:144947)
' +
'    at Y.<anonymous> (/var/www/html/plugins/hyundaibluelink/node/node_modules/bluelinky/dist/index.js:17:169022)
' +
'    at Generator.throw (<anonymous>)
' +
'    at P (/var/www/html/plugins/hyundaibluelink/node/node_modules/bluelinky/dist/index.js:17:136)
' +
'    at processTicksAndRejections (internal/process/task_queues.js:97:5)',
timestamp: '2021-05-02T19:08:10.737Z'
}
{
message: 'Deamon hyundaibluelink_node is starting',
level: 'info',
timestamp: '2021-05-02T19:09:04.656Z'
}

Merci pour ton aide, mais je ne suis pas sur de comprendre la manip. Je vais en ssh dans la jexedup ? quelle est la commande ? Merci, je suis un peu néophyte…

@pme999 dans ton navigateur, peut tu essayer de te connecter à :

https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/oauth2/authorize?response_type=code&state=test&client_id=6d477c38-3ca4-4cf3-9557-2a1929a94654&redirect_uri=https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/oauth2/redirect

Et suivre la procédure d’authentification ? A la fin du processus tu devrais arriver sur une page blanche.
Mon hypothèse et que l’application Hyundai te demande de changer de mot de passe pendant la connexion, ce cas n’est aujourd’hui pas géré par le plugin (et comme il ne se produit pas souvent j’ai du mal a l’implémenter). Bref, si tu arrive sur cette page

  • met de coté l’url ca peu éventuellement me servir :wink:
  • Éventuellement enregistre la page (Ctrl + S dans ton navigateur) ca peu aussi éventuellement me servir
  • Clique sur Skip (Passer en fr)
  • Et la situation devrais se débloquer

Bonjour @NeoPixl
Merci pour ton retour.
J’ai cliqué, pas de demande de changement de mot de passe mais le téléchargement d’un lien redirect
L’URL est https://prd.eu-ccapi.hyundai.com:8080/web/v1/user/integration/auth?userId=e75390a9-fa68-458b-920d-e22d4a777721

Euréka… ca marche après ressaisie des identifiants et relance des dépendances…
Pas sur d’avoir compris la manip car je n’ai pas changé les identifiants, mais un grand merci
Patrice