def get_agent_notification_session_for_agency(self, agent_receiver=None, agency_id=None, proxy=None):
if agent_receiver is None or proxy is None:<EOL><INDENT>raise NullArgument<EOL><DEDENT>raise Unimplemented()<EOL>
Gets the ``OsidSession`` associated with the agent notification service for the given agency.

        arg:    agent_receiver (osid.authentication.AgentReceiver): the
                agent receiver
        arg:    agency_id (osid.id.Id): the ``Id`` of the agency
        arg:    proxy (osid.proxy.Proxy): a proxy
        return: (osid.authentication.AgentNotificationSession) - ``an
                _agent_notification_session``
        raise:  NotFound - ``agency_id`` not found
        raise:  NullArgument - ``agent_receiver, agency_id`` or
                ``proxy`` is ``null``
        raise:  OperationFailed - ``unable to complete request``
        raise:  Unimplemented - ``supports_agent_notification()`` or
                ``supports_visible_federation()`` is ``false``
        *compliance: optional -- This method must be implemented if
        ``supports_agent_notification()`` and
        ``supports_visible_federation()`` are ``true``.*