Обмен данными с сервисом email и SMS рассылок unisender

10.03.17

Интеграция - SMS рассылки

Служебная обработка для интеграции с unisender.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Unisender
.epf 16,62Kb
36
36 Скачать (1 SM) Купить за 1 850 руб.

Релизованы следующие сервисы:

  1. sendEmail - Метод для отправки одного или нескольких индивидуальных email-сообщений.
  2. checkEmail - Метод позволяет проверить статус доставки email-сообщений, отправленных методом sendEmail.

К сожалению, тех. поддержка самого юнисендера никак не может помочь с написанием обработок для интеграции их же сервиса с 1С. Писал для себя для ААА 4.1. Возможно кто-то затратит гораздо меньше времени, чем я. 

Не удалось реализовать передачу аргумента attachments в sendEmail. Буду очень признателен за доработку этого момента.

unisender

См. также

SALE! 50%

Мессенджеры и боты SMS рассылки Email рассылки Пользователь Платформа 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Управленческий учет Платные (руб)

Расширение 1С с полным набором инструментов для качественных транзакционных, триггерных и маркетинговых рассылок Email, SMS, WhatsApp, Telegram. Даже простые уведомления об оплате счетов способны существенно упростить сбор дебиторской задолженности. Применение всех возможностей прямого маркетинга выводит коммуникацию с клиентами, уровень сервиса и лояльность на новый уровень.

4800 2400 руб.

07.04.2014    86756    55    199    

140

Взаиморасчеты Email рассылки Акт сверки Бухгалтер Пользователь Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Платные (руб)

Внешняя обработка для Бухгалтерии 3.0 - позволяет автоматически формировать документы «Акт сверки расчетов» с контрагентами за выбранный период с последующей фоновой отправкой на почту контрагента.

3000 руб.

25.11.2020    25817    276    9    

238

Email рассылки Программист Пользователь Платформа 1С v8.3 1C:Бухгалтерия 1С:Бухгалтерия 3.0 1С:ERP Управление предприятием 2 1С:Зарплата и кадры государственного учреждения 3 1С:Зарплата и Управление Персоналом 3.x 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 Платные (руб)

Решение для массовой рассылки печатных форм (в том числе и дополнительных) любых документов, и произвольных файлов. Рассылка возможна посредством электронной почты, Telegram и файловой системы. Рассылка пакета документов. Добавление факсимильных печати и подписи. Произвольные шаблоны HTML/Simple text с автозаполнением любыми полями документа. Любые форматы файлов. Упаковка вложений в архив. Транслитерация имен файлов. Разбиение рассылки на произвольные порции. Обход спам-фильтров. Журналирование рассылок.

4920 руб.

30.06.2022    12113    82    102    

43

Email рассылки Оптовая торговля Бизнес-аналитик Бухгалтер Пользователь Руководитель проекта Платформа 1С v8.3 1С:Управление торговлей 10 1С:Управление производственным предприятием Управленческий учет Платные (руб)

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

12000 руб.

16.04.2014    86166    101    91    

96

Email рассылки Взаиморасчеты Акт сверки Бухгалтер Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Платные (руб)

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

7800 руб.

12.02.2019    34194    27    24    

26

Взаиморасчеты Email рассылки Акт сверки Бухгалтер Пользователь Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Создать и отправить 1000 Актов серки контрагентам за 5 мин ?! Легко! Разработано для конфигурации УНФ Массовое создание и рассылка Актов сверки в три клика.

6000 руб.

13.01.2022    11326    9    13    

15

Взаиморасчеты Email рассылки Акт сверки Бухгалтер Платформа 1С v8.3 Бухгалтерский учет 1С:Управление торговлей 10 1С:Бухгалтерия 3.0 Бухгалтерский учет Платные (руб)

Обработки предназначены для массового создания актов сверки и отправки их по электронной почте для конфигураций Управление торговлей 10.3. и Бухгалтерия предприятия 3.0. Для Бухгалтерии 3.0 Разработка велась на 1С:Предприятие 8.3 (8.3.15.1830). проверялась на Бухгалтерия предприятия 3.0 (3.0.71.83) и 3.0.76.77 Для Управление торговлей 10.3 Разработка велась на 1С:Предприятие 8.3 релиз конфигурации (10.3.61.2) . РАБОТАЕТ НА БАЗОВЫХ и ПРОФ. ВЕРСИЯХ.

