diff options
| author | CoprDistGit <infra@openeuler.org> | 2023-05-05 04:54:13 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2023-05-05 04:54:13 +0000 |
| commit | 6278022fc0be56366b8af2cfcfe1f25c88fa56de (patch) | |
| tree | 336b11b6c8044d08bb16ea8d01a3965a930f1b5d | |
| parent | 01a81947dc4d0bdba56fa3e2e689888176b244dc (diff) | |
automatic import of python-chatbotaiopeneuler20.03
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | python-chatbotai.spec | 541 | ||||
| -rw-r--r-- | sources | 1 |
3 files changed, 543 insertions, 0 deletions
@@ -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 %} +``` + + +%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 %} +``` + + +%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 %} +``` + + +%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 @@ -0,0 +1 @@ +c025f2f3080c52ee27e662fa674f2b57 chatbotAI-0.3.1.3.tar.gz |
