I am not sure where it asks for the HTTP referrers but I can't remember that being asked of me when I created it last time, I just followed the following instructions: http://www.3cx.com/docs/configuring-google-push/
After creating the GCM project and activating it in the Management Console, you must re-send the Welcome Email or somehow reprovision the 3CXPhone apps in order for them to have PUSH enabled.
Then, if PUSH is enabled, after opening the app and locking the screen while it is still open, after a few seconds on the lock screen you should something like in the screenshot.
See the attachment for the section, "Accept requests from these HTTP referrers (web sites)".
I've set the HTTP referrers to my domain (*.foo.com) Is this correct or necessary?
I've set PUSH settings in 3CX and reinstalled the configuration file on the 3CX App several times--just did it again now but this time it appears to be working...
I can't remember having to do that so it must be something new Google introduced, though I did see it said 'Optional' next to it so if I had to guess, you should be fine if you leave it empty as well.