вторник, 20 декабря 2016 г.

Уведомление в телеграмм о пропущенных вызовах на asterisk

Прочитав рекомендации в интернете на тему уведомления сделал для себя отличную альтернативу и спешу ею поделится.
Для начала зарегистрируем бота в телеграмме:
1)  напишем боту @BotFather личное сообщение "/newbot"
он ответит что-то в духе "Alright, a new bot. How are we going to call it? Please choose a name for your bot." теперь мы ему должны задать имя нашему боту например "asterisk_call_bot" после сообщение придет токен необходимый нам для уведомления пользователя.
2)  выясним "Telegram ID" - это ваше имя в глобальной сете телеграмм на который пишет бот.
Пишем боту @MyTelegramID_bot команду "/start" в ответ придет сообщение вида "Telegram ID: XXXXXXXX" этот номер нам понадобится чуть позже.
С телеграмом закончено.

понедельник, 10 октября 2016 г.

Разбиение таблицы MYSQL на несколько



Вот и настал тот день когда база логов звонков разрослась до 1TB. На мой взгляд чтобы не терять историю надо таблицу CDR разбить например по годам(а вдруг пригодятся).
Что я сделал:
1) создал таблицы

  • cdr2014
  • cdr2015
  • cdr2016
2) Экспортировать данные из CDR в cdr2014


INSERT INTO  `asterisk`.`cdr2014` SELECT * FROM  `asterisk`.`cdr` WHERE  `calldate` <  '2014-12-31 23:59:59'

3) Экспортировать данные из CDR в cdr2015



INSERT INTO  `asterisk`.`cdr2015` SELECT * FROM  `asterisk`.`cdr` WHERE  `calldate` <  '2015-12-31 23:59:59'

4) Экспортировать данные из CDR в cdr2016


INSERT INTO  `asterisk`.`cdr2016` SELECT * FROM  `asterisk`.`cdr` WHERE  `calldate` <  '2016-12-31 23:59:59'
5) Удаляем по годам

2014
DELETE FROM `asterisk`.`cdr` WHERE  `calldate` <  '2014-12-31 23:59:59'
2015
DELETE FROM `asterisk`.`cdr` WHERE  `calldate` <  '2015-12-31 23:59:59'
2016
DELETE FROM `asterisk`.`cdr` WHERE  `calldate` <  '2016-12-31 23:59:59'

6) Оптимизировать таблицы
OPTIMIZE TABLE  `cdr` ,  `cdr2014` ,  `cdr2015`,  `cdr2016`