2520 руб.

24.04.2020    32400    124    66    

103
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. shadowcpu 16.03.17 10:01 Сейчас в теме
Реализовывали что-то подобное на самописной базе 7.7.
Пришлось писать свою dll, в которой для того чтобы нормально преобразовывались вложения использовались методы Net.Framework. Возможно в 1С 8 есть встроенные методы.
2. Nio 72 16.03.17 13:15 Сейчас в теме
(1)
Пришлось писать свою dll, в которой для того чтобы нормально преобразовывались вложения использовались методы Net.Framework. Возможно в 1С 8 есть встроенные методы.

Да есть метод Base64Строка, но unisender его не принимает. Использовать dll не хотелось бы.
3. alex_4x 87 05.04.17 14:25 Сейчас в теме
Жаль Unisender не дает даже 10 смс тестово отправить.
Скажите, а доставляются СМС до адресатов или оператор может их посчитать спамом и заблокировать? Как вообще узнать - доходят СМС или нет?
4. Nio 72 06.04.17 07:14 Сейчас в теме
(3)Смс по идеи не должны помечаться как спам. Конкретно эта обработка не умеет отправлять смс. Сделал только отправку электронных писем и проверка статуса отправки электронных писем.
5. alexnovtrans 10.05.17 16:38 Сейчас в теме
Для Каждого СтрокаТаблицы Из Объект.ПрикрепленныеФайлы Цикл
Текст = Новый ТекстовыйДокумент();
Текст.Прочитать(СтрокаТаблицы.Файл, "ISO-8859-1");
Стр = Текст.ПолучитьТекст();
attachments=attachments+"&attachments["+СтрокаТаблицы.Имя+"]="+КодироватьСтроку(Стр, СпособКодированияСтроки.КодировкаURL, "ISO-8859-1");
КонецЦикла;
MishaHD; Nio; +2 Ответить
6. Nio 72 11.05.17 07:23 Сейчас в теме
(5) Спасибо. Проверю в ближайшее время.
7. MishaHD 33 31.07.18 10:50 Сейчас в теме
Спасибо! Обработка помогла, все работает
8. MishaHD 33 15.08.18 09:37 Сейчас в теме
Кстати, если вам надо сделать интеграцию с Unisender рекомендую посмотреть новые версии CRM от Раруса (3.0.x). Там эта интеграция произведена. И я конечно не на что не намекаю, но код в конфигурации очень уж похож на код автора, но немного доработанный.
9. Nio 72 15.08.18 13:17 Сейчас в теме
(8) Ну хоть не придется переделывать. :)))
10. user846159 01.04.19 08:16 Сейчас в теме
Пытаюсь использовать метод sendEmail, застопорился на том что не могу понять как послать вид данных FROM-DATA в загаловках. Можете ли Вы подксказать как это сделано у Вас? Стартмани нету к сожалению, чтобы скачать обработку
12. Nio 72 01.04.19 11:46 Сейчас в теме
(10)
Пытаюсь использовать метод sendEmail, застопорился на том что не могу понять как послать вид данных FROM-DATA в загаловках. Можете ли Вы подксказать как это сделано у Вас? Стартмани нету к сожалению, чтобы скачать обработку

Вы имеете ввиду тип дата? В заголовках я вообще не использовал это.
Еще не так давно unisender переехал на новую технологию так про пришлось все написать заново. Ну там так же не использую.
11. user846159 01.04.19 10:10 Сейчас в теме
Вытащил из CRM для метода SendMail достаточно следующего кода:

