|
Постоянное соединение из 1С по Socket | ☑ | ||
---|---|---|---|---|
0
Сниф
15.05.16
✎
11:31
|
Припоминаю все известные мне способы поддержки Socket-соединения из 1С. Кажется, все они подразумевают некоторую открытую в 1С форму.
Например: 1. В поле HTML (вариантов - куча) 2. В поле HTML - flash 3. В форме - COMОбъект MSWinsock.Winsock + ДобавитьОбработчик Вопрос: а можно ли (и как) со стороны 1С поддерживать постоянно открытое Socket соединение БЕЗ открытого приложения 1С? На ум приходят два варианта: с помощью vbs поддерживать жизнь v8.application, где в невидимой форме обработки будет создан COMОбъект MSWinsock.Winsock.. |
|||
1
Звездец
15.05.16
✎
11:38
|
(0) Если у тебя есть v8.application, значит есть и процесс 1с, видишь ты его или нет значения не имеет.
|
|||
2
Сниф
15.05.16
✎
11:41
|
(1) а я не пробовал - будет ли в невидимой форме работать ДобавитьОбработчик
|
|||
3
Звездец
15.05.16
✎
11:45
|
а причем тут видимость формы? посмотри как запускали процесс для обменов в 8.2 без показа окна
|
|||
4
Звездец
15.05.16
✎
11:48
|
(2) я если четно, пока не совсем понимаю что ты там собираешься изобрести, но не правильнее ли это будет делать на сервере? в рег задании например, зачем тебе постоянный коннект?
|
|||
5
Сниф
15.05.16
✎
12:03
|
(4) ну, протокол webSocket, ИМХО, может давать более гибкие возможности обмена, чем стандартные web-сервис или http-сервис. К тому же постоянное соединение по webSocket, ИМХО, жрет меньше трафика, чем каждые 10 секунд тыкаться http-запросами.
|
|||
6
Звездец
15.05.16
✎
12:06
|
(5) стоят ли эти байты таких сложностей? В любом случае такие вещи лучше делать на сервере, но там скорее всего не получится, так как поле html существует на клиенте. Может стоит задуматься о промежуточном звене, которое уже будет временами дергать 1с штатными средствами?
|
|||
7
Serginio1
15.05.16
✎
12:08
|
http://catalog.mista.ru/public/238584/
Здесь есть пример обмена по TCP/IP |
|||
8
Сниф
15.05.16
✎
12:11
|
(6) Вот пример задачки. Из внешней системы (ХЗ какой) в Бухгалтерию 3.0 должны перегружаться проводки. База у бухгалтера на ноуте - мало того, что динамический, еще и ХЗ от какого провайдера. Вот я и думаю о промежуточном звене. В голову идет Node.js и сокеты )
|
|||
9
Serginio1
15.05.16
✎
12:11
|
||||
10
Serginio1
15.05.16
✎
12:15
|
||||
11
Сниф
15.05.16
✎
12:16
|
(10) ну это ты запилюкал на C#, а я в этом не понимаю. У меня и так тема мутная, чтобы еще включить в основу твою разработку ))
|
|||
12
Звездец
15.05.16
✎
12:16
|
(8) так и создавать соединение из БП в ХЗ-куда. И проблема создания серверной части переносится в ту систему, и ип нужны там. Не самое лучшее решение - запуск сервисов на носимых устройствах
|
|||
13
Serginio1
15.05.16
✎
12:21
|
(11) Чем эта разработка отличается от MSWinsock.Winsock
Суть, в том, что компонента оборачивает любой .Net класс в COM. Тебе никакого C# не нужно. Нужно только знать методы и события Socket Такм даже готовый компонент есть, что тебе и знание о Socket не нужно. |
|||
14
Сниф
15.05.16
✎
12:26
|
(12) Нет, запуск сервера не на мобильном устройстве. Сервер реальный на Node.js(в целях изучения) на хостинге. И к нему приложения (в том числе и 1С или сайты и т.п.) могут подключаться по Socket и обмениваться данными. Чатиться.
|
|||
15
Serginio1
15.05.16
✎
12:27
|
Что касается 1C Messenger для отправки сообщений, файлов и обмена данными между пользователям
то там то там твои любимые webSocket есть клиенты по 1С, WPF, Андроид и HTML |
|||
16
H A D G E H O G s
15.05.16
✎
12:37
|
(14) Пусть сервер смотрит в инет в виде HTTPсервера. 1С пусть подключается через HTTPсоединение и делает put и get. В чем проблема?
|
|||
17
H A D G E H O G s
15.05.16
✎
12:38
|
(8) 1С говорит серверу
get myprovodka Сервер возвращает поток данных. |
|||
18
H A D G E H O G s
15.05.16
✎
12:39
|
Не нужно тут никаких ВК, непосвященный с ними пролюбится и махнет рукой и скажет "ну нахер"
|
|||
19
Звездец
15.05.16
✎
12:41
|
(14) без подробностей совершенно не понятно где ты видишь проблему, подымай сервис в учетной системе и из БП его дергай. Да и вообще зачем для обмена постоянное соединение, что там такого будет передаваться, что может потребоваться онлайн
|
|||
20
Сниф
15.05.16
✎
13:25
|
(19)
Ну, как альтернатива "жестким" соединениям: "Прими данные сейчас или мне писец" "Отдай или погибни!" "Умру, но не отдам!" "Ничего не отдам, так как умер" Более мягкие варианты работы сервера: "Отдам, когда смогу" "Пишите, если хотите" |
|||
21
Сниф
15.05.16
✎
13:30
|
(19) Микросервисы https://habrahabr.ru/post/249183/
|
|||
22
Сниф
15.05.16
✎
13:57
|
(17) >Сервер возвращает поток данных
Ну это обычный сервер. А я изобретаю "Умный сервер". Надо же на чем-то тренироваться, изучая технологию Node.js. (17) >1С говорит серверу Ну да, как-то так я пока и представляю концепцию "Умного сервера". Пример (придумал) предпринимателя, который пользуется 1С и оказывает монтажные услуги. Его потенциальные покупатели - пользователи Android, для которого предприниматель распространяет "Калькулятор услуг". У Предпринимателя нет еще собственного сервера. Он раз в день включает свой 1С и смотрит - нет ли заказов. А пользователи Android делали заказы утром и им пофигу, что сервер был оффлайн. А сервер проснулся вечером и все заказы он должен получить по запросу. |
|||
23
Звездец
15.05.16
✎
13:59
|
Для таких приложений можно поднять сервис на сайте, тем более для битрикса даже инструмент есть(22)
|
|||
24
Сниф
15.05.16
✎
14:00
|
В концепции "Умного сервера" все - клиенты. Если получателя нет онлайн, ему можно оставить сообщение "есть данные от id=12345, жду ответа".
|
|||
25
Сниф
15.05.16
✎
14:00
|
(23) Ну да, сервис собираюсь поднять. Но не на сайте, на VDS.
|
|||
26
Звездец
15.05.16
✎
14:01
|
По сути ты сейчас пытаешься создать Месседжер (24)
|
|||
27
Сниф
15.05.16
✎
14:09
|
(26) А что за Мессенджер?
По сути - вопрос только о взаимодействии из 1С с помощью Socket. С другими такими же приложениями. |
|||
28
Звездец
15.05.16
✎
14:10
|
Ну по сути ты сейчас описал то, как работаетлюбой менеджер, воцап Вибер или тому подобные(27)
|
|||
29
H A D G E H O G s
15.05.16
✎
14:15
|
(28) Тогда тебе нужна субд на сервере.
|
|||
30
Звездец
15.05.16
✎
14:19
|
Ну а ТЧ где сообщения хранить собирается пока их адресат не заберет(29) ?
|
|||
31
Звездец
15.05.16
✎
14:23
|
Тс *
|
|||
32
Сниф
15.05.16
✎
14:46
|
(30) сервер на Nodejs может хранить сообщения в своей БД. Причем, оказывается, сейчас в моде нереляционные БД (для высоконагруженных систем).
|
|||
33
Serginio1
15.05.16
✎
14:49
|
(27) Так в 15 все есть. Единственно, что нужно установить HTTP сервис. Он устанавливается легко, хоть на локальную машину под Windows
|
|||
34
arsik
гуру
15.05.16
✎
14:54
|
Зачем вы суете везде "свой" Node.js Любому понятно, что он тут не в тему. Потом вот за таким вычищать приходится.
Недавно товарищ ковырял 7.7 после умника. Тот все дописки писал на английском. Ну это еще ничего. Но для обмена использовал текстовые файлы внутри которых таблица на псевдографике. В одной базе это все собирал, а в другой разбирал. |
|||
35
Сниф
15.05.16
✎
15:01
|
(34) >Зачем вы суете везде "свой" Node.js Любому понятно, что он тут не в тему
Нет, как раз в тему, так как вопрос топика об особенностях Socket-соединения, где 1С - клиент. Асервером может быть что угодно, это не важно в данном случае. Конкретно - да Node-сервер и что в этом дурного? |
|||
36
Кирпич
15.05.16
✎
15:24
|
Тупо обмен файлами можно делать через mail. Завел ящик где нибудь на mail.ru и обменивайся хоть заобменивайся. Никаких тебе серверов и сервисов.
|
|||
37
Serginio1
15.05.16
✎
15:35
|
(36) Не ищешь ты простых вещей. Нужно периодически почту проверять, сохранять файлы, загружать.
|
|||
38
Кирпич
15.05.16
✎
15:49
|
(37) ну для тебя всё сложно, что не через .NET сделано :)
Людям нравится. Маша в Москве в документе жмет на кнопку и документ улетает на почту. Петя во Владивостоке утром приходит на работу и жмет кнопку "загрузить документы". Всё чинно благородно, без .NET и Node.js. Против .NET и Node.js ничего не имею. |
|||
39
Кирпич
15.05.16
✎
15:57
|
+(38) а заморочки со своим серваком на Node.js это конечно очень полезно для общего развития, но придется прочитать много книжек и разругаться с админом, которому этот сервак никуда не впился.
|
|||
40
Сниф
15.05.16
✎
16:11
|
(36) почта да, она как резервный канал связи катит. Если сервер лежит, то клиент должен инфу хоть почтой кинуть. Если это заказ, например.
|
|||
41
Кирпич
15.05.16
✎
16:17
|
(40) ну если заказы приходят каждые 10 секунд, то есть смысл заморачиваться с сервером, а если раз в полчаса, то и почты хватит.
|
|||
42
Serginio1
15.05.16
✎
16:51
|
(38) Вообще для заказов и прочего Вэб и HTTP сервисы существуют.
Мессенджер нужен для обмена информацией между пользователями. Например приработе с ТСД 1С юзер готовит данные в 1С, прописывает принтер и прочее, а ТСД обменивается, печатает, записывает. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |