From 012b3c3cfd8e463e6404f5a02e307d7abc5de063 Mon Sep 17 00:00:00 2001 From: tzmfreedom Date: Sat, 9 Jan 2016 00:27:07 +0900 Subject: [PATCH] Add new object for mobile push message --- FuelSDK/objects.py | 22 ++++++++++++++++- objsamples/sample_pushmessage.py | 41 ++++++++++++++++++++++++++++++++ 2 files changed, 62 insertions(+), 1 deletion(-) create mode 100644 objsamples/sample_pushmessage.py diff --git a/FuelSDK/objects.py b/FuelSDK/objects.py index 895ef1a..985c39c 100644 --- a/FuelSDK/objects.py +++ b/FuelSDK/objects.py @@ -71,7 +71,27 @@ def __init__(self): self.endpoint = 'https://www.exacttargetapis.com/hub/v1/campaigns/{id}/assets/{assetId}' self.urlProps = ["id", "assetId"] self.urlPropsRequired = ["id"] - + +######## +## +## wrap an Exact Target Push Message Contact and Deliveries +## +######## +class ET_PushMessageContact(ET_CUDSupportRest): + def __init__(self): + super(ET_PushMessageContact, self).__init__() + self.endpoint = 'https://www.exacttargetapis.com/push/v1/messageContact/{messageId}/send' + self.urlProps = ["messageId"] + self.urlPropsRequired = [] + +class ET_PushMessageContact_Deliveries(ET_CUDSupportRest): + def __init__(self): + super(ET_PushMessageContact_Deliveries, self).__init__() + self.endpoint = 'https://www.exacttargetapis.com/push/v1/messageContact/{messageId}/deliveries/{tokenId}' + self.urlProps = ["messageId", "tokenId"] + self.urlPropsRequired = [] + + ######## ## ## wrap an Exact Target Click Event diff --git a/objsamples/sample_pushmessage.py b/objsamples/sample_pushmessage.py new file mode 100644 index 0000000..fe1b6cc --- /dev/null +++ b/objsamples/sample_pushmessage.py @@ -0,0 +1,41 @@ +import ET_Client + +try: + debug = False + stubObj = ET_Client.ET_Client(False, debug) + + # In order for this sample to run, it needs to have a message for mobile push and a mobile push contact. + SubscriberKey = "test" + MessageID = "NDAxxxxxx" + + # Push Message for contact + print '>>> Push Message for contact' + pushMessageContact = ET_Client.ET_PushMessageContact() + pushMessageContact.auth_stub = stubObj + pushMessageContact.props = {"messageId": MessageID, "SubscriberKeys": [SubscriberKey]} + pushMessageContactResponse = pushMessageContact.post() + + print 'PushMessageRequest Status: ' + str(pushMessageContactResponse.status) + print 'Code: ' + str(pushMessageContactResponse.code) + print 'tokenId: ' + str(pushMessageContactResponse.results['tokenId']) + print '-----------------------------' + + # Get a delivery information for mobile push message + print '>>> Get a delivery information for mobile push message' + getPushMessageDelivery = ET_Client.ET_PushMessageContact_Deliveries() + getPushMessageDelivery.auth_stub = stubObj + getPushMessageDelivery.props = { + "messageId" : MessageID, + "tokenId" : pushMessageContactResponse.results['tokenId'] + } + getPushMessageDeliveryResponse = getPushMessageDelivery.get() + print 'GetRequest Status: ' + str(getPushMessageDeliveryResponse.status) + print 'Code: ' + str(getPushMessageDeliveryResponse.code) + print 'Results: ' + str(getPushMessageDeliveryResponse.results) + print 'Message: ' + str(getPushMessageDeliveryResponse.results['message']) + print 'CreateDate: ' + str(getPushMessageDeliveryResponse.results['createDate']) + print '-----------------------------' + +except Exception as e: + print 'Caught exception: ' + e.message + print e \ No newline at end of file