Создание сообщения

Чтобы создать сообщение, воспользуйтесь методом СистемаВзаимодействия.СоздатьСообщение(). Необходимые параметры:
ИдентификаторОбсуждения
Идентификатор обсуждения типа Ууид, в которое нужно отправить сообщение
Получатели
Идентификатор пользователя типа Ууид (или массив таких идентификаторов) системы взаимодействия, которому адресовано сообщение
ТекстСообщения
Текст сообщения типа Строка, который отправляется в обсуждение
Вложения
Массив вложений типа ВложениеВзаимодействия, которые нужно отправить в обсуждение

В ответ будет возвращен идентификатор этого сообщения на сервере типа Ууид.

Создание обсуждения, сообщения, получение непрочитанных сообщений


// создание обсуждения (пользователь1 с пользователем2)
попытка
    пер НазваниеОбсуждения = "Название обсуждения"
    пер КлючОбсуждения = "Ключ обсуждения"
   
    ИдОбсуждения = СистемаВзаимодействия.СоздатьОбсуждение([ИдПользователяСВ1, ИдПользователяСВ2], НазваниеОбсуждения, КлючОбсуждения)
    // Сохраните идентификатор обсуждения системы взаимодействия ИдОбсуждения
поймать Исключение : ИсключениеСистемыВзаимодействия
    // Обработка исключения
;
   
// создание сообщения (от пользователя1 к пользователю2)
попытка
    пер МассивПолучателейСообщения : Массив<Ууид> = новый Массив<Ууид>()
    МассивПолучателейСообщения.Добавить(ИдПользователяСВ2)
  
  
    пер ТекстСообщения : Строка = "Привет, пользователь!"
    ИдСообщения = СистемаВзаимодействия.СоздатьСообщение(ИдОбсуждения, МассивПолучателейСообщения, ТекстСообщения)
   
    // Сохраните идентификатор сообщения системы взаимодействия ИдСообщения
поймать Исключение : ИсключениеСистемыВзаимодействия
    // Обработка исключения
;
 
//
// ... можно создать еще сообщения ...
//
 
// получение непрочитанных сообщений
попытка
    пер МассивНовыхСообщений = СистемаВзаимодействия.ПолучитьНепрочитанныеСообщения(ИдОбсуждения)
   
    //Непрочитанные сообщения
    для Сообщение из МассивНовыхСообщений
        // Обработка непрочитанных сообщений
    ;
   
поймать Исключение : ИсключениеСистемыВзаимодействия
    // Обработка исключения
;
   

Создание сообщения, сообщения с вложением


// подключение, инициализация и т. д.
// ...

знч ИдПользователяСВ = Ууид{520a34cb-f8cb-4c79-ba78-45b7fdfb080a}

// создание сообщения c вложением
попытка

    // загрузим вложение на сервер взаимодействия
    знч Файл = новый Файл("C:/test/price.xlsx")
    знч Вложение = СистемаВзаимодействия.ЗагрузитьВложение(
            Содержимое = Файл.ОткрытьПотокЧтения(),
            Имя = "price.xlsx",
            ТипСодержимого = "application/octet-stream"
    )

    пер МассивПолучателейСообщения : Массив<Ууид> = новый Массив<Ууид>()
    МассивПолучателейСообщения.Добавить(ИдПользователяСВ)

    // создадим сообщение с вложением, сообщения с вложениям можно создавать без текста
    ИдСообщения = СистемаВзаимодействия.СоздатьСообщение(
        ИдОбсуждения = ИдОбсуждения,
        Получатели = МассивПолучателейСообщения,
        Вложения = [Вложение]
    )

    // получим только что отправленное сообщение
    знч Сообщение = СистемаВзаимодействия.НайтиСообщение(ИдСообщения)

    знч ВходящееВложение = Сообщение.Вложения[0]
    знч ИдВложения = ВходящееВложение.Ид // 1aee7439-6268-4f01-a4e3-432ac0dd79f4
    знч ИмяФайла = ВходящееВложение.Имя // price.xlsx
    знч РазмерФайла = ВходящееВложение.Размер // 1024(в байтах)
    знч Содержимое: Байты = ВходящееВложение.ПолучитьБайты()

    // сохраним вложение на компьютер
    пер НовыйФайл = новый Файл("C:/test/price_new.xlsx")
    исп ПотокЗаписи = НовыйФайл.ОткрытьПотокЗаписи()
    ПотокЗаписи.Записать(Содержимое)
    ПотокЗаписи.Закрыть()
поймать Исключение : ИсключениеСистемыВзаимодействия
    // Обработка исключения
;

//
// ... можно создать еще сообщения ...
//