Ошибка взаимодействия в вис что это такое

В начале апреля фирма «1С» выпустила новую версию платформы – 8.3.10.

Новые возможности получились весьма «вкусными». В этой статье мы рассмотрим Систему взаимодействий.

Если коротко, то это Skype (или Telegram) внутри конфигурации 1С. О таком корпоративном мессенджере давно мечтали руководители и IT-шники :)

И вот чудо свершилось – теперь можно звонить, общаться текстом и устраивать конференции между сотрудниками не покидая 1С. И все это может привязано к объектам – конкретным документам, договорам, контрагентам, …

Начнем рассмотрение Системы взаимодействия с самых основ.

Концепция

Сначала давайте рассмотрим, что из себя представляет «1С:Предприятие». Этот программный комплекс построен по классической трёхзвенной архитектуре. Представить его можно в следующем виде:

Рисунок 1 – Упрощённая схема трёхзвенной архитектуры

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

Подробнее про серверные вызовы можно прочитать в статье «Как работает серверный вызов в 1С». Для данного же материала важно отметить следующий факт – инициировать серверный вызов для передачи данных возможно только на клиентской части.

Но давайте вернёмся к «Системе взаимодействий»! Для начала обратимся к документации и посмотрим – что же скрывается под таким громким названием?

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

Под термином «видеозвонок» понимается любой возможный вариант общения двух пользователей, который включает в себя как только голосовой канал общения, так и полноценный видеозвонок (голосовая информация и изображение).

Исходя из описания, получается что фирма «1С» встроила в платформу «мессенджер» для общения пользователей между собой. «Наконец-то!» – воскликнут одни. «Зачем?» – вопрошают другие. Оставим эту дискуссию для комментариев, а пока продолжим рассматривать «Систему взаимодействий» дальше.

Логично, что общение имеет смысл в том случае, когда в системе работают два или более пользователей. В среде «1С:Предприятие» для каждого пользователя организуется своя рабочая область. Поэтому [в клиент-серверном варианте] несколько клиентских подключений к информационной базе можно представить следующим образом:

Рисунок 2 – Схема многопользовательского варианта работы «1С:Предприятие»

Вроде бы «чего проще» – передать сообщение с одной клиентской части на другую?

Но! Клиентские процессы работают каждый в своей рабочей области и не имеют пересечений. Единственная возможность передачи информации – через серверную часть.

И здесь кроется очередное «Но!» – как упоминалось ранее, серверная часть не может инициировать клиентский вызов. А это значит, что для обнаружения новых сообщений в существующей системе необходимо организовать периодический мониторинг клиентом серверной части. Выглядеть это будет примерно следующим образом:

Рисунок 3 – Схема запуска клиентской частью обработчика ожидания для периодического запроса к серверной части

Как видим, общение клиентских частей таким образом возможно, но оно имеет свои особенности.

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

Но самое главное: увеличится нагрузка на самое узкое место системы – соединение между клиентом и сервером (особенно в момент передачи потока медиа). Поэтому фирме «1С» надо было найти иное решение задачи взаимодействия пользователей.

Давайте разберём, что же предстояло сделать разработчикам платформы для встраивания в «1С:Предприятие» механизма обмена текстовыми и видео-сообщениями.

Во-первых, необходимо дать пользователям возможность отправлять и принимать сообщения (в том числе служебных – для инициации видео-вызовов):

Рисунок 4 – Отправка сообщения

Во-вторых, должен быть налажен механизм транспорта исходящих и входящих сообщений:

Рисунок 2 – Схема многопользовательского варианта работы «1С:Предприятие»

Вроде бы «чего проще» – передать сообщение с одной клиентской части на другую?

Но! Клиентские процессы работают каждый в своей рабочей области и не имеют пересечений. Единственная возможность передачи информации – через серверную часть.

И здесь кроется очередное «Но!» – как упоминалось ранее, серверная часть не может инициировать клиентский вызов. А это значит, что для обнаружения новых сообщений в существующей системе необходимо организовать периодический мониторинг клиентом серверной части. Выглядеть это будет примерно следующим образом:

Рисунок 3 – Схема запуска клиентской частью обработчика ожидания для периодического запроса к серверной части

Как видим, общение клиентских частей таким образом возможно, но оно имеет свои особенности.

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

Но самое главное: увеличится нагрузка на самое узкое место системы – соединение между клиентом и сервером (особенно в момент передачи потока медиа). Поэтому фирме «1С» надо было найти иное решение задачи взаимодействия пользователей.

Давайте разберём, что же предстояло сделать разработчикам платформы для встраивания в «1С:Предприятие» механизма обмена текстовыми и видео-сообщениями.

Во-первых, необходимо дать пользователям возможность отправлять и принимать сообщения (в том числе служебных – для инициации видео-вызовов):

Рисунок 4 – Отправка сообщения

Во-вторых, должен быть налажен механизм транспорта исходящих и входящих сообщений:

Рисунок 5 – Транспорт исходящего сообщения

Причём желательно иметь возможность оперативного получения информации о поступлении новых сообщений.

Рисунок 6 – Транспорт входящего и информирование о поступлении нового сообщения

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

Рисунок 6 – Транспорт входящего и информирование о поступлении нового сообщения

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

Рисунок 7 – Канал для передачи сообщений между пользовательскими сеансами

Понятное дело, что пользователей может быть больше двух. А значит, организовывать прямой канал «клиент» – «клиент» нецелесообразно, нужен некий «маршрутизатор» – серверная часть «Системы взаимодействий».

Рисунок 8 – Схема серверной части «Системы взаимодействий». Первое приближение

Встроить этот «маршрутизатор» в серверную часть «1С:Предприятие», по уже понятным нам причинам, нецелесообразно. Поэтому («в-третьих»), дополнительно необходимо определиться с расположением серверной части «Системы взаимодействий».

Итак, у нас получилось несколько «пазлов», сложив которые, мы увидим полную картину о «Системе взаимодействий». Давайте прямо сейчас это и сделаем!

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

Вопрос с оперативной двусторонней передачей информации между клиентом и сервером «Системы взаимодействий» решился без «изобретения велосипеда»: на помощь пришёл современный протокол WebSocket (далее WS). В качестве «вишенки на торте» – этот протокол позволяет передавать информацию в зашифрованном виде, что обеспечивает защиту передаваемой информации.

Стоит отметить, что при совершении видеовызовов по протоколу WS передается лишь служебная информация для инициализации звонка. Передача видео происходит с использованием других технологий, встроенных в «Систему взаимодействий».

