def direct_post(dmd): callhome = CallHome(dmd) chs = CallHomeStatus() if not callhome.attempt('directpost'): return payload = callhome.get_payload() if not payload: logger.warning('Error getting or encrypting payload for direct-post') return payload = base64.urlsafe_b64encode(payload) params = urlencode({'enc': payload}) chs.stage(chs.REQUEST_CALLHOME) try: httpreq = urllib2.urlopen(POST_CHECKIN_URL, params, _URL_TIMEOUT) returnPayload = httpreq.read() except Exception as e: chs.stage(chs.REQUEST_CALLHOME, "FAILED", str(e)) logger.warning('Error retrieving data from callhome server %s', e) else: chs.stage(chs.REQUEST_CALLHOME, "FINISHED") callhome.save_return_payload(returnPayload) return
def checkin(self, returnPayload): # record successful check in callhome = CallHome(self.context.dmd) callhome.save_return_payload(returnPayload) return ''
def checkin(self, returnPayload): # record successful check in callhome = CallHome(self.context.dmd) callhome.save_return_payload(returnPayload) return ''