我想使用不带所有参数的模式搜索来检索所有可用的电话语音电话号码(仅限电话号码)。
我已经尝试过nexmo给出的api代码。它有效,但我只获得了有限数量的电话号码,而且我还获得了一堆我不想要的其他参数。这是我正在使用的 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']}
这是一个数字。我只想告诉它给我所有的语音号码并将它们放入列表中...提前感谢您的帮助。
最佳答案
我查看了文档,我认为不可能只取回电话号码(也称为 msisdn
)。
相反,对于每个号码,您都会得到一个包含国家/地区、成本、类型等的信息...,正如文档所说,“可用号码及其详细信息的分页数组”的一部分。
如果您查看响应,您可以看到 count
作为第一个键/值对,在您的示例中,计数为 394773,这是可用的数字总数您在发出请求时指定的搜索条件。
现在,我不知道所有原因,但发回一个有效负载为 394773 个数字的响应可能会对系统造成太大负担。
你可以做什么:
<小时/>根据我的测试,如果您指定 size
为 100,那么您将得到每页 100 条记录的响应,并且您可以使用 index
参数用于分页(任何 size
超过 100 的值,您只能得到 10 条记录)。
因此,如果您的搜索查询计数为 394773,且 size = 100
,则我们只有 3947 + 1 个页面(仅最后一页 (index = 3948
))有73条记录),你必须一一获取它们,总共有3948个请求传递了适当的索引值。
当然,如果您传递更具体的搜索查询,您可以减少计数
。
我明白你想要什么,而且我不为 Nexmo 工作,而且,在阅读文档后,我认为不可能仅通过一个请求就可以恢复所有内容。您只需要在搜索查询中更加具体即可。
文件:
关于python - 如何在 Nexmo 中检索可用的电话号码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56310462/