{"id":2747,"date":"2024-09-07T15:08:09","date_gmt":"2024-09-07T13:08:09","guid":{"rendered":"http:\/\/hamspirit.pl\/SQ9MDD\/?p=2747"},"modified":"2024-09-07T15:08:09","modified_gmt":"2024-09-07T13:08:09","slug":"wysylanie-wiadomosci-sms-z-mikrotika-za-pomoca-api-rest-i-curl","status":"publish","type":"post","link":"https:\/\/sq9mdd.hamspirit.pl\/?p=2747","title":{"rendered":"Wysy\u0142anie wiadomo\u015bci SMS z MikroTika za pomoc\u0105 API REST i CURL"},"content":{"rendered":"<p>MikroTik, znany z ogromnej elastyczno\u015bci, oferuje wiele funkcji, w tym mo\u017cliwo\u015b\u0107 wysy\u0142ania wiadomo\u015bci SMS bezpo\u015brednio z routera. Dzi\u0119ki API REST, dodanym w RouterOS 7.x, mo\u017cesz \u0142atwo wysy\u0142a\u0107 wiadomo\u015bci SMS za pomoc\u0105 prostego zapytania HTTP. W tym artykule poka\u017c\u0119, jak skonfigurowa\u0107 t\u0119 funkcj\u0119 i wysy\u0142a\u0107 SMS-y za pomoc\u0105 polecenia <strong>curl<\/strong>.<\/p>\n<p><!--more--><\/p>\n<h3>Wymagania<\/h3>\n<p>Aby wysy\u0142a\u0107 wiadomo\u015bci SMS za pomoc\u0105 MikroTika, potrzebujesz:<\/p>\n<ol>\n<li>Routera MikroTik z systemem <strong>RouterOS 7.x<\/strong>.<\/li>\n<li>Modemu GSM pod\u0142\u0105czonego do routera (np. <strong>lte1<\/strong> lub <strong>usb2<\/strong>).<\/li>\n<li>U\u017cytkownika z odpowiednimi uprawnieniami w MikroTik (wi\u0119cej o tym poni\u017cej).<\/li>\n<li>Narz\u0119dzia <strong>curl<\/strong> na komputerze do wysy\u0142ania zapyta\u0144 HTTP.<\/li>\n<\/ol>\n<h3>Konfiguracja u\u017cytkownika z uprawnieniami<\/h3>\n<p>Najpierw musisz skonfigurowa\u0107 u\u017cytkownika, kt\u00f3ry b\u0119dzie m\u00f3g\u0142 wysy\u0142a\u0107 SMS-y za pomoc\u0105 API REST. Aby to zrobi\u0107:<\/p>\n<ol>\n<li>Zaloguj si\u0119 do MikroTik i przejd\u017a do <strong>System &gt; Users<\/strong>.<\/li>\n<li>Dodaj nowego u\u017cytkownika (np. <code>api_user_sms<\/code>).<\/li>\n<li>Upewnij si\u0119, \u017ce u\u017cytkownik ma przypisane odpowiednie <strong>policy<\/strong>. Konieczne s\u0105: <strong>local<\/strong>, <strong>read<\/strong>, <strong>write<\/strong>, <strong>test<\/strong>, <strong>api<\/strong>, oraz <strong>rest-api<\/strong>.<\/li>\n<li>Zapisz zmiany.<\/li>\n<\/ol>\n<div id=\"attachment_2751\" style=\"width: 770px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-2751\" class=\"wp-image-2751 size-full\" src=\"http:\/\/10.9.48.151\/wp-content\/uploads\/2024\/09\/sms-y.png\" alt=\"\" width=\"760\" height=\"401\" srcset=\"https:\/\/sq9mdd.hamspirit.pl\/wp-content\/uploads\/2024\/09\/sms-y.png 760w, https:\/\/sq9mdd.hamspirit.pl\/wp-content\/uploads\/2024\/09\/sms-y-300x158.png 300w\" sizes=\"auto, (max-width: 760px) 100vw, 760px\" \/><p id=\"caption-attachment-2751\" class=\"wp-caption-text\">Konfiguracja u\u017cytkownika i uprawnie\u0144 do wysy\u0142ki SMS<\/p><\/div>\n<p>Wysy\u0142anie SMS-a za pomoc\u0105 CURL<\/p>\n<p>Kiedy u\u017cytkownik jest ju\u017c skonfigurowany, mo\u017cesz wys\u0142a\u0107 SMS za pomoc\u0105 narz\u0119dzia <strong>curl<\/strong>. Przyk\u0142adowe wywo\u0142anie wygl\u0105da nast\u0119puj\u0105co:<\/p>\n<p>&nbsp;<\/p>\n<pre>curl -k -u api_user_sms:haslo http:\/\/10.9.46.1\/rest\/tool\/sms\/send \\\n-H \"Content-Type: application\/json\" \\\n--data '{\"port\": \"lte1\", \"message\": \"Test SMS z Mikrotika Curlem\", \"phone-number\": \"+48666666666\"}'\n<\/pre>\n<h4>Wyja\u015bnienie komendy:<\/h4>\n<ul>\n<li><strong>-k<\/strong> \u2013 opcja ignorowania weryfikacji certyfikatu SSL (przy po\u0142\u0105czeniu nieszyfrowanym).<\/li>\n<li><strong>-u api_user_sms:haslo <\/strong>\u2013 uwierzytelnienie za pomoc\u0105 loginu i has\u0142a u\u017cytkownika MikroTik.<\/li>\n<li><strong><a href=\"http:\/\/10.9.46.1\/rest\/tool\/sms\/send\" target=\"_new\" rel=\"noopener\">http:\/\/10.9.46.1\/rest\/tool\/sms\/send<\/a><\/strong> \u2013 adres REST API MikroTika.<\/li>\n<li><strong>-H &#8222;Content-Type: application\/json&#8221;<\/strong> \u2013 nag\u0142\u00f3wek, kt\u00f3ry informuje, \u017ce dane przesy\u0142ane s\u0105 w formacie JSON.<\/li>\n<li><strong>&#8211;data<\/strong> \u2013 przesy\u0142ane dane, zawieraj\u0105ce port modemu GSM, wiadomo\u015b\u0107 SMS oraz numer telefonu odbiorcy.<\/li>\n<\/ul>\n<h3>Wymagane parametry:<\/h3>\n<ol>\n<li><strong>port<\/strong> \u2013 Nazwa interfejsu modemu GSM, np. <code>lte1<\/code> lub <code>usb2<\/code>.<\/li>\n<li><strong>message<\/strong> \u2013 Tre\u015b\u0107 wiadomo\u015bci SMS.<\/li>\n<li><strong>phone-number<\/strong> \u2013 Numer telefonu odbiorcy w formacie mi\u0119dzynarodowym (np. +48 dla Polski).<\/li>\n<\/ol>\n<h3>Uprawnienia<\/h3>\n<p>Podczas testowania okaza\u0142o si\u0119, \u017ce u\u017cytkownik musi mie\u0107 przypisane nast\u0119puj\u0105ce uprawnienia: <strong>local<\/strong>, <strong>read<\/strong>, <strong>write<\/strong>, <strong>test<\/strong>, <strong>api<\/strong>, <strong>rest-api<\/strong>. Bez tych uprawnie\u0144 otrzymasz b\u0142\u0105d \u201enot enough permissions\u201d.<\/p>\n<h3>Podsumowanie<\/h3>\n<p>Dzi\u0119ki API REST w MikroTik, mo\u017cesz \u0142atwo integrowa\u0107 router z innymi systemami i wysy\u0142a\u0107 SMS-y bezpo\u015brednio z poziomu routera, wykorzystuj\u0105c CURL lub inne narz\u0119dzia HTTP. Jest to bardzo wygodne rozwi\u0105zanie, gdy potrzebujesz zdalnie monitorowa\u0107 i zarz\u0105dza\u0107 urz\u0105dzeniami, np. do wysy\u0142ania alert\u00f3w lub powiadomie\u0144 SMS.<\/p>\n<p>Dzi\u0119ki prostemu zapytaniu, jak przedstawione powy\u017cej, mo\u017cesz wykorzysta\u0107 pe\u0142ny potencja\u0142 MikroTika, aby automatyzowa\u0107 wysy\u0142anie SMS-\u00f3w z routera.<\/p>\n<p>R.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>Podoba Ci si\u0119 to co robi\u0119? Mo\u017ce Ci si\u0119 to przyda\u0142o? Doce\u0144 moje starania&#8230;<\/p>\n<p><a href=\"https:\/\/buycoffee.to\/sq9mdd\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" style=\"width: 214px; height: 56px;\" src=\"https:\/\/buycoffee.to\/img\/share-button-dark.png\" alt=\"Postaw mi kaw\u0119 na buycoffee.to\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>MikroTik, znany z ogromnej elastyczno\u015bci, oferuje wiele funkcji, w tym mo\u017cliwo\u015b\u0107 wysy\u0142ania wiadomo\u015bci SMS bezpo\u015brednio z routera. Dzi\u0119ki API REST, dodanym w RouterOS 7.x, mo\u017cesz \u0142atwo wysy\u0142a\u0107 wiadomo\u015bci SMS za pomoc\u0105 prostego zapytania HTTP. W tym artykule poka\u017c\u0119, jak skonfigurowa\u0107 t\u0119 funkcj\u0119 i wysy\u0142a\u0107 SMS-y za pomoc\u0105 polecenia curl.<\/p>\n","protected":false},"author":2,"featured_media":2755,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16,18,22],"tags":[],"class_list":["post-2747","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-informacje","category-mikrotik","category-software"],"_links":{"self":[{"href":"https:\/\/sq9mdd.hamspirit.pl\/index.php?rest_route=\/wp\/v2\/posts\/2747","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sq9mdd.hamspirit.pl\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sq9mdd.hamspirit.pl\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sq9mdd.hamspirit.pl\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/sq9mdd.hamspirit.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2747"}],"version-history":[{"count":0,"href":"https:\/\/sq9mdd.hamspirit.pl\/index.php?rest_route=\/wp\/v2\/posts\/2747\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sq9mdd.hamspirit.pl\/index.php?rest_route=\/wp\/v2\/media\/2755"}],"wp:attachment":[{"href":"https:\/\/sq9mdd.hamspirit.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2747"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sq9mdd.hamspirit.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2747"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sq9mdd.hamspirit.pl\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2747"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}