'Asynchronously invoke a remote method.
@type _name: L{str}
@param _name:  the name of the remote method to invoke
@param args: arguments to serialize for the remote function
@param kw:  keyword arguments to serialize for the remote function.
@rtype:   L{twisted.internet.defer.Deferred}
@returns: a Deferred which will be fired when the result of
this remote call is received.'

def callRemote(self, _name, *args, **kw):

    if (not isinstance(_name, bytes)):
        _name = _name.encode('utf8')
    return self.broker._sendMessage('', self.perspective, self.luid, _name, args, kw)
