All Projects → green-api → whatsapp-chatbot-1c-example

green-api / whatsapp-chatbot-1c-example

Licence: MIT license
Внешняя обработка для программы 1С:Предприятие, которая демонстрирует реализацию простого чат-бота для мессенджера WhatsApp.

Programming Languages

1C Enterprise
81 projects

Projects that are alternatives of or similar to whatsapp-chatbot-1c-example

waio
Is a pretty simple and fully asynchronous framework for WhatsApp Business API written in Python 3.7 with asyncio and aiohttp.
Stars: ✭ 18 (+38.46%)
Mutual labels:  whatsapp, whatsapp-bot, whatsapp-api
Whatsapp Web.js
A WhatsApp client library for NodeJS that connects through the WhatsApp Web browser app
Stars: ✭ 4,103 (+31461.54%)
Mutual labels:  whatsapp, whatsapp-bot, whatsapp-api
whatsapp-api-client
This library helps you easily create a javascript application with Whatsapp support
Stars: ✭ 39 (+200%)
Mutual labels:  whatsapp, whatsapp-bot, whatsapp-api
wppconnect-server
Wppconnect Server is a ready-to-use API, just download, install, and start using, simple as that.
Stars: ✭ 290 (+2130.77%)
Mutual labels:  whatsapp, whatsapp-bot, whatsapp-api
whatsapp-http-api
WhatsApp HTTP API that you can configure in a click!
Stars: ✭ 229 (+1661.54%)
Mutual labels:  whatsapp, whatsapp-bot, whatsapp-api
tithiwa
Automate Web WhatsApp with selenium in python.
Stars: ✭ 17 (+30.77%)
Mutual labels:  whatsapp, whatsapp-bot, whatsapp-api
Venom
Venom is the most complete javascript library for Whatsapp, 100% Open Source.
Stars: ✭ 3,457 (+26492.31%)
Mutual labels:  whatsapp, whatsapp-bot, whatsapp-api
PedeWhats
Projeto "Pede Whats", para solicitação de diversos tipos de comidas através do Whatsapp diretamente para o restaurante!
Stars: ✭ 18 (+38.46%)
Mutual labels:  whatsapp, whatsapp-api
Whatsapp-Botto-Void
A fully Object Oriented WhatsApp bot built with TypeScript
Stars: ✭ 64 (+392.31%)
Mutual labels:  whatsapp, whatsapp-bot
wappdriver
Wondering how to send WhatsApp messages using Python using only 3 lines of code? You have come to the right place!
Stars: ✭ 40 (+207.69%)
Mutual labels:  whatsapp, whatsapp-bot
Stickerworld
Bot for whatsapp that automatically generates Sticker from the images or videos it receives
Stars: ✭ 47 (+261.54%)
Mutual labels:  whatsapp, whatsapp-bot
Virdina-Brainly
Bot Whatsapp untuk brainly
Stars: ✭ 23 (+76.92%)
Mutual labels:  whatsapp, whatsapp-bot
alice
Alice is a whatsapp bot made to manage coding groups.
Stars: ✭ 14 (+7.69%)
Mutual labels:  whatsapp, whatsapp-bot
python-automated-bulk-whatsapp-messages
It is a python script to send automated bulk WhatsApp messages to multiple recipients from an excel sheet at once.
Stars: ✭ 56 (+330.77%)
Mutual labels:  whatsapp, whatsapp-bot
whatsapp-bot
This is a Node.js console app containing Whatsapp handler using reactive methods to response messages as chatbot. Simple but useful project to start developing a complex NON-OFFICIAL Whatsapp chatbots.
Stars: ✭ 33 (+153.85%)
Mutual labels:  whatsapp, whatsapp-bot
HisokaBOT-Whatsapp-Bot
Whatsapp Bot - Node Js.
Stars: ✭ 75 (+476.92%)
Mutual labels:  whatsapp-bot, whatsapp-api
inos-baileys-wabot
WhatsApp Bot Using Baileys Library
Stars: ✭ 35 (+169.23%)
Mutual labels:  whatsapp, whatsapp-bot
whatsapp-bot
Made with Python and Selenium, can be used to send multiple messages and send messages as characters made of emojis
Stars: ✭ 34 (+161.54%)
Mutual labels:  whatsapp, whatsapp-bot
BocchiBot
BocchiBot is a multipurpose WhatsApp bot using wa-automate-nodejs library!
Stars: ✭ 228 (+1653.85%)
Mutual labels:  whatsapp, whatsapp-bot
WhatsAppBulkMessenger
This tools sends WhatsApp messages and invites directly to people on WhatsApp itself, without saving their contacts 🌠
Stars: ✭ 73 (+461.54%)
Mutual labels:  whatsapp, whatsapp-api

