GET-запрос для получения номера телефона из чата WhastApp без захода в профиль собеседника

Mitnik

Client
Регистрация
22.12.2014
Сообщения
118
Благодарностей
6
Баллы
18
Здравствуйте!

Пытаюсь собрать шаблон автоответчика на ZD.
Помогите, пожалуйста, ЗА ДЕНЕЖКУ с GET-запросом на получение номера телефона собеседника непосредственно из чата, без захода в профиль, если чел уже есть в контактах и в шапке чата выводится его имя из справочника без номера телефона.
Сейчас приходится делать несколько ненужных операций: "Три точки в правом верхнем углу окна чата -->> Просмотр контакта -->> Берем телефон -->> Эмуляция кнопки назад (обратно в чат)".
А по-идее, номер телефона можно получить одним GET-запросом, без перехода в профиль.
Но, т.к., у меня не хватает толку настроит перехват трафика в ZD, то вычислить такой запрос не удается.
Прошу помощи ЗА ДЕНЕЖКУ, с составлением запроса.
 

Вложения

  • 44,6 КБ Просмотры: 41
  • 51,1 КБ Просмотры: 44
  • 45,2 КБ Просмотры: 46

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 690
Баллы
113

Anatoly79

Moderator
Регистрация
17.04.2020
Сообщения
378
Благодарностей
269
Баллы
63
если чел уже есть в контактах и в шапке чата выводится его имя из справочника без номера телефона
Можно взять номер из справочника контактов, раз контакт уже в нем есть. Правда если в контактах есть повторяющиеся имена, то выдаст несколько номеров.
Штатными средствами: Консольная команда
content query --uri content://com.android.contacts/data --where "display_name='{-Variable.FullName-}' AND data4" --projection data4 | cut -d= -f2 | head -n1

Или поставить sqlite3
sqlite3 /data/data/com.android.providers.contacts/databases/contacts2.db "SELECT pl.normalized_number FROM data INNER JOIN phone_lookup pl ON data.raw_contact_id=pl.raw_contact_id WHERE data1=\"{-Variable.FullName-}\";" | head -n1

Ну или напрямую из БД Whatsapp. Так надежнее
sqlite3 /data/data/com.whatsapp/databases/wa.db "SELECT number from wa_contacts WHERE display_name=\"{-Variable.FullName-}\";"
 
Последнее редактирование:
  • Спасибо
Реакции: Mitnik

Mitnik

Client
Регистрация
22.12.2014
Сообщения
118
Благодарностей
6
Баллы
18
Можно взять номер из справочника контактов, раз контакт уже в нем есть. Правда если в контактах есть повторяющиеся имена, то выдаст несколько номеров.
Штатными средствами: Консольная команда
content query --uri content://com.android.contacts/data --where "display_name='{-Variable.FullName-}' AND data4" --projection data4 | cut -d= -f2 | head -n1

Или поставить sqlite3
sqlite3 /data/data/com.android.providers.contacts/databases/contacts2.db "SELECT pl.normalized_number FROM data INNER JOIN phone_lookup pl ON data.raw_contact_id=pl.raw_contact_id WHERE data1=\"{-Variable.FullName-}\";" | head -n1

Ну или напрямую из БД Whatsapp. Так надежнее
sqlite3 /data/data/com.whatsapp/databases/wa.db "SELECT number from wa_contacts WHERE display_name=\"{-Variable.FullName-}\";"
Спасибо за ответ.
Да, многие имена в справочнике у меня повторяются.
Буду думать.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)