Beispiel #1
0
def deletePlayback(file):
    msg = 'Request to delete file %s received' % file
    print(msg)

    if not os.path.exists('sounds/' + str(file)):
        return success(204, msg)
    else:
        delete_file('sounds/' + str(file))
        return success(200, msg)
Beispiel #2
0
def api_v1_login():
    if "username" not in request.json or "password" not in request.json:
        abort(418)
    user = User.get_user_by_name(request.json["username"])
    if not user.login(request.json["password"]):
        abort(418)
    return success()
Beispiel #3
0
def playback():
    msg = 'Request to upload file received'
    print(request.files)

    # Validate file
    if 'file' not in request.files:
        return error(400, 'Validation Error', 'You must supply a file')

    # Validate display name
    if 'displayName' not in request.form:
        return error(400, 'Validation Error', 'You must supply a display name')

    if 'fileName' not in request.form:
        return error(400, 'Validation Error', 'You must supply a file name')

    display_name = request.form['displayName']
    file_name = request.form['fileName']
    file = request.files['file']

    try:
        save_file(str(file_name), file)
        playback_recording(file_name)
        delete_file('sounds/' + str(file_name))
    except Exception as e:
        return error(500, 'Internal Server Error', str(e))

    return success(200, msg)
def add_to_cart(user, product_id, params):
    if not params:
        params = {}
    amount = params.get("amount", 1)
    cart_item = Cart.query.filter_by(user_id=user["id"], product_id=product_id)

    if not cart_item.count():
        if amount == 0:
            return api.error_400("There is no product by that ID.")

        cart_item = Cart(product_id, user["id"], amount)
        db.session.add(cart_item)

    else:
        cart_item = cart_item.one()

        if amount > 0:
            cart_item.amount = amount
        else:
            db.session.delete(cart_item)

    try:
        db.session.commit()
    except sqlalchemy.exc.IntegrityError:
        return api.error_400("There is no product by that ID.")

    return api.success()
Beispiel #5
0
def write_message():
    data = json.loads(request.json['json_payload'])
    key = data['from'] + "_" + data['to']

    messages[key] = data['msg']
    print(messages)

    return api.success()
Beispiel #6
0
def api_upload():
    """Upload a JSON formatted post to the database."""

    if request.method == "POST":
        success, c = db.post(request.form["post"].rstrip())
        if success:
            return api.success()
        else:
            return api.error("Error uploading post to database", 500)
Beispiel #7
0
def volume():
    msg = 'Changing volume on teddbyear'
    print(msg)
    change_in_vol = request.args.get('changeInVolume')
    if change_in_vol is None:
        change_in_vol = 0
    try:
        change_volume(int(change_in_vol))
    except Exception as e:
        return error(500, 'Internal Server Error', str(e))
    return success(200, msg)
Beispiel #8
0
def playbackFile(file):
    msg = 'Playing a specific audio recording %s' % str(file)
    print(msg)
    #if 'fileName' not in request.form:
    #return error(400, 'Validation Error', 'You must supply a file name')

    #file = request.form['fileName']
    try:
        playback_recording(file)
    except Exception as e:
        return error(500, 'Internal Server Error', str(e))

    return success(200, msg)
Beispiel #9
0
def post_recording():

    if 'file' not in request.files:
        return error(400, 'Validation Error', 'You must supply a file!')
    if 'fileName' not in request.form:
        return error(400, 'Validation Error', 'You must supply a file name')

    file_name = request.form['fileName']
    file = request.files['file']
    try:
        save_file(str(file_name), file)
    except Exception as e:
        return error(500, 'Internal Server Error', str(e))

    return success(200, 'Recording saved succesfully!')
Beispiel #10
0
def getAllPlaybacks():
    # items = {
    #     'items': [
    #         {
    #             'displayName': 'Ava Is the best girlfriend ever!!!!',
    #             'fileName': 'ava.wav'
    #         },
    #         {
    #             'displayName': 'WOOOOOO',
    #             'fileName': 'test.wav'
    #         },
    #     ]
    #  }
    files = [f for f in listdir('sounds/') if isfile(join('sounds/', f))]
    files = {'files': files}

    return success(200, 'Succesfully retrieved audio files!', files)
Beispiel #11
0
def get_recording():
    print('Getting a voice recording from the server!')

    length = request.args.get('length')
    if length is None:
        length = 10

    if int(length) < 0:
        return error(400, 'Validation Error',
                     'Recording length must be greater than 0!')
    try:
        do_recording(int(length))
        time.sleep(int(length))
        return send_from_directory('sounds/',
                                   filename='captured_recording.wav',
                                   as_attachment=True)
    except Exception as e:
        return error(500, 'Internal Server Error', str(e))

    return success(200, 'Recorded succesfully!')
Beispiel #12
0
def claim_results(cec_id, ping_id):
    """ Request processing """
    return api.success(gm.set_claim_status(ping_id, cec_id))
Beispiel #13
0
def get_ques():
    return api.success(quiz.qq_get())
Beispiel #14
0
def next_ques():
    return api.success(quiz.qq_inc())
Beispiel #15
0
def queue_ques(cec_id, ques_id):
    return api.success(quiz.qq_set(cec_id, ques_id))
Beispiel #16
0
def get_curr_num():
    num1 = gm.random_sample()
    return api.success(str(num1))
Beispiel #17
0
def api_test():
    return api.success()
Beispiel #18
0
def api_v1_logout():
    current_user.logout()
    return success()
Beispiel #19
0
def hello_name(name):
    pl = PlayerTicket(name)
    arr = pl.get_ticket()
    return api.success(arr)
Beispiel #20
0
def set():
    return api.success()
Beispiel #21
0
def post_ouputs():
    num_arr = gm.full_num_array()
    claim_status = gm.get_claim_status()

    return api.success({'num_array': num_arr, 'claim_status': claim_status})