Использовать API или SQL для обнаружения новых запросов в службу поддержки?

В настоящее время я работаю в компании, которая использует Kayako для своей системы поддержки. Они продают дополнительную программу под названием Insta Alert, которая воспроизводит звук при отправке нового билета.

Я использую WHMCS для своей компании и хотел бы разработать что-то для работы с ним, которое делает то же самое. Вот API WHMCS...

http://wiki.whmcs.com/API:Functions

Мне интересно, было бы более разумно использовать API из удаленного приложения C++ или просто проверять базу данных MySQL на наличие новых билетов? На самом деле это не то, с чем я слишком хорошо знаком (я обычно делаю моды), но это не кажется слишком сложным. Мне просто нужна помощь в выборе наилучшего подхода.


person David Powers    schedule 03.05.2010    source источник


Ответы (2)


Я всегда предпочитаю опубликованный API базе данных черного ящика (обычно), которая имеет гораздо более высокую скорость изменений. API был предоставлен специально для интеграции.

person Joe    schedule 03.05.2010

Во-первых, я бы вообще не пошел по пути игры с базой данных, у важной системы база данных должна быть доступна только с 127.0.0.1, что исключило бы эту возможность.

Затем у вас есть возможность либо push-уведомлений, либо опроса, в зависимости от того, как работает ваше приложение.

Для опроса вам нужно будет запомнить, какой билет вы видели последним, тогда вы можете использовать метод API:Get_Tickets (я считаю, что вы должны использовать limitstart == последний билет, который вы видели - мы не используем эту часть whmcs, а вместо этого также используйте каяко, так что я не уверен)

В качестве альтернативы, если вам нужны push-уведомления, вы можете использовать http://wiki.whmcs.com/Hooks и хук TicketOpen, а затем заставить whmcs отправить идентификатор билета в ваше приложение.

person Shane Mc Cormack    schedule 26.05.2010