Exemple #1
0
def create_session():
    """
    Create a session for a Box view document

    Expects a json with the following fields
        box_view_token: a valid box view token
        document_id: a valid url to pdf or office document
    """

    request_json = request.get_json()

    box_view_token = request_json['box_view_token']
    box_view_client = BoxViewClient(box_view_token)
    document_id = request_json['document_id']

    document_ready = False
    while not document_ready:
        sleep(1)
        document_ready = box_view_client.ready_to_view(document_id)

    try:
        session = box_view_client.create_session(document_id).json()
    except(BoxViewError):
        return jsonify({'error': 'an error occurred'}), 400

    session_url = box_view_client.create_session_url(session['id'])

    print 'Session is {}'.format(session_url)

    combined_response = {
        'session_url': session_url,
        'session': session
    }

    return jsonify(combined_response)