From a7b511b97d02ebaf381763219e7b8b37289c13a1 Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Wed, 10 May 2023 07:46:32 +0000 Subject: automatic import of python-jarviscore --- .gitignore | 1 + python-jarviscore.spec | 346 +++++++++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 348 insertions(+) create mode 100644 python-jarviscore.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore index e69de29..c4d7e30 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/jarviscore-0.1.1.426.tar.gz diff --git a/python-jarviscore.spec b/python-jarviscore.spec new file mode 100644 index 0000000..0eb1c45 --- /dev/null +++ b/python-jarviscore.spec @@ -0,0 +1,346 @@ +%global _empty_manifest_terminate_build 0 +Name: python-jarviscore +Version: 0.1.1.426 +Release: 1 +Summary: A python package for creating Twitch Bots +License: GPL +URL: https://dev.azure.com/cubbei/jarviscore +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/32/28/96ded637b9f9644204cf8634240c408798e078aee26ff36252b043f56013/jarviscore-0.1.1.426.tar.gz +BuildArch: noarch + +Requires: python3-PyMySQL +Requires: python3-PyYAML +Requires: python3-requests +Requires: python3-simplejson + +%description +# Jarvis + +[![Build status](https://dev.azure.com/cubbei/JarvisCore/_apis/build/status/JarvisCore-PiP%20Publish)](https://dev.azure.com/cubbei/JarvisCore/_build/latest?definitionId=1) +[![PyPI version](https://badge.fury.io/py/jarviscore@2x.svg)](https://badge.fury.io/py/jarviscore) + + +This is the repository for the JarvisCore framework used to run the Jarvis the twitch bot. +You are welcome to use this library to build your own bot for twitch, please note that there is currently minimal documentation which does tend to make things a little tricky. + +You are welcome to join the "[Looking for Jarvis](https://jarvis.bot/discord)" Discord server for updates and to join the community. + +## Getting Started + +The simplest way to get started is to create a new file, with the basic code below: + +```python +from jarviscore.client import Client + +jarvis = Client(nick="yourbotsname", + token="yourbotstoken", + channels=["a list", "of channels", "to connect to"]) +jarvis.start() +``` + +As an alternative, better practice would be to make use of a config file to store your settings and loading them into the bot when you start. +Use the following code for your bot as a starter. +```python +from jarviscore.client import Client +from jarviscore import Settings + +setting = Settings() + +jarvis = Client(nick=setting.get_setting("nick"), + token=setting.get_setting("token"), + channels=setting.get_setting("channels")) +jarvis.start() +``` +Next, create a file called `config.json` and use the following template to get started +```json +{ + "name": "yourbotsname", + "token": "yourbotstoken", + "channels": [ + "a list", "of channels", "to connect to" + ] +} +``` +If you prefer, you may use a `config.yaml` file instead. + +## Custom Modules + +You can create your own custom modules and interactions for your bot using the Jarvis Core. +Create a folder called `modules` in the same location as your bot file like so, +``` ++-- root +| |-- bot.py +| |-- config.json +| +-- modules +| |-- module1.py +| |-- module2.py +``` + +Then, copy the following boiler plate text to get started. This example implements a simple ping module. +**Note:** All modules need to implement `setup()` and `teardown()`, both take `channel` as a parameter. + +```python +from jarviscore import Module, Log +from jarviscore import CommandMessage + +log = Log("Module:Ping", verbose="log") +class Ping(Module): + + def __init__(self, channel): + Module.__init__(self, "Ping") + self.channel = channel + + def on_command(self, data: CommandMessage): + if "ping" == data.KEYWORD: + self.channel.send("pong") + + +def setup(channel): + channel.load_module(Ping(channel)) + log.log(f"Loaded Module Ping") + +def teardown(channel): + log.log(f"Removed Module Ping") + +``` + + + +%package -n python3-jarviscore +Summary: A python package for creating Twitch Bots +Provides: python-jarviscore +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-jarviscore +# Jarvis + +[![Build status](https://dev.azure.com/cubbei/JarvisCore/_apis/build/status/JarvisCore-PiP%20Publish)](https://dev.azure.com/cubbei/JarvisCore/_build/latest?definitionId=1) +[![PyPI version](https://badge.fury.io/py/jarviscore@2x.svg)](https://badge.fury.io/py/jarviscore) + + +This is the repository for the JarvisCore framework used to run the Jarvis the twitch bot. +You are welcome to use this library to build your own bot for twitch, please note that there is currently minimal documentation which does tend to make things a little tricky. + +You are welcome to join the "[Looking for Jarvis](https://jarvis.bot/discord)" Discord server for updates and to join the community. + +## Getting Started + +The simplest way to get started is to create a new file, with the basic code below: + +```python +from jarviscore.client import Client + +jarvis = Client(nick="yourbotsname", + token="yourbotstoken", + channels=["a list", "of channels", "to connect to"]) +jarvis.start() +``` + +As an alternative, better practice would be to make use of a config file to store your settings and loading them into the bot when you start. +Use the following code for your bot as a starter. +```python +from jarviscore.client import Client +from jarviscore import Settings + +setting = Settings() + +jarvis = Client(nick=setting.get_setting("nick"), + token=setting.get_setting("token"), + channels=setting.get_setting("channels")) +jarvis.start() +``` +Next, create a file called `config.json` and use the following template to get started +```json +{ + "name": "yourbotsname", + "token": "yourbotstoken", + "channels": [ + "a list", "of channels", "to connect to" + ] +} +``` +If you prefer, you may use a `config.yaml` file instead. + +## Custom Modules + +You can create your own custom modules and interactions for your bot using the Jarvis Core. +Create a folder called `modules` in the same location as your bot file like so, +``` ++-- root +| |-- bot.py +| |-- config.json +| +-- modules +| |-- module1.py +| |-- module2.py +``` + +Then, copy the following boiler plate text to get started. This example implements a simple ping module. +**Note:** All modules need to implement `setup()` and `teardown()`, both take `channel` as a parameter. + +```python +from jarviscore import Module, Log +from jarviscore import CommandMessage + +log = Log("Module:Ping", verbose="log") +class Ping(Module): + + def __init__(self, channel): + Module.__init__(self, "Ping") + self.channel = channel + + def on_command(self, data: CommandMessage): + if "ping" == data.KEYWORD: + self.channel.send("pong") + + +def setup(channel): + channel.load_module(Ping(channel)) + log.log(f"Loaded Module Ping") + +def teardown(channel): + log.log(f"Removed Module Ping") + +``` + + + +%package help +Summary: Development documents and examples for jarviscore +Provides: python3-jarviscore-doc +%description help +# Jarvis + +[![Build status](https://dev.azure.com/cubbei/JarvisCore/_apis/build/status/JarvisCore-PiP%20Publish)](https://dev.azure.com/cubbei/JarvisCore/_build/latest?definitionId=1) +[![PyPI version](https://badge.fury.io/py/jarviscore@2x.svg)](https://badge.fury.io/py/jarviscore) + + +This is the repository for the JarvisCore framework used to run the Jarvis the twitch bot. +You are welcome to use this library to build your own bot for twitch, please note that there is currently minimal documentation which does tend to make things a little tricky. + +You are welcome to join the "[Looking for Jarvis](https://jarvis.bot/discord)" Discord server for updates and to join the community. + +## Getting Started + +The simplest way to get started is to create a new file, with the basic code below: + +```python +from jarviscore.client import Client + +jarvis = Client(nick="yourbotsname", + token="yourbotstoken", + channels=["a list", "of channels", "to connect to"]) +jarvis.start() +``` + +As an alternative, better practice would be to make use of a config file to store your settings and loading them into the bot when you start. +Use the following code for your bot as a starter. +```python +from jarviscore.client import Client +from jarviscore import Settings + +setting = Settings() + +jarvis = Client(nick=setting.get_setting("nick"), + token=setting.get_setting("token"), + channels=setting.get_setting("channels")) +jarvis.start() +``` +Next, create a file called `config.json` and use the following template to get started +```json +{ + "name": "yourbotsname", + "token": "yourbotstoken", + "channels": [ + "a list", "of channels", "to connect to" + ] +} +``` +If you prefer, you may use a `config.yaml` file instead. + +## Custom Modules + +You can create your own custom modules and interactions for your bot using the Jarvis Core. +Create a folder called `modules` in the same location as your bot file like so, +``` ++-- root +| |-- bot.py +| |-- config.json +| +-- modules +| |-- module1.py +| |-- module2.py +``` + +Then, copy the following boiler plate text to get started. This example implements a simple ping module. +**Note:** All modules need to implement `setup()` and `teardown()`, both take `channel` as a parameter. + +```python +from jarviscore import Module, Log +from jarviscore import CommandMessage + +log = Log("Module:Ping", verbose="log") +class Ping(Module): + + def __init__(self, channel): + Module.__init__(self, "Ping") + self.channel = channel + + def on_command(self, data: CommandMessage): + if "ping" == data.KEYWORD: + self.channel.send("pong") + + +def setup(channel): + channel.load_module(Ping(channel)) + log.log(f"Loaded Module Ping") + +def teardown(channel): + log.log(f"Removed Module Ping") + +``` + + + +%prep +%autosetup -n jarviscore-0.1.1.426 + +%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-jarviscore -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Wed May 10 2023 Python_Bot - 0.1.1.426-1 +- Package Spec generated diff --git a/sources b/sources new file mode 100644 index 0000000..2f83583 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +1f262d48e974d270f5e9722974cc5a4e jarviscore-0.1.1.426.tar.gz -- cgit v1.2.3