take_notification

        High-level api: Receive notification messages.

        Parameters
        ----------

        block : `bool`
            True if this is a blocking call.

        timeout : `int`
            Timeout value in seconds.

        Returns
        -------

        Notification
            An instance of Notification in ncclient package.


        Code Example::

            >>> reply = device.nc.take_notification(block=True, timeout=60)
            >>> assert(reply.ok)
            >>> print(reply)
            >>>

def take_notification(self, block=True, timeout=None):
        '''take_notification

        High-level api: Receive notification messages.

        Parameters
        ----------

        block : `bool`
            True if this is a blocking call.

        timeout : `int`
            Timeout value in seconds.

        Returns
        -------

        Notification
            An instance of Notification in ncclient package.


        Code Example::

            >>> reply = device.nc.take_notification(block=True, timeout=60)
            >>> assert(reply.ok)
            >>> print(reply)
            >>>
        '''

        reply = super().take_notification(block=block, timeout=timeout)
        if isinstance(reply, operations.rpc.RPCReply):
            reply.ns = self._get_ns(reply._root)
        if getattr(transport, 'notify', None) and \
           isinstance(reply, transport.notify.Notification):
            reply.ns = self._get_ns(reply._root_ele)
        return reply