sipp генерирует случайную строку в сценарии - PullRequest
0 голосов
/ 02 мая 2011

Я создал программу, которая использует sipp для генерации sip-трафика. хотел бы генерировать случайный номер для назначения в случайном порядке и во время выполнения без инъекции из внешнего CSV. В настоящее время я делаю то же самое для инициатора, используя команду [service]. Есть ли другая команда, которую я могу использовать из командной строки? Можно ли сгенерировать случайное число изнутри сценария?

1 Ответ

3 голосов
/ 10 июня 2011

Я не думаю, что можно заставить SIPp напрямую генерировать случайное число.Но если у вас есть доступ к обычным утилитам Unix, вы можете предоставить его через командную строку.

Но я не уверен, что вы хотите сделать.

Если вы хотите выполнить один вызов, вы можете указать случайный пункт назначения в командной строке благодаря параметру set командной строки.

Пример:

mydest=`n=8; rand -M $((10**${n})) | awk "{ printf(\"%0${n}u\", \\$1) }"`
sipp ... -set service_route mydest $mydest

(замените n = 8 числомцифр, которые вы хотите. Если вам не нужно фиксированное количество цифр, просто удалите часть awk)

Затем вы объявляете свою переменную в начале скрипта SIPp:

<Global variables="mydest" />
<Reference variables="mydest" />

После этого вы можете поместить его в SIP-сообщения, используя [$mydest].

Но если вы хотите выполнить множество вызовов с одного запуска SIPp, вы можете сгенерировать на лету файл CSV со случайными числами.1021 *

Пример:

n=8; echo "RANDOM" > zrandom; rand -e -N 1000000 -d "\n" -M $((10**${n})) | awk "{ printf(\"%0${n}u\n\", \$1) }" >> zrandom
sipp ... -inf zrandom

(то же самое замечание: замените n = 8 на нужное количество цифр. Если вам не нужно фиксированное количество цифр, просто удалите часть awk)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...