В современных системах поддержки клиентов важна не только обработка новых тикетов, но и эффективное управление возвратами ранее закрытых обращений. Автоматическое возвращение тикетов позволяет повторно активировать тикеты, если клиент продолжил диалог или возникли новые вопросы по закрытому вопросу. В этой статье разберём, как реализовать такую функцию в WordPress, используя собственный код и плагины.
Что такое автоматическое возвращение тикетов и зачем оно нужно
Автоматическое возвращение тикетов — это механизм, который позволяет системе автоматически менять статус закрытого тикета на активный при определённых условиях. Например, если пользователь отправил новый комментарий в закрытом тикете, или если прошло определённое время и тикет требует переоткрытия для проверки.
Такой подход помогает не пропускать повторные обращения, улучшает качество поддержки и повышает удовлетворённость клиентов.
Реализовать это можно несколькими способами — через кастомные хуки, cron-задачи или с помощью специализированных плагинов.
Использование кастомного кода для автоматического возврата тикетов
Отслеживание комментариев к закрытым тикетам
Основная логика — при добавлении комментария к тикету проверять его статус, и если он закрыт, менять статус на открытый.
Предположим, что тикеты — это кастомный тип записи ticket, а статусы хранятся в метаполе ticket_status со значениями open и closed.
add_action('comment_post', 'wpticket_auto_reopen_ticket', 10, 3);function wpticket_auto_reopen_ticket($comment_ID, $comment_approved, $commentdata) { if ($comment_approved != 1) return; $post_id = $commentdata['comment_post_ID']; if (get_post_type($post_id) !== 'ticket') return; $status = get_post_meta($post_id, 'ticket_status', true); if ($status === 'closed') { update_post_meta($post_id, 'ticket_status', 'open'); // Можно добавить уведомление ответственному сотруднику wp_mail('support@example.com', 'Тикет переоткрыт', 'Тикет #' . $post_id . ' был автоматически переоткрыт после комментария клиента.'); }}Такой простой код позволит автоматически возвращать тикет в работу при новом комментарии.
Автоматический возврат по времени
Допустим, нужно автоматически переоткрывать тикеты, которые были закрыты более 3 дней назад, чтобы проверить решение.
Для этого создадим cron-задачу, которая будет ежедневно проверять тикеты и переоткрывать просроченные.
function wpticket_schedule_reopen() { if (! wp_next_scheduled('wpticket_reopen_old_tickets')) { wp_schedule_event(time(), 'daily', 'wpticket_reopen_old_tickets'); }}add_action('wp', 'wpticket_schedule_reopen');add_action('wpticket_reopen_old_tickets', 'wpticket_reopen_old_tickets_callback');function wpticket_reopen_old_tickets_callback() { $args = [ 'post_type' => 'ticket', 'meta_key' => 'ticket_status', 'meta_value' => 'closed', 'date_query' => [ 'column' => 'post_modified_gmt', 'before' => '3 days ago', ], 'posts_per_page' => -1, ]; $query = new WP_Query($args); foreach ($query->posts as $ticket) { update_post_meta($ticket->ID, 'ticket_status', 'open'); // Отправляем уведомление wp_mail('support@example.com', 'Тикет переоткрыт по времени', 'Тикет #' . $ticket->ID . ' был автоматически переоткрыт после 3 дней.'); }}Такое решение позволяет регулярно контролировать закрытые тикеты и возвращать их в работу.
Плагины для улучшения работы с тикетами и автоматизацией возвратов
Если вы не хотите писать код с нуля, можно воспользоваться готовыми плагинами, которые позволяют расширять функционал тикет-систем:
- WP Support Plus Responsive Ticket System — бесплатный и удобный плагин с системой статусов и уведомлений. Можно настроить автоматические действия через вебхуки.
- Awesome Support — мощное решение с расширениями, включая автоматизацию статусов и интеграцию с почтой.
- Clearfy Pro (подробнее на WPSHOP) — плагин для оптимизации и расширения WordPress, включает возможности для настройки автоматических сценариев, что можно использовать для автоматизации тикетов.
Пример автоматизации с плагином Clearfy Pro
Clearfy позволяет создавать автоответы и триггеры по событиям. Например, можно задать правило: при новом комментарии к закрытому тикету — сменить статус.
Это реализуется через интерфейс плагина, что избавляет от необходимости писать код.
Рекомендации по внедрению автоматического возврата тикетов
При реализации автоматических возвратов важно учитывать:
- Чёткое определение статусов тикетов и путей их изменения.
- Обеспечение уведомлений ответственным сотрудникам для оперативного реагирования.
- Тестирование кода и автоматизаций на тестовом сайте, чтобы избежать нежелательных циклов переоткрытия.
- Логирование действий для последующего аудита.
Автоматизация возврата тикетов — важный элемент эффективной службы поддержки, который поможет вывести обслуживание клиентов на новый уровень.