summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-05 04:54:13 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-05 04:54:13 +0000
commit6278022fc0be56366b8af2cfcfe1f25c88fa56de (patch)
tree336b11b6c8044d08bb16ea8d01a3965a930f1b5d
parent01a81947dc4d0bdba56fa3e2e689888176b244dc (diff)
automatic import of python-chatbotaiopeneuler20.03
-rw-r--r--.gitignore1
-rw-r--r--python-chatbotai.spec541
-rw-r--r--sources1
3 files changed, 543 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..a56a82b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/chatbotAI-0.3.1.3.tar.gz
diff --git a/python-chatbotai.spec b/python-chatbotai.spec
new file mode 100644
index 0000000..5d87130
--- /dev/null
+++ b/python-chatbotai.spec
@@ -0,0 +1,541 @@
+%global _empty_manifest_terminate_build 0
+Name: python-chatbotAI
+Version: 0.3.1.3
+Release: 1
+Summary: A chatbot AI engine is a chatbot builder platform that provides both bot intelligence and chat handler with minimal codding
+License: MIT
+URL: https://github.com/ahmadfaizalbh/Chatbot
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/d4/40/f32720944b7bfad2a31a98cb9f90932347c5b2c562cecd5438980ab44f5c/chatbotAI-0.3.1.3.tar.gz
+BuildArch: noarch
+
+Requires: python3-requests
+
+%description
+## Memory
+#### Set Memory
+```
+{ variable : value }
+```
+In think mode
+```
+{! variable : value }
+```
+#### Get Memory
+```
+{ variable }
+```
+## Get matched group
+for grouping in regex refer [Python regular expression docs](https://docs.python.org/3/howto/regex.html#non-capturing-and-named-groups)
+#### Get N<sup>th</sup> matched group of client pattern
+```
+%N
+```
+Example to get first matched
+```
+%1
+```
+#### Get matching named group of client pattern
+```
+%Client_pattern_group_name
+```
+Example to get matching named group `person`
+```
+%person
+```
+#### Get N<sup>th</sup> matched group of bots message pattern
+```
+%!N
+```
+Example to get first matched
+```
+%!1
+```
+#### Get matching named group of bots message pattern
+```
+%!Bot_pattern_group_name
+```
+Example to get matching named group `region`
+```
+%!region
+```
+## Recursion
+Get response as if client said this new statement
+```
+{% chat statement %}
+```
+It will do a pattern match for statement
+## Condition
+```
+{% if condition %} do this first {% elif condition %} do this next {% else %} do otherwise {% endif %}
+```
+## Change Topic
+```
+{% topic TopicName %}
+```
+## Interact with python function
+##### In python
+```python
+@register_call("functionName")
+def function_name(session, query):
+ return "response string"
+```
+##### In template
+```
+{% call functionName: value %}
+```
+## REST API integration
+### In API.json file
+ ```
+{
+ "APIName":{
+ "auth" : {
+ "url":"https://your_rest_api_url/login.json",
+ "method":"POST",
+ "data":{
+ "user":"Your_Username",
+ "password":"Your_Password"
+ }
+ },
+ "MethodName" : {
+ "url":"https://your_rest_api_url/GET_method_Example.json",
+ "method":"GET",
+ "params":{
+ "key1":"value1",
+ "key2":"value2",
+ },
+ "value_getter":[order in which data has to be picked from json response]
+ },
+ "MethodName1" : {
+ "url":"https://your_rest_api_url/GET_method_Example.json",
+ "method":"POST",
+ "data":{
+ "key1":"value1",
+ "key2":"value2",
+ },
+ "value_getter":[order in which data has to be picked from json response]
+ },
+ "MethodName2" : {
+ },
+ },
+ "APIName2":{
+ },
+}
+```
+*If authentication is required only then `auth` method is needed.The `data` and `params` defined in pi.json file acts as defult values and all key value pair defined in template file overrides the default value.`value_getter` consistes of list of keys in order using which info from json will be collected.*
+### In Template file
+```
+[ APIName:MethodName,Key1:value1 (,Key*:value*) ]
+```
+you can have any number of key value pair and all key value pair will override data or params depending on `method`, if `method` is `POST` then it overrides data and if method is `GET` then it overrides `params`.
+## Topic based group
+```
+{% group topicName %}
+ {% block %}
+ {% client %}client says {% endclient %}
+ {% response %}response text{% endresponse %}
+ {% endblock %}
+{% endgroup %}
+```
+## Learn
+```
+{% learn %}
+ {% group topicName %}
+ {% block %}
+ {% client %}client says {% endclient %}
+ {% response %}response text{% endresponse %}
+ {% endblock %}
+ {% endgroup %}
+{% endlearn %}
+```
+## To upper case
+```
+{% up string %}
+```
+## To lower case
+```
+{% low string %}
+```
+## Capitalize
+```
+{% cap string %}
+```
+## Previous
+```
+{% block %}
+ {% client %}client's statement pattern{% endclient %}
+ {% prev %}previous bot's statement pattern{% endprev %}
+ {% response %}response string{% endresponse %}
+{% endblock %}
+```
+![Chatbot AI flow Diagram](https://raw.githubusercontent.com/ahmadfaizalbh/Chatbot/master/images/ChatBot%20AI.png)
+
+%package -n python3-chatbotAI
+Summary: A chatbot AI engine is a chatbot builder platform that provides both bot intelligence and chat handler with minimal codding
+Provides: python-chatbotAI
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-chatbotAI
+## Memory
+#### Set Memory
+```
+{ variable : value }
+```
+In think mode
+```
+{! variable : value }
+```
+#### Get Memory
+```
+{ variable }
+```
+## Get matched group
+for grouping in regex refer [Python regular expression docs](https://docs.python.org/3/howto/regex.html#non-capturing-and-named-groups)
+#### Get N<sup>th</sup> matched group of client pattern
+```
+%N
+```
+Example to get first matched
+```
+%1
+```
+#### Get matching named group of client pattern
+```
+%Client_pattern_group_name
+```
+Example to get matching named group `person`
+```
+%person
+```
+#### Get N<sup>th</sup> matched group of bots message pattern
+```
+%!N
+```
+Example to get first matched
+```
+%!1
+```
+#### Get matching named group of bots message pattern
+```
+%!Bot_pattern_group_name
+```
+Example to get matching named group `region`
+```
+%!region
+```
+## Recursion
+Get response as if client said this new statement
+```
+{% chat statement %}
+```
+It will do a pattern match for statement
+## Condition
+```
+{% if condition %} do this first {% elif condition %} do this next {% else %} do otherwise {% endif %}
+```
+## Change Topic
+```
+{% topic TopicName %}
+```
+## Interact with python function
+##### In python
+```python
+@register_call("functionName")
+def function_name(session, query):
+ return "response string"
+```
+##### In template
+```
+{% call functionName: value %}
+```
+## REST API integration
+### In API.json file
+ ```
+{
+ "APIName":{
+ "auth" : {
+ "url":"https://your_rest_api_url/login.json",
+ "method":"POST",
+ "data":{
+ "user":"Your_Username",
+ "password":"Your_Password"
+ }
+ },
+ "MethodName" : {
+ "url":"https://your_rest_api_url/GET_method_Example.json",
+ "method":"GET",
+ "params":{
+ "key1":"value1",
+ "key2":"value2",
+ },
+ "value_getter":[order in which data has to be picked from json response]
+ },
+ "MethodName1" : {
+ "url":"https://your_rest_api_url/GET_method_Example.json",
+ "method":"POST",
+ "data":{
+ "key1":"value1",
+ "key2":"value2",
+ },
+ "value_getter":[order in which data has to be picked from json response]
+ },
+ "MethodName2" : {
+ },
+ },
+ "APIName2":{
+ },
+}
+```
+*If authentication is required only then `auth` method is needed.The `data` and `params` defined in pi.json file acts as defult values and all key value pair defined in template file overrides the default value.`value_getter` consistes of list of keys in order using which info from json will be collected.*
+### In Template file
+```
+[ APIName:MethodName,Key1:value1 (,Key*:value*) ]
+```
+you can have any number of key value pair and all key value pair will override data or params depending on `method`, if `method` is `POST` then it overrides data and if method is `GET` then it overrides `params`.
+## Topic based group
+```
+{% group topicName %}
+ {% block %}
+ {% client %}client says {% endclient %}
+ {% response %}response text{% endresponse %}
+ {% endblock %}
+{% endgroup %}
+```
+## Learn
+```
+{% learn %}
+ {% group topicName %}
+ {% block %}
+ {% client %}client says {% endclient %}
+ {% response %}response text{% endresponse %}
+ {% endblock %}
+ {% endgroup %}
+{% endlearn %}
+```
+## To upper case
+```
+{% up string %}
+```
+## To lower case
+```
+{% low string %}
+```
+## Capitalize
+```
+{% cap string %}
+```
+## Previous
+```
+{% block %}
+ {% client %}client's statement pattern{% endclient %}
+ {% prev %}previous bot's statement pattern{% endprev %}
+ {% response %}response string{% endresponse %}
+{% endblock %}
+```
+![Chatbot AI flow Diagram](https://raw.githubusercontent.com/ahmadfaizalbh/Chatbot/master/images/ChatBot%20AI.png)
+
+%package help
+Summary: Development documents and examples for chatbotAI
+Provides: python3-chatbotAI-doc
+%description help
+## Memory
+#### Set Memory
+```
+{ variable : value }
+```
+In think mode
+```
+{! variable : value }
+```
+#### Get Memory
+```
+{ variable }
+```
+## Get matched group
+for grouping in regex refer [Python regular expression docs](https://docs.python.org/3/howto/regex.html#non-capturing-and-named-groups)
+#### Get N<sup>th</sup> matched group of client pattern
+```
+%N
+```
+Example to get first matched
+```
+%1
+```
+#### Get matching named group of client pattern
+```
+%Client_pattern_group_name
+```
+Example to get matching named group `person`
+```
+%person
+```
+#### Get N<sup>th</sup> matched group of bots message pattern
+```
+%!N
+```
+Example to get first matched
+```
+%!1
+```
+#### Get matching named group of bots message pattern
+```
+%!Bot_pattern_group_name
+```
+Example to get matching named group `region`
+```
+%!region
+```
+## Recursion
+Get response as if client said this new statement
+```
+{% chat statement %}
+```
+It will do a pattern match for statement
+## Condition
+```
+{% if condition %} do this first {% elif condition %} do this next {% else %} do otherwise {% endif %}
+```
+## Change Topic
+```
+{% topic TopicName %}
+```
+## Interact with python function
+##### In python
+```python
+@register_call("functionName")
+def function_name(session, query):
+ return "response string"
+```
+##### In template
+```
+{% call functionName: value %}
+```
+## REST API integration
+### In API.json file
+ ```
+{
+ "APIName":{
+ "auth" : {
+ "url":"https://your_rest_api_url/login.json",
+ "method":"POST",
+ "data":{
+ "user":"Your_Username",
+ "password":"Your_Password"
+ }
+ },
+ "MethodName" : {
+ "url":"https://your_rest_api_url/GET_method_Example.json",
+ "method":"GET",
+ "params":{
+ "key1":"value1",
+ "key2":"value2",
+ },
+ "value_getter":[order in which data has to be picked from json response]
+ },
+ "MethodName1" : {
+ "url":"https://your_rest_api_url/GET_method_Example.json",
+ "method":"POST",
+ "data":{
+ "key1":"value1",
+ "key2":"value2",
+ },
+ "value_getter":[order in which data has to be picked from json response]
+ },
+ "MethodName2" : {
+ },
+ },
+ "APIName2":{
+ },
+}
+```
+*If authentication is required only then `auth` method is needed.The `data` and `params` defined in pi.json file acts as defult values and all key value pair defined in template file overrides the default value.`value_getter` consistes of list of keys in order using which info from json will be collected.*
+### In Template file
+```
+[ APIName:MethodName,Key1:value1 (,Key*:value*) ]
+```
+you can have any number of key value pair and all key value pair will override data or params depending on `method`, if `method` is `POST` then it overrides data and if method is `GET` then it overrides `params`.
+## Topic based group
+```
+{% group topicName %}
+ {% block %}
+ {% client %}client says {% endclient %}
+ {% response %}response text{% endresponse %}
+ {% endblock %}
+{% endgroup %}
+```
+## Learn
+```
+{% learn %}
+ {% group topicName %}
+ {% block %}
+ {% client %}client says {% endclient %}
+ {% response %}response text{% endresponse %}
+ {% endblock %}
+ {% endgroup %}
+{% endlearn %}
+```
+## To upper case
+```
+{% up string %}
+```
+## To lower case
+```
+{% low string %}
+```
+## Capitalize
+```
+{% cap string %}
+```
+## Previous
+```
+{% block %}
+ {% client %}client's statement pattern{% endclient %}
+ {% prev %}previous bot's statement pattern{% endprev %}
+ {% response %}response string{% endresponse %}
+{% endblock %}
+```
+![Chatbot AI flow Diagram](https://raw.githubusercontent.com/ahmadfaizalbh/Chatbot/master/images/ChatBot%20AI.png)
+
+%prep
+%autosetup -n chatbotAI-0.3.1.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-chatbotAI -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.3.1.3-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..e130eca
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+c025f2f3080c52ee27e662fa674f2b57 chatbotAI-0.3.1.3.tar.gz