You are getting two callbacks because of the two different groups. One is firing from the first group and the second from the second group. I think a simple flag should do the trick – basically, when the first callback fires, check to see if a flag is true, and if it isn’t, set it to true, then run whatever callback code you want. I’d use a “setTimeout()” for maybe 1 second to clear the flag again. If you need to see some code, just hollar.