Мне нужна помощь при выполнении команд asterisk cli с использованием C#. Я могу открыть окно терминала и запустить звездочку (см. Код ниже), но не знаю, как выполнить команду «sip show peers» в CLI. Есть ли способ сделать это?выполнить команду asterisk cli C#
using System;
using System.Diagnostics;
namespace runGnomeTerminal
{
class MainClass
{
public static void ExecuteCommand(string command)
{
Process proc = new System.Diagnostics.Process();
proc.StartInfo.FileName = "/bin/bash";
proc.StartInfo.Arguments = "-c \" " + command + " \"";
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.RedirectStandardOutput = true;
proc.Start();
while (!proc.StandardOutput.EndOfStream) {
Console.WriteLine (proc.StandardOutput.ReadLine());
}
}
public static void Main (string[] args)
{
ExecuteCommand("gnome-terminal -x bash -ic 'cd $HOME; sudo asterisk -vvvvr; bash'");
}
}
}
Вы должны подать вход в 'asterik' с помощью ввода с клавиатуры (' stdinput')? Вы можете использовать 'StreamReader' вашего созданного процесса для ввода ввода в этот процесс (свойство StandardInput), не забудьте установить' RedirectStandardInput' в 'true'. Если команды передаются через аргументы командной строки оболочки, вы должны изменить вызов 'ExecuteCommand'. –