Здравствуйте!
Стояла задача автоматизировать смс-оповещение клиентов, записанных на ремонт. Реализовали этот момент путем добавления регламентного задания, которое автоматически формирует документ СМС и выполняет отправку. Однако, по какой-то причине, данная процедура очень часто дает сбои. По нашим наблюдениям, это происходит при условии, если количество получателей больше 20, но бывает и меньше. Сбой заключается в том, что документ получает статус по типу "Всего: 23;SMS записано, но не отправлено" при этом, соответственно, отправки не происходит. Пробовали варианты с заполнением реквизитов "НачалоОтправки" и "Актуальность", но безуспешно.
Код, выполняемый в регламентном задании:
Такая же ситуация происходит при массовой рассылке 1000-1500 номеров (даже при том, что документ формируется вручную).
Стояла задача автоматизировать смс-оповещение клиентов, записанных на ремонт. Реализовали этот момент путем добавления регламентного задания, которое автоматически формирует документ СМС и выполняет отправку. Однако, по какой-то причине, данная процедура очень часто дает сбои. По нашим наблюдениям, это происходит при условии, если количество получателей больше 20, но бывает и меньше. Сбой заключается в том, что документ получает статус по типу "Всего: 23;SMS записано, но не отправлено" при этом, соответственно, отправки не происходит. Пробовали варианты с заполнением реквизитов "НачалоОтправки" и "Актуальность", но безуспешно.
Код, выполняемый в регламентном задании:
Код |
---|
СМС = Документы.SMS.СоздатьДокумент(); СМС.ОбработкаЗаполнения(Неопределено); СМС.Организация = ПараметрыСеанса.Организация; СМС.ПодразделениеКомпании = ПараметрыСеанса.ПодразделениеКомпании; СМС.ХозОперация = Справочники.ХозОперации.SMS; СМС.НомерОтправителя = "Avtosalon"; СМС.Входящее_Исходящее = Перечисления.ТипыСообщений.Исходящее; //СМС.ТекстСообщения = СформироватьСообщениеПоШаблону(СтрокаТЧ.Содержание,СтрокаТЧ.Контрагент); СМС.ТекстСообщения = ТекстСообщения; СМС.НачалоОтправки = ТекущаяДата() + Интервал; СМС.ФлагАктуальность = ИСТИНА; СМС.Актуальность = СМС.НачалоОтправки + 7200; Для Каждого СтрокаТЧ Из Получатели Цикл Если ЗначениеЗаполнено(СтрокаТЧ.КонтактныйТелефон) Тогда стрПолучатель = СМС.Получатели.Добавить(); стрПолучатель.Контрагент = СтрокаТЧ.Контрагент; стрПолучатель.НомерТелефона = СтрокаТЧ.КонтактныйТелефон; КонецЕсли; КонецЦикла; СМС.Записать(); СМС.ОтправитьSMS(); |
Такая же ситуация происходит при массовой рассылке 1000-1500 номеров (даже при том, что документ формируется вручную).