So verwenden Sie Regex, um die Domäne(n) zu definieren, die WalkMe injizieren
Allgemeine Richtlinien
Regex sollte so konkret wie möglich sein, aber auch allgemein genug, dass es auf verschiedenen Seiten funktioniert. Um dieses Gleichgewicht zu erreichen, verwenden Sie kundenspezifische Präfixe.
- Beispiel:
- URL: walkme.my.salesforce.com
- Regex: .*walkme.my.salesforce.com.* anstelle von .*salesforce.com.*
Regex MUSS für jede Umgebung unterschiedlich sein. Hier sind auch Präfixe praktisch.
- Beispiel:
- Produktions-URL: na3.salesforce.com
- Sandbox-URL: cs23.salesforce.com
- Produktions-Regex: .*na.*.salesforce.com.*
- Sandbox Regex: .*cs.*.salesforce.com.*
Beginnen und beenden Sie jede Zeichenfolge von Regex mit .*
- Beispiel: .*salesforce.com.*
Anstatt von Ziffern verwenden Sie .*. Ersetzen Sie alle Zahlen in einer URL durch .*
- Beispiel:
- URL: cs23.salesforce.com
- Regex: .*cs.*.salesforce.com.*
Sicherstellen, dass vor jedem Punkt ein \ gesetzt wird.
- Beispiel: .*salesforce \. com.*
Bindestriche müssen nicht entfernt werden.
- Beispiel:
- Verwenden Sie nicht: .*panasonic\-\-full\.salesforce\.com.*
- Verwenden Sie: .*panasonic--full\.salesforce\.com.*)
Um eine URL mit zwei oder mehr verschiedenen Präfixen einzufügen, verwenden Sie (erste|zweite|dritte|usw.), wo die Präfixe vorkommen.
- Beispiel:
- URLs: walkme.salesforce.com und sandbox.salesforce.com
- Regex: .*(walkme|sandbox).salesforce.com.*)
Zum Ausschluss eines Wortes durch eine Regex siehe das folgende Beispiel, bei dem eine Erweiterung mit einem Editorkonto auf Salesforce Classic und einem auf Salesforce Console erstellt werden soll.
- Beispiel:
- Salesforce klassisch regex:.* cs.*.salesforce.com(?!console).*
- Hinweis: Dies (?!console) schließt das Wort Konsole in Regex aus.
- Salesforce-Konsole regex:.* cs.*.salesforce.com/console.*
- Salesforce klassisch regex:.* cs.*.salesforce.com(?!console).*
Wenn Sie mehr als eine Regex in ein Paket aufnehmen möchten, setzen Sie ein | zwischen jede Regex ohne Abstand
- Beispiel: .*cs.*.salesforce.com.*|.*cs.*.visual.force.com.*
Beachten Sie, dass niemals zwei aufeinanderfolgende || in einem Paket stehen dürfen, da dies zu einer Allow-Liste und einer Anpassung an alle URLs führt und auf bestimmten Websites Fehler verursacht.
Bei Regex müssen Sie auf Klein- und Großschreibung achten. Stellen Sie sicher, dass die URL innerhalb von Regex der Klein- bzw. Großschreibung entspricht.
Stricter Domain Regex
Es kann ein Szenario geben, in dem Sie das Regex „festziehen“ müssen, um einen bestimmten Rahmen auszuschließen. Beispielsweise möchten Sie WalkMe in einem bestimmten iFrame injizieren, aber die Domain dieses iFrames ist in vielen anderen iFrames als Referenz enthalten.
Beispiel einer iFrame-Domain für WalkMe: https://visual.force.com/1000
- https://visual.force.com/1000
Beispiel für eine iFrame-Domäne, die wir daran hindern wollen, WalkMe einzubinden
- salesforce.com/referrer?=https://visual.force.com/1000
Um die Regex anzugeben, die am Anfang der URL stehen muss, verwenden wir
- ^https?://[^ /]*(visual.force).com
Mit dieser Regex wird WalkMe nur dann in die Domain https://visual.force.com iFrame eingebunden, wenn es sich um den ersten Teil der URL handelt.
Plattformspezifische Regex-Tipps
Es gibt eine Reihe von Erweiterungen, die wir häufig konfigurieren sollen, die aber schon Standard sind.
Salesforce
Es ist äußerst wichtig, Salesforce-Erweiterungen sorgfältig zu erstellen und sie in einer Reihe von Testszenarien zu testen, da die Plattform seitenübergreifend variiert und viele analytische iFrames vorhanden sind, die 0px einnehmen.
Erstellen der Erweiterung
- Verwenden Sie ein negatives Look-ahead-Regex, um den Session-Server und andere unnötige Einfügungen zu vermeiden: (?!/(login/sessionserver| (?!/(login/sessionserver|s.gif)
- Die Verwendung der "Oder"-Logik innerhalb des Pakets ist effizienter als die Erstellung zweier separater Erweiterungen
- "na" kann manchmal"ap, "eu" oder "cs" sein, je nach geografischem Standort des Salesforce-Servers, aber es ändert sich im Allgemeinen nicht, bleiben Sie also bei der URL, die Sie haben.
- nameansNorthAmerica,apmeansAsia-Pacific,andeumeansEurope, Middle East or Africa.csrepresents a sandbox environment
- Die Nummer neben dem Code mit 2 Buchstaben gibt die Serverinstanz im zugeordneten Land an. Dies kann sich ändern, wenn Sie eine neue Umgebung hochladen oder eine bestehende Umgebung aktualisieren
- Sie können den Gesundheitszustand des Salesforce-Server sehen unter http://trust.salesforce.com/trust/instances
Testen der Erweiterung
- Bitten Sie das CSM, eine "schwere" Seite mit viel Inhalt oder alternativ eine wichtige Seite in der Implementierung bereitzustellen. Stellen Sie sicher, dass es dort gut funktioniert.
- Stellen Sie sicher, dass die Erweiterung nicht in zu vielen iFrames eingefügt wird. Verwenden Sie dabei das Master Extension Diagnostics Tool.
Test
Website | Beispiel-URLs | Vorgeschlagene Regex |
Salesforce Classic | https://panasonic--fullcopy.cs24.my.salesforce.com/ https://panasonic--fullcopy--field-trip.cs24.visual.force.com/ |
.*customername.*.cs.*.my.salesforce.com.*|.*cs.*.salesforce.com/(?!console).*|.*cs.*.visual.force.com.* |
Salesforce Lightning | https://cs24.lightning.force.com/ | .*cs.*.lightning.force.com.* |
Salesforce Console | https://cs6.salesforce.com/console?tsid=02u50000000e56v | .*cs.*.salesforce.com/console.* |
Produktion
Website | Beispiel-URLs | Vorgeschlagene Regex |
Salesforce Classic | https://panasonic.my.salesforce.com/home/home.jsp https://panasonic--c.na34.visual.force.com/ |
.*customername.my.salesforce.com.*|.*na.*.salesforce.com/(?!console).*|.*na.*.visual.force.com.* |
Salesforce Lightning | https://na34.lightning.force.com/ | .*na.*.lightning.force.com.* |
Salesforce Console | https://na2.salesforce.com/console?tsid=02u50000000e56v | .*na.*.salesforce.com/console.* |
Workday®
Test
Beispiel-URL | Vorgeschlagene Regex |
impl.workday.com/tripadvisor/d/home.htmld | .*impl.workday.com/customername.* |
Produktion
Beispiel-URL | Vorgeschlagene Regex |
https://www.myworkday.com/sunbeltrentals/login.flex | .*myworkday.com/customername.* |
SuccessFactors
Test
Beispiel-URL | Vorgeschlagene Regex |
https://hcm4preview.sapsf.com/ | .*hcm.*preview.sapsf.com.* |
Produktion
Beispiel-URL | Vorgeschlagene Regex |
https://performancemanager5.successfactors.com/ | .*performancemanager.*.successfactors.com.* |
Unterscheiden zwischen ähnlichen, aber kritisch differenzierten URLs
Bei der Konfiguration einer Erweiterung benötigen Sie oft mehrere Pakete für verschiedene Plattformen, z. B. eines für normales Salesforce (SFDC) und ein anderes für Service Cloud. In solchen Fällen wird Ihre Browser-Erweiterung Regex verwenden, um zwischen Plattformen zu unterscheiden und verschiedene Snippets in diese verschiedenen Plattformen je nach Bedarf einzufügen. Im SFDC Service Cloud könnten wir hypothetisch Regex verwenden, um zwischen diesen Plattformen wie folgt zu unterscheiden:
Normale SFDC-URL:
Normale Service Cloud-URL:
Regex-Anweisung für die Erweiterung, um eine beliebige Service Cloud-URL zu erfassen:
- .*cs2.salesforce.com/console.*
Dies konzentriert sich auf das Auftreten des Begriffs "Konsole" unmittelbar nach der salesforce.com Domä ne.
Da ein klarer Unterschied zwischen der Service-Cloud-URL und der SFDC-URL das Erscheinungsbild des Wortes "console" unmittelbar nach "salesforce.com" ist, können wir dies zu unserem Vorteil nutzen.
Mit den Regex-Symbolen "?!" können wir alle Instanzen von "salesforce.com" ausführen, die nicht vom Wort "console" gefolgt werden. Angesichts unserer beiden Basis-URLs wissen wir, dass es sich hierbei um SFDC-URLs handelt.
SFDC regex:
- .*cs2.salesforce.com/(?!console).*
Hier bedeutet "?!console" eine URL, die die Elemente in diesem Regex besitzt, wobei "console" NICHT an dieser Position im Ausdruck angezeigt wird.
Dies entspricht nicht https://cs2.salesforce.com/console?tsid=02u500e56v, aber es entspricht https://cs2.salesforce.com/home/home.jsp?tsid=02u00hV.se