Das Discourse AI-Plugin verfügt über Funktionen zur Stimmungsanalyse, die Ihnen helfen können, die emotionale Stimmung von Diskussionen in Ihrer Community tiefer zu verstehen. Dieses Thema behandelt zwei detaillierte Beispielabfragen für den Data Explorer, die diese KI-Funktionen nutzen, um Einblicke in Discourse-Communities zu gewinnen.
- KI-Stimmung pro Kategorie und Vertrauensstufe gesamt: Eine Zeitreihenanalyse, die Stimmungstrends wöchentlich innerhalb bestimmter Kategorien und Vertrauensstufen verfolgt.
- KI-Emotions-Ausreißer-Themen: Identifiziert Diskussionsbeiträge, die signifikante emotionale Reaktionen auf einer Discourse-Website auslösen.
Voraussetzungen
Um diese Berichte nutzen zu können, benötigen Sie:
- Installiertes und aktiviertes Discourse AI-Plugin: Das Discourse AI-Plugin muss auf Ihrer Instanz installiert sein.
- Aktivierte Stimmungsanalyse: Das Sentiment Analysis-Modul muss konfiguriert und aktiv sein.
- Data Explorer-Plugin: Erforderlich zum Ausführen dieser SQL-Abfragen.
- Historische Stimmungsdaten: Ausreichend auf Stimmungen analysierte Beiträge für aussagekräftige Ergebnisse (möglicherweise ist ein Nachfüllvorgang erforderlich).
KI-Stimmungsmodelle und ihre Funktionsweise
Bevor wir uns den Berichten widmen, ist es hilfreich zu verstehen, was die Stimmungsmodelle in den Beiträgen Ihrer Community analysieren:
- Gesamtstimmung: Das cardiffnlp/twitter-roberta-base-sentiment-latest-Modell klassifiziert Beiträge als positiv, negativ oder neutral.
- Emotionserkennung: Das SamLowe/roberta-base-go_emotions-Modell identifiziert spezifische Emotionen in Beiträgen, wie Freude, Trauer, Wut usw.
Diese Modelle analysieren den Text jedes Beitrags und speichern ihre Klassifizierungen in Ihrer Datenbank, die dann vom Data Explorer-Plugin abgefragt werden können.
Bericht: KI-Stimmung pro Kategorie und Vertrauensstufe gesamt
-- [params]
-- date :start_date = 2025-01-01
-- date :end_date = 2025-12-31
-- category_id :category_id = 6
-- int :min_trust_level = 0
-- boolean :exclude_staff = false
-- Erstellen eines temporären Ergebnissatzes, der Stimmungsmetriken wöchentlich für die angegebene Kategorie aggregiert
WITH sentiment_counts AS (
SELECT
c.id as category_id,
c.name as category_name,
-- Beiträge wöchentlich gruppieren für Zeitreihenanalyse
DATE_TRUNC('week', p.created_at) as week_starting,
EXTRACT(YEAR FROM p.created_at) as year,
EXTRACT(WEEK FROM p.created_at) as week_number,
-- Anzahl der Beiträge mit positiver Stimmung (Schwellenwert > 0.6)
COUNT(CASE WHEN (cr.classification::jsonb->'positive')::float > 0.6 THEN 1
ELSE NULL END) as positive_count,
-- Anzahl der Beiträge mit negativer Stimmung (Schwellenwert > 0.6)
COUNT(CASE WHEN (cr.classification::jsonb->'negative')::float > 0.6 THEN 1
ELSE NULL END) as negative_count,
-- Anzahl der Beiträge mit neutraler Stimmung (sowohl positiv als auch negativ <= 0.6)
COUNT(CASE WHEN (cr.classification::jsonb->'positive')::float <= 0.6
AND (cr.classification::jsonb->'negative')::float <= 0.6 THEN 1
ELSE NULL END) as neutral_count,
-- Gesamtzahl der Beiträge mit Stimmungsanalyse
COUNT(*) as total_classifications
FROM classification_results cr
-- Beiträge verknüpfen, um Erstellungsdaten und Metadaten zu erhalten
JOIN posts p ON p.id = cr.target_id AND cr.target_type = 'Post'
-- Themen verknüpfen, um nach Kategorie zu filtern
JOIN topics t ON t.id = p.topic_id
-- Benutzer verknüpfen, um nach Vertrauensstufe zu filtern
JOIN users u ON u.id = p.user_id
-- Kategorien verknüpfen, um den Kategorienamen zu erhalten
JOIN categories c ON c.id = t.category_id
WHERE
-- Nur Stimmungsresultate dieses spezifischen Modells einschließen
cr.model_used = 'cardiffnlp/twitter-roberta-base-sentiment-latest'
-- Nur reguläre Themen einschließen (keine PMs usw.)
AND t.archetype = 'regular'
-- Systembeiträge ausschließen
AND p.user_id > 0
-- Nach der ausgewählten Kategorie filtern
AND c.id = :category_id
-- Nach Mindestvertrauensstufe filtern
AND u.trust_level >= :min_trust_level
-- Mitarbeiterbenutzer ausschließen, falls der Parameter gesetzt ist
AND (:exclude_staff = false OR (u.admin = false AND u.moderator = false))
-- Nach Datumsbereich filtern
AND p.created_at BETWEEN :start_date AND :end_date
-- Nach Woche und Kategorie gruppieren
GROUP BY c.id, c.name, week_starting, year, week_number
)
-- Endgültige Ergebnisse für die Anzeige formatieren
SELECT
category_id,
category_name,
-- In Datum konvertieren für sauberere Anzeige
week_starting::Date,
-- Als ISO-Wochennotation formatieren (JJJJ-WXX)
year || '-W' || LPAD(week_number::text, 2, '0') as year_week,
-- Netto-Stimmung berechnen (positiv minus negativ)
positive_count - negative_count as sentiment_balance,
positive_count,
negative_count,
neutral_count,
-- Prozentsatz positiver Beiträge berechnen (auf 2 Dezimalstellen gerundet)
ROUND(
(positive_count::float / NULLIF(total_classifications, 0) * 100)::numeric,
2
) as positive_percentage
FROM sentiment_counts
-- Chronologisch sortieren, um Stimmungstrends über die Zeit zu zeigen
ORDER BY week_starting ASC
Dieser Bericht bietet eine wöchentliche Analyse der Stimmungstrends innerhalb einer bestimmten Kategorie und zeigt:
- Anzahl der positiven, negativen und neutralen Beiträge für jede Woche
- Eine Berechnung der Stimmungsbilanz (positive Beiträge minus negative Beiträge)
- Den Prozentsatz positiver Beiträge im Verhältnis zur Gesamtzahl der analysierten Beiträge
- Filterung nach Benutzer-Vertrauensstufe und Option zum Ausschließen von Mitarbeiterbeiträgen
Dieser Bericht ist wertvoll für:
- Verfolgung von Stimmungstrends in der Community über die Zeit in bestimmten Kategorien
- Identifizierung von Schwankungen in der Community-Stimmung, die mit bestimmten Ereignissen oder Änderungen korrelieren könnten
- Vergleich der Stimmung zwischen verschiedenen Benutzersegmenten (nach Vertrauensstufe)
- Messung der Auswirkungen von Moderationseingriffen auf die allgemeine Stimmung der Community
Parameter
Die Abfrage akzeptiert mehrere Parameter zur Anpassung Ihrer Analyse:
- Datumsbereich: Start- und Enddatum für Ihren Analysezeitraum festlegen
- Kategorie: Auswählen, welche Kategorie analysiert werden soll
- Mindestvertrauensstufe: Filtern, um nur Beiträge von Benutzern ab einer bestimmten Vertrauensstufe einzuschließen
- Mitarbeiter ausschließen: Option, um Mitarbeiterbeiträge aus der Analyse auszuschließen (um sich auf reguläre Community-Mitglieder zu konzentrieren)
Ergebnisse
Die Ergebnisse werden in einer Tabelle dargestellt, wobei jede Zeile eine Woche Daten repräsentiert:
- Kategorieinformationen: ID und Name der analysierten Kategorie
- Zeiträume: Wochenanfangsdatum und ISO-Wochennotation (JJJJ-WXX)
- Stimmungsmetriken:
- Stimmungsbilanz: Die Differenz zwischen positiven und negativen Beiträgen (ein positiver Wert zeigt eine insgesamt positive Stimmung an)
- Anzahl positiv/negativ/neutral: Die Anzahl der Beiträge in jeder Stimmungskategorie
- Prozentsatz positiv: Der Prozentsatz der Beiträge, die als positiv klassifiziert wurden
Beispielergebnisse
| category_name | week_starting | year_week | sentiment_balance | positive_count | negative_count | neutral_count | positive_percentage |
|---|---|---|---|---|---|---|---|
| Product Discussion | 2025-01-06 | 2025-W01 | -8 | 24 | 32 | 145 | 11.94 |
| Product Discussion | 2025-01-13 | 2025-W02 | -11 | 30 | 41 | 210 | 10.68 |
| Product Discussion | 2025-01-20 | 2025-W03 | -9 | 28 | 37 | 220 | 9.82 |
| Product Discussion | 2025-01-27 | 2025-W04 | -13 | 33 | 46 | 260 | 9.74 |
| Product Discussion | 2025-02-03 | 2025-W05 | -15 | 22 | 37 | 180 | 9.21 |
| Product Discussion | 2025-02-10 | 2025-W06 | -6 | 37 | 43 | 195 | 13.45 |
Bericht: KI-Emotions-Ausreißer-Themen
-- [params]
-- date :start_date = 2025-01-01
-- date :end_date = 2025-12-31
-- category_id :category_id = 6
-- int :min_trust_level = 1
-- int :emotion_threshold = 10
-- Zuerst eine Common Table Expression (CTE) erstellen, die emotionale Reaktionen pro Thema aggregiert
WITH topic_emotions AS (
SELECT
topics.id AS topic_id, -- Topic-ID für spätere Verknüpfung/Filterung speichern
topics.title, -- Topic-Titel für lesbare Ergebnisse einfügen
topics.created_at::date AS topic_date, -- Erstellungsdatum des Topics speichern
-- Für jeden Emotionstyp Anzahl der Beiträge zählen, bei denen diese Emotion den Konfidenzschwellenwert von 0.1 überschreitet
-- Die classification_results-Tabelle speichert Emotionsscores als JSON-Werte
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'admiration')::float > 0.1) AS admiration_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'amusement')::float > 0.1) AS amusement_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'anger')::float > 0.1) AS anger_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'annoyance')::float > 0.1) AS annoyance_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'approval')::float > 0.1) AS approval_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'caring')::float > 0.1) AS caring_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'confusion')::float > 0.1) AS confusion_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'curiosity')::float > 0.1) AS curiosity_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'desire')::float > 0.1) AS desire_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'disappointment')::float > 0.1) AS disappointment_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'disapproval')::float > 0.1) AS disapproval_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'disgust')::float > 0.1) AS disgust_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'embarrassment')::float > 0.1) AS embarrassment_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'excitement')::float > 0.1) AS excitement_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'fear')::float > 0.1) AS fear_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'gratitude')::float > 0.1) AS gratitude_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'grief')::float > 0.1) AS grief_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'joy')::float > 0.1) AS joy_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'love')::float > 0.1) AS love_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'nervousness')::float > 0.1) AS nervousness_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'neutral')::float > 0.1) AS neutral_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'optimism')::float > 0.1) AS optimism_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'pride')::float > 0.1) AS pride_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'realization')::float > 0.1) AS realization_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'relief')::float > 0.1) AS relief_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'remorse')::float > 0.1) AS remorse_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'sadness')::float > 0.1) AS sadness_count,
COUNT(*) FILTER (WHERE (classification_results.classification::jsonb->'surprise')::float > 0.1) AS surprise_count,
-- Gesamtzahl der emotionalen Reaktionen für Ranking-Zwecke berechnen
COUNT(*) AS total_emotional_reactions
FROM
classification_results
-- Mit posts-Tabelle verknüpfen, um Post-Metadaten zu erhalten und gelöschte Beiträge auszuschließen
INNER JOIN
posts ON posts.id = classification_results.target_id AND
posts.deleted_at IS NULL -- Gelöschte Beiträge ausschließen
-- Mit topics-Tabelle verknüpfen, um Topic-Metadaten zu erhalten und nach Topic-Typ/Status filtern
INNER JOIN
topics ON topics.id = posts.topic_id AND
topics.archetype = 'regular' AND -- Nur reguläre Themen einschließen (keine PMs oder Systemnachrichten)
topics.deleted_at IS NULL -- Gelöschte Themen ausschließen
-- Mit users-Tabelle verknüpfen, um Benutzer-Vertrauensstufe für Filterung zu erhalten
INNER JOIN
users ON users.id = posts.user_id
WHERE
-- Nur Emotion-Klassifizierungen für Beiträge einschließen (keine anderen Inhaltstypen)
classification_results.target_type = 'Post' AND
-- Nur Ergebnisse dieses spezifischen Emotionserkennungsmodells verwenden
classification_results.model_used = 'SamLowe/roberta-base-go_emotions' AND
-- Nach Datumsbereich mit parametrisierten Werten filtern
posts.created_at BETWEEN :start_date AND :end_date AND
-- Nach der angegebenen Kategorie filtern
(topics.category_id = :category_id) AND
-- Nur Beiträge von Benutzern mit ausreichender Vertrauensstufe einschließen
(users.trust_level >= :min_trust_level)
-- Alle Zählungen nach Topic gruppieren
GROUP BY
topics.id, topics.title, topics.created_at::date
)
-- Hauptabfrage, die die aggregierten Daten aus der CTE formatiert und filtert
SELECT
topic_id, -- Topic-ID anzeigen (wird in Discourse als Link gerendert)
--title, -- Topic-Titel anzeigen
topic_date, -- Erstellungsdatum des Topics anzeigen
total_emotional_reactions, -- Gesamtzahl der erkannten Emotionen anzeigen
-- Array signifikanter Emotionen in formatierten String konvertieren
-- Nur Emotionen, die den Schwellenwert überschreiten, werden eingeschlossen, andere werden NULL und weggelassen
-- Jede Emotion wird als "EmotionName(count)" formatiert
ARRAY_TO_STRING(ARRAY[
CASE WHEN admiration_count >= :emotion_threshold THEN 'Admiration(' || admiration_count || ')' ELSE NULL END,
CASE WHEN amusement_count >= :emotion_threshold THEN 'Amusement(' || amusement_count || ')' ELSE NULL END,
CASE WHEN anger_count >= :emotion_threshold THEN 'Anger(' || anger_count || ')' ELSE NULL END,
CASE WHEN annoyance_count >= :emotion_threshold THEN 'Annoyance(' || annoyance_count || ')' ELSE NULL END,
CASE WHEN approval_count >= :emotion_threshold THEN 'Approval(' || approval_count || ')' ELSE NULL END,
CASE WHEN caring_count >= :emotion_threshold THEN 'Caring(' || caring_count || ')' ELSE NULL END,
CASE WHEN confusion_count >= :emotion_threshold THEN 'Confusion(' || confusion_count || ')' ELSE NULL END,
CASE WHEN curiosity_count >= :emotion_threshold THEN 'Curiosity(' || curiosity_count || ')' ELSE NULL END,
CASE WHEN desire_count >= :emotion_threshold THEN 'Desire(' || desire_count || ')' ELSE NULL END,
CASE WHEN disappointment_count >= :emotion_threshold THEN 'Disappointment(' || disappointment_count || ')' ELSE NULL END,
CASE WHEN disapproval_count >= :emotion_threshold THEN 'Disapproval(' || disapproval_count || ')' ELSE NULL END,
CASE WHEN disgust_count >= :emotion_threshold THEN 'Disgust(' || disgust_count || ')' ELSE NULL END,
CASE WHEN embarrassment_count >= :emotion_threshold THEN 'Embarrassment(' || embarrassment_count || ')' ELSE NULL END,
CASE WHEN excitement_count >= :emotion_threshold THEN 'Excitement(' || excitement_count || ')' ELSE NULL END,
CASE WHEN fear_count >= :emotion_threshold THEN 'Fear(' || fear_count || ')' ELSE NULL END,
CASE WHEN gratitude_count >= :emotion_threshold THEN 'Gratitude(' || gratitude_count || ')' ELSE NULL END,
CASE WHEN grief_count >= :emotion_threshold THEN 'Grief(' || grief_count || ')' ELSE NULL END,
CASE WHEN joy_count >= :emotion_threshold THEN 'Joy(' || joy_count || ')' ELSE NULL END,
CASE WHEN love_count >= :emotion_threshold THEN 'Love(' || love_count || ')' ELSE NULL END,
CASE WHEN nervousness_count >= :emotion_threshold THEN 'Nervousness(' || nervousness_count || ')' ELSE NULL END,
CASE WHEN optimism_count >= :emotion_threshold THEN 'Optimism(' || optimism_count || ')' ELSE NULL END,
CASE WHEN pride_count >= :emotion_threshold THEN 'Pride(' || pride_count || ')' ELSE NULL END,
CASE WHEN realization_count >= :emotion_threshold THEN 'Realization(' || realization_count || ')' ELSE NULL END,
CASE WHEN relief_count >= :emotion_threshold THEN 'Relief(' || relief_count || ')' ELSE NULL END,
CASE WHEN remorse_count >= :emotion_threshold THEN 'Remorse(' || remorse_count || ')' ELSE NULL END,
CASE WHEN sadness_count >= :emotion_threshold THEN 'Sadness(' || sadness_count || ')' ELSE NULL END,
CASE WHEN surprise_count >= :emotion_threshold THEN 'Surprise(' || surprise_count || ')' ELSE NULL END
], ', ', '') AS significant_emotions -- Mit Komma-Abtrennern verbinden, leerer String wenn kein Trennzeichen benötigt wird
FROM
topic_emotions
WHERE
-- Nur Themen einschließen, bei denen mindestens eine Emotion den Schwellenwert überschreitet
-- Dies identifiziert Themen mit signifikanter emotionaler Wirkung
(
admiration_count >= :emotion_threshold OR
amusement_count >= :emotion_threshold OR
anger_count >= :emotion_threshold OR
annoyance_count >= :emotion_threshold OR
approval_count >= :emotion_threshold OR
caring_count >= :emotion_threshold OR
confusion_count >= :emotion_threshold OR
curiosity_count >= :emotion_threshold OR
desire_count >= :emotion_threshold OR
disappointment_count >= :emotion_threshold OR
disapproval_count >= :emotion_threshold OR
disgust_count >= :emotion_threshold OR
embarrassment_count >= :emotion_threshold OR
excitement_count >= :emotion_threshold OR
fear_count >= :emotion_threshold OR
gratitude_count >= :emotion_threshold OR
grief_count >= :emotion_threshold OR
joy_count >= :emotion_threshold OR
love_count >= :emotion_threshold OR
nervousness_count >= :emotion_threshold OR
optimism_count >= :emotion_threshold OR
pride_count >= :emotion_threshold OR
realization_count >= :emotion_threshold OR
relief_count >= :emotion_threshold OR
remorse_count >= :emotion_threshold OR
sadness_count >= :emotion_threshold OR
surprise_count >= :emotion_threshold
)
-- Ergebnisse nach den meisten emotionalen Reaktionen sortieren
ORDER BY
total_emotional_reactions DESC
Dieser Bericht identifiziert Themen, die in Ihrer Community signifikante emotionale Reaktionen ausgelöst haben, basierend auf:
- Einer Zählung jeder Emotionsart, die in Beiträgen innerhalb des Topics erkannt wurde
- Einem konfigurierbaren Schwellenwert zur Bestimmung, was eine “signifikante” emotionale Reaktion darstellt
- Filterung nach Kategorie, Datumsbereich und Benutzer-Vertrauensstufe
Dieser Bericht hilft Ihnen:
- Potenziell problematische Diskussionen zu identifizieren, die starke negative Emotionen auslösen
- Hochgradig ansprechende Inhalte zu finden, die emotional in Ihrer Community resonieren
- Themen zu erkennen, die möglicherweise Moderationsaufmerksamkeit benötigen, bevor sie eskalieren
- Inhaltsthemen zu entdecken, die spezifische emotionale Reaktionen auslösen
- Besser zu verstehen, was emotionale Engagement in Ihrer Community antreibt
Parameter
Die Abfrage akzeptiert mehrere Parameter:
- Datumsbereich: Start- und Enddatum für Ihren Analysezeitraum festlegen
- Kategorie: Auswählen, welche Kategorie analysiert werden soll
- Mindestvertrauensstufe: Filtern, um nur Beiträge von Benutzern ab einer bestimmten Vertrauensstufe einzuschließen
- Emotionsschwellenwert: Festlegen, wie viele Instanzen einer Emotion erforderlich sind, um sie als signifikant zu betrachten
Ergebnisse
Die Ergebnisse zeigen:
- Topic-ID: Verlinkt direkt zum Topic (in Data Explorer anklickbar)
- Topic-Datum: Wann das Topic erstellt wurde
- Gesamtzahl emotionaler Reaktionen: Die Gesamtzahl der erkannten emotionalen Reaktionen
- Signifikante Emotionen: Eine formatierte Liste der Emotionen, die Ihren Schwellenwert überschritten haben, mit ihren Zählungen in Klammern
Die erkannten Emotionen umfassen ein breites Spektrum: Bewunderung, Belustigung, Wut, Ärger, Zustimmung, Fürsorge, Verwirrung, Neugier, Wunsch, Enttäuschung, Missbilligung, Ekel, Verlegenheit, Aufregung, Angst, Dankbarkeit, Trauer, Freude, Liebe, Nervosität, Neutralität, Optimismus, Stolz, Erkenntnis, Erleichterung, Reue, Traurigkeit und Überraschung.
Beispielergebnisse
| topic | topic_date | total_emotional_reactions | significant_emotions |
|---|---|---|---|
| Feature Request: Increased API Rate Limits | 2025-03-06 | 42 | Approval(15), Confusion(9), Curiosity(7), Gratitude(8) |
| Authentication Error with Third-Party Integration | 2025-01-07 | 33 | Curiosity(6), Gratitude(5), Disapproval(8), Frustration(9) |
| Best Practices for Configuration Settings | 2025-02-16 | 31 | Curiosity(9), Excitement(6), Gratitude(5), Optimism(5) |
| Troubleshooting Database Connection Issues | 2025-01-15 | 29 | Curiosity(7), Confusion(8), Disappointment(6), Frustration(5) |
| Critical Bug in Latest Beta Release | 2025-02-02 | 26 | Confusion(7), Concern(6), Disapproval(5), Urgency(6) |
Praktische Anwendungen im Community-Management
Diese Berichte können Ihren Workflow im Community-Management auf verschiedene Weise verbessern:
- Frühzeitige Intervention: Emotional aufgeladene Themen identifizieren, die möglicherweise moderiert werden müssen, bevor sie problematisch werden
- Content-Planung: Einblicke darüber nutzen, was positive Emotionen auslöst, um Ihre Content-Strategie zu informieren
- Wirkung messen: Bewerten, wie politische Änderungen, neue Funktionen oder Ereignisse die Stimmung der Community beeinflussen
- Gezieltes Engagement: Mitarbeiteraufmerksamkeit auf Themen mit starken emotionalen Reaktionen konzentrieren, die von offiziellen Antworten profitieren könnten