eADM:ssä ilmoitukset lähetetään, kun sääntöjoukko vastaa käyttäjää tiettyjen kriteerien perusteella. Nämä kriteerit voivat perustua tapahtumiin (esim. "Käyttäjä on luotu") tai tiettyjen attribuuttiarvojen omaavien objektien valintaan (esim. "Käyttäjän aloituspäivä on kahden päivän kuluttua").
Ongelmaksi voi muodostua säännöt, jotka perustuvat attribuutteihin eivätkä tapahtumiin. Esimerkiksi sääntö, jonka mukaan uudelle työntekijälle lähetetään tervetulotekstiviesti kaksi päivää ennen hänen aloituspäiväänsä, saattaa käynnistyä useita kertoja, jos kyseisenä päivänä suoritetaan useita järjestelmän synkronointeja. Ilman lisätarkistusta käyttäjä saisi saman viestin toistuvasti.
Jos haluat estää tämän, sinun on lisättävä sääntöjoukkoon ehto, joka tarkistaa, onko viesti jo lähetetty. Tämä tehdään käyttämällä[COUNTMESSAGESENT] toiminto.
Menettely
Noudata seuraavia ohjeita varmistaaksesi, että ilmoitus lähetetään vain kerran.
-
Siirry sen sääntökokonaisuuden kohdalle, joka laukaisee ilmoituksen, jota haluat muuttaa, ja avaa se.
-
Lisää uusi sääntöehto, jossa on seuraavat kolme osaa:
-
Attribuutti:
[COUNTMESSAGESENT; MessageID]. (Esim.[COUNTMESSAGESENT; 816]) -
Kunto:
is equal to -
Väite:
0
-
Tämä ehto varmistaa, että sääntöä sovelletaan vain, jos määritetty viesti on lähetetty käyttäjälle nolla kertaa.
Vaihtelut [COUNTMESSAGESENT] Toiminto
Toimintoa voidaan käyttää usealla eri tavalla tarpeidesi mukaan.
-
Tarkista, onko sääntökokonaisuudessa jokin viesti. Jos sääntökokonaisuutta käytetään useisiin viesteihin, voit jättää viestin tunnuksen tyhjäksi tarkistaaksesi, onko jokin viesti lähetetty säännöllä.
Kun viestin tunnusta ei ole määritetty — mikä vastaa parametrin 0, esim. [COUNTMESSAGESENT;] — lauseke ei tarkista yhtä tiettyä mallia. Sen sijaan se arvioidaan sen viestimallin kontekstissa, jonka lähetys tosiasiassa laukaisi sääntökokonaisuuden. Käytännössä tämä tarkoittaa, että ehto kysyy aina: ”onko tämä "Lähetysviesti on jo lähetetty tälle vastaanottajalle", riippumatta siitä, mikä malli lähettää viestin.
Tämän ansiosta yhtä sääntöjoukkoa voidaan käyttää uudelleen useiden eri viestipohjien päällekkäislähetysten estäjänä sen sijaan, että jokaiselle viestipohjalle jouduttaisiin luomaan lähes identtinen sääntöjoukko, jossa viestin tunniste on koodattu kiinteästi.
Huomautus: Kun käytät tätä toimintoa, esikatselutoiminto sääntökokonaisuuden editorissa ei toimi.
Tämä on suora seuraus edellä kuvatusta kontekstin sitomisesta: lausekkeenmuodostajan esikatselu arvioi säännön itsenäisesti, ilman varsinaista viestin lähetystä, joten käytettävissä ei ole laukaisevaa viestimallia, joka toimittaisi kontekstin tyhjälle messageId johon se perustuu. Tämä pätee riippumatta siitä, avataanko sääntökokoelma suoraan lausekkeenmuodostimessa vai esikatsellaanko sitä viestivirrasta, jota ei ole vielä laukaistu.
-
Salli uudelleenlähettäminen tietyn ajan kuluttua. Voit lisätä päivämääräparametrin, jotta ilmoitus voidaan lähettää uudelleen tietyn ajan kuluttua. Esimerkiksi lauseke
[COUNTMESSAGESENT;816;[NOW-32]]sallii viestin lähettämisen uudelleen, jos edellinen viesti on lähetetty yli 32 päivää sitten.