Skype1C

10.04.12

Интеграция - Мессенджеры и боты

Внешняя компонента для работы со Skype

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Skype1C.dll
.dll 40,00Kb
310
310 Скачать (1 SM) Купить за 1 850 руб.

Со Skype можно работать и без ВК (см. здесь), но в этом случае мы лишаемся возможности получать события от Скайпа. 

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

Для работы компоненты необходим установленный и зарегистрированный Skype4COM.dll (взять можно здесь)

Перечень событий, поступающих в 1С (в скобках название события по документации Скайпа):

  • ChatMessageChanged   (MessageStatus) 
  • OnlineStatusChanged (OnlineStatus)
  • ConnectionStatusChanged (ConnectionStatus)
  • UserStatusChanged (UserStatus)

Самое важное из этого списка MessageStatus - статус сообщения. Т.о. мы можем узнать в 1С о входящем сообщении. Остальные пока добавил просто так. 

 
В компоненте присутствуют свойства (только для чтения):

  • MessID, ИДСообщения
  • Mess, Сообщение
  • From, ОтКого
  • FromName, ОтКогоИмя
  • FromGroup, ИзГруппы

При получении сообщения его данные записываются в эти свойства.

"ОтКого" - это скайп-логин отправителя.

"ОтКогоИмя" - имя контакта отправителя в вашем скайпе.

"ИзГруппы" - группа контактов, которой принадлежит отправитель.

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

Если кто знает, как решить эту проблему с группами - буду благодарен за подсказку.

 
Методы, реализованные в компоненте:

  • Connect, Подключить
  • SendMess, ОтправитьСообщение
  • Dial, Позвонить

С помощью первого метода осуществляется подключение к Skype 

ЗагрузитьВнешнююКомпоненту("Skype1C.dll");
Skype = СоздатьОбъект("AddIn.Skype1C"); 
Skype.Подключить();

для 1С:Предприятие 8.х объект создаем так:

Skype = Новый("AddIn.Skype1C"); 

В самом Скайпе нужно дать доступ приложению для возможности работы.


Отправка сообщения:

Skype.ОтправитьСообщение(Кому,ТекстСообщения);

Кому - это логин контакта, которому отправляем сообщение. Для ответа на полученное сообщение используйте свойство .ОтКого


Третий метод "Позвонить" реализован, но не опробован - не было необходимости.


Компонента писалась для создания простого Скайп-бота и передачи с его помощью данных из 1С.

