def fromSuccessResponse(cls, success_response, signed_only=True):
    """Create a C{L{TeamsResponse}} object from a successful OpenID
        library response
        (C{L{openid.consumer.consumer.SuccessResponse}}) response
        message

        @param success_response: A SuccessResponse from consumer.complete()
        @type success_response: C{L{openid.consumer.consumer.SuccessResponse}}

        @param signed_only: Whether to process only data that was
            signed in the id_res message from the server.
        @type signed_only: bool

        @rtype: TeamsResponse
        @returns: A teams extension response with the teams the OpenID
            provider provided.
        """
    self = cls()
    if signed_only:
        args = success_response.getSignedNS(self.ns_uri)
    else:
        args = success_response.message.getArgs(self.ns_uri)
    if not args:
        return None
    self.teams = args['is_member'].split(',')
    return self
