You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Twilio Flex 2.0调用SendMessage Action时如何获取conversationSid?

解决Twilio Flex 2.0 SendMessage Action获取conversationSid的问题

获取conversationSid的几种可行方法:

  • 从Redux Store读取当前活跃会话
    Flex的会话状态由Redux管理,可直接从Store中提取当前会话的SID:
// 获取Flex的Redux Store实例
const flexStore = Flex.getStore();
// 用可选链避免空值报错,提取当前会话的conversationSid
const targetConversationSid = flexStore.getState().flex.conversations.currentConversation?.conversationSid;

// 校验后调用SendMessage Action
if (targetConversationSid) {
  Actions.invokeAction('SendMessage', {
    body: "你的预设消息内容",
    conversationSid: targetConversationSid
  });
}
  • 从组件Props中提取会话信息
    如果你的按钮嵌入在会话相关组件(如Task卡片、消息列表)内,可直接从组件props中获取:
// 示例:按钮作为Task详情面板的子组件
const PresetReplyButton = (props) => {
  const handleSend = () => {
    // 从task属性中提取conversationSid
    const conversationSid = props.task.attributes.conversationSid;
    if (conversationSid) {
      Actions.invokeAction('SendMessage', {
        body: "预设回复内容",
        conversationSid: conversationSid
      });
    }
  };

  return <button onClick={handleSend}>发送预设回复</button>;
};

关于文档标注conversationSid为可选的说明

文档标注该参数可选,是因为当在当前活跃会话的上下文内触发Action时(比如默认的消息输入框),Flex会自动从上下文环境中填充conversationSid,无需手动传入。但如果你的按钮是在会话上下文之外(如全局导航栏、独立插件面板),或者未绑定到当前任务,就必须显式传入该参数,否则Action无法确定目标会话。

内容的提问来源于stack exchange,提问作者velapanur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 04:20:26