如何在 Node.js 中使用 Twilio 代理
How to use Twilio Proxy in Node.js
在 Twilio 的帮助下,我已经尝试了 3 天来正确设置后端,该后端将匿名连接两部电话以进行语音通话。这就是我想要做的:
我看过 live coding example 完全没用。
- 我已经使用 `gem install twilio-ruby -v 5.25.0'
安装了 gem
- 输入 REPL
- 并开始关注视频:
$ IRB
require 'twilio-ruby'
client = Twilio::REST::Client('...', '...')
client.service.create(friendly_name: 'Test 1')
NoMethodError: undefined method `service' for #
好吧好吧,2年前的视频了,SDK改了也正常。所以我遵循了网站上提供的交互式教程,这一个。
继续之前...有一个关于新代理功能的dedicated page,其中一个部分有下图:
这显然是 Python,所以我开始了...我已经安装了 Python SDK,启动了 REPL 并尝试遵循代码...它不起作用.该死的 Twilio,更新你的东西! (还是我傻了?)...
无论如何...让我们进入 node.js tutorial,我确信至少交互式教程正在运行(我是这么认为的)。
所以,我去了我的控制台并在那里创建了一个服务,然后我写了代码:
import twilio from 'twilio'
const client = twilio('accountSid', 'authToken')
async function test() {
// create session
const session = await client.proxy.services('<MY_SERVICE>')
.sessions
.create({uniqueName: 'MyFirstSession'})
// add participant 1 to session
client.proxy.services('<MY_SERVICE>')
.sessions(session.sid)
.participants
.create({ friendlyName: 'Me', identifier: '<my_number>'})
// add participant 2 to session
client.proxy.services('<MY_SERVICE>')
.sessions(session.sid)
.participants
.create({ friendlyName: 'Me 2', identifier: '<my_number_2>'})
}
test()
然后呢?
文档说:
If your Twilio Phone Numbers are voice capable, you're now ready for a proxied voice conversation. Following the names from the previous steps, get Alice to make a call to her Proxy Identifier number. Twilio's Proxy service will then make a call from Bob's Proxy Number to his real number and connect the two calls.
没用...我试过拨打代理标识符号码,但没用。
我不知道该怎么办了,我试图联系他们,但没有人回复...
我查看了 "node.js tutorial",我可以看出它是多么令人困惑。
您可以通过以下方式使它正常工作并更好地了解它的工作原理:
先决条件:
- 您有一个 Twilio 帐户和一个 Twilio 购买的 phone 号码。这个 Twilio phone 号码将成为 "proxy" 号码。
- 您还有另外两个 phone 号码可以拨打或接听电话(或发短信),它们是 您的 phone 号码。
步骤 1.
- 登录您的 Twilio 帐户并记下您的 "ACCOUNT SID" 和 "AUTH TOKEN",它们在 "Dashboard" 上。
(https://www.twilio.com/console)
- 转到 phone 号码页面 (https://www.twilio.com/console/phone-numbers/incoming) 并验证那里有一个 phone 号码。如果您只记下数字也没关系,因为在本指南中我将告诉您如何通过控制台配置主要内容,而不是通过 Node.js 代码。
第 2 步
- 仍然在 Twilio,转到 "Proxy Dashboard" (https://www.twilio.com/console/proxy) 和这里 "Add New Proxy Service"(有一个加号红色圆形标志)。给它起个名字,点击 "Create" 然后在下一页,你不需要填写任何东西,只需向下滚动并点击 "Save"
- 现在您有一项服务显示在 "Services" 页面 (https://www.twilio.com/console/proxy/services)
- 记下服务 SID (KSxxxxx...)
步骤 3.
- 同时还在"Services"页面(https://www.twilio.com/console/proxy/services),在右边可以看到"PROXY NUMBERS",是一个link,点击它告诉为您刚刚创建的 "Proxy Service" 使用您的 Twilio 号码的服务。
- 在下一页上,您会看到 "This Service has no Proxy Numbers" 和一个按钮 "Add Numbers",单击它并 "Assign" 您的 Twilio 号码。
- 看到号码分配成功的消息后,点击"Close"。
第 4 步
- 现在您需要为此服务创建一个会话,返回 "Proxy Dashboard" (https://www.twilio.com/console/proxy),您会看到您的服务已列出
- 再往右,"SESSIONS"有一个link,点击
- 您会看到消息 "You have no Sessions" 和一个指向 "Create new Session" 的按钮,单击它并输入名称,您可以 select 也可以 "MODE" (文本、语音或两者)
- 点击 "Create" 然后向下滚动并点击 "Save"
- 记下会话 SID (KCxxxxx...)
- 现在你有一个服务和一个会话
第 5 步
这是您添加参与者的步骤,这与您的两个 phone 号码有关。据我所知,这部分不能在 Twilio 的控制台上完成。我做到了运行宁Node.js代码。
您需要在计算机上安装 Node.js (https://nodejs.org/en/),然后:
- 新建文件夹
- 在终端中,在新文件夹上更改目录
- 运行
npm init --yes
- 运行
npm install twilio
- 创建一个新文件
index.js
这是 index.js
的代码
const accountSid = 'ACxxxxx...';
const authToken = 'xxxxx...';
const client = require('twilio')(accountSid, authToken);
client.proxy.services('KSxxxxx...')
.sessions('KCxxxxx...')
.participants
.create({ friendlyName: 'Alice', identifier: '+19997775555' })
.then(participant => console.log(participant.proxyIdentifier));
在上面的代码中,替换
的值
accountSid
// 你的 Twilio 账户 sid
authToken
// 你的 Twilio 授权令牌
KSxxxxx...
// 服务id
KCxxxxx...
// 会话 ID
+19997775555
// 你的第一个 phone 号码
下一步运行此代码添加第一个参与者,在终端运行node index.js
最后一件事是添加第二个参与者,在上面的代码中将 Alice
更改为 Bob
,并将 your first phone number
替换为您的第二个 phone 号码, 然后 运行 node index.js
再次。
添加第二个参与者后,就可以了。现在您可以尝试从您的任何号码 (phones) 和另一个号码 (phones) 拨打或发短信给您的 Twilio phone 号码(充当代理)将收到短信或铃声。
注意:您在 Twilio 控制台上所做的事情可以使用 Node.js 代码完成,请再次阅读教程并尝试理解这些步骤以及代码的工作原理。如果您需要更多帮助,可以随时在此处提出更具体的问题。
祝你好运!
在 Twilio 的帮助下,我已经尝试了 3 天来正确设置后端,该后端将匿名连接两部电话以进行语音通话。这就是我想要做的:
我看过 live coding example 完全没用。
- 我已经使用 `gem install twilio-ruby -v 5.25.0' 安装了 gem
- 输入 REPL
- 并开始关注视频:
$ IRB
require 'twilio-ruby' client = Twilio::REST::Client('...', '...') client.service.create(friendly_name: 'Test 1') NoMethodError: undefined method `service' for #
好吧好吧,2年前的视频了,SDK改了也正常。所以我遵循了网站上提供的交互式教程,这一个。
继续之前...有一个关于新代理功能的dedicated page,其中一个部分有下图:
这显然是 Python,所以我开始了...我已经安装了 Python SDK,启动了 REPL 并尝试遵循代码...它不起作用.该死的 Twilio,更新你的东西! (还是我傻了?)...
无论如何...让我们进入 node.js tutorial,我确信至少交互式教程正在运行(我是这么认为的)。
所以,我去了我的控制台并在那里创建了一个服务,然后我写了代码:
import twilio from 'twilio'
const client = twilio('accountSid', 'authToken')
async function test() {
// create session
const session = await client.proxy.services('<MY_SERVICE>')
.sessions
.create({uniqueName: 'MyFirstSession'})
// add participant 1 to session
client.proxy.services('<MY_SERVICE>')
.sessions(session.sid)
.participants
.create({ friendlyName: 'Me', identifier: '<my_number>'})
// add participant 2 to session
client.proxy.services('<MY_SERVICE>')
.sessions(session.sid)
.participants
.create({ friendlyName: 'Me 2', identifier: '<my_number_2>'})
}
test()
然后呢?
文档说:
If your Twilio Phone Numbers are voice capable, you're now ready for a proxied voice conversation. Following the names from the previous steps, get Alice to make a call to her Proxy Identifier number. Twilio's Proxy service will then make a call from Bob's Proxy Number to his real number and connect the two calls.
没用...我试过拨打代理标识符号码,但没用。
我不知道该怎么办了,我试图联系他们,但没有人回复...
我查看了 "node.js tutorial",我可以看出它是多么令人困惑。
您可以通过以下方式使它正常工作并更好地了解它的工作原理:
先决条件:
- 您有一个 Twilio 帐户和一个 Twilio 购买的 phone 号码。这个 Twilio phone 号码将成为 "proxy" 号码。
- 您还有另外两个 phone 号码可以拨打或接听电话(或发短信),它们是 您的 phone 号码。
步骤 1.
- 登录您的 Twilio 帐户并记下您的 "ACCOUNT SID" 和 "AUTH TOKEN",它们在 "Dashboard" 上。 (https://www.twilio.com/console)
- 转到 phone 号码页面 (https://www.twilio.com/console/phone-numbers/incoming) 并验证那里有一个 phone 号码。如果您只记下数字也没关系,因为在本指南中我将告诉您如何通过控制台配置主要内容,而不是通过 Node.js 代码。
第 2 步
- 仍然在 Twilio,转到 "Proxy Dashboard" (https://www.twilio.com/console/proxy) 和这里 "Add New Proxy Service"(有一个加号红色圆形标志)。给它起个名字,点击 "Create" 然后在下一页,你不需要填写任何东西,只需向下滚动并点击 "Save"
- 现在您有一项服务显示在 "Services" 页面 (https://www.twilio.com/console/proxy/services)
- 记下服务 SID (KSxxxxx...)
步骤 3.
- 同时还在"Services"页面(https://www.twilio.com/console/proxy/services),在右边可以看到"PROXY NUMBERS",是一个link,点击它告诉为您刚刚创建的 "Proxy Service" 使用您的 Twilio 号码的服务。
- 在下一页上,您会看到 "This Service has no Proxy Numbers" 和一个按钮 "Add Numbers",单击它并 "Assign" 您的 Twilio 号码。
- 看到号码分配成功的消息后,点击"Close"。
第 4 步
- 现在您需要为此服务创建一个会话,返回 "Proxy Dashboard" (https://www.twilio.com/console/proxy),您会看到您的服务已列出
- 再往右,"SESSIONS"有一个link,点击
- 您会看到消息 "You have no Sessions" 和一个指向 "Create new Session" 的按钮,单击它并输入名称,您可以 select 也可以 "MODE" (文本、语音或两者)
- 点击 "Create" 然后向下滚动并点击 "Save"
- 记下会话 SID (KCxxxxx...)
- 现在你有一个服务和一个会话
第 5 步
这是您添加参与者的步骤,这与您的两个 phone 号码有关。据我所知,这部分不能在 Twilio 的控制台上完成。我做到了运行宁Node.js代码。
您需要在计算机上安装 Node.js (https://nodejs.org/en/),然后:
- 新建文件夹
- 在终端中,在新文件夹上更改目录
- 运行
npm init --yes
- 运行
npm install twilio
- 创建一个新文件
index.js
这是 index.js
的代码const accountSid = 'ACxxxxx...';
const authToken = 'xxxxx...';
const client = require('twilio')(accountSid, authToken);
client.proxy.services('KSxxxxx...')
.sessions('KCxxxxx...')
.participants
.create({ friendlyName: 'Alice', identifier: '+19997775555' })
.then(participant => console.log(participant.proxyIdentifier));
在上面的代码中,替换
的值accountSid
// 你的 Twilio 账户 sidauthToken
// 你的 Twilio 授权令牌KSxxxxx...
// 服务idKCxxxxx...
// 会话 ID+19997775555
// 你的第一个 phone 号码
下一步运行此代码添加第一个参与者,在终端运行node index.js
最后一件事是添加第二个参与者,在上面的代码中将 Alice
更改为 Bob
,并将 your first phone number
替换为您的第二个 phone 号码, 然后 运行 node index.js
再次。
添加第二个参与者后,就可以了。现在您可以尝试从您的任何号码 (phones) 和另一个号码 (phones) 拨打或发短信给您的 Twilio phone 号码(充当代理)将收到短信或铃声。
注意:您在 Twilio 控制台上所做的事情可以使用 Node.js 代码完成,请再次阅读教程并尝试理解这些步骤以及代码的工作原理。如果您需要更多帮助,可以随时在此处提出更具体的问题。
祝你好运!