如何使用 email 服务作为存储空间? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
chunyang
V2EX    问与答

如何使用 email 服务作为存储空间?

  •  
      chunyang 2014-08-17 12:08:43 +08:00 4805 次点击
    这是一个创建于 4139 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我正在给 gnome-notes (aka Bijiben, 是 GNOME 下的一个笔记应用) 添加 email 服务作为存储空间的支持,可以把用户的笔记保存在邮箱里,和 Mac 下的默认“便签”功能类似。

    1. 什么样的开源库支持对 email 的操作?用户的认证在 GNOME 控制中心完成,可以编程获得用户名等信息。

    2. email 中的邮件的是如何组织起来的?是不是相当于:每一个邮件相当对一个文件,都放在同一个文件夹里。每个邮件都有“标签” (label)的属性,以此把邮件分类?
    25 条回复    2014-08-18 08:19:00 +08:00
    nicai000
        1
    nicai000  
       2014-08-17 12:20:35 +08:00
    don't abuse...
    ritksm
        2
    ritksm  
       2014-08-17 12:23:32 +08:00
    现在Google Storage 100G一个月5刀。。何必做这种又违反使用协议又不讨好的事情呢
    CRight
        3
    CRight  
       2014-08-17 12:26:10 +08:00
    Imapbox
    chunyang
        4
    chunyang  
    OP
       2014-08-17 12:26:39 +08:00
    @nicai000 well, 这个是我的 GSoC 项目的一个需求,已经没机会商量这个功能比不必要了,并且这个需求也不是我凭空想到的,确实是有用户提及的。
    CRight
        5
    CRight  
       2014-08-17 12:27:07 +08:00
    我只看了标题......
    shiny
        6
    shiny  
    PRO
       2014-08-17 12:36:15 +08:00
    很久以前有过这样的软件,把 Gmail 当做储存空间来着。不过现在觉得很没意义。
    jay_chiu
        7
    jay_chiu  
       2014-08-17 12:46:00 +08:00
    gnote就是这么操作的
    chunyang
        8
    chunyang  
    OP
       2014-08-17 13:56:16 +08:00
    @jay_chiu gnote 支持文件夹和 Webdav 同步,没看到有支持 email 服务的。


    @shiny Mac 下的官方客户端“便签”是可以把便签放在 GMail 中的,不久之前也用过一个 email 的m Mac 客户端,可能是 Airmail ,用 Email 实现了 TODO 的功能,实现应该类似。
    aveline
        9
    aveline  
       2014-08-17 14:15:52 +08:00
    只在 Gmail 里搞的话,用 Gmail 自己的 API 即可:
    https://developers.google.com/gmail/api/

    通用的话,搜下 IMAP 和 SMTP。

    另外,Gmail 刚出来的时候就有这样子的软件了,找了下,不过现在这么做真的没什么意义,所以说开源世界的人就是闲的蛋疼:
    http://download.cnet.com/GMail-Drive/3000-2248_4-10671687.html
    moonmv
        10
    moonmv  
       2014-08-17 14:34:06 +08:00   1
    这问题简单,Gmail发邮件给自己,不就可以解决了,万能的
    MarioLuisGarcia
        11
    MarioLuisGarcia  
       2014-08-17 14:44:43 +08:00
    @moonmv 是的,我用的163的邮箱,新建一个邮箱,给自己发东西,可以带附件的。不过163时不时发些推广邮件过来。
    jay_chiu
        12
    jay_chiu  
       2014-08-17 15:26:41 +08:00


    jay_chiu
        13
    jay_chiu  
       2014-08-17 15:27:41 +08:00
    jay_chiu
        14
    jay_chiu  
       2014-08-17 15:28:46 +08:00   1
    贴来贴去第三张老是错。
    chunyang
        15
    chunyang  
    OP
       2014-08-17 15:40:09 +08:00
    @jay_chiu 同样的功能,我需要尽可能用 GNOME 的技术实现,用户的认证已经整合到 GNOME 中了,现在就还不清楚,用什么开源库能提供操作 email 的功能。

    并且,我也不清楚如何把 笔记(文件)映射到邮件?
    Tianpu
        16
    Tianpu  
       2014-08-17 16:00:59 +08:00   1
    怎么感觉相当于一个邮件客户端了,只是不以邮件的方式显示。

    那就比较简单了,当然你肯定比较喜欢imap的:
    http://tools.ietf.org/html/rfc3501 imap v4r1
    http://tools.ietf.org/html/rfc2822

    imap client library各种语言都有资源,可以省事不少,不全部自己写或许也可以的。

    数据展示虽然也很困难,不过已经不是同一个问题了。
    Tianpu
        17
    Tianpu  
       2014-08-17 16:04:04 +08:00
    @Tianpu 二进制文件可以放到邮件附件里,然后比较小的数据的话觉得直接放在邮件正文也没啥

    如果允许,创建个新的目录和邮件目录不冲突,或者是不是有什么内置的闲置的系统目录能利用也很方便吧
    cnallenzhao
        18
    cnallenzhao  
       2014-08-17 16:35:06 +08:00
    @chunyang GSoC还没做完?
    pagecho
        19
    pagecho  
       2014-08-17 17:11:55 +08:00 via iPhone
    很多年前,gmail刚出现的时网络上其他免费邮箱大小都不到1g,所以那时就有人做了工具,把gmail 当作网盘。那个工具会生成一个虚拟的盘符,把文件拽进入就会自动同步。哈哈哈这么多年了,回忆起来挺有意思的。
    chunyang
        20
    chunyang  
    OP
       2014-08-17 18:13:00 +08:00
    @cnallenzhao 还没呢,中期检查过后,就什么事都没干了(个人问题,导师催过),前两个星期,在学校里重修,外加CSDN的 SoC 的也要中期检查,时间冲突太严重了,只能突击了。

    实现 email 这个功,相当于我 GSoC 一半的工作量,现在离导师评价的 deadline 大概还有 36 hrs,我觉得实现个 demo (出现很多硬编码)还是有可能的。

    这两天估计睡不成觉了,我还指望着这两个项目给我当学费和生活费。

    P.S. CSDN 中期奖金 2000 RMB,税 (2000 - 800) * 20% = 240 RMB,实得 1760 RMB,本来钱就和 GSoC 没法比,现在又搞成这样子。
    cnallenzhao
        21
    cnallenzhao  
       2014-08-17 18:40:19 +08:00
    @chunyang pat pat,你还参加了CSDN的SoC啊,真是辛苦。
    我的GSoC基本做完了,虽然当时Proposal里面写的功能没有完全做完,但是导师说我第二个feature做完就给我过了,所以剩下的feature我准备GSoC结束以后继续贡献了。
    加油!
    chunyang
        22
    chunyang  
    OP
       2014-08-17 19:07:51 +08:00
    @cnallenzhao 我在 CSDN 的中期验收的前一天夜里才第一次正式联系导师,最终还是险过。其实,我选的这两个项目使用的技术相似,都是 C/GTK+ 的开发,(其它的都不会),光用 C 和 GObject 实现个类,就能有一两百行,莫名其妙的成就感太过强烈,误以为自己太牛逼了,结果什么都没干完,或许是由于是业余选手,非 CS 专业的缘故吧,记得几个 API ,凑到一起实现个把功能,就高兴得不得了。


    希望以后能到 Redhat, Mozilla 这样的地方工作学习。
    chunyang
        23
    chunyang  
    OP
       2014-08-17 19:21:30 +08:00
    对我来说目前的最佳方案是用:Evolution (一个特别重量级的 email 应用)提供的一些库了,似乎我的选择并不多。

    我已经在这个地方耗了一个下午了,必要时,只能抱导师大腿了(请导师直接给我提交个补丁)。

    这个问题就到此为止吧,thx。
    cnallenzhao
        24
    cnallenzhao  
       2014-08-17 20:01:22 +08:00
    @chunyang 我也是非CS专业啊,我还在文科学校呢,其实我觉得很多CS专业的人会的也不一定多……不过确实应该多学习;)
    0x61
        25
    0x61  
       2014-08-18 08:19:00 +08:00
    买了个Chromebook,Google给了两年的免费100G。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5159 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 08:05 PVG 16:05 LAX 00:05 JFK 03:05
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86