<commit_before>hangups
=======

hangups is a Python library for writing instant messaging clients that
interoperate with `Google Hangouts <https://www.google.ca/hangouts/>`_. hangups
also includes a reference client with a command line user interface.

In May 2013, Google replaced their "Talk" instant messaging product, based on
XMPP, with "Hangouts", which adopted a `proprietary, non-interoperable protocol
<https://www.eff.org/deeplinks/2013/05/google-abandons-open-standards-instant-messaging>`_.
Because of this, hangouts must be implemented by reverse-engineering. For now
it's still possible to connect to Hangouts using the standard XMPP protocol,
but this restricts features like group messaging that hangups allows.

hangups is working, but is pre-alpha quality. The API will change, and it
shouldn't be relied on for serious work.

`Screenshot <https://github.com/tdryer/hangups/blob/master/screenshot.png>`

What works
----------

* logging in (with second factor support)
* switching between conversations
* receiving chat messages and other events via push
* sending chat messages

Running
-------

Python 3.4 is required (Python 3.3 might work but is not tested). To install
and run (virtualenv recommended): ::

 pip install hangups
 hangups

Follow the prompts to log into your Google account. In the Conversations tab,
use arrow keys to scroll through the list of existing conversations, and press
return to select one. In a conversation, use arrow keys to scroll through
messages and to select the "Send message" box. Type a message and press return
to send it. At any time you use use ctrl+d and ctrl+u to switch between tabs.<commit_msg>Fix missing underscore in readme<commit_after>hangups
=======

hangups is a Python library for writing instant messaging clients that
interoperate with `Google Hangouts <https://www.google.ca/hangouts/>`_. hangups
also includes a reference client with a command line user interface.

In May 2013, Google replaced their "Talk" instant messaging product, based on
XMPP, with "Hangouts", which adopted a `proprietary, non-interoperable protocol
<https://www.eff.org/deeplinks/2013/05/google-abandons-open-standards-instant-messaging>`_.
Because of this, hangouts must be implemented by reverse-engineering. For now
it's still possible to connect to Hangouts using the standard XMPP protocol,
but this restricts features like group messaging that hangups allows.

hangups is working, but is pre-alpha quality. The API will change, and it
shouldn't be relied on for serious work.

`Screenshot <https://github.com/tdryer/hangups/blob/master/screenshot.png>`_

What works
----------

* logging in (with second factor support)
* switching between conversations
* receiving chat messages and other events via push
* sending chat messages

Running
-------

Python 3.4 is required (Python 3.3 might work but is not tested). To install
and run (virtualenv recommended): ::

 pip install hangups
 hangups

Follow the prompts to log into your Google account. In the Conversations tab,
use arrow keys to scroll through the list of existing conversations, and press
return to select one. In a conversation, use arrow keys to scroll through
messages and to select the "Send message" box. Type a message and press return
to send it. At any time you use use ctrl+d and ctrl+u to switch between tabs.
{'fraction_non_alphanumeric': 0.07365269461077845, 'fraction_numerical': 0.008383233532934131, 'mean_word_length': 4.486042692939245, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 6, 'lorem ipsum': 0, 'www.': 4, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6359304', 'n_tokens_mistral': 921, 'n_tokens_neox': 850, 'n_words': 443}