I'd have to think about that one. It's possible to route calls based on CID but an 800 number only terminates to another line. If they all terminate to the same number I don't see a way of identifying which 800 number was called. With DID's you could point each number to it's own group properly named but the compact does not support T1/PRI.