{ "info": { "author": "Hans-Peter Locher", "author_email": "hans-peter.locher@inquant.de", "bugtrack_url": null, "classifiers": [ "Framework :: Plone", "Framework :: Zope2", "Framework :: Zope3", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "mailtoplone.base\n================\n\nOverview\n--------\n\nbasic package for mailtoplone\n\nAuthors\n-------\n\nStefan Eletzhofer --\n \"\"\n\nHans-Peter Locher --\n \"\"\n\nCopyright (c) 2007-2008 InQuant GmbH -- \"http://www.inquant.de\"\n\nDependencies\n------------\n\nAdditional egg dependecies\n**************************\n\nicalendar\npython-dateutil\n\nContents\n--------\n\nContent Types\n*************\n\nInBox:\n\n Provides an XMLRPCView to access it's drop method.\n Dropping a mailstring ( a plaintext string containing the whole email including envelope),\n a plone content type Email will be generated, the data field will contain the mailstring.\n\nEmail:\n \n File like content type conatining the mailstring inside the data field.\n View registered for IEmail: emailview ( as standard view )\n shows: \n \n - headers Subject, From, To, Cc\n \n - body (prefers text/html parts over text/plain parts)\n\n - attachments (download link)\n\nAdapters\n********\n\nMailDropBox:\n \n Basic adapter, providing a drop method generating an Email out of the dropped mailstring\n\nBlogMailDropBox:\n\n Advanced adapter, creating a news item out of the dropped mailstring.\n\nEventMailDropBox:\n\n Advanced adapter, creating an event out of text/calendar attachments inside the dropped mailstring\n\nUtilities\n*********\n\nBaseDropBoxFactory:\n\n Used to find objects providing IMailDropBoxMarker with id=key. Used by\n the deliver action in mailtoplone.contentrules.\n\nICalEventFactory:\n\n Taking an icalendar string, this utility creates an ATEvent out of each\n VEVENT. The implementation supports keywordarguments, passing them to\n invokeFactory. \n This implementation correctly imports events exported from plone, as a\n first approach.\n It is used by the EventMailDropBox.\n\nMarkerInterfaces\n****************\n\nYou can use these markerinterfaces (@@manage_interfaces) to mark a folder\nfor mailtoplone (remember to reindex the marked object). Afterwards the\nfolder can be found and delivered mails to.\n\nIMailDropBoxMarker(Interface):\n \"\"\" marker interface for mail drop boxes \"\"\"\n\nIBlogMailDropBoxMarker(IMailDropBoxMarker):\n \"\"\" marker interface for blog mail drop boxes \"\"\"\n\nIEventMailDropBoxMarker(IMailDropBoxMarker):\n \"\"\" marker interface for event mail drop boxes \"\"\"\n\nScripts\n*******\n\ndropemail:\n\n File system python script, to drop a mail to an inbox(url), specify the mail as file or use stdin\n\nvim: set ft=rst tw=75 nocin nosi ai sw=4 ts=4 expandtab:\n\nChange history\n**************\n\nChangelog\n=========\n\n0.2.7 (2009-07-22)\n------------------\n\n - use subject to generate id for type Email,\n so we avoid being limited to 1000 emails per \n dropbox (fixes #7) [hplocher]\n\n0.2.6 (2008-12-02)\n------------------\n\n - fix dependency in setup.py to now require\n python-dateutil (was dateutil earlier)\n - correct propertiestool.xml to not purge, and only add Email to\n typesUseViewActionInListings [hplocher]\n - for earlier changes see included CHANGELOG\n\nDetailed Documentation\n**********************\n\nmailtoplone.base\n================\n\nSetup TestEnvironment\n---------------------\n\nSetting up a inbox containing email1, email2::\n\n >>> self.setRoles(('Manager',))\n >>> self.portal.invokeFactory('InBox', 'inbox')\n 'inbox'\n >>> self.portal.inbox.invokeFactory('Email', 'email1')\n 'email1'\n >>> self.portal.inbox.invokeFactory('Email', 'email3')\n 'email3'\n\nAdapter\n-------\n\nLet's test the drop function useable with the MailDropBox Adapter,\nThe dropped mails get their id's using the NameChooser::\n\n >>> from mailtoplone.base.interfaces import IMailDropBox\n >>> IMailDropBox(self.portal.inbox).drop(\"some data\")\n >>> IMailDropBox(self.portal.inbox).drop(\"some data\")\n >>> IMailDropBox(self.portal.inbox).drop(\"some data\")\n >>> self.portal.inbox.objectIds()\n ['email1', 'email3', 'email', 'email-1', 'email-2']\n\nLet's test some values of a created email::\n\n >>> self.portal.inbox.email.title\n 'email'\n >>> self.portal.inbox.email.data\n 'some data'\n >>> self.portal.inbox.email.meta_type\n 'Email'\n\n\nBrowserview xmlrpcview\n----------------------\n\nLet's test if the xmlrpcview has a drop method which creates an Email in\nthe inbox::\n\n >>> theview = self.portal.inbox.restrictedTraverse('xmlrpcview')\n >>> theview.drop(\"dropped via view\")\n >>> self.portal.inbox.objectIds()\n ['email1', 'email3', 'email', 'email-1', 'email-2', 'email-3']\n >>> self.portal.inbox.listFolderContents()[5].data\n 'dropped via view'\n\nEmail title\n-----------\n\nWe generate the tile for email objects out of the subject, otherwise we'll\ntake the id.\n\nFirst, let's create various minimalistic emails::\n\n >>> withsubject = 'subject: withsubject'\n >>> withSubject = 'Subject: withSubject'\n >>> withbetreff = 'betreff: withbetreff'\n >>> withBetreff = 'Betreff: withBetreff'\n\nLet's drop this emails to our inbox::\n\n >>> theview.drop(withsubject)\n >>> self.portal.inbox.listFolderContents()[6].Title()\n 'withsubject'\n\n >>> theview.drop(withSubject)\n >>> self.portal.inbox.listFolderContents()[7].Title()\n 'withSubject'\n\n >>> theview.drop(withbetreff)\n >>> self.portal.inbox.listFolderContents()[8].Title()\n 'withbetreff'\n\n >>> theview.drop(withBetreff)\n >>> self.portal.inbox.listFolderContents()[9].Title()\n 'withBetreff'\n\nIf we have multiple subject / betreff / ... in our mail, let's take the\nfirst Subject::\n\n >>> theview.drop('Subject: SUB\\nBetreff: BET')\n >>> self.portal.inbox.listFolderContents()[10].Title()\n 'SUB'\n\nWe decode the subject header for presentation, let's drop an encoded subject::\n\n >>> theview.drop('Subject: =?ISO-8859-15?Q?=FCld=F6m?=')\n >>> self.portal.inbox.listFolderContents()[11].Title() == '\u00fcld\u00f6m'\n True\n\n::\n\n vim: set ft=rst tw=75 nocin nosi ai sw=4 ts=4 expandtab:\n\n\nContributors\n************\n\nHans-Peter Locher, InQuant GmbH\n\nStefan Eletzhofer, InQuant GmbH\n\nDownload\n********", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://svn.plone.org/svn/collective/mailtoplone/mailtoplone.base", "keywords": "", "license": "GPL", "maintainer": null, "maintainer_email": null, "name": "mailtoplone.base", "package_url": "https://pypi.org/project/mailtoplone.base/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/mailtoplone.base/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://svn.plone.org/svn/collective/mailtoplone/mailtoplone.base" }, "release_url": "https://pypi.org/project/mailtoplone.base/0.2.7/", "requires_dist": null, "requires_python": null, "summary": "basic package for mailtoplone", "version": "0.2.7" }, "last_serial": 794476, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "792c3f720f6d83b151ff087b13a17d2c", "sha256": "a60622ed5249cb551cabc67dd750dc77492eef0d838ba45af599ebab03186c22" }, "downloads": -1, "filename": "mailtoplone.base-0.1-py2.4.egg", "has_sig": false, "md5_digest": "792c3f720f6d83b151ff087b13a17d2c", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 45182, "upload_time": "2008-02-01T07:52:14", "url": "https://files.pythonhosted.org/packages/e1/41/55347b1c395f84f175a2c79f13765849e49cef3073a97f4628f92d0a60fa/mailtoplone.base-0.1-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "cb8410c29d045d083d0f1af5cefaee5f", "sha256": "dbe46432534a9797b5c442ea2a70bb8aa6316d57cdc8c8ce9d8a6c22f48e57bc" }, "downloads": -1, "filename": "mailtoplone.base-0.1.tar.gz", "has_sig": false, "md5_digest": "cb8410c29d045d083d0f1af5cefaee5f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11246, "upload_time": "2008-02-01T07:52:14", "url": "https://files.pythonhosted.org/packages/a3/e4/040c451321a2a3c53941c50424002821d4b969c2d9590d394c427cb1093c/mailtoplone.base-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "93cde5722603f5741067a5e89babb54f", "sha256": "717c40338050ca96188d2fbd398813e608c655c75c09cfeffde4b80e472e5ab7" }, "downloads": -1, "filename": "mailtoplone.base-0.2-py2.4.egg", "has_sig": false, "md5_digest": "93cde5722603f5741067a5e89babb54f", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 61317, "upload_time": "2008-02-20T12:00:57", "url": "https://files.pythonhosted.org/packages/69/e0/4f56d3db4eef1c2ef97f2b8a7c269858ce865140f3f12d5e22220df5bba2/mailtoplone.base-0.2-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "3cec2315a7d947cfed5b150b125bf7e7", "sha256": "28b421b460fb4a4c331aec0d43adfceb8184fcdda445d1b1dfd7fcf99946a4fb" }, "downloads": -1, "filename": "mailtoplone.base-0.2.tar.gz", "has_sig": false, "md5_digest": "3cec2315a7d947cfed5b150b125bf7e7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15021, "upload_time": "2008-02-20T12:00:57", "url": "https://files.pythonhosted.org/packages/97/79/6b07d96f6fe12183718fe62978df0b862982a08e7289e96d38b76bcfe408/mailtoplone.base-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "883ecf26d2551ae2e543df83fdf20123", "sha256": "233c382516b523e303e54f77b4b085c88d8d09083149ad76a575e10f5bfcdf58" }, "downloads": -1, "filename": "mailtoplone.base-0.2.1-py2.4.egg", "has_sig": false, "md5_digest": "883ecf26d2551ae2e543df83fdf20123", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 151532, "upload_time": "2008-02-29T14:38:56", "url": "https://files.pythonhosted.org/packages/8f/f7/c471afa022c029a57b3b99cefc9e6136dabd6dd73253d1dfc0e126ac7bec/mailtoplone.base-0.2.1-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "6070cff1b9d42518858f4e0d2f593bd5", "sha256": "997378d10e795d3dd85ef53a52e2e4a124e753f8ec520d7e8084af604512138d" }, "downloads": -1, "filename": "mailtoplone.base-0.2.1.tar.gz", "has_sig": false, "md5_digest": "6070cff1b9d42518858f4e0d2f593bd5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 105071, "upload_time": "2008-02-29T14:38:55", "url": "https://files.pythonhosted.org/packages/e8/91/2ddb1133cdc13ef8c36374dfd0d88500f3b7bd473b7d587d9cca74d95df3/mailtoplone.base-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "0d16e7883146646aa65a3c47eb79307b", "sha256": "06a0c4521e0aff2dfbbd5d10237ecacfe496849435896e15df855bf898b487fc" }, "downloads": -1, "filename": "mailtoplone.base-0.2.2-py2.4.egg", "has_sig": false, "md5_digest": "0d16e7883146646aa65a3c47eb79307b", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 152114, "upload_time": "2008-03-11T09:19:37", "url": "https://files.pythonhosted.org/packages/5c/1e/db6c16d4a5da628db1de886faef7918ab5838bd1d6ec600ddaf1bc92154d/mailtoplone.base-0.2.2-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "534a601b5673c854e818cfa266bb437a", "sha256": "cefecdfa27e650eabd4443ee9e3c31070707c1bde1e7c8092ac9f5922d7ec0ea" }, "downloads": -1, "filename": "mailtoplone.base-0.2.2.tar.gz", "has_sig": false, "md5_digest": "534a601b5673c854e818cfa266bb437a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 105375, "upload_time": "2008-03-11T09:19:35", "url": "https://files.pythonhosted.org/packages/e2/aa/c4b3e53b3fd384b7b7aeb01abc54ab714e9f4fbd908de2dccb0354c0b819/mailtoplone.base-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "0c96824051f5923f12d57eff775d3e57", "sha256": "b92440f730f45549d86b016ec2f13525a6b8fedcc5292110192676b19165065a" }, "downloads": -1, "filename": "mailtoplone.base-0.2.3-py2.4.egg", "has_sig": false, "md5_digest": "0c96824051f5923f12d57eff775d3e57", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 152410, "upload_time": "2008-03-22T12:21:26", "url": "https://files.pythonhosted.org/packages/09/f6/b3cdd1ec2db324196da7a8200087a74fa6df905bc19a96dc5b399a05a7c6/mailtoplone.base-0.2.3-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "3dcf7d50221e9fafd58ee64dc0c18194", "sha256": "4ac5409db59696a548a3ca484c9535bc1bdc308ddabcd0d3ca7e6e0f5ced69b5" }, "downloads": -1, "filename": "mailtoplone.base-0.2.3.tar.gz", "has_sig": false, "md5_digest": "3dcf7d50221e9fafd58ee64dc0c18194", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 105480, "upload_time": "2008-03-22T12:21:22", "url": "https://files.pythonhosted.org/packages/91/87/b69e21397f55e121be0b0fd13fe0ac20b103e63558220fba27b437b8a19f/mailtoplone.base-0.2.3.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "928c70643a6bcb891977b747ba1611d5", "sha256": "d843f323c4055400a2c6a8a2904349936fa2849ede6a36911717f60898d395ed" }, "downloads": -1, "filename": "mailtoplone.base-0.2.5-py2.4.egg", "has_sig": false, "md5_digest": "928c70643a6bcb891977b747ba1611d5", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 153461, "upload_time": "2008-06-25T13:44:27", "url": "https://files.pythonhosted.org/packages/83/02/4ddd1fcfcb4b7883581426619cf2ffe8f7b107abe6fafb6808bcf878eaca/mailtoplone.base-0.2.5-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "d0802f4c07c0af7aaa355bbe9907e3f0", "sha256": "a0e2022c84d2bff177f9be8a1094172daca5033352bfac884f10ca56827d47ac" }, "downloads": -1, "filename": "mailtoplone.base-0.2.5.tar.gz", "has_sig": false, "md5_digest": "d0802f4c07c0af7aaa355bbe9907e3f0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 106155, "upload_time": "2008-06-25T13:44:26", "url": "https://files.pythonhosted.org/packages/45/e5/45146c16458a11ee7b67cb1ec78da84fc2d108d5248a432807a8feadc695/mailtoplone.base-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "d62cd9fa59a55d4d4cf98529e721dfe5", "sha256": "9c13dd8093f00aa71a5f4f37f8010b1c5c6eceb871f992da2edfae9ad97358bd" }, "downloads": -1, "filename": "mailtoplone.base-0.2.6-py2.4.egg", "has_sig": false, "md5_digest": "d62cd9fa59a55d4d4cf98529e721dfe5", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 157692, "upload_time": "2008-12-02T11:09:40", "url": "https://files.pythonhosted.org/packages/97/48/b28e85e05bbf9802098359c114296087cc5e739bd6a4f39c326caead6c62/mailtoplone.base-0.2.6-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "0f0e308cd9cad584042f29548b3d4424", "sha256": "9c6e1c8b705454e624334d404fa33923a8e9e12de3b0ccc82eb7d783ece449f2" }, "downloads": -1, "filename": "mailtoplone.base-0.2.6.tar.gz", "has_sig": false, "md5_digest": "0f0e308cd9cad584042f29548b3d4424", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 110314, "upload_time": "2008-12-02T11:09:39", "url": "https://files.pythonhosted.org/packages/2f/de/2194a82602abbffa0ee6ea205bfa60cf6b99067b08cbe00c3b272bb7b466/mailtoplone.base-0.2.6.tar.gz" } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "ccf24b1e9c99f313502f9d7370653882", "sha256": "a20c44e67a120a4792f1355589fda0a3b47b4b3a1b4051cd98a8c01dbd8ecc30" }, "downloads": -1, "filename": "mailtoplone.base-0.2.7.zip", "has_sig": false, "md5_digest": "ccf24b1e9c99f313502f9d7370653882", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 138518, "upload_time": "2009-07-22T13:47:51", "url": "https://files.pythonhosted.org/packages/10/d0/c64371f5e0059ba5374dd3667e97a31fa6b9e1b24b207fa6372d9d6c5f57/mailtoplone.base-0.2.7.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ccf24b1e9c99f313502f9d7370653882", "sha256": "a20c44e67a120a4792f1355589fda0a3b47b4b3a1b4051cd98a8c01dbd8ecc30" }, "downloads": -1, "filename": "mailtoplone.base-0.2.7.zip", "has_sig": false, "md5_digest": "ccf24b1e9c99f313502f9d7370653882", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 138518, "upload_time": "2009-07-22T13:47:51", "url": "https://files.pythonhosted.org/packages/10/d0/c64371f5e0059ba5374dd3667e97a31fa6b9e1b24b207fa6372d9d6c5f57/mailtoplone.base-0.2.7.zip" } ] }