def __init__(self, request, procedure, pkeys=None, discloseCaller=None):
    '\n\n      :param request: The WAMP request ID of this request.\n      :type request: int\n      :param procedure: The WAMP or application URI of the RPC endpoint provided.\n      :type procedure: unicode\n      :param pkeys: The endpoint can work for this list of application partition keys.\n      :type pkeys: list of int or None\n      :param discloseCaller: If ``True``, the (registering) callee requests to disclose\n         the identity of callers whenever called.\n      :type discloseCaller: bool or None\n      '
    assert (type(request) in six.integer_types)
    assert (type(procedure) == six.text_type)
    assert ((pkeys is None) or (type(pkeys) == list))
    if pkeys:
        for k in pkeys:
            assert (type(k) in six.integer_types)
    assert ((discloseCaller is None) or (type(discloseCaller) == bool))
    Message.__init__(self)
    self.request = request
    self.procedure = procedure
    self.pkeys = pkeys
    self.discloseCaller = discloseCaller
:param request: The WAMP request ID of this request.
:type request: int
:param procedure: The WAMP or application URI of the RPC endpoint provided.
:type procedure: unicode
:param pkeys: The endpoint can work for this list of application partition keys.
:type pkeys: list of int or None
:param discloseCaller: If ``True``, the (registering) callee requests to disclose
   the identity of callers whenever called.
:type discloseCaller: bool or None
def __init__(self, request, procedure, pkeys=None, discloseCaller=None):
    '\n\n      :param request: The WAMP request ID of this request.\n      :type request: int\n      :param procedure: The WAMP or application URI of the RPC endpoint provided.\n      :type procedure: unicode\n      :param pkeys: The endpoint can work for this list of application partition keys.\n      :type pkeys: list of int or None\n      :param discloseCaller: If ``True``, the (registering) callee requests to disclose\n         the identity of callers whenever called.\n      :type discloseCaller: bool or None\n      '
    assert (type(request) in six.integer_types)
    assert (type(procedure) == six.text_type)
    assert ((pkeys is None) or (type(pkeys) == list))
    if pkeys:
        for k in pkeys:
            assert (type(k) in six.integer_types)
    assert ((discloseCaller is None) or (type(discloseCaller) == bool))
    Message.__init__(self)
    self.request = request
    self.procedure = procedure
    self.pkeys = pkeys
    self.discloseCaller = discloseCaller