Asterisk-Java не может найти fastagi-mapping.properties - PullRequest
0 голосов
/ 13 июня 2018

Я использую Asterisk, и я хотел бы отправить вызов из моего Java-приложения, а затем использовать сценарий AGI для управления происходящим.Итак, у меня есть первый класс, который связывается с сервером Asterisk и использует OriginateAction для запуска вызова (это хорошо работает) и сервер AGI, который работает и должен обслуживать запросы AGI.Однако, он не работает, потому что не может найти файл fastagi-mapping.properties.

Вот мой fastagi-mapping.properties:

alertcall.agi = AlertCallScript

(у него только один случай.)

В той же папке у меня есть AlertCallScript.javaasterisk-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')

И я не знаю почему ... ЯЯ искал это более часа, и я, вероятно, допустил глупую ошибку, хотя не могу ее найти.

Примечания:

  • Я используюМой classpath java-asterisk.jar:. должен иметь asterisk-java и текущую папку, которая содержит файл fastagi-mapping.properties, поэтому файл должен быть найден без проблем в пути к классам.
  • Я уже пробовалчтобы удалить и восстановить файл, он ничего не изменил.

Пожалуйста, предложите.

1 Ответ

0 голосов
/ 14 июня 2018

Часть проблемы, вероятно, связана с попыткой использовать -cp и -jar в одной и той же команде java, это не поддерживается, и есть несколько вопросов по Stackoverflow по этому поводу ( здесь один).

Вы можете использовать что-то вроде

java -cp asterisk-java.jar :.DefaultAgiServer

для запуска DefaultAgiServer в asterisk-java (именно это и будет делать указание -jar asterisk-java.jar, если я правильно запомнил запись в манифесте).

...