Ejemplo n.º 1
0
def new_message():
    data = request.get_json()

    # check for errors in payload
    errors = check_payload(data, ["sender", "msg", "timestamp"])
    if len(errors) > 0:
        return {"errors": errors}, 400

    # parse message, format args, and check for errors in service and arguments
    msg = data["msg"]
    service, arguments, errors = parse_service_and_args_from(
        msg, services_dict)
    if len(errors) > 0:
        return {"errors": errors}, 400

    # perform service
    if service == "help":
        return {"msg": help()}
    elif service == "add":
        return {"msg": add(arguments[0], arguments[1])}
    elif service == "subtract":
        return {"msg": subtract(arguments[0], arguments[1])}
    elif service == "multiply":
        return {"msg": multiply(arguments[0], arguments[1])}
    elif service == "divide":
        return {"msg": divide(arguments[0], arguments[1])}
    elif service == "search":
        return {"msg": search(arguments[0])}
    else:
        return {"msg": "Sorry, I don't know how to do that."}
Ejemplo n.º 2
0
def search_wrapper():
    data = request.get_json()
    errors = check_payload(data, ["query"])
    if len(errors) > 0:
        return {"errors": errors}, 400
    query = data['query']
    result = search(query)
    return {"result": result}
Ejemplo n.º 3
0
def divide_wrapper():
    data = request.get_json()
    errors = check_payload(data, ["num0", "num1"])
    if len(errors) > 0:
        return {"errors": errors}, 400
    a = float(data['num0'])
    b = float(data['num1'])
    quotient = divide(a, b)
    return {"value": quotient}
Ejemplo n.º 4
0
def multiply_wrapper():
    data = request.get_json()
    errors = check_payload(data, ["num0", "num1"])
    if len(errors) > 0:
        return {"errors": errors}, 400
    a = float(data['num0'])
    b = float(data['num1'])
    product = multiply(a, b)
    return {"value": product}
Ejemplo n.º 5
0
def subtract_wrapper():
    data = request.get_json()
    errors = check_payload(data, ["num0", "num1"])
    if len(errors) > 0:
        return {"errors": errors}, 400
    a = float(data['num0'])
    b = float(data['num1'])
    difference = subtract(a, b)
    return {"value": difference}
Ejemplo n.º 6
0
def add_wrapper():
    data = request.get_json()
    errors = check_payload(data, ["num0", "num1"])
    if len(errors) > 0:
        return {"errors": errors}, 400
    a = float(data['num0'])
    b = float(data['num1'])
    numsum = add(a, b)
    return {"value": numsum}