Сложив всё вместе, получаем следующую схему:

Рисунок 9 – Схема работы «Системы взаимодействий». Первое приближение

Итак, «Система взаимодействий» является дополнительным сервисом обмена сообщениями. А значит, там должен быть механизм независимой от 1С регистрации и аутентификации пользователей. Но сложная схема начала работы с новым сервисом означает, что количество желающих попробовать его «на старте» будет невелико, а для массового использования он должен обладать очень и очень весомыми преимуществами.

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

Но как «Система взаимодействий» узнает о пользователях информационной базы, если это отдельный сервис?

Разработчики фирмы «1С», на мой взгляд, пошли единственно верным путём – они максимально упростили «точку входа» в сервис. Платформа самостоятельно выполняет регистрацию, аутентификацию и определение адресатов сообщений. Это возможно благодаря созданию в «Системе взаимодействий» парных пользователей.

Для каждого пользователя в информационной базе 1С создается новый пользователь в «системе взаимодействия». Это происходит автоматически при первой аутентификации пользователя информационной базы после подключения её к сервису. При этом уникальный идентификатор нового адресата для взаимодействий сохраняется как в базе данных, так и в сервисе.

Рисунок 10 – Схема работы «Системы взаимодействий». Второе приближение

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

В настоящий момент начать обмениваться сообщениями может любой желающий, даже несмотря на то, что «Система взаимодействий» пока не поставляется в виде отдельного продукта. Дело в том, что фирма «1С» запустила сервер в качестве сервиса «1С:Диалог», по адресу «1cDialog.com».

Получается, что все желающие будут пользоваться одним «маршрутизатором»? Как это возможно, как не запутаться – где чья информационная база и кому можно управлять её подключением к сервису?

Логично, что на уровне сервиса должно происходить глобальное разделение областей данных с информационными базами. По аналогии с другими существующими облачными сервисами от фирмы «1С» в качестве такого разделителя выступает понятие «Абонент». Его олицетворением является некое лицо (юридическое или физическое), которое желает иметь в своих информационных базах возможность обмена мгновенными сообщениями и совершения видеовызовов.

Рисунок 9 – Схема работы «Системы взаимодействий». Первое приближение

Итак, «Система взаимодействий» является дополнительным сервисом обмена сообщениями. А значит, там должен быть механизм независимой от 1С регистрации и аутентификации пользователей. Но сложная схема начала работы с новым сервисом означает, что количество желающих попробовать его «на старте» будет невелико, а для массового использования он должен обладать очень и очень весомыми преимуществами.

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

Но как «Система взаимодействий» узнает о пользователях информационной базы, если это отдельный сервис?

Разработчики фирмы «1С», на мой взгляд, пошли единственно верным путём – они максимально упростили «точку входа» в сервис. Платформа самостоятельно выполняет регистрацию, аутентификацию и определение адресатов сообщений. Это возможно благодаря созданию в «Системе взаимодействий» парных пользователей.

Для каждого пользователя в информационной базе 1С создается новый пользователь в «системе взаимодействия». Это происходит автоматически при первой аутентификации пользователя информационной базы после подключения её к сервису. При этом уникальный идентификатор нового адресата для взаимодействий сохраняется как в базе данных, так и в сервисе.

Рисунок 10 – Схема работы «Системы взаимодействий». Второе приближение

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

В настоящий момент начать обмениваться сообщениями может любой желающий, даже несмотря на то, что «Система взаимодействий» пока не поставляется в виде отдельного продукта. Дело в том, что фирма «1С» запустила сервер в качестве сервиса «1С:Диалог», по адресу «1cDialog.com».

Получается, что все желающие будут пользоваться одним «маршрутизатором»? Как это возможно, как не запутаться – где чья информационная база и кому можно управлять её подключением к сервису?

Логично, что на уровне сервиса должно происходить глобальное разделение областей данных с информационными базами. По аналогии с другими существующими облачными сервисами от фирмы «1С» в качестве такого разделителя выступает понятие «Абонент». Его олицетворением является некое лицо (юридическое или физическое), которое желает иметь в своих информационных базах возможность обмена мгновенными сообщениями и совершения видеовызовов.

Рисунок 11 – Схема серверной части «Системы взаимодействий». Второе приближение

Идентификация абонента выполняется по адресу электронной почты, и он может являться владельцем одной или нескольких информационных баз, подключенных к «Системе взаимодействий».

Каждое подключение базы регистрируется в сервисе под уникальным идентификатором, который сохраняется как в «Системе взаимодействий», так и в самой информационной базе. Также на обеих сторонах хранятся криптографические ключи для безопасной передачи сообщений между клиентом и сервером с использованием (как мы уже знаем) протокола WS.

Обмен сообщениями и совершение видеозвонков происходит в рамках обсуждений, которые бывают двух видов – контекстные и неконтекстные. Первые используются в привязке к некоторым объектам информационной базы, что позволяет пользователям вести беседу по конкретному предмету, который в момент переписки и/или видео-звонка будет находиться перед глазами.

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

Такой подход позволяет закрыть все потребности в удалённом общении пользователей – от «Марья Ивановна, посмотри отгрузку номер 330 от 31 декабря – там цена почему-то занижена…» до управленческих конференций.

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

В заключении теоретической части стоит отметить, что сообщения, которыми обмениваются пользователи, не хранятся в информационной базе. Поэтому в настоящий момент при отсутствии подключения к серверу «Системы взаимодействий» на рабочем месте не получится не только отправлять/принимать сообщения, но и увидеть историю сообщений.

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

Внимание! К моменту публикации этой статьи фирма «1С» уже опубликовала некоторые особенности платформы 8.3.11, в которых сообщается об изменении механизма работы «Системы взаимодействий» в части видеовызовов.

В платформе 8.3.10 технология видеозвонков была реализована при помощи центрального видео-сервера, встроенного в сервер «Системы взаимодействий». Скорее всего, тестирование данного механизма показало большую нагрузку на серверную часть «Системы взаимодействий» при совершении пользователями звонков. И уже в следующей версии платформы [8.3.11] видеовызовы будут выполняться по технологии peer-to-peer.

Также, разработчики «приоткрыли завесу» над технологиями, которые они использовали при создании «Системы взаимодействий». Например, для хранения сессий пользователей, подписок на события и прочей служебной информации они используют распределенное хранилище Hazelcast.

Ну что, наверное уже хочется попробовать «Систему взаимодействий»? Сейчас мы расскажем, как начать её использовать.

Подключение

