无法通过twilio接收短信

时间:2014-06-21 08:43:48

标签: salesforce twilio visualforce apex

我有twilio电话号码,视觉强制页面和Controller。我有参考Document我已经关注。我发送sms via twilio但无法接收短信。客户发送短信至twilio号码可以恢复短信但无法接收 Salesforce Apex

中的短信详情

视觉强制页面

<apex:page controller="TwilioRequestControllerContacts" action="{!init}" showHeader="false" sidebar="false">
    <center>
        <apex:pageBlock title="Twilio Request Listener"></apex:pageBlock>          
    </center>
</apex:page>

控制器

public with sharing class TwilioRequestControllerContacts 
    {
        public String fromNumber      = ApexPages.currentPage().getParameters().get('From');
        public String toNumber        = ApexPages.currentPage().getParameters().get('To');
        public String body            = ApexPages.currentPage().getParameters().get('Body');
        public PageReference init()
        {
        try
        {           
           System.debug('STEP 0 FROM: ==========>' + fromNumber); 
           System.debug('STEP 1 TO: ===============>' + toNumber);
           System.debug('STEP 2 BODY: ==========>' + body); 
IF(fromNumber != NULL && toNumber = !NULL){
Case c = new Case(Subject = toNumber+fromNumber,Description =body);
insert c;
}

          }
catch(exception e){}
        RETURN null;
       }  
    }

在客户发送短信的同时动态发送短信确认即可。但无法收到短信详情。 我正在做正确的方式可以请一些人帮助我

2 个答案:

答案 0 :(得分:2)

您应该做的第一件事是登录Twilio控制台,转到 Devtools | App Monitor ,看看Twilio认为发生了什么。

最可能的问题是Twilio在尝试访问您的Visualforce页面时收到404错误。您必须将该页面添加到Force.com站点才能公开显示。快速测试只是将您的Visualforce页面URL粘贴到浏览器中并尝试查看它 - 您应该看到&#39; Twilio请求监听器&#39;页面块。

要使页面可见,请创建Force.com站点(如果尚未创建),然后在“站点”配置中,将Visualforce页面添加到站点Visualforce页面列表中。您现在应该能够在浏览器中看到该页面,Twilio应该能够访问它。

答案 1 :(得分:2)

最后,我创建了一个案例,而客户发送了一个短信twilio电话号码。

<强>步骤:

  • 在Sandbox中安装Twilio后,我们需要创建一个Visualforce页面和一个指定的Controller。
  • 创建Force.com站点并将Visualforce页面添加到您的站点。然后提供网站网址(https://sandbox.force.com/sms)。

路径:设置&gt;开发人员&gt; &#34;新&#34; Site Url

注意:Site Url和Twilio帐户SMS Url必须且应该相同,HTTP post请求不会发布到您的Visualforce页面。 Twilio Account SMS Request URL

  • 授予对Controller和Case对象的站点访问权限。在“站点详细信息”页面中,单击“公共访问设置”以访问站点的访客用户配置文件。在Case对象上启用读取和编辑访问权限。将控制器Apex Class添加到Enabled Apex Class Access列表中。
  • 在Sandbox中创建远程站点设置,即Twilio API的端点URL。

路径:设置&gt;管理&gt;安全控制&gt;远程站点设置&gt; &#34;新的远程站点&#34; End point Url

然后向您的Twilio电话号码发送短信。它将在Sandbox中创建一个新案例。这是Salesforce的Twilio API的惊人概念。