Skip to content

Commit d8a2e0e

Browse files
feat: ✨ Add Discord messenger (#782)
1 parent db43382 commit d8a2e0e

File tree

4 files changed

+32
-14
lines changed

4 files changed

+32
-14
lines changed

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
"@types/dlv": "^1.1.4",
4949
"analytics": "^0.8.1",
5050
"js-tokens": "^8.0.1",
51+
"node-fetch": "^2.6.1",
5152
"probot": "^12.3.3",
5253
"slice": "^1.0.0",
5354
"wildcard-match": "^5.1.2"

src/discord.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
const nodeFetch = require('node-fetch')
2+
3+
async function message (s) {
4+
if (process.env.DISCORD_WEBHOOK_URL) {
5+
await nodeFetch(process.env.DISCORD_WEBHOOK_URL, {
6+
method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ content: s })
7+
})
8+
}
9+
}
10+
11+
module.exports = {
12+
message: message
13+
}

src/webhooks/marketplace-purchase.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
1+
const { message } = require('../discord')
2+
13
async function handle (app, ctx) {
24
const {
35
action, marketplace_purchase: { account, plan }, previous_marketplace_purchase: previous
46
} = ctx.payload
57
const changeEmoji = getChangeEmoji(action, plan, previous)
68
const change = action === 'changed' ? 'changed to' : action
7-
app.log(`${changeEmoji} ${account.type} ${account.login} ${change} ${plan.name}`)
9+
const msg = `${changeEmoji} ${account.type} ${account.login} ${change} ${plan.name}`
10+
app.log(msg)
11+
await message(msg)
812
}
913

1014
function getChangeEmoji (action, plan, previous) {

yarn.lock

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1663,9 +1663,9 @@ camelcase@^6.2.0:
16631663
integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==
16641664

16651665
caniuse-lite@^1.0.30001541:
1666-
version "1.0.30001564"
1667-
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001564.tgz#eaa8bbc58c0cbccdcb7b41186df39dd2ba591889"
1668-
integrity sha512-DqAOf+rhof+6GVx1y+xzbFPeOumfQnhYzVnZD6LAXijR77yPtm9mfOcqOnT3mpnJiZVT+kwLAFnRlZcIz+c6bg==
1666+
version "1.0.30001565"
1667+
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001565.tgz#a528b253c8a2d95d2b415e11d8b9942acc100c4f"
1668+
integrity sha512-xrE//a3O7TP0vaJ8ikzkD2c2NgcVUvsEe2IvFTntV4Yd1Z9FVzh+gW+enX96L0psrbaFMcVcH2l90xNuGDWc8w==
16691669

16701670
[email protected], chalk@^2.4.2:
16711671
version "2.4.2"
@@ -1991,9 +1991,9 @@ [email protected]:
19911991
integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==
19921992

19931993
electron-to-chromium@^1.4.535:
1994-
version "1.4.594"
1995-
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.594.tgz#f69f207fba80735a44a988df42f3f439115d0515"
1996-
integrity sha512-xT1HVAu5xFn7bDfkjGQi9dNpMqGchUkebwf1GL7cZN32NSwwlHRPMSDJ1KN6HkS0bWUtndbSQZqvpQftKG2uFQ==
1994+
version "1.4.595"
1995+
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.595.tgz#fa33309eb9aabb7426915f8e166ec60f664e9ad4"
1996+
integrity sha512-+ozvXuamBhDOKvMNUQvecxfbyICmIAwS4GpLmR0bsiSBlGnLaOcs2Cj7J8XSbW+YEaN3Xl3ffgpm+srTUWFwFQ==
19971997

19981998
emittery@^0.13.1:
19991999
version "0.13.1"
@@ -3878,15 +3878,15 @@ neo-async@^2.6.2:
38783878
integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
38793879

38803880
nock@^13.3.8:
3881-
version "13.3.8"
3882-
resolved "https://registry.yarnpkg.com/nock/-/nock-13.3.8.tgz#7adf3c66f678b02ef0a78d5697ae8bc2ebde0142"
3883-
integrity sha512-96yVFal0c/W1lG7mmfRe7eO+hovrhJYd2obzzOZ90f6fjpeU/XNvd9cYHZKZAQJumDfhXgoTpkpJ9pvMj+hqHw==
3881+
version "13.4.0"
3882+
resolved "https://registry.yarnpkg.com/nock/-/nock-13.4.0.tgz#60aa3f7a4afa9c12052e74d8fb7550f682ef0115"
3883+
integrity sha512-W8NVHjO/LCTNA64yxAPHV/K47LpGYcVzgKd3Q0n6owhwvD0Dgoterc25R4rnZbckJEb6Loxz1f5QMuJpJnbSyQ==
38843884
dependencies:
38853885
debug "^4.1.0"
38863886
json-stringify-safe "^5.0.1"
38873887
propagate "^2.0.0"
38883888

3889-
node-fetch@^2.6.7:
3889+
node-fetch@^2.6.1, node-fetch@^2.6.7:
38903890
version "2.7.0"
38913891
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d"
38923892
integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==
@@ -5257,9 +5257,9 @@ undici-types@~5.26.4:
52575257
integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==
52585258

52595259
undici@^5.25.4:
5260-
version "5.28.0"
5261-
resolved "https://registry.yarnpkg.com/undici/-/undici-5.28.0.tgz#09f6aa4a6f34de8996eec585fe4ceebaa9ef3f36"
5262-
integrity sha512-gM12DkXhlAc5+/TPe60iy9P6ETgVfqTuRJ6aQ4w8RYu0MqKuXhaq3/b86GfzDQnNA3NUO6aUNdvevrKH59D0Nw==
5260+
version "5.28.1"
5261+
resolved "https://registry.yarnpkg.com/undici/-/undici-5.28.1.tgz#1052d37bd1a2e8cf3e188d7caebff833fdc06fa7"
5262+
integrity sha512-xcIIvj1LOQH9zAL54iWFkuDEaIVEjLrru7qRpa3GrEEHk6OBhb/LycuUY2m7VCcTuDeLziXCxobQVyKExyGeIA==
52635263
dependencies:
52645264
"@fastify/busboy" "^2.0.0"
52655265

0 commit comments

Comments
 (0)