Начать работать с «Системой взаимодействий» можно на любой, даже пустой, конфигурации, если используется платформа «8.3.10». Для этого необходимо убедиться, что свойство Режим совместимости установлено в значение Не использовать:

Рисунок 12 – Настройка режима совместимости конфигурации

А в конфигурации есть хотя бы один пользователь, и он обладает правом РегистрацияИнформационнойБазыСистемыВзаимодействия:

Рисунок 13 – Настройка роли

Кроме этого, на компьютерах, где планируется использовать обмен сообщениями, должен быть открыт доступ по URL к серверу «Системы взаимодействий». Так как сейчас сервер доступен исключительно в виде сервиса, то на рабочих местах не должно быть запрета на адрес «wss://1cdialog.com:443».

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

Рисунок 14 – Меню подключения к «Системе взаимодействий»

В случае, если информационная база ещё не подключена к сервису «1С:Диалог», откроется следующая форма:

Рисунок 15 – Окно управления подключением к «Системе взаимодействий». Подключение отсутствует

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

Рисунок 16 – Окно управления подключением к «Системе взаимодействий». Запрос кода регистрации

Что примечательно, после ввода в строку даже одного символа кнопка Получить код становится активной, следовательно на данном этапе нет проверки введенного текста на соответствие маске электронной почты. При нажатии на кнопку Получить код система выдаст сообщение о том, что «Код регистрации выслан на адрес …», и откроется диалоговое окно подтверждения регистрации.

Также отметим, что указание существующего адреса электронной почты не всегда приводит к ожидаемому результату. Автору так и не удалось дождаться письма с кодом подтверждения регистрации на его активный адрес бесплатного почтового сервера mail.ru. Зато с «импортным» gmail.com таких проблем не возникло.

Когда вы укажете адрес электронной почты, на который сервис «1С:Диалог» сможет выслать регистрационную информацию, на него придёт письмо примерно следующего содержания:

Рисунок 17 – Пример письма с кодом регистрации в «Системе взаимодействий»

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

Рисунок 18 – Окно управления подключением к «Системе взаимодействий». Регистрация

Интуитивно понятно, что в поле Адрес электронной почты абонента необходимо указать электронную почту, которая была использована на первом шаге регистрации, а в поле Код регистрации – код из письма. При указании некорректных данных в этих полях ввода «Система взаимодействий» вернёт ошибку «Отказано в доступе» и регистрация не будет завершена.

Поле Наименование информационной базы заполняется произвольными символами (как показала практика, можно использовать даже спец. символы).

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

В случае, если вам удастся соблюсти все требования и произвести нехитрые манипуляции по регистрации без ошибок, «1С:Предприятие» наградит вас за это следующим сообщением:

Рисунок 19 – Окно управления подключением к «Системе взаимодействий». Успех!

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

На этом регистрация в «Системе взаимодействий» завершена. Читателю может показаться, что процесс сложный и затянутый, но на самом деле это не так. Регистрация информационной базы в «Системе взаимодействий» может быть выполнена меньше чем за минуту.

Стоит отметить, что сервис 1cDialog.com пока работает в тестовом режиме. Поэтому доступ к видеозвонкам ограничен и предоставляется только по запросу в службу технической поддержки по адресу электронной почты info@1cDialog.com. В этом письме-запросе необходимо указать:

  • Регистрационный номер лицензионной программы 1С и ИНН организации, на которую приобреталась эта программа
  • Электронную почту абонента сервиса
  • Планируемое количество пользователей.

Каждая заявка анализируется, и по результатам рассмотрения открывается доступ к видео-вызовам или присылается отказ.

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

Использование «Системы взаимодействий» «в картинках»

А теперь заглянем в использование системы. Но только совсем чуть-чуть… Как говорится – «для затравочки»!

Рисунок 12 – Настройка режима совместимости конфигурации

А в конфигурации есть хотя бы один пользователь, и он обладает правом РегистрацияИнформационнойБазыСистемыВзаимодействия:

Рисунок 13 – Настройка роли

Кроме этого, на компьютерах, где планируется использовать обмен сообщениями, должен быть открыт доступ по URL к серверу «Системы взаимодействий». Так как сейчас сервер доступен исключительно в виде сервиса, то на рабочих местах не должно быть запрета на адрес «wss://1cdialog.com:443».

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

Рисунок 14 – Меню подключения к «Системе взаимодействий»

В случае, если информационная база ещё не подключена к сервису «1С:Диалог», откроется следующая форма:

Рисунок 15 – Окно управления подключением к «Системе взаимодействий». Подключение отсутствует

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

Рисунок 16 – Окно управления подключением к «Системе взаимодействий». Запрос кода регистрации

Что примечательно, после ввода в строку даже одного символа кнопка Получить код становится активной, следовательно на данном этапе нет проверки введенного текста на соответствие маске электронной почты. При нажатии на кнопку Получить код система выдаст сообщение о том, что «Код регистрации выслан на адрес …», и откроется диалоговое окно подтверждения регистрации.

Также отметим, что указание существующего адреса электронной почты не всегда приводит к ожидаемому результату. Автору так и не удалось дождаться письма с кодом подтверждения регистрации на его активный адрес бесплатного почтового сервера mail.ru. Зато с «импортным» gmail.com таких проблем не возникло.

Когда вы укажете адрес электронной почты, на который сервис «1С:Диалог» сможет выслать регистрационную информацию, на него придёт письмо примерно следующего содержания:

Рисунок 17 – Пример письма с кодом регистрации в «Системе взаимодействий»

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

Рисунок 18 – Окно управления подключением к «Системе взаимодействий». Регистрация

Интуитивно понятно, что в поле Адрес электронной почты абонента необходимо указать электронную почту, которая была использована на первом шаге регистрации, а в поле Код регистрации – код из письма. При указании некорректных данных в этих полях ввода «Система взаимодействий» вернёт ошибку «Отказано в доступе» и регистрация не будет завершена.

Поле Наименование информационной базы заполняется произвольными символами (как показала практика, можно использовать даже спец. символы).

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

В случае, если вам удастся соблюсти все требования и произвести нехитрые манипуляции по регистрации без ошибок, «1С:Предприятие» наградит вас за это следующим сообщением:

Рисунок 19 – Окно управления подключением к «Системе взаимодействий». Успех!

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

На этом регистрация в «Системе взаимодействий» завершена. Читателю может показаться, что процесс сложный и затянутый, но на самом деле это не так. Регистрация информационной базы в «Системе взаимодействий» может быть выполнена меньше чем за минуту.

