2013-05-30 128 views
0

我有它們被連接到的RabbitMQ牛仔服務器上運行的兩個實例。我使用gen_bunny作爲RabbitMQ客戶端連接到RabbitMQ。消息廣播通知

我可以從的RabbitMQ如果使用bunnyc消耗消息:消耗()。不過爲此我需要明確地引用這個方法。我想要的是在牛仔上綁定一個事件,只要隊列中有一條消息,它就會自動通知牛仔。

是否有可能使用gen_bunny或其他二郎客戶端?

回答

0

得到它的工作...在bunnyc.erl源了幾次以後。現在,在初始化函數我已經添加訂閱功能,並START_LINK功能bunnyc.erl所以一旦沒有在隊列中的消息傳遞我的牛仔進程的進程ID,我可以把它在牛仔的websocket_info功能..

2

不知道關於gen_bunny,但你可以訂閱排隊官方二郎客戶端(看http://www.rabbitmq.com/erlang-client-user-guide.html「訂閱隊列」一節)

據我瞭解,你需要從隊列中通過的WebSockets發送消息客戶端。所以你需要訂閱在與客戶端進行通信的過程中進行排隊。而在收到「收到......結束」或handle_info消息(取決於實現)

加成

我看了gen_bunny源...年糕/ gen_bunny取決於年糕/ amqp_client其提供amqp_channel:認購/ 3(見https://github.com/mochi/amqp_client/blob/master/src/amqp_channel.erl#L177),你可以用它來訂閱

+0

感謝您的回覆...問題是應用程序已經在使用gen_bunny。不過,我也會給一試二郎神客戶端... –

+0

更新我的答案 – couchemar

+0

Erlang的客戶端是易於設置。 –