Опыт интеграции мессенджера Telegram c 1C

Публикация № 819087

Разработка - Системная интеграция - Внешние источники данных

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

Предыстория

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

Возникла идея интегрироваться с каким-нибудь мессенджером, например, WhatsApp, Viber или Telegram. Хотели Skype, но он в последнее время не очень хорошо работает, особенно на мобильных устройствах. Выбрали Telegram, потому что это наиболее защищенный мессенджер, к тому же его тогда как раз хотели заблокировать – это стало дополнительной рекламой.

Все отнеслись скептически, но решили попробовать. Посмотрели статьи на Инфостарте, поняли, что это несложно. Тем более, у Telegram открытое API и все достаточно быстро работает. Попробовали, и это оказалось удобным:

  • Первым делом, мы сделали согласование заявлений на отгрузку – при проведении документа реализации руководителю отдела отправлялось сообщение с Excel-файлом, где можно было посмотреть, какие товары отгружаются сейчас со склада.
  • С еще одним руководителем мы сделали согласование платежей. Он, сидя на совещании, мог видеть в мессенджере уведомление о необходимом платеже, и, если все нормально, нажимать кнопку «Согласовано». Это оказалось действительно очень удобным, согласование проходило быстро и оперативно. По крайней мере, работало лучше, чем через почту.
  • Затем директор вошел во вкус. Мы создали ему список специальных команд, которые он мог отправить боту в Telegram, чтобы получить оперативную информацию о состоянии расчетного счета, о наличии дебиторской задолженности и т.д. Получился практически «Монитор руководителя», но через бот. Это тоже оказалось интересным решением, и нашему клиенту понравилось.

Создание бота

 

Теперь я расскажу, как это работает и как это устроено внутри.

  • Сначала нужно зарегистрировать бота. Для этого находим в Telegram канал BotFather и пишем ему команду «/newbot».
  • Теперь нужно придумать ему название – я назову своего бота test_infostart2017_bot.
  • После этого необходимо придумать его имя, которое заканчивается на «bot» – имя нашего бота будет infostart2017_bot.
  • Сейчас BotFather проверит, есть ли уже такие зарегистрированные боты в системе, и выдаст нам токен.

Имя и название бота нам больше не пригодятся, нужен будет только токен. Его никому нельзя сообщать, потому если кто-то его узнает, он сможет пользоваться вашим ботом и делать с ним все, что угодно. Эту информацию необходимо сохранить.

 

 

Чтобы начать работать с ботом, нажимаем на гиперссылку, которая была сформирована при создании, и попадаем в канал нашего бота.

 

Конфигурация TelegramBot

Теперь я расскажу, как это сделано с точки зрения конфигурирования в 1С. Я сделал конфигурацию, которую потом выложу.

В конфигурации есть:

  • Один общий модуль Telegram_Сервер – в нем 500-1000 строк, не больше.
  • Три регистра сведений:
    • Telegram_ИсторияСообщений;
    • Telegram_Пользователи;
    • Telegram_Настройки.

 

В регистре сведений Telegram_ИсторияСообщений хранится история входящих и исходящих сообщений.

  • Здесь у нас три измерения:
    • ID_сообщения;
    • ВидСообщения – об этом измерении я расскажу чуть подробнее позже;
    • И Пользователь – это измерение нужно, чтобы видеть, кто общается с ботом.
  • И есть два ресурса:
    • Команда;
    • И Сообщение.

Ресурс «Команда» имеет тип Справочник.Telegram_КомандыСистемы. В этом справочнике хранятся команды, которые нам пишут пользователи. Для того чтобы бот понимал, на какие вопросы как отвечать, мы здесь создадим список команд – список вопросов, которые можно ему задать, и соответствующий этим командам список ответов.

 

 

В справочнике Telegram_КомандыСистемы есть реквизиты:

  • Описание;
  • ТипКоманды – это перечисление. Здесь может быть либо отправка файла, либо просто сообщение;
  • КодОбработки – этот реквизит нужен для того, чтобы можно было добавлять команды не через конфигуратор, а сразу написать какие-то ответы в режиме «1С:Предприятие», чтобы постоянно не обновлять систему.

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

 

 

Еще у нас есть регистр Telegram_Пользователи, где мы храним информацию о соответствии пользователя Telegram и пользователя нашей системы.

  • Здесь у нас два измерения:
    • ИмяПользователяТелеграм;
    • ID_Пользователя.
  • И один ресурс «Пользователь», где хранится ссылка на элемент справочника «Пользователи».

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

Также есть регистр Telegram_Настройки.

  • Здесь у нас два измерения:
    • ИмяБота;
    • API.
  • И один ресурс token – это токен, по которому у нас будут идти сообщения.

 

В регистре сведений Telegram_Настройки мы записываем:

  • Имя бота – сюда можно написать любое имя;
  • Api – это всегда api.telegram.org;
  • И Token – тот токен, который был назначен нам при регистрации.

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

 

 

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

 

 

Посмотрим, что происходит при этом в коде. Как только срабатывает обработка ожидания, запускается процедура ПрочитатьСообщенияПользователя().

Сначала устанавливается HTTPСоединение. Строчки подключения стандартные для всех API:

  • В переменную Источник мы прописываем токен бота и команду, которую нужно передать в Telegram. Для получения сообщений за последние 24 часа используется команда /getUpdates;
  • HTTPСоединение открывается через 443-й порт;
  • В заголовке HTTPЗапроса прописываем, что будет передаваться структура JSON.

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

 

 

Сначала мы попадаем в процедуру ДесериализоватьJSON – это стандартная процедура преобразования нашей строки JSON в структуру данных.

 

 

