Skip to content

Что делать, если Вы хотите добавить какой то параметр, которого нет в плагине

Artem edited this page Dec 29, 2021 · 5 revisions

Что делать, если Вы хотите добавить какой то параметр, которого нет в плагине

Если Вы хотите, чтобы при получении баланса по плагину логировались дополнительные параметры - нужно дать мне информацию как эти данные получать.

Смотрим в логе

Для этого нужно включить расширенное логирование в файле mbplugin.ini (этот параметр с версии 1.0.0 включен по умолчанию)
[Options]
log_responses = 1
Самый простой случай - это если эта информация уже проходит при сборке, чтобы проверить это найдите в папке лог по плагину в папке mbplugin/log файл с именем p_plugin_login.log p_mts_9161234567.log
В логе ищите интересующую Вас информацию - название тарифа, сумму и т.п. - то что Вам нужно, например мы ищем название тарифа Супер МТС, после того как нашли, копируем блок лога от ближайшей пустой строки, меняем в нем все элеманты, которые мы не хотим скомпрометировать (фамилию, адрес и т.п. на что-то другое) и присылате мне блок подобный вот этому:

GET: URL:https://lk.mts.ru/api/login/userInfo$
{   'lastUpdate': '2020-09-23T19:36:26',
    'loginStatus': 'Success',
    'userProfile': {   'balance': 10.521718,
                       'birthday': '1915-01-02',
                       'destinationIndicator': 'ihelper.mts.ru',
                       'displayName': 'Гадя Петрович Хренова',
                       'entranceBlocked': False,
                       'extendedPassportDataRequired': False,
                       'isB2B': False,
                       'isPrivateOrganization': False,
                       'links': {   'fixLkLink': 'https://kabinet.mts.ru/?from=login.mts.ru'},
                       'login': '79161234567',
                       'mnpOrgCode': 'mMTS',
                       'premiumPromisedPaymentAvailable': False,
                       'readonlyAccess': False,
                       'region': '77',
                       'regionAlias': 'moskva',
                       'regionTitle': 'Москва',
                       'tariff': 'Москва - Супер МТС 082013 (МАСС) (SCP)',
                       'terminalDeviceId': '12345677',
                       'uniqueIdentifier': '1155f5739748d4ffc050297112364bbb'}}

P.S. Для умеющих программировать и желающих проделать самостоятельно - можете добавить самостоятельно в код плагина нужную строчку (в данном случае смотрите как заполняется поле TariffPlan)
Если данные нашлись в логе - цель достигнута, если нет идем дальше.

Анализируем страницу через отладчик Firefox

В Firefox на мой взгляд удобнее, хотя можно и в хроме
Запускаем браузер заходим на страницу личного кабинета и перед тем как ввести логин и пароль нажимаем F12
Откроется дополнительное окно DevTools (если вместо того чтобы открыться в отдельном окне, открылось просто как часть окна - нажмите на три точки в районе правого верхнего угла и выберите перенести в отдельное окно)
Переключаемся на закладку Сеть В процессе поиска включаем здравый смысл - если мы ищем тариф, то рядом с искомым будет написано Tarif или синоним их английского языка, ну идея примерно понятна.

Далее логинимся в личный кабинет и пытаемся попасть на страницу где отображается желаемая информация.
После того как в браузере увидели искомое - возвращаемся в DevTools и начинаем искать.
FFDevToolsCatchData1

  1. Нажимаем на иконку поиска
  2. Вводим строку поиска, в нашем примере Супер МТС 082013
  3. Я выбрал не очень удачный вариант - нашлось в нескольких местах, кликаеми раскрываем все
  4. В отключенном режиме Показать код видно лучше
  5. Видим искомое
    Переключаемся на Заголовки и копируем искомый url https://lk.mts.ru/api/login/userInfo

    Переключаемся на Ответ и копируем ответ в виде текста. Из текста заменяем все что не хотим показывать.
    Url и текст - наша цель.

Анализируем страницу через отладчик Chrome

Запускаем браузер заходим на страницу личного кабинета и перед тем как ввести логин и пароль нажимаем F12
Откроется дополнительное окно DevTools (если вместо того чтобы открыться в отдельном окне, открылось просто как часть окна - нажмите на три точки в районе правого верхнего угла и выберите перенести в отдельное окно)
Переключаемся на закладку Сеть и включаем крыжик Сохранять журнал.
В процессе поиска включаем здравый смысл - если мы ищем тариф, то рядом с искомым будет написано Tarif или синоним их английского языка, ну идея примерно понятна.

Далее логинимся в личный кабинет и пытаемся попасть на страницу где отображается желаемая информация.
После того как в браузере увидели искомое - возвращаемся в DevTools и начинаем искать.
После этого в DevTools нажимаем Ctlf-F и в поиске вбиваем желаемое:

  1. В нашем примере Супер МТС 082013
  2. Я выбрал не очень удачный вариант - нашлось в нескольких местах, для определенности найдем то-же самое место (видим что в url есть userinfo).
  3. вбиваем userinfo в поиск url
  4. находим нужную страницу в списке и кликаем на нее
  5. выбираем предварительный просмотр
  6. убеждаемся что в содержимом действительно есть искомое. DevToolsCatchData2
    Копируем ссылку на страницу https://lk.mts.ru/api/login/userInfo

    И содержимое страницы в виде текста. Из текста заменяем все что не хотим показывать.
    Url и текст - наша цель.