Функция ОтправитьПисьмо(ТелоПисьма,api_key, Отправитель, EmailОтправителя, Кому, СписокРассылки="", ТекстОтвета) Экспорт
	СтруктураОтвета=Новый Структура;
	Уник =СТрока(новый УникальныйИдентификатор());
	Ошибка="";
	 ИдРассылки = "";
	Если ПустаяСтрока(Ошибка) Тогда 
		Ресурс = "/sendEmail?format=json";
		//ТелоПисьма=ПараметрыПисьма.Тело;
		
		attachments="";
		
		НомерВложения = 0;
		//Для Каждого СтрокаТаблицы Из ПараметрыПисьма.Вложения Цикл 
		//	НомерВложения = НомерВложения + 1;
		//	ИмяВложения = СтрЗаменить(СтрокаТаблицы.Ключ, "_", "");
		//	ИмяВременногоФайла = КаталогВременныхФайлов()+ИмяВложения;
		//	Если ТипЗнч(СтрокаТаблицы.Значение) = Тип("ДвоичныеДанные") Тогда
		//		СтрокаТаблицы.Значение.Записать(ИмяВременногоФайла);
		//	ИначеЕсли ТипЗнч(СтрокаТаблицы.Значение) = Тип("Структура") Тогда
		//		СтрокаТаблицы.Значение.ДвоичныеДанные.Записать(ИмяВременногоФайла);
		//	КонецЕсли;
		//	Текст = Новый ТекстовыйДокумент();
		//	Текст.Прочитать(ИмяВременногоФайла, "ISO-8859-1", Символы.ПС);
		//	Стр = Текст.ПолучитьТекст();
		//	attachments=attachments+"&attachments["+ИмяВложения+"]="+КодироватьСтроку(Стр, СпособКодированияСтроки.КодировкаURL, "ISO-8859-1");
		//	Если ТипЗнч(СтрокаТаблицы.Значение) = Тип("Структура") И СтрНайти(ТелоПисьма, "src=""cid:"+СтрокаТаблицы.Значение.Идентификатор) > 0 Тогда
		//		ТелоПисьма = СтрЗаменить(ТелоПисьма, "src=""cid:"+СтрокаТаблицы.Значение.Идентификатор, "src="""+Строка(НомерВложения)+"_"+ИмяВложения);
		//	КонецЕсли;
		//КонецЦикла;
		
		ТелоПисьма=КодироватьСтроку(ТелоПисьма, СпособКодированияСтроки.КодировкаURL);

		АдресЭлектроннойПочты = "&email=" + КодироватьСтроку(Кому, СпособКодированияСтроки.КодировкаURL);
		//Для Каждого СтрокаТаблицы Из ПараметрыПисьма.Кому Цикл 
		//	АдресЭлектроннойПочты=АдресЭлектроннойПочты+"&email[]="+ + СтрокаТаблицы.Адрес;
		//	// АдресЭлектроннойПочты="&email=" + СтрокаТаблицы.Адрес;
		//КонецЦикла;
		
		СтрокаЗапроса="&api_key="+api_key
		                +"&platform=1c_UT_Zapovednik"
		                +"&track_read=1"
						//+"&ref_key[]="+УНИК
						+"&track_links=1"
						+"&attach_multi=0"
						+АдресЭлектроннойПочты
						+"&sender_name="+?(ЗначениеЗаполнено(Отправитель), Отправитель, EmailОтправителя)
						+"&sender_email="+EmailОтправителя
						+"&list_id="+СписокРассылки
						+?(ПустаяСтрока(ИдРассылки),"","&user_campaign_id="+ИдРассылки)
						+"&subject="+КодироватьСтроку("ТЕСТ", СпособКодированияСтроки.КодировкаURL)
						+"&body="+ТелоПисьма
						+attachments
						;
		СтруктураОтвета=ПолучитьЗначениеИзОтветаJSON(ВыполнитьЗапрос(СтрокаЗапроса,Ресурс));
	Иначе 
		СтруктураОтвета.Вставить("error",Ошибка);
	КонецЕсли;
	
	Значение="";
	Если СтруктураОтвета.Свойство("error") Тогда
		ТекстОтвета = СтруктураОтвета.error;
		Возврат Неопределено;
	ИначеЕсли СтруктураОтвета.Свойство("warnings",Значение) Тогда
		Для каждого Предупреждение из Значение Цикл
			ТекстОтвета = ТекстОтвета+?(ЗначениеЗаполнено(ТекстОтвета), Символы.ПС, "") + Предупреждение.warning;
		КонецЦикла;
		Если СтрНайти(ТекстОтвета, "SZ150219-06")>0 Тогда
			//МассивАдресов = Новый Массив;
			//Для Каждого СтрокаТаблицы Из ПараметрыПисьма.Кому Цикл 
			//	МассивАдресов.Добавить(СтрокаТаблицы.Адрес);
			//КонецЦикла;
			////СоответствиеАдресов = НайтиАдресаЭлектроннойПочтыВКонтактнойИнформации(МассивАдресов);
			////Для каждого ОбъектКИ из СоответствиеАдресов Цикл
			////	Если ЗначениеЗаполнено(ОбъектКИ.Значение) Тогда
			////		Объект = ОбъектКИ.Значение.ПолучитьОбъект();
			////		Объект.CRM_ОтписалсяОтEmailРассылок = Истина;
			////		Объект.Записать();
			////	КонецЕсли;
			////КонецЦикла;
			Возврат "Отписался";
		КонецЕсли;
		Возврат Неопределено;
	ИначеЕсли СтруктураОтвета.Свойство("result",Значение) Тогда
		//Если Значение.Количество()>0 Тогда
		//	Возврат Значение[0].id;
		//Иначе
		//	Возврат Неопределено;
		//КонецЕсли;
	КонецЕсли;
	
