Автозаполнение кода из смс на сайте в клавиатуру на iPhone

iOS умеют угадывать код из смс и подставлять в клавиатуру: https://support.apple.com/ru-ru/guide/iphone/iphc89a3a3af/ios Это работает в iOS приложении, где поле ввода помечено как .oneTimePassword. Однако это почему-то не работает у меня на сайте. Поиск по Интернету не дал понимания того, какие требования к формату смс сообщений и/или к полю ввода чтобы iOS вытащил от туда код.

Смс такого вида:

Kod dlya podtverzhdeniya zayavki 1234. Esli vi ne oformlyali zayavku, pozvonite nam 1234567890. NazvanieOrganizatsii.

Но так как распознавание работает для приложения, то кажется что проблема в разметке сайта.

Может кто сталкивался и знает как сделать так, чтобы автозаполнение iOS работало на сайте?


Ответы (2 шт):

Автор решения: VAndrJ

Требования к формату описаны, к примеру, здесь: sms-one-time-codes

Пример SMS:

747723 is your ExampleCo authentication code.
    
@example.com #747723

"https://example.com" источник,
"747723" код
"747723 is your ExampleCo authentication code.\n\n" человекочитаемый формат.
"@" и "#" определяют источник и код соответственно.

После настройки кодов, по идее, автозаполнение подхватится автоматически в Safari. Возможно, нужно будет добавить атрибут autocomplete = one-time-code в текстовое поле веб-страницы, чтобы указать куда его применять.

→ Ссылка
Автор решения: Gareev

Для тех кто ищет решение на стороне фронта (html), для поля input необходим атрибут autocomplete="one-time-code":

<input id="single-factor-code-text-field" autocomplete="one-time-code"/>

Описание в официальной документации: https://developer.apple.com/documentation/security/password_autofill/enabling_password_autofill_on_an_html_input_element

→ Ссылка