ارسال اس ام اس از میکروتیک

اسکریپت ارسال SMS از Mikrotik

میکروتیک در سال 1996 توسط دو دانشجوی MIT آمریکا در شرق اروپا در کشور لتویا بصورت سیستم عاملی که روی PC نصب میشد، بوجود آمد و در سراسر جهان رشد کرد. سادگی کار با روترهای میکروتیک در مدت زمان کوتاهی آن را به روتری محبوب نزد کاربران شبکه تبدیل کرد.

خرید SMS Panel مجهز به سرویس REST API (URL)

همه نسخ سامانه پیامکی سان وی دارای پشتیبانی کامل از SOAP WebService و REST API می باشند، لذا در صورت نداشتن حساب کـاربری، شـما می توانید با مراجعه به آدرس https://sms.sunwaysms.com/shop با کوپن تخفیف ویژه ۵۰ درصدی با نام Mikrotik نسبت به خرید اس ام اس پنل اقدام بفرمایید.

تنظیمات Script میکروتیک برای ارسال اس ام اس

برای ارسال SMS از میکروتیک یا می بایست از GSM Modem استفاده کرده و یا از طریق ایجاد و فراخوانی Script با استفاده از سامانه های اینترنتی این کار را انجام دهید. برای ایجاد اسکریپت ارسال پیامک با WinBox وارد شده و به مسیر زیر مراجعه کنید :

System → Scripts
ارسال اس ام اس در میکروتیک

در این بخش نیاز به آدرس URL وب سرویس پیامکی دارید که می بایست با اطلاعاتی که در هنگام خرید وب سرویس در اختیارتان قرار گرفته آن را تکمیل کنید. پس آدرس زیر را کپی کرده که در ادامه در مثال ها استفاده می نماییم.

/tool fetch ascii=no mode=https keep-result=no url="http://sms.sunwaysms.com/SMSWS/HttpService.ashx?service=SendArray&to=$ToNum&from=$FromNum&message=$TextMsg&username=$MyUser&password=$MyPass" ;

پس از ساخت اسکریپت آن را از دو طریق می توان اجرا کرد که به توضیح ساخت و اجرای هریک با ذکر مثال می پردازیم.

ساخت اسکریپت

اسکریپت ها معمولا از دو قسمت تشکیل شده اند، یکی شرط و دیگری عملیات محقق شدن شرط.

مثال : در این مثال فرض می کنیم که برق تجهیزات شبکه ما از UPS تامین می شود ولی میخواهیم وقتی که حضور نداریم از زمان قطع برق مطلع شویم. برای این منظور باید یک دستگاه تحت شبکه که خاموش شدن آن از اهمیت زیادی برخوردار نیست را به برق شهر متصل کرده و اسکریپت زیر را روی روتر میکروتیک برای IP آدرس آن دستگاه بنویسیم:

#SunwaySMS Script For Sending SMS From Mikrotik

:log info message=("start sending sms message");

:local HOST "192.168.1.51"
:local PINGCOUNT "5"
:local dateM [/system clock get date] 
:local timeM [/system clock get time] 
:local MyUser "USER" 
:local MyPass "PASS"
:local FromNum "SMSNUMBER"
:local ToNum " RECIPIENT"
:local TextMsg "SunWay%0aBargh%20Raft%0aDate:$dateM%0aTime:$timeM"
:if ([/ping $HOST count=$PINGCOUNT] = 0) do={
/tool fetch ascii=no mode=https keep-result=no url="http://sms.sunwaysms.com/SMSWS/HttpService.ashx?service=SendArray&to=$ToNum&from=$FromNum&message=$TextMsg&username=$MyUser&password=$MyPass"}

:log info message=("sms message was sent successfully"); 

حال باید مقادیر ذیل را که در هنگام دریافت خرید سامانه در اختیار شما قرارداده شده است در Script جایگزین:

USERنام کاربری سامانه
PASSپسورد سامانه
SMSNUMBERشماره فرستنده که همراه با نام کاربری و پسورد در اختیارتان قرار میگیرد

دو متغیر RECIPIENT و TextMsg با توجه به اینکه تمایل دارید پیام برای چه کسانی ارسال شود و اینکه متن پیام چه باشد، توسط شما پر می شوند.

