I should have known but didn't really think it through. Smart Task visibility is decided during task creation, so I do not see a way to do this per logged on user. By task creation I mean this will be done when Initial Diagnosis dialog is started - Reclassify, Reassign etc. basically anything that, when you look at the workflow, loops out of Initial Diagnosis dialog and back into it.
You might be able to do it according to the assignment though - if the incident is assigned to Support II, the Task is visible.
What the steps below will do - check the assignment list on the current task for Support II group and if it exists, the Smart Task will be enabled. The explanation in the first paragraph applies - this check is made when task is created. Also, when there is an assignment to Support II, you can access the incident with users who have Can Administrate permissions on the incident and work with Others Tasks and the Smart Task will still be enabled. On the other hand, if incident is assigned to a specific the member of Support II (and not the group itself), the Smart Task will not be there. You could, of course, add more advanced checking for users group memberships to get this to work for users who are member of Support II.
1. 'SD.IncidentManagement' workflow > 'Initial Diagnosis' model > 'Initial Diagnosis' dialog > 'Interaction Setup' tab > 'Dialog Models', select the Task you want to filter and 'Edit'
2. 'Edit' the 'Conditional Use Model'
3. Add 'GetGroupByName' component:
Inputs - Name:
Process Variable: '[ProfileProperties].service_desk_settings_group_support_ii'
(to keep the compatibility with customer Support II group names)
Default Value: Constant: 'Support II'
Outputs - Result: 'TestGroup'
4. Add 'Configurable Collection Filter' component:
Data Type: 'Text'
Array Variable Name: 'Task.Assignment[*].TargetId'
Copy Result To New Variable: 'True'
Variable To Copy Result: 'TestAssignments'
Filter model:
Add 'Equals Rule' component:
Data Type: 'Text'
Variable Name: 'Element'
Compare To: 'TestGroupID.GroupID'
Equals - Keep Value
Not Equals - Filter Out Value
5. Add Compare Numbers Rule:
Value1: Process Variable - 'TestAssignments[].Count'
Value2: Constant Value: '1'
6. Connect the paths:
Equal To and Greater Than > End (True)
Less than > End (False)