КонецФункции

Функция ПолучитьЗначениеИзОтветаJSON(ФайлРезультата, ПрочитатьВСоответствие=Ложь)Экспорт 
	ЧтениеJSON=Новый ЧтениеJSON;
	// ЧтениеJSON.УстановитьСтроку(ТекстJSON);
	ЧтениеJSON.ОткрытьФайл(ФайлРезультата);
	Значение=ПрочитатьJSON(ЧтениеJSON, ПрочитатьВСоответствие);
	ЧтениеJSON.Закрыть();
    УдалитьФайлы(ФайлРезультата);
	Возврат Значение
КонецФункции

Функция ВыполнитьЗапрос(СтрокаЗапроса,Ресурс) 
	
	Сервер = "api.unisender.com/ru/api";
	
	HTTP =  Новый HTTPСоединение(Сервер,,,,,,Новый ЗащищенноеСоединениеOpenSSL);
	
	ЗаголовокHTTP = Новый Соответствие();
    ЗаголовокHTTP.Вставить("Content-Type", "application/x-www-form-urlencoded");
    ЗаголовокHTTP.Вставить("Accept-Language", "ru");
    ЗаголовокHTTP.Вставить("Accept-Charset", "utf-8");
    ЗаголовокHTTP.Вставить("Content-Language", "ru");
    ЗаголовокHTTP.Вставить("Content-Charset", "utf-8");
	HTTPЗапрос		= Новый HTTPЗапрос(Ресурс,ЗаголовокHTTP);
	HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаЗапроса,"UTF-8",ИспользованиеByteOrderMark.НеИспользовать);
	
	ФайлРезультата = ПолучитьИмяВременногоФайла();
	HTTP.ОтправитьДляОбработки(HTTPЗапрос, ФайлРезультата);
	
	Возврат ФайлРезультата;
	
КонецФункции
Показать
13. ВикторП 352 10.11.20 17:11 Сейчас в теме
я доделал эту обработку для вложений.
Ниже код

Для Каждого СтрокаТаблицы Из ПрикрепленныеФайлы Цикл 
			
	ФайлВложения=ПолучитьИзВременногоХранилища(СтрокаТаблицы.Файл);
	ИмяВременногоФайла = КаталогВременныхФайлов()+СтрокаТаблицы.Имя;	
	ФайлВложения.Записать(ИмяВременногоФайла);
			
	Текст = Новый ТекстовыйДокумент();
	Текст.Прочитать(ИмяВременногоФайла, "ISO-8859-1", Символы.ПС);
			
	Стр = Текст.ПолучитьТекст();
	attachments=attachments+"&attachments["+ИмяВложения+"]="+КодироватьСтроку(Стр, 
           СпособКодированияСтроки.КодировкаURL, "ISO-8859-1");
			
КонецЦикла;
Показать


Я у вас скачивал вашу обработку, Если пришлете мне ее, то я внесу изменения и выложу здесь, Или можно повторно скачать без стартмани?
14. ВикторП 352 10.11.20 17:39 Сейчас в теме
15. Nio 72 11.11.20 09:22 Сейчас в теме
(14) Могу скинуть на почту.
16. ВикторП 352 11.11.20 11:46 Сейчас в теме
Оставьте свое сообщение