Процедура ОбработкаВнешнегоСобытия(Источник,Событие,Данные)
    Сообщить(ТекущееВремя()+" Событие "+Событие+ " Данные = "+Данные);
    Если Источник = "Skype1C" Тогда
        Если Событие = "ChatMessageChanged" Тогда
            //'cmsSending   = 0 indicates the message is in the process of being sent.
            //'cmsSent        = 1 indicates the message has been sent.
            //'cmsReceived = 2 indicates the message has been received.
            //'cmsRead       = 3 indicates the message has been read.
            
            Статус = Данные;
            Если Статус = "0" Тогда
                varCmsatus = "cmsSending";
            ИначеЕсли Статус = "1" Тогда
                varCmsatus = "cmsSent";
            ИначеЕсли Статус = "2" Тогда
                varCmsatus = "cmsReceived";
                ИДСообщ = Skype.ИДСообщения;
                Сообщение = Skype.Сообщение;
                ОтКого = Skype.ОтКого;
                ОтКогоИмя = Skype.ОтКогоИмя;
                Группа = Skype.ИзГруппы;
                Сообщить("("+ОтКого+") "+ОтКогоИмя+": "+Сообщение+" Группа: "+Группа );
                Кому = ОтКого;
                ТекстСообщения = "Привет! Это отвечает 1С:Робот!";
                Skype.ОтправитьСообщение(Кому,ТекстСообщения);
            ИначеЕсли Статус = "3" Тогда
                varCmsatus = "cmsRead";
            КонецЕсли;
            Сообщить(varCmsatus);
        ИначеЕсли Событие = "OnlineStatusChanged" Тогда
            Если Данные = "0" Тогда
                varOLStatus = "olsOffline";
            ИначеЕсли Данные = "1" Тогда
                varOLStatus = "olsOnline";
            ИначеЕсли Данные = "2" Тогда
                varOLStatus = "olsAway";
            ИначеЕсли Данные = "3" Тогда
                varOLStatus = "olsNotAvailable";
            ИначеЕсли Данные = "4" Тогда
                varOLStatus = "olsDoNotDisturb";
            ИначеЕсли Данные = "5" Тогда
                varOLStatus = "olsSkypeOut";
            ИначеЕсли Данные = "6" Тогда
                varOLStatus = "olsSkypeMe";
            Иначе
                varOLStatus = "olsUnknown";
            КонецЕсли;
            Сообщить(varOLStatus);
        ИначеЕсли Событие = "ConnectionStatusChanged" Тогда
            Если Данные = "0" Тогда
                varConStatus = "conOffline";
            ИначеЕсли Данные = "1" Тогда
                varConStatus = "conConnecting";
            ИначеЕсли Данные = "2" Тогда
                varConStatus = "conPausing";
            ИначеЕсли Данные = "3" Тогда
                varConStatus = "conOnline";
            Иначе
                varConStatus = "conUnknown";
            КонецЕсли;
            Если Данные = "Ошибка" Тогда
                Сообщить(" Связь со Skype1C прервана");
            КонецЕсли;
            Сообщить(varConStatus);
        ИначеЕсли Событие = "UserStatusChanged" Тогда
            Если Данные = "0" Тогда
                varCusStatus = "cusOffline";
            ИначеЕсли Данные = "1" Тогда
                varCusStatus = "cusOnline";
            ИначеЕсли Данные = "2" Тогда
                varCusStatus = "cusAway";
            ИначеЕсли Данные = "3" Тогда
                varCusStatus = "cusNotAvailable";
            ИначеЕсли Данные = "4" Тогда
                varCusStatus = "cusDoNotDisturb";
            ИначеЕсли Данные = "5" Тогда
                varCusStatus = "cusInvisible";
            ИначеЕсли Данные = "6" Тогда
                varCusStatus = "cusLoggedOut";
            ИначеЕсли Данные = "7" Тогда
                varCusStatus = "cusSkypeMe";
            Иначе
                varCusStatus = "cusUnknown";
            КонецЕсли;
            Сообщить(varCusStatus);
        КонецЕсли;
    КонецЕсли;
КонецПроцедуры 

ИСТОРИЯ:

2011-05-31 (v 0.1.0.1)

* Устанавливаю для входящего сообщения свойство Seen =  True. Чтобы не показывалось в клиенте Скайпа, как непрочтенное

См. также

Мессенджеры и боты Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Интеграция мессенджера WhatsApp и 1С: УНФ, УТ, КА, ERP - отправка и получение сообщений, картинок, файлов и видео прямо в 1С. Расширение работает с сервисом GreenApi.

15600 руб.

23.06.2023    9461    58    12    

34

Мобильная разработка Мессенджеры и боты Платформа 1С v8.3 1С:Конвертация данных Платные (руб)

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

13200 руб.

27.12.2021    38182    108    161    

201

SALE! 25%

Мессенджеры и боты Системный администратор Программист Бизнес-аналитик Пользователь Руководитель проекта Платформа 1С v8.3 Платные (руб)

Развитие популярного решения для интеграции мессенджера Telegram с нашей любимой 1С - конструктор чат-ботов в Телеграм.

15000 11250 руб.

18.06.2021    65534    312    272    

369

Документооборот и делопроизводство (СЭД) Мессенджеры и боты Учет документов Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 Платные (руб)

Расширение для согласования справочников и документов в основных типовых конфигурациях. Ролевая адресация, условная маршрутизация, чат-бот telegram, интеграция с n8n, последовательное и параллельное согласование, уведомление о новых задачах на почту, блокировка объектов в зависимости от статуса, запрет проведения в зависимости от статуса, автозапуск процессов согласования, отчеты по исполнительской дисциплине. Не требуется снятие конфигурации с поддержки. Настройка без программирования. Версия для 1cfresh.com. Сертификат 1С-Совместимо.

14900 руб.

15.11.2018    30267    35    49    

71

Мессенджеры и боты Пользователь Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Данное расширение представляет собой интерфейс взаимодействия 1С с сервисом Wazzup. Данный сервис позволяет вести беседу с использованием номера телефона, привязанного к Whatsapp. Почитать о сервисе и его условиях использования можно по ссылке https://wazzup24.com/. На данный момент расширение поддерживает почти все доступные через API функции. Обновление от 19.05.2023, версия 2.1!

14400 руб.

30.11.2020    13588    8    13    

15

Мессенджеры и боты SMS рассылки Платформа 1С v8.3 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Решение реализовано в виде расширения. Заменяет отправку смс на отправку в WhatsApp через Green-api. Отправка чека картинкой.

