0

只是想让您了解我们正在尝试做什么:我们有一个 Python 系统,它像聊天机器人一样工作,自动回答一些问题,但有时我们需要将联系人一个一个发送到服务,而我们需要使用 Python 在 Flex 中打开对话

我尝试了很多方法来向 Flex 上的聊天发送消息,但正如我之前所说,我们只能创建一个聊天,而不向其中发送消息,更好的说法是,我们能够发送消息,但它们不会出现在 Flex 上聊天界面(这很奇怪)。我尝试 1)通过 API 使用正常方式,2)创建运行时函数(与通过 API 相同的结果,只是创建一个聊天但没有出现消息),3)我尝试应用 Twilio Sync,以及 4)我尝试使用直接使用 Twilio 代理。

我可以获取sid创建的所有对象并查看在 Flex 界面上创建的聊天,但我无法在 Flex 的 UI 上看到发送到此聊天的消息。

event = {
    'from': 'phone_number_from',
    'to': 'flex_phone_number',
    'body': 'Testing'
}

attrs = get_channel_attrs(event.get('from'))

channel = get_or_create_chat_channel(event.get('from'), event.get('to'), attrs)

print('Channel created: %s' % channel.sid)

task = get_or_create_ongoing_tasks(event.get('from'), channel.sid)

print('Task created: %s' % task.sid)

message = send_message(channel=channel, from_=event.get('from'), body=event.get('body'))

print('Message created: %s' % message.sid)

-----------------------

Channel created: CH99b4831f********************
Task created: WTe8eee516********************
Message created: IM08884be42********************


4

2 回答 2

0

您可能需要为聊天任务设置其他属性才能在 Flex 中显示。这是通过网络聊天和通过 Taskrouter 中的 SMS 的 Taskrouter 属性示例。这些任务都出现在 Flex 中。

网络聊天:

{"channelSid":"CHc7221e1c8ac04b4d9f45xxxxxxxxxxxx","name":"Jane","channelType":"web"}

短信:

{"channelSid":"CH86818963afed4d769fb3xxxxxxxxxxxx","endpoint":"sms","identity":"+15555555555","name":"+15555555555","title":"SMS request"}
于 2019-01-14T14:26:42.997 回答
0

Aaron,我遇到了类似的问题,并试图查看 Flex Create Chat 功能,但它不存在。当我单击“创建函数”并按 flex 产品过滤时,仅提供 blan 函数模板,它将生成此函数代码:

exports.handler = function(context, event, callback) {
    let twiml = new Twilio.twiml.VoiceResponse();
    // twiml.say("Hello World");
    callback(null, twiml);
};
于 2019-01-23T16:12:56.920 回答