Huh, so it isn't easy? I guess I was wrong. If this hypothetical mod were to be made, I think the model descriptor wouldn't work since modded cars exist(and will continue being made). The color and vehicle type descriptor certainly could. Code: If vehicletype = "car" then play radio_cartype1 If vehicletype = "motorcycle" or "bike" then play radio_cartype2 If vehicletype = "truck" then play radio_cartype3 ...and so on. The color system might work by fetching the RGB color code(123, 456, 789) of the player's car.
True though you have to consider vehicles with unpaintable skins and glitched or bugged cars that are unpaintable. Describes a yellow vehicle meanwhile it's permanently green for some reason.
In that scenario, the mod could check if the vehicle is "colorable" or not. If it isn't colorable, the descriptor would not list the color. Model descriptor could be limited to only vanilla cars and just not list the model if it can't find a voice line for it. Though meshslaps will be meshslaps and break, unfortunately. Glitched cars are supposed to be fixed by the author.
How exactly would it check if it's colorable, a better idea is just to check if it has a skin, and if yes just say that it has a custom paintjob, otherwise state the color. It could also say the body style instead of the model if it's a mod.
I assume this, "custom paintjob" description would count for Taxi, police and other emergency/service liveries? Perhaps the color descriptions should be off-the-chart and the dialog chatter script uses vehicle descriptions just as you mentioned: year, make, model and, bodytype. Perhaps it could function depending on configuration. If it is a Emergency or service vehicle: color samples are not triggered in the dialog script however, any other configuration such as stock configs will trigger color sample audio to be mentioned.
I think this is either A: a bug with the game that the developers should be notified about. Probable because of the short range. B: the modded sirens don't have the correct parameters to have reverbs and echoes. Probable due to a lack of modern custom audio documentation.
I'd lean on possibility B. Though, you'd expect sounds to function normal as intended since it's being broadcasted within the game engine you'd think..