【问题标题】:Solace topic subscription with correlationId使用correlationId安慰主题订阅
【发布时间】:2020-12-15 03:57:10
【问题描述】:

我订阅了这样的主题:

var topics = new string[]{
    "TOP/IC/*/A/>", 
    "TOP/IC/*/B/>",
    "ANY/*/STRU/CTURE"
    // etc... 
};
foreach(var t in topics)
{
    var topic = ContextFactory.Instance.CreateTopic(t);
    var sessionReturnCode = _session.Subscribe(topic, false); // _session is ISession
}

传入消息具有完整的主题名称信息。例如。 TOP/IC/ANY/A/N123/XFDJK985.

我想知道消息来自哪个订阅。可能吗? (correlationId,随便...)。如果是,请提供样品。

【问题讨论】:

  • 您的主题似乎不正确 - 有效的通配符是 #(多级)和 +(单级)。另请注意,如果收到与此会话具有相同主题过滤器的新订阅,代理将替换现有订阅。由于对客户没有真正的区别,您要实现什么目标?
  • 我明白了,这是SMF 而不是MQTT - 你应该去掉标签
  • 对不起,是的,它是 SMF。标签已更新

标签: c# .net-core messagebroker solace


【解决方案1】:

当 Solace .NET API 时,默认情况下,直接消息被分派到为会话配置的相同接收回调或委托。但是,可以使用特殊的接收回调或委托来处理发布到特定主题的直接消息。此功能也称为主题分派,因为具有特定主题的消息被分派到特定的回调或委托。

更多信息请点击此处:https://docs.solace.com/Solace-PubSub-Messaging-APIs/API-Developer-Guide/Receiving-Direct-Message.htm

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-11
    • 2020-09-20
    • 2021-10-03
    • 2018-06-17
    相关资源
    最近更新 更多