Asterisk AGI AWS "ProfileNotFound: профиль конфигурации (foo) не найден" - PullRequest
0 голосов
/ 24 февраля 2020

Чтобы дать вам представление, у меня есть сценарий bash, запускаемый из Asterisk через Python AGI, который работает с Amazon Polly и генерирует файл .sln. У меня это работает на сервере CentOS, но я пытаюсь перенести его на сервер Debian.

Это строка кода, которая вызывает у меня проблемы

aws polly synthesize-speech --output-format pcm --debug --region us-east-2 --profile asterisk --voice-id $voice --text "$1" --sample-rate 8000 $filename.sln >/dev/null

Я продолжаю получать это ошибка

ProfileNotFound: The config profile (foo) could not be found

Это пример моего /root/.aws/config

[default]
region = us-east-2
output = json

[profile asterisk]
region = us-east-2
output = json

[asterisk]
region = us-east-2
output = json

/root/.aws/credentials выглядит аналогично, но с ключами в них. Я даже пытался сохранить все эти данные в переменных окружения и перейти по умолчанию, чтобы обойти это, но затем у меня возникает проблема, когда он не может найти учетные данные или должен определить регион (получил это путем определения встроенного региона ). Это похоже на то, что Asterisk каким-то образом запускает этот отдельный сеанс, в который я не могу получить файл учетных данных или файл конфигурации / учетных данных. Который из исследований и как я настроил это в настоящее время работает как Root, так что это не должно быть проблемой.

Любая помощь очень ценится, спасибо!

1 Ответ

1 голос
/ 24 февраля 2020

Asterisk должен быть запущен под пользователем asterisk для безопасности.

Скорее всего, на вашей предыдущей установке он был под root, так что все работало.

Убедитесь, что вы установили AWS Polly для пользователя звездочки или создаете запись sudo и используете sudo.

Если вы используете системную команду, у нее также нет оболочки (bash), поэтому вы Запустите его через bash скрипт и настройте PATH и другие необходимые переменные самостоятельно.

...