有人使用Twilio的SMS部分设置了Rohos 2FA软件吗?我已经将Powershell更新为正确的API挂钩,并且当我测试错误未得到授权时,但是如果直接转到挂钩,则可以在脚本中使用相同的信息并访问XML信息。我不确定我缺少什么。我是使用Twilio和Rohos的新手。只是想把你的头包起来。 PS脚本如下。
任何帮助将不胜感激。我需要完成SMS部分的配置。系统正在运行,但是我只能使用“紧急访问”部分来回答安全问题。需要启动并运行SMS。 显然,我在脚本中阻止了帐号和密码。 感谢您的协助!
if ($NotifyBySms)
{
# If phone is blank
if ($AdUserName.mobile -eq $null)
{
SaveStatus -StatusText "Error $($AdUserName.sAMAccountName) - phone is empty."
$cntNotificationsNotSent++
}
# If phone is not blank - send SMS
else
{
$SmsNotificationText = "OTP code is $($otp)"
#https://api.twilio.com/2010-04-01/Accounts/xxxxxxxxxxxxxxxxxx:xxxxxxxxxxxxxxxxxxx + to=$($AdUserName.mobile)+text=$($SmsNotificationText)
#https://smsc.ru/sys/send.php?login=xxxxxxx&psw=xxxxx&phones=+$($AdUserName.mobile)&mes=$($SmsNotificationText)
$SmsGatewayUrl = "https://api.twilio.com/2010-04-01/Accounts/xxxxxxxxxxxxxxxxxxxxxxxxxx/Messages.Json&user=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&password=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&to=$($AdUserName.mobile)&text=$($SmsNotificationText)"
$RequestResult = Invoke-WebRequest -Uri $SmsGatewayUrl
if ($RequestResult.Content -match "^OK")
{
SaveStatus -StatusText "SMS OK to $($AdUserName.mobile) RET: $($RequestResult.Content)."
#do nothing
}
else
{
SaveStatus -StatusText "SMS Error: $($RequestResult.Content)."
return -1
}
}
}
return $cntNotificationsNotSent
}
答案 0 :(得分:0)
这里是Twilio开发人员的传播者。
我以前从未使用过powershell,所以我没有能力告诉您确切的操作方法。
但是,我发现请求发送SMS的方式存在一些问题。这是您需要更新的内容:
POST
请求发送到消息资源,因此请在您的请求中添加-Method 'POST'
-Authentication Basic
,然后使用帐户sid和auth令牌创建一个PSCredential
对象,然后将其作为-Credential
选项传递您需要将消息的参数作为请求正文的一部分发送,而不是在URL中发送,此外,您没有正确的参数,您需要To
, From
和邮件的Body
,如下所示:
$Body = @{
To = $AdUserName.mobile
From = $YourTwilioNumber
Body = $SmsNotificationText
}
然后将-Body $Body
添加到您的请求中。
我希望这可以帮助您构造URL并请求您发送SMS消息。