I ain't no spel Guru like daniel-bighelini or cdtj so they may help you better.
I did not test it since i have no time for that but i quickly typed this in notepad. It won't work right away but the base logic is here.
You need to create a site defined condition and edit the "macro code" attribute and put something like this :
object list_handlings;
int i,found;
send_wait(0,top_object(),"call_attr","contact_handling","sync_fetch","STATIC", "contact = ?",-1,1, this.customer);
list_handlings = msg[0];
for(i=0;i<list_handlings.length;i++)
{
if(list_handlings[i].special_handling.sym == "the special handling you want")
{ found=1;}
}
if(found==1)
return true;
else
return false;
And for your fear of spelcode, when you create a site defined condition with the atomic condition section, it generates spelcode. Since the atomic condition section is "limited", you type the code directly.
And as a tip, always copy your code in the description or somewhere else because if you edit a site define condition with no atomic condition and change nothing, it will erase what you have in the code section