MikroTik и c # API: получить радио-имя с помощью команды:: put - PullRequest
0 голосов
/ 11 ноября 2018

У меня есть проблема. Я хочу получить радио-имя через C # API для Winbox. В терминале winboxs работает команда :put [/interface wireless get [/interface wireless find default-name=wlan1] radio-name], но не в C # api. Я катался на этом, в API я не могу использовать знаки [], но я не знаю, как он пишет без него. Я пытался так:

mikrotik.Send("/put ", true);
mikrotik.Send(".system identity get name", true);
foreach (string h in mikrotik.Read())
    {
         mkResult += h;
    }

l_identify.Text = mkResult;

но это не работает. Каждый раз, когда я получаю это:

! Trap = категория = 0 = сообщение = нет такой команды или директивы (положить [)! Trap = сообщение = нет такого префикса команды! Сделано

Пожалуйста, помогите: <</p>

PS: простите за мой английский: P

1 Ответ

0 голосов
/ 13 ноября 2018

Вы отправляете неправильные команды на устройство.

Вам необходимо использовать это:

/interface/wireless/print
=.proplist=radio-name
?default-name=wlan1

.proplist содержит список полей, которые должны быть возвращены, ?default-name=wlan1 является условиемдля фильтрации.

Подробнее о синтаксисе API Mikrotik можно узнать на официальной вики .

.
...