Стоит отметить, что сервис 1cDialog.com пока работает в тестовом режиме. Поэтому доступ к видеозвонкам ограничен и предоставляется только по запросу в службу технической поддержки по адресу электронной почты info@1cDialog.com. В этом письме-запросе необходимо указать:

  • Регистрационный номер лицензионной программы 1С и ИНН организации, на которую приобреталась эта программа
  • Электронную почту абонента сервиса
  • Планируемое количество пользователей.

Каждая заявка анализируется, и по результатам рассмотрения открывается доступ к видео-вызовам или присылается отказ.

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

Использование «Системы взаимодействий» «в картинках»

А теперь заглянем в использование системы. Но только совсем чуть-чуть… Как говорится – «для затравочки»!

Рисунок 20 – Неконтекстное обсуждение. Информирование о поступлении нового сообщения

Рисунок 21 – Неконтекстное обсуждение. Переписка

Рисунок 21 – Неконтекстное обсуждение. Переписка

Рисунок 22 – Контекстное обсуждение

Рисунок 23 – Контекстный видеозвонок «Второго пользователя» «Первому»

Вместо заключения

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

Механизм получился очень интересный, перспективный и отвечающий веяниям времени. Удалённое взаимодействие и электронное общение всё глубже укореняются в нашей жизни, а время становится всё более «дорогим».

Теперь не надо будет при приёме на работу нового сотрудника создавать ему аккаунт в мессенджере для общения по рабочим вопросам. А пользователям не надо переключаться между окнами и уметь пользоваться разными инструментами для электронного общения. Вести учёт и переписку теперь стало возможным в режиме одного окна, без использования сторонних средств!

И напоследок для раздумий и дискуссий в комментариях – фантазии автора (это исключительно мнение автора, которое не имеет ничего общего с мнением команды «Курсы-по-1С» и, тем более, с официальными источниками фирмы «1С»):

  1. Спустя тестовый период использования, сервис 1cDialog.com станет «условно бесплатным»
  2. В рамках договора сопровождения ИТС уровня ПРОФ будет бесплатно предоставляться возможность использования «Системы взаимодействий» ограниченному количеству пользователей
  3. Возможность совершать видеовызовы будет платной даже для категории пользователей, подпадающих под п. 2
  4. Отдельный сервер «Системы взаимодействий» будет являться самостоятельной позицией прайса фирмы «1С»
  5. Появится возможность общаться между собой у пользователей разных информационных баз, а может быть, даже баз, принадлежащих разным абонентам.

А на ваш взгляд, какова вероятность воплощения в жизнь этих фантазий? Пишите в комментариях!

Об авторе

PDF-версия статьи для участников группы ВКонтакте

Мы ведем группу ВКонтакте – http://vk.com/kursypo1c.

Если Вы еще не вступили в нее – сделайте это сейчас, и в блоке ниже (на этой странице) появятся ссылки на скачивание материалов.

Если Вы уже участник группы – нужно просто повторно авторизоваться в ВКонтакте, чтобы скрипт Вас узнал. В случае проблем решение стандартное: очистить кэш браузера или подписаться через другой браузер.

В начале апреля фирма «1С» выпустила новую версию платформы – 8.3.10.

Новые возможности получились весьма «вкусными». В этой статье мы рассмотрим Систему взаимодействий.

Если коротко, то это Skype (или Telegram) внутри конфигурации 1С. О таком корпоративном мессенджере давно мечтали руководители и IT-шники :)

И вот чудо свершилось – теперь можно звонить, общаться текстом и устраивать конференции между сотрудниками не покидая 1С. И все это может привязано к объектам – конкретным документам, договорам, контрагентам, …

Начнем рассмотрение Системы взаимодействия с самых основ.

Концепция

Сначала давайте рассмотрим, что из себя представляет «1С:Предприятие». Этот программный комплекс построен по классической трёхзвенной архитектуре. Представить его можно в следующем виде:

Рисунок 1 – Упрощённая схема трёхзвенной архитектуры

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

Подробнее про серверные вызовы можно прочитать в статье «Как работает серверный вызов в 1С». Для данного же материала важно отметить следующий факт – инициировать серверный вызов для передачи данных возможно только на клиентской части.

Но давайте вернёмся к «Системе взаимодействий»! Для начала обратимся к документации и посмотрим – что же скрывается под таким громким названием?

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

Под термином «видеозвонок» понимается любой возможный вариант общения двух пользователей, который включает в себя как только голосовой канал общения, так и полноценный видеозвонок (голосовая информация и изображение).

Исходя из описания, получается что фирма «1С» встроила в платформу «мессенджер» для общения пользователей между собой. «Наконец-то!» – воскликнут одни. «Зачем?» – вопрошают другие. Оставим эту дискуссию для комментариев, а пока продолжим рассматривать «Систему взаимодействий» дальше.

Логично, что общение имеет смысл в том случае, когда в системе работают два или более пользователей. В среде «1С:Предприятие» для каждого пользователя организуется своя рабочая область. Поэтому [в клиент-серверном варианте] несколько клиентских подключений к информационной базе можно представить следующим образом:

Рисунок 2 – Схема многопользовательского варианта работы «1С:Предприятие»

Вроде бы «чего проще» – передать сообщение с одной клиентской части на другую?

Но! Клиентские процессы работают каждый в своей рабочей области и не имеют пересечений. Единственная возможность передачи информации – через серверную часть.

И здесь кроется очередное «Но!» – как упоминалось ранее, серверная часть не может инициировать клиентский вызов. А это значит, что для обнаружения новых сообщений в существующей системе необходимо организовать периодический мониторинг клиентом серверной части. Выглядеть это будет примерно следующим образом:

Рисунок 3 – Схема запуска клиентской частью обработчика ожидания для периодического запроса к серверной части

Как видим, общение клиентских частей таким образом возможно, но оно имеет свои особенности.

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

Но самое главное: увеличится нагрузка на самое узкое место системы – соединение между клиентом и сервером (особенно в момент передачи потока медиа). Поэтому фирме «1С» надо было найти иное решение задачи взаимодействия пользователей.

Давайте разберём, что же предстояло сделать разработчикам платформы для встраивания в «1С:Предприятие» механизма обмена текстовыми и видео-сообщениями.

Во-первых, необходимо дать пользователям возможность отправлять и принимать сообщения (в том числе служебных – для инициации видео-вызовов):

Рисунок 4 – Отправка сообщения

Во-вторых, должен быть налажен механизм транспорта исходящих и входящих сообщений:

Рисунок 2 – Схема многопользовательского варианта работы «1С:Предприятие»

