with OpenSRS and sendSMS?
Emit new event when the DNS/ZONE check has passed or failed at the registry. See the documentation
Emit new event for each new domain registration. See the documentation
Emit new event when the status of a domain transfer changes. See the documentation
Initiate a domain transfer to OpenSRS. See the documentation
Add a new contact into a specified group in SendSMS. See the documentation
Checks if a specific phone number is in the blocklist. See the documentation
This action sends an SMS message using the SendSMS.ro API. See the documentation
This action sends an SMS message with an unsubscribe link using the SendSMS.ro API. See the documentation
import { axios } from "@pipedream/platform";
import crypto from 'crypto';
export default defineComponent({
props: {
opensrs: {
type: "app",
app: "opensrs",
}
},
async run({steps, $}) {
const connectionDetails = {
reseller_username: this.opensrs.$auth.reseller_username,
api_key: this.opensrs.$auth.api_key,
api_host_port: this.opensrs.$auth.api_host_port
};
//Payload of the request
const xml = `<?xml version='1.0' encoding='UTF-8' standalone='no' ?>
<!DOCTYPE OPS_envelope SYSTEM 'ops.dtd'>
<OPS_envelope>
<header>
<version>0.9</version>
</header>
<body>
<data_block>
<dt_assoc>
<item key="protocol">XCP</item>
<item key="action">LOOKUP</item>
<item key="object">DOMAIN</item>
<item key="attributes">
<dt_assoc>
<item key="domain">${this.opensrs.$auth.domain}</item>
</dt_assoc>
</item>
</dt_assoc>
</data_block>
</body>
</OPS_envelope>`;
// Generate signature
const generateSignature = (xml, apiKey) => {
let md5 = crypto.createHash('md5');
md5.update(xml + apiKey);
let firstHash = md5.digest('hex');
md5 = crypto.createHash('md5');
md5.update(firstHash + apiKey);
return md5.digest('hex');
};
const signature = generateSignature(xml, connectionDetails.api_key);
// Prepare and call OpenSRS API
const headers = {
'Content-Type': 'text/xml',
'X-Username': connectionDetails.reseller_username,
'X-Signature': signature
};
return await axios($, {
method: "POST",
url: connectionDetails.api_host_port,
headers,
data: xml
});
},
})
The sendSMS API provides a straightforward way to integrate SMS capabilities into automation workflows on Pipedream. This API allows you to send text messages directly to users' phones, which can be pivotal for timely alerts, critical notifications, or personalized marketing messages. With Pipedream's serverless platform, you can trigger these SMS communications based on a wide variety of events, such as new e-commerce orders, support ticket updates, or even changes in third-party APIs.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
sendsms: {
type: "app",
app: "sendsms",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://api.sendsms.ro/json?action=user_get_info`,
params: {
username: `${this.sendsms.$auth.username}`,
password: `${this.sendsms.$auth.api_key}`,
},
})
},
})