I'm tired of hypocritical complaints about canned and outsourced customer support from people that given choice, will switch brand/provider/subscription to save extra 5%.
A while ago I had to write some customer support scripts as part of my work turning around small telecom. These scripts were badly needed, some of the people that were doing technical support were outright abusive ether without realizing it (cultural differences) or as a way to get let go and collect unemployment or as a way to channel their frustration with the universe on unwilling victims.
Script and demonstrative firing for not following it drastically improved things by eliminating what-were-they-thinking calls and subsequent PR nightmares. Most calls are trivial and can be scripted - they are ether RTFM, 12-oclock flashers that are too cheap to pay for 'complete install' option and are too stupid to follow step-by-step instructions or people venting about things we can't/won't change.
You also have to realize that CS/TS is never about helping people, its all about customer retention at lowest cost - when you have somebody to yell at when problems happen you are not as likely to stop paying. Trying to help customers cost a lot more, often cost-prohibitive, and leads to customers relying on your technical support to solve every single, no matter how trivial or marginally related problem. My favorite example for scripts is a four hour recording of a complicated problem that that resulted in service costs being equal to TWO (2) year profit from that client.
I understand everyone would love to have perfect customer support, where they deal directly with a professional that tries to work on your problem. Thing is, unless you are enterprise client brining thousands of dollars of profit you are not going to get it. Your bargain discounted plan that you switched to save 5% from your last deal typically has 10-20% profit margin and can't support anything better than scripted scapegoat support. Most people want cheap, quality service, right away and all the time - you can do maybe 1.5 of these things at once.
Another problem with first tier technical support is that all qualified people move on/get promoted, resulting in bulk of people working at first-tier support are ether recently hired students that don't plan on sticking around, immigrants with language/cultural difficulties or people with significant social/attitude/whatever problems. Without canned script, that strictly enforced, you end up with few people that end up better-off and most that work significantly worse. You also cannot allow exceptions for qualified people or next time you fire some asshat for trying to have phone sex with a customer (true story) you will get sued for discrimination or selective enforcement.