Я написал сценарий Hello World Asterisk AGI с использованием Java. Сценарий работает, как ожидалось, и играет мировой звуковой файл приветствия, но консоль звездочка, хотя дает ошибку:Asterisk Java AGI: utils.c write() возвращенная ошибка: Broken pipe
ERROR[31058]: utils.c:1164 ast_carefulwrite: write() returned error: Broken pipe
Любая идея, что я делаю не так?
Я использую Звездочка-Java-0.3.1.jar и Asterisk 1.8.10.1 ~ DFSG-1ubuntu1
Java класса, как показано ниже:
import org.asteriskjava.fastagi.AgiChannel;
import org.asteriskjava.fastagi.AgiException;
import org.asteriskjava.fastagi.AgiRequest;
import org.asteriskjava.fastagi.BaseAgiScript;
public class AgiHelloWorld extends BaseAgiScript
{
@Override
public void service(AgiRequest arg0, AgiChannel arg1) throws AgiException
{
answer();
streamFile("hello-world");
hangup();
}
}
Да! Это дело. Asterisk генерирует сообщение результата для каждой команды send и ожидает, что это будет обработано скриптом agi. Если скрипт не прочитал возвращенный результат, звездочка выдает ОШИБКУ выше. – Sprinterfreak