Worried relatives who call patients in hospital are still being forced to pay "rip off" charges of 50p a minute despite a promised clampdown on the issue.
The firm Hospedia, which runs bedside TV and phone services in NHS hospitals and made £21.2m in revenue last year, makes people call loved ones via costly 070 numbers.
The charges vary from hospital to hospital, but many trust websites say they cost around 50p a minute or more.
Callers are also forced to listen to a lengthy recorded message of about 70 seconds - which racks up charges before they are even connected to their loved one.
The message contains information already obvious to the caller, such as the fact the patient is in hospital, and tells callers to be "patient".
Critics say patients are being treated as "cash cows" and described the charges as "extortionate".
Hospedia currently manages TV and bedside phone services in 150 NHS hospitals, installing services for free in return for keeping the money charged to patients and relatives.
The firm said in 2014 it planned to phase out the use of 070 numbers, but this has not happened.
Ofcom reviewed the high costs in 2006 following complaints from users and recommended a "substantial" reduction in incoming call charges.
It urged the Department of Health to review "all aspects" of the system and "the way in which the cost of providing these services appears to be borne disproportionately by friends and family".
The Department of Health looked at the issue and agreed to consider a skip facility at the start of the recorded message, enabling callers to bypass it and reduce the cost of the call.
But this never came into effect and high call charges have remained.
A Department of Health report in 2007 concluded that decisions on phones should remain with local hospitals.
MPs on the health select committee also recommended a reduction in phone costs and called for a skip facility on the recorded message.
Hospedia refused to answer several questions posed by the Press Association, including how much money it makes from 070 numbers and why it still uses them.
A spokesman said: "Ofcom granted us use of the 070 number range to enable every bedside unit to have its own unique telephone number so that friends and relatives can call patients directly, alleviating pressure on nursing staff having to field calls.
"The patient's bedside phone number is unique to each patient's account and can follow them around the hospital if they are moved bed, a frequent occurrence."
He said Hospedia offers free TV on children's wards and free channels 1 to 5 from 8am to noon on adult wards. Outbound calls to landlines are also free.
He added: "We believe we offer an excellent service, which would not be provided at all if it weren't for us taking on the investment and on-going management and support costs.
"Patients can choose to pay for our services, beyond those we offer for free, or not."
But Liberal Democrat leader Tim Farron said: "These charges are a total rip off. When channels are free at home and people have already paid for their TV licence, it is unfair for them to need to pay it again.
"If someone is to spend four weeks in hospital with a full TV package that is the same price as their yearly fee.
"Hospitals and these businesses are treating the sick as cash cows.
"From hospital parking charges, TV packages to making people call expensive phone services, it seems like they try to eke out every bit of cash they can, it's frankly unacceptable."
Liz McAnulty, chairwoman of the Patients Association, said: "Phone contact can be hugely valuable and reassuring to people in hospital and their loved ones at home.
"Any facility to provide this must offer a high quality service at a fair price, but Hospedia's service appears to fail these tests badly.
"It is unacceptable for people calling someone in hospital to be charged heavily for 70 seconds before they even get through."
Caroline Abrahams, charity director at Age UK, said: "Since older people typically have longer hospital stays and do not always have access to a mobile phone, they and their families are particularly likely to be impacted."
Lynda Thomas, chief executive for Macmillan Cancer Support, said the cost of calls was "shocking".
She added: "When you are having cancer treatment, getting a call from a relative can make a huge difference as you can share your worries, seek reassurance, or just hear their voice.
"But if relatives have to pay extortionate amounts to make these calls they may not call, cut it short, or shoulder the burden of these high charges, at a time when the whole family may be struggling financially."
A spokeswoman for Ofcom said it was "concerned" about 070 costs and wished to hear from customers as part of its ongoing monitoring.
She said there is no requirement on Hospedia to use 070 numbers, adding: "We are concerned about the cost of making calls to and from hospital patients.
"Following an investigation into this, we referred our findings to the Department of Health, which has since changed its rules on mobile phone use in hospitals.
"We are glad that more patients now have the option of using their mobiles when in hospital, but arrangements for bedside phones are managed by the NHS.
"We want to ensure adequate safeguards for consumers so we are examining the use of 070 number ranges, amid concerns that the cost of calling these numbers can be confusing.
"We welcome evidence of any harm so we can further protect consumers."
A spokeswoman for the Department of Health said: "Suppliers should always put patients first in the way they provide services.
"Staying connected to friends and family while in hospital is crucial and we expect local hospitals to tackle anything that prevents this."
Last year, Hospedia doubled its minimum price for a TV package from £2.50 to £5.
Prices for TV packages vary between hospitals, with the Big Bundle TV and internet package costing £17.50 for two days at Newcastle General, but £15 at Ipswich Hospital. Five days can cost £35.
Sky Sports can cost an extra £10 on top per day. Longer-term packages are less costly.