Вроде бы «чего проще» – передать сообщение с одной клиентской части на другую?

Но! Клиентские процессы работают каждый в своей рабочей области и не имеют пересечений. Единственная возможность передачи информации – через серверную часть.

И здесь кроется очередное «Но!» – как упоминалось ранее, серверная часть не может инициировать клиентский вызов. А это значит, что для обнаружения новых сообщений в существующей системе необходимо организовать периодический мониторинг клиентом серверной части. Выглядеть это будет примерно следующим образом:

Рисунок 3 – Схема запуска клиентской частью обработчика ожидания для периодического запроса к серверной части

Как видим, общение клиентских частей таким образом возможно, но оно имеет свои особенности.

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

Но самое главное: увеличится нагрузка на самое узкое место системы – соединение между клиентом и сервером (особенно в момент передачи потока медиа). Поэтому фирме «1С» надо было найти иное решение задачи взаимодействия пользователей.

Давайте разберём, что же предстояло сделать разработчикам платформы для встраивания в «1С:Предприятие» механизма обмена текстовыми и видео-сообщениями.

Во-первых, необходимо дать пользователям возможность отправлять и принимать сообщения (в том числе служебных – для инициации видео-вызовов):

Рисунок 4 – Отправка сообщения

Во-вторых, должен быть налажен механизм транспорта исходящих и входящих сообщений:

Рисунок 5 – Транспорт исходящего сообщения

Причём желательно иметь возможность оперативного получения информации о поступлении новых сообщений.

Рисунок 6 – Транспорт входящего и информирование о поступлении нового сообщения

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

Рисунок 6 – Транспорт входящего и информирование о поступлении нового сообщения

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

Рисунок 7 – Канал для передачи сообщений между пользовательскими сеансами

Понятное дело, что пользователей может быть больше двух. А значит, организовывать прямой канал «клиент» – «клиент» нецелесообразно, нужен некий «маршрутизатор» – серверная часть «Системы взаимодействий».

Рисунок 8 – Схема серверной части «Системы взаимодействий». Первое приближение

Встроить этот «маршрутизатор» в серверную часть «1С:Предприятие», по уже понятным нам причинам, нецелесообразно. Поэтому («в-третьих»), дополнительно необходимо определиться с расположением серверной части «Системы взаимодействий».

Итак, у нас получилось несколько «пазлов», сложив которые, мы увидим полную картину о «Системе взаимодействий». Давайте прямо сейчас это и сделаем!

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

Вопрос с оперативной двусторонней передачей информации между клиентом и сервером «Системы взаимодействий» решился без «изобретения велосипеда»: на помощь пришёл современный протокол WebSocket (далее WS). В качестве «вишенки на торте» – этот протокол позволяет передавать информацию в зашифрованном виде, что обеспечивает защиту передаваемой информации.

Стоит отметить, что при совершении видеовызовов по протоколу WS передается лишь служебная информация для инициализации звонка. Передача видео происходит с использованием других технологий, встроенных в «Систему взаимодействий».

Сложив всё вместе, получаем следующую схему:

Рисунок 9 – Схема работы «Системы взаимодействий». Первое приближение

Итак, «Система взаимодействий» является дополнительным сервисом обмена сообщениями. А значит, там должен быть механизм независимой от 1С регистрации и аутентификации пользователей. Но сложная схема начала работы с новым сервисом означает, что количество желающих попробовать его «на старте» будет невелико, а для массового использования он должен обладать очень и очень весомыми преимуществами.

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

Но как «Система взаимодействий» узнает о пользователях информационной базы, если это отдельный сервис?

Разработчики фирмы «1С», на мой взгляд, пошли единственно верным путём – они максимально упростили «точку входа» в сервис. Платформа самостоятельно выполняет регистрацию, аутентификацию и определение адресатов сообщений. Это возможно благодаря созданию в «Системе взаимодействий» парных пользователей.

Для каждого пользователя в информационной базе 1С создается новый пользователь в «системе взаимодействия». Это происходит автоматически при первой аутентификации пользователя информационной базы после подключения её к сервису. При этом уникальный идентификатор нового адресата для взаимодействий сохраняется как в базе данных, так и в сервисе.

Рисунок 10 – Схема работы «Системы взаимодействий». Второе приближение

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

В настоящий момент начать обмениваться сообщениями может любой желающий, даже несмотря на то, что «Система взаимодействий» пока не поставляется в виде отдельного продукта. Дело в том, что фирма «1С» запустила сервер в качестве сервиса «1С:Диалог», по адресу «1cDialog.com».

Получается, что все желающие будут пользоваться одним «маршрутизатором»? Как это возможно, как не запутаться – где чья информационная база и кому можно управлять её подключением к сервису?

Логично, что на уровне сервиса должно происходить глобальное разделение областей данных с информационными базами. По аналогии с другими существующими облачными сервисами от фирмы «1С» в качестве такого разделителя выступает понятие «Абонент». Его олицетворением является некое лицо (юридическое или физическое), которое желает иметь в своих информационных базах возможность обмена мгновенными сообщениями и совершения видеовызовов.

Рисунок 9 – Схема работы «Системы взаимодействий». Первое приближение

Итак, «Система взаимодействий» является дополнительным сервисом обмена сообщениями. А значит, там должен быть механизм независимой от 1С регистрации и аутентификации пользователей. Но сложная схема начала работы с новым сервисом означает, что количество желающих попробовать его «на старте» будет невелико, а для массового использования он должен обладать очень и очень весомыми преимуществами.

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

Но как «Система взаимодействий» узнает о пользователях информационной базы, если это отдельный сервис?

Разработчики фирмы «1С», на мой взгляд, пошли единственно верным путём – они максимально упростили «точку входа» в сервис. Платформа самостоятельно выполняет регистрацию, аутентификацию и определение адресатов сообщений. Это возможно благодаря созданию в «Системе взаимодействий» парных пользователей.

Для каждого пользователя в информационной базе 1С создается новый пользователь в «системе взаимодействия». Это происходит автоматически при первой аутентификации пользователя информационной базы после подключения её к сервису. При этом уникальный идентификатор нового адресата для взаимодействий сохраняется как в базе данных, так и в сервисе.

Рисунок 10 – Схема работы «Системы взаимодействий». Второе приближение

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

В настоящий момент начать обмениваться сообщениями может любой желающий, даже несмотря на то, что «Система взаимодействий» пока не поставляется в виде отдельного продукта. Дело в том, что фирма «1С» запустила сервер в качестве сервиса «1С:Диалог», по адресу «1cDialog.com».

