Development

Контроль бюджета с помощью SMS превью

Метод, позволяющий просмотреть СМС перед отправкой

April 17 2017

Существуют сотни руководств, которые помогают внедрить функционал SMS в ваши бизнес-процессы, что будет способствовать охвату более широкой аудитории или более качественному общению с существующими пользователями. Вы можете решить, что вы готовы к отправке промо- или информационных сообщений своим клиентам.

И в то же время по-прежнему следует учиывать некоторые факторы, даже при работе с провайдером, который делает SMS-рассылки максимально простой и легкой задачей. Отправка SMS-сообщений кажется простым процессом – но лишь до тех пор, пока вы не столкнетесь с неожиданными препятствиями. Один неподдерживаемый символ может существенно снизить количество символов в сообщении, что потребует разделить его на два и более сообщений, что в свою очередь значительно повысит стоимость вашей SMS-кампании. Ситуация будет еще сложнее, если сообщения необходимо отправлять на разных языках при внедренных языковых опциях и опциях транслитерации.

Это лишь некоторые факты, которые могут отразиться на вашем бюджете, однако можно избежать всех этих проблем, используя SMS превью до отправки – что не повлечет дополнительных затрат.

Увидев длину сообщения, количество частей сообщения, языковые опции и транслитерацию, вы сможете оптимизировать количество символов в вашем SMS-сообщении и остаться в рамках предусмотренного бюджета.

Именно в таких случаях будет полезно воспользоваться методом SMS превью. Метод предоставляет следующую информацию:

  • originalText оригинальный текст просматриваемого сообщения
  • textPreview предварительный просмотр текста в том виде, в котором он будет показан на устройстве получателя
  • messageCount количество сообщений, необходимое для доставки textPreview
  • charactersRemaining количество оставшихся символов до увеличения messageCount
  • configuration настройки конфигурации, которые должны быть включены в расширенные SMS для доставки сообщения 'textPreview'

НАЧАТЬ ПОДСЧЕТ СООБЩЕНИЙ И ОСТАВШИХСЯ СИМВОЛОВ

Использование метода POST позволяет вам увидеть количество «неизрасходованных» символов в сообщении, а также проверить, будет ли сообщение целым или разделится на два и более.

Запрос JSON:


POST /sms/1/preview HTTP/1.1
Host: api.infobip.com
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Content-Type: application/json

{
    "text": "Let's see how many characters will remain unused in this message."
}

Ответ JSON:


{
  "originalText": "Let's see how many characters will remain unused in this message.",
  "previews": [
    {
      "textPreview": "Let's see how many characters will remain unused in this message.",
      "messageCount": 1,
      "charactersRemaining": 95,
      "configuration": {}
    }
  ]
}

Полученный ответ будет содержать оригинальный текст (отправленный текст) и предварительный просмотр, отражающий сообщение в том виде, в котором оно будет получено пользователем, без какой-либо конфигурации. В этом случае текст будет соответствовать одному сообщению, 95 символов останутся в запасе. Обратите внимание на то, что если вы хотите отправить SMS-сообщение в том виде, в котором оно показано в 'textPreview', необходимости в дальнейшей конфигурации нет.

Вы можете использовать «простой» или «расширенный» метод в рамках опции «отправить SMS» для отправки такого сообщения.

Этот этап был легким. Дополнительные настройки дадут вам возможность увидеть количество сообщений и количество оставшихся символов в сообщении. Однако проблемы могут возникнуть в том случае, когда вы управляете бизнесом в международных масштабах и должны доставить единое сообщение всем пользователям вашей базы данных, но на различных языках. В отличие от английского, некоторые языки требуют использования «специальных знаков алфавита». Чтобы узнать больше, посетите нашу страницу National Language Identifier.

НАСТРОЙКА ЯЗЫКА СООБЩЕНИЯ

У вас возможность создавать и отправлять длинные сообщения в рамках вашего бизнеса, но это может увеличить стоимость ваших кампаний. National Language Identifier (NLI) (Национальный Идентификатор Языка), который предлагает компания Infobip, - это технология кодирования, которая делает возможным доставку оригинального текста SMS-сообщения, содержащего специальные для какого-либо языка символы и обычно обрабатываемого как 16-битный Unicode, при этом только 5 символов будут отняты от максимальной длины SMS. У вас останется 155 символов вместо обычного количества - 70 символов – используемых в Unicode.

Полагаясь на наш метод кодирования, вы сможете сэкономить средства на количестве символов и остаться в рамках предусмотренного бюджета, при этом осуществлять отправку сообщений по всему миру.

Запрос JSON:


POST /sms/1/preview HTTP/1.1
Host: api.infobip.com
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Content-Type: application/json

{
    "text": "Mesaj gönderimi yapmadan önce önizleme seçeneğini kullanmanız doğru karar vermenize yardımcı olur.",
    "languageCode": "TR"
}

Ответ JSON:


