В моей системе установлен интерфейс командной строки Twilio, и я изменил политику выполнения сценариев, чтобы разрешить его выполнение. Я пытаюсь вызвать twilio api:core:messages:create из шага powershell задания базы данных, работающего от имени меня. Команда работает безупречно из окна powershell, но в задании SQL Server я получаю:
'Термин 'twilio' не распознается как имя командлета, функции, файла сценария или исполняемой программы. Проверьте правильность написания имени или, если путь был включен, проверьте правильность пути и повторите попытку. '
Есть предложения? Что я упускаю?
Для дальнейшего уточнения согласно Дейлу: я создал задание агента SQL Server с помощью агента SQL Server, и у него есть один шаг типа Powershell с этим кодом:
twilio api:core:messages:create --from "+1XXXXXXXXXX" --to "+1XXXXXXXXXXXX" --body "Twilio Test"
Инструкция работает нормально при прямом запуске в Powershell, но выдает указанную выше ошибку при запуске задания.
Спасибо!
Вот оно: twilio api:core:messages:create --from "+1XXXXXXXXXX" --to "+1XXXXXXXXXX" --body "Тест Twilio" с номерами отправителя и получателя и телом сообщения. Он попадает в powershell, но затем выдает указанную выше ошибку.
Похоже, задание SQL Server видит другую переменную среды
PATH
, чем ваши интерактивные сеансы. (a) Либо добавьте каталог dir. в которомtwilio
находится на машинном уровнеPATH
переменной или (b), что менее предпочтительно, использовать полный путь задания путь включает пробелы,"..."
-заключить его в кавычки и добавить перед&
, оператор вызова )+1 за использование Powershell, а не за эти ужасные процедуры
sp_OA
. Я думаю, вам нужноInstall-Module -Name twilio-powershell-module
, возможно, добавить-AllUsers