Структура входящего сообщения изнутри выглядит следующим образом.

  • Первое поле ok – это значение, куда записывается результат вызова – правильно или неправильно прошло сообщение.
  • И второе поле result – это массив сообщений за 24 часа, который вернул нам бот. В этом массиве можно увидеть, что четыре человека нам уже что-то написали. Каждый элемент массива – это структура, состоящая из полей:
    • update_id – это уникальный код сообщения, который нам прислали;
    • message – это непосредственно само сообщение.

 

Открываю любое сообщение из массива.

 

 

Здесь тоже вложенная структура – можно увидеть, от кого пришло сообщение (поле from), можно посмотреть текст сообщения (поле text), можно посмотреть сам чат (поле chat).

 

 

При просмотре структуры from видно, от кого пришло сообщение (first_name) и видно ID пользователя.

 

 

То же самое мы видим при просмотре структуры chat.

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

 

 

Итак, бот вернул массив сообщений (у нас их четыре). Теперь я поочередно разбираю этот результат:

  • Сначала в переменную СообщениеID я сохраняю ID конкретного сообщения для того, чтобы с ним дальше работать.
  • Далее у нас идет проверка ПроверитьНаличиеСообщенияПоID. Дело в том, что после каждого запроса к серверу Telegram в результат попадают все сообщения за 24 часа. И мы должны где-то хранить информацию о том, какие сообщения мы уже обработали, а какие нет. Для этого у нас есть регистр сведений Telegram_ИсторияСообщений, где мы храним всю историю. Здесь я проверяю, было ли уже обработано это сообщение от бота или нет.
  • Далее у нас производится вызов функции ВернутьКомандуTelegram, где мы принимаем команду (сообщение, которое нам прислали) и проверяем, есть ли у нас эта команда в справочнике Telegram_КомандыСистемы. Если описание не вернулось, мы должны ответить, что не знаем такой команды.
  • Далее в процедуре ЗаписатьИсториюСообщений мы записываем в регистр сведений Telegram_ИсторияСообщений информацию о том, что это сообщение было обработано, после этого оно становится старым.
  • И, наконец, в процедуре ОбработатьОтветПользователя вызываем процедуру обработки ответа.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Теперь по командам. У нас есть справочник с историей сообщений. Здесь хранится информация обо всех сообщениях – и входящих, и исходящих.

 

 

На данный момент всем всегда приходит один ответ: «Извините, я такого не знаю», потому что никаких команд мы в справочник «Команды системы» еще не вводили.

 

 

Заведем новую команду в справочник «Команды системы».

  • В качестве типа команды выбираем «Сообщение».
  • В поле «Наименование» напишем то, что могут написать боту пользователи, например, «Привет».
  • Поле «Описание» заполняем для справки.
  • И в поле «Код обработки» заносим простые команды, которые будут выполнены из кода через оператор «Выполнить()». В данном случае, я напишу:
    ОтветСистемы = "Привет, дружище. Как дела?".

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Посмотрим, как реализована обработка ответа пользователя.

  • Если в качестве команды попадает известная команда – мы ее обрабатываем.
  • А если мы команду не знаем, то отвечаем «Извините, я такого не знаю».
  • И дальше мы отдаем ответ пользователю.
    • Если тип команды – Файл, то производится отправка файла пользователю.
    • А если тип команды – Сообщение, то мы берем стандартную структуру HTTPСоединение и для этого соединения создаем HTTPЗапрос, куда передаем команду /sendMessage с параметром chat_id, в который записываем значение переменной СтруктураСообщения.chat.id. В результате сообщение благополучно отправляется именно тому пользователю, который нам написал.

 

 

Сейчас проверю, будет ли теперь работать команда «Привет».

 

 

Вот, пожалуйста, работает. Вы можете любого человека посадить, он вам такие простые команды напрограммирует.

 

 

Теперь я расскажу, как можно в отправляемом сообщении реализовать кнопки. Я у себя в конфигурации реализовал две кнопки, которые реагируют на команду «Вечером все идем в кино!!!». В обработке «Telegram обработка отладки» напишем сообщение «Вечером все идем в кино!!!» и нажимаем на кнопку «Отправить сообщение пользователям».

 

 

Теперь мне приходит сообщение с кнопками «Согласовать» и «Не согласовать».

 

 

Код такой:

  • Мы добавляем простейшие кнопки в массив, вставляем их в структуру и записываем в JSON.
  • Дальше отправляем стандартное сообщение – оно всегда отправляется одинаково, независимо от того, с кнопками вы его отправляете, или без. Просто в конце добавляете reply_markup или ваши кнопки, которые вы перечисляете – их может быть две или три, сколько вам удобно.
  • И, соответственно, когда пользователь отвечает, вы этот ответ обрабатываете.

Кода здесь вообще практически нет. Все эти сообщения выводятся стандартными командами – только то, что вы внутри накрутите.

 

 

Добавляю в справочник «Команды системы» еще одну команду – \help. В ней мы просто запросом пробегаемся по справочнику наших команд и выводим название команды и ее описание.

 

 

Теперь, когда я пишу боту команду \help, я получаю ответ – все команды и их описание.

 

 

Еще одна команда – \report. Она присылает нам отчет со всеми сообщениями пользователей, их ID и т д. Соответственно, если вы куда-то это встроите, то сможете отправлять любой отчет, например, оборотно-сальдовую ведомость, отчет о дебиторской задолженности и т.д. В этой команде мы:

  • Создаем новый табличный документ;
  • Обращаемся к отчету в системе, вызываем его экспортную процедуру СкомпоноватьРезультатТабДок, которая компонует результат в табличный документ;
  • Создаем временный файл с расширением xlsx;
  • Записываем табличный документ в этот временный файл.

 

 

Теперь по команде \report мне приходит отчет по истории сообщений.

В конфигураторе это все обрабатывается следующим образом.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Этот код я взял из одной хорошей статьи с Инфостарта.

Здесь мы прописываем заголовки, текст отправки, имя файла.

 

 

И в конце вызываем команду \sendDocument.

У Telegram открытый API, можно с ним разобраться. Конечно, когда постоянно работаешь в 1С – это сложно, но можно день-два посидеть, потестировать, и становится все понятно.

Система более-менее рабочая. Я постарался сделать поменьше объектов метаданных: два справочника, три регистра. Справочник «Пользователи» я не стал вытаскивать из «Библиотеки стандартных подсистем», потому что вместе с ним там идет огромное количество связанных объектов. Но если вы его объедините, он нормально объединится.

 

Вопросы

Как так получилось, что вы начали пользоваться Telegram?

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

 

Целевая аудитория – какое количество человек?

100 человек.

 

А аутентификацию как организовали? Зная наименование бота, к нему можно подключиться. Как вы это отсекали?

У бота в настройках можно настроить приватность. Соответственно, настроить вход по паролю и т.д. И на стороне 1С можно реализовать отключение обработки сообщений для неизвестных системе пользователей. Здесь есть регистр Telegram Пользователи. И те, кто боту писал, сюда автоматически попали. Вот он, ID у каждого пользователя. Связка с пользователем системы проставляется вручную. Мы сделали это соответствие через регистр, чтобы не мучиться, но можно привязаться к контактной информации. Например, вы можете в контактную информацию добавить поле ID_Telegram и прописать туда ID пользователя. Этот ID можно узнать по входящему сообщению.

 

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

Поле для творчества очень большое. API тоже очень большое, можно много чего «накопать». В зависимости от задачи и того, что вам требуется. Мы сделали так – нас устраивало.

 

А как реализовать многоуровневое меню? Когда мы выбираем какую-то команду, бот на нее задает уточняющий вопрос и т.д. Такое возможно? Вопрос в том – как при выборе окончательной команды понять, что изначально была выбрана команда такая-то?

У нас же есть регистр, где записывается вся история сообщений – тот отчет, который вам приходил. В нем видно, кто какие сообщения отправлял и что ему бот в ответ написал. Есть входящие и исходящие сообщения. Соответственно, вы можете через этот регистр анализировать, какое было ближайшие сообщение, и была ли по этому пользователю вложенность? Здесь тоже есть поле для творчества, с регистрами в 1С все умеют работать, это несложно.

 

А можно ли добавлять дополнительные ключи – например, чтобы получить отчет по какому-то конкретному контрагенту? Как будет выглядеть команда – report и наименование контрагента?

Команду необязательно писать через слэш – вы ее можете определить, как вам удобно. Например, вы задаете команду ДебиторскаяЗадолженность, потом пробел и ставите какой-то определенный спецсимвол (например, @), после которого пишете название контрагента. Когда у вас эта команда попадает в 1С, там вы уже парсите, что к чему относится и, соответственно, передаете уже эти параметры в отчет.

 

А как вы решали проблему с возможным флудом сообщений от пользователя? Насколько я понял, у вас все пользователи бота – это ваши сотрудники. А были ли какие-то возможности у бота, которые могли использовать сторонние неподконтрольные люди – контрагенты, например или еще кто-то. У нас сейчас основные пользователи нашего бота – это студенты. Они нам неподконтрольные. Мы не можем дисциплинарно наказать человека за то, что он нам пришлет 5000 сообщений.

По chat.id можно отключить обработку сообщений целиком.

 

А вообще Telegram не банит, когда слишком часто к нему обращаешься?

Нас ни разу не банили.

 

А есть ли какие-нибудь ограничения его использования?

Единственное ограничение, которое есть – это отправка исходящих сообщений. Там, по-моему, допускаются пики до 30 сообщений в секунду. Это – основное узкое место.

 

Еще вопрос по кнопкам – в callback_data есть жесткое ограничение в 64 символа. В этой конфигурации реакция на кнопки реализована через ответ на данные в callback_data или в базе данных записывается еще что-то, что используется при обработке callback?

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

 

А почему вы выбрали Telegram? С WhatsApp вы интеграцию не рассматривали?

С WhatsApp мы не работали. Там нет открытого API. Насколько я знаю, WhatsApp собираются сделать корпоративную версию и там уже давать API за деньги. В Viber есть открытое API, но в Viber, насколько я знаю, нет кнопок. К тому же Viber еще и не все файлы поддерживает. По крайней мере, раньше так было – какие-то файлы отправляешь, он пишет – я этот формат не знаю. А в Telegram открытое API, можно использовать кнопки и можно свободно обмениваться теми же самыми Excel-евскими документами.

 

А можно ли реализовать обращения к API не через обработчик ожидания?

Мы это делали регламентным заданием.

 

Это понятно, но стучаться постоянно все равно неохота.

Можно заставить отправлять Telegram push-уведомления – высунуть наружу HTTP-сервис, который будет получать сообщения. У Telegram есть такая возможность – там можно создать подписку и указать типы сообщений, которые будут приходить по этой точке. Но здесь есть ограничение – нужно «высунуть наружу» HTTP-сервис. Это вообще отличная идея, когда из 1С ничего в Telegram не стучится, а все сообщения разбирает сам IIS (или Apache). Потому что у нас была такая проблема – создавалась дополнительная нагрузка на 1С, потому что она должна была одновременно обрабатывать эти сообщения. Тут нужно поступать в зависимости от того, для чего вам нужен этот бот. Если вы хотите, чтобы у вас постоянно было 1000 пользователей, и они массово писали, я думаю, что через 1С это будет сделать сложно. Можно, но сложно. Думаю, что тогда нужно будет запускать отдельную базу 1С, чтобы она работала только с Telegram. А если вы хотите запустить просто информирование внутри компании, то таких возможностей вам хватит, достаточно поставить время для запросов – одну-две минуты.

 

****************

Данная статья написана по итогам доклада, прочитанного на конференции INFOSTART EVENT 2017 COMMUNITY. Больше статей можно прочитать здесь.

В 2020 году приглашаем всех принять участие в 7 региональных митапах, а также юбилейной INFOSTART EVENT 2020 в Москве.

Выбрать мероприятие.

Скачать файлы

Наименование Файл Версия Размер
cf файл с конфигурацией

.cf 29,45Kb
687
.cf 29,45Kb 687 Скачать бесплатно

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. PLAstic 269 20.07.18 11:31 Сейчас в теме
Я подробно описал свои впечатления в комментариях к видео. Удивительно, что рупор отрасли, который должен нести просвещение, выкладывает такие материалы в общий доступ.
2. support 4530 20.07.18 12:34 Сейчас в теме
(1) Так что ж вы к нам не приехали со своим докладом? На новую конференцию тоже можно еще успеть https://event.infostart.ru/2018/#invite_speaker
Мы не рупор отрасли, а сообщество. Как раз благодаря вам мы только и можем понять. Подождем аргументов с другой стороны.
5. Infactum 294 20.07.18 15:16 Сейчас в теме
(1) Поддержу.
Сделано довольно много корректных замечаний. При этом они, фактически, связаны с тем, что автор оригинального доклада не смог внимательно изучить документацию по предельному простому API. Ну серьезно, бота для телеграма, особенно на волне хайпа, сделал каждый "школьник". Потому что удобно и одновременно очень легко.

(2) А не приехал он к вам, имхо, потому что не считает подобное решение достойным демонстрации на всероссийской конференции.
Вы организуете конференции уже не первый год. При этом уровень технических докладов как был низким, так и остается. В рамках голосования регулярно побеждают темы, которые просто выбрали из-за того, что в них фигурирует название технологии/продукта, о котором все говорят, + 1С. А по факту там примеры уровня hello world . Эта статья тому пример.
Вам необходимо намного более серьезней подходить к изучению предоставленных материалов, прежде чем выпускать докладчиков на сцену.
Gureev; jaroslav.h; stako8; CyberCerber; nomadon; PLAstic; +6 Ответить
7. PLAstic 269 20.07.18 15:49 Сейчас в теме
(5) Всё так. Я не считаю эту тему достойной освещения перед широким сообществом, учитывая, что на самОм же ИСе представлена пара исчерпывающих статей.
11. support 4530 20.07.18 21:05 Сейчас в теме
(7) На самом ИС мы тоже принимаем публикации от всех, кто захочет. Голосование за публикацию показывает, насколько она оказалась полезной для сообщества. Как видите, это работает.
10. support 4530 20.07.18 21:01 Сейчас в теме
(5) Мы пускаем всех, кто проходит народное голосование среди участников конференции. Качество каждого доклада и харизму каждого спикера никто не гарантирует. Выступающий сам принимает решение, насколько качественно ему подготовиться. У нас многие выступают можно сказать впервые на сцене. Но у каждого есть самоконтроль и самоцензура. Если спикер хочет сдалать обзор какой-то технологии, то он ее и делает. Поэтому мы приветствуем тех, кто уже публиковался на портале. Но именно таким образом мы можем найти новых «звёзд».

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

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

Данный же доклад не вошёл в основную программу, Вячеслав приехал за свой счёт и рассказал его в формате небольшого обзора для интересующихся этой темой.
fomaOp; arti4k; +2 Ответить
3. beefit 20.07.18 13:01 Сейчас в теме
Скриншоты кода это крутяк
user649060; CyberCerber; nomadon; VachKirp; klinval; +5 Ответить
8. nomadon 404 20.07.18 17:24 Сейчас в теме
(3) это что бы не скопипастили бесплатно, скрин отладчика с пустыми полями и кнопками - что бы разработчик не переключался, а даже при чтении потихоньку отлаживал
4. dmurk 359 20.07.18 14:53 Сейчас в теме
В прошлом году опробовал функцию, когда Telegram стучится обратно на HTTP сервис. Всё бы хорошо, но есть два "но":
1. Обязательно должен использоваться несамоподписанный SSL сертификат с отпечатком SHA256
2. Объект платформы HTTPЗапрос не в состоянии сформировать корректное вложение SSL сертификата при доступе к WebAPI Telegram, приходилось использовать Fiddler, для того чтобы отдать Telegram сертификат, при помощи которого начнется поступление входящих запросов
6. PLAstic 269 20.07.18 15:33 Сейчас в теме
(4) Я каждые три месяца выписываю бесплатный сертификат Comodo. Не имею проблем.
17. dmurk 359 23.07.18 10:32 Сейчас в теме
(6) Да, я тоже решил этот вопрос ))
9. nomadon 404 20.07.18 17:31 Сейчас в теме
Можно заставить отправлять Telegram push-уведомления

что-то пошло не так со словом push
12. KonstB 177 21.07.18 23:37 Сейчас в теме
(0) как Вы обошли блокировку телеграма в РФ?
Телеграм на телефоне работает. Адрес https://api.telegram.org/ без прокси молчит.
13. Infactum 294 22.07.18 09:57 Сейчас в теме
(12) Когда проходил IS event ничего еще не блокировалось.
Ну а сейчас какие проблемы через прокси зайти то?
14. KonstB 177 22.07.18 21:54 Сейчас в теме
(13)
Ну а сейчас какие проблемы через прокси зайти то?

Не увидел у Вас на скриншотах прокси. Подумал, возможно Вы как-то по другому обошли блокировку
15. Infactum 294 22.07.18 21:58 Сейчас в теме
(14) Я не автор. Но все варианты крутятся вокруг построения маршрута без блокировок. Не хотите прокси - настройте маршрутизацию на уровне шлюза / роутера.
16. PLAstic 269 23.07.18 10:02 Сейчас в теме
(12)

1. Как ни странно, но многие бизнес-провайдеры не блокируют трафик.
2. Для получения апдейтов по getUpdates достаточно впн-соединения.

