У нас есть вебхук на событие “user_logged_in”. В полезной нагрузке содержится свойство post_count для пользователя, который только что вошел в систему. Хотя пользователь написал 2 сообщения, в полезной нагрузке указано post_count: 0. На мой взгляд, это ошибка.
Получателю вебхука необходима эта статистика пользователя, чтобы принять решение о дальнейших действиях.
Единственная похожая тема, которую я нашел, это эта; возможно, она связана, но не касается того же самого API: Category post_count not incrementing
Я должен исправить себя: post_count не всегда равен нулю. При проверке с моим собственным аккаунтом post_count выглядел правдоподобно (хотя я не знаю, точен ли он).
Но есть пользователь на нашем сайте, назовём его пользователь #1234, для которого выполняется следующее:
SELECT * FROM posts WHERE user_id=1234 возвращает две записи в таблице. Это те посты, которые также отображаются на странице активности профиля пользователя.
В полезной нагрузке вебхука, когда этот пользователь входит в систему или выходит из неё, содержится "post_count": 0.
Я протестировал, и количество постов не обновляется в реальном времени.
Предполагаю, что за это периодически отвечает Sidekiq-задача, но не знаю, какая именно.
Кажется, что нет конкретной связанной Sidekiq-задачи
Но я прочитал, что эта статистика обновляется хотя бы раз в день.
Возможно, здесь возникла путаница между «темами» и «сообщениями». Я ожидал, что создание новой темы — это просто особый тип сообщения. Структура базы данных это поддерживает.
Однако при проверке статистики профиля пользователя там указано что-то вроде «2 созданные темы, 0 созданных сообщений».
Так что, возможно, параметр «post_count», который я получаю, обозначает количество ответов на темы, а не общее количество всех сообщений?
С другой стороны, есть поле даты «last_posted_at», которое содержит дату создания последней темы. Так что, по крайней мере, здесь наблюдается некоторая несогласованность в именовании. Я ожидал, что значение «post_count» будет включать и первые сообщения в новых темах.
В любом случае, независимо от того, является ли это задуманным поведением, я не нахожу в JSON пользователя параметра topic_count или аналогичного. Как мне узнать общее количество сообщений, включая новые темы?