Ok so the user still cannot recieve messages but can send fine. Have tried deleting recreating him numerous times with no joy.
Thought maybe this critical error in the application log might have something to do with it...SCS::CheckSRPInfoUpdated - Unable to get server routing info
ok this is in the POLC logs
[40000] (01/29 03:46:32.437):{0x1790} [BIPP] Ping 32742 sent
[40000] (01/29 03:46:32.437):{0x17AC} RequestHandler:

oWork - Processing CHECK_FOR_USERCONFIG_CHANGES request
[40000] (01/29 03:46:32.437):{0x178C} [BIPP] PingResponse 32742 received
[20640] (01/29 03:47:08.468):{0x10E4} SCS::GetRoutingInfo(): COM Error 0x80040E31 - IDispatch error #3121 - Source: "Microsoft OLE DB Provider for SQL Server" - Description "Timeout expired" - Command "select SRPId from ServerConfig where id = ?"
[10000] (01/29 03:47:08.468):{0x10E4} SCS::CheckSRPInfoUpdated - Unable to get server routing info
[20000] (01/29 03:47:08.468):{0x10E4} SCS::ThreadProc - CheckSRPInfoUpdated failed
[20640] (01/29 03:47:08.703):{0x17AC} SCS::GetMaxHistoryIdFromDB(): COM Error 0x80040E31 - IDispatch error #3121 - Source: "Microsoft OLE DB Provider for SQL Server" - Description "Timeout expired" - Command " select MAX(Id) from ServerConfigHistory "
[20000] (01/29 03:47:08.703):{0x17AC} SCS::CheckDBforUserConfigChanges - Error getting the Max History Id, operation aborted.
[20000] (01/29 03:47:08.703):{0x17AC} RequestHandler:

oWork - CheckDBforUserConfigChanges failed
[40000] (01/29 03:47:08.703):{0x17AC} RequestHandler:

oWork - Completed Processing CHECK_FOR_USERCONFIG_CHANGES request
[40304] (01/29 03:47:08.703):{0x17AC} WorkerThreadPool:: ThreadProc(): Thread released with empty queue