Python Push notification workflow rule example

From DreamFactory
Jump to: navigation, search
DreamFactoryTutorialsPython Push notification workflow rule example
Line 1: Line 1:
<pre>
+
<source lang="python">
 
# POST /api/v2/db/_table/todo triggers script db._table.todo.post.post_process
 
# POST /api/v2/db/_table/todo triggers script db._table.todo.post.post_process
 
# This script runs AFTER records are written to the db.
 
# This script runs AFTER records are written to the db.
Line 25: Line 25:
 
         # output result to storage/logs/dreamfactory.log
 
         # output result to storage/logs/dreamfactory.log
 
         print response.read();
 
         print response.read();
</pre>
+
</source>

Revision as of 15:07, 17 May 2016

# POST /api/v2/db/_table/todo triggers script db._table.todo.post.post_process
# This script runs AFTER records are written to the db.
 
 
import httplib;
 
payload = event['request']['payload'];
host = event['request']['headers']['host'][0];
headers = {
    'x-dreamfactory-api-key':platform['session']['api_key'],
    'x-dreamfactory-session-token':platform['session']['session_token']
    };
 
connection = httplib.HTTPConnection(host);
 
if payload['resource'] != "":
    for record in payload['resource']:
        msg = '{"Message":"A new Todo named '+record['name']+' was just created!", "Subject":"New Todo Created"}';
 
        # service name is 'push', push to SNS topic by name
        connection.request('POST', '/api/v2/push/topic/arn:aws:sns:us-east-1:xxxxxxxxxx:new_todo', msg, headers);
        response = connection.getresponse();
 
        # output result to storage/logs/dreamfactory.log
        print response.read();