summaryrefslogtreecommitdiff
path: root/python-pychannels.spec
diff options
context:
space:
mode:
Diffstat (limited to 'python-pychannels.spec')
-rw-r--r--python-pychannels.spec610
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