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

Это болезненно, верно. Существует несколько приложений для чата, которые вы можете автоматизировать, чтобы отвечать на сообщения, которые вам отправляют другие. например Discord, Telegram и WhatsApp. Для двойной проверки вы можете проверить их Условия использования, чтобы убедиться, что вы не нарушаете их правила, и вас не забанят. По этому поводу мы поговорим о WhatsApp Web JS.

Что такое Whatsapp Web JS??

Simply WhatsApp web js — это одна из библиотек, которую мы можем использовать для автоматизации ответов или отправки сообщений другим пользователям. для создания этого автоматизированного приложения мы будем использовать Node JS. для тех, кто еще не установил Node JS, вы можете получить установщик здесь https://nodejs.org/en

Что касается меня, то сейчас я использую Nodejs v18.14.0. вы также можете получить более старую версию здесь https://nodejs.org/en/download/releases

Пойдем

После того, как вы установили Node JS, вы можете проверить, завершена ли ваша установка. Сначала вы можете проверить ее на своем терминале с помощью этого скрипта.

PS E:\Developments\Applications\Node App\whatsappjs-learn> node -v
v18.14.0

результат покажет вашу версию Node JS следующим образом, а затем все готово.

теперь, чтобы начать свою первую программу. вам нужно ввести npm -init, чтобы настроить детали вашего проекта. вы можете оставить их пустыми или установить по своему усмотрению. Вы увидите такой результат после заполнения входных данных

PS E:\Developments\Applications\Node App\whatsappjs-learn> npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.

See `npm help init` for definitive documentation on these fields
and exactly what they do.

Use `npm install <pkg>` afterwards to install a package and
save it as a dependency in the package.json file.

Press ^C at any time to quit.
package name: (whatsappjs-learn)
version: (1.0.0)
description:
entry point: (index.js)
test command:
git repository: (https://github.com/itsmeeep/whatsappjs-learn.git)
keywords:
author:
license: (ISC)
About to write to E:\Developments\Applications\Node App\whatsappjs-learn\package.json:

{
  "name": "whatsappjs-learn",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/itsmeeep/whatsappjs-learn.git"
  },
  "author": "",
  "license": "ISC",
  "bugs": {
    "url": "https://github.com/itsmeeep/whatsappjs-learn/issues"
  },
  "homepage": "https://github.com/itsmeeep/whatsappjs-learn#readme"
}


Is this OK? (yes)

Разбивка кода

Первый шаг — создание файла index.js. в этот файл index.js мы поместим скрипты для запуска WhatsApp Web Js. Здесь полный код

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

const qrcode = require('qrcode-terminal');
const { Client, LocalAuth  } = require('whatsapp-web.js');

в этой части кода вам необходимо установить qrcode-terminal и whatsapp-web.js, чтобы все заработало. Чтобы установить новый модуль, вы можете использовать команду npm install ‹модуль, который вы хотите установить›

Ход установки примерно такой

PS E:\Developments\Applications\Node App\whatsappjs-learn> npm install qrcode-terminal
npm WARN [email protected] No description

+ [email protected]
added 1 package from 2 contributors and audited 1 package in 0.621s
found 0 vulnerabilities

PS E:\Developments\Applications\Node App\whatsappjs-learn> npm install whatsapp-web.js
npm WARN deprecated [email protected]: < 19.4.0 is no longer supported

> [email protected] install E:\Developments\Applications\Node App\whatsappjs-learn\node_modules\puppeteer
> node install.js

Downloading Chromium r982053 - 180.5 Mb [====================] 100% 0.0s
Chromium (982053) downloaded to E:\Developments\Applications\Node App\whatsappjs-learn\node_modules\puppeteer\.local-chromium\win64-982053
npm WARN [email protected] No description

+ [email protected]
added 110 packages from 110 contributors and audited 111 packages in 48.06s

8 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities

После завершения процесса установки вы можете запустить приложение, введя команду node index.js на своем терминале. Затем мы перешли к следующей части кодов

const whatsapp = new Client({
    authStrategy: new LocalAuth()
});

В этой части мы объявляем процесс аутентификации, существует несколько типов аутентификации. по умолчанию WhatsApp Web JS не сохраняет сеанс входа в систему. обычно я использую LocalAuth(), поэтому мне не нужно повторно сканировать QR-код каждый раз, когда я повторно запускаю приложение. С помощью этого метода LocalAuth() вы можете сохранить сеанс в своих локальных файлах.

whatsapp.on('qr', qr => {
    qrcode.generate(qr, {
        small: true
    });
});

этот код будет генерировать QR-код на вашем терминале каждый раз, когда WhatsApp запрашивает QR-код для входа в систему. QR-код будет таким, когда приложение запустится

QR-код будет восстановлен, если вы оставите их слишком долго

whatsapp.on('ready', () => {
    console.log('Client is ready!');
});

whatsapp.on('message', async message => {
 if(message.body === '!ping') {
  message.reply('pong');
 }
});

в этой части кода вы видите whatsapp.on(‘ready’, ()… этот код будет выполнен, когда приложение будет готово к использованию. Приложение сообщит вам, если приложение WhatsApp уже запущено на вашем локальном компьютере, отправив сообщение на ваш терминал. whatsapp.on(‘message’, … этот код будет выполняться каждый раз, когда ваш номер получает сообщение. текст, он будет читать/выполнять введенную вами команду, например, я беру команду!ping, а затем автоматически отвечаю отправителю.

Приведенный выше пример является результатом отправки разработанной команды в учетную запись, под которой вы вошли в WhatsApp Web JS.

В следующий раз я расскажу об экспресс-js, так что следите за обновлениями. Спасибо ребята :)