diff options
Diffstat (limited to 'python-pychannels.spec')
-rw-r--r-- | python-pychannels.spec | 610 |
1 files changed, 610 insertions, 0 deletions
diff --git a/python-pychannels.spec b/python-pychannels.spec new file mode 100644 index 0000000..4ec342d --- /dev/null +++ b/python-pychannels.spec @@ -0,0 +1,610 @@ +%global _empty_manifest_terminate_build 0 +Name: python-pychannels +Version: 1.2.3 +Release: 1 +Summary: API client for the Channels app - https://getchannels.com +License: The MIT License +URL: https://github.com/fancybits/pychannels +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/ae/2f/0507b87768ff74d20157bebb00207de8bb7f78e36fb8713a71c0ca45b13b/pychannels-1.2.3.tar.gz +BuildArch: noarch + +Requires: python3-requests + +%description +<p align="center"> +<a href="https://getchannels.com"><img src="http://getchannels.com/assets/img/icon-1024.png" width="256"></a> +</p> + +# PyChannels!! + +This is a simple Python client that lets you talk to the [Channels](https://getchannels.com) app while it's running. + +## Installation + +You can install PyChannels from PyPi using `pip3 install pychannels` (use pip if you're still using Python 2). + +## Usage + +Just create a new client and give it the host name of the device that Channels is running on. You can optionally pass in a port, which defaults to `57000`. + +```python +from pychannels import Channels + +client = Channels("192.168.1.192", 57000) + +client.pause() +client.resume() +client.stop() +``` + +## API + +All responses return the current status of Channels. You can get this simply with `client.status()`, but every other method will return it as well. + +### Status Data + +Status data is returned as a simple Dict. Here's an example. + +```python +{ + 'status': 'paused', + 'muted': False, + 'channel': { + 'number': '35.1', + 'name': 'Fox-HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/28719/s28719_h5_aa.png' + }, + 'now_playing': { + 'title': 'The Mick', + 'season_number': 2, + 'episode_number': 16, + 'episode_title': 'The Accident', + 'image_url': 'http://fanc.tmsimg.com/assets/p12900954_b_h6_ad.jpg', + 'summary': 'Chip offers to help Sabrina get a fake ID in exchange for a night out with her and her friends.' + } +} +``` + +### Info + +You can fetch 2 sets of information from Channels. Its current status and the +current set of favorite channels. + +#### Status + + client.status() + +This returns the result documented above. + + +#### Favorite Channels + + client.favorite_channels() + +This returns an array of channel Dicts. Here's an example. + +```python +[{ + 'number': '12.1', + 'call_sign': 'WWBT-HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/28717/s28717_h5_aa.png', + 'name': 'NBC HD', + 'hd': True +}, { + 'number': '35.1', + 'call_sign': 'Fox-HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/28719/s28719_h5_aa.png', + 'name': 'Fox-HD', + 'hd': True +}, { + 'number': '552', + 'call_sign': 'TBS HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/58515/s58515_h5_aa.png', + 'name': 'TBS HD', + 'hd': True +}, { + 'number': '570', + 'call_sign': 'ESPN HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/32645/s32645_h5_aa.png', + 'name': 'ESPN HD', + 'hd': True +}] +``` + +### Commands + +You can control Channels with these methods. + +#### Toggle Mute + client.toggle_mute + +#### Toggle Captions + client.toggle_cc + +#### Channel Up + client.channel_up + +#### Channel Down + client.channel_down + +#### Previous Channel + client.previous_channel +Jump back to the last watched channel. + +#### Toggle Pause + client.toggle_pause + +#### Toggle Recording + client.toggle_record +Record the program playing on the current channel + +#### Pause + client.pause + +#### Resume + client.resume + +#### Stop + client.stop + +#### Seek By + client.seek_by(seconds) +Seek forward or backward on the timeline with an inputted number of seconds. Negative values go backward. + +#### Seek Forward + client.seek_forward +Seek forward in the timeline by the set number of seconds in Channels. + +#### Skip Forward + client.skip_forward +Skip to the next chapter mark. This is for recordings made with Channels DVR that have their commercials indexed. + +#### Seek Backward + client.seek_backward +Seek backward in the timeline by the set number of seconds in Channels. + +#### Skip Backward + client.skip_backward +Skip to the previous chapter mark. This is for recordings made with Channels DVR that have their commercials indexed. + +#### Play Channel + client.play_channel(channel_number) +Play a channel by passing it the channel number. + +#### Play Recording + client.play_recording(recording_id) +Play a recording from Channels. + +#### Navigate + client.navigate(section) +Change to a section of the app by providing its name. EX, `Guide`, `Library`, `Live TV` + +#### Notify + client.notify(title, message) +Present a notification while playing video. + +## Contributions + +* fork +* create a feature branch +* open a Pull Request + + + + +%package -n python3-pychannels +Summary: API client for the Channels app - https://getchannels.com +Provides: python-pychannels +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-pychannels +<p align="center"> +<a href="https://getchannels.com"><img src="http://getchannels.com/assets/img/icon-1024.png" width="256"></a> +</p> + +# PyChannels!! + +This is a simple Python client that lets you talk to the [Channels](https://getchannels.com) app while it's running. + +## Installation + +You can install PyChannels from PyPi using `pip3 install pychannels` (use pip if you're still using Python 2). + +## Usage + +Just create a new client and give it the host name of the device that Channels is running on. You can optionally pass in a port, which defaults to `57000`. + +```python +from pychannels import Channels + +client = Channels("192.168.1.192", 57000) + +client.pause() +client.resume() +client.stop() +``` + +## API + +All responses return the current status of Channels. You can get this simply with `client.status()`, but every other method will return it as well. + +### Status Data + +Status data is returned as a simple Dict. Here's an example. + +```python +{ + 'status': 'paused', + 'muted': False, + 'channel': { + 'number': '35.1', + 'name': 'Fox-HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/28719/s28719_h5_aa.png' + }, + 'now_playing': { + 'title': 'The Mick', + 'season_number': 2, + 'episode_number': 16, + 'episode_title': 'The Accident', + 'image_url': 'http://fanc.tmsimg.com/assets/p12900954_b_h6_ad.jpg', + 'summary': 'Chip offers to help Sabrina get a fake ID in exchange for a night out with her and her friends.' + } +} +``` + +### Info + +You can fetch 2 sets of information from Channels. Its current status and the +current set of favorite channels. + +#### Status + + client.status() + +This returns the result documented above. + + +#### Favorite Channels + + client.favorite_channels() + +This returns an array of channel Dicts. Here's an example. + +```python +[{ + 'number': '12.1', + 'call_sign': 'WWBT-HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/28717/s28717_h5_aa.png', + 'name': 'NBC HD', + 'hd': True +}, { + 'number': '35.1', + 'call_sign': 'Fox-HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/28719/s28719_h5_aa.png', + 'name': 'Fox-HD', + 'hd': True +}, { + 'number': '552', + 'call_sign': 'TBS HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/58515/s58515_h5_aa.png', + 'name': 'TBS HD', + 'hd': True +}, { + 'number': '570', + 'call_sign': 'ESPN HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/32645/s32645_h5_aa.png', + 'name': 'ESPN HD', + 'hd': True +}] +``` + +### Commands + +You can control Channels with these methods. + +#### Toggle Mute + client.toggle_mute + +#### Toggle Captions + client.toggle_cc + +#### Channel Up + client.channel_up + +#### Channel Down + client.channel_down + +#### Previous Channel + client.previous_channel +Jump back to the last watched channel. + +#### Toggle Pause + client.toggle_pause + +#### Toggle Recording + client.toggle_record +Record the program playing on the current channel + +#### Pause + client.pause + +#### Resume + client.resume + +#### Stop + client.stop + +#### Seek By + client.seek_by(seconds) +Seek forward or backward on the timeline with an inputted number of seconds. Negative values go backward. + +#### Seek Forward + client.seek_forward +Seek forward in the timeline by the set number of seconds in Channels. + +#### Skip Forward + client.skip_forward +Skip to the next chapter mark. This is for recordings made with Channels DVR that have their commercials indexed. + +#### Seek Backward + client.seek_backward +Seek backward in the timeline by the set number of seconds in Channels. + +#### Skip Backward + client.skip_backward +Skip to the previous chapter mark. This is for recordings made with Channels DVR that have their commercials indexed. + +#### Play Channel + client.play_channel(channel_number) +Play a channel by passing it the channel number. + +#### Play Recording + client.play_recording(recording_id) +Play a recording from Channels. + +#### Navigate + client.navigate(section) +Change to a section of the app by providing its name. EX, `Guide`, `Library`, `Live TV` + +#### Notify + client.notify(title, message) +Present a notification while playing video. + +## Contributions + +* fork +* create a feature branch +* open a Pull Request + + + + +%package help +Summary: Development documents and examples for pychannels +Provides: python3-pychannels-doc +%description help +<p align="center"> +<a href="https://getchannels.com"><img src="http://getchannels.com/assets/img/icon-1024.png" width="256"></a> +</p> + +# PyChannels!! + +This is a simple Python client that lets you talk to the [Channels](https://getchannels.com) app while it's running. + +## Installation + +You can install PyChannels from PyPi using `pip3 install pychannels` (use pip if you're still using Python 2). + +## Usage + +Just create a new client and give it the host name of the device that Channels is running on. You can optionally pass in a port, which defaults to `57000`. + +```python +from pychannels import Channels + +client = Channels("192.168.1.192", 57000) + +client.pause() +client.resume() +client.stop() +``` + +## API + +All responses return the current status of Channels. You can get this simply with `client.status()`, but every other method will return it as well. + +### Status Data + +Status data is returned as a simple Dict. Here's an example. + +```python +{ + 'status': 'paused', + 'muted': False, + 'channel': { + 'number': '35.1', + 'name': 'Fox-HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/28719/s28719_h5_aa.png' + }, + 'now_playing': { + 'title': 'The Mick', + 'season_number': 2, + 'episode_number': 16, + 'episode_title': 'The Accident', + 'image_url': 'http://fanc.tmsimg.com/assets/p12900954_b_h6_ad.jpg', + 'summary': 'Chip offers to help Sabrina get a fake ID in exchange for a night out with her and her friends.' + } +} +``` + +### Info + +You can fetch 2 sets of information from Channels. Its current status and the +current set of favorite channels. + +#### Status + + client.status() + +This returns the result documented above. + + +#### Favorite Channels + + client.favorite_channels() + +This returns an array of channel Dicts. Here's an example. + +```python +[{ + 'number': '12.1', + 'call_sign': 'WWBT-HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/28717/s28717_h5_aa.png', + 'name': 'NBC HD', + 'hd': True +}, { + 'number': '35.1', + 'call_sign': 'Fox-HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/28719/s28719_h5_aa.png', + 'name': 'Fox-HD', + 'hd': True +}, { + 'number': '552', + 'call_sign': 'TBS HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/58515/s58515_h5_aa.png', + 'name': 'TBS HD', + 'hd': True +}, { + 'number': '570', + 'call_sign': 'ESPN HD', + 'image_url': 'http://fanc.tmsimg.com/h5/NowShowing/32645/s32645_h5_aa.png', + 'name': 'ESPN HD', + 'hd': True +}] +``` + +### Commands + +You can control Channels with these methods. + +#### Toggle Mute + client.toggle_mute + +#### Toggle Captions + client.toggle_cc + +#### Channel Up + client.channel_up + +#### Channel Down + client.channel_down + +#### Previous Channel + client.previous_channel +Jump back to the last watched channel. + +#### Toggle Pause + client.toggle_pause + +#### Toggle Recording + client.toggle_record +Record the program playing on the current channel + +#### Pause + client.pause + +#### Resume + client.resume + +#### Stop + client.stop + +#### Seek By + client.seek_by(seconds) +Seek forward or backward on the timeline with an inputted number of seconds. Negative values go backward. + +#### Seek Forward + client.seek_forward +Seek forward in the timeline by the set number of seconds in Channels. + +#### Skip Forward + client.skip_forward +Skip to the next chapter mark. This is for recordings made with Channels DVR that have their commercials indexed. + +#### Seek Backward + client.seek_backward +Seek backward in the timeline by the set number of seconds in Channels. + +#### Skip Backward + client.skip_backward +Skip to the previous chapter mark. This is for recordings made with Channels DVR that have their commercials indexed. + +#### Play Channel + client.play_channel(channel_number) +Play a channel by passing it the channel number. + +#### Play Recording + client.play_recording(recording_id) +Play a recording from Channels. + +#### Navigate + client.navigate(section) +Change to a section of the app by providing its name. EX, `Guide`, `Library`, `Live TV` + +#### Notify + client.notify(title, message) +Present a notification while playing video. + +## Contributions + +* fork +* create a feature branch +* open a Pull Request + + + + +%prep +%autosetup -n pychannels-1.2.3 + +%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-pychannels -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Wed May 31 2023 Python_Bot <Python_Bot@openeuler.org> - 1.2.3-1 +- Package Spec generated |