Или другие способы:
1. Вывод сервера с ботами из РФ.
2. Проксирование трафика заграничным сервером.
18. PLAstic 269 24.07.18 12:32 Сейчас в теме
(16) Как показывает практика, проксирование - вопрос очень сложный, т.к. сервера телеги пытаются установить TLS сессию именно с прокси и надо как-то мутить прозрачное проксирование TLS.
19. Gureev 25.07.18 15:23 Сейчас в теме
Телега удобный мессенджер, жаль что ненадежный.
20. stako8 27.07.18 13:08 Сейчас в теме
(19) Чем это ненадежный? 2 раза в год ложится на несколько часов? или тем что роскомнувыпоняли его пытается блокировать, но уже везде встроен автообход и только через 1С его надо "ручками" делать...непонятно, объясните свою точку зрения!
21. Gureev 27.07.18 13:57 Сейчас в теме
(20) тем что не способен оперативно адаптироваться к законодательству стран в которых работает.

тем самым подвергает сервисы, реализованные на его базы, риску быть отключенными.
SergeyRomanov; +1 Ответить
22. stako8 27.07.18 14:23 Сейчас в теме
(21) т.е. надо поддерживать страны где все законы противоречят друг другу и по одному ты не прав, а по второму законы ты не прав вдвойне - увольте!
23. Gureev 27.07.18 15:13 Сейчас в теме
(22)
т.е. надо поддерживать страны где все законы противоречят друг другу и по одному ты не прав, а по второму законы ты не прав вдвойне - увольте!

не очень понял этот поток сознания.

Но повторю, лично я не вижу причин, почему почти все крупные компании мира могут соблюдать российские законы, а телега не может.
Видимо просто не хочет. Эта и есть та самая ненадежность.
SergeyRomanov; +1 Ответить
24. PLAstic 269 30.07.18 13:02 Сейчас в теме
(23) Для каждого пользователя свои приоритеты. Кому-то нравится позиция телеги не давать читать сообщения в приватных чатах. И для корпоративного сектора, имхо, это важно. А кому-то важнее распространённость и они пользуются, например, ватсапом. Но тут напрямую встаёт вопрос автоматизации общения с мессенжером. Кто ещё у нас поддерживает схожие возможности ботов?
25. Gureev 30.07.18 16:39 Сейчас в теме
(24) Корпоративный сектор общается в действительно защищенных мессенджерах.
Кто-то из бизнес сообщества уже высказывался, о том, что неопределенный правовой статус телеги не позволяет ее рассматривать всерьез.

Я бы хотел, чтоб у Дурова купили телегу, и вывели ее на цивилизованные рельсы.
26. PLAstic 269 30.07.18 18:27 Сейчас в теме
(25) Прям в действительно защищённых? Тогда такому сектору глубоко по барабану, у кого он установлен и они, совершив свой выбор, навязывают его определённому кругу. Кругу кого? Конечно, сотрудников, и конечно, для внутрикорпоративного общения.
А вот когда нужно общение с внешними контрагентами - клиентами или поставщиками, тогда выбирают наиболее массовые и функциональные мессенжеры, потому что такие установлены у многих и могут многое. Возвращаемся к моему предыдущему сообщению - у каждого свои приоритеты.
27. Gureev 31.07.18 12:00 Сейчас в теме
(26)
А вот когда нужно общение с внешними контрагентами

Когда это электронную почту мессенджерами заменили?)
28. PLAstic 269 31.07.18 12:39 Сейчас в теме
(27) Да много когда. Она подлежит замене везде, где требуется оперативное общение, либо общение, превышающее возможности почты. Например, передача локации, передача аудио-сообщений.
У меня есть боевые клиенты, которые ушли от почты. Конечно, это не традиционная торговля товарами.
34. 028 21.05.20 11:34 Сейчас в теме
после того как в телеграмме нажал отправить свой номер появляется такая ошибка
{ОбщийМодуль.Telegram_Сервер.Модуль(24)}: Поле объекта не обнаружено (text)
Команда = ВернутьКомандуTelegram(СтрокаМассива.message.text);
35. 028 21.05.20 11:46 Сейчас в теме
после того как в телеграмме нажал отправить свой номер появляется такая ошибка
{ОбщийМодуль.Telegram_Сервер.Модуль(24)}: Поле объекта не обнаружено (text)
Команда = ВернутьКомандуTelegram(СтрокаМассива.message.text);
36. 028 24.05.20 09:17 Сейчас в теме
44. Lyumi3004 23.11.20 13:45 Сейчас в теме
(36)
КАААК ? Поле объекта не обнаружено (text) Как решил ? Ни с того ни с сего появилось, не пойму где проблема.
29. lishniy 121 19.04.19 13:22 Сейчас в теме
Спасибо за ваш труд. Конфигурация хоть и не универсальная, но дает довольной быстрый старт.
Единственное не понял зачем вы все время получаете все сообщения? У себя пока сделал так
Процедура ПрочитатьСообщенияПользователя() Экспорт
	ПоследнийИД = Константы.TelegramOffset.Получить();
	СтруктураНастроек = ПолучитьНастройкиTelegram();
	
	//Установим соединение
	Источник = "bot" + СтруктураНастроек.token + "/getUpdates" + ?(ПоследнийИД = 0, "", "?offset=" + Формат(ПоследнийИД, "ЧГ="));
	...
	
	Если HTTPОтвет.КодСостояния = 200 Тогда
			Данные = ДесериализоватьJSON(HTTPОтвет.ПолучитьТелоКакСтроку());
			Если Данные.ok И Данные.result.Количество()>0 Тогда
				СообщениеID = 0; 
				Для каждого СтрокаМассива Из Данные.result  Цикл
					
					UpdateID = СтрокаМассива.update_id;
					
					...
				КонецЦикла;
				Константы.TelegramOffset.Установить(UpdateID+1);	
			КонецЕсли; 		
	КонецЕсли;
КонецПроцедуры
Показать

Таким образом, я получаю только новые сообщения
yuli; mnemchinov; arti4k; +3 Ответить
30. yuli 5 01.07.19 10:59 Сейчас в теме
Добрый день! При попытке получения сообщения от пользователя возникает ошибка
Прикрепленные файлы:
39. user945750 13.06.20 23:19 Сейчас в теме
31. yuli 5 01.07.19 11:01 Сейчас в теме
Ключ = СтруктураНастроек.token; 
    Попытка
        
        Сервер = СтруктураНастроек.api;
        
        Если ИспользоватьПрокси Тогда
            HTTPСоединение = Новый HTTPСоединение(Сервер,,,,ИнтернетПрокси,,Новый ЗащищенноеСоединениеOpenSSL);
        Иначе
        
            
            HTTPСоединение  =  Новый HTTPСоединение(СтруктураНастроек.api,443,,,,,Новый ЗащищенноеСоединениеOpenSSL());    
            
            
                КонецЕсли;    
        
            
    Исключение
        
    КонецПопытки; 
     
        
        
    
//Установим соединение


    Источник = "bot" + СтруктураНастроек.token + "/getUpdates";
    HTTPЗапрос = Новый HTTPЗапрос(Источник);
    
    HTTPЗапрос.Заголовки.Вставить("Content-type", "application/json");
            
    HTTPОтвет = HTTPСоединение.Получить(HTTPЗапрос); // - вот здесь возникает ошибка
Показать
32. guerro 27.11.19 16:14 Сейчас в теме
33. rpashkovsky 18 14.01.20 17:45 Сейчас в теме
Подскажите, пожалуйста, каким образом обработать событие в 1с нажатия кнопок в телеграмм при согласовании?
38. 028 24.05.20 09:26 Сейчас в теме
(33)смотри на свойство callback_query там есть callback_data
42. AlexeyPapanov 410 24.10.20 02:55 Сейчас в теме
(38)
(33)смотри на свойство callback_query там есть callback_data

Коллеги, что-то подзатупил. Не понимаю в каком месте кода мне обработать ответ (нажатие кнопки).
43. AlexeyPapanov 410 24.10.20 03:19 Сейчас в теме
(42) и сам себе отвечу:
Код
Процедура ПрочитатьСообщенияПользователя() Экспорт
   
/// ...
   
   Если HTTPОтвет.КодСостояния = 200 Тогда
         Данные = ДесериализоватьJSON(HTTPОтвет.ПолучитьТелоКакСтроку());
         Если Данные.ok И Данные.result.Количество()>0 Тогда
            //Запишем историю сообщений
             
            Для каждого СтрокаМассива Из Данные.result  Цикл
Показать полностью


Вот в переменной СтрокаМассива и будет свойство callback_query.
37. 028 24.05.20 09:18 Сейчас в теме
Добрый день как в1С сделать чтобы менять расположение кнопок? использую inline_keyboard
40. WellMaster 104 26.08.20 11:37 Сейчас в теме
Спасибо за конфу, получилось быстро войти в тему.
Кроме того, в этой конфигурации отправка идет методом POST, в другой конфе, где тоже есть интеграция с Телеграм, используется метод GET, который у меня не заработал.
41. user775441 02.09.20 14:48 Сейчас в теме
Добрый день! Система выдает ошибку "{"ok":false,"error_code":409,"description":"Conflict: can't use getUpdates method while webhook is active; use deleteWebhook to delete the webhook first"}" - как это исправить?
Оставьте свое сообщение

См. также

Практический пример настройки обмена с казначейством в БГУ Промо

Внешние источники данных v8 БГУ Россия Госбюджет Абонемент ($m)

Материалов для бюджетников, всегда не хватает, особенно с практическими примерами. Попробую описать процесс настройки с нуля обмена с ОФК/УФК на примере выгрузки документа «Заявки на кассовый расход» из БГУ и импорта в СЭД.

1 стартмани

13.04.2012    67779    Vestr    17    

Cбор и анализ ошибок при помощи Sentry, или как упростить жизнь себе и пользователям

Практика программирования Интеграция v8 Абонемент ($m)

Цель данной статьи - сделать процесс сбора и анализа ошибок, происходящих в базе, максимально простым, быстрым и удобным, собирать статистику по ошибкам, местам их возникновения и частоте их появления, а также в деталях разобрать все тонкости по интеграции 1С с Sentry.

1 стартмани

09.10.2020    3860    hexhoc    12    

Выбираем российского провайдера для интеграции с WhatsApp

WEB Интеграция v8 Россия Абонемент ($m)

Собственно, почему выбираем именно провайдера и почему российского? WhatsApp, создавая свое API, преследовал две цели - делать деньги и минимизировать спам. И чтобы убить сразу двух зайцев, было принято решение предлагать API исключительно через партнеров. Ну а вопрос по поводу российского партнера скорее уже риторический. И не только из-за курса рубля, но и из-за таланта работать с российскими телефонными номерами, коим одарены далеко не все провайдеры. Между тем статья не претендует на всесторонний анализ всех возможностей всех провайдеров. Мы копнем лишь верхушку айсберга этого немаленького рынка.

1 стартмани

19.05.2020    5314    ripreal1    5    

1С+Firebase. Оперативное отображение информации

Интеграция Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Появилась задача по отображению информации из базы в "режиме реального времени" с возможностью масштабирования количества подключенных клиентов (неплохо бы уметь подключаться с мобильных устройств), плавающей нагрузкой и минимальными затратами на разработку без изобретения сложных велосипедов. В уме довольно быстро всплыло "Firebase". Далее небольшой опыт реализации взаимодействия с Firestore для раскрашивания объектов карты.

1 стартмани

06.04.2020    2678    oyti    0    

На хайпе: интегрируем 1С с сервисом видеоконференций Zoom

Интеграция v8 1cv8.cf Абонемент ($m)