7800 руб.

15.05.2024    1538    3    6    

6
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. cool.vlad4 2 24.05.11 14:29 Сейчас в теме
Решение мне не нужно, но все равно спс. Совет - мне кажется больше имеет смысл сделать разработку коммерческой - с поддержкой и с гарантией безопасности.
4. ROM_1C 692 24.05.11 15:35 Сейчас в теме
(1) А как можно применить скайп + 1С в коммерции?
(0) +1. Компонента с 1С 8 работает? Чтобы лучше смотрелось сделайте обработки для примера.
5. cool.vlad4 2 24.05.11 15:48 Сейчас в теме
(4) Не моя забота, и потом коммерческая и коммерция - разные слова.
8. alyuev 204 24.05.11 15:56 Сейчас в теме
(4) Проверил на 1С:Предприятие 8.0 - работает.
2. cool.vlad4 2 24.05.11 14:30 Сейчас в теме
да и еще офф: недавно микрософт купил скайп...надеюсь это хорошо отразится на последнем...
3. tango 545 24.05.11 14:36 Сейчас в теме
(2) более внимательное отношение к нуждам органов обеспечено
49. dgonson 178 10.04.12 14:11 Сейчас в теме
При подключении появляется ошибка

{Форма.Форма(3)}: Тип не определен (AddIn.Skype1C)
Скайп = Новый("AddIn.Skype1C");
6. cool.vlad4 2 24.05.11 15:50 Сейчас в теме
коммерческая разработка обязывает автора заключать договор, по которому обе стороны могут прописать все пункты. А бесплатная разработка не обязывает ни к чему, в том числе гарантий по отсутствию всяких шалостей.
7. ROM_1C 692 24.05.11 15:56 Сейчас в теме
Сделать можно коммерческую, а кто ее будет применять?
9. cool.vlad4 2 24.05.11 15:58 Сейчас в теме
(7) А кто ее будет применять некоммерческой?
10. ROM_1C 692 24.05.11 16:04 Сейчас в теме
(9) Программисты-любители.
Кому нужен скайп в 1С ели он стоит отбельным приложением.
Хотя, если придумать что-то умное с использованием - то возможно и будут использоваться
11. alyuev 204 24.05.11 16:05 Сейчас в теме
(10) Скайп-бот. Вот возможность использования.
13. ROM_1C 692 24.05.11 16:08 Сейчас в теме
(11) я над этим давно думал, и скайп-бот, и аська-бот...
Вот только как реализировать хорошего бота?
12. cool.vlad4 2 24.05.11 16:08 Сейчас в теме
(10) Зачем? В крайнем случае есть skype + Skype4COM.dll
15. alyuev 204 24.05.11 16:11 Сейчас в теме
(12) Система запросов. Например у нас: отсылаешь № контейнера на скайп-бот, а он тебе тут же ответ о статусе контейнера. И как получить в 1С уведомление о новом сообщении от skype + Skype4COM.dll без ВК?
14. cool.vlad4 2 24.05.11 16:10 Сейчас в теме
У менеджера есть контрагенты, часть которых использует скайп (в базе они прописаны). Так он вручную их оповещает, а так, он будет использовать (0). Но ни одно здравомыслящее руководство не позволит использовать решения, взятые с потолка, без гарантий. Может оно инфу сливает, тем более, что интернет для работы по любому должен быть открыт.
16. ROM_1C 692 24.05.11 16:13 Сейчас в теме
(14) У меня рассылка делаешься через пошту)
18. cool.vlad4 2 24.05.11 16:14 Сейчас в теме
(16) какая разница как у тебя делается рассылка, я взял пример наобум, смотри 15
17. cool.vlad4 2 24.05.11 16:13 Сейчас в теме
или вот например 15 . Вещь полезная, но вот проблема как раз безопасности.
19. alyuev 204 24.05.11 16:14 Сейчас в теме
(17) И в чём именно проблема?
21. ROM_1C 692 24.05.11 16:17 Сейчас в теме
(19) Думаю, проблемы нет вообще. Нужно только хорошо продумать средство аутентификации (кто к чему)...
22. cool.vlad4 2 24.05.11 16:19 Сейчас в теме
(21) Ты смеешься? Откуда тебе знать,что эта ВК делает?
23. alyuev 204 24.05.11 16:20 Сейчас в теме
(21) Аутентификация по скайп-логину. Он заносится в карточку контрагента. Если он прописан и контейнер этого заказчика - выдается ответ на запрос.
26. ROM_1C 692 24.05.11 16:25 Сейчас в теме
(23)пример:
имя скайпов в спр.контрагенты: Вася; Петя.
Вася делает запрос и удачно получает ответ на который должен знать только Петя.
Здесь по логину мало.
27. alyuev 204 24.05.11 16:29 Сейчас в теме
(26) Это уже вопрос реализации алгоритма на стороне 1С, а не на стороне компоненты.
20. cool.vlad4 2 24.05.11 16:15 Сейчас в теме
:D см. 14
Но ни одно здравомыслящее руководство не позволит использовать решения, взятые с потолка, без гарантий. Может оно инфу сливает, тем более, что интернет для работы по любому должен быть открыт.
24. ROM_1C 692 24.05.11 16:22 Сейчас в теме
Если обработка - можно посмотреть. А если компонента - здесь нужно смотреть куда ломается. Думаю, фаерволом можно поймать если посылаются данные не туда.
25. cool.vlad4 2 24.05.11 16:25 Сейчас в теме
(24) про снифферы можешь мне не рассказывать :D вот именно вариант для любителей...
28. ixijixi 1913 24.05.11 16:51 Сейчас в теме
Поясните, нужен ли для работы ВК установленный Скайп?
29. alyuev 204 24.05.11 16:53 Сейчас в теме
35. ixijixi 1913 25.05.11 10:59 Сейчас в теме
(29) Спасибо, тогда в топку
30. ROM_1C 692 24.05.11 17:30 Сейчас в теме
Ну так что, кто присоединяется до создания разумного бота с интеграцией со скайпом и аськой?
31. alyuev 204 24.05.11 17:52 Сейчас в теме
(30) И в чем должна быть заключена разумность бота? И вообще - это, наверное, уже не здесь нужно обсуждать. :-)
32. ROM_1C 692 24.05.11 17:59 Сейчас в теме
(31) от как раз-то это главный вопрос!
33. cool.vlad4 2 24.05.11 18:13 Сейчас в теме
34. DoctorRoza 24.05.11 19:42 Сейчас в теме
+ однозначно .. :) .. Хотя бы идею и, пусть мало-мальскую, но реализацию. Подобные интеграции хорошо развивают креативность мысли! А для IT-ника это самое главное! P.s. Было бы шикарно соединить 1С и, например, Pacman'а! ;) :)
36. detec 136 25.05.11 11:00 Сейчас в теме
Интересная идея, но пока не вижу реального практического применения в рамках 1С 8. Мессенджер он на то и мессенджер, чтобы человек человеку руками писал вопросы-ответы. А в асинхронном режиме ИМХО, этот канал проигрывает электронной почте.
37. lion11 144 25.05.11 13:31 Сейчас в теме
Вот можно еще вариант использования (для продвинутых директоров, например): Висит 1с-ка с запущенным ботом (скайпа или аськи - не важно). И у директора на мобиле запущено. Он с мобилы посылает запрос боту, например "ОСВ 51", и ему в ответ - остаток по банковским счетам, "ОСВ 62" - остаток дебиторов (например, первые 10 крупных), "ОСВ 62 Рога и копыта" - задолженность конкретного контрагента.
38. cool.vlad4 2 25.05.11 13:44 Сейчас в теме
(37) Эту идею собственно автор и подчеркнул, читайте выше. Тут уж полет мысли не остановит - через скайп можно показывать демонстрационные конф-ции(на кодпроекте плагин), через скайп можно быстро обменятся данными (через xml естесн), потребуется только скайп, без настройки vpn и прочего, в общем что хотите. В прелесть скайп (в этом же его порок) - это хитрая пиринговая прога, устанавливающая связь практически где угодно (главное чтоб интернет был), а как использовать этот канал связи решайте сами. Хоть черную отчетность передавайте. :D
39. oaf_is 28.05.11 15:14 Сейчас в теме
Isq, Skype - это же online сервисы, всё время слушающие и передающие инет. Вполне может быть что-то типа RAdmina или снифера. 8-) Если дать доступ для компоненты с нескольких ПК, то надо их опубликовать на файерволе каждую. Почта безопаснее... сервер ОДИН и может бывть в ДМЗ зоне. ;)
40. OldthiefXXX 154 30.05.11 13:02 Сейчас в теме
41. nikk911 26.10.11 15:35 Сейчас в теме
Компоненту загрузил,
команды:
	Skype.Подключить();
	Skype.ОтправитьСообщение("MSV","TEST");


