gpt4 book ai didi

ruby-on-rails - 在 ruby​​ 中支持 IMAP IDLE

转载 作者:数据小太阳 更新时间:2023-10-29 06:50:04 25 4
gpt4 key购买 nike

好吧,几个小时以来我一直很厌烦它。我以为 ruby​​ 1.9 的 net/imap.rb 支持空闲命令,但现在还没有。

谁能帮我实现它?来自 here ,我认为这可行:

class Net::IMAP
def idle
cmd = "IDLE"
synchronize do
tag = generate_tag
put_string(tag + " " + cmd)
put_string(CRLF)
end
end

def done
cmd = "DONE"
synchronize do
put_string(cmd)
put_string(CRLF)
end
end
end

但是 imap.idle 只返回 nil。

最佳答案

我遇到了这个老问题,想自己解决。原来的提问者已经消失了 - 哦好吧。

这是让 IMAP 在 Ruby 上闲置的方法(这太酷了)。这使用了原始问题中引用的 block ,以及文档 here .

imap = Net::IMAP.new SERVER, :ssl => true
imap.login USERNAME, PW
imap.select 'INBOX'

imap.add_response_handler do |resp|
# modify this to do something more interesting.
# called every time a response arrives from the server.
if resp.kind_of?(Net::IMAP::UntaggedResponse) and resp.name == "EXISTS"
puts "Mailbox now has #{resp.data} messages"
end
end

imap.idle # necessary to tell the server to start forwarding requests.

关于ruby-on-rails - 在 ruby​​ 中支持 IMAP IDLE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1076116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com