Hi Jerome,

You can do that with the Python QMF API. I extracted the below from another 
script so it may need some adjustments but should get you there.
-Steve

import os
import sys

from qpid import * 
import qpid.messaging

host="localhost"
port=5672
sock = util.connect(host, port)
qmf_con = connection.Connection(sock)
qmf_con.start()
session = qmf_con.session(str(qpid.messaging.uuid4()), timeout=30)

session.queue_declare(queue="MyTopic")
session.exchange_bind(queue="MyTopic", exchange="whatever", 
binding_key="jerome.#")
session.sync
session.close(timeout=10)


On 4/28/22, 4:48 PM, "ONeil, Jerome" <jerome.on...@wabtec.com> wrote:

    Hello,

    I am trying to set up a receiver for a topic on a qpid C++ broker and need 
to control the binding between the Source exchange and the receiver queue.  I 
can get a simple receiver set up just fine and pull messages from it.

    >>> event.container.create_receiver("amqp://localhost/MyTopic")

    [jerome@localhost ~]$ qpid-config -r queues
    Queue 'debug-MyTopic'
        bind [#] => MyTopic


    So that's grand.  I need to control the binding with more detail, though, 
and for the life of me I can't figure out how to do it.  I've tried controlling 
on the URL.  I've tried Filters and Selectors.  I have tried a variety of 
different link and receiver properties (x-bindings, etc..) and other methods 
scrapped up from the internet, and all I ever get for that binding is '#'.

    Can someone provide a simple example?  Lets say I wanted that binding to 
actually be

    bind [jerome.#] => MyTopic

    What would that look like?  I am all out of clues and hope someone has one 
to spare.

    Best regards,

    -Jerome
    This email and any attachments are only for use by the intended 
recipient(s) and may contain legally privileged, confidential, proprietary or 
otherwise private information. Any unauthorized use, reproduction, 
dissemination, distribution or other disclosure of the contents of this e-mail 
or its attachments is strictly prohibited. If you have received this email in 
error, please notify the sender immediately and delete the original. Neither 
this information block, the typed name of the sender, nor anything else in this 
message is intended to constitute an electronic signature unless a specific 
statement to the contrary is included in this message.

Reply via email to