有没有办法检索可用 phone 号码的类型或价格?
Is there any way to retrieve type or price of available phone number?
假设我只有数字和 isoCountry 例如:
String number = +43720116398;
String isoCountry = "AT";
我正在尝试在购买前确定价格或类型。
我想知道该号码是本地号码、移动号码还是 TOLL_FREE。
遗憾的是,Lookups 客户端在这种情况下不起作用:
public static void main(String[] args) throws TwilioRestException {
LookupsClient client = new LookupsClient(ACCOUNT_SID, AUTH_TOKEN);
PhoneNumber number = client.getPhoneNumber(number , true);
System.out.println(number.getType());
}
它 return 不同种类的类型或空值。
如果我能得到 type/price 的来电 Phone 号码,那我也会满意的。
有什么办法吗?
在我的例子中,我知道这个号码是本地的还是移动的,所以我只检查这个本地类型的号码是否存在,如果它不是移动的话,你可以很容易地添加检查它是 TOLL_FREE 还是移动如果你想.
如果有人在几天内提供更清洁的方法,我会很乐意接受他的回答,否则我会接受我的回答。
可运行示例:
public class Main {
private final static String MOBILE = "MOBILE";
private final static String LOCAL = "LOCAL";
private static TwilioRestClient twilioRestClient = new TwilioRestClient("Key", "key");
public static void main(String[] args) {
String number = "+43720116398";
String isoCountry = "AT";
getMsisdnType(number, isoCountry);
}
public static String getMsisdnType(String msisdn, String isoCountry) {
Map<String, String> params = new HashMap<>();
params.put("Contains", msisdn);
Optional<AvailablePhoneNumber> number = twilioRestClient.getAccount().getAvailablePhoneNumbers(params, isoCountry, LOCAL).getPageData().stream().findAny();
if (number.isPresent()) return LOCAL;
return MOBILE;
}
}
假设我只有数字和 isoCountry 例如:
String number = +43720116398;
String isoCountry = "AT";
我正在尝试在购买前确定价格或类型。 我想知道该号码是本地号码、移动号码还是 TOLL_FREE。
遗憾的是,Lookups 客户端在这种情况下不起作用:
public static void main(String[] args) throws TwilioRestException {
LookupsClient client = new LookupsClient(ACCOUNT_SID, AUTH_TOKEN);
PhoneNumber number = client.getPhoneNumber(number , true);
System.out.println(number.getType());
}
它 return 不同种类的类型或空值。 如果我能得到 type/price 的来电 Phone 号码,那我也会满意的。 有什么办法吗?
在我的例子中,我知道这个号码是本地的还是移动的,所以我只检查这个本地类型的号码是否存在,如果它不是移动的话,你可以很容易地添加检查它是 TOLL_FREE 还是移动如果你想. 如果有人在几天内提供更清洁的方法,我会很乐意接受他的回答,否则我会接受我的回答。
可运行示例:
public class Main {
private final static String MOBILE = "MOBILE";
private final static String LOCAL = "LOCAL";
private static TwilioRestClient twilioRestClient = new TwilioRestClient("Key", "key");
public static void main(String[] args) {
String number = "+43720116398";
String isoCountry = "AT";
getMsisdnType(number, isoCountry);
}
public static String getMsisdnType(String msisdn, String isoCountry) {
Map<String, String> params = new HashMap<>();
params.put("Contains", msisdn);
Optional<AvailablePhoneNumber> number = twilioRestClient.getAccount().getAvailablePhoneNumbers(params, isoCountry, LOCAL).getPageData().stream().findAny();
if (number.isPresent()) return LOCAL;
return MOBILE;
}
}