Its a game of chicken, and here is how you do it.
First of all you call and say you want to cancel your service. Most providers these days will allow you to post date the cancellation. So lets say you call today on the 8th. You tell them you want to cancel your service on the 14th, which is in 6 days.
When they ask why you want to cancel, you simply tell them you got Directv, or are getting a bundle with the cable company with TV and internet and they are coming out in 6 days on the 14th,
Second of all do your research on what is available if you actually do switch to either DIRECTV or the local cable company.
So now the CSR in the cancellation department is going to try to keep you. Now that you got all the other information about who you say your switching to, the goal is to get them to match the offer to make you decide to stay.
Here is where the game of chicken comes in....
If you do not like the offer, you actually go through with the post dated cancellation 6 days from now!
Now just make sure your cell phone is listed as the primary phone number on the account, a matter of fact this should be your first call. A matter of fact take all the other phone numbers off the account so only your cell phone is listed.
Now that you have post dated your cancellation, you answer every call to your cell phone for the next 6 days.
Eventually it will be a CSR from retention who will make an additional offer, possibly better to keep your service.
If nobody calls you in 6 days, call back and say you had to reschedule your appointment with DIRECTV or whoever and want to move the disconnect date another 5 days into the future.
If you chicken out, and nobody calls you, you can always call back and cancel the pending disconnect, You can also try to negotiate a discount again saying the other provider doesn't have so and so channel in your package and you would consider staying if the price was right.
I have done this with Directv many times, and it works almost every time,