How to ensure emails are sent only once to users in a Views Block Operations (VBO) list? I created a view which is a list of comments made by users to a particular node.

I then created a rule which triggers upon event "when a new comment is saved" The action is to load the view i created, loop through the list and then send an email to all the users who have previously posted comments.

My challenge is that it sends emails to the users based on the number of times they appear in the list. So for example a user who has made 3 comments to the node will get three (3) emails each time a new comment is saved.

I have tried using the Distinct query. It did not work.
I also installed the Views distinct module and selected the filter option. This filtered the list to one value each, but mails were still sent multiple times to people who had commented more than once.

Please is there a way to ensure emails are sent only once irrespective of times user has commented to the node/appears on the list?
You can adapt my answer with a "trick filed" on your content type in this (last) answer. Update "trick field" when your mail is sent the first time.
Why is my rule that reacts on event &quot;After updating an existing user account&quot; firing twice?
Then hide "trick field" modifying your "form-id" and field name with this solution (2nd answer) Is there a way to prevent a user from seeing a field on their user profile page?