PL/SQL function in Oracle cannot see DBMS_AQ
Does it work if you do...
SYS.DBMS_AQ
instead of just
DBMS_AQ
If so, you're missing a synonym.
EDIT:
If you're now getting "PLS-00201: identifier 'SYS.DBMS_AQ" then I'd double check your grants.
GRANT EXECUTE ON SYS.DBMS_AQ to <your-user>;
Also, just to confirm, you've granted the execute privilege directly to the user, and not via a role?
In order to use objects in stored procedures, you must have grants WITH GRANT OPTION.
In this case you smust have GRANT EXECUTE ON SYS.DBMS_AQ WITH GRANT OPTION to ;