簡體   English   中英

Python:Zeep錯誤

[英]Python: Zeep Error

我正在使用zeep連接到Five9呼叫中心API,以便檢索“呼叫日志報告”。

我的代碼如下:

class Five9api:

    start = (datetime.now() - timedelta(days=1)).replace(hour=0, minute=0, second=0, microsecond=0)
    end = datetime.now()
    user = 'user'
    pwd = 'pwd'
    criteria = {'time': {'end': end, 'start': start}}
    key = None

    def __init__(self, folderName, reportName):
        self.client = None
        self.folderName = folderName
        self.reportName = reportName

    def open_client(self):
        if self.client is None:
            self.client = Five9(self.user, self.pwd)

    def run_report(self):
        identifier = self.client.configuration.runReport(folderName=self.folderName, reportName=self.reportName,
                                                        criteria=self.criteria)
        Five9api.key = identifier

    def get_report_results(self):
        get_results = self.client.configuration.getReportResult(Five9api.key)

        return get_results

使用run_report方法返回傳遞給get_report_results方法的密鑰時,出現get_report_results 是什么導致此以下錯誤?

zeep.exceptions.Fault: Result is not ready due to process is not complete

解決此錯誤的唯一方法是在上述2種方法之間引入time.sleep ,例如...

Report = Five9api("Call Log Reports", "Call Log")
Report.open_client()
Report.run_report()
time.sleep(5)
data = Report.get_report_results()

使用getReportResult檢索報告結果之前,可以使用isReportRunning方法檢查其是否准備就緒:

def get_report_results(self):
    while client.service.isReportRunning(identifier=Five9api.key, timeout=100):
        None
    get_results = self.client.configuration.getReportResult(Five9api.key)

請參閱此處的完整文檔: Configuration Web Services,API參考指南

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM