xmpp4r中加入好友

并不复杂,只要发送一个订阅的Presence就行了。

pres = Jabber::Presence.new.set_type(:subscribe).set_to(jid)
conn.send(pres)


conn是已经连接的jabber。

设置type为:subscribe,设 to为需要增加的好友jid就行了。

如果要自动通过别人加好友,那么要设一个callback。

roster = Jabber::Roster::Helper.new(conn)

roster.add_subscription_request_callback do|roster_item,presence|
  begin
    if presence!=nil
      roster.accept_subscription(presence.from)
    end
  rescue  => detail
    CommonUtils.exception_log("subscription error #{user.roster} presence:#{presence} : ",detail)
  end
end


accept_subscription 这个方法就是接受加为好友

你可能感兴趣的:(Ruby)