По причине коронавируса всем резко понадобились видеоконференции, а Зум (zoom.us) - одна из самых популярных платформ для этого. Когда пользователей и трансляций в зуме много, возникает необходимость в автоматизации. Рассматривается интеграция 1С с Zoom через API - от регистрации в сервисе до создания конференции из 1С.

1 стартмани

04.04.2020    7142    muzipov    5    

Разбираемся с web-kit в 1С, на примере интеграции TinyMCE в управляемую форму в УТ 11.4. Допиливаем обмен с сайтом в УТ 11.4

Обмен данными 1С Интеграция Адаптация типовых решений v8 v8::УФ УТ11 Абонемент ($m)

Многие уже знают, что в релизе платформы 8.3.14.1565, браузер Internet Explorer был заменен на Web-Kit, это на самом деле большой шаг вперед, но я уверен, многим, как и мне, пока не совсем понятно, что к чему. Возник опыт использования web-kit в 1С, вызова JS из 1С и вызова 1С из JS. Давайте вместе попробуем понять, чем одно отличается от другого, и заодно сделаем, что-нибудь полезное. Да и наверняка многим придется переписывать свои подобные поделки после обновления на новую платформу, так что надеюсь мой опыт окажется полезным.

2 стартмани

08.12.2019    8845    Бэнни    25    

Вебхук. Путь Телеграма

Внешние источники данных Интеграция v8 Абонемент ($m)

Долгое (на самом деле нет) и нелегкое путешествие телеграма к неведомым (из за РКН) конфигурациям 1С. Памятка себе.

1 стартмани

03.10.2019    20059    platonov.e    26    

Описание формата внутреннего представления данных 1С в контексте обмена данными

Практика программирования Внешние источники данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Фирма 1С не рекомендует использовать внутреннее представление данных для любых целей, которые отличны от обмена с 1С:Предприятием 7.7. Но сама возможность заглянуть на "внутреннюю кухню" платформы с помощью функций ЗначениеВСтрокуВнутр(), ЗначениеВФайл(), ЗначениеИзСтрокиВнутр() и ЗначениеИзФайла(), дала возможность сообществу программистов 1С разработать новые приемы разработки и анализа. Так, именно на использовании внутреннего представления был построен алгоритм "быстрого массива", который позволяет практически мгновенно создать массив в памяти на основании строки с разделителями. С помощью разбора внутреннего представления можно "на лету" программным кодом выполнить анализ обычной формы и даже сделать редактор графической схемы. Во внутреннем формате сохраняют свои данные между сеансами различные популярные внешние обработки. А еще это возможность сделать быстрый обмен с внешними системами.

1 стартмани

06.09.2019    20330    Dementor    30    

Обмен большими данными между клиентом и сервером

Внешние источники данных v8 Абонемент ($m)

В статье рассматривается вопрос передачи больших объемов данных, превышающих теоретический лимит сеансовых данных (4Гб за вызов) (они же временное хранилище) как с клиента на сервер, так и в обратном направлении.

1 стартмани

27.08.2019    14391    logos    32    

АИТП. Простой, событийно-управляемый обмен данными

Внешние источники данных v8 1cv8.cf Абонемент ($m)

В статье, на примере обмена с ЗУП 3.1, демонстрируется механизм событийно-управляемого взаимодействия конфигурации АИТП с прикладными решениями на платформе 1С:Предприятие.

1 стартмани

04.07.2019    5074    blackhole321    0    

Интеграция 1С с Битрикс CRM через REST API

Внешние источники данных v8 1cv8.cf Абонемент ($m)

На фоне неутихающего обострения «бизнеса» по внедрению СРМ-систем остро встают вопросы обмена данными с уже существующими системами. В статье рассматривается выгрузка контактов, товаров и сделок из 1С в Битрикс CRM через REST API, приложена обработка для тестирования.

1 стартмани

28.06.2019    26165    muzipov    10    

Совместное использование 1С:Сервер взаимодействия и Документооборот 8 КОРП, редакция 2.1.13 - Уведомления для рабочего стола

Пользователю системы Работа с интерфейсом Интеграция Документооборот и делопроизводство Документооборот и делопроизводство v8 ДО УУ Абонемент ($m)

С версии ДО 2.1.13 в программу встроена подсистема Обсуждения. Данная подсистема позволяет производить уведомление пользователей без необходимости открытия программы.

1 стартмани

18.06.2019    14056    ilya.rudziak    10    

1C + Python + Django Rest Framework + Vue.js. Опыт несложной full-stack разработки

Практика программирования Внешние источники данных Обмен через XML WEB Разработка v8 1cv8.cf Абонемент ($m)

В этой статье мы рассмотрим путь и основные моменты создания небольшого вэб-сервиса, который мы называем "Онлайн Прайс-лист". Выгрузка из 1С, бэкенд, фронтенд, получение заказов в 1С.

1 стартмани

22.04.2019    35874    riposte    66    

Аутентификация на внешних сервисах посредством OAuth

Информационная безопасность Внешние источники данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Пример подключения к сервисам Google из 1С с помощью протокола OAuth и получения данных с внешнего сервиса.

1 стартмани

03.04.2019    22381    binx    126    

Телеграм + 1С + Вебхуки + Апач + Самоподписанный сертификат

Внешние источники данных v8 Абонемент ($m)

Много строк исписано про интеграцию Телеграма и 1С. Но нигде не увидел полной инструкции по установке и настройке вебхуков. Попробую её написать.

1 стартмани

26.02.2019    17558    alexlx    30    

Универсальное расширение 1С для Google Таблиц и Документов

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Эта статья для тех, кто использует G Suite и 1С. Готовое решение для выгрузки отчетов и печатных форм из баз 1С в Google Диск в формате Google Таблиц и Google Документов. Информация по его внедрению. Описание создания и настройки проекта в GCP.

1 стартмани