RECIPIENTشماره یا شماره های گیرنده که باید با (,) از هم جدا شوند
به عنوان مثال:
09334485858,09120000000
TextMsgپیامی است که میکروتیک SMS می کند. دقت داشته باشید که این متغیر خود می تواند از ترکیب متغیرهای دیگر درست شود

نکته ۱ : تمام متغیر های فوق باید بین دو " قرار گیرند. مثلا اگر نام کاربری شما sun2046 هست باید بصورت زیر جایگزین شود

:local MyUser "sun2046"

نکته ۲ : برای Enter زدن در متن پیامک از %0a و برای Space از %20 استفاده کنید.

نکته ۳ : در مثال فوق متن پیامک که خود یک متغیر است، از ترکیب متغیرهای دیگر مانند تاریخ و ساعت وعبارات ثابتی ایجاد شده و در نهایت در آدرس URL با عنوان $TextMsg جایگزین شده است.

تنظیمات ارسال اس ام اس در میکروتیک
اسکریپت ارسال اس ام اس در میکروتیک

نکته : اگر میخواهید از این اسکریپت در ابزارهای میکروتیک مانند Netwatch ویا TrafficeMonitor (که به توضیح آنها در ادامه می پردازیم) استفاده کنید، حتما باید تیک Don’t Require Permissions را فعال کنید.

استفاده از Script در Schedule

حال باید طی یک برنامه زمانبندی شده Script ساخته شده را اجرا کنیم تا هرگاه شرط برقرار شد SMS ارسال شود.

برای ساخت Schedule به مسیر System Scheduler می رویم و با زدن دکمه + یک Schedule می سازیم.
پارامترهای صفحه Schedule عبارتند از :

Name : یک نام به دلخواه
Start Date : تاریخ شروع این برنامه زمانبندی
Start Time : ساعت شروع این برنامه زمانبندی
Interval : هر چند وقت یکبار این برنامه اجرا شود
On Event : دقیقا نام اسکریپتی که در مرحله قبل ساختیم

اسکریپت ارسال اس ام اس در میکروتیک

با انجام تنظیمات فوق این Schedule بعد از Apply کردن شروع به کار کرده و هر ۱۰ دقیقه یک بار اسکریپت Bargh را اجرا می کند و اگر IP مورد نظر Ping نشود پیامک ارسال خواهد شد.

نکته ۱ : اگر نیاز داشتید که Schedule روزی یکبار اجرا شود باید Interval = 1d 00:00:00 قرا داده شود.

نکته ۲ : شما می توانید Script مورد نظر خود را داخل On Event نیز بنویسید که در این صورت نیاز به نوشتن Script در مرحله قبل نمی باشد.

استفاده از Script در Netwatch

Netwatch ابزاری است که سیستم های شبکه را پینگ می کند و می تواند هم درزمان Down شدن سرویس و هم زمانی که مجددا سرویس UP می شود به ما اخطار دهد. باید در نظر داشته باشیم ابزار Netwatch خود شرط است و در اسکریپت دیگر نیاز به شرط نداریم.

نمونه اسکریپت برای استفاده در Netwatch:

نام اسکیریپت : Bargh Raft

#SunwaySMS Script For Sending SMS From Mikrotik

:log info message=("start sending sms message");

:local dateM [/system clock get date] 
:local timeM [/system clock get time] 
:local MyUser "USER" 
:local MyPass "PASS"
:local FromNum "SMSNUMBER"
:local ToNum " RECIPIENT"
:local TextMsg "SunWay%0aBargh%20Raft%0aDate:$dateM%0aTime:$timeM"
/tool fetch ascii=no mode=https keep-result=no url="http://sms.sunwaysms.com/SMSWS/HttpService.ashx?service=SendArray&to=$ToNum&from=$FromNum&message=$TextMsg&username=$MyUser&password=$MyPass"

:log info message=("sms message was sent successfully"); 

نام اسکیریپت : Bargh Amad

#SunwaySMS Script For Sending SMS From Mikrotik

:log info message=("start sending sms message");

