Hacksore / bluelinky

An unofficial nodejs API wrapper for Hyundai bluelink and Kia UVO
https://bluelinky.readme.io
MIT License
341 stars 76 forks source link

Login failing for Kia / EU #248

Open mclane opened 1 year ago

mclane commented 1 year ago

Describe the bug Login fails:

[uli@BigBox bluelinky]$ npm run debug

> bluelinky@8.1.0 debug
> cross-env LOG_LEVEL=debug ts-node debug.ts

? What Region are you in? EU
? Which brand are you using? kia
{ region: 'EU', brand: 'kia' }
Logging in...
[2023-06-30 11:48:55] debug: EU Controller created
[2023-06-30 11:48:55] debug: Bluelinky is logging in automatically, to disable use autoLogin: false
[2023-06-30 11:48:55] debug: @EuropeController.login: Trying to sign in with EuropeanBrandAuthStrategy
[2023-06-30 11:49:04] debug: @EuropeController.login: Authenticated properly with user and password
Request failed : Error: getaddrinfo EAI_AGAIN android.clients.google.com
Retrying in 0 seconds

/home/uli/bluelinky/src/tools/common.tools.ts:19
    return new ManagedBluelinkyError(
           ^
ManagedBluelinkyError: @EuropeController.login: [400] Bad Request on [POST] https://prd.eu-ccapi.kia.com:8080/api/v1/spa/notifications/register - {"retCode":"F","resCode":"4002","resMsg":"Invalid request body - Block the UVO app id.","msgId":"xxxblockedxxx"}
    at Object.exports.manageBluelinkyError (/home/uli/bluelinky/src/tools/common.tools.ts:19:12)
    at EuropeanController.<anonymous> (/home/uli/bluelinky/src/controllers/european.controller.ts:257:13)
    at Generator.throw (<anonymous>)
    at rejected (/home/uli/bluelinky/src/controllers/european.controller.ts:25:65)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)

Usefull info(please complete the following information):

fuatakgun commented 1 year ago

Having same issue on our repository, trying to find out what had changed recently. https://github.com/Hyundai-Kia-Connect/kia_uvo/issues/660

PierreLevres commented 1 year ago

I noticed the cssp-application-id from my kia app (a2b8469b-30a3-4361-8e13-6fceea8fbe74) is different from the one used in bluelinky (e7bcd186-a5fd-410d-92cb-6876a42288bd) But since the AppId is used in fetching the stamps, I can't really test now.

Op 30 jun. 2023, om 12:45 heeft Fuat Akgün @.***> het volgende geschreven:

Having same issue on our repository, trying to find out what had changed recently. Hyundai-Kia-Connect/kia_uvo#660 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you are subscribed to this thread.Message ID: @.***>

fuatakgun commented 1 year ago

Can you tell me how you are getting this id now? Android based ssl pinning is not working anymore in my setup now. We can even use the stamp from app for a very short duration

PierreLevres commented 1 year ago

IOS-app and a Mac proxy-ing SSL-traffic ….

Op 30 jun. 2023, om 13:48 heeft Fuat Akgün @.***> het volgende geschreven:

Can you tell me how you are getting this id now? Android based ssl pinning is mot working anymore in my setup now. We can even use the stamp from app for a very short duration

— Reply to this email directly, view it on GitHub https://github.com/Hacksore/bluelinky/issues/248#issuecomment-1614540562, or unsubscribe https://github.com/notifications/unsubscribe-auth/AO7MCG3ZO4IN3IUNMHJIHRTXN24KDANCNFSM6AAAAAAZZUJ5QM. You are receiving this because you commented.

ndupont-net commented 1 year ago

Yes, it looks like since yesterday 10AM CEST they've blocked the Kia UVO app id. The server sends me this error message :

body: { retCode: 'F', resCode: '4002', resMsg: 'Invalid request body - Block the UVO app id.', msgId: '56908d9a-ab99-4a05-aa8b-30f46c725124'

mclane commented 1 year ago

There is a replacement app "Kia Connect"; so at least the app id needs to be changed

ZuinigeRijder commented 1 year ago

I have it working with the new bluelinky stamps for Hyundai Bluelink with hyundai_kia_connect_api. But I have to fill in the pushRegId which was sent by the Bluelink App (sniffing). See this post.

Sniffing on Android is more difficult, because after Android 5 SSL pinning makes it very difficult. So I used this method.

cheick66 commented 1 year ago

Good morning. There is an update in https://github.com/Hyundai-Kia-Connect/hyundai_kia_connect_api/issues/348 . Is it maybe possible to port it to node-red?

PierreLevres commented 1 year ago

Good morning. There is an update in Hyundai-Kia-Connect/hyundai_kia_connect_api#348 . Is it maybe possible to port it to node-red?

BlueLinky has already been updated. Since node-red-contrib-bluelinky uses bluelinky@latest, all you have to do is update your palette. Instructions on the how-to are in the readme of that repo. https://github.com/SondreNjaastad/node-red-contrib-bluelinky#what-to-do-when-bluelinky-is-updated

xerion3800 commented 1 year ago

I've done it already regarding the instructions. But i have still Connect Problems. image

PierreLevres commented 1 year ago

I've done it already regarding the instructions. But i have still Connect Problems. image

To get a bit further in trouble shooting: Are you in EU? Are you Kia or Hyundai driver? What version is in your bluelinky node-red directory (so not the node-red-contrib-bluelinky, but bluelinky) ? What error is in your log-file? What happens if you run the debug.ts file from within NPM ?

xerion3800 commented 1 year ago

Sorry for the missing Information. Yes EU is right Hyundai Driver

Where can in find the Log-file i Node-red for Bluelinky?

xerion3800 commented 1 year ago

Output of debug: It seems that the User or Password should be wrong. But I've doublechek it.

root@NodeRed:~/bluelinky# npm run debug

> bluelinky@8.1.1 debug
> cross-env LOG_LEVEL=debug ts-node debug.ts

? What Region are you in? EU
? Which brand are you using? hyundai
{ region: 'EU', brand: 'hyundai' }
Logging in...
[2023-07-07 10:11:01] debug: EU Controller created
[2023-07-07 10:11:01] debug: Bluelinky is logging in automatically, to disable use autoLogin: false
[2023-07-07 10:11:01] debug: @EuropeController.login: Trying to sign in with EuropeanBrandAuthStrategy
[2023-07-07 10:11:03] error: @EuropeController.login: sign in with EuropeanBrandAuthStrategy failed with error Error: @EuropeanBrandAuthStrategy.login: Authentication failed with message : Invalid username or password.
[2023-07-07 10:11:03] debug: @EuropeController.login: Trying to sign in with EuropeanLegacyAuthStrategy

/root/bluelinky/src/tools/common.tools.ts:19
    return new ManagedBluelinkyError(
           ^
ManagedBluelinkyError: @EuropeController.login: [400] Bad Request on [POST] https://prd.eu-ccapi.hyundai.com:8080/api/v1/user/signin - {"errId":"97c0cfed-5c3d-4603-99a8-7789019e66f3","errCode":"4003","errMsg":"Invalid values","errBody":{"userId":"","remainCount":4,"remainTime":300}}
    at Object.exports.manageBluelinkyError (/root/bluelinky/src/tools/common.tools.ts:19:12)
    at EuropeanController.<anonymous> (/root/bluelinky/src/controllers/european.controller.ts:256:13)
    at Generator.throw (<anonymous>)
    at rejected (/root/bluelinky/src/controllers/european.controller.ts:6:65)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
xerion3800 commented 1 year ago

Now i have test it in Bluelink App. I had unlocked me in the App and after a reconnect i got the message that my Account i temporary locked.?

xerion3800 commented 1 year ago

After i have created i new password the login is possible in Bluelink App and Bluelinky as well :-)

cheick66 commented 1 year ago

Good morning. There is an update in Hyundai-Kia-Connect/hyundai_kia_connect_api#348 . Is it maybe possible to port it to node-red?

BlueLinky has already been updated. Since node-red-contrib-bluelinky uses bluelinky@latest, all you have to do is update your palette. Instructions on the how-to are in the readme of that repo. https://github.com/SondreNjaastad/node-red-contrib-bluelinky#what-to-do-when-bluelinky-is-updated

Thanks a lot After following the how-to instructions it's running again. I misunderstood the solution first time, because there was no new Version of the Node-Red pallet. node-red-contrib-bluelinky 0.0.30

PierreLevres commented 1 year ago

Good to hear it is up and running again!


Van: cheick66 @.> Verzonden: Friday, July 7, 2023 12:59:58 PM Aan: Hacksore/bluelinky @.> CC: PierreLevres @.>; Comment @.> Onderwerp: Re: [Hacksore/bluelinky] Login failing for Kia / EU (Issue #248)

Good morning. There is an update in Hyundai-Kia-Connect/hyundai_kia_connect_api#348https://github.com/Hyundai-Kia-Connect/hyundai_kia_connect_api/issues/348 . Is it maybe possible to port it to node-red?

BlueLinky has already been updated. Since node-red-contrib-bluelinky uses @.***, all you have to do is update your palette. Instructions on the how-to are in the readme of that repo. https://github.com/SondreNjaastad/node-red-contrib-bluelinky#what-to-do-when-bluelinky-is-updated

Thanks a lot After following the how-to instructions it's running again. I misunderstood the sollution first time, because there was no new Version of the Node-Red pallet. node-red-contrib-bluelinky 0.0.30

— Reply to this email directly, view it on GitHubhttps://github.com/Hacksore/bluelinky/issues/248#issuecomment-1625240168, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AO7MCGZ2CHZTSD5JD4TPLX3XO7T25ANCNFSM6AAAAAAZZUJ5QM. You are receiving this because you commented.Message ID: @.***>