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

如何订阅Twilio Sync Stream/List实时接收推送数据

Twilio Sync 实时消息订阅实现方案

订阅Sync Stream监听新入站短信

Sync Stream原生支持长连接推送模式,无需轮询即可实时获取新消息,IoT设备端接入步骤如下:

  • 首先为IoT设备签发受限访问Access Token,不要直接使用主账号密钥,Token仅需授予对应Sync实例、目标Stream的只读权限即可,降低安全风险。
  • 在IoT设备端引入对应运行环境的Twilio Sync SDK,使用签发的Token初始化Sync客户端。
  • 定位到你转发短信的目标Stream实例,绑定messageAdded事件的处理回调,新消息到达时SDK会通过WebSocket长连接主动推送数据,触发回调逻辑。

基础Python实现示例(适用于运行Python环境的IoT设备):

from twilio.sync import SyncClient

# 初始化客户端,传入为设备签发的Access Token
sync_client = SyncClient("YOUR_IOT_DEVICE_ACCESS_TOKEN")
# 绑定存储短信的目标Stream
sms_stream = sync_client.streams.get("YOUR_TARGET_STREAM_SID")

# 定义新消息处理逻辑
def handle_new_sms(message):
    # 此处编写设备处理短信的业务逻辑
    sender = message.data.get("From")
    content = message.data.get("Body")
    print(f"收到来自{sender}的新短信:{content}")

# 订阅新消息事件
sms_stream.on("messageAdded", handle_new_sms)
# 启动长连接监听
sync_client.listen()

Sync List的实时订阅支持

Sync List同样支持事件推送订阅,完全不需要定时轮询REST接口,接入逻辑和Stream基本一致,仅监听事件和对象类型有区别:

  • 同样使用带对应List只读权限的Access Token初始化Sync客户端。
  • 定位到目标Sync List实例,绑定itemAdded事件回调,当有新短信作为条目写入List时,SDK会主动将新条目推送到设备。

基础实现示例:

from twilio.sync import SyncClient

sync_client = SyncClient("YOUR_IOT_DEVICE_ACCESS_TOKEN")
# 绑定存储短信的目标Sync List
sms_list = sync_client.lists.get("YOUR_TARGET_LIST_SID")

def handle_new_sms_item(item):
    print(f"收到新存短信条目:{item.data}")

# 订阅新条目添加事件
sms_list.on("itemAdded", handle_new_sms_item)
sync_client.listen()

两种方案都基于WebSocket长连接实现推送,SDK内置自动重连、断连期间消息补拉逻辑,相比每秒轮询REST接口的方案,带宽占用更低、消息实时性更高,完全匹配推送模式诉求。注意给设备签发的Access Token要根据设备运行周期设置合理的有效期,同时可在客户端添加Token过期回调,自动向你的自有服务请求新Token更新连接,避免服务中断。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.31 11:33:21