Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
ru:docs:guide-user:services:remote_control:im_email [2024/12/15 00:22] – XMPP stokitoru:docs:guide-user:services:remote_control:im_email [2024/12/17 19:28] (current) – [Telegram] stokito
Line 4: Line 4:
 ===== EMail ===== ===== EMail =====
 Как отправить почту смотрите в статье про [[:docs:guide-user:services:email:smtp.client|SMTP клиенты]]. Как отправить почту смотрите в статье про [[:docs:guide-user:services:email:smtp.client|SMTP клиенты]].
-Получение писем с коммандами возможно с помощью SMTP сервера, например ''postfix'' (популярный но сложный в настройке) или [[docs:guide-user:services:email:emailrelay|E-MailRelay]] и с помощью своих скриптов можно обрабатывать команды.+Получение писем с командами возможно с помощью SMTP сервера, например ''postfix'' (популярный но сложный в настройке) или [[docs:guide-user:services:email:emailrelay|E-MailRelay]] и с помощью своих скриптов можно обрабатывать команды.
 Но в целом почтовый сервер использовать проблематично из-за множества ограничений: ему нужен статический адрес, провайдеры интернета часто блокируют 25тый порт SMTP, много спама и проблема с DDoS. Но в целом почтовый сервер использовать проблематично из-за множества ограничений: ему нужен статический адрес, провайдеры интернета часто блокируют 25тый порт SMTP, много спама и проблема с DDoS.
  
  
 ===== Telegram ===== ===== Telegram =====
