Jump to content

Оповещение о новом сообщении в helpdesk на telegram


Recommended Posts

В общем по началу все так быстро и просто настроилось , телеграмный бот так исправно посылал типа 1 new massage helpdesk === 161228173908 ,  до момента закрытия админки в браузере. Видно требуется внутренний вызов remoteapi . Пробовал разные варианты , чтобы вызвать в api.darkvoid.php $newticketcount = zb_TicketsGetAllNewCount();  да и это пробовал  

?module=ubim&checknew=true"  , короче не знаю!  не идет. Может кто подскажет как в фоне  обновить  проверку на наличие новых сообщений в кеш DarkVoid  ? 

Edited by zaza12
Link to post
Share on other sites

Все как обычно, оказалось просто добавить функцию на проверку zb_TicketsGetAllNewCount() в  remoteapi. Так и делал изначально, но банально action присвоил newmassage , а вызывал newmassege (сам допустил опечатку). Короче все работает. 

Edited by zaza12
Link to post
Share on other sites

Да просто задолбался я регулярно лазить в админку для проверки новых сообщений. Теперь с приходом нового приходит оповещение в телеграм. Загвоздка была только с фоновой проверкой zb_TicketsGetAllNewCount(). А перенаправить на бота множество способов, начиная от парсинга созданного файла через watchdog до прямой посылки в чат id.  Например проверка на изменение лог файла который наполняется при срабатывании  zb_TicketsGetAllNewCount() !=0

для типа проверки script параметр   stat -f '%z' /var/log/newhelpdesk.log

Пока еще не решил какой вариант оставить, возможно получится еще и привязать сам текст сообщения, и обойтись без watchdog.

Edited by zaza12
Link to post
Share on other sites
  • 3 months later...

В общем по началу все так быстро и просто настроилось , телеграмный бот так исправно посылал типа 1 new massage helpdesk === 161228173908 ,  до момента закрытия админки в браузере. Видно требуется внутренний вызов remoteapi . Пробовал разные варианты , чтобы вызвать в api.darkvoid.php $newticketcount = zb_TicketsGetAllNewCount();  да и это пробовал  

?module=ubim&checknew=true"  , короче не знаю!  не идет. Может кто подскажет как в фоне  обновить  проверку на наличие новых сообщений в кеш DarkVoid  ? 

Получилось привязать отправку в телеграмм без открытия админки?

Подскажите куда копать. Штатными средствами этого сделать не получается, а в программировании я не очень силен

Link to post
Share on other sites
Получилось привязать отправку в телеграмм без открытия админки?

 

Получилось , в моем случае , улучшать  этот метод нет потребности.

1. Создаем файл  , например /var/log/newhelpdesk.log

  и даем ему chmod a+w /var/log/newhelpdesk.log

2. в модуль remoteapi  ( billing/modules/general/remoteapi/index.php )вставляем что-то типа 

 

                     /*
                     * newmassage 
                     */
if ($_GET['action'] == 'newmassage') {
      if (zb_TicketsGetAllNewCount() != 0) {
        file_put_contents('/var/log/newhelpdesk.log','1mass-'.date("ymdHi").';' ,FILE_APPEND);
                        } 
                    }
3. в cron  каждые 5 минут
4. И штатно для собаки наблюдаки
Имя 
Тип проверки
script
Параметр
stat -f '%z' /var/log/newhelpdesk.log
Оператор
changed
Действия
telegram
 
Предполагается что у вас уже настроен удаленный вызов http://wiki.ubilling.net.ua/doku.php?id=remoteapi, запущен и исправно работает бот telegram 
и уже выполняются эти задачи 

 

в этом методе с приходом нового сообщения в helpdesk, бот telegram будет периодически спамить , пока не закроете в кабинете тикет. 

И конечно время выполнения задач можно ставить меньше , все зависит насколько горячая у вас поддержка!

Edited by zaza12
Link to post
Share on other sites
  • 2 years later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

×
×
  • Create New...