所以我尝试使用rpush来发送移动应用程序的推送通知,使用这个gem:https://github.com/rpush/rpush。我在使用sinatra框架。但是,即使我在文件顶部写了-->require'rpush',我仍然会遇到这个错误。有红宝石经验的人能帮我吗?我是鲁比的新朋友,请容忍我。这是我的密码

require 'rpush'

Module Notifier

def rpush_client
app = Rpush::Gcm::App.new
app.name = "App-Name"
app.auth_key = "XXXXXXXXXXXXXXX"
app.connections = 1
app.save!
end


def notify(user_id,alert)
  rpush_client
  session = db_find_one('dbname.sessions',{user_id: user_id})
  if session.present?
    device = session['devices'].first
    token = device['device_token']
    n = Rpush::Gcm::Notification.new
    n.app = Rpush::Gcm::App.find_by_name("App-Name")
    n.registration_ids = ["token", token]
    n.data = { message: alert }
    n.save!

    Rpush.push
  end
end

end

我知道这是个愚蠢的问题,但厌倦了在这里寻找它。

最佳答案

你和西纳特拉一起用的是bundler吗?如果是,则不需要显式地要求rpush。请看这里:http://bundler.io/sinatra.html

07-24 12:46