Страница 1 из 1

Проверка почты

Добавлено: Сб сен 08, 2018 4:48 pm
Step40
Вроде бы есть тема в решениях но закрытая не спросиш
есть там скрипт
$user = getGlobal('ThisComputer.GMailAcc'); // имя пользователя
$pass = getGlobal('ThisComputer.GMailPass'); // пароль
$data_file="https://$user:$pass@mail.google.com/mail/feed/atom";
$xml = simplexml_load_file($data_file); // раскладываем xml на массив
$unread=$xml->fullcount;
sg('ThisComputer.GMailPass',$unread);

Но не работает
Пишит
Warning: simplexml_load_file(https://...@gmail.com:тутпароль@mail.go ... /feed/atom): failed to open stream: HTTP request failed! HTTP/1.0 401 Unauthorized in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(150) : eval()'d code on line 4 Warning: simplexml_load_file(): I/O warning : failed to load external entity "https://тутмыло@gmail.com:тутпарольK@ma ... /feed/atom" in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(150) : eval()'d code on line 4

В чем причина не подскажите?

Re: Проверка почты

Добавлено: Сб сен 08, 2018 4:59 pm
olehs
По-моему гугл тербует теперь OAuth2 авторизации

Re: Проверка почты

Добавлено: Сб сен 08, 2018 5:09 pm
Step40
Те варианта проверять почту из MD больше нет?

Re: Проверка почты

Добавлено: Сб сен 08, 2018 6:28 pm
Logrus
все работает, и на форуме есть решение, и шлюз сяоми мигает и проигрывает мелодию, и алиса голосом говорит сколько и у кого не прочитанных ...

Re: Проверка почты

Добавлено: Вс сен 09, 2018 4:45 am
Step40
Что то не нашел...Не могли бы ссылку дать на тему? Буду безмерно благодарен...

Re: Проверка почты

Добавлено: Вс сен 09, 2018 9:50 am
Logrus
с мобильного искать не буду, но я об этом тоже писал, смысл в настройках безопасности гугл аккаунта разрешить доступ недоверенным приложениям
выше ссылка на канал атом в скрипте, можно и прямо доступ по ней проверить
вот это еще поправьте sg('ThisComputer.GMailPass',$unread);
количеством писем переписываете пароль
и в коннекте это тоже есть

Re: Проверка почты

Добавлено: Пн сен 10, 2018 7:36 am
Amarok
Step40 писал(а):
Сб сен 08, 2018 5:09 pm
Те варианта проверять почту из MD больше нет?
Opera Снимок_2018-09-10_092931_192.168.0.251.png
Opera Снимок_2018-09-10_092931_192.168.0.251.png (4.25 КБ) 3671 просмотр
Работает всё. И именно с моим сценарием, который был несколькими постами выше. Но, на всякий случай, сдублирую его:

Код: Выделить всё

$objects = getObjectsByClass("Peoples");
foreach($objects as $obj) {
  if (gg($obj['TITLE'].".GMailAcc") != "" && gg($obj['TITLE'].".GMailPass") != ""){ //если поля GMailAcc и GMailPass НЕ пустые
    $user = gg($obj['TITLE'].".GMailAcc"); //имя пользователя
    $pass = gg($obj['TITLE'].".GMailPass"); //пароль
    $data_file = "https://".$user.":".$pass."@mail.google.com/mail/feed/atom";
    $xml = simplexml_load_file($data_file); //раскладываем xml на массив
    $unread = $xml->fullcount;
    if ($unread == "") {$unread = "0";}
    if (gg($obj['TITLE'].".GMailUnread") != $unread)
         {sg($obj['TITLE'].".GMailUnread",$unread);}
  }
}