Получается, что все желающие будут пользоваться одним «маршрутизатором»? Как это возможно, как не запутаться – где чья информационная база и кому можно управлять её подключением к сервису?

Логично, что на уровне сервиса должно происходить глобальное разделение областей данных с информационными базами. По аналогии с другими существующими облачными сервисами от фирмы «1С» в качестве такого разделителя выступает понятие «Абонент». Его олицетворением является некое лицо (юридическое или физическое), которое желает иметь в своих информационных базах возможность обмена мгновенными сообщениями и совершения видеовызовов.

Рисунок 11 – Схема серверной части «Системы взаимодействий». Второе приближение

Идентификация абонента выполняется по адресу электронной почты, и он может являться владельцем одной или нескольких информационных баз, подключенных к «Системе взаимодействий».

Каждое подключение базы регистрируется в сервисе под уникальным идентификатором, который сохраняется как в «Системе взаимодействий», так и в самой информационной базе. Также на обеих сторонах хранятся криптографические ключи для безопасной передачи сообщений между клиентом и сервером с использованием (как мы уже знаем) протокола WS.

Обмен сообщениями и совершение видеозвонков происходит в рамках обсуждений, которые бывают двух видов – контекстные и неконтекстные. Первые используются в привязке к некоторым объектам информационной базы, что позволяет пользователям вести беседу по конкретному предмету, который в момент переписки и/или видео-звонка будет находиться перед глазами.

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

Такой подход позволяет закрыть все потребности в удалённом общении пользователей – от «Марья Ивановна, посмотри отгрузку номер 330 от 31 декабря – там цена почему-то занижена…» до управленческих конференций.

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

В заключении теоретической части стоит отметить, что сообщения, которыми обмениваются пользователи, не хранятся в информационной базе. Поэтому в настоящий момент при отсутствии подключения к серверу «Системы взаимодействий» на рабочем месте не получится не только отправлять/принимать сообщения, но и увидеть историю сообщений.

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

Внимание! К моменту публикации этой статьи фирма «1С» уже опубликовала некоторые особенности платформы 8.3.11, в которых сообщается об изменении механизма работы «Системы взаимодействий» в части видеовызовов.

В платформе 8.3.10 технология видеозвонков была реализована при помощи центрального видео-сервера, встроенного в сервер «Системы взаимодействий». Скорее всего, тестирование данного механизма показало большую нагрузку на серверную часть «Системы взаимодействий» при совершении пользователями звонков. И уже в следующей версии платформы [8.3.11] видеовызовы будут выполняться по технологии peer-to-peer.

Также, разработчики «приоткрыли завесу» над технологиями, которые они использовали при создании «Системы взаимодействий». Например, для хранения сессий пользователей, подписок на события и прочей служебной информации они используют распределенное хранилище Hazelcast.

Ну что, наверное уже хочется попробовать «Систему взаимодействий»? Сейчас мы расскажем, как начать её использовать.

Подключение

Начать работать с «Системой взаимодействий» можно на любой, даже пустой, конфигурации, если используется платформа «8.3.10». Для этого необходимо убедиться, что свойство Режим совместимости установлено в значение Не использовать:

Рисунок 12 – Настройка режима совместимости конфигурации

А в конфигурации есть хотя бы один пользователь, и он обладает правом РегистрацияИнформационнойБазыСистемыВзаимодействия:

Рисунок 13 – Настройка роли

Кроме этого, на компьютерах, где планируется использовать обмен сообщениями, должен быть открыт доступ по URL к серверу «Системы взаимодействий». Так как сейчас сервер доступен исключительно в виде сервиса, то на рабочих местах не должно быть запрета на адрес «wss://1cdialog.com:443».

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

Рисунок 14 – Меню подключения к «Системе взаимодействий»

В случае, если информационная база ещё не подключена к сервису «1С:Диалог», откроется следующая форма:

Рисунок 15 – Окно управления подключением к «Системе взаимодействий». Подключение отсутствует

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

Рисунок 16 – Окно управления подключением к «Системе взаимодействий». Запрос кода регистрации

Что примечательно, после ввода в строку даже одного символа кнопка Получить код становится активной, следовательно на данном этапе нет проверки введенного текста на соответствие маске электронной почты. При нажатии на кнопку Получить код система выдаст сообщение о том, что «Код регистрации выслан на адрес …», и откроется диалоговое окно подтверждения регистрации.

Также отметим, что указание существующего адреса электронной почты не всегда приводит к ожидаемому результату. Автору так и не удалось дождаться письма с кодом подтверждения регистрации на его активный адрес бесплатного почтового сервера mail.ru. Зато с «импортным» gmail.com таких проблем не возникло.

Когда вы укажете адрес электронной почты, на который сервис «1С:Диалог» сможет выслать регистрационную информацию, на него придёт письмо примерно следующего содержания:

Рисунок 17 – Пример письма с кодом регистрации в «Системе взаимодействий»

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

Рисунок 18 – Окно управления подключением к «Системе взаимодействий». Регистрация

Интуитивно понятно, что в поле Адрес электронной почты абонента необходимо указать электронную почту, которая была использована на первом шаге регистрации, а в поле Код регистрации – код из письма. При указании некорректных данных в этих полях ввода «Система взаимодействий» вернёт ошибку «Отказано в доступе» и регистрация не будет завершена.

Поле Наименование информационной базы заполняется произвольными символами (как показала практика, можно использовать даже спец. символы).

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

В случае, если вам удастся соблюсти все требования и произвести нехитрые манипуляции по регистрации без ошибок, «1С:Предприятие» наградит вас за это следующим сообщением:

Рисунок 19 – Окно управления подключением к «Системе взаимодействий». Успех!

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

На этом регистрация в «Системе взаимодействий» завершена. Читателю может показаться, что процесс сложный и затянутый, но на самом деле это не так. Регистрация информационной базы в «Системе взаимодействий» может быть выполнена меньше чем за минуту.

Стоит отметить, что сервис 1cDialog.com пока работает в тестовом режиме. Поэтому доступ к видеозвонкам ограничен и предоставляется только по запросу в службу технической поддержки по адресу электронной почты info@1cDialog.com. В этом письме-запросе необходимо указать:

  • Регистрационный номер лицензионной программы 1С и ИНН организации, на которую приобреталась эта программа
  • Электронную почту абонента сервиса
  • Планируемое количество пользователей.

Каждая заявка анализируется, и по результатам рассмотрения открывается доступ к видео-вызовам или присылается отказ.

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

