Using a visa service is your best bet for Iran. As for wait times, I was promised 2 weeks by IranianVisa.com and finally managed to collect my visa nearly four months later in Damascus... after the snow fell, choking mountain passes and forcing me to fly rather than ride to Iran.
So, good news - yes, you can get your visa abroad. Bad news - it may take longer than you expect. Apply early, lie about your intended date of visit (make it earlier than you actually want to go) and badger the service if they miss their deadline.
In defense of the service I used, it was (and remains) extremely difficult for Canadians to get into Iran - much harder than for Americans. Depending on your nationality, you might get in very quickly and without major problems... though, now is a difficult time for anyone trying to visit Iran, obviously.