docs: def getCallList(self, timeout=1):
          """Get the list of phone calls made
  
          Example of a phone call result:
  
          ::
  
              [{'Count': None, 'Name': None, 'CalledNumber': '030868709971', 'Numbertype': 'sip', 'Duration': '0:01',
              'Caller': '015155255399', 'Called': 'SIP: 030868729971', 'Date': '02.01.14 13:14',
              'Device': 'Anrufbeantworter','Path': None, 'Port': '40', 'Type': '1', 'Id': '15'}]
  
          Types:
  
          * 1 - answered
          * 2 - missed
          * 3 - outgoing
  
          :param float timeout: the timeout to wait for the action to be executed
          :return: the list of made phone calls
          :rtype: list[dict[str: str]]
          """
          namespace = Fritz.getServiceType("getCallList")
          uri = self.getControlURL(namespace)
  
          results = self.execute(uri, namespace, "GetCallList")
  
          # setup proxies
          proxies = {}
          if self.httpProxy:
              proxies = {"https": self.httpProxy}
  
          if self.httpsProxy:
              proxies = {"http": self.httpsProxy}
  
          # get the content
          request = requests.get(results["NewCallListURL"], proxies=proxies, timeout=float(timeout))
  
          if request.status_code != 200:
              errorStr = DeviceTR64._extractErrorString(request)
              raise ValueError('Could not get CPE definitions "' + results["NewCallListURL"] + '" : ' +
                               str(request.status_code) + ' - ' + request.reason + " -- " + errorStr)
  
          # parse xml
          try:
              root = ET.fromstring(request.text.encode('utf-8'))
          except Exception as e:
              raise ValueError("Could not parse call list '" + results["NewCallListURL"] + "': " + str(e))
  
          calls = []
  
          for child in root.getchildren():
              if child.tag.lower() == "call":
  
                  callParameters = {}
  
                  for callChild in child.getchildren():
                      callParameters[callChild.tag] = callChild.text
  
                  calls.append(callParameters)
  
          return calls