Plivo
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
שלח הודעת SMS
/**
* An example of sending SMS messages from Google Ads Scripts using Plivo.
* See: https://developers.google.com/google-ads/scripts/docs/features/third-party-apis#basic_authentication_samples
* for full details on configuration.
*/
// Supply an email address: If for some reason your Plivo account
// details become invalid or change, this will be used to make sure
// you are notified of failure.
const EMAIL_ADDRESS = 'INSERT_EMAIL_ADDRESS';
// The number you wish messages to appear to originate from. Must be registered
// with Plivo.
const PLIVO_SRC_PHONE_NUMBER = 'INSERT_SRC_PHONE_NUMBER';
// Account details, see: https://manage.plivo.com/dashboard/
const PLIVO_ACCOUNT_AUTHID = 'INSERT_ACCOUNT_AUTHID';
const PLIVO_ACCOUNT_AUTHTOKEN = 'INSERT_ACCOUNT_AUTHTOKEN';
/**
* Builds an SMS message for sending with Plivo and sends the message.
* @param {string} dstPhoneNumber The destination number. This is a string as
* telephone numbers may contain '+'s or be prefixed with '00' etc.
* @param {string} message The text message to send.
*/
function sendPlivoSms(dstPhoneNumber, message) {
const request =
buildPlivoMessageRequest(dstPhoneNumber, message);
sendSms(request);
}
/**
* Send an SMS message
* @param {!SmsRequest} request The request object to send
*/
function sendSms(request) {
const retriableErrors = [429, 500, 503];
for (let attempts = 0; attempts < 3; attempts++) {
const response = UrlFetchApp.fetch(request.url, request.options);
const responseCode = response.getResponseCode();
if (responseCode < 400 || retriableErrors.indexOf(responseCode) === -1) {
break;
}
Utilities.sleep(2000 * Math.pow(2, attempts));
}
if (responseCode >= 400 && EMAIL_ADDRESS) {
MailApp.sendEmail(
EMAIL_ADDRESS, 'Error sending SMS Message from Google Ads Scripts',
response.getContentText());
}
}
/**
* Builds a SMS request object specific for the Plivo service.
* @param {string} recipientPhoneNumber Destination number including country
* code.
* @param {string} textMessage The message to send.
* @return {SmsRequest}
*/
function buildPlivoMessageRequest(recipientPhoneNumber, textMessage) {
if (!recipientPhoneNumber) {
throw Error('No "recipientPhoneNumber" specified in call to ' +
'buildPlivoMessageRequest. "recipientPhoneNumber" cannot be empty');
}
if (!textMessage) {
throw Error('No "textMessage" specified in call to ' +
'buildPlivoMessageRequest. "textMessage" cannot be empty');
}
const plivoUri =
`https://api.plivo.com/v1/Account/${PLIVO_ACCOUNT_AUTHID}/Message/`;
const authHeader = 'Basic ' +
Utilities.base64Encode(
PLIVO_ACCOUNT_AUTHID + ':' + PLIVO_ACCOUNT_AUTHTOKEN);
const options = {
muteHttpExceptions: true,
method: 'POST',
headers: {'Authorization': authHeader, 'Content-Type': 'application/json'},
payload: JSON.stringify({
src: PLIVO_SRC_PHONE_NUMBER,
dst: recipientPhoneNumber,
text: textMessage
})
};
return {url: plivoUri, options: options};
}
אלא אם צוין אחרת, התוכן של דף זה הוא ברישיון Creative Commons Attribution 4.0 ודוגמאות הקוד הן ברישיון Apache 2.0. לפרטים, ניתן לעיין במדיניות האתר Google Developers. Java הוא סימן מסחרי רשום של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2024-09-12 (שעון UTC).
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["חסרים לי מידע או פרטים","missingTheInformationINeed","thumb-down"],["התוכן מורכב מדי או עם יותר מדי שלבים","tooComplicatedTooManySteps","thumb-down"],["התוכן לא עדכני","outOfDate","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["בעיה בדוגמאות/בקוד","samplesCodeIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2024-09-12 (שעון UTC)."],[[["This script enables sending SMS messages directly from Google Ads scripts using the Plivo service."],["It requires setting up Plivo account details, including authentication credentials and a registered source phone number."],["The script provides functionalities for building SMS message requests with recipient details and message content, sending the messages, and handling potential errors with retries and email notifications."],["Users need to replace placeholders like `INSERT_EMAIL_ADDRESS`, `INSERT_SRC_PHONE_NUMBER`, `INSERT_ACCOUNT_AUTHID`, and `INSERT_ACCOUNT_AUTHTOKEN` with their actual values for the script to function correctly."]]],[]]