{
  "originalText": "Mesaj gönderimi yapmadan önce önizleme seçeneğini kullanmanız doğru karar vermenize yardımcı olur.",
  "previews": [
    {
      "textPreview": "Mesaj gönderimi yapmadan önce önizleme seçeneğini kullanmanız doğru karar vermenize yardımcı olur.",
      "messageCount": 2,
      "charactersRemaining": 36,
      "configuration": {}
    },
    {
      "textPreview": "Mesaj gönderimi yapmadan önce önizleme seçeneğini kullanmanız doğru karar vermenize yardımcı olur.",
      "messageCount": 1,
      "charactersRemaining": 57,
      "configuration": {
        "language": {
          "languageCode": "TR"
        }
      }
    }
  ]
}

На этот раз вы заметите некоторые различия. Теперь модель ответа имеет 'originalText' и два предварительных просмотра. Первый предварительный просмотр показывает сценарий, при котором не применяется никакой конфигурации. Второй сценарий показывает вариант с применением конфигурации языка.

Как вы видите по первому предварительному просмотру, символы считываются как Unicode, который использует две части сообщения и приводит оставшееся количество символов к 36. Второй вариант предварительного просмотра показывает результаты языковых настроек. Сообщение будет выглядеть так же, за исключением количества оставшихся символов и итогового количества сообщений для отправки.

В этом конкретном случае вам потребуется использовать конфигурацию 'languageCode', что потребует от системы скорректировать алфавит (GSM). Выполнив эту задачу, вы увеличите количество символов, используемых в сообщении.

Данный метод превью просмотра точно показывает те настройки конфигурации, которые должны быть использованы при отправке расширенных сообщений, и дает вам возможность отправлять более длинные сообщения:


"language": {
    "languageCode": "TR"
 }

ДАЙТЕ ТРАНСЛИТЕРАЦИИ ШАНС

Поскольку только ограниченное количество языков поддерживается NLI, еще одной опцией для экономии количества оставшихся символов является транслитерация – метод замены неподдерживаемых символов подобными или схожими символами, являющимися частью алфавита, заданного по умолчанию. И поскольку транслитерация является техникой, которая заменяет оригинальные специальные символы, предварительный просмотр конечного сообщения будет разумным решением.

Давайте посмотрим на пример SMS на греческом языке с использованием опции транслитерации:

Запрос JSON:


POST /sms/1/preview HTTP/1.1
Host: api.infobip.com
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Content-Type: application/json

{
    "text": "Ως Μεγαρικό ψήφισμα είναι γνωστή η απόφαση της Εκκλησίας του δήμου των Αθηναίων (πιθανόν γύρω στο 433/2 π.Χ.) να επιβάλει αυστηρό και καθολικό εμπάργκο στα",
    "transliteration": "GREEK"
}

Ответ JSON:


{
  "originalText": "Ως Μεγαρικό ψήφισμα είναι γνωστή η απόφαση της Εκκλησίας του δήμου των Αθηναίων (πιθανόν γύρω στο 433/2 π.Χ.) να επιβάλει αυστηρό και καθολικό εμπάργκο στα",
  "previews": [
    {
      "textPreview": "Ως Μεγαρικό ψήφισμα είναι γνωστή η απόφαση της Εκκλησίας του δήμου των Αθηναίων (πιθανόν γύρω στο 433/2 π.Χ.) να επιβάλει αυστηρό και καθολικό εμπάργκο στα",
      "messageCount": 3,
      "charactersRemaining": 46,
      "configuration": {}
    },
    {
      "textPreview": "ΩΣ MEΓAPIKO ΨHΦIΣMA EINAI ΓNΩΣTH H AΠOΦAΣH THΣ EKKΛHΣIAΣ TOY ΔHMOY TΩN AΘHNAIΩN (ΠIΘANON ΓYPΩ ΣTO 433/2 Π.X.) NA EΠIBAΛEI AYΣTHPO KAI KAΘOΛIKO EMΠAPΓKO ΣTA",
      "messageCount": 1,
      "charactersRemaining": 5,
      "configuration": {
        "transliteration": "GREEK"
      }
    }
  ]
}

Модель ответа будет сформатирована в оригинальном тексте с двумя вариантами предварительного просмотра – сценарий без применения конфигурации и сценарий с применением необходимой конфигурации транслитерации.

Этот пример показывает, каким образом неподдерживаемые символы могут заменяться похожими символами, входящими в алфавит, заданный по умолчанию. Если сравнить с 'messageCount', то сообщение, заданное по умолчанию, превратится в 3 сообщения, доставленные каждому получателю, а при использовании транслитерации у вас будет одно сообщение и 5 символов в запасе.

Но давайте вернемся к началу нашей истории – к вопросам о вашем бюджете. Использование предварительного просмотра SMS поможет вам оставаться в рамках бюджета и проводить SMS-кампании так, как это и было запланировано.

*И все же, хотя система превью опирается на ту же бизнес-логику, что и обычные рассылки сообщений, мы не можем гарантировать того, что сообщение, доставленное получателю, будет выглядеть так же, как оно выглядело при предварительном просмотре, поскольку некоторые сети не поддерживают языковые опции или практикуют иной подход.

НАЧНИТЕ ПОЛЬЗОВАТЬСЯ SMS ПРЕВЬЮ

Посетите страницу для разработчиков