我正在为我们的产品开发一项功能,允许用户通过Twilio发送短信,我们处理所有帐户问题。我们拥有主账户,所有客户都是我们的子账户。
为了不必跟踪1000多个身份验证令牌,我们决定使用我们的主帐户凭据发送短信,但我们仍然希望它在子帐户下汇总。根据Twilio的说法,这应该不是问题。
我的问题是,他们提供的c#库的文档很少(我发现)。我不确定我所做的是否是完成上述描述的正确方法,因为我在试用帐户上直到项目完成并且可以推广到生产我无法测试。< / p>
var twilio = new TwilioRestClient("Master SID", "Master Auth Token");
var response = twilio.SendSmsMessage(sender, recipient.ConvertToE164Format(), message, null, "Subaccount SID");
如果在此处传递子帐户SID将发送消息,就好像我已登录其帐户并将其发送一样,对此过载的评论并不十分清楚。
// applicationSid:
// Twilio will POST SmsSid as well as SmsStatus=sent or SmsStatus=failed to
// the URL in the SmsStatusCallback property of this Application. If the StatusCallback
// parameter above is also passed, the Application's SmsStatusCallback parameter
// will take precedence.
所有帐户的回调网址都是相同的,因此我不需要/关心该值。
简短版本: 如果我使用我的主帐户详细信息登录但是在SendSmsMessage()方法中传递子帐户SID,该消息来自哪个帐户?
答案 0 :(得分:0)
Twilio的支持终于回到了我身边,并证实了我担心这不会起作用。我必须将子帐户信息拉下来并使用新凭证重新实现twilioRestClient,我希望我可以通过不执行来逃避。只需几行。
var twilio = new TwilioRestClient("Master SID", "Master Auth Token");
var subAccount = twilio.GetAccount("SubAccount SID");
var subAccountClient = new TwilioRestClient(subAccount.Sid, subAccount.AuthToken);
var response = subAccountClient.SendSmsMessage(sender, recipient.ConvertToE164Format(), message);
return response.Sid;