草庐IT

imap_conn

全部标签

ruby - 如何使用 ruby​​ `net/imap` 归档消息

使用以下ruby​​代码,我可以通过IMAP阅读收件箱中用户的邮件:require'net/imap'imap=Net::IMAP.new('imap.gmail.com',993,true)imap.login('user','passwd')imap.select('INBOX')mailIds=imap.search(['ALL'])mailIds.eachdo|id|msg=imap.fetch(id,'RFC822')[0].attr['RFC822']putsmsgendimap.logout()imap.disconnect()我想知道如何存档和标记已读电子邮件。我想将电

ruby-on-rails - 通过 IMAP 在 Rails 中获取电子邮件

我有一个在本地Intranet上运行的Rails应用程序,有1000个常规用户。我希望将它与我们的电子邮件服务器(MSExchange)集成。基本上-1)对于每个用户,应用程序应从邮件服务器获取其收件箱中的所有新邮件,对其进行解析,并将其归档到数据库中。我可以用ruby​​/net-imap实现它,但我担心性能。正如我所提到的,有一千个用户,每个用户都有不同的电子邮件地址。每x分钟轮询一次电子邮件服务器对于一千个用户来说会大大降低性能。看起来像IMAPIDLEwithruby/net-imap可能是一个选项,只要有新邮件(iPhone/Outlook样式),邮件服务器就会向我的应用程序

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

好吧,几个小时以来我一直很厌烦它。我以为ruby​​1.9的net/imap.rb支持空闲命令,但现在还没有。谁能帮我实现它?来自here,我认为这可行:classNet::IMAPdefidlecmd="IDLE"synchronizedotag=generate_tagput_string(tag+""+cmd)put_string(CRLF)endenddefdonecmd="DONE"synchronizedoput_string(cmd)put_string(CRLF)endendend但是imap.idle只返回nil。 最佳答案

ruby - GMail 线程、IMAP 和 Ruby

我正在使用RubyIMAP库来获取GMail对话。GMail线程对话的方式是通过“Message-ID”和“In-Reply-To”邮件header。例如:In-Reply-To:Message-ID:我不知道如何有效地获取回复消息。当前方式:target=imap.search(["NOT","DELETED"]).eachdo|msg_id|uid=imap.fetch(message_id,"ENVELOPE")[0].attr["ENVELOPE"].message_idifuid==targetm=imap.fetch(msg_id,"RFC822")[0].attr["RF

ruby - 如何使用 ruby​​ 的 net/imap 库读取电子邮件的正文?

可能是我今天脑子坏了,突然想不出怎么用ruby的net/imap库来阅读邮件了。我已经花了好几个小时了。我在谷歌中输入了“rubyimapreadbody”的几种变体,并浏览了许多网站。它们都有关于如何提取附件、同步电子邮件服务器、使用gmail等的示例……有些(如chilkat)实际上是为您执行此操作的共享软件库。我查看了net/imap文档,虽然有几个示例可以完成除阅读正文之外的所有操作。我以前使用过net/imap,但我只需要将收件箱中的附件下载到目录中。我在#ruby和#rubyonrails中询问都无济于事——没人能弄明白。imap=Net::IMAP.new('mail.x

ruby - 在 Ruby Net::IMAP 中选择邮箱 "sent mail"或 "all mail"

我试图在Ruby中使用Net::IMAP来搜索我发送的所有邮件,但我无法选择收件箱以外的任何内容。imap.select('INBOX')工作正常,但是imap.select('Mail/sent-mail')如Net::IMAP文档所示,显示“未知邮箱”。顺便说一句,这是与gmail一起使用的。我还尝试将“in”、“anywhere”添加到我的imap.search()中,但没有解析。当前代码:imap.select('INBOX')now=Time.now.localtime-1209600#twoweekssince=now.day.to_s()+"-"+Date::MONTHN

javascript - 如何使用node-imap读取和保存附件

我正在使用node-imap我找不到一个简单的代码示例来说明如何从使用node-imap获取的电子邮件中保存附件使用fs到磁盘。我已经阅读了几次文档。在我看来,我应该引用邮件的特定部分作为附件进行另一次提取。我从基本示例开始:varImap=require('imap'),inspect=require('util').inspect;varimap=newImap({user:'mygmailname@gmail.com',password:'mygmailpassword',host:'imap.gmail.com',port:993,tls:true});functionopen

go - 为什么我不能使用 net.go 中的 conn.ok()?

我是从Python背景来到Golang的,我正在努力思考各种新概念。我遇到的一件事是net.go中的这个函数:func(c*conn)ok()bool{returnc!=nil&&c.fd!=nil}这个函数被多个net.go方法调用,例如conn.阅读://ReadimplementstheConnReadmethod.func(c*conn)Read(b[]byte)(int,error){if!c.ok(){return0,syscall.EINVAL}我试图了解如何在conn上调用ok()方法,尽管ok()确实不好像是conn的一个接口(interface)。当然,我似乎无法从

multithreading - 多个 goroutine 会同时调用 Conn 上的方法吗?

我的程序是这样的:funchandle(connnet.Conn){msg:="hello,world!"fori:=0;i程序会同时运行100000个goroutines,所有goroutines都会向同一个连接发送消息。我怀疑服务器会收到像“helloheloworldworld”这样的错误消息,但是当程序在我的Ubuntu14.04LTS上运行时没有问题。那么,多个goroutine会同时调用一个Conn上的方法吗?=======================================================================如何使Write方法保持

go - Conn 在 Go 中随机关闭且没有警告

我正在构建一个与多个发起者一起使用的回声算法,本质上我有三个函数“talk”、“listen”和“runalgorithm”。“talk”向邻居发送数据,“listen”从邻居接收数据,这两者都使用channel。这些channel在“运行算法”函数中被监控,该函数决定发送什么以及发送给谁。本质上是这样的:funcserver(sNode,myChannelchanstring){fmt.Printf("SERVERLaunchingserver...%s:%s\n",s.ip,s.port)//Startlistening//Wedonotstoplisteninguntilthes