Menu
077-3451111
8081 82
// תווית לחשבונות הרצויים
var TARGET_ACCOUNT_LABEL = 'תווית לחשבונות רצויים';

// מיקום ממוצע רצוי
var TARGET_AVERAGE_POSITION = 3;

// הפרש מקסימלי ממקום רצוי
var TOLERANCE = 0.1;

// בכמה לשנות את התמחור
var BID_ADJUSTMENT_COEFFICIENT = 1.05;

// כתובת מייל לשליחת הסיכום, ניתן להשאיר ריק במידה ולא רוצים
var EMAIL_ADDRESS = 'כתובת מייל';


function main() {
  var accountSelector = MccApp.accounts();
  if (TARGET_ACCOUNT_LABEL != '') {
    accountSelector.withCondition("Labels CONTAINS '" + TARGET_ACCOUNT_LABEL +
        "'");
  }
  accountSelector.executeInParallel('adjustBids', 'sendEmail');
}

function adjustBids() {
  var raisedKeywordCount = raiseKeywordBids();
  var loweredKeywordCount = lowerKeywordBids();
  var retval = {
    'raised': raisedKeywordCount,
    'lowered': loweredKeywordCount
  };
  return JSON.stringify(retval);
}

function raiseKeywordBids() {

  var keywordsToRaise = AdWordsApp.keywords()
    .withCondition('Status = ENABLED')
    .withCondition('AveragePosition > ' + (TARGET_AVERAGE_POSITION + TOLERANCE))
    .orderBy('AveragePosition ASC')
    .forDateRange('LAST_7_DAYS')
    .get();

  while (keywordsToRaise.hasNext()) {
    var keyword = keywordsToRaise.next();
    keyword.setMaxCpc(keyword.getMaxCpc() * BID_ADJUSTMENT_COEFFICIENT);
  }
  return keywordsToRaise.totalNumEntities();
}

function lowerKeywordBids() {

  var keywordsToLower = AdWordsApp.keywords()
    .withCondition('Ctr > 0.01')
    .withCondition('AveragePosition < ' + (TARGET_AVERAGE_POSITION - TOLERANCE))
    .withCondition('Status = ENABLED')
    .orderBy('AveragePosition DESC')
    .forDateRange('LAST_7_DAYS')
    .get();


  while (keywordsToLower.hasNext()) {
    var keyword = keywordsToLower.next();
    keyword.setMaxCpc(keyword.getMaxCpc() / BID_ADJUSTMENT_COEFFICIENT);
  }
  return keywordsToLower.totalNumEntities();
}

/**
 * שליחת הסיכום למייל
 */
function sendEmail(results) {
  var emailBody = [];

  emailBody.push(
    '<html>',
      '<body>',
        '<table width=800 cellpadding=0 border=0 cellspacing=0>',
          '<tr>',
            '<td colspan=2 align=right>',
              "<div style='font: italic normal 10pt arial, serif; " +
                  "margin: 0; color: #666; padding-right: 5px;'>" +
                  'סקריפטים לאדוורדס</div>',
            '</td>',
          '</tr>',
          "<tr bgcolor='#3c78d8'>",
            '<td width=500>',
              "<div style='font: normal 18pt verdana, sans-serif; " +
                  "padding: 3px 10px; color: white'>" +
                  'דוח תמחור למיקום</div>',
            '</td>',
            '<td align=right>',
              "<div style='font: normal 18pt arial, sans-serif; " +
                  "padding: 3px 10px; color: white'>",
                   AdWordsApp.currentAccount().getCustomerId(), '</h1>',
            '</td>',
            '</tr>',
          '</table>',
          '<table width=800 cellpadding=0 border=0 cellspacing=0>',
            "<tr bgcolor='#ddd'>",
              "<td style='font: 12pt arial, sans-serif; " +
                  'padding: 5px 0px 5px 5px; background-color: #ddd; ' +
                  "text-align: left'>מזהה לקוח</td>",
              "<td style='font: 12pt arial, sans-serif; " +
                  'padding: 5px 0px 5px 5px; background-color: #ddd; ' +
                  "text-align: left'>תוצאות</td>",
            '</tr>',
            emailRows(results),
        '</table>',
      '</body>',
    '</html>');


  if (EMAIL_ADDRESS != '') {
    MailApp.sendEmail(EMAIL_ADDRESS, 'דוח סקריפט תמחור למיקום', '',
        {htmlBody: emailBody.join('\n')});
  }
}

function emailRows(results) {
  var rows = [];
  for (var i = 0; i < results.length; i++) {
    var result = results[i];

    rows.push('<tr>',
        "<td style='padding: 5px 10px'>" + result.getCustomerId() + '</td>',
        "<td style='padding: 0px 10px'>" + getResultDescription(result) +
            '</td>',
      '</tr>');
  }
  return rows.join('\n');
}

function getResultDescription(result) {
  if (result.getStatus() == 'OK') {
    var retval = JSON.parse(result.getReturnValue());
    return 'הועלה : ' + retval.raised + ' < br / > ' +
        'הורד : ' + retval.lowered;
  } else if (result.getStatus() == 'ERROR') {
    return result.getError();
  } else {
    return 'Script timed out.';
  }
}

 

אקטיביטק בע"מ

שיווק דיגיטלי
כתובת: רחובות הנהר 9, רמת גן 
מיקוד: 5253105

טלפון: 077-3451111
פקס: 077-2070085
מייל: info@actvtec.co.il

הרשמה לניוזלטר

2025 © כל הזכויות שמורות לאקטיביטק בע"מ

actv-logo

צור קשר