Внешняя демо обработка с чат-ботом для WhatsApp

Для чего нужна обработка

Обработа - демо пример чат-бота для WhatsApp на базе 1С, который может быть взят за основу для написания своих чат-ботов. Интеграция сделана с использованием http сервиса, предоставляемого Green API.

Что потребуется, чтобы запустить бота

  • Платформа 1С не ниже версии 8.3.10
  • Два номера с учетками WhatsApp. Номера нужны, чтобы отправлять сообщения как бы "самому себе". При этом первый номер будет тот, с которого мы будем писать команды чат-боту (далее клиентский номер), а второй номер - с которого будет отвечать сам бот (далее номер бота). Отправлять с одного номера не получится.
  • Аккаунт в сервисе Green API. Подойдет бесплатный тариф "Разработчик".

Как запустить бота:

  1. Устанавливаем на телефон два приложения - обычный WhatsApp и Whatsapp Business.

  2. Один номер телефона регистрируем в WhatsApp, а другой в Whatsapp Business.

  3. Скачиваем обработку чат-бота,

  4. Открываем обработку в режиме 1С Предприятие, переходим на вкладку Настройки и нажимаем на Помощник подключения. Далее следуем инструкциям помощника. В помощнике будет предложено сканировать QR код. Сканируем его для номера бота, с которого чат-бот будет писать на наш клиентский номер.

Интерфейс помощника

  1. Переходим на вкладку Чат-бот и нажимаем кнопку Запустить бота.
  2. Открываем WhatsApp, на котором зарегистрирован клиентский номер и пишем любое сообщение на номер бота. Бот отвечает приветственным сообщением:

Чат-бот начало

  1. Бот запущен. Теперь мы можем с ним общаться. Например, если написать в ответ цифру 1, то получим список номенклатуры:

Чат бот запрос

Особенности работы обработки

Чат-бот работает в режиме ожидания получения сообщений - 20 сек. Далее переходит в режим бездействия - 10 сек. В реальных условиях режим бездействия можно сократить, чтобы работа чат-бота не прерывалась. Рекомендуется перенести код в фоновое задание на сервер.

Важно

На время работы чат-бота ваш телефон должен быть заряжен и подключен к Интернет. Если телефон выключиться, то работа чат-бота прекратится.

Какие сценарии поддерживает бот

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

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

Как настроить свои сценарии

  1. Открываем обработку в режиме конфигуратора.
  2. В модуле объекта смотрим на функцию ПодготовитьШаблоныСообщений(). Эта функция содержит все сообщения, которые пишет сам бот в ответ на сообщения пользователя.
  3. Чтобы добавить новый ответ внутри этой функции вызываем метод НовыйОтветБота по аналогии как это сделано в демо-примере:
Функция ПодготовитьШаблоныСообщений(КоллекцияШаблонов, КоллекцияГлобальныхШаблонов)

    ОтветПоНоменклатуре = НовыйОтветБота(НовоеСообщение, "1", "Выводим 
        список товаров...", "Подключаемый_ВывестиНоменклатуру");

КонецФункции

Если нужно, то прописываем обработчик, который срабатывает после того, как клиент ответил боту верной командой. Обработчик должен быть в модуле объекта и иметь два входных параметра, например как в демо:

Процедура Подключаемый_ВывестиНоменклатуру(Чат, Шаблон)

    ОтправитьСообщениеВЧат(Чат.ИдЧата, 
    "Арт: 123456, Чайник Электролюкс; цена: 1 200 руб; на складе: 12 шт,
    |Арт: 12223, Холодильник Хайер; цена: 45 000 руб; на складе: 4 шт
    |Арт: 54656, Телевизор Самсунг; цена: 110 000 руб; на складе: 2 шт");

КонецПроцедуры

Чтобы сделать вложенный ответ, используем тот же метод НовыйОтветБота(), но только в качестве первого параметра передаем результат родительского метода, например как в демо:

// Родительский ответ
ОтветПоНоменклатуре = НовыйОтветБота(НовоеСообщение, "1", "Выводим 
    список товаров...", "Подключаемый_ВывестиНоменклатуру");

// Вложенный ответ
ОтветМенеджер = НовыйОтветБота(ОтветПоНоменклатуре,, "Хотите связаться с менеджером (Да/Нет)?");

Чтобы прописать глобальную команду, используем метод НовыйГлобальныйОтветБота() и первым параметром в него передаем переменную КоллекцияГлобальныхШаблонов. Пример:

Функция ПодготовитьШаблоныСообщений(КоллекцияШаблонов, КоллекцияГлобальныхШаблонов)

    НовыйГлобальныйОтветБота(КоллекцияГлобальныхШаблонов, "Выход", "Работа с чат ботом завершается...", "Подключаемый_ВыключитьЧатБот");

КонецФункции
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].