Массовая рассылка email из 1с. Рассылка писем по базе адресатов. Заполнение параметров адресной книги

1. USB 3G-модем

При наличии USB 3G-модема для отправки SMS можно использовать внешнее приложение с поддержкой командной строки.

Тестировал отправку SMS сообщений со следующими приложениями:
- Microsoft SMS Sender (http://www.microsoft.com/ru-ru/download/details.aspx?id=5552)
- cmd2SMS (http://vd-soft.biz/products/CMD2SMS.htm)

В этом случае отправка SMS сообщения сводится к программному созданию и запуску пакетного или командного файла (.bat, .cmd) или скрипта (.vbs), в котором производится запуск внешнего приложения с нужными ключами, с указанием номера телефона получателя и текста сообщения.

Пример bat-файла для отправки сообщения через приложение SMS Sender:

Cd "C:\Program Files (x86)\Microsoft SMS Sender\" smssender.exe /p:81234567890 /m:"тестовое сообщение" /u /l

Пример программного создания и запуска bat-файла:

ИмяФайла = ПолучитьИмяВременногоФайла(".bat"); Bat_Файл = Новый ЗаписьТекста (ИмяФайла, КодировкаТекста.OEM); Bat_Файл.ЗаписатьСтроку("cd ""C:\Program Files (x86)\Microsoft SMS Sender\"""); Bat_Файл.ЗаписатьСтроку("smssender.exe /p:" +Телефон+ " /m:""" +ТекстСообщения+ """ /u /l"); Bat_Файл.Закрыть(); ЗапуститьПриложение(ИмяФайла);

2. Андроид смартфон

Нужный дистрибутив android-sdk можно взять (http://developer.android.com/sdk/index.html).

В данном случае, отправка SMS сообщения сводится к выполнению команды оболочки андроид-устройства.
При этом SMS сообщения будут формироваться непосредственно в самом телефоне.

//---- создаем BAT-файл для Android Debug Bridge ИмяФайла = ПолучитьИмяВременногоФайла(".bat"); Bat_Файл = Новый ЗаписьТекста (ИмяФайла, КодировкаТекста.Системная); Bat_Файл.ЗаписатьСтроку("cd C:\ADB\platform-tools\"); Bat_Файл.ЗаписатьСтроку("adb.exe shell am start -a android.intent.action.SENDTO -d sms:" +Телефон+ " --es sms_body " +ТекстСообщения+ " --ez exit_on_sent true"); Bat_Файл.ЗаписатьСтроку("adb.exe shell sleep 1"); Bat_Файл.ЗаписатьСтроку("adb.exe shell input keyevent 22"); Bat_Файл.ЗаписатьСтроку("adb.exe shell sleep 1"); Bat_Файл.ЗаписатьСтроку("adb.exe shell input keyevent 66"); Bat_Файл.Закрыть(); //---- запускаем BAT-файл ЗапуститьПриложение(ИмяФайла);

3. Отправка SMS через SMTP

Организации, имеющие корпоративную сотовую связь, могут воспользоваться SMS сервисом своего провайдера связи.

Тестировал функцию отправки сообщений через SMTP протокол SMS-сервиса Билайна:
- подробнее о сервисе - (http://beeline.amega-inform.ru - демо доступ)
- о протоколе отправки через SMTP (http://beeline.amega-inform.ru/support/protocol_smtp.php)

Провайдер предоставляет вам логин и пароль к вашему SMS-сервису. Дальше, для отправки SMS сообщения вам достаточно отправить сообщение электронной почты с нужными реквизитами, с указанием номера телефона получателя и текста SMS сообщения.
При этом в качестве имени отправителя можно использовать короткий номер, обычный номер или псевдоним (наименование отправителя).

Пример отправки SMS:

// профиль почты Профиль = Новый ИнтернетПочтовыйПрофиль; Профиль.АдресСервераSMTP = "beeline.amega-inform.ru"; Профиль.ПортSMTP = 256; Профиль.АутентификацияSMTP = СпособSMTPАутентификации.Login; Профиль.ПользовательSMTP = "логин"; Профиль.ПарольSMTP = "пароль"; // создать сообщение Сообщение = Новый ИнтернетПочтовоеСообщение; Сообщение.ИмяОтправителя = "Псевдоним"; Сообщение.Получатели.Добавить(Телефон + "@sms.beeline.amega-inform.ru"); Сообщение.Отправитель.Адрес = "Псевдоним@domain"; Сообщение.Тема = ""; Сообщение.Тексты.Добавить(ТекстСообщения); // подключить профиль Почта = Новый ИнтернетПочта; Попытка Почта.Подключиться(Профиль); Исключение Предупреждение (ОписаниеОшибки()); КонецПопытки; // отправить почту Попытка Почта.Послать(Сообщение); Почта.Отключиться(); Исключение Предупреждение (ОписаниеОшибки()); КонецПопытки;

4. Отправка SMS через http запрос.

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

После регистрации личного кабинета провайдер предоставляет вам ключ API-ID и дальше отправка смс-сообщений сводится к формированию http-запроса следующего вида:

https://sms.ru/sms/send?api_id=&to=79281234567&msg="текст сообщения"&json=1

Пример отправки SMS запросом http:

Попытка HTTPСоединение = Новый HTTPСоединение(АдресСервера); HTTPЗапрос = Новый HTTPЗапрос("https://sms.ru/sms/send?api_id="+API_ID+"&to="+ Телефон+"&msg="+ТекстСообщения+"&json=0"); HTTPОтвет = HTTPСоединение.Получить(HTTPЗапрос); ТекстОтвета = HTTPОтвет.ПолучитьТелоКакСтроку(); Отправлено = ?(HTTPОтвет.КодСостояния = "200", Истина, Ложь); Исключение Отправлено = Ложь; КонецПопытки;

Существует множество программ для массовой рассылки писем, но удобнее все делать в одной программе.

Тем более что весь необходимый функционал для этого уже есть в конфигурации «1С: CRM», которая может использоваться как отдельная программа, а может встраиваться в другие типовые решения 1С (например, в «1С: Управление торговлей»).

Как это работает

Перед нами стандартный справочник клиентов и контактных лиц, в котором помимо прочей контактной информации хранятся их электронные адреса.

Помимо этого, в системе есть два справочника, «Шаблоны автотекста» и «Шаблоны рассылок», значительно упрощающие процесс подготовки элетронных писем.

Автотекст принимает значения в зависимости от передаваемых ему параметров, что позволяет сделать рассылки персонифицируемыми.

Рассылка писем инициируется одноименным документом. Так же как в любом почтовом редакторе в нем есть возможность не только написать текст письма, но и отформатировать его, вставить картинки, прикрепить вложенный файл и т.д.

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

Настройка отправки СМС из 1С

Для начала небольшая вводная, что такое HTTP и его методы. Естественно, ответ лучше, чем интернет-энциклопедия Wikipedia нам никто не сможет дать:

HTTP (от англ. HyperText Transfer Protocol - «протокол передачи гипертекста») - сетевой протокол прикладного уровня для передачи файлов. GET -Используется для запроса содержимого указанного ресурса. С помощью метода GET можно также начать какой-либо процесс. В этом случае в тело ответного сообщения следует включить информацию о ходе выполнения процесса.

В нашем случае мы как раз будем запускать процесс отправки СМС с определенными параметрами. Параметры просты — пароль, логин, номер адресата СМС и текст сообщения.

В нашем примере мы будем использовать интернет-шлюз — AvisoSMS . У него есть набор различных API: среди них GET, JSON, XML, Email2SMS (документация). Мы рассмотрим самый простой и доступный — GET.

Для работы со шлюзом необходимо зарегистрироваться , для теста у Вас будет доступно некоторое количество бесплатных СМС (около 5-10), этого достаточно для начального теста рассылки. Сохраните логин и пароль, он пригодится в будущем.

Получите 267 видеоуроков по 1С бесплатно:

Пишем код для отправки

Я создал новую внешнюю обработку, в которой завел 4 реквизита формы и 1 команду:

Команду «Отправить СМС» я вывел на форму и прописал следующий программный код в серверной процедуре:

ИмяФайлаОтвета = ПолучитьимяВременногоФайла(«txt»);

Соединение = Новый HTTPСоединение(«api.avisosms.ru»);

СтрокаПодключения = «sms/get/?username=» + СокрЛП(Логин) + «&password=» + СокрЛП(Пассворд) + «&destination_address=» + СокрЛП(НомерАдресата) + «&source_address=SENDER&message=» + СокрЛП(Текст);
Соединение.Получить(СтрокаПодключения, ИмяФайлаОтвета);

ФайлОтвета = Новый Файл(ИмяФайлаОтвета);

Если ФайлОтвета.Существует() Тогда

ТекстОтвета = Новый ТекстовыйДокумент();

Если ТекстОтвета.КоличествоСтрок()>0 Тогда

ОтветСервера = ТекстОтвета.ПолучитьТекст();
Если Найти(ОтветСервера, «OK_Operation_Completed») > 0 Тогда
Сообщить(«Сообщение успешно отправлено на номер » + СокрЛП(НомерАдресата));
Иначе
Сообщить(«Проблемы с отправкой СМС на номер » + СокрЛП(НомерАдресата) + «. Ответ сервера: » + ОтветСервера);
КонецЕсли;

Иначе

КонецЕсли;

УдалитьФайлы(ИмяФайлаОтвета);

КонецЕсли;

Вот и весь программный код. Этого достаточно для полноценной отправки сообщений.

Запускаем в режиме 1С: Предприятие и тестируем. Вводим пароль и логин, введенные при регистрации, текст сообщения и номер адреса. Нажимаем команду «отправить»:

Модуль для отправки СМС из 1С позволяет своевременно информировать сотрудников компании, предприятия и клиентов. Быстрая интеграция дает возможность создания единой системы информирования клиентов. Работникам фирмы не придется отдельно собирать данные, экспортировать их из программы 1С в web-интерфейс.
Преимущества модуля:

    только актуальные адреса;

    не требуется экспорт и импорт информации в web-интерфейс;

    книга адресов создана на основе единой базы (работники компании, клиенты, поставщики).

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

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

    В модуле есть четыре вкладки – отправка, журнал, поиск, настройка.

    Вход в систему осуществляется по цифровому логину или псевдониму.

    Пользователь системы может вводить номера абонентов вручную или экспортировав из базы данных 1С.

    SMS-отправка возможна только на номера мобильных операторов.

    Максимальная длина сообщения не превышает тысячи символов.

    В модуле предусмотрена встроенная система поиска адресатов в 1С.

    В журнале отображается информация об отправленном сообщении, возможные ошибки (причина и решение).

    о скидках, наценках, ограничениях;

    о бонусных программах лояльности и т.д.

Важно! Модуль предоставляется бесплатно. Отдельно оплачиваются только отправленные сообщения.
СМС рассылка через 1С преимущества:

    простая настройка;

    удобная эксплуатация;

    гарантия доставки сообщений;

    возможность отправки SMS на любой мобильный оператор, действующий на территории Российской Федераций, +800 операторов со всех стран мира;

    низкая стоимость.

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

Преимущества модуля отправки SMS
из 1С:Предприятие 8.2:

  • адресная книга на основе единой базы клиентов, сотрудников, поставщиков и др.
  • не требуется экспорт-импорт контактов в веб-интерфейс или файлы
  • поддержание актуальности адресной книги

Требования:

Платформа 1С:Предприятие 8.2 все текущие типовые решения УПП, Бухгалтерия, Зарплата и управление персоналом и т.д.
Не поддерживаются "Управление Торговлей 11" и УНФ

1. Установка модуля

Модуль отправки SMS не зависит от конфигурации 1C. Для всех совместимых конфигураций используется один и тот же модуль.
Скачайте файл модуля и разархивируйте его в удобном месте на ПК (разархивированный файл должен имеет расширение.epf). Для вызова модуля отправки SMS откройте меню Файл > Открыть и выберите сохраненный файл. Модуль появится в виде отдельного окошка.

При дальнейшей работе вызывать модуль удобно из списка последних файлов в меню Файл.

Модуль содержит 4 вкладки:

  • Отправка
  • Журнал
  • Поиск
  • Настройки

2. Настройка параметров

При первом открытии модуля окно открывается на вкладке Настройки . В данном окне расположена информация о создателях модуля и форма для ввода данных учетной записи.

Форма ввода данных учетной записи:

В поле Пользователь сервиса вводится логин в систему. Логин может быть цифровой вида ХХХХХ.ХХ , например, 10001 или 10001.12. Кроме цифрового логина вход в систему можно осуществить под псевдонимом пользователя , который задается в личном кабинете через веб-
интерфейс .

Для отправки сообщений из 1С можно использовать пользователей с ограниченным доступом, например, Роль пользователя "Для протокольных клиентов". Таким образом, пользователь будет иметь возможность только отправлять сообщения и видеть их статус в модуле, но не будет иметь доступ в веб-интерфейс.

В поле Пароль вводится тот же пароль, что и для входа в веб-интерфейс.

При выходе из поля всегда будет показываться 16 звездочек (****************). Это предусмотрено в качестве защиты, чтобы было труднее подобрать пароль, поскольку невозможно определить число знаков.

Логин (если используется псевдоним пользователя) и пароль чувствительны к регистру, т. е. большая и маленькая буква будут считаться разными знаками.

В поле Сервер вводится имя сервера, на котором зарегистрирована Ваша учетная запись: service.qtelecom.ru. Указывать http:// или https:// или www не нужно.

Защищенное соединение. Поставьте галочку, если хотите соединяться с сервером по криптографическому SSL-протоколу поверх основного протокола передачи данных. Данные будут передаваться в зашифрованном виде.

3. Заполнение параметров адресной книги

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

В зависимости от настроек справочников контакты можно задать для следующих групп:

  • контрагенты
  • контактные лица (сотрудники фирм-контрагентов)
  • физические лица
  • сотрудники и др.

На рисунке показан пример заполнения контактных данных на примере добавления контакта контрагента. Добавление данных в любые другие справочники производится аналогичным образом.

Правила ввода номера

Номер можно набирать в одном из следующих форматов:

+7903222222 или 89032222222 (для России)

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

4. Составление сообщения

Панель управления окном добавления получателей:

Операция
Сочетание клавиш
Добавить Ins (Insert)
Добавить копированием F9
Удалить текущий Del (Delete)
Переместить вверх Ctrl+Shift+Up
Переместить вниз Ctrl+Shift+Down
Сортировать по возрастанию -
Сортировать по убыванию -
Выбрать F4
Очистить Shift+F4

Выбор получателя

  • нажмите Добавить (Ins) для добавления получателя
  • в появившееся поле можно ввести телефонный номер получателя вручную или выбрать из справочника 1С

Чтобы выбрать контакт из справочника, нажмите на кнопку Выбор или F4.

Выберите нужный справочник и получателя сообщения.

Телефон автоматически будет подставлен в форму. Если для получателя было введено несколько телефонов, нужный телефон можно будет выбрать из выпадающего списка.

В одной строке может быть только один номер. Если нужно отправить сообщение на несколько номеров адресата, выберите нужную строку и нажмите Добавить копированием или F9, а затем выберите другой номер.

Телефонный номер отправителя можно ввести и непосредственно в поле. Данные получателя вводить не обязательно.

Имя отправителя

В качестве имени отправителя будет использоваться имя отправителя по умолчанию, зарегистрированное через веб-интерфейс. Изменить имя отправителя, используемое по умолчанию, можно через веб-интерфейс:

Текст сообщения

Максимальная длина передаваемого SMS-сообщения не может превышать 1000 символов.Одно SMS-сообщение может состоять из нескольких частей. Длина одной части сообщения не может превышать 160 символов латинского алфавита или 70 символов для других языков. Получатель получает сообщение, как одно целое.

Каждая часть сообщения тарифицируется, как одно сообщение, поэтому сообщение состоящее из 3 частей будет тарифицироваться, как 3 сообщения.

Чтобы уменьшить количество передаваемых сообщений, можно воспользоваться функцией транслитерации. Транслитерация производится в соответствии с ГОСТ 7.79-2000 (система Б).

До транслитерации:

После транслитерации:

В примере показано, что сообщение, набранное кириллическими символами, после применения транслитерации будет состоять из одной части. В первом случае оплата снимается за 3 сообщения, во втором случае за одно сообщение.
Несмотря на то, что транслитерируемые сообщения в большинстве случаев дешевле, чем сообщения кириллицей, читать их не очень удобно.

5. Поиск адресатов

Модуль имеет встроенную систему поиска контактов в 1С. Для поиска контактов сначала выберите справочник. Если в этом справочнике есть получатели с заполненными номерами телефонов, в поле Вид информации появится выпадающий список, например, рабочий телефон, мобильный телефон и др. Если поле Вид информации оставить пустым, появятся все контакты из справочника. Если для получателя введено несколько номеров телефонов, например, рабочий и мобильный, получатель появится в списке соответствующее количество раз.

Отметьте галочкой адресатов, которым Вы хотите отправить сообщение. Для удобства предусмотрены галочки Отметить все и Снять пометки .

Можно также искать контрагентов по дате рождения. Год игнорируется.

Отметив нужных получателей, нажмите Добавить отмеченных в список отправки .

6. Журнал

В журнале отображаются данные по отправленным и доставленным сообщениям, а также возможные ошибки. В журнале событий отображаются следующие данные:

  • текст сообщения
  • получатель (телефонный номер)
  • статус

Статусы

Статус Доставлено не гарантирует, что получатель прочитал сообщение.

Чтобы обновить статусы или очистить журнал, нажмите правую кнопку мыши и выберите нужное действие.

Ошибки

В журнал могут попасть следующие типы ошибок:

Сообщение Причина Решение
Неправильный номер телефона Неправильно набран номер получателя Введите правильный номер получателя
Невозможно предоставить услуги для продукта... Введен городской номер или номер, не поддерживающий прием SMS-сообщений, или данное направление (страна, область, оператор) не поддерживается Выберите другой номер для отправки сообщения
Нет доступного тарифа для контрагента... и продукта... Для отправителя не создан подходящий тарифный план Обратитесь в службу поддержки или к своему менеджеру
Отправка не возможна, т.к. номер... занесен в черный список Номер занесен в черный список в веб-интерфейсе системы Проверьте номер, и если необходимо, удалите его из черного списка через веб-интерфейс
Не достаточно средств на счете... На счете не хватает средств для отправки SMS Проверьте баланс и пополните счет
Запрещено посылать сообщение с тем же текстом... Отправлять одинаковые сообщения одному и тому же абоненту можно не чаще чем раз в 20 минут Измените сообщение или повторите попытку через 20 минут

Ряд ошибок можно также увидеть через веб-интерфейс.

Ошибки, связанные с неправильными настройками модуля 1С или веб-клиента, не попадают в журнал, а отображаются в панели Служебные сообщения .

Сообщение Причина Решение
Поле "Наименование" не заполнено
Пустой текст сообщения или не заполнен список получателей
Не выбран ни один получатель или не заполнен текст сообщения Введите номера для отправки и текст сообщения
Ошибка при вызове метода контекста
(Отправить Для Обработки)
Ответ сервера неопределен
Сообщения не отправлены
1) неправильно введены настройки модуля:
- адрес сервера
- логин или пароль
Исправьте настройки. В случае затруднений обратитесь к Вашему менеджеру или в службу поддержки.
2) проблема в настройках пользователя в веб-интерфейсе:
- пользователь или контрагент заблокированы
- пользователь не имеет привилегий для отправки сообщений
Измените настройки пользователей через веб-интерфейс. Если контрагент заблокирован, обратитесь к своему менеджеру