Asterisk-Java не может найти fastagi-mapping.properties
Я использую Asterisk, и я хотел бы отправить вызов из моего Java-приложения, а затем использовать сценарий AGI для управления происходящим. Итак, у меня есть первый класс, который связывается с сервером Asterisk и использует OriginateAction
для начала вызова (это хорошо работает) и сервер AGI, который работает и должен обслуживать запросы AGI. Хотя, это не работает, потому что не может найти fastagi-mapping.properties
файл.
Вот мой fastagi-mapping.properties
:
alertcall.agi = AlertCallScript
(Это только один случай.)
В той же папке у меня есть AlertCallScript.java
(а также asterisk-java.jar
), который я собираю так:
javac -cp asterisk-java.jar:. AlertCallScript.java ExamplesAsteriskSettings.java
И затем я запускаю свой сервер AGI, используя это (находится в документе):
java -cp asterisk-java.jar:. -jar asterisk-java.jar
Когда я отправляю свой вызов, я получаю следующую ошибку в выводе сервера AGI:
Jun 13, 2018 6:28:12 AM org.asteriskjava.fastagi.ResourceBundleMappingStrategy loadResourceBundle
INFO: Resource bundle 'fastagi-mapping' not found.
Jun 13, 2018 6:28:12 AM org.asteriskjava.fastagi.internal.AgiConnectionHandler run
SEVERE: No script configured for URL 'agi://localhost/alertcall.agi' (script 'alertcall.agi')
И я не знаю почему... Я изучал это больше часа и, вероятно, совершил глупую ошибку, хотя не могу ее найти.
Заметки:
- Я использую свой путь к классу
java-asterisk.jar:.
иметь возможность иметьasterisk-java
и текущая папка, которая содержитfastagi-mapping.properties
файл, поэтому файл должен быть найден без проблем в пути к классам. - Я уже пытался удалить и восстановить файл, он ничего не изменил.
Пожалуйста, предложите.
1 ответ
Часть проблемы, вероятно, пытается использовать -cp
а также -jar
В то же самое java
команда, это не поддерживается, и есть несколько вопросов на Stackru об этом ( вот один).
Вы можете использовать что-то вроде
java -cp звездочка-java.jar:. DefaultAgiServer
чтобы начать звездочку-Java DefaultAgiServer
конкретно (что и указывает -jar asterisk-java.jar
будет делать в любом случае, если я правильно помню запись в манифесте).