2021-03-24 14:03:54 +01:00
|
|
|
|
2021-03-24 15:34:08 +01:00
|
|
|
const got = require('got')
|
2021-04-05 17:44:27 +02:00
|
|
|
const log = require('pino')()
|
2021-03-24 15:34:08 +01:00
|
|
|
|
|
|
|
async function sendPingbackToEndpoint(endpoint, source, target) {
|
|
|
|
const body = `<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<methodCall>
|
|
|
|
<methodName>pingback.ping</methodName>
|
|
|
|
<params>
|
|
|
|
<param>
|
|
|
|
<value><string>${source}</string></value>
|
|
|
|
</param>
|
|
|
|
<param>
|
|
|
|
<value><string>${target}</string></value>
|
|
|
|
</param>
|
|
|
|
</params>
|
|
|
|
</methodCall>`
|
|
|
|
await got.post(endpoint, {
|
|
|
|
contentType: "text/xml",
|
|
|
|
body,
|
|
|
|
retry: {
|
|
|
|
limit: 5,
|
|
|
|
methods: ["POST"]
|
|
|
|
}
|
|
|
|
})
|
2021-04-05 17:44:27 +02:00
|
|
|
log.info(` OK: pingback@${endpoint}, sent: source ${source}, target ${target}`)
|
2021-03-24 14:03:54 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
module.exports = {
|
2021-03-24 15:34:08 +01:00
|
|
|
sendPingbackToEndpoint
|
2021-03-24 14:03:54 +01:00
|
|
|
}
|