Использование «Системы взаимодействий» «в картинках»

А теперь заглянем в использование системы. Но только совсем чуть-чуть… Как говорится – «для затравочки»!

Рисунок 12 – Настройка режима совместимости конфигурации

А в конфигурации есть хотя бы один пользователь, и он обладает правом РегистрацияИнформационнойБазыСистемыВзаимодействия:

Рисунок 13 – Настройка роли

Кроме этого, на компьютерах, где планируется использовать обмен сообщениями, должен быть открыт доступ по URL к серверу «Системы взаимодействий». Так как сейчас сервер доступен исключительно в виде сервиса, то на рабочих местах не должно быть запрета на адрес «wss://1cdialog.com:443».

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

Рисунок 14 – Меню подключения к «Системе взаимодействий»

В случае, если информационная база ещё не подключена к сервису «1С:Диалог», откроется следующая форма:

Рисунок 15 – Окно управления подключением к «Системе взаимодействий». Подключение отсутствует

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

Рисунок 16 – Окно управления подключением к «Системе взаимодействий». Запрос кода регистрации

Что примечательно, после ввода в строку даже одного символа кнопка Получить код становится активной, следовательно на данном этапе нет проверки введенного текста на соответствие маске электронной почты. При нажатии на кнопку Получить код система выдаст сообщение о том, что «Код регистрации выслан на адрес …», и откроется диалоговое окно подтверждения регистрации.

Также отметим, что указание существующего адреса электронной почты не всегда приводит к ожидаемому результату. Автору так и не удалось дождаться письма с кодом подтверждения регистрации на его активный адрес бесплатного почтового сервера mail.ru. Зато с «импортным» gmail.com таких проблем не возникло.

Когда вы укажете адрес электронной почты, на который сервис «1С:Диалог» сможет выслать регистрационную информацию, на него придёт письмо примерно следующего содержания:

Рисунок 17 – Пример письма с кодом регистрации в «Системе взаимодействий»

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

Рисунок 18 – Окно управления подключением к «Системе взаимодействий». Регистрация

Интуитивно понятно, что в поле Адрес электронной почты абонента необходимо указать электронную почту, которая была использована на первом шаге регистрации, а в поле Код регистрации – код из письма. При указании некорректных данных в этих полях ввода «Система взаимодействий» вернёт ошибку «Отказано в доступе» и регистрация не будет завершена.

Поле Наименование информационной базы заполняется произвольными символами (как показала практика, можно использовать даже спец. символы).

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

В случае, если вам удастся соблюсти все требования и произвести нехитрые манипуляции по регистрации без ошибок, «1С:Предприятие» наградит вас за это следующим сообщением:

Рисунок 19 – Окно управления подключением к «Системе взаимодействий». Успех!

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

На этом регистрация в «Системе взаимодействий» завершена. Читателю может показаться, что процесс сложный и затянутый, но на самом деле это не так. Регистрация информационной базы в «Системе взаимодействий» может быть выполнена меньше чем за минуту.

Стоит отметить, что сервис 1cDialog.com пока работает в тестовом режиме. Поэтому доступ к видеозвонкам ограничен и предоставляется только по запросу в службу технической поддержки по адресу электронной почты info@1cDialog.com. В этом письме-запросе необходимо указать:

  • Регистрационный номер лицензионной программы 1С и ИНН организации, на которую приобреталась эта программа
  • Электронную почту абонента сервиса
  • Планируемое количество пользователей.

Каждая заявка анализируется, и по результатам рассмотрения открывается доступ к видео-вызовам или присылается отказ.

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

Использование «Системы взаимодействий» «в картинках»

А теперь заглянем в использование системы. Но только совсем чуть-чуть… Как говорится – «для затравочки»!

Рисунок 20 – Неконтекстное обсуждение. Информирование о поступлении нового сообщения

Рисунок 21 – Неконтекстное обсуждение. Переписка

Рисунок 21 – Неконтекстное обсуждение. Переписка

Рисунок 22 – Контекстное обсуждение

Рисунок 23 – Контекстный видеозвонок «Второго пользователя» «Первому»

Вместо заключения

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

Механизм получился очень интересный, перспективный и отвечающий веяниям времени. Удалённое взаимодействие и электронное общение всё глубже укореняются в нашей жизни, а время становится всё более «дорогим».

Теперь не надо будет при приёме на работу нового сотрудника создавать ему аккаунт в мессенджере для общения по рабочим вопросам. А пользователям не надо переключаться между окнами и уметь пользоваться разными инструментами для электронного общения. Вести учёт и переписку теперь стало возможным в режиме одного окна, без использования сторонних средств!

И напоследок для раздумий и дискуссий в комментариях – фантазии автора (это исключительно мнение автора, которое не имеет ничего общего с мнением команды «Курсы-по-1С» и, тем более, с официальными источниками фирмы «1С»):

  1. Спустя тестовый период использования, сервис 1cDialog.com станет «условно бесплатным»
  2. В рамках договора сопровождения ИТС уровня ПРОФ будет бесплатно предоставляться возможность использования «Системы взаимодействий» ограниченному количеству пользователей
  3. Возможность совершать видеовызовы будет платной даже для категории пользователей, подпадающих под п. 2
  4. Отдельный сервер «Системы взаимодействий» будет являться самостоятельной позицией прайса фирмы «1С»
  5. Появится возможность общаться между собой у пользователей разных информационных баз, а может быть, даже баз, принадлежащих разным абонентам.

А на ваш взгляд, какова вероятность воплощения в жизнь этих фантазий? Пишите в комментариях!

Об авторе

PDF-версия статьи для участников группы ВКонтакте

Мы ведем группу ВКонтакте – http://vk.com/kursypo1c.

Если Вы еще не вступили в нее – сделайте это сейчас, и в блоке ниже (на этой странице) появятся ссылки на скачивание материалов.

Если Вы уже участник группы – нужно просто повторно авторизоваться в ВКонтакте, чтобы скрипт Вас узнал. В случае проблем решение стандартное: очистить кэш браузера или подписаться через другой браузер.

Всем доброго времени суток.

Не могу понять что не так.

С ошибкой валится при нажатии на «ОК» при добавлении новой интеграции с телеграмм.

Вчера с этим же ботом всё было нормально.

Подробнее текст ошибки:

Ошибка протокола системы взаимодействия

{ВнешняяОбработка.StandardECSRegister.Форма.IntegrationForm.Форма(260)}: Int.Write();

{ВнешняяОбработка.StandardECSRegister.Форма.IntegrationForm.Форма(267)}: SaveOnServer();

