%global _empty_manifest_terminate_build 0 Name: python-Pysher Version: 1.0.8 Release: 1 Summary: Pusher websocket client for python, based on Erik Kulyk's PythonPusherClient License: MIT URL: https://github.com/deepbrook/Pysher Source0: https://mirrors.nju.edu.cn/pypi/web/packages/12/a0/d0638470df605ce266991fb04f74c69ab1bed3b90ac3838e9c3c8b69b66a/Pysher-1.0.8.tar.gz BuildArch: noarch %description [![PyPI version](https://badge.fury.io/py/Pysher.svg)](https://badge.fury.io/py/Pysher) # Pysher `pysher` is a python module for handling pusher websockets. It is based on @ekulyk's `PythonPusherClient`. A key difference is the dropped support for pre-3.5 Python versions. This fork is meant as a continuation of the project, and is currently in **maintenance mode**. The author is no longer actively using the library, but PRs including fixes, updates and features are welcome and encouraged. ## Installation Simply run `python setup.py install` - or install via pip `pip install pysher`. This module depends on websocket-client module available from: ## Example Example of using this pusher client to consume websockets: ```python import pysher # Add a logging handler so we can see the raw communication data import logging root = logging.getLogger() root.setLevel(logging.INFO) ch = logging.StreamHandler(sys.stdout) root.addHandler(ch) pusher = pysher.Pusher(appkey) def my_func(*args, **kwargs): print("processing Args:", args) print("processing Kwargs:", kwargs) # We can't subscribe until we've connected, so we use a callback handler # to subscribe when able def connect_handler(data): channel = pusher.subscribe('mychannel') channel.bind('myevent', my_func) pusher.connection.bind('pusher:connection_established', connect_handler) pusher.connect() while True: # Do other things in the meantime here... time.sleep(1) ``` Sending pusher events to a channel can be done simply using the pusher client supplied by pusher. You can get it here: import pusher pusher.app_id = app_id pusher.key = appkey p = pusher.Pusher() p['mychannel'].trigger('myevent', 'mydata') ## Performance Pysher relies on websocket-client (websocket-client on pyPI, websocket import in code), which by default does utf5 validation in pure python. This is somewhat cpu hungry for lot's of messages (100's of KB/s or more). To optimize this validation consider installing the wsaccel module from pyPI to let websocket-client use C-compiled utf5 validation methods (websocket does this automatically once wsaccel is present and importable). ## Thanks A big thanks to @ekulyk for developing the [PythonPusherClient](https://github.com/ekulyk/PythonPusherClient) library, as well as the developers contributing bug-fixes, patches and other PRs to the project <3. You can find them listed next to their contributed change in the Changelog section. ## Copyright MTI License - See LICENSE for details. # Changelog ## Version 1.0.6 ### Fixed - #55 Allow data fields to be empty for other events, too, thanks to @[Rubensei](https://github.com/Rubensei) ## Version 1.0.5 ### Fixed - #53 Allow data fields to be empty, thanks to @[Rubensei](https://github.com/Rubensei) ## Version 1.0.4 ### Fixed - Reverts a patch introduced in 1.0.3 ## Version 1.0.2 ### Fixed - #38 Fix missing `ẁs` arg for websocket app callbacks, thanks to @[squgeim](https://github.com/squgeim) ## Version 1.0.0 ### Updated - #35 Support websocket-client >0.48 only and fix reconnect error, thanks to @[agronholm](https://github.com/agronholm) **This change may break existing setups and is backwards-incompatible!** ## Version 0.5.0 ### Added - #14 Added support for cluster configuration, thanks to @[Yvictor](https://github.com/Yvictor) ### Fixed - #30 Require websocket-client version 0.48 or earlier. - #24 Signature generation now works as expected, thanks to @[agronholm](https://github.com/agronholm) - #31 Name threads of the pysher lib for better debugging, thanks to @[caliloo](https://github.com/caliloo) ## Version 0.4.2 ### Fixed: - #11 Global Logger settings no longer overridden in Connection logger ## Version 0.4.0 ### Added: - #8 Add support for WebSocket over HTTP proxy, thanks to @[1tgr](https://github.com/1tgr) ## Version 0.3.0 ### Added: - #7 Auto-resubscribe to channels after reconnecting, thanks to @[pinealan](https://github.com/pinealan) ### Fixed: - #4, #5 Updated references to the library name, thanks to @[deanmaniatis](https://github.com/deanmaniatis) ## Version 0.2.0 ### Added: - #2 Allow for token generated by auth endpoint, thanks to @[wardcraigj](https://github.com/wardcraigj) - #3 Allow instantiation with custom host, thanks to @[wardcraigj](https://github.com/wardcraigj) %package -n python3-Pysher Summary: Pusher websocket client for python, based on Erik Kulyk's PythonPusherClient Provides: python-Pysher BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-Pysher [![PyPI version](https://badge.fury.io/py/Pysher.svg)](https://badge.fury.io/py/Pysher) # Pysher `pysher` is a python module for handling pusher websockets. It is based on @ekulyk's `PythonPusherClient`. A key difference is the dropped support for pre-3.5 Python versions. This fork is meant as a continuation of the project, and is currently in **maintenance mode**. The author is no longer actively using the library, but PRs including fixes, updates and features are welcome and encouraged. ## Installation Simply run `python setup.py install` - or install via pip `pip install pysher`. This module depends on websocket-client module available from: ## Example Example of using this pusher client to consume websockets: ```python import pysher # Add a logging handler so we can see the raw communication data import logging root = logging.getLogger() root.setLevel(logging.INFO) ch = logging.StreamHandler(sys.stdout) root.addHandler(ch) pusher = pysher.Pusher(appkey) def my_func(*args, **kwargs): print("processing Args:", args) print("processing Kwargs:", kwargs) # We can't subscribe until we've connected, so we use a callback handler # to subscribe when able def connect_handler(data): channel = pusher.subscribe('mychannel') channel.bind('myevent', my_func) pusher.connection.bind('pusher:connection_established', connect_handler) pusher.connect() while True: # Do other things in the meantime here... time.sleep(1) ``` Sending pusher events to a channel can be done simply using the pusher client supplied by pusher. You can get it here: import pusher pusher.app_id = app_id pusher.key = appkey p = pusher.Pusher() p['mychannel'].trigger('myevent', 'mydata') ## Performance Pysher relies on websocket-client (websocket-client on pyPI, websocket import in code), which by default does utf5 validation in pure python. This is somewhat cpu hungry for lot's of messages (100's of KB/s or more). To optimize this validation consider installing the wsaccel module from pyPI to let websocket-client use C-compiled utf5 validation methods (websocket does this automatically once wsaccel is present and importable). ## Thanks A big thanks to @ekulyk for developing the [PythonPusherClient](https://github.com/ekulyk/PythonPusherClient) library, as well as the developers contributing bug-fixes, patches and other PRs to the project <3. You can find them listed next to their contributed change in the Changelog section. ## Copyright MTI License - See LICENSE for details. # Changelog ## Version 1.0.6 ### Fixed - #55 Allow data fields to be empty for other events, too, thanks to @[Rubensei](https://github.com/Rubensei) ## Version 1.0.5 ### Fixed - #53 Allow data fields to be empty, thanks to @[Rubensei](https://github.com/Rubensei) ## Version 1.0.4 ### Fixed - Reverts a patch introduced in 1.0.3 ## Version 1.0.2 ### Fixed - #38 Fix missing `ẁs` arg for websocket app callbacks, thanks to @[squgeim](https://github.com/squgeim) ## Version 1.0.0 ### Updated - #35 Support websocket-client >0.48 only and fix reconnect error, thanks to @[agronholm](https://github.com/agronholm) **This change may break existing setups and is backwards-incompatible!** ## Version 0.5.0 ### Added - #14 Added support for cluster configuration, thanks to @[Yvictor](https://github.com/Yvictor) ### Fixed - #30 Require websocket-client version 0.48 or earlier. - #24 Signature generation now works as expected, thanks to @[agronholm](https://github.com/agronholm) - #31 Name threads of the pysher lib for better debugging, thanks to @[caliloo](https://github.com/caliloo) ## Version 0.4.2 ### Fixed: - #11 Global Logger settings no longer overridden in Connection logger ## Version 0.4.0 ### Added: - #8 Add support for WebSocket over HTTP proxy, thanks to @[1tgr](https://github.com/1tgr) ## Version 0.3.0 ### Added: - #7 Auto-resubscribe to channels after reconnecting, thanks to @[pinealan](https://github.com/pinealan) ### Fixed: - #4, #5 Updated references to the library name, thanks to @[deanmaniatis](https://github.com/deanmaniatis) ## Version 0.2.0 ### Added: - #2 Allow for token generated by auth endpoint, thanks to @[wardcraigj](https://github.com/wardcraigj) - #3 Allow instantiation with custom host, thanks to @[wardcraigj](https://github.com/wardcraigj) %package help Summary: Development documents and examples for Pysher Provides: python3-Pysher-doc %description help [![PyPI version](https://badge.fury.io/py/Pysher.svg)](https://badge.fury.io/py/Pysher) # Pysher `pysher` is a python module for handling pusher websockets. It is based on @ekulyk's `PythonPusherClient`. A key difference is the dropped support for pre-3.5 Python versions. This fork is meant as a continuation of the project, and is currently in **maintenance mode**. The author is no longer actively using the library, but PRs including fixes, updates and features are welcome and encouraged. ## Installation Simply run `python setup.py install` - or install via pip `pip install pysher`. This module depends on websocket-client module available from: ## Example Example of using this pusher client to consume websockets: ```python import pysher # Add a logging handler so we can see the raw communication data import logging root = logging.getLogger() root.setLevel(logging.INFO) ch = logging.StreamHandler(sys.stdout) root.addHandler(ch) pusher = pysher.Pusher(appkey) def my_func(*args, **kwargs): print("processing Args:", args) print("processing Kwargs:", kwargs) # We can't subscribe until we've connected, so we use a callback handler # to subscribe when able def connect_handler(data): channel = pusher.subscribe('mychannel') channel.bind('myevent', my_func) pusher.connection.bind('pusher:connection_established', connect_handler) pusher.connect() while True: # Do other things in the meantime here... time.sleep(1) ``` Sending pusher events to a channel can be done simply using the pusher client supplied by pusher. You can get it here: import pusher pusher.app_id = app_id pusher.key = appkey p = pusher.Pusher() p['mychannel'].trigger('myevent', 'mydata') ## Performance Pysher relies on websocket-client (websocket-client on pyPI, websocket import in code), which by default does utf5 validation in pure python. This is somewhat cpu hungry for lot's of messages (100's of KB/s or more). To optimize this validation consider installing the wsaccel module from pyPI to let websocket-client use C-compiled utf5 validation methods (websocket does this automatically once wsaccel is present and importable). ## Thanks A big thanks to @ekulyk for developing the [PythonPusherClient](https://github.com/ekulyk/PythonPusherClient) library, as well as the developers contributing bug-fixes, patches and other PRs to the project <3. You can find them listed next to their contributed change in the Changelog section. ## Copyright MTI License - See LICENSE for details. # Changelog ## Version 1.0.6 ### Fixed - #55 Allow data fields to be empty for other events, too, thanks to @[Rubensei](https://github.com/Rubensei) ## Version 1.0.5 ### Fixed - #53 Allow data fields to be empty, thanks to @[Rubensei](https://github.com/Rubensei) ## Version 1.0.4 ### Fixed - Reverts a patch introduced in 1.0.3 ## Version 1.0.2 ### Fixed - #38 Fix missing `ẁs` arg for websocket app callbacks, thanks to @[squgeim](https://github.com/squgeim) ## Version 1.0.0 ### Updated - #35 Support websocket-client >0.48 only and fix reconnect error, thanks to @[agronholm](https://github.com/agronholm) **This change may break existing setups and is backwards-incompatible!** ## Version 0.5.0 ### Added - #14 Added support for cluster configuration, thanks to @[Yvictor](https://github.com/Yvictor) ### Fixed - #30 Require websocket-client version 0.48 or earlier. - #24 Signature generation now works as expected, thanks to @[agronholm](https://github.com/agronholm) - #31 Name threads of the pysher lib for better debugging, thanks to @[caliloo](https://github.com/caliloo) ## Version 0.4.2 ### Fixed: - #11 Global Logger settings no longer overridden in Connection logger ## Version 0.4.0 ### Added: - #8 Add support for WebSocket over HTTP proxy, thanks to @[1tgr](https://github.com/1tgr) ## Version 0.3.0 ### Added: - #7 Auto-resubscribe to channels after reconnecting, thanks to @[pinealan](https://github.com/pinealan) ### Fixed: - #4, #5 Updated references to the library name, thanks to @[deanmaniatis](https://github.com/deanmaniatis) ## Version 0.2.0 ### Added: - #2 Allow for token generated by auth endpoint, thanks to @[wardcraigj](https://github.com/wardcraigj) - #3 Allow instantiation with custom host, thanks to @[wardcraigj](https://github.com/wardcraigj) %prep %autosetup -n Pysher-1.0.8 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-Pysher -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Tue Apr 25 2023 Python_Bot - 1.0.8-1 - Package Spec generated