You should know google voice functions a bit like trapcall, except it traps CPN, and does it free.
Just let the person leave a message as unknown, then go to your google voice inbox (not your gmail) and email the message to yourself. The CPN will now show up in the body of the message.
I'd know, I'm the Senior VP of Google Voice Operations!
Of course if you need ANI trapping, or you wanna talk to people realtime with their CID unblocked, you need trapcall.