semvec/pypi-packages huggingface dataset:
ringcentral-bot-framework-extension-world-time 0.2.0
Simple ringcentral chatbot framework python extension that add `world time` command support.
Keywords: ringcentral,bot,framework


# [ringcentral-chatbot-python-ext-world-time](https://github.com/zxdong262/ringcentral-chatbot-python-ext-world-time) <!-- omit in toc -->

Simple ringcentral chatbot python extension that add `world time` command support.

![screen](screenshots/ss.png)

## Table of contents <!-- omit in toc -->

- [Use](#use)
- [Prerequisites](#prerequisites)
- [Quick start](#quick-start)
- [Test bot](#test-bot)
- [License](#license)

## Use

[Use/write extensions](https://github.com/zxdong262/ringcentral-chatbot-python/blob/master/docs/extensions.md)

## Prerequisites

- Python3.6+ and Pip3
- Create the bot App: Login to [developer.ringcentral.com](https://developer.ringcentral.com) and create an `public` `Server/Bot` app with permissions: `ReadContacts, ReadMessages, ReadPresence, Contacts, ReadAccounts, SMS, InternalMessages, ReadCallLog, ReadCallRecording, WebhookSubscriptions, Glip`

## Quick start

```bash

# use virtualenv
pip3 install virtualenv # might need sudo

# init virtual env
virtualenv venv --python=python3

# use env
source ./venv/bin/activate

# install deps
pip install -r requirements.txt

# run ngrok proxy
# since bot need https server,
# so we need a https proxy for ringcentral to visit our local server
./bin/proxy
# will show:
# Forwarding https://xxxxx.ngrok.io -> localhost:8989

# create env file
cp .sample.env .env
# then edit .env, set proper setting,
# and goto your ringcentral app setting page, set OAuth Redirect URI to https://https://xxxxx.ngrok.io/bot-oauth
RINGCENTRAL_BOT_SERVER=https://xxxxx.ngrok.io

## for bots auth required, get them from your ringcentral app page
RINGCENTRAL_BOT_CLIENT_ID=
RINGCENTRAL_BOT_CLIENT_SECRET=

# create bot config
cp config.sample.py config.py

# run local dev server
./bin/start
```

## Test bot

- Goto your ringcentral app's bot section, click 'Add to glip'
- Login to [https://glip-app.devtest.ringcentral.com](https://glip-app.devtest.ringcentral.com), find the bot by searching its name. Talk to the bot.
- Edit config.py to change bot bahavior and test in [https://glip-app.devtest.ringcentral.com](https://glip-app.devtest.ringcentral.com)

## License

MIT
ringcentral-bot-framework-extension-botinfo 0.4.0
Simple ringcentral chatbot framework python extension that add `bot info` command support.
Keywords: ringcentral,bot,framework


# [ringcentral-chatbot-python-ext-bot-info](https://github.com/zxdong262/ringcentral-chatbot-python-ext-bot-info) <!-- omit in toc -->

Simple ringcentral chatbot python extension that add `bot info` command support.

![screen](screenshots/ss.png)

## Table of contents <!-- omit in toc -->

- [Use](#use)
- [Prerequisites](#prerequisites)
- [Quick start](#quick-start)
- [Test bot](#test-bot)
- [License](#license)

## Use

[Use/write extensions](https://github.com/zxdong262/ringcentral-chatbot-python/blob/master/docs/extensions.md)

## Prerequisites

- Python3.6+ and Pip3
- Create the bot App: Login to [developer.ringcentral.com](https://developer.ringcentral.com) and create an `public` `Server/Bot` app with permissions: `ReadContacts, ReadMessages, ReadPresence, Contacts, ReadAccounts, SMS, InternalMessages, ReadCallLog, ReadCallRecording, WebhookSubscriptions, Glip`

## Quick start

```bash

# use virtualenv
pip3 install virtualenv # might need sudo

# init virtual env
virtualenv venv --python=python3

# use env
source ./venv/bin/activate

# install deps
pip install -r requirements.txt
npm i

# run ngrok proxy
# since bot need https server,
# so we need a https proxy for ringcentral to visit our local server
./bin/proxy
# will show:
# Forwarding https://xxxxx.ngrok.io -> localhost:8989

# create env file
cp .sample.env .env
# then edit .env, set proper setting,
# and goto your ringcentral app setting page, set OAuth Redirect URI to https://https://xxxxx.ngrok.io/bot-oauth
RINGCENTRAL_BOT_SERVER=https://xxxxx.ngrok.io

## for bots auth required, get them from your ringcentral app page
RINGCENTRAL_BOT_CLIENT_ID=
RINGCENTRAL_BOT_CLIENT_SECRET=

# create bot config
cp config.sample.py config.py

# run local dev server
./bin/start
```

## Test bot

- Goto your ringcentral app's bot section, click 'Add to glip'
- Login to [https://glip-app.devtest.ringcentral.com](https://glip-app.devtest.ringcentral.com), find the bot by searching its name. Talk to the bot.
- Edit config.py to change bot bahavior and test in [https://glip-app.devtest.ringcentral.com](https://glip-app.devtest.ringcentral.com)

## License

MIT
mercurius 0.0.1
Yet Another Portfolio Management Toolbox

Yet Another Portfolio Management Toolbox.

**Use at your own risk.**

## Features

* Data Augmentation
    * Concat different assets ohlcv
    * Concat different assets ticker
* Backtest
* Trading algorithms [full list](docs/algorithms.md)


## Contributing

TODOs (Check [ISSUES](https://github.com/dexhunter/mercurius/issues))

## Disclaimer

This project is based on OLPS[1] and PGPortfolio[2]. Many thanks to the authors.

[1] https://github.com/olps/olps
[2] https://github.com/zhengyaoJiang/PGPortfolio
APIDocTest 0.0.3
A lightweight Python WebAPI's documents and tests framework based on __doc__, VanillaJS-AJAX and Flask, but not limited to Flask.
Requires Python: >=2.6, <3
Keywords: pip,apidoc,test,api,document,flask

# APIDocTest
A lightweight Python WebAPI's documents and tests framework based on `__doc__`, VanillaJS-AJAX and Flask, but not limited to Flask.

## Details
Each of API handlers' `__doc__` line which starts with "@" will be treated as API's notes, excludes the leading spaces.
The "::" is the separator between key and value of each APIs='s note.
blanks in both ends of key and value are ignored.

|key|value(samples)|comments|
|:--|:----|:-------|
|@path-parameters|variablex=literalx & variabley=literaly & variablez=literalz|placeholders in router's url, such as "/path/to/<containeruuid>/status".|
|@request-parameters|variablex=literalx & variabley=literaly & variablez=literalz|like things after "?" in url, such as "http://nagexiucai.com/topic.php?title=ml-in-ten-pictures&md=ml-in-ten-pictures".|
|@request-headers|content-type:text/json;charset=utf-8 & user-agent:mozilla/5.0 gecko/20100101 firefox/38.0||
|@request-body|{"author":"bob-nx"}||
|@response-headers|content-type:text/html;charset=utf-8 & server:werkzeug/0.14.1 python/2.7.5||
|@response-body|"hi"||
|@norm|`==[caseignored]` or `~=[regular expression]` or ##|"==" for "same", "~=" for "similar", "##" for "silent"; if `"[extra]"` supplied, "extra" works.|

## Examples
The core is use `APIDocTest('router', ['methods'], name='name', description='description' version="version")` as handlers' first decorator.

```
from flask import blueprints
from apidoctest import APIDocTest

bapidoctest = blueprints.Blueprint("apidoctest", __name__)

@bapidoctest.route("/fuck", methods=["GET", "POST"])
@APIDocTest("/fuck", ["GET", "POST"], name="fuck", description="uncourteous.")
def Fuck():
    '''
    @path-parameters::
    @request-parameters::
    @request-headers:: Content-Type:application/json
    @request-body:: {"who":"unknown"}
    @response-headers:: Content-Type:text/html;charset=utf-8
    @response-body:: "fuck"
    @norm:: ==
    '''
    return "fuck"

import sys
reload(sys)
sys.setdefaultencoding("utf8")

from flask import Flask, request, render_template_string, json
from apidoctest import APIDocTestTemplateString
serv = Flask("APIDocTestDemo")
@serv.route("/apidoctest")
def documents():
    return render_template_string(APIDocTestTemplateString, data=json.dumps(APIDocTest.apidocs, encoding="utf-8"))
serv.register_blueprint(bapidoctest, url_prefix="/what")
serv.run(debug=False, host="localhost", port=9527)
```

## Result
Use browser(Google Chrome recommended), access `http://localhost:9527/apidoctest`(in examples above).

![](APIDocTestV0.0.3.jpg "Google Chrome 72.0.3626.121 32bit")

- 2xx: <font color='black'>black</font>
- 3xx: <font color='orange'>orange</font>
- 4xx: <font color='blue'>blue</font>
- 5xx: <font color='red'>red</font>

# ToDo
- I18n(Chinese friendly now)
- Parameters validation
- Input/Output grouped by test cases
- Input/Output type adaption
jupyter-kernel-chapel 0.0.4
A Jupyter kernel for chapel
Keywords: jupyter,notebook,kernel,chapel

# Jupyter Kernel Chapel

## Using Chapel in Jupyter

It is possible to use [Jupyter](http://www.jupyter.org) as front-end for Chapel.

### Installation

These installation instructions are for Ubuntu Linux 16.04 (Xenial).

#### Python and Jupyter

If you want to run the Jupyter notebook locally on your computer, you need a recent version
of Python 2 or 3 and Jupyter installed. The use of Python 3 is recommended.

To install Python3 run

```bash

apt-get install python3-pip
```

We recommend using Python3, but you can also use Python2.

To install Jupyter using pip, run

```bash

pip3 install jupyter
```

#### Chapel

Please install Chapel in shared mode

```bash

export CHPL_LIB_PIC=shared
```

#### Jupyter Kernel Chapel

```bash
pip3 install jupyter-kernel-chapel

```
ip2loc-server 0.0.1
A tiny web server for ipv4 to geo location conversion
Requires Python: >=3.5

# IP2LOC

A tiny web server for ipv4 to geo location conversion

## System Prerequisites

- [SQLite](https://www.sqlite.org/index.html) is available 
(SQLite is included by default in [these systems](https://en.wikipedia.org/wiki/SQLite#Operating_systems).)
- Only Python3 supported, `>= 3.6` is preferred.

## Quick Start

### Installation & Run

```bash
pip install --user ip2loc-server
ip2loc
```

Now you have already started the server. 
Try

```bash
curl localhost:8080/ip2loc?ip=216.58.221.228
# {"ip": "216.58.221.228", "country_code": "NL", "country_name": "Netherlands", "region_name": "Noord-Holland", "city_name": "Amsterdam", "latitude": 52.37403, "longitude": 4.88969}
curl localhost:8080/url2loc?url=www.google.com
# {"ip": "216.58.221.228", "country_code": "NL", "country_name": "Netherlands", "region_name": "Noord-Holland", "city_name": "Amsterdam", "latitude": 52.37403, "longitude": 4.88969}
curl localhost:8080/url2loc?url=https://www.google.com
# {"ip": "216.58.221.228", "country_code": "NL", "country_name": "Netherlands", "region_name": "Noord-Holland", "city_name": "Amsterdam", "latitude": 52.37403, "longitude": 4.88969}
```

to test the server is working well. Run `ip2loc -h` for more helps.

### Server Port

By default the server listens to port `8080`, you could ONLY modify this in the configure file.
(Arguments specified listening ports are not supported)

In addition multiple ports could be configured as

```python
# multiple listening port example
PORTS = (8080, 8081, 8082,)
```

### Paths

I deliberately do not list the data, configure and log paths in this README file,
for the reason that the default paths are all relative paths which are not easy to be described clearly.

To find these useful path info, run

```bash
ip2loc --showpath
```

## Track the Latest Data

All the data used in this project is from 
[https://lite.ip2location.com/database/ip-country-region-city-latitude-longitude](https://lite.ip2location.com/database/ip-country-region-city-latitude-longitude).

For the reason that the data on this site are updated monthly, you need track the latest data manually.

- Download "IPV4CSV" and remember the current version of data
![IP2LocationSiteSnapshot](https://raw.githubusercontent.com/ZhenningLang/ip2loc-server/master/docs/images/IP2LocationLite.png)

- Run `ip2loc --loaddata --dataver="current version" --csv="CSV/DATA/PATH/NAME.CSV"` or `ip2loc --loaddata --dataver="current version" --zip="ZIP/DATA/PATH/NAME.ZIP"`


## How This Works

Briefly: Binary search of ordered ip data

See [https://lite.ip2location.com/database/ip-country-region-city-latitude-longitude](https://lite.ip2location.com/database/ip-country-region-city-latitude-longitude) 
for details of data structure.

## Contact Me

[zhenninglang@163.com](mailto:zhenninglang@163.com)
dataclass_structor 0.0.6
Typed object structure/destructure.
Requires Python: >=3.7

# dataclass_structor

[![Documentation Status](https://readthedocs.org/projects/dataclass-structor/badge/?version=latest)](https://dataclass-structor.readthedocs.io/en/latest/?badge=latest)
![PyPI - License](https://img.shields.io/pypi/v/dataclass_structor.svg)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/dataclass_structor.svg)
![PyPI - License](https://img.shields.io/pypi/l/dataclass_structor.svg)
[![Build Status](https://api.cirrus-ci.com/github/hockeybuggy/dataclass_structor.svg)](https://cirrus-ci.com/github/hockeybuggy/dataclass_structor)

A type aware structor/destructor for python value objects.


## Install

```shell
pip install dataclass_structor
```


## Documentation

The [docs for this project can be found here](dataclass-structor.readthedocs.io).


## Example

```python

import dataclasses
import typing

from dataclass_structor import structure, unstructure


@dataclasses.dataclass
class Invite:
    email: str
    guests: typing.List["Guest"]


@dataclasses.dataclass
class Guest:
    first_name: typing.Optional[str] = None


value_type = Invite(
    email="testing",
    guests=[
      Guest(first_name="John"),
      Guest(),
    ],
)

x = unstructure(value_type)
assert x == {"email": "", "guests": [{"first_name": "John"}, {"first_name": None}]}

assert structure(x, Invite) == value_type
```