Created
February 2, 2017 18:37
-
-
Save danromero/34f4b97b082b19ab720cbe60303bf89b to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Unique Slack WebHook to post payload (obtained from Slack API website) | |
// Replace 'XXX' with the unique WebHook URL generated for your application | |
var webhookUrl = 'https://hooks.slack.com/services/XXX'; | |
// Function that sends payload message to Slack upon form submit | |
function onSubmit(e) { | |
// Get most recent form submission as array of fields | |
var response = e.response.getItemResponses(); | |
// Set each item in array response as separate variable | |
var recruiter = e.response.getRespondentEmail(); | |
var offer_type = response[0].getResponse(); | |
var candidate = response[1].getResponse(); | |
var candidate_position = response[2].getResponse(); | |
var candidate_level = response[3].getResponse(); | |
var offer_salary = response[4].getResponse().toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","); | |
var offer_equity = response[5].getResponse(); | |
// Create payload with a Slack-style message attachment using values for each variable | |
var payload = { | |
"payload": '{"attachments": [{"fallback": "A new offer.", "color": "#36a64f", "pretext": "<!channel> Hey everyone! There is a new offer to discuss!", "author_name": "Recruiter: ' + recruiter + '", "title": "Candidate", "text": "' + candidate + '", "fields": [{"title": "Position", "value": "' + candidate_position + '", "short": true }, {"title": "Level", "value": "L' + candidate_level + '", "short": true }, {"title": "Salary", "value": "$' + offer_salary + '", "short": true }, {"title": "Equity", "value": "' + offer_equity + '%", "short": true } ] } ] }' | |
} | |
// Method for posting payload | |
var options = { | |
"method": "post", | |
"payload": payload | |
}; | |
// Send payload to Slack WebHook | |
UrlFetchApp.fetch(webhookUrl, options); | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment