Thanks to a post on mobilitee.org I have found a way to send all my missed, ignored, declined, or any other unanswered call for any reason to my Google Voice voicemail rather than my AT&T voicemail.
Quoting their post directly:
Note that [dest] is the number you want to forward to (eg +12025551234) and [sec] is the number of seconds to let the phone ring before forwarding (in the no answer case). [sec] can range from 5-30 in 5 second increments.
Forward All:
Activate: *21*[dest]*11#
Cancel & Retain: #21*11#
Re-establish: *21*11#
Cancel & Forget: ##21*11#
Status: *#21*11#If Busy:
Activate: *67*[dest]*11#
Cancel & Retain: #67*11#
Re-establish: *67*11#
Cancel & Forget: ##67*11#
Status: *#67*11#if no answer:
Activate: *61*[dest]*11*[sec]#
Cancel & Retain: #61*11#
Re-establish: *61*11#
Cancel & Forget: ##61*11#
Status: *#61*11#If Unreachable:
Activate: *62*[dest]*11#
Cancel & Retain: #62*11#
Re-establish: *62*11#
Cancel & Forget: ##62*11#
Status: *#62*11#While testing, I found that the activate code works as expected (15 seconds seems about right for me), and the Cancel & Retain codes brought it right back to using the iPhone visual voicemail.
I followed the instructions to activate all of these features accept ‘Forward all’ because if you do that then your phone doesn’t ring, and all I want is to send missed/ignored/declined/unanswered calls to Google Voice rather than AT&T.
In order I dialed the following:
Dial *61*[dest]*11*30# and hit send.
Dial *62*[dest]*11# and hit send.
Dial *67*[dest]*11# and hit send.
Thanks to an article about Call Forwarding on Wikipedia, I found a much shorter way to do all that.
*004*[phone number]#
I replaced [phone number] with the number 1 and then my 10 digit Google Voice number, like so; *004*12223334444#
The nice thing is Google Voice sends me an email and sms message when someone leaves me a voicemail, so I am notified and can check it right away.