I have an application for routing oversize vehicles, and at certain intersections I need to restrict only certain turns based on parameters or conditions of the vehicle. For example, a vehicle over 80 feet long cannot make a left turn but all shorter vehicles can make the left turn. The 80 foot vehicle can however go straight through the intersection or make a right turn. Is there a way to place a turn restriction that checks the vehicle parameters?
Yes, this can be done. This requires you to setup a turn restriction attribute in your network dataset. For your turn restriction attribute, you must also create a network attribute parameter, which allows you to adjust the vehicle length for evaluation. Then, you must properly setup the attribute evaluator for your turn restriction attribute to use this parameter for detecting restricted turn scenarios.
Here are some resources with examples to help get you pointed in the right direction:
Using parameters with network attributes: this is probably the most important thing for you to understand. The examples given here are applied to edges, but you can easily apply this same approach to your turns. If your logic is more complex than simply checking whether the parameter is below/above some threshold (e.g., you also need to determine if the turn is a left-turn, straight-turn, right-turn, or u-turn), then you might require to create a more complex VBScript evaluator to contain all of this logic (taking into account turn angles, etc. to detect these specific scenarios).
Hopefully, this at least gives you a general sense of how it can be done. If you have more specific questions about this process after reviewing the above links, please don't hesitate to ask.