docs: def _register_procedure(self, procedure_name, invocation_policy="single"):
          """ Register a "procedure" on a Client as callable over the Router.
          """
          options = {"invoke": invocation_policy}
          message = Register(procedure=procedure_name, options=options)
          request_id = message.request_id
  
          try:
              self.send_message(message)
          except ValueError:
              raise WampProtocolError(
                  "failed to register callee: %s", procedure_name
              )
  
          self.request_ids[request_id] = procedure_name