вызывают ошибки:
Skype1C : Ошибка ActiveX component can't create object
Skype1C : Ошибка Object variable or With block variable not set

платформа 1с7.7
skype 5.3.0.120

Подскажите, пожалуйста, что поправить.
42. alyuev 204 26.10.11 16:54 Сейчас в теме
43. winise 29.10.11 00:24 Сейчас в теме
Вот уж не думал что такое возможно, приятно удивили )))))))))))))
44. realist 20.12.11 23:33 Сейчас в теме
Пытаюсь запустить.

попытка
ЗагрузитьВнешнююКомпоненту("D:\temp\Skype1C.dll");
Skype = Новый("AddIn.Skype1C");
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;

Skype.ОтправитьСообщение("xxxxx","ТекстСообщения");

НА ОтправитьСообщение Выдает ошибку:

Skype1C : Ошибка Object variable or With block variable not set.

В чем может быть проблема?
Операционка windows7, skype 5.6.59.110, 1c 8.1.14.15
45. alyuev 204 20.12.11 23:40 Сейчас в теме
(44) А где Skype.Подключить()?
47. realist 20.12.11 23:47 Сейчас в теме
(45) Спасибо. Уже разобрался. Спать, пожалуй, пора
46. realist 20.12.11 23:47 Сейчас в теме
48. svcoopers 85 03.01.12 22:49 Сейчас в теме
Отличное решение. Было бы неплохо сделать это же с другими мессенджерами с возможностью вставлять переписку
50. CrazyDave 24.04.12 19:41 Сейчас в теме
Здравствуйте, можно узнать , умеет ли ваша компонента входить в скайп под заданным логином и паролем? Или скайп должен быть просто запущен на компьютере?
51. alyuev 204 24.04.12 21:27 Сейчас в теме
(50) Нет, не умеет входить под логином, только подключается к уже запущенному скайпу. При первом подключении нужно в самом Скайпе разрешить подключение внешней компоненты.
52. PolAlex2 118 26.08.13 13:42 Сейчас в теме
Сейчас читаю по ссылке, приведенной для скачивания Skype4COM.dll

