Skip to content

feat: USA OTP#991

Merged
cdnninja merged 14 commits intomasterfrom
usa
Jan 12, 2026
Merged

feat: USA OTP#991
cdnninja merged 14 commits intomasterfrom
usa

Conversation

@cdnninja
Copy link
Copy Markdown
Collaborator

@cdnninja cdnninja commented Jan 11, 2026

@renatkh Are you able to take a look at this and see thoughts? I am sure I have missed things. Any feedback or commits are welcome. Happy to have you take this part over if interested.

@renatnova
Copy link
Copy Markdown

@renatkh Are you able to take a look at this and see thoughts? I am sure I have missed things. Any feedback or commits are welcome. Happy to have you take this part over if interested.

Most certainly,I am following the threads. I am on vacation right now, so may be a few days until I get a chance to dive into this. But I will try ASAP.

@cdnninja
Copy link
Copy Markdown
Collaborator Author

Awesome thank you! I bumped the kia_uvo side to have the "framework" tested with the other users. Based on your interest I will leave this side alone for now and focus on framing up how the config_flow will work. In theory I can build an release that without any region supporting OTP since it wouldn't interfere.

Comment thread hyundai_kia_connect_api/const.py Outdated

class OTP_NOTIFY_TYPE(Enum):
EMAIL = "EMAIL"
PHONE = "PHONE"
Copy link
Copy Markdown
Contributor

@nussdk nussdk Jan 11, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

needs to be SMS.

DEBUG:hyundai_kia_connect_api.KiaUvoApiUSA:hyundai_kia_connect_api - Send OTP Response {"status":{"statusCode":1,"errorType":3,"errorCode":1164,"errorMessage":"notifyType must be EMAIL or SMS"}}

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch. The old code this is removing had phone and email. I will adjust.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have adjusted. Please review and let me know if looks correct. For when it presents options I assume that still states Phone not SMS?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

raw api response
{"status":{"statusCode":0,"errorType":0,"errorCode":0,"errorMessage":"Success with response body"},"payload":{"otpKey":"XXX","hasEmail":true,"hasPhone":true,"email":"*****","phone":"() **","emailVerifyStatus":true,"phoneVerifyStatus":true}}

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes UI will be on that side but what options the client presents must come from here since not everyone sets up all types.

Comment thread hyundai_kia_connect_api/KiaUvoApiUSA.py Outdated
email=payload.get("email"),
phone=payload.get("phone"),
has_email=bool(payload.get("hasEmail")),
has_phone=bool(payload.get("hasPhone")),
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@cdnninja
Copy link
Copy Markdown
Collaborator Author

@renatkh another user has tested and given feedback. We are chatting on discord if you want to join.

I'm going to merge since this works with test scripts.

I have a draft pr on the Kia uvo side for adding config flow.

@cdnninja cdnninja merged commit 2aaa55d into master Jan 12, 2026
6 checks passed
@cdnninja cdnninja deleted the usa branch January 12, 2026 17:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants