semvec/pypi-packages huggingface dataset:
easymail 0.3.0
abstraction layer on top of the email package to make sending    emails a little bit easier
License: MIT

easymail
========

[![Build Status](https://secure.travis-ci.org/mfussenegger/easymail.png?branch=master)](https://travis-ci.org/mfussenegger/easymail)

The email package in pythons standard library is pretty low level.
Easymail aims to add an abstraction layer on top that sets some (hopefully) sane
defaults.

These defaults include:

* using utf-8 encoding by default. 
* important headers (like Date)


A simple example:

    from easymail import Email
    from smtplib import SMTP
    e = Email('My Name <mymail@somedomain.com>', 'recipient@otherdomain.org')
    e.subject = 'hello world'
    e.body = 'with some non-äscii charöcters'

    smtp = SMTP('mymailserver.com')
    smtp.sendmail(*e.args)

Slightly more advanced:

    from easymail import Email, Attachment
    from smtplib import SMTP
    e = Email('My Name <mymail@somedomain.com>', 'recipient@otherdomain.org')
    e.subject = 'hello world'
    e.body = 'with some non-äscii charöcters'

    e.attachments.append(Attachment('./path/to/picture.png'))
    e.attachments.append(Attachment('./path/to/document.pdf'))

    smtp = SMTP('mymailserver.com')
    smtp.sendmail(*e.args)


Dependencies
============

Pure Python 3.5+

License
=======

Easymail is licensed under the MIT license.
ejabberdctl.py 0.2
Python client for Ejabberd XML-RPC Administration API
License: MIT
Keywords: ejabberd xmlrpc administration api

README
======

`ejabberdctl.py` provides Python client for Ejabberd XML-RPC Administration API.


Installation
------------

::

    pip install ejabberdctl.py

::

    git clone https://gitlab.com/markuz/ejabberdctl.py.git ejabberdctlpy
    cd ejabberdctlpy
    python setup.py install


Usage
-----

Simple example which displays Ejabberd status
(assuming that XML-RPC runs on `127.0.0.1` and port `4560`)::

    from ejabberdctl import ejabberdctl

    host = 'example.com'
    username = 'admin'
    password = 'admin'

    ejabberdctl = ejabberdctl(host, username, password)
    print ejabberdctl.status()


The same example with custom setting of XML-RPC host::

    from ejabberdctl import ejabberdctl

    host = 'example.com'
    username = 'admin'
    password = 'admin'

    ejabberdctl = ejabberdctl(host, username, password,
                              protocol='https', server='example.com', port=4560,
                              admin=True, verbose=True)
    print ejabberdctl.status()


Host vs Server
^^^^^^^^^^^^^^

`host` is the domain served by Ejabberd
(ie. one of your `hosts` defined in `ejabberd.yml`).

`server` is the server IP where Ejabberd runs the XML-RPC module.
Typically it is configured to run on `127.0.0.1` (`localhost`) on port `4560`.


Tests
-----

::

    from ejabberdctl.tests import ejabberdctl_tests

    SERVER = 'example.com'
    USERNAME = 'admin'
    PASSWORD = 'admin'

    tests = ejabberdctl_tests(SERVER, USERNAME, PASSWORD)
    tests.run_all()


Coverage
--------

Number of Ejabberd XML-RPC Administration API commands in ``ejabberdctl.py``::

    egrep "def " ejabberdctl.py|grep -v "def __init__\|def ctl"|wc -l
    126


Implementation
^^^^^^^^^^^^^^

Number of implemented commands::

    egrep "def " ejabberdctl.py|grep -v "def __init__\|def ctl\|TODO"|wc -l
    72

Number of commands to implement::

    egrep "def " ejabberdctl.py|grep -v "def __init__\|def ctl"|grep TODO|wc -l
    54


Tests
^^^^^

Number of tests in the testing suite::

    egrep "def " tests.py|grep -v "def __init__\|def run_all\|TODO"|wc -l
    31

Number of tests to implement::

    egrep "def " tests.py|grep -v "def __init__\|def run_all"|grep TODO|wc -l
    95


Contributing
------------

If you wish to help out with the project, please see `todo.txt` for a list of tasks that need doing.


-----

Changelog
=========

v0.2
----

* changed `ejabberdctl.py` constructor - host is now server and server is now host
  ie. the terminology is aligned with what those inputs mean.
  Also see `README`; `Host vs Server` information.

v0.1
----

* initial version