Tôi đang sử dụng private_pub để triển khai một ứng dụng giống như trò chuyện một-một.Ruby on Rails - Khung Faye - private_pub
Dưới đây là câu chuyện của tôi: khi một người sử dụng, tôi muốn nhận được một tin nhắn khi đối tác của tôi rời khỏi cuộc trò chuyện - đóng cửa sổ, vv
Nhìn qua các Faye Monitoring docs đây là nỗ lực của tôi ở bắt buộc đối với unsubscribe
:
# Run with: rackup private_pub.ru -s thin -E production
require "bundler/setup"
require "yaml"
require "faye"
require "private_pub"
require "active_support/core_ext"
Faye::WebSocket.load_adapter('thin')
PrivatePub.load_config(File.expand_path("../config/private_pub.yml", __FILE__), ENV["RAILS_ENV"] || "development")
wts_pubsub = PrivatePub.faye_app
wts_pubsub.bind(:subscribe) do |client_id, channel|
puts "[#{Time.now}] Client #{client_id} joined #{channel}"
end
wts_pubsub.bind(:unsubscribe) do |client_id, channel|
puts "[#{Time.now}] Client #{client_id} disconnected from #{channel}"
PrivatePub.publish_to channel, { marius_says: 'quitter' }
end
run wts_pubsub
nhưng tôi cứ bị timeout: [ERROR] [Faye::RackAdapter] Timeout::Error
Tò mò vào PrivatePub#publish_to
, dữ liệu chứa những gì tôi mong đợi cả khi tôi xuất bản từ Rails hoặc ứng dụng private_pub nhưng ứng dụng private_pub vẫn bị treo.
Tôi làm cách nào để xuất bản từ private_pub hoạt động?
Chủ đề này hơi cũ; bạn đã tìm ra vấn đề là gì chưa? Tôi đã dành hàng giờ cho vấn đề chính xác này mà không thành công nhiều. – Etienne