Ofcom has fined Virgin Media O2 £28mn for repeatedly preventing customers from cancelling contracts, after it found that the UK telecoms group was likely to have mishandled millions of customer calls.