Expand my Community achievements bar.

SOLVED

Direct call rule and event based rules

Avatar

Level 4

We have a situation where when we click a button from particular page one the event should fire.

We already have a direct call rule we need to append the above new event( on specific button click).

 

I tried creating the event based rule and was setting cookie when the button was clicked.

But looks like the direct call rule is fired first and then the event based rule.

So this event is never getting fired.

 

I also tried adding button.click function in the javascript of the direct call but it also never fires.

May I know how can i solve this issue.

1 Accepted Solution

Avatar

Correct answer by
Level 10

Hi , 

As per our understanding Direct Call rules and Event based rules are two different things and they shouldn't hinder triggering of each other. However can you please debug your rule with the following steps and let us know: 

1. If your event-based rule does not fire, then there is likely an issue with the selector or condition of the rule. Locate the element on your site where the desired event action occurs, right click and select Inspect element. Inspect the highlighted script in the box that opens and ensure you are targeting the correct element. Example:

Target element: <div class=’pauseButton’ style=’opacity: 1’>
Selector Syntax:

CSS Selector Syntax: div.pauseButton OR div[class=’pauseButton’]
Manually assign attributes:
Element Tag: div
Property: class
Value: pauseButton. 

2. If there are no issues in the condition of event based rule, Try to comment the _satellite.track() line which is calling the Direct call rule and then you can verify whether there is something in Direct call rule that is hindering Event based rule to fire.

3. Alternatively , you can also create one more Direct call rule for the button click . Please see the below example for help 

$("#buttn1").click(function(){ _satellite.track('button1click'); }// jquery function to be executed on a click of button // We also create a Direct call rule in DTM interface with 'button1click' value as a string condition.

Also, it would be nice if you can share the screenshot of the Direct call , Event based rule  set up in DTM   and the screenshot of the code aswell as the debugger snapshot  so that we can further deep dive at our end to find the root cause of the issue. 

Thanks & Regards

Parit Mittal

View solution in original post

1 Reply

Avatar

Correct answer by
Level 10

Hi , 

As per our understanding Direct Call rules and Event based rules are two different things and they shouldn't hinder triggering of each other. However can you please debug your rule with the following steps and let us know: 

1. If your event-based rule does not fire, then there is likely an issue with the selector or condition of the rule. Locate the element on your site where the desired event action occurs, right click and select Inspect element. Inspect the highlighted script in the box that opens and ensure you are targeting the correct element. Example:

Target element: <div class=’pauseButton’ style=’opacity: 1’>
Selector Syntax:

CSS Selector Syntax: div.pauseButton OR div[class=’pauseButton’]
Manually assign attributes:
Element Tag: div
Property: class
Value: pauseButton. 

2. If there are no issues in the condition of event based rule, Try to comment the _satellite.track() line which is calling the Direct call rule and then you can verify whether there is something in Direct call rule that is hindering Event based rule to fire.

3. Alternatively , you can also create one more Direct call rule for the button click . Please see the below example for help 

$("#buttn1").click(function(){ _satellite.track('button1click'); }// jquery function to be executed on a click of button // We also create a Direct call rule in DTM interface with 'button1click' value as a string condition.

Also, it would be nice if you can share the screenshot of the Direct call , Event based rule  set up in DTM   and the screenshot of the code aswell as the debugger snapshot  so that we can further deep dive at our end to find the root cause of the issue. 

Thanks & Regards

Parit Mittal