semvec/pypi-packages huggingface dataset:
slacksound 0.1.2
Create playlists democratically by reactions in Slack
License: MIT
Keywords: slacksound

============================
SlackSound
============================

Create playlists democratically by reactions in Slack

!! THIS IS STILL A BETA !!

* Documentation: https://slacksound.readthedocs.org/en/latest

Features
--------
* Get Youtube videos reactions from message attachments and add the song to a Spotify playlist.


How does it work
----------------
The application acts as a middle man between Slack and Spotify by getting the
reactions count from a message's attachment and then looking up the title on
Spotify's. If the title has been found, it will add the one that has best
popularity to the queue.

In order to the bot pick up the song, a user must paste a Youtube URL in the
channel. The bot will start looking for reactions on that URL and get the title
of the video which it will be used as a search text for Spotify.

A message will be shown back to the channel whether the bot could add the song
to the playlist or not.

It is worth mention that the tracks of the playlist will be removed at every
time the bot it is started. This is by design as it in a jukebox.




History
-------

0.0.1 (2017-10-13)
------------------

* First release
* Methods for Spotify API
* Slackclient wrapper

0.0.2 (2017-10-14)
------------------

* CLI draft
* Credentials parsing
* Minimal logic

0.0.3 (2017-10-14)
------------------

* Reaction name and reaction count configurable

0.0.4 (2017-10-26)
------------------

* Refactored SpotifyClient with objects and methods
* Refactored SlackSound interface

0.0.5 (2017-10-27)
------------------

* Entrypoint for main

0.1.0 (2017-10-27)
------------------

* Try a private channel first or fallback as a public one if fails

0.1.1 (2017-10-27)
------------------

* Logging for user

0.1.2 (2017-10-27)
------------------

* Fix local variable referenced before assignment
frame_logging 0.2.1
Your project description goes here
License: MIT
Keywords: frame_logging

=============================
Frame Logging
=============================

.. image:: https://badge.fury.io/py/frame_logging.svg
    :target: https://badge.fury.io/py/frame_logging

.. image:: https://travis-ci.org/ItsfBisounours/frame_logging.svg?branch=master
    :target: https://travis-ci.org/ItsfBisounours/frame_logging

.. image:: https://codecov.io/gh/ItsfBisounours/frame_logging/branch/master/graph/badge.svg
    :target: https://codecov.io/gh/ItsfBisounours/frame_logging

Your project description goes here

Documentation
-------------

The full documentation is at https://frame_logging.readthedocs.io.

Quickstart
----------

1. Install Frame Logging::

    pip install frame_logging

2. Add it to your `INSTALLED_APPS`:

.. code-block:: python

    INSTALLED_APPS = (
        ...
        'frame_logging.apps.FrameLoggingConfig',
        ...
    )

3. Create a class to format your extra logging kwargs 

.. code-block:: python

    # 

    class FrameFormatterExample(FrameFormatter):
    
        # format methods
    
        @classmethod
        def get_format_behaviour(cls):
            return OrderedDict([
                ('customer_id', cls.format_customer_id),
            ])
    
        @classmethod
        def format_customer_id(cls, customer_id):
            return "customer_id={}".format(customer_id)
    
        # then if you need to, you can add new method to transform extra kwargs
        # transform methods
    
        @classmethod
        def get_transform_kwargs_methods(cls):
            return   {
                'order': cls.transform_order,
            }
    
        @classmethod
        def transform_order(cls, order, **kwargs):
            kwargs['customer_id'] = order.customer['id']
            return kwargs


4. Configure frame loggin in your settings.py

.. code-block:: python

    # mandatory, if you do not priovide a formatter the app will crash
    FRAME_FORMATTER=FrameFormatterExample()

    # optionnal, default = ' - '
    FRAME_SEPARATOR='+'


5. Use it:

.. code-block:: python

    import frame_logging.log as log

    class Order(object):
        def __init__(self):
            self.customer = {'id': 1}

    log.info('Renewed contract %s', 'test', order=order)
    # 'Renewed contract test - customer_id=1'))



Features
--------

* TODO

Running Tests
-------------

Does the code actually work?

::

    source <YOURVIRTUALENV>/bin/activate
    (myenv) $ pip install tox
    (myenv) $ tox

Credits
-------

Tools used in rendering this package:

*  Cookiecutter_
*  `cookiecutter-djangopackage`_

.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`cookiecutter-djangopackage`: https://github.com/pydanny/cookiecutter-djangopackage




History
-------

0.1.0 (2017-10-26)
++++++++++++++++++

* First release on PyPI.