def create_kbase(server_name,
                 url_suff,
                 payload_info,
                 org_id,
                 token,
                 kbase_responses={}):

    # Check if # of databases exceeds limit (5)
    if len(kbase_responses.items()) == 5:
        return {},

    full_addr = server_name + url_suff["create_kbase"]

    req = HTTPRequest(full_addr, "POST")

    for key in payload_info.keys():
        req.payload_append(key, payload_info[key])

    #'Content-Type': "application/json",
    #'organizationid': "3ae6bd8b-23b6-47c7-a9a0-8dc56833ca18",
    #'token': "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJvcmdJZCI6IjNhZTZiZDhiLTIzYjYtNDdjNy1hOWEwLThkYzU2ODMzY2ExOCIsImV4cCI6MTU3MTUxNjYyOCwiaWF0IjoxNTcxNTEzMDI4fQ.S1mQ4sdeSaPhTCwUodVOb6QW3yOzTnQKOunSU732SSI",
    #'cache-control': "no-cache",
    req.add_header("Content-Type", "application/json")
    req.add_header("organizationid", org_id)
    req.add_header("token", token)
    req.add_header("cache-control", "no-cache")

    response = req.post()
    print(response)
    print("response: ", response.json())
Exemple #2
0
def search(server_name,
           url_suff,
           kbase_id,
           req_payload,
           org_id,
           token,
           search_size=1):

    full_addr = server_name + url_suff["search"]
    full_addr = full_addr.format(knowledgebaseId=kbase_id)

    req = HTTPRequest(full_addr, "POST")

    for key in req_payload.keys():
        req.payload_append(key, req_payload[key])
    req.payload_append("pageSize", search_size)
    req.payload_append("pageNumber", 1)
    req.payload_append("languageCode", "en-US")
    req.payload_append("documentType", "Faq")

    req.add_header("Content-Type", "application/json")
    req.add_header("organizationid", org_id)
    req.add_header("token", token)
    req.add_header("cache-control", "no-cache")

    response = (req.post())
    print("Response status: ", response.status_code)
    resp_json = response.json()
    if resp_json.get("results"):
        results = resp_json["results"]
    else:
        results = []

    return results
Exemple #3
0
def create_kbase(server_name, url_suff, payload_info, kbase_responses={}):

    # Check if # of databases exceeds limit (5)
    if len(kbase_responses.items()) == 5:
        return {},

    full_addr = server_name + url_suff["create_kbase"]

    req = HTTPRequest(full_addr, "POST")

    for key in payload_info.keys():
        req.payload_append(key, payload_info[key])

    response = req.post()

    resp_id = response.json().get("id")
    kbase_responses['status_code'] = response.status_code
    if resp_id:
        kbase_responses[resp_id] = (response["dateCreated"],
                                    response["dateModified"],
                                    response["selfUri"])
    else:
        return kbase_responses

    return kbase_responses
Exemple #4
0
def update_kbase(server_name, url_suff, payload_info, kbase_id):
    full_addr = server_name + url_suff["update_kbase"]
    full_addr += kbase_id
    req = HTTPRequest(full_addr, "PUT")
    for key in payload_info.keys():
        req.payload_append(key, payload_info[key])
    response = req.put()
    response_result = response.json()
    response_result['status_code'] = response.status_code
    return response_result
def update_ctg(server_name, url_suff, kbase_id, lang_code, ctg_id):

    full_addr = server_name + url_suff["update_ctg"]
    full_addr = full_addr.format(knowledgebaseId=kbase_id,
                                 languageCode=lang_code,
                                 categoryId=ctg_id)
    req = HTTPRequest(full_addr, "PUT")
    for key in payload_info_ctg.keys():
        req.payload_append(key, payload_info_ctg[key])
    response = req.put()
    return response.status_code
Exemple #6
0
def mod_docs(server_name, url_suff, kbase_id, lang_code, payloads, categories={}):
    full_addr = server_name + url_suff["mod_docs"]
    full_addr = full_addr.format(knowledgebaseID=kbase_id,
                                 languageCode=lang_code)
    responses = ()
    request_count = 0
    req = HTTPRequest(full_addr, "PATCH")

    for payload in payloads:
        request_count += 1
        req.payload_append("type", "Faq")
        key = "faq"
        val = {"question": payload["question"],
               "answer": payload["answer"],
               "alternatives": payload["alternatives"]}
        req.payload_append(key, val)
        key = "categories"
        val = []
        for elem1, elem2 in categories.items():
            val.append({elem1: elem2})
        req.payload_append(key, val)
        req.payload_append("externalUrl", "")
        response = req.patch()
        response_dict = response.json()
        responses += ((response_dict.get('id', request_count), response.status_code), )

    return responses
Exemple #7
0
def upload_doc(server_name, url_suff, kbase_id, lang_code, payload, org_id, token, categories={}):
    full_addr = server_name + url_suff["upload_doc"]
    full_addr = full_addr.format(knowledgebaseId=kbase_id,
                                 languageCode=lang_code)
    req = HTTPRequest(full_addr, "POST")
    req.payload_append("type", "faq")
    key = "faq"
    val = {"question": payload["question"],
           "answer": payload["answer"],
           "alternatives": []}
    req.payload_append(key, val)
    key = "categories"
    val = []
    for elem1, elem2 in categories.items():
        val.append({elem1: elem2})
    req.payload_append(key, val)
    req.payload_append("externalUrl", "")

    req.add_header("Content-Type", "application/json")
    req.add_header("organizationid", org_id)
    req.add_header("token", token)
    req.add_header("cache-control", "no-cache")

    response = req.post()
    print("RESPONSE CODE: ",response.status_code)
    print("RESPONSE JSON: ",response.json())
    return response.status_code
def create_ctg(server_name, url_suff, payload_info_ctg, kbase_id, lang_code):
    full_addr = server_name + url_suff["create_ctg"]
    full_addr = full_addr.format(knowledgebaseId=kbase_id,
                                 languageCode=lang_code)

    req = HTTPRequest(full_addr, "POST")

    for key in payload_info_ctg.keys():
        req.payload_append(key, payload_info_ctg[key])

    response = req.post()
    response_dict = response.json()

    resp_kbase_id = response_dict.get("knowledgeBase", {}).get("id")
    ctg = response_dict.get("id")

    if resp_kbase_id in kbase_categories.keys():
        kbase_responses[resp_kbase_id].append(ctg)
    else:
        kbase_responses[resp_kbase_id] = [ctg]

    return response.status_code
Exemple #9
0
def upload_doc(server_name, url_suff, kbase_id, lang_code, payload, categories={}):
    full_addr = server_name + url_suff["upload_doc"]
    full_addr = full_addr.format(knowledgebaseID=kbase_id,
                                 languageCode=lang_code)
    req = HTTPRequest(full_addr, "POST")
    req.payload_append("type", "Faq")
    key = "faq"
    val = {"question": payload["question"],
           "answer": payload["answer"],
           "alternatives": payload["alternatives"]}
    req.payload_append(key, val)
    key = "categories"
    val = []
    for elem1, elem2 in categories.items():
        val.append({elem1: elem2})
    req.payload_append(key, val)
    req.payload_append("externalUrl", "")
    response = req.post()
    return response.status_code