Talk to a socketio server
Project description
Smartphone Connector
This simple package exposes methods to interact with smartphones connected to a socket.io server instance.
Examples
All examples and scripts on GitHub
Draw 3x3 checker board
from smartphone_connector import Connector
phone = Connector('https://io.lebalz.ch', 'FooBar')
# draw a 3x3 checker board
phone.set_grid([
['black','white','black'],
['white','black','white'],
['black','white','black']
], broadcast=True)
# print the letter A
phone.set_grid([
[9,9,9,9],
[9,0,0,9],
[9,9,9,9],
[9,0,0,9],
[9,0,0,9],
])
results on all devices in the following screen.
When broadcast is set to False (default), only the FooBar devices display the checker board.
Stream & display gyroscope data
from smartphone_connector import Connector, GyroMsg
import matplotlib.pyplot as plt
phone = Connector('https://io.lebalz.ch', 'FooBar')
MAX_SAMPLES = 300
y = []
x = []
plt.show()
def on_gyro(data: GyroMsg):
if len(x) > MAX_SAMPLES:
x.pop(0)
y.pop(0)
x.append(data.time_stamp)
y.append([data.alpha, data.beta, data.gamma])
def on_intervall():
plt.clf()
plt.plot(x, y)
plt.pause(0.01)
phone.on_gyro = on_gyro
phone.subscribe(on_intervall, interval=0)
Displays gyroscope data from the smartphone on a Matplotlib-Plot.
Package and upload to pip
@see this tutorial
rm -rf build/ dist/ smartphone_connector.egg-info/ && \
python3 setup.py sdist bdist_wheel && \
python3 -m twine upload dist/*
Changelog
- 0.0.115: fix audio path checking
- 0.0.113: fix reporting of
pos_xandpos_yon collisions - 0.0.111: support
timerevents from socketio_server - 0.0.110: add method
report(value: int | float, report_type: str, to: '__GAME_RUNNER__') - 0.0.109: fix typo in
update_ellipse - 0.0.108: introduce
clean_playgroundmethod to remove all sprites and lines from the current playground, but keep the playground config as is. And minor bug fixes. - 0.0.107: can mix absolute and relative movements with
apply_movementsandapply_movement - 0.0.106: add possibility to control movement distances
- 0.0.105: control repeats of movement sequences
- 0.0.104: add methods to apply movements to objects:
# single movement device.apply_movement(id='circle', direction=[1, 1], time_span=1, speed=3) # movement sequence with device.apply_movements(id='circle') as movement: movement(direction=[1, 0], time_span=1, speed=2) movement(direction=[-1, 0], time_span=1, speed=2)
- adding example playground_flappy.py
- 0.0.103: change function annotation of
set_timeout(callback, time, repeat=1)instead ofset_timeout(callback, interval, iteration_count=inf) - 0.0.102: add alias methods for
subscribe_async:set_timeout,schedule,execute_in - 0.0.101: introduce
move_to(id: str, pos: [x, y], via: [x, y])method to make jumps easyier. Eventauto_movement_posis triggered when an auto movement within a sequence finished. - 0.0.100: support image formats
.gif,.bmp,.webp - 0.0.99: introduce method
add_svg_to_playground(name: str, raw_svg: str)to upload plain svg source text - 0.0.98 fix iteration count
- 0.0.97: introduce sound - provide a
audio_trackssource directory inconfigure_playgroundand start/stop sounds withplay_sound(name: str, id: Optional[str])/stop_sound(name: Optional[str], id: Optional[str]) - 0.0.96 register multiple callback functions with
on(event, clbk) - 0.0.95 support
border_styleandborder_widthfor sprites
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file smartphone_connector-0.0.115.tar.gz.
File metadata
- Download URL: smartphone_connector-0.0.115.tar.gz
- Upload date:
- Size: 30.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e8146e4b20795ed97a8e85226bc0eaf1c2a989175ba8a986118246ba56587d1f
|
|
| MD5 |
dee63e41e54a48510d211a19a8300730
|
|
| BLAKE2b-256 |
98d696115de4911fc7c10caf0d969779562a80b85f78417f4437927a03d98dcf
|
File details
Details for the file smartphone_connector-0.0.115-py3-none-any.whl.
File metadata
- Download URL: smartphone_connector-0.0.115-py3-none-any.whl
- Upload date:
- Size: 30.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f7d5ee113acf0c2200c09dc3087c8aa1e5debe6a4d2c3aa548b83d9db70d5427
|
|
| MD5 |
de3cc17035a3102b4cc123fb8e9f1b9b
|
|
| BLAKE2b-256 |
dcf2650ec42d9da6831fdfdb2d0525315804ecfb621984c127c0fa227dc2e6ce
|