"Important: The Desktop API is no longer supported and some of its features will be gradually discontinued."

То есть похоже что возможность такой работы зарежут?
53. mamaev.biz 09.09.13 15:49 Сейчас в теме
(105) Gazza, похоже на то. вот мерзавцы.
54. mzelensky 53 07.07.14 12:21 Сейчас в теме
Доброго времени суток. Встала необходимость работы со Скайпом из 1С. Проблема в том, что перед работой необходимо добавить 1С-ку в контроль доступа программного интерфейса (в настройках скайпа). Можно ли как-то сделать это программно из той-же 1С или может скриптом каким-нибудь?
55. alyuev 204 08.07.14 12:13 Сейчас в теме
Я делал доступ для 1С вручную из интерфейса скайпа. Один раз.
56. mzelensky 53 09.07.14 10:43 Сейчас в теме
(55) Сейчас встала еще пара вопросов:
1) Как можно переключаться между несколькими запущенными сеансами скайпа (разные учетки)?
2) Как закрыть определенный сеанс скайпа?
57. 3762515 28.07.14 10:17 Сейчас в теме
58. atlantooo 28.07.14 11:31 Сейчас в теме
Далее пойдут темы с интеграцией VK, Мой мир, Одноклассники. Ну а чо, настрочил отчеты и сразу по одной кнопке в соц сети новость разослал. Уплатил налоги - сразу уведомление в аську главному налоговому инспектору. А уж коли просрочил уплату в ПФР - 1С сама стук стук кому надо по почте. Автоматизация епта, нет предела совершенству!
59. maXon777 129 28.10.14 17:35 Сейчас в теме
60. teranp 17.11.14 21:27 Сейчас в теме
идея хороша для отслеживания переписок сотрудников чтобы инфа не утекала супер было бы если еше агент таким же образом завязать
61. пользователь 22.11.15 00:53
Сообщение было скрыто модератором.
...
62. пользователь 23.11.15 11:14
Сообщение было скрыто модератором.
...
63. sashocq 193 20.07.16 08:52 Сейчас в теме
Есть сведения о работоспособности компоненты сейчас под 8.3? Может, версия новая есть?
64. alyuev 204 20.07.16 15:09 Сейчас в теме
Сведений нет. Не проверял.
Оставьте свое сообщение