Приведем код к следующему виду:
Ответ = ПреобразоватьОтвет(ФайлОтвета, "ns1:ResultArray");
СтатусДоставки = Ответ[0];
Попытка // id сообщения может и не быть при неудачной доставке
ИдентификаторСообщения = Ответ[1];
Исключение
ИдентификаторСообщения = "";
КонецПопытки;
Результат.ОтправленныеСообщения.Добавить(Новый Структура("НомерПолучателя,ИдентификаторСообщения",
НомерПолучателя, ИдентификаторСообщения));
//++
//Если ЗначениеЗаполнено(Ответ) Тогда
Если НЕ ЗначениеЗаполнено(ИдентификаторСообщения) Тогда
//--
Результат.ОписаниеОшибки = Результат.ОписаниеОшибки
+ СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='SMS на номер %1';uk='SMS на номер %1'"), Элемент)
+ ": " + СтатусДоставки
+ Символы.ПС;
КонецЕсли;
Приведем код к следующему виду:
СтатусДоставкиИзФайла = ПреобразоватьОтвет(ФайлОтвета, "ns1:GetMessageStatusResponse");
//++
//СтатусДоставки = СопоставитьСтатусДоставкиSMS(СтатусДоставкиИзФайла);
Если ТипЗнч(СтатусДоставкиИзФайла) = Тип("Массив")
И СтатусДоставкиИзФайла.Количество() > 0 Тогда
СтатусДоставки = СопоставитьСтатусДоставкиSMS(СтатусДоставкиИзФайла[0]);
Иначе
СтатусДоставки = СопоставитьСтатусДоставкиSMS(СтатусДоставкиИзФайла);
КонецЕсли;
//--
УдалитьФайлы(ФайлОтвета);
Ответ = Неопределено;
Запрос = Неопределено;
Соединение = Неопределено;
Возврат СтатусДоставки;