只是为了试着让你了解我们想要做什么:我们有一个像聊天机器人一样工作的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********************
您可能需要为聊天任务设置其他属性才能显示在Flex中。以下是通过Web聊天和Taskrouter中的SMS进行的Taskrouter属性示例。这些任务都出现在Flex中。
网络聊天:
{"channelSid":"CHc7221e1c8ac04b4d9f45xxxxxxxxxxxx","name":"Jane","channelType":"web"}
短信:
{"channelSid":"CH86818963afed4d769fb3xxxxxxxxxxxx","endpoint":"sms","identity":"+15555555555","name":"+15555555555","title":"SMS request"}
亚伦,我有类似的问题,并试图看看Flex创建聊天功能,但它不存在。当我点击“创建一个函数”并按flex产品过滤时,只提供了blan函数模板,它将生成这个函数代码:
exports.handler = function(context, event, callback) {
let twiml = new Twilio.twiml.VoiceResponse();
// twiml.say("Hello World");
callback(null, twiml);
};