Моніторингу змін на сайті з використанням Asterisk
Оценка пользователей: / 6
ПлохоОтлично 
There are no translations available.

AsterskУ наш час надважливо максимально швидко отримувати нову інформацію. Для цього використовують різні системи та будують складні комплекси.
В даній статті розповім про оригінальний спосіб моніторингу змін на сайті та своєчасному інформуванні про ці зміни.
Наприклад, Ви шукаєте квартиру для оренди. Тут все просто, хто перший домовився – той і орендує. Щоб першим домовитись, треба першим зателефонувати, тобто як найраніше дізнатися про оголошення.
Сервіс являє собою php-скрипт, який запускається у UNIX-системах за допомогою демона cron кожні N хвилин. В свою чергу php-скрипт перевіряє сторінку на появу нового контенту та, у випадку появи нового оголошення, генерує дзвінок через AsteriskIP-PBX.
Найбільша база квартир на даний момент знаходиться на сайті Slando. Нехай у нашому випадку необхідно знайти квартиру лише від власниківта в межах від 2300 грн. до 3200 грн.
Заходимо на сайт nedvizhimost.slando.com.ua та обираємо пошук згідно заданих критеріїв.
Продивившись HTML-код сторінки можна помітити, що самі оголошення починаються з тегу <divclass=”ad” >:
Тобто, для того щоб вилучити саму об`яву з коду сторінки, нам потрібно знайти текст «<divclass=”ad” >» та після цього знайти четвертий елемент «</div>» та взяти підрядок між цими двома позиціями.
Код php:
Тут краще не використоувати відносні шляхи. Перед запуском скрипта треба створити пустий файл /tmp/nedvizh/new.html
Змінна $data містить у собі текст для створення call-файлу, що потім поміщається у /var/spool/asterisk/outgoing/.
Більш докладно про це можна почитати на voip-info.org.
Далі перейдемо до налаштування Asterisk.
У файл /etc/asterisk/extensions.conf додамо наступні рядки:
Mobile/MTS/ – це шлюз через який з`єднувати дзвінок. Я користувався модулем для Asterisk “chan_mobile”, який дозволяє задіяти мобільний телефон як GSM шлюз.
Більш детальну інформацію щодо Asterisk можна знайти на сторінці проекту.
Далі налаштуємо авто запуск скрипта:
від імені користувача root виконаємо команду
#crontab  –e
Та добавимо наступні рядки:
        */5 8-22 * * * /usr/bin/php-f/tmp/nedvizh/Check_price.php>/tmp/nedvizh_error
Це означає, що кожні 5 хвилин з 8 до 22 години треба запускати скрипт, а його вивід перенаправляти у файл /tmp/nedvizh_error.
Це й усе! Я лише виклав ідею і сподіваюсь, що комусь це стане в нагоді.
Автор Андрій Третьяков, магістрант НТУУ “КПІ”
 
>
КнигаНовости Практика поискаПартнерыО нас
Підтримка та дизайн: Могильний С.С. Шаблон: Joomla Templates by BuyHTTP Joomla Hosting