如何在 Nexmo 中检索可用的 phone 号码?

How do I retrieve available phone numbers in Nexmo?

我想检索所有可用的 phone 语音 phone 号码(仅 Phone 号码)使用不带所有参数的模式搜索。

我试过nexmo给出的api代码。它有效,但我只得到有限数量的 phone 数字,而且我还得到了一堆其他参数,我不想要。这是我正在使用的 2 api 个调用:

phnumbers = client.get_available_numbers("US", {"features": "VOICE"})
phnumbers = client.get_available_numbers("US", {"pattern": "007", "search_pattern": 2})

我只想获得可用号码列表。我不在乎它是不是 1000。不确定是否有办法限制它带回的数量。目前获得的数量有限,参数如下:

{'count': 394773, 'numbers': [{'country': 'US', 'msisdn': '12014790696', 'cost': '0.90', 'type': 'mobile-lvn', 'features': ['VOICE', 'SMS']}

这是一个数字。我只想告诉它给我所有语音号码并将它们放入列表中...在此先感谢您的帮助。

我查看了文档,我认为不可能只返回 phone 数字(也称为 msisdn)。

相反,对于每个数字,您会得到一个包含国家/地区、费用、类型等的内容...,正如文档所说,"A paginated array of available numbers and their details"[= 的一部分46=].

如果您查看响应,您可以看到您得到 count 作为第一对 key/value,在您的示例中计数为 394773,这是可用数字的总数针对您在发出请求时指定的搜索条件。

现在,我不知道所有的原因,但发回一个负载为 394773 个数字的响应可能会使系统负担过重。


你能做什么:


根据我的测试,如果您将 size 指定为 100,那么您将获得每页 100 条记录的响应,并且您具有可用于分页的 index 参数(对于 size 超过 100 的任何值,您只会得到 10 条记录)。

因此,如果您的搜索查询的计数是 394773,使用 size = 100,我们有 3947 + 1 页(最后一页 (index = 3948) 只有 73 条记录),您将有将它们一一获取,总共有 3948 个请求传递了适当的索引值。

如果您通过更具体的搜索查询,当然可以减少 count

我明白你想要什么,我不为 Nexmo 工作,而且,在阅读文档后,我认为不可能仅通过一个请求就恢复所有内容。您只需要在搜索查询中更加具体。


文档:


Retrieve inbound numbers that are available for the specified country.