The sequence of events here is what's causing you issues.
1. Something happens that makes the robot unresponsive
2. Hub detects that and creates alert
3. Nas receives alert and stores it
4. Nas evaluates AO profiles that match and schedules them for execution
5. Matching AO profile executes and updates alert and puts it back on message bus
6. Nas receives alert (created by the profile) and recognizes based on suppression rules that it matches an existing alert so existing alert is updated to match new information
7. Nas evaluates AO profiles that match and finds none
8. Time passes
9. Hub detects robot still inactive and creates alert
10. Nas receives alert and recognizes based on suppression rules that it matches an existing alert so existing alert is updated to match new information and count is increased
11. Nas evaluates AO profiles that match and schedules them for execution
12. Matching AO profile executes and updates alert and puts it back on message bus
13. Nas receives alert and recognizes based on suppression rules that it matches an existing alert so existing alert is updated to match new information
14. Nas evaluates AO profiles that match and finds none
15. Time passes
16. Hub detects that robot is inactive and creates alert
........
So the problem here with using an AO profile to adjust the level of the alert is that the alarm level is guaranteed to bounce around. If you want to avoid this bouncing then you need to use a preprocessing rule which fires before storing the alarm. Problem there is that you are severely limited on what you can do - you can't ping something for instance.
And you need to use "on arrival" on your AO profile because each time the alert arrives it's going to undo your changes so you have to redo them.
There are versions of the nas that have problems with the counter function. You mention using the counter as part of the profile. I'd remove that and just rely on priority and matching the message text.
The thing that I'd consider doing given a guess at what your goal is would be to use triggers. One trigger would be the robot inactive alert, one trigger the result of the ping via net_connect. Then set up trigger logic such that failure from the robot trigger plus failure from the net_connect trigger results in a new alarm.
The other alternative would be to solve the robot inactive problem. Presumably adding the test to ping the server is a double check to remove the erroneous robot inactive alerts that constantly get generated. Would be great if CA engineering could fix that problem. Do you have an open support case?
A third alternative, if this is part of a maintenance process, would be to use the maintenance window feature to suppress alerts during the period of expected outage.
-Garin