Loading
Experience Cloud
Konfigurera Apex-utlösare för att flagga objekt

Konfigurera Apex-utlösare för att flagga objekt

Använd utlösare för att skapa egen avancerad modereringslogik som automatiskt flaggar objekt i din Experience Cloud-webbplats.

Versioner som krävs

Tillgängliga i: både Salesforce Classic och Lightning Experience
Tillgängliga i: Utgåvorna Enterprise, Performance, Unlimited och Developer
Användarbehörigheter som krävs för att
Skapa utlösare: Ändra all data
Tips
Tips Visste du att du kan göra detta i användargränssnittet? De flesta webbplatser behöver inte egna modereringsutlösare. Du kan skapa modereringsregler och -kriterier direkt i Upplevelsearbetsområden. Mer information finns i Skapa regler för att moderera din Experience Cloud-webbplats.

Att använda utlösare för att automatiskt flagga objekt låter dig moderera din Experience Cloud-webbplats bakom kulisserna. Dessa flaggor är endast synliga för moderatorer. Du kan se flaggor i Upplevelsearbetsområden, söka efter dem i API, eller använda egna rapporttyper för att skapa rapporter om flaggade objekt, personer vars objekt flaggas mest, och mer.

Överväg följande när du skapar utlösare :

  • Skapa Apex efter infoga-utlösare för antingen FeedItem, FeedComment, ChatterMessage eller ContentDocument.
  • Definiera kriterier som när de uppfylls skapar en NetworkModeration (flag)-post, med FeedComment, FeedItem, ChatterMessage eller ContentDocumentsom överordnad post.
Exempel
Exempel

Denna utlösare flaggar automatiskt inlägg i din webbplats som innehåller BadWord.

trigger autoflagBadWordOnPost on FeedItem (after insert) {

    List<NetworkModeration> flags = new List<NetworkModeration>();
    
    for (FeedItem rec : trigger.new) {
        if (!<NetworkId>.equals(rec.networkScope)){
            continue;
        }

        if (rec.body.indexOf('BadWord') >= 0) {
            NetworkModeration nm = new NetworkModeration(EntityId = rec.id, Visibility = 'ModeratorsOnly');
            flags.add(nm);
        }
    }
    
    if (!flags.isEmpty()) {
        insert(flags);
    }
}

En liknande utlösare för kommentarer skulle se ut så här.

trigger autoflagBadWordOnComment on FeedComment (after insert) {
    List<NetworkModeration> flags = new List<NetworkModeration>();
    
    for (FeedComment rec : trigger.new) {
        if (!<NetworkId>.equals(rec.networkScope)) {
            continue;
        }

        if (rec.commentBody.indexOf('BadWord') >= 0) {
            NetworkModeration nm = new NetworkModeration(EntityId = rec.id, Visibility = 'ModeratorsOnly');
            flags.add(nm);
        }
    }
    
    if (!flags.isEmpty()){
        insert(flags);
    }
}
 
Laddar
Salesforce Help | Article