Отправка сообщений в WhatsApp из командной строки

Для отправки сообщений в мессенджер WhatApp из командной строки можно воспользоваться консольным клиентом Mudslide . Чаще всего такая необходимость возникает, когда вам нужно получить оповещение от скрипта или системы мониторинга.

Проект Mudslide ( https://github.com/robvanderleek/mudslide ) основан на JavaScript библиотеке Baileys, позволяющей использовать подключаться к API WhatsApp Web с использованием WebSocket.

В этой статье, мы покажем, как использовать Mudslide для отправки сообщений в WhatApp из командной строки или консоли PowerShell в Windows. Для использования Mudslide на компьютере должен быть уставлен фреймворк Node.js с менеджером пакетов NPM, а также клиент Git (или можно скачать котовый скомпилированный файл).

winget install --id Git.Git -e --source winget

Установите пакет Mudslide с зависимостями из репозитория node.js:

npm install -g mudslide

Для запуска Mudslide из командной строки используется утилита npx (позволяет запускать npm пакеты из командной строки).

Чтобы вывести доступные консольные опции для утилиты mudslide, выполните:

npx mudslide -v

Чтобы mudslide могла отправлять сообщения от вашего имени в мессенджер WhatsApp, нужно выполнить авторизацию компьютера. Выполните команду:

npx mudslide login

В консоли появится QR код, который нужно отсканировать из приложения WhatsApp на вашем смартфоне ( Settings -> Linked Devices -> Link a device ).

Если авторизация прошла успешна, в консоли появится надпись Success : Logged in.

Для отправки тестового сообщения себе в WhatsApp, выполните:

npx mudslide send me "Hello World"

Отправить сообщение на произвольный адрес WhatsApp по номеру телефона:

npx mudslide send 79123456789 "Hello World"

Можно отправить сообщения на адресата в формате WhatsApp ID. Это может быть как адрес пользователя, так и ID группы, например [email protected] (вывести список групп/чатов: npx mudslide groups ).

Если нужно разбить сообщение на строки, добавьте в строку перевод строки с помощью управляющих символов n:

npx mudslide send 79123456789 "HellonWorld"

Отправить в WhatsApp изображение (PNG, JPG, GIF):

npx mudslide send-image 79123456789 C:tempimage123.jpg

Вложить в сообщение файл:

npx mudslide send-file 79123456789 C:tempscan.pdf

Отправить GPS координаты:

npx mudslide@latest send-location me 55.752121 37.617664

Отправить сообщение в группу:

npx mudslide send-group 12345678910123456 "Hello"

Проверить статус авторизации клиента mudslide:

npx mudslide me

Завершить сессию Mudslide и удалить сохраненные учетные данные для подключения к WhatsApp:

npx mudslide logout

Также можно использовать готовые скомпилированные версии Mudslide, доступные для загрузки на GitHub. Например, чтобы запустить Mudslide клиент в Linux, скачайте исполняемый файл:

$ wget https://github.com/robvanderleek/mudslide/releases/download/0.29.3/mudslide-linuxstatic-x64
$ chmod +x mudslide-linuxstatic-x64
$ mv mudslide-linuxstatic-x64 /usr/local/bin/mudslide

Чтобы использовать клиент Mudslide для отправки сообщений, например из Zabbix, выполните аутентификацию в WhatsApp от этого пользователя:

$ sudo -u zabbix mudslide -c /tmp/mudslide-cache login

Таким образом, вы сможете отправлять сообщения в WhatsApp без использования браузера или фреймворка Selenium прямо из ваших скриптов или системы мониторинга.

Примеры отправки сообщений из командной строки в другие мессенджеры:
admin

Recent Posts

Настройка Mercurial по HTTPS

Иногда mercurial, при скачивании и комитах ругается на https. Особенно на самоподписанные сертификаты. Чтобы заработал…

2 дня ago

Компиляция libvirt в Ubuntu

Компиляция libvirt Подробнее

2 дня ago

Ошибка libvirt permission denied: решение

Если возникает ошибка libvirt destroy lxc permission denied , при попытке остановить контейнер: _x000D_# virsh…

2 дня ago

Настройка редиректа в NGINX

Файлы с примерами редиректа для nginx Подробнее

2 дня ago

Включение gzip в NGINX

Как включить gzip сжатие в Nginx ? Подробнее

2 дня ago

Удаление postinst-скрипта в Linux

Иногда возникает ситуация, когда криво настроенные пакеты не устанавливаются в системе. У меня это произошло…

2 дня ago