по причине:

Ошибка протокола системы взаимодействия

Подробнее как всё было.

Вчера:

зарегистрировал бота.

Зарегистрировал конфигурацию в системе взаимодействия на 1С:Диалог.

(конфигурация полностью пустая, кроме одной роли со всеми флагами и одного пользователя с этой ролью)

Добавил интеграцию. (по нажатию на «ОК» — было всё ок)

Отправил в бота сообщение.

Сразу появилось новое обсуждение в 1с.

По игрался с сообщениями туда — сюда. Всё отлично.

Решил почистить все сообщения.

Интерактивно не нашёл как.

Вроде разобрался как программно через СистемаВзаимодействия.УдалитьСообщение(текСообщение.Идентификатор);

Но не вышло.

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

Попробовал не заморачиваться и нажал в 1с выйти из беседы.

Вышел и больше ни чего сделать не смог. Новые сообщения не приходят.

Сегодня:

Удалил в 1с регистрацию.

Создал новую конфигурацию.

Добавил роль и пользователя.

Зарегистрировал на 1С:Диалог

Начал добавлять интеграцию.

т.е. всё как и вчера, но при нажатии на «ОК», получил вот такую бяку.

Может кто чем помочь?

По ошибке текущей, да и не только. Может я раньше что-то накосячил. Может есть какой другой совет, чтоб не прийти к этой ошибке.

Спасибо.

  1. 28.02.2019, 19:33


    #1

    Mekok вне форума


    Гость форума


    По умолчанию Сервер взаимодействия 1С

    Добрый день.
    Установлена платформа 1С:Предприятие 8.3 (8.3.13.1690) и конфигурация 1С:ERP Управление предприятием 2 (2.2.2.127). Конфигурация ERP зарегистрирована на локально установленном сервере взаимодействия версии 5.0.37. Количество одновременных пользователей от 50 до 250.

    Сервер 1С Предприятия установлен на Linux Ubuntu 16.04
    Аппаратные характеристики сервера 1C предприятия: 22vCPU, 132 GB RAM, SSD-диск

    База данных: PostgresSQL на Linux Ubuntu 16.04
    Аппаратные характеристики сервера 1C предприятия: 18vCPU, 112 GB RAM, SSD-диск

    Сервер взаимодействия установлен на Linux Ubuntu 16.04
    Аппаратные характеристики сервера взаимодействия: 2vCPU, 4GB RAM

    Имеется проблема с Системой взаимодействия, которая заключается в следующем: при одновременной работе более 50 пользователей новые пользователи могут авторизоваться, после чего у них интерфейс приложения 1С «зависает», невозможно переходить в меню и пункты. В некоторых случаях помогает удаление пользовательского кэша 1С на компьютере, после чего можно зайти 1 раз, на этом компьютере, следующие попытки войти снова приводят к зависанию.

    Если остановить сервер взаимодействия или обработкой отменить регистрацию системы взаимодействия — конфигурация начинает работать нормально. Если перезапустить систему взаимодействия — платформа непродолжительное время может работать нормально, от 30 минут до 2 часов, после чего снова начинаются зависания. Время проявления зависания уменьшается если одновременно заходит большое количество пользователей, от 50-100 человек. При этом деградации производительности во время зависания ни на одном сервере не наблюдается, работа серверов стабильна, есть достаточное количество свободной оперативной памяти и ядер.

    Проблема началась после перехода на на платформу 8.3.13.1644 и сервер взаимодействия версии 4.0.73, а затем и на 8.3.13.1690 и 5.0.37. Ранее, до перехода на 8.13, на платформах, включая 8.3.12.1685 — всё работало нормально.

    Когда были платформы до 8.3.12 — использовали PostgreSQL 9.6.3 и для сервера взаимодействия, и для сервера базы данных. После обновления платформы до 8.3.13.1644 проблема с зависанием появилась при использовании PostgreSQL 9.6.3, после чего обновили PostgreSQL до версии 11.1 на сервере баз данных, и до последней версии в ветке 9.6 — на сервере взаимодействия. Проблема так и сохранилась, и от версии PostgreSQl не зависит.

    Устанавливали сервер взаимодействия заново, на чистую систему, без обновления существующей установки сервера взаимодействия.

    Вопросы: куда копать, что смотреть? В конфигурации установлен режим совместимости с 8.3.11, может ли это меть влияние? Как ограничить количество подключений пользователей к серверу взаимодействия? В техподдержку 1с написал, ответ жду уже больше месяца, результата пока нет.


  2. 14.03.2019, 15:46


    #2

    Online_Z на форуме


    Спец


    По умолчанию Re: Сервер взаимодействия 1С

    Информация для размышления:
    Начиная с 10.09.2019 пользователям ранее выпущенных лицензий уровня ПРОФ станет недоступна расширенная функциональность уровня КОРП (в том числе и возможность использовать «1С:Сервер взаимодействия»). Также начнут действовать ограничения использования лицензий при превышении 500 сеансов пользователей и/или использовании более 12 ядер процессора.
    Для лицензий уровня ПРОФ, приобретенных до 11.02.2019 г. можно бесплатно снять ограничение на количество сеансов и ядер процессоров, но для возможности использования сервера взаимодействия и других возможностей лицензий уровня КОРП необходимо сделать апгрейд лицензий с ПРОФ на КОРП на платной основе.


  3. 22.11.2019, 10:12


    #3

    unnamsa вне форума


    Гость форума


    По умолчанию Re: Сервер взаимодействия 1С


Я так понял, у тебя выполняется код при нажатии на кнопку, но отображается эта ошибка.
Просто она требует ответа.

Кнопка обрабатывается ивентом InteractionCreate у каждого взаимодействия есть свойство, в случае кнопки — interaction.isButton(). Чтобы обработать конкретную кнопку, нужно проверить её айди, который ты указываешь при создании кнопки

if(interaction.isButton()) {
        if(interaction.customId == 'idmember') {
                await interaction.reply('reply');
        }
}

Если тебе не нужно засорять чат от ответа взаимодействия кнопки, то просто используй await interaction.deferUpdate(). Или ты можешь вывести туда полезную инфу, например, как в твоем случае «Пользователь member забанен»

Понравилась статья? Поделить с друзьями:
  • Ошибка вентилятора опель корса д
  • Ошибка вентилятора на пассате б6
  • Ошибка вентилятора внутреннего блока кондиционера причины
  • Ошибка вентилятора xiaomi робот пылесос с влажной уборкой
  • Ошибка вентилятора xiaomi vacuum cleaner что делать