Here may be the explanation of the problem:
the alert you’re seeing does not come from the service PING, but it comes from the host check.
In fact, by using “generic-host”, you’ll see that in the host template, there’s a check_command defined as check_ping
which means that when the service PING goes down, the host is checked, found KO, and the notification is sent as a HOST_DOWN.
In the end, if you have a look at your command definition, you may see that you’re expecting SERVICESTATE, whereas you get a HOSTSTATE instead.
To solve this problem, you might want to use a virtual_host (with the passive_checks_enabled line set to 0), or add a HOSTSTATE in your notification command.
I hope this was clear enough; don’t hesitate to ask if you have problems
(I also hope I found the real source of your problem ;))