Smoke odor can be very tricky. Smoke molecules are almost as small as the dye sites on the strands of fiber in carpet. They are also extremely sticky; they don't conform to normal cleaning standards. A solvent will not loosen them; a standard detergent will not suspend them for extraction. The combo of the two will gain some headway but not much. More than any other odor problem smoke removal is a process.
Start with simple cleaning using dedicated smoke odor detergents (some of these are not safe for some car surfaces. do some research)
Dry and repeat process if needed. Here is a few shots from an audi s8 smoker car i did this last feb. The new owners purchased it for just over 9k under blue book.
Thermal foggers are smoke generators. They basically burn a chemical or a cake to create a smoke molecule with a particular odor. This is an effective tactic in places that have biological odor problems. IE Cat urine in a house, dead animal under a crawl space etc. It can be used in a car, but you will have issue with re-soiling at later dates. because it is a smoke molecule it will be very sticky. That sticky will attract and hold dust.
Chemical odor products break down into three categories.
Odor maskers, odor neutralizers, odor eliminators
Odor maskers would be most akin to a bathroom air freshener or the hanging pine tree. They simply introduce a new more powerful odor to help hide the smell.
Odor neutralizers are products that chemically change the offending material so that it either creates a new more pleasant odor, or can’t make an odor. Examples of this type of product would be Prochem’s duo, bi-o-kleen’s back out. They interact with biological material that off gasses odor during it’s decomposition process. They introduce a new kind of bacteria that eats and off gasses a different odor.
Odor eliminators are pretty rare. There are only a couple of things that fall in this category. Ozone, and Hospital grade cleaners that kill everything and leave it sterile. The hospital cleaners are not generally safe for homes, and cars. So we are left with Ozone. Ozone is a gas, it literally cleaves odor molecules in half and destroys them. That being said if the original cause of the odor remains it will continue to make the odor. Hence the need for very thorough cleaning before and after.