How about giving customer an opportunity to rub their own diagnostic? This would benefit us all during busy periods, potentially improving Talk Talk service levels so they can concentrate on customers that REALLY need support. If successful this would also improve NPS most importantly for Talk Talk. Of course I understand that all customers may not be able to navigate through diagnostic steps alone, in its entirety, however im sure your more tech savvy customers would manage. Then you will have a group of customers who may manage to 'start' the diagnostic but require support mid-way through - this is why I suggest including the ability for the user to SAVE their session so that it could be continued at a later date, either by an advisor, or by the user / customer at a later date which happens to be more convenient for them (there may also be instances whereby a step is carried out and then the situation needs to be monitored for 24 hours, for example, so the SAVE/CONTINUE SESSION functions would prove useful in those type of situations).
In addition to the service level and NPS benefits you also have the reporting aspect which would be valuable to Talk Talk as it would indicate exactly what issues your customers are facing, the frequency of those issues and HOW they're typically resolved - from this data you can effectively channel your resources to get best gains from an investment. You can also pull together useful FAQ's, hints and tips etc.
You could start this as a small project with a view to roll out to all internal areas, so for example your billing teams can run a diagnostic for changing a customers address and the system would show them, step by step, how to complete a change of address, with information for the advisor and separate info for the customer at each step of the process - again this would have added benefit of reporting for the relevant area.