Nous essayons d’augmenter la participation à nos événements en trouvant les utilisateurs qui se sont intéressés à du contenu existant similaire. Avec l’aide du bot IA, nous avons pu élaborer la requête suivante.
-- [params]
-- text :keyword
-- int :min_engagements
-- null string :tag_name
WITH keyword_posts AS (
SELECT
p.id AS post_id
FROM
posts p
JOIN
topics t ON t.id = p.topic_id
LEFT JOIN
topic_tags tt ON tt.topic_id = t.id
LEFT JOIN
tags tg ON tg.id = tt.tag_id
WHERE
p.raw ILIKE '%' || :keyword || '%'
AND (:tag_name is null OR tg.name = :tag_name)
),
user_engagement AS (
SELECT
ua.user_id,
COUNT(DISTINCT ua.target_post_id) AS engaged_posts_count
FROM
user_actions ua
JOIN
keyword_posts kp ON kp.post_id = ua.target_post_id
WHERE
ua.action_type IN (1, 4, 5, 6)
AND ua.user_id NOT IN (
SELECT gu.user_id
FROM group_users gu
JOIN groups g ON g.id = gu.group_id
WHERE g.name = 'developer_relations'
)
GROUP BY
ua.user_id
)
SELECT
ue.user_id,
ue.engaged_posts_count
FROM
user_engagement ue
WHERE
ue.engaged_posts_count >= :min_engagements
ORDER BY
ue.engaged_posts_count DESC
Nous laissons aux utilisateurs le temps de découvrir et de s’inscrire à nos événements de manière organique, mais à l’approche de l’événement, nous voulons envoyer des invitations plus ciblées. Pour ce faire, nous devons recouper la liste des inscrits existante et les exclure de la liste des utilisateurs ciblés. Existe-t-il un moyen d’accéder à cette liste d’inscrits via data-explorer ?
La seule façon que j’ai trouvée pour y accéder manuellement est d’utiliser l’option d’exportation sur un objet d’événement :
Le problème est que cela génère un fichier zippé qui m’est envoyé par message privé, et je suppose que Data Explorer ne peut pas y accéder.
