پاسخ : میکروتیک اسکریپتینگ
واسه فهرست رزرو شد !
ببخشید که مطالب اصلی مجبورم کمی صبر کنم و بعد بزارم
بهتره ی توی پست های جداگانه باشه
پاسخ : میکروتیک اسکریپتینگ
خوب برای نوشتن یه اسکریپت جدید به وسیله winbox میتونید به قسمت زیر مراجعه کنید :
مراجعه کنید و روی دکمه ی Add کلیک کنید
که خوب مشخص هست هر قسمت برای چی هست
Name : که نام اسکریپت هست
Owner : که یوزری هست که اسکریپت رو نوشته
Policy : مجوز های این اسکریپت هست
Last Time Started : آخرین باری که اسکریپت اجرا شده
Run Count : شمارنده مربوط به تعداد اجرای اسکریپت هست
Source : که برنامه ــمون رو باید اینجا بنویسیم
و برای اجرای اسکریپت با winbox میتونید با انتخاب اسکریپت و کلیک روی Run Script اسکریپت مورد نظر رو اجرا کنید (که در این صورت شما اگه قرار بود چیزی رو به عنوان خروجی چاپ کنید نتیجه رو نمیتونید ببینید و باید اون رو با ترمینال اجرا کنید)
برای اجرای اسکریپت موردنظر با ترمینال میتونید به آدرس زیر مراجعه کنید :
با دستور زیر میتونید لیست اسکریپت ها رو ببینید :
و با دستور زیر هم میتونید اسکریپت رو اجرا کنید :
که به جای scriptname باید نام اسکریپت رو بنویسید
پاسخ : میکروتیک اسکریپتینگ
خوب از اونجایی که این هم یه جورایی یه زبان برنامه نویسی هست میریم سراغ یکی از آداب آموزش برنامه نویسی :d یعنی چاپ جمله جادویی آموزش برنامه نویسی :d
خوب بر اساس چیزایی که توی پست قبل گفتم یه اسکریپت جدید ایجاد کنید و در قسمت source عبارت زیر رو بنویسید :
و اسکریپت رو از طریق ترمینال اجرا کنید
خروجی چاپ عبارت Hello World ! هست !
کلا برای نمایش یه عبارت میتونید از دستور put استفاده کنید
نکنه : تمامی دستورات توی میکروتیک با علامت : (دو نقطه) شروع می شوند
پاسخ : میکروتیک اسکریپتینگ
دوستان کسی می تونه راهنمایی کنه که مقادیر یک Queue مثلا به نام Ali را چجوری میشه از طریق اسکریپت توی یک فایل ذخیره کرد؟
پاسخ : میکروتیک اسکریپتینگ
با سلام خدمت دوستان و اساتید
من در یک شرکت اینترنت رو از دو طریق hotspot و *** coonection به کاربران شبکه ارائه دادم و ردیوس سرور هم دارم
حالا مشکلی که دارم اینه که میخوام فقط یک سری از کاربران که مثلا اسم اونها با A شروع میشه فقط بتونن از *** استفاده کنن
یا کلا وصل نشن یا اگر وصل شدن داخل خود ppp active user مثلا remove بشن
اگر اسکریپتی باشه برای کل این مطلب یا حداقا بتونم اسم کاربرای متصل رو چک کنم و اونایی که با A شروع نمی شن رو remove کنم
ممنونم
پاسخ : میکروتیک اسکریپتینگ
نقل قول:
نوشته اصلی توسط
nokhodsiah2001
با سلام خدمت دوستان و اساتید
من در یک شرکت اینترنت رو از دو طریق hotspot و *** coonection به کاربران شبکه ارائه دادم و ردیوس سرور هم دارم
حالا مشکلی که دارم اینه که میخوام فقط یک سری از کاربران که مثلا اسم اونها با A شروع میشه فقط بتونن از *** استفاده کنن
یا کلا وصل نشن یا اگر وصل شدن داخل خود ppp active user مثلا remove بشن
اگر اسکریپتی باشه برای کل این مطلب یا حداقا بتونم اسم کاربرای متصل رو چک کنم و اونایی که با A شروع نمی شن رو remove کنم
ممنونم
باسلام، با استفاده از API در C# نوشتم که دستورات و طریقه کارکرد مشخص هست و می توانید به MikroTik scripting language تبدیل و استفاده کنید.
کد:
List<Map<String, String>> users = con.execute("/ip/hotspot/active/print");
for (Map<String, String> att : users) {
string id = att.get(".id");
string name = att.get(".name");
name = name.Text.Substring(0, 1);
if(name != "A") {
con.execute("/ip/hotspot/active/remove .id=" + id);
}
}
پاسخ : میکروتیک اسکریپتینگ
درود بر شما
سپاس از پاسختون و راهنماییتون
در خود میکروتیک اگر اسکریپتی بنویسیم بار کار کمتر نمیشه؟
اگر میشه در نوشتن اسکریپت راهنمایی هم بفرمایید
پاسخ : میکروتیک اسکریپتینگ
نقل قول:
نوشته اصلی توسط
nokhodsiah2001
درود بر شما
سپاس از پاسختون و راهنماییتون
در خود میکروتیک اگر اسکریپتی بنویسیم بار کار کمتر نمیشه؟
اگر میشه در نوشتن اسکریپت راهنمایی هم بفرمایید
کد:
:foreach i in=[/ip hotspot active find] do={
:local user [ip hotspot active get $i user]
:local userid [ip hotspot active get $i id]
:local first [:pick $user 0 [:find $user "a" 0]];
:if ($first != false) do={ /ip hotspot active remove id=$userid }
}
پاسخ : میکروتیک اسکریپتینگ
درود برشما
وسپاس فراوان از زمانی که گذاشتید
پاینده و شاد باشید
سال نو را پیشاپیش شادباش میگویم