:local dateM [/system clock get date] 
:local timeM [/system clock get time] 
:local MyUser "USER" 
:local MyPass "PASS"
:local FromNum "SMSNUMBER"
:local ToNum " RECIPIENT"
:local TextMsg "SunWay%0aBargh%20Amad%0aDate:$dateM%0aTime:$timeM"
/tool fetch ascii=no mode=https keep-result=no url="http://sms.sunwaysms.com/SMSWS/HttpService.ashx?service=SendArray&to=$ToNum&from=$FromNum&message=$TextMsg&username=$MyUser&password=$MyPass"

:log info message=("sms message was sent successfully"); 

در اسکریپت فوق نیز متغیرها مانند مرحله قبل جایگزین می شوند و همانطور که ملاحظه می کنید شرطی در اسکریپت موجود نمی باشد و فقط عبارت Bargh Raft و Bargh Amad در متن TextMsg تغییر کرده است.

ساخت Netwatch:

برای ساخت Netwatch که در حقیقت شرط اسکریپت فوق می باشد به مسیر Tool Netwatch می رویم و با زدن دکمه + یک Netwatch جدید می سازیم.

صفحه Netwatch دارای سه Tab (بخش) می باشد:

تب اول Host :

تنظیمات ارسال پیامک میکروتیک

Host : آدرس سیستمی که باید مانیتور شود
Interval : هر چند وقت یکبار چک شود
Timeout : چند میلی ثانیه به بالا تام اوت محسوب شود

تب دوم UP:

تنظیمات ارسال پیامک میکروتیک

در قسمت On Up باید دقیقا نام اسکریپتی را بنویسیم که در موقع UP شدن سرویس باید برای ما پیامک ارسال کند(Bargh Amad)

تب سوم Down:

تنظیمات ارسال پیامک میکروتیک

در قسمت On Down باید دقیقا نام اسکریپتی را بنویسیم که در موقع Down شدن سرویس باید برای ما پیامک ارسال کند (Bargh Raft)

نکته : در قسمت On Up و On Down می توانید مستقیما اسکریپت بنویسید.

استفاده از Script در Traffic Monitor

ابزار Traffic Monitor به شما این امکان را می دهد که در شرایطی که میزان پهنای باند روی یکی از اینترفیس ها بیشتر یا کمتر از حدی شد به شما پیام بدهد. در ساخت Script برای این ابزار نیز نیاز به شرط نمی باشد و فقط کافی است پس از انجام تنظیمات این ابزار نام دقیق Script ساخته شده در قسمت On Event بنویسید.

نمونه اسکریپت:

نام اسکیریپت : BW Over Load

#SunwaySMS Script For Sending SMS From Mikrotik

:log info message=("start sending sms message");

:local dateM [/system clock get date] 
:local timeM [/system clock get time] 
:local MyUser "USER" 
:local MyPass "PASS"
:local FromNum "SMSNUMBER"
:local ToNum " RECIPIENT"
:local TextMsg "SunWay%0aBW%20Over%20Load%0aDate:$dateM%0aTime:$timeM"
/tool fetch ascii=no mode=https keep-result=no url="http://sms.sunwaysms.com/SMSWS/HttpService.ashx?service=SendArray&to=$ToNum&from=$FromNum&message=$TextMsg&username=$MyUser&password=$MyPass"

:log info message=("sms message was sent successfully"); 
اسکریپت ارسال اس ام اس در میکروتیک

با تنظیمات فوق چنانچه میزان Send روی Ether1 بیش از 8M شود اسکریپت BW Over Load اجرا شده و پیام برای شما ارسال می شود.

5 رای ثبت شده

سایر آموزش‌ها و راهنماها

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

فهرست مطالب

پشتیبانی سامانه پیامک

خیلی زود با شما تماس خواهیم گرفت

از طریق تلفن و واتس‌اپ هم می‌توانید با ما تماس بگیرید

سان‌وی
ویرایش محتوا

در سریع‌ترین زمان پاسخ سوال شما را برای‌تان ارسال خواهیم کرد

ویرایش محتوا

سامانه پیامک و وب‌سرویس هدیه

در کمتر از یک دقیقه یک سامانه پیامک و وب‌سرویس با ۳۰.۰۰۰ ریال اعتبار ارسال پیامک هدیه بگیرید