+7(982) 597-7179

СМС-уведомление о посещениях

Время на прочтение: 2 мин.

Наткнулся на статью замечательного блогера Вячеслава Скоблея и решил установить себе смс-информер о посещениях. К сожалению, код оказался не рабочим из-за смены API-яндекса. Проблему исправил, поэтому сюда выложу готовое решение (начало статьи нагло скопировано, ссылка есть).

И так для начала надо зарегистрировать приложение.

  1. Заходим по ссылке и регистрируем приложение.
  2. Название: Счетчик метрики
  3. Описание: Получение счетчика Метрики
  4. Права: выбираем Яндекс.Метрика, ставим галочку «Получение статистики, чтение параметров своих и доверенных счётчиков»).
  5. Callback URL (внизу) — нажимаем «Подставить URL для разработки».
  6. Жмем Сохранить.

На другой страничке нам покажут ID и пароль приложения, примерно так:

ID: 85454e2984423333244edfc343758b5
Пароль: 09234234234234234234b98f4425f5

запоминаем их и идем далее.

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

Чтобы получить токен для Яндекс.Метрики, пройдите на страницу:

https://oauth.yandex.ru/authorize?response_type=token&client_id=85454e298448e7cca784edfc343758b5

На страничке, мы получим извещение, что приложение Счетчик Метрики запрашивает доступ к вашим данным на Яндексе. Жмем Разрешить. В итоге получаем токен (пароль для использования API): 7661c4c309234234еfvfd3d3453cf1b19a

Последний параметр, который нам нужен — id счетчика. Переходим на страницу со счетчиками в Яндекс.Метрику и копируем id (этот номер будет в колонке «Название и ID счетчика«) того счетчика, с которого мы хотим получать данные, например: 97321928

И вот заключительный этап. Нам надо создать файл исполнения который будет передавать параметры и отправлять смс. Создайте php-файл, например smsinformer.php

<?php
$id='12312323'; //id счетчик метрики
$token='AQfffrAAA0ws1AAref0yJVGCE_evr445LvuJOQ';//токен
$today=date("Ymd");
$mail='79822372312@sms.ural.mts.ru';//Уточняйте возможность отправки письма в смс у вашего оператора
$metrika_url = "https://api-metrika.yandex.ru/stat/v1/data?ids=$id&oauth_token=$token&date1=$today&date2=$today&metrics=ym:s:visits,ym:s:pageviews,ym:s:users";

$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL,$metrika_url);
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6");
curl_setopt ($ch, CURLOPT_TIMEOUT, 60);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$metrika = curl_exec ($ch);
curl_close($ch);
$metrika_o = json_decode($metrika);
$mes = "Всего просмотров:".$metrika_o->totals[1]." Новые посетители:".$metrika_o->totals[2]." Просмотров страниц:".$metrika_o->totals[0];
$mail = mail ($mail,'METRIKA',$mes,"Content-type:text/plain; charset = utf-8\r\n"); ?>

В данном коде идет отправка смс следующего содержания:

Конечно для автоматизации скрипта, создайте задание в cron на время 23:59, подробнее тут


Читайте также:

Приглашаем поучаствовать в обсуждении статьи:

Комментариев 0