如何使用twilio SMS回复获取来电者姓名?

时间:2017-01-30 08:25:18

标签: twilio twilio-api

当我购买我使用的号码时

 var purchaseOptions = new PhoneNumberOptions();
    purchaseOptions.PhoneNumber = commandArgument;
    purchaseOptions.VoiceUrl = LeadsModuleDomainNamePublic.Trim() + "/ProcessCallTwilio.aspx";
    purchaseOptions.StatusCallback = LeadsModuleDomainNamePublic.Trim() + "/ProcessCall.aspx";
    purchaseOptions.SmsUrl = LeadsModuleDomainNamePublic.Trim() + "/TwilioReply.aspx";
    purchaseOptions.VoiceCallerIdLookup = true;

当我得到号码时,请使用此代码。

     foreach (string var in Request.Form)
    {
        if (var == "CallerName") { CallerName = Request[var]; }
    }

但它没有给我来电者姓名。

2 个答案:

答案 0 :(得分:1)

Twilio开发者传道者在这里。

通过查看您的代码,我假设您正在使用C# Library正确吗?

我在想你是否正试图从你正在接听的电话中获取来电者姓名?如果是这种情况,当您接到电话时,Twilio会将一些与该电话相关的变量传回给您。 CallerName不是其中之一。

传入呼叫建模为like this,这些是Twilio向服务器发出请求时将传递的所有变量。

我认为你所看到的是CNAM Lookup上的Lookup API。有了它,您可以在可用时获取呼叫者姓名信息。

希望这有助于你

答案 1 :(得分:1)

// This code work for me    
// Download the twilio-csharp library from twilio.com/docs/libraries/csharp
    using System;
    using System.Collections.Generic;
    using Twilio;
    using Twilio.Rest.Lookups.V1;
    using Twilio.Types;

    public class Example
    {
        public static void Main(string[] args)
        {
            // Find your Account SID and Auth Token at twilio.com/console
            const string accountSid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
            const string authToken = "your_auth_token";

            TwilioClient.Init(accountSid, authToken);

            var phoneNumber = PhoneNumberResource.Fetch(
                new PhoneNumber("+15108675309"),
                type: new List<string> { "caller-name" });

            Console.WriteLine(phoneNumber.CallerName["caller_name"]);
        }
    }