예제 #1
0
	def checkPackage(self, source_name, source_host, message):
		if source_name not in self.packages:
			self.bot.pm(source_name, "I don't seem to be tracking any of your packages")
			return
		package = self.packages[source_name]
		root = xml_to_dict(get_interface(package.shipper).send_request(package.tracking_number))['TrackResponse']['Shipment']
		info = root['Package']

		activity = info['Activity']
		lastUpdateDate = datetime.strptime(activity['Date'], "%Y%m%d").date()
		lastUpdateTime = datetime.strptime(activity['Time'], "%H%M%S").time()
		lastUpdate = datetime.combine(lastUpdateDate, lastUpdateTime)
		location = activity['ActivityLocation']['Address']['City'] + ", " + activity['ActivityLocation']['Address']['CountryCode']
		status = activity['Status']['StatusType']['Description']
		estimateDescription = info['Message']['Description']
		estimateDate = datetime.strptime(root['ScheduledDeliveryDate'],"%Y%m%d")

		self.bot.pm(source_name, "Last update: " + lastUpdate.strftime("%Y-%m-%d %H:%M") + " -- " + status + " -- " + location + " -- " + estimateDescription + ". Est delivery date: " + estimateDate.strftime("%Y-%m-%d"))
예제 #2
0
파일: upstrack.py 프로젝트: imclab/BeardBot
	def checkPackage(self, source_name, source_host, message):
		if source_name not in self.packages:
			self.bot.pm(source_name, "I don't seem to be tracking any of your packages")
			return
		package = self.packages[source_name]
		root = xml_to_dict(get_interface(package.shipper).send_request(package.tracking_number))['TrackResponse']['Shipment']
		info = root['Package']

		activity = info['Activity']
		lastUpdateDate = datetime.strptime(activity['Date'], "%Y%m%d").date()
		lastUpdateTime = datetime.strptime(activity['Time'], "%H%M%S").time()
		lastUpdate = datetime.combine(lastUpdateDate, lastUpdateTime)
		location = activity['ActivityLocation']['Address']['City'] + ", " + activity['ActivityLocation']['Address']['CountryCode']
		status = activity['Status']['StatusType']['Description']
		estimateDescription = info['Message']['Description']
		estimateDate = datetime.strptime(root['ScheduledDeliveryDate'],"%Y%m%d")

		self.bot.pm(source_name, "Last update: " + lastUpdate.strftime("%Y-%m-%d %H:%M") + " -- " + status + " -- " + location + " -- " + estimateDescription + ". Est delivery date: " + estimateDate.strftime("%Y-%m-%d"))
예제 #3
0
 def test_roundtrip(self):
     assert (xml_dict.xml_to_dict(xml_dict.dict_to_xml(test_dict)) ==
             test_dict)
예제 #4
0
 def test_xml_to_dict(self):
     assert xml_dict.xml_to_dict(test_xml) == test_dict
예제 #5
0
 def test_roundtrip(self):
     assert (xml_dict.xml_to_dict(
         xml_dict.dict_to_xml(test_dict)) == test_dict)
예제 #6
0
 def test_xml_to_dict(self):
     assert xml_dict.xml_to_dict(test_xml) == test_dict