-Наиболее вменяемая и часто используемуе средство. У Телеграмма [[https://core.telegram.org/bots|роскошное АПИ для ботов]] с которым удобно работать через простое HTTP API с долгим ожиданием (long pooling). Например чтобы боту отправить сообщение достаточно отправить POST запрос:+Наиболее вменяемый и часто используемуй способ. У Телеграмма [[https://core.telegram.org/bots|роскошное АПИ для ботов]] с которым удобно работать через простое HTTP API с долгим ожиданием (long pooling). Например чтобы боту отправить сообщение достаточно отправить POST запрос:
  
 <code bash> <code bash>
-wget --post-data="chat_id=idчата&text=сообщение" "https://api.telegram.org/bot$TOKEN/sendMessage"+TOKEN="токен вашего бота" 
 +CHAT_ID="id чата между пользователем и ботом" 
 +MSG="сообщение
 +wget -q -O - --post-data="chat_id=$CHAT_ID&text=$MSG" "https://api.telegram.org/bot$TOKEN/sendMessage"
 </code> </code>
 +
 Если интересно разобраться читайте [[https://habr.com/ru/articles/860748/|Простой телеграмм бот на sh, или ещё одно применение старому роутеру]]. Если интересно разобраться читайте [[https://habr.com/ru/articles/860748/|Простой телеграмм бот на sh, или ещё одно применение старому роутеру]].
  
Line 19: Line 23:
  
   * cam_movie: Record 25 seconds of a camIP and send it.   * cam_movie: Record 25 seconds of a camIP and send it.
-  * cam_mv: Move the camera arround.+  * cam_mv: Move the camera around.
   * cam_shot: Get a Pic from the camera.   * cam_shot: Get a Pic from the camera.
   * cam_vdo: Get a 25 seconds record from a camIP.   * cam_vdo: Get a 25 seconds record from a camIP.
-  * chromego_add: Include to a user in chromego, a word to be used in permissions (block url/youtube channel/etc). +  * chromego_add: Include to a user in chromego, a word to be used in permissions (block url/YouTube channel/etc). 
-  * chromego_del: Remove a word from a user in chromego to be used in permissions (block url/youtube channel/etc). +  * chromego_del: Remove a word from a user in chromego to be used in permissions (block url/YouTube channel/etc). 
-  * chromego_list: List all permissions in chromego (block url/youtube channel/etc).+  * chromego_list: List all permissions in chromego (block url/YouTube channel/etc).
   * fw_add: Block a hostname using a deny rule in firewall, if append time to command will block from 23:00 to 8:00   * fw_add: Block a hostname using a deny rule in firewall, if append time to command will block from 23:00 to 8:00
   * fw_delete: Remove a hostname from a deny firewall rule, if hostname is empty, will remove all rules created by this bot.   * fw_delete: Remove a hostname from a deny firewall rule, if hostname is empty, will remove all rules created by this bot.
Line 35: Line 39:
   * fw_unblock: Remove a hostname from a deny firewall rule, if hostname is empty, will remove all rules created by this bot.   * fw_unblock: Remove a hostname from a deny firewall rule, if hostname is empty, will remove all rules created by this bot.
   * get_ip: Get WAN IPAddress.   * get_ip: Get WAN IPAddress.
-  * get_mac: Get the Organization that onwer the MacAddr. +  * get_mac: Get the Organization that own the MacAddr. 
-  * get_ping: Ping address or host, return Up or Down.+  * get_ping: Ping an address or host, return Up or Down.
   * get_uptime: Return the uptime from this Device.   * get_uptime: Return the uptime from this Device.
   * hst_list: Get hosts in the dhcp Leases. If a hostname is present, search only for this hostname.   * hst_list: Get hosts in the dhcp Leases. If a hostname is present, search only for this hostname.
   * ignoredmac_add: Add a new macaddress to the allowlist and avoid being notified about it.   * ignoredmac_add: Add a new macaddress to the allowlist and avoid being notified about it.
   * ignoredmac_list: Shows the list of ignored mac addresses that will not be notified by the bot.   * ignoredmac_list: Shows the list of ignored mac addresses that will not be notified by the bot.
-  * interface_down: Shutdown interface by name. +  * interface_down: Shutdown an interface by name. 
-  * interface_restart: Restart interface by name.+  * interface_restart: Restart an interface by name.
   * interfaces_list: Get interfaces configuration.   * interfaces_list: Get interfaces configuration.
-  * interface_up: Start up interface by name.+  * interface_up: Start up an interface by name.
   * lights: Turn On or Off house Lights.   * lights: Turn On or Off house Lights.
   * msg_tv: Send Message to Samsung TV   * msg_tv: Send Message to Samsung TV
   * netstat: Prints netstat table in ESTABLISHED, CLOSED and TIME_WAIT State.   * netstat: Prints netstat table in ESTABLISHED, CLOSED and TIME_WAIT State.
   * opkg_install: Install a package from opkg.   * opkg_install: Install a package from opkg.
-  * opkg_update: Update list of packages avaliable.+  * opkg_update: Update list of packages available.
   * ping_udp: Create a UDP packet to puncture a hole through a NAT firewall of your ISP   * ping_udp: Create a UDP packet to puncture a hole through a NAT firewall of your ISP
   * proc_list: List all process in execution   * proc_list: List all process in execution
Line 65: Line 69:
   * wifi_list: List all wireless devices.   * wifi_list: List all wireless devices.
   * wifi_restart: Restart a wireless device radio.   * wifi_restart: Restart a wireless device radio.
-  * wll_list: Get a wifi clients list that is connected to this device+  * wll_list: Get a Wi-Fi clients list that is connected to this device
  
-Есть ещё один бот https://github.com/varakh/tlgbot. Он чуть посвежее и с документацией на русском но он зачем-то использует bash (который ещё устанавливать нужно) и функционал скромнее.+Есть ещё один бот https://github.com/varakh/tlgbot. Он посвежее и русифицированный но он зачем-то использует bash (который ещё устанавливать нужно) и функционал скромнее.
  
-Важно понимать что бот всё же ограничен в том что он может делать. Оконечного шифрования при этом нет, если кто-то взломает ваш Телеграм он может вам попортить роутер.+Важно понимать что бот всё же ограничен в том что он может делать. Сквозного шифрования при этом нет, если кто-то взломает ваш Телеграмм он может вам попортить роутер и жизнь.
  
 ===== XMPP ===== ===== XMPP =====
Line 77: Line 81:
   * [[https://github.com/stanson-ch/xmppcd|xmppcd]] Небольой демон XMPP клиента    * [[https://github.com/stanson-ch/xmppcd|xmppcd]] Небольой демон XMPP клиента 
   * [[https://www.reddit.com/r/openwrt/comments/11auq9n/send_a_xmpp_message_from_router/|Обсуждение на Reddit: Send a xmpp message from router]]   * [[https://www.reddit.com/r/openwrt/comments/11auq9n/send_a_xmpp_message_from_router/|Обсуждение на Reddit: Send a xmpp message from router]]
 +
 +
 +===== UnifiedPush =====
 +
 +[[https://unifiedpush.org/|UnifiedPush]] это открытая спецификация и инструменты которые позволяют пользователю выбрать как пуш оповещения будут доставляться. Его поддерживают различные приложения:
 +
 +  * [[https://docs.ntfy.sh/|ntfy.sh]] (произносится как "notify, нотифай") это сервис оповещений Издатель — Подписчик (англ. publisher-subscriber; pub/sub) поверх HTTP протокола. Он позволяет вам отправлять оповещения на ваш телефон или компьютер с помощью скриптов с любого устройства используя REST API. У него есть приложения для Android и iOS.
 +  * Тоже самое но я хочу использовать Google по какой-то причине: [[https://unifiedpush.org/users/distributors/fcm/|gCompat-UP Distrib (Android)]]
 +  * У меня есть сервер Nextcloud: [[https://unifiedpush.org/users/distributors/nextpush/|NextPush (Android)]]
 +  * Я использую XMPP клиент Conversations: [[https://unifiedpush.org/users/distributors/conversations/|Conversations (Android)]]
 +
 +==== Отправка оповещений через ntfy.sh ====
 +Пример скрипта для отправки пуш нотификаций через [[https://docs.ntfy.sh/|ntfy.sh]] в очередь [[https://ntfy.sh/example|example]] (вам следует создать свою личную очередь): 
 +
 +<code bash>
 +NTFY_QUEUE="example"
 +NEW_CLIENT_IP="192.168.1.42"
 +MSG="Someone joined network
 +
 +A new client with IP $NEW_CLIENT_IP joined.
 +Please check if it's not an intruder."
 +
 +wget -q -O - "ntfy.sh/$NTFY_QUEUE" \
 +  --header "Priority: urgent" \
 +  --header "Tags: ghost" \
 +  --header "Click: http://192.168.1.1/" \
 +  --header "Actions: http, Open Luci, https://192.168.1.1/cgi-bin/ntfy-action.cgi?block=$NEW_CLIENT_IP, clear=true" \
 +  --header "Email: root@OpenWrt" \
 +  --post-data="$MSG"
 +</code>
 +
 +**ВНИМАНИЕ:** опция ''--header'' была добавлена в ''uclient-fetch'' только в июле 2024 поэтому если вы желаете использовать расширенные свойства вам следует установить пакет ''wget-ssl''.
 +
 +==== Смотрите также ====
 +
 +  * [[https://github.com/bitfireAT/webdav-push/|WebDAV Push]]
 +
  • Last modified: 2024/12/17 19:28
  • by stokito