Node push notification
From DreamFactory
Toddappleton (Talk | contribs) (Created page with "This script uses a pre-configured push notification service to send notifications when new records are created. <source lang="javascript"> // POST /api/v2/db/_table/todo trig...") |
Toddappleton (Talk | contribs) |
||
Line 2: | Line 2: | ||
<source lang="javascript"> | <source lang="javascript"> | ||
+ | // To enable Node.js scripting, set the path to node in your DreamFactory .env file. | ||
+ | // This setting is commented out by default. | ||
+ | // | ||
+ | // DF_NODEJS_PATH=/usr/local/bin/node | ||
+ | // | ||
+ | // Use npm to install any dependencies. This script requires 'lodash' and 'request'. | ||
+ | // Your scripts can call console.log to dump info to the log file in storage/logs. | ||
+ | |||
// 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. |
Revision as of 19:44, 7 March 2016
This script uses a pre-configured push notification service to send notifications when new records are created.
// To enable Node.js scripting, set the path to node in your DreamFactory .env file. // This setting is commented out by default. // // DF_NODEJS_PATH=/usr/local/bin/node // // Use npm to install any dependencies. This script requires 'lodash' and 'request'. // Your scripts can call console.log to dump info to the log file in storage/logs. // POST /api/v2/db/_table/todo triggers script db._table.todo.post.post_process // This script runs AFTER records are written to the db. // records are in array event.request.payload.resource. var lodash = require("lodash"); var request = require("request"); if (event.request.payload.resource) { lodash._.each(event.request.payload.resource, function( record ) { var msg = { "Message": { "default": "A new Todo named '" + record.name + "' was just created!" }, "Subject": "New Todo Created" } // service name is 'push', push to SNS topic by name var result = platform.api.post("push/topic/642246745556:test_topic", msg); // output result to storage/logs/dreamfactory.log console.log(result); }); }