Skip to main content

propyte

introduction

This is a template Python program and utilities associated.

setup

sudo pip install propyte

Set up Festival, eSpeak, Pico TTS and deep_throat for speech capabilities.

sudo apt-get -y install \
    festival            \
    espeak              \
    libttspico0         \
    libttspico-utils    \
    libttspico-data
sudo pip install deep_throat

Set up Telegram and Telegram messenger CLI for Telegram messaging capabilities.

sudo su -
apt-get -y install  \
    libreadline-dev \
    libconfig-dev   \
    libssl-dev      \
    lua5.2          \
    liblua5.2-dev   \
    libevent-dev    \
    libjansson-dev  \
    libpython-dev   \
    make

cd /usr/share
git clone --recursive https://github.com/vysheng/tg.git
cd tg
./configure
make
cd ..
chmod -R 755 tg/

Set up Pylint and Graphviz for UML representations

sudo apt-get -y install graphviz libgraphviz-dev python-dev
sudo pip install pylint pygraphviz

setup LXPLUS with Pushbullet messaging

Set up a Pushbullet account, create an access token and store a Pushbullet token in the file ~/.pushbullet. Install Pushbullet on a mobile device.

Miniconda2 is used as an environment. By default, Miniconda is installed at ~/miniconda2 and the Miniconda2 install path is prepended to PATH in ~/.bashrc.

wget https://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh
chmod 755 Miniconda2-latest-Linux-x86_64.sh
./Miniconda2-latest-Linux-x86_64.sh

export PATH=""${HOME}"/miniconda2/bin:$PATH"
pip install propyte
propyte_alert --text="hello world"

smuggle

Web modules can be imported using the function smuggle. Use this functionality with due regard to security.

shijian_test = propyte.smuggle(
    URL = "https://raw.githubusercontent.com/wdbm/shijian/master/shijian.py"
)
sys_test = propyte.smuggle(
    module_name = "sys"
)

import_ganzfeld, silence

The context manager function import_ganzfeld can be used to import a module such that the module is isolated from command line options and arguments. This can be useful for ROOT.

with propyte.import_ganzfeld():
    from ROOT import *

The context manager function silence can be used to silence some code.

user interactions

There are various functions useful for user interactions: get_keystroke, get_y_or_n, get_input, get_input_time_limited, pause and interrogate.

commands

The function engage_command is available for running Bash commands in the foreground or in the background using subprocess.

speech

The function say is available for generating speech using a number of different speech programs, including Festival, eSpeak, Pico TTS and deep_throat.

notifications

Telegram

This module provides Telegram messaging capabilities. It can send and receive Telegram messages. It does this using Telegram, Telegram CLI and pytg.

In order to use Telegram functionality, ensure that both Telegram and Telegram CLI are running. The function start_messaging_Telegram attempts to launch Telegram CLI if it does not detect it running.

/usr/share/tg/bin/telegram-cli     \
    -R                             \
    -W                             \
    -P 4458                        \
    -k /usr/share/tg/tg-server.pub \
    --json                         \
    --permanent-peer-ids           \
    --permanent-peer-ids           \
    --disable-output               \
    --daemonize

Messages can be sent in a way like the following:

import propyte
propyte.start_messaging_Telegram()

propyte.send_message_Telegram(recipient = "@wbreadenmadden", text = "hi")

Messages receiving can be engaged in the following way:

import propyte
propyte.start_messaging_Telegram()
propyte.start_receiving_messages_Telegram()

Messages received can be accessed in a number of ways using various function arguments.

propyte.get_messages_received_Telegram()
propyte.get_last_message_received_Telegram()
propyte.get_text_last_message_received_Telegram()

UML

UML diagrams of a Python project can be generated using Pylint and Graphviz. This can be done by executing the Bash script UML.sh in the working directory of the project. This executes the following commands:

project_name="${PWD##*/}"
pyreverse -my -A -o png -p ${project_name} **.py

This should generate two images, classes_propyte.png and packages_propyte.png. The classes image is a representation of the classes of the project, their respective data attributes (with types), their respective methods and their inheritances. The packages image is a representation of the module dependencies of the project.

Metadata

Release files for propyte 2017.4.20.1654

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for propyte 2017.4.20.1654
File Size Uploaded Provenance
propyte-2017.4.20.1654.tar.gz 20.7 kB Without provenance Details

Release files / propyte-2017.4.20.1654.tar.gz

Download URL propyte-2017.4.20.1654.tar.gz
Size 20.7 kB
Tags Source
SHA-256 checksum
How to use checksums
7ccda08cc436c692d5e074ac9eceda766971e01afa91727bc0e9954e0820ef24
BLAKE2b-256 checksum
How to use checksums
f4a69a34475e11b3197d5baec2f3f5d30a55bfbbc172513aae2e03b6d1d10fd7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for propyte 2017.4.20.1654

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page