31.01.2019    17679    Maria18    34    

Применение средств MS SQL R service для 1С

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Некоторое время назад Microsoft добавила в MS SQL сервер службы машинного обучения, позволяющие выполнять программный код на языках программирования R и Python. В статье будет продемонстрирована общая схема и принцип того, как можно использовать данные службы в контексте разработки на 1С. 

1 стартмани

25.11.2018    14503    Robbi    14    

Способы оптимизации переносов данных

Перенос данных из 1C8 в 1C8 Интеграция v8 КД Абонемент ($m)

Хочу рассказать вам про способы оптимизации разработки правил обмена в программе «Конвертация данных» второй редакции. Казалось бы, про эту программу и разработку в ней правил конвертации уже сказано все, что можно. Появились уже более современные и быстрые технологии. Почему же все еще она? Дело в том, что «Конвертация данных» второй редакции все еще актуальна для огромного круга задач. Она имеет очень широкую функциональность и позволяет реализовывать сложные алгоритмы. Годы идут, а люди продолжают ей пользоваться и у них возникает много вопросов по этой программе. Возможно, в будущем вы тоже будете заниматься такими проектами и столкнетесь с задачами, похожими на те, про которые я собираюсь рассказать. Мне хочется вам в этом помочь.

1 стартмани

02.08.2018    17969    primat    7    

Связка 1С и Telegram. Отправка стикеров

Практика программирования Внешние источники данных v8 v8::УФ 1cv8.cf Абонемент ($m)

В качестве факультатива сейчас изучаю возможности связки 1С и мессенджера Telegram. И возник вопрос, как помимо сообщений, посылать в ответ на действия пользователя произвольный стикер? Решению этой мини задачи и посвящена данная статья.

1 стартмани

31.07.2018    12979    Skin123    4    

Опять про sFTP и вообще

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Памятка для разработчика по работе с FTP, FTPs и sFTP.

1 стартмани

23.05.2018    20292    leongl    24    

Использование регулярных выражений (RegExp) в Linux

Сервисные утилиты Администрирование данных 1С Внешние источники данных v8 Абонемент ($m)

Описывается способ использования регулярных выражений (RegExp) в Linux с использованием тех же компонентов, что и в Windows (COM-объекты VBScript.RegExp).

1 стартмани

20.04.2018    8831    vsbronnikov    12    

Практикум по созданию обменов данными через протокол oData «за полдня»

Практика программирования Внешние источники данных v8 1cv8.cf Россия Абонемент ($m)

Про oData и 1С было довольно много написано, однако же описания работы и с чтением, и с записью данных через JSON я так и не встретил ни на этом ресурсе ни на других. Попробую раскрыть эту тему.

1 стартмани

20.03.2018    26839    timm00    64    

Практика доступа в базу 1С через протокол oData. Изменение данных

Практика программирования Внешние источники данных v8 1cv8.cf Абонемент ($m)

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

1 стартмани

30.12.2017    36726    Dementor    32    

Инструкция по настройке загрузки из ФСС электронных листков нетрудоспособности ЭЛН в документ 1С Начисление по больничному листу

Внешние источники данных Зарплата Зарплата v8 КА1 ЗУП2.5 УПП1 Россия БУ ФОМС, ПФ, ФСС Абонемент ($m)

Клиент (страхователь) работает в программе "1С Зарплата и управление персоналом ред.2.5" сдает отчетность через Контур или СБИС и не собирается подключать 1С-Отчетность, при этом хочет загружать электронные больничные в программу 1С Зарплата. Подобная ситуация может быть и для других конфигураций в которых есть документ "Начисление по больничному листу", например Комплексная автоматизация 1.1, Управление производственным предприятием 1.3.

1 стартмани

28.11.2017    166514    rusmil    126    

Google OAuth и мобильное приложение

Мобильная разработка Обмен данными 1С Внешние источники данных WEB v8 v8::Mobile 1cv8.cf Абонемент ($m)

Об аутентификации для работы с сервисами google из мобильного или настольного приложения

1 стартмани

29.08.2017    11690    stveans@gmail.com    3    

Опыт интеграции 1С с системой Меркурий (Часть 5)

Внешние источники данных Интеграция Оптовая торговля Оптовая торговля v8::ОУ 1cv8.cf Сельское хозяйство и рыболовство Транспорт, автопарки, такси Оптовая торговля, дистрибуция, логистика Пищевая промышленность Россия БУ УУ Абонемент ($m)

Описывается опыт внедрения в 1С системы работы с ветеринарно-сопроводительными документами Меркурий. Интеграция еще в процессе и приветствуется обмен опытом.

1 стартмани

10.07.2017    60596    axxell    33    

1С и MongoDB: дружба начинается с RESTHeart'а

Внешние источники данных v8 Абонемент ($m)

Краткое описание того, как подружить MongoDB и 1С: Предприятие используя один из предлагаемых на официальном сайте RESTFul сервисов - RESTHeart.

1 стартмани

03.07.2017    43700    Silenser    8    

Что такое HMAC и JWT и как это использовать в 1С

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Лёгкая статья про стандарты HMAC и JWT с небольшой теорией и исходным кодом.

1 стартмани

20.04.2017    22480    keypax    48    

Получение информации об экспортных свойствах и методах объектов 1С через COM.

Разработка внешних компонент Внешние источники данных v8 1cv8.cf Абонемент ($m)

Как из тела COM-объекта или внешней компоненты определить состав свойств и методов объектов 1С агрегатных типов? Все ответы здесь.

1 стартмани

03.09.2013    14416    gislink    5    

Синхронизация с сервером 1С во внешнем соединении

Внешние источники данных Универсальные функции v8 1cv8.cf Абонемент ($m)

Позволяет установить время удаленного SQL-сервера на компьютере при выполнении обмена через Внешнее соединение

1 стартмани

27.09.2011    13570    sml    6