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
#!/usr/bin/env node | |
var resolve = require('path').resolve | |
, connect = require('connect') | |
, https = require('https') | |
, fs = require('fs'); | |
var server = connect() | |
, path = resolve('.') | |
, port = process.env['PORT'] || 3000; |
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
def parse_signed_request(request, max_age=3600) | |
# Split the signed request on the first period. The result is two strings: the hashed Based64 context signed with the consumer secret and the Base64 encoded context itself. | |
encoded_sig, enc_envelope = request.split('.', 2) | |
envelope = JSON.parse(base64_url_decode(enc_envelope)).with_indifferent_access # Needs ActiveSupport | |
algorithm = envelope[:algorithm] | |
# ADDITIONAL: Check the algorithm is HMAC SHA-256 | |
if algorithm != 'HMACSHA256' | |
raise 'Invalid request. (Unsupported algorithm.)' | |
end |
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
desk.ready(function() { | |
desk.interaction.ajax('/api/v2/customers/search?email=tstachl%40salesforce.com', { | |
method: 'GET', | |
callback: function(data) { | |
if (data.status === 200 && data.payload.total_entries > 0) { | |
var customer = data.payload.entries.first; | |
desk.interaction.screenPop(customer.id, 'object=customer', function(response) { | |
if (response.result) { | |
alert('screenPop successful.'); | |
} else { |
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
function base64UrlDecode(str) { | |
str = (str + '===').slice(0, str.length + (str.length % 4)); | |
return new Buffer(str.replace(/-/g, '+').replace(/_/g, '/'), 'base64').toString('utf8'); | |
} | |
function readSecret() { | |
return process.env.DESK_SHARED_KEY; | |
} | |
module.exports = { |
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
/** | |
* USAGE Information | |
* 1. open the developer tools for a salesforce classic site | |
* 2. copy and paste the code of this snippet into the console | |
* 3. `createFromEmail('John Snow <[email protected]>'). | |
* | |
* WHAT does the script do? | |
* 1. it parses the email string into name and email address | |
* 2. it runs an API search for an account with the website `https://www.nightswatch.com/` | |
* 3. it splits the name part `John Snow` into firstname and lastname |
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
// ==UserScript== | |
// @name Note | |
// @namespace http://www.desk.com/ | |
// @version 0.2 | |
// @description This script defaults new interactions in Desk.com Next Gen Agent to note rather than reply. | |
// @author Thomas Stachl <[email protected]> | |
// @match https://*/web/agent* | |
// @grant none | |
// ==/UserScript== |
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
using System; | |
using System.Collections.Generic; | |
using System.Net; | |
using System.Text; | |
using System.IO; | |
using System.Security.Cryptography; | |
namespace DeskApi | |
{ | |
/// <summary> |
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
<!doctype html> | |
<html> | |
<head> | |
<script src="//ajax.deskapi.com/libs/desk/opencti/current/interaction.min.js"></script> | |
<script> | |
(function() { | |
desk.ready(function() { | |
var form = document.querySelector('form') | |
, text = document.querySelector('input') | |
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
<?php | |
$req_url = 'https://YOURSITE.desk.com/oauth/request_token'; | |
$authurl = 'https://YOURSITE.desk.com/oauth/authorize'; | |
$acc_url = 'https://YOURSITE.desk.com/oauth/access_token'; | |
$api_url = 'https://YOURSITE.desk.com/api/v2'; | |
$conskey = 'CONSUMER_KEY'; | |
$conssec = 'CONSUMER_SECRET'; | |
$cbk_url = 'http://localhost:3000'; | |
session_start(); |
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
# SSH as root to your Digital Ocean Droplet | |
ssh root@[DROPLET_IP] | |
# create the new user | |
adduser example | |
# add new user to the sudo group | |
gpasswd -a example sudo | |
# logging in with the new user | |
su - example |