One of the causes of 'cannot detect dial tone' is BT's 1571 messaging service. (It's not clear from your post whether you get your calls through TalkTalk, or just your broadband connection. Even if you don't use BT, TalkTalk might have a similar system).
If you've got '1571 messaging' (which most people have, even though they don't always realise it), or something similar, your dial tone changes to indicate that you've got a message waiting. (The normal dial tone is, of course, a constant 'burr'. When you've got a message, it changes to a two-tone sound, a bit like the old police sirens before they 'went American'). It's quite common for a 'cannot detect dial tone' message to appear when this alternating dial-tone is present.
Try plugging a phone into the extension cable in the bedroom and listening for the dial tone. If it's loud and clear (as well as constant), you'll know that the problem is with your PC. However, if it's faint or alternating, the problem is with your phone line.
Chris