<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.qudata.com//api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Slavinsky</id>
	<title>QuData - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.qudata.com//api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Slavinsky"/>
	<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Special:Contributions/Slavinsky"/>
	<updated>2026-07-21T15:28:05Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.34.1</generator>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Tutorial_on_creating_a_website_using_AI-Agent&amp;diff=858</id>
		<title>Tutorial on creating a website using AI-Agent</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Tutorial_on_creating_a_website_using_AI-Agent&amp;diff=858"/>
		<updated>2026-06-29T13:52:39Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Category:Practical AI Solutions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Practical AI Solutions]]&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
This article details the practical experience of developing a web project from scratch using AI agent, based on the creation of the Bitva gaming portal.&lt;br /&gt;
&lt;br /&gt;
'''Bitva''' is a free online game aggregator that provides users with instant access to thousands of browser-based games without the need for downloads or registration.&lt;br /&gt;
&lt;br /&gt;
Architecturally, the project was designed to be incredibly lightweight and fast, running on a pure PHP and SQLite stack without the overhead of heavy frameworks.&lt;br /&gt;
&lt;br /&gt;
'''The main goal of this guide''' is to demonstrate a step-by-step algorithm for interacting with artificial intelligence, from writing the initial technical specifications to generating the final code. The methodology described here is highly versatile and will help both clients and developers build an efficient process for managing AI agents across projects of varying complexity.&lt;br /&gt;
&lt;br /&gt;
== Tech Stack Selection ==&lt;br /&gt;
First, it is necessary to select and approve the technologies that will be used for project development:&lt;br /&gt;
* Programming language (preferably with the version specified from the start)&lt;br /&gt;
* Framework (if required)&lt;br /&gt;
* DBMS (if the use of a database is required)&lt;br /&gt;
In the case of Bitva, which is described in this tutorial, PHP 7.2 without any frameworks and SQLite were chosen.&lt;br /&gt;
&lt;br /&gt;
== Human-Readable Specs ==&lt;br /&gt;
Next, it is necessary to create a specification document that is easy and convenient to navigate.&lt;br /&gt;
&lt;br /&gt;
In the case of Bitva, the specification was divided into 2 parts - '''&amp;quot;Design&amp;quot;''' and '''&amp;quot;Logic and Mechanics&amp;quot;'''.&lt;br /&gt;
&lt;br /&gt;
=== Design ===&lt;br /&gt;
The &amp;quot;Design&amp;quot; section separately describes each page/element and its visual behavior.&lt;br /&gt;
&lt;br /&gt;
For example, the &amp;quot;Design&amp;quot; section for Bitva describes:&lt;br /&gt;
* The appearance of the main page&lt;br /&gt;
* The appearance of Category and Tag pages&lt;br /&gt;
* Navigation&lt;br /&gt;
* The appearance of the game page&lt;br /&gt;
It is also necessary to create mockup images for all pages/elements. This will help both when describing the interface in text and when creating specifications for the AI Agent later.&lt;br /&gt;
&lt;br /&gt;
If there are examples of interfaces from other similar websites, AI can be used to create a detailed and understandable description of the page design. If mockup images already exist at the interface description stage, they can also be provided.&lt;br /&gt;
&lt;br /&gt;
In the case of Bitva, Gemini (Pro 3.1) was used to describe some interface elements (navigation, part of the main page) based on example screenshots. However, it definitely will not describe an interface perfectly from a screenshot, because it will add details that are unnecessary or incorrectly describe the actual requirements. Therefore, a specification generated by Gemini should be considered a framework that can be used as a starting point to save time, but the entire text must still be reviewed and edited manually.&lt;br /&gt;
&lt;br /&gt;
=== Logic and Mechanics ===&lt;br /&gt;
The &amp;quot;Logic and Mechanics&amp;quot; section describes the main processes of the website. The behavior of pages and all functionality must be described in clear and understandable language.&lt;br /&gt;
&lt;br /&gt;
For Bitva, the &amp;quot;Logic and Mechanics&amp;quot; section was divided into the following parts:&lt;br /&gt;
* Categories/Tags/Collections (complete behavior of pages and their elements)&lt;br /&gt;
* Game Import (logic for importing game data from supplier JSON files)&lt;br /&gt;
** Supplier 1 integration&lt;br /&gt;
** Supplier 2 integration&lt;br /&gt;
* Images (logic for saving, naming, and compressing images)&lt;br /&gt;
* Logic for assigning Categories and Tags&lt;br /&gt;
&lt;br /&gt;
=== Creating the Database Schema ===&lt;br /&gt;
It is also necessary to create a database schema (or a skeleton data structure if a database is not being used).&lt;br /&gt;
&lt;br /&gt;
After the specification and database schema have been approved, it is possible to proceed to creating instructions for the AI Agent.&lt;br /&gt;
&lt;br /&gt;
== AI Agent Instructions file ==&lt;br /&gt;
Having a clearly described specification for yourself and the team, the next step is to create an instruction file for the AI Agent. This is a .md file that will be located in the project root, and the agent will always take its contents into account during any code generation.&lt;br /&gt;
&lt;br /&gt;
It is important to describe the project in as much detail as possible, clarifying all nuances that the Agent might otherwise assume or misunderstand.&lt;br /&gt;
&lt;br /&gt;
It is better to write the project description in the instruction file in English so that the Agent does not have any issues understanding the language.&lt;br /&gt;
&lt;br /&gt;
An LLM will be needed to create a detailed and complete description. In the case of Bitva, Gemini was used.&lt;br /&gt;
&lt;br /&gt;
Asking an LLM to create such a file directly from the specification is not effective. Therefore, the process is divided into steps.&lt;br /&gt;
&lt;br /&gt;
=== Creating the General File Framework ===&lt;br /&gt;
First, the complete specification and data structure created in the previous step should be provided to the LLM. It is necessary to explain the situation: that we are going to work with an AI Agent and need to create a .md file containing complete instructions that will be taken into account by the Agent during development. The goal is to create a description that will be perfectly understandable specifically for an AI Agent. Next, ask the LLM to write an initial file structure with draft descriptions that fully describe the project. To simplify the process, this task can be divided into two separate parts - creating the file structure for the backend first, and then separately for the frontend.&lt;br /&gt;
&lt;br /&gt;
ㅤ&lt;br /&gt;
&lt;br /&gt;
In the case of Bitva, the following file structure was created:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Backend:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;md&amp;quot;&amp;gt;&lt;br /&gt;
# Project Context&lt;br /&gt;
## Core Philosophy&lt;br /&gt;
# Technical Stack&lt;br /&gt;
# Database Architecture &amp;amp; Indices&lt;br /&gt;
# Directory Structure&lt;br /&gt;
# Routing Rules&lt;br /&gt;
# Business Logic &amp;amp; Mechanics&lt;br /&gt;
## 1. Category &amp;amp; Tag Hierarchy&lt;br /&gt;
## 2. Game Selection Logic&lt;br /&gt;
## 3. Provider-Specific Integration&lt;br /&gt;
### Dynamic Tag &amp;amp; Category Resolution Algorithm&lt;br /&gt;
## 4. Import &amp;amp; Update Process (CRON)&lt;br /&gt;
## 5. Image Processing Pipeline&lt;br /&gt;
## 6. Frontend &amp;amp; AdBlock Mechanics&lt;br /&gt;
# Coding Guidelines&lt;br /&gt;
## 1. Security &amp;amp; Data Integrity&lt;br /&gt;
## 2. PHP Standards &amp;amp; Architecture&lt;br /&gt;
## 3. Performance &amp;amp; SQLite Optimization&lt;br /&gt;
## 4. Frontend &amp;amp; CSS Architecture&lt;br /&gt;
## 5. Code Style&lt;br /&gt;
# Constraints &amp;amp; Hard Limits&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
ㅤ&lt;br /&gt;
&lt;br /&gt;
Frontend:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;md&amp;quot;&amp;gt;&lt;br /&gt;
# Frontend &amp;amp; UI Architecture&lt;br /&gt;
## 1. Global Layout (layout.phtml)&lt;br /&gt;
## 2. Homepage View (HomeController@index)&lt;br /&gt;
## 3. Category &amp;amp; Tag Pages (`CategoryController@show` / `TagController@show`)&lt;br /&gt;
## 4. Navigation &amp;amp; Sidebar Architecture&lt;br /&gt;
## 5. Game Play Page (`GameController@show`)&lt;br /&gt;
## 6. Game Card Component (Thumbnail Anatomy)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
ㅤ&lt;br /&gt;
&lt;br /&gt;
=== Filling the Sections of the Instruction File ===&lt;br /&gt;
First, it is best to work on the backend separately and move to the frontend afterward.&lt;br /&gt;
&lt;br /&gt;
At this stage, it is necessary to:&lt;br /&gt;
* Once again provide the LLM with the '''complete specification that we originally created for ourselves''' (to refresh its context), along with the generated '''backend sections'''.&lt;br /&gt;
* Ask the LLM to fill all backend sections in as much detail as possible (in English), using our specification as the primary source (the full specification is provided because frontend details may affect backend formulations).&lt;br /&gt;
* Place emphasis on the fact that the descriptions must be written specifically so that an AI Agent can understand the instructions as clearly and transparently as possible, leaving no room for assumptions or creativity that could lead development in a direction different from what is intended.&lt;br /&gt;
&lt;br /&gt;
As a result, we will obtain a reasonably well-described backend section, which will become the foundation for further development.&lt;br /&gt;
&lt;br /&gt;
'''The generated result must be reviewed very carefully and thoughtfully''', because some parts will inevitably be described differently from what is actually required, while many functions will be described with insufficient detail. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;This happens because our original specification, written for people, does not contain many details that seem &amp;quot;obvious&amp;quot; to us and would only overload human perception, but for an AI Agent these are critically important nuances. Without them, the Agent will begin making its own assumptions.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''All necessary corrections, additions, and clarifications should be communicated to the LLM''', and it should be asked to update the relevant subsections so that the AI Agent has no unanswered questions and the text contains no inaccuracies that could mislead it or force it to make assumptions. &lt;br /&gt;
&lt;br /&gt;
As a result, the amount of text will increase significantly because many additional details and clarifications required for the Agent's precise understanding of the project will be added.&lt;br /&gt;
&lt;br /&gt;
After generating what appears to be a good backend section, work begins on each of its individual subsections.&lt;br /&gt;
&lt;br /&gt;
ㅤ&lt;br /&gt;
&lt;br /&gt;
=== Working with Individual Sections of the Instruction File ===&lt;br /&gt;
Now it is necessary to perform a very long and detailed process of reviewing and refining all details of each instruction subsection.&lt;br /&gt;
&lt;br /&gt;
'''Step 1: Initial Subsection Review.'''&lt;br /&gt;
First, we provide our LLM with the first backend subsection and the corresponding part of our specification (the one written for humans, if such a subsection exists in our specification). The request will look like: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
Now check specifically the subsection (subsection name) for formulations that an AI Agent might misinterpret, ambiguities, hidden bugs in our description, missing necessary clarifications for the AI Agent, and fix them&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As a result, a large number of nuances and hidden bugs will inevitably be discovered. The LLM will correct them and claim that the result is now an excellent reference version of the subsection. '''However, such statements must never be trusted'''. After receiving this revised version of the subsection, it must be reviewed manually. If corrections are needed, we must explain to the LLM what is wrong and ask it to specify '''exact lines or formulations''' that need to be replaced or corrected.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;'''Important:''' From this moment on, we no longer copy the full version of the section from the LLM chat. Instead, we must request only the specific lines that need to be changed or added in .md format so they can be copied directly. Otherwise, the LLM may start shortening previous formulations while adding new clarifications.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Step 2: Deep Review &amp;quot;from the Agent's Perspective&amp;quot;.'''&lt;br /&gt;
Next, we again provide the final version of the subsection to the LLM with a request like: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
Check the final version of our subsection again for formulations that an AI Agent might misinterpret, ambiguities, hidden bugs in our description, missing necessary clarifications for the AI Agent, or any other issues.&lt;br /&gt;
&lt;br /&gt;
*Send the current version of the subsection for review*&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To make the LLM more effective at finding vulnerabilities, we can assign it a role during review, for example: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
Read this subsection as a 'lazy' or overly literal AI agent that looks for any opportunity to simplify implementation. Find loopholes where it could make mistakes or do something unintended, and close them&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It will almost certainly find 2–3 critical issues that could cause hallucinations or bugs in the Agent's output. If it responds with the full subsection again or provides corrections in plain text instead of structured changes:&lt;br /&gt;
* It must be reminded that it should only provide lines to replace or append, formatted in .md so they can be copied directly. &lt;br /&gt;
* You may even paste its previous incorrect response and ask it to rewrite it properly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Step 3: Iterative Reviews.'''&lt;br /&gt;
After applying these 2–3 rounds of corrections, the LLM will again claim the result is perfect. However, '''this should still not be trusted'''. The full subsection must be reviewed again with the same request: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
Check the final version of our subsection again for formulations that an AI Agent might misinterpret, ambiguities, hidden bugs in our description, missing necessary clarifications for the AI Agent, or any other issues. Read this subsection as a 'lazy' or overly literal AI agent that looks for any opportunity to simplify implementation. Find loopholes where it could make mistakes or do something unintended, and close them.&lt;br /&gt;
&lt;br /&gt;
*Send the current version of the subsection for review*&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is a 99% chance that 2–3 vulnerabilities or unclear formulations will still be found.&lt;br /&gt;
&lt;br /&gt;
This process of &amp;lt;code&amp;gt;&amp;quot;request review =&amp;gt; apply fixes =&amp;gt; request review&amp;quot;&amp;lt;/code&amp;gt; must be repeated until the LLM stops finding problems. Initially, critical vulnerabilities will be found, then potentially buggy formulations, then missing clarifications to prevent the agent from making assumptions, and finally minor cosmetic issues. &lt;br /&gt;
&lt;br /&gt;
It is very important to carefully read the LLM's explanations of the problems rather than blindly copying suggested replacements. Sometimes the LLM suggests optimizations or features that are unnecessary and should be rejected. &lt;br /&gt;
&lt;br /&gt;
This process '''may take 10, 20, or even more iterations''', depending on the complexity of the subsection. However, after eliminating the final minor issues, the LLM will eventually state that the description is perfect and no further improvements can be made. We ourselves see the progress of corrections (serious problems have long ceased to be found, and the last ones were very minor edits that simply bring the instructions to perfection), so such an answer '''in this context''' can be trusted.&lt;br /&gt;
&lt;br /&gt;
'''This process must be applied to every subsection.''' It is time-consuming and token-intensive, but it results in a highly detailed and precise description required for the AI Agent.&lt;br /&gt;
&lt;br /&gt;
'''Step 4: Full Section Analysis (Backend).'''&lt;br /&gt;
Once all subsections of the backend are brought to a conditional ideal, it is necessary to give LLM a complete picture of all subsections of the backend with a request: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
Now carefully analyze the full backend structure and check whether there are any inconsistencies, contradictions, or new issues that appear in the combined context&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is possible that the LLM will find additional issues that only appear when viewing the system as a whole. While these are unlikely to be critical (since the model remembers previous subsections), they can still occur, and it is better to be safe. If issues are found, the same iterative correction process must be applied again until no problems remain.&lt;br /&gt;
&lt;br /&gt;
As a result, we obtain a highly detailed and precise backend section (an ideal specification for the AI Agent).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Step 5: Creating and Validating the Frontend Section.'''&lt;br /&gt;
Next, '''following the same approach used for the backend section''', we create the frontend section. We already have subsection names with minimal descriptions from previous steps, so the same process is applied: generate the filled frontend section based on the human specification and subsection outline, then iteratively review, refine, and validate each subsection until it reaches an ideal state, ensuring consistency across all parts.&lt;br /&gt;
&lt;br /&gt;
Frontend subsections require even more iteration than backend ones because algorithms and rules are easier for an AI Agent to interpret than visual design and UI behavior, which can be implemented in multiple ways (and may, for example, break SEO). Therefore, frontend subsections will be much more detailed due to the large number of constraints introduced to prevent broken SEO, poor mobile responsiveness, or faulty JavaScript behavior.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;'''Special attention must be paid to the principle of a single source of truth.''' For example, media queries and screen breakpoints for mobile and desktop layouts must be defined at the very beginning of the document as global constants (e.g., strictly &amp;lt;code&amp;gt;&amp;lt; 1025px&amp;lt;/code&amp;gt; for mobile and &amp;lt;code&amp;gt;&amp;gt;= 1025px&amp;lt;/code&amp;gt; for desktop). If this value is not fixed at the beginning, the Agent may define different values in different sections, leading to a completely broken responsive design.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Step 6: Final Comprehensive Document Validation.'''&lt;br /&gt;
After finalizing both backend and frontend sections, the full document must be validated as a whole. Similar to subsection validation, the entire file containing both frontend and backend must be reviewed for inconsistencies across sections. If necessary, specific lines are corrected and the document is revalidated until no issues remain.&lt;br /&gt;
&lt;br /&gt;
'''Stage Outcome:'''&lt;br /&gt;
&lt;br /&gt;
As a result, we obtain a high-quality instruction file (.md) for the AI Agent that will guide it throughout the entire development process. The Agent must still be reminded of these rules when generating functionality, as such a large file cannot be fully accounted for in every request. However, the key achievement is that we now have a maximally detailed and precise specification tailored for an AI Agent.&lt;br /&gt;
&lt;br /&gt;
== AI-Assisted Development ==&lt;br /&gt;
After creating a clear and detailed instruction file for the AI agent, you can proceed to generating the project code.&lt;br /&gt;
&lt;br /&gt;
''The following describes the development experience of Bitva.com, but it is applicable to the development of most systems.''&lt;br /&gt;
&lt;br /&gt;
'''Step 1: Agent Launch and Basic Generation.'''&lt;br /&gt;
A project folder was created, and the instruction file (created in the previous steps) was placed in the root, along with prepared configurations. The agent was launched in the project directory, and generation was started with the prompt: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
read the instructions.md file and execute its instructions&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The agent analyzed the instructions.md file and asked what exactly I wanted it to do, providing examples — full project initialization, import, frontend, pages, configuration. The option of full project initialization was chosen — prompt to the agent: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
Perform full project initialization&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After that, it spent about 5–10 minutes creating the basic website functionality according to the instructions from the instructions.md file. The agent reported that the work was completed and said that the site could now be launched and tested. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;'''Important note:''' It is important to remember that if we initially specify that index.php should be in the public folder, the agent will follow that structure, and the server must be started with the appropriate parameters.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
From the very first launch, the site worked (although not perfectly, but it did not crash with an error, which is encouraging).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Step 2: Creating the AGENTS.md Cheat Sheet and Code Commits.'''&lt;br /&gt;
Next, you need to ask the agent to create an AGENTS.md file in the project root so that it can refer to it as a constant prompt regarding the main nuances of the site. Thus, there end up being 2 files with the project description in the project root:&lt;br /&gt;
* '''instructions.md''' — our huge and maximally detailed file (we will refer to its sections during tweaks and edits).&lt;br /&gt;
* '''AGENTS.md''' — the compact (relative to instructions.md) file, in which the agent has collected the most important details for itself that it needs to remember when executing any request.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;It is '''necessary''' to create a repository and commit the obtained result. And subsequently, every change made by the Agent must be committed.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Step 3: Audit and Refactoring.'''&lt;br /&gt;
After that, you need to change the model (in the case of Bitva, DeepSeek was chosen) and request a recheck and optimization of the generated code. Prompt: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
Analyze the project once again and fix all problems&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It will perform refactoring and improvements across many files.&lt;br /&gt;
&lt;br /&gt;
In the Bitva project, the main functionality that needed to be tested first was the import of game data and images from provider sources, so the next step was a request for a detailed audit of the game import functionality code and checking it against our instructions. The agent found a minor bug with game naming, fixed it, and reported that everything now strictly corresponds to the instructions. It provided the command to run the import so that the functionality could be tested.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Step 4: Debugging (Separating the Roles of LLM and Agent).'''&lt;br /&gt;
After the first run of the game import, several bugs were discovered, and now the main assistant becomes not the agent, but our LLM, with which the instructions file was compiled. &lt;br /&gt;
&lt;br /&gt;
To eliminate minor bugs, it is easier to use the LLM (when it is also in the context of the project), so as:&lt;br /&gt;
* not to spend the Agent's tokens;&lt;br /&gt;
* not to confuse its context with attempts to solve bugs;&lt;br /&gt;
* and not to risk that upon a requested minor fix it might start editing other working project files.&lt;br /&gt;
&lt;br /&gt;
For a minor fix, it is enough to give the LLM the function code (or the whole class, if necessary), describe the problem, and it is advisable to ask whether the solution to this bug is simple and fast and we can solve it ourselves, or if it will require sending a request to the agent. If the bug is minor, the LLM points it out very quickly and tells you what needs to be fixed (most often it is either the Agent's inattention or partially missing specific data). &lt;br /&gt;
&lt;br /&gt;
For example, the first bug found on Bitva was an incorrectly specified field name in the game provider's JSON, which suited the first provider but did not suit the second, so images from the second provider did not load. If we had told the Agent that the image import from the second provider was not working, it would have started analyzing and modifying the working code (with just one incorrectly specified field name), adding the handling of exceptions that are unrealistic in our case, wasting tokens in the process and confusing its context. But the LLM immediately said that the field name was specified incorrectly, since we compiled the instructions file with it and it was provided with JSON examples from the providers (examples were not included in the instructions file; field names were specified, but apparently the agent perceived them insufficiently accurately, since there were no examples that would overload the instructions file).&lt;br /&gt;
&lt;br /&gt;
In general, it can be said about this that:&lt;br /&gt;
* '''it is much better to search for and fix minor bugs, discuss and reason about the project with the LLM''', the LLM's context can be loaded with examples and assumptions. &lt;br /&gt;
* '''And it is best to give the AI Agent clear prompts for development, without reasoning and inaccuracies'''. It copes perfectly with development according to instructions.&lt;br /&gt;
&lt;br /&gt;
Next comes the stage of tweaks and further improvements of the project.&lt;br /&gt;
&lt;br /&gt;
=== Stage of tweaks and improvements of the project ===&lt;br /&gt;
Most likely, the first generated version (even after fixing bugs) will be incomplete, or major edits will be required. In this case, you need to turn to our LLM, clearly and in detail describe the improvement, and ask whether it is necessary to involve the Agent for this, or if it can be done simply and quickly without its participation. &lt;br /&gt;
&lt;br /&gt;
If the edit is indeed major (requires understanding the logic and connection between several files), then the LLM will say that it will be more efficient to pass it to the Agent. In this case, it is necessary to ask the LLM to generate a prompt for the Agent: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
Generate a clear and understandable prompt for the AI Agent so that it implements my improvements. Write in such a way that even a lazy agent will understand everything, take it into account, and implement it. Also refer to the instructions.md file in the project root. For better understanding, here is the section of the instructions file that relates to the improvements:&lt;br /&gt;
&lt;br /&gt;
*send the section of the instructions file that specifically relates to the improvements we want to make*&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The LLM will generate a clear and understandable prompt for the Agent, which will describe in maximum detail exactly what we need to do. Usually, it takes from 5 to 20 lines, so:&lt;br /&gt;
* it is necessary to create a file where we will copy and edit all prompts to the Agent before sending. &lt;br /&gt;
* You need to copy the generated prompt from the LLM into the prompt editing file, reread it, and if necessary - edit it. &lt;br /&gt;
* Only after this can you copy the ready prompt and paste it into the agent's input field (in the case of opencode, a short message [N lines pasted] will be displayed in the input line, which means everything was pasted correctly). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;'''Important:''' Such manipulations are necessary so that in case of editing a large prompt directly in the agent's input line, you do not accidentally send an incomplete prompt and thereby clog the Agent's context with incorrect data. Such manipulations must be performed during every major improvement that requires the Agent's participation.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The need for major edits/improvements ===&lt;br /&gt;
&amp;lt;blockquote&amp;gt;In the case when the technical specifications are changed or significantly supplemented during the development process, it is '''necessary''' to edit both the instructions.md file and AGENTS.md, otherwise, the Agent may in a few steps start returning the version of the functionality described in these files, or mix it with the new one.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In such a situation, at the stage when we ask the LLM whether we will need to ask the Agent to perform the necessary edits/improvements, the next request should not be to generate a prompt for the Agent, but '''a re-analysis and editing of the instructions file'''. &lt;br /&gt;
&lt;br /&gt;
You need to send the LLM the old version of the section that describes the part of the project that needs to be changed/improved, and ask it to point out specifically and write in .md format (so that we can simply copy the new lines) what needs to be changed/added so that the instructions exactly match the new requirements. The prompt will be approximately like this: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
*detailed description of the new requirements*&lt;br /&gt;
&lt;br /&gt;
Write exactly what specifically needs to be replaced or added in the old version of the instructions block so that it exactly matches the new requirements. Write in .md format so that the lines can be easily copied. Write in detail and understandably for the AI Agent. Here is the old version of the block from the instructions file that needs to be edited:&lt;br /&gt;
&lt;br /&gt;
*old version of the block from the instructions file that needs to be edited*&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the new requirements affect several sections of the instructions file, then '''it is better to edit them separately''' so that the LLM does not have to work with a huge text all at once.&lt;br /&gt;
&lt;br /&gt;
The LLM will output what exactly needs to be replaced/supplemented in the instructions section. &lt;br /&gt;
* You need to carefully read the edits, analyze them yourself, and see if there are any inconsistencies with our goal or contradictions with the rest of the functionality. It may be necessary to make edits. &lt;br /&gt;
* If the changes are global, you need to run the edited section through the LLM a few more times to clear the new version of possible bugs or inaccuracies (using the same scheme by which we initially generated and edited this file).&lt;br /&gt;
* After the entire instructions.md file completely matches the new requirements, it is necessary to make edits to the AGENTS.md file (it is much smaller, so no difficulties should arise), after which you can generate a prompt for the Agent. &lt;br /&gt;
* Now we give the LLM the section/sections that we have just edited with it, and act according to the known scheme from the '''''Stage of tweaks and improvements of the project'''''.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
* The Agent copes perfectly with the development of the project according to clear instructions, so do not hesitate to invest time in a detailed description of the instructions.md file and in generating voluminous and maximally detailed prompts for the Agent. Only in this case will it create exactly what we need.&lt;br /&gt;
* The LLM handles minor bugs and improvements perfectly, so if you need to try something, test it, or make minor edits, it is best to use the LLM specifically for such tasks.&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Category:Practical_AI_Solutions&amp;diff=856</id>
		<title>Category:Practical AI Solutions</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Category:Practical_AI_Solutions&amp;diff=856"/>
		<updated>2026-06-29T13:51:40Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Slavinsky moved page Category:Etc to Category:Practical AI Solutions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Category:Etc&amp;diff=857</id>
		<title>Category:Etc</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Category:Etc&amp;diff=857"/>
		<updated>2026-06-29T13:51:40Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Slavinsky moved page Category:Etc to Category:Practical AI Solutions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[:Category:Practical AI Solutions]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Category:Practical_AI_Solutions&amp;diff=828</id>
		<title>Category:Practical AI Solutions</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Category:Practical_AI_Solutions&amp;diff=828"/>
		<updated>2026-06-15T14:07:48Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Created page with &amp;quot;Category:Qubot&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Tutorial_on_creating_a_website_using_AI-Agent&amp;diff=827</id>
		<title>Tutorial on creating a website using AI-Agent</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Tutorial_on_creating_a_website_using_AI-Agent&amp;diff=827"/>
		<updated>2026-06-15T13:56:50Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: /* Creating the General File Framework */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Etc]]&lt;br /&gt;
&lt;br /&gt;
== Technology Selection for Development ==&lt;br /&gt;
First, it is necessary to select and approve the technologies that will be used for project development:&lt;br /&gt;
* Programming language (preferably with the version specified from the start)&lt;br /&gt;
* Framework (if required)&lt;br /&gt;
* DBMS (if the use of a database is required)&lt;br /&gt;
In the case of Bitva, which is described in this tutorial, PHP 7.2 without any frameworks and SQLite were chosen.&lt;br /&gt;
&lt;br /&gt;
== Creating a Specification That Is Easy for People to Understand ==&lt;br /&gt;
Next, it is necessary to create a specification document that is easy and convenient to navigate.&lt;br /&gt;
&lt;br /&gt;
In the case of Bitva, the specification was divided into 2 parts - '''&amp;quot;Design&amp;quot;''' and '''&amp;quot;Logic and Mechanics&amp;quot;'''.&lt;br /&gt;
&lt;br /&gt;
=== Design ===&lt;br /&gt;
The &amp;quot;Design&amp;quot; section separately describes each page/element and its visual behavior.&lt;br /&gt;
&lt;br /&gt;
For example, the &amp;quot;Design&amp;quot; section for Bitva describes:&lt;br /&gt;
* The appearance of the main page&lt;br /&gt;
* The appearance of Category and Tag pages&lt;br /&gt;
* Navigation&lt;br /&gt;
* The appearance of the game page&lt;br /&gt;
It is also necessary to create mockup images for all pages/elements. This will help both when describing the interface in text and when creating specifications for the AI Agent later.&lt;br /&gt;
&lt;br /&gt;
If there are examples of interfaces from other similar websites, AI can be used to create a detailed and understandable description of the page design. If mockup images already exist at the interface description stage, they can also be provided.&lt;br /&gt;
&lt;br /&gt;
In the case of Bitva, Gemini (Pro 3.1) was used to describe some interface elements (navigation, part of the main page) based on example screenshots. However, it definitely will not describe an interface perfectly from a screenshot, because it will add details that are unnecessary or incorrectly describe the actual requirements. Therefore, a specification generated by Gemini should be considered a framework that can be used as a starting point to save time, but the entire text must still be reviewed and edited manually.&lt;br /&gt;
&lt;br /&gt;
=== Logic and Mechanics ===&lt;br /&gt;
The &amp;quot;Logic and Mechanics&amp;quot; section describes the main processes of the website. The behavior of pages and all functionality must be described in clear and understandable language.&lt;br /&gt;
&lt;br /&gt;
For Bitva, the &amp;quot;Logic and Mechanics&amp;quot; section was divided into the following parts:&lt;br /&gt;
* Categories/Tags/Collections (complete behavior of pages and their elements)&lt;br /&gt;
* Game Import (logic for importing game data from supplier JSON files)&lt;br /&gt;
** Gamepix supplier integration&lt;br /&gt;
** Zygomatic supplier integration&lt;br /&gt;
* Images (logic for saving, naming, and compressing images)&lt;br /&gt;
* Logic for assigning Categories and Tags&lt;br /&gt;
&lt;br /&gt;
=== Creating the Database Schema ===&lt;br /&gt;
It is also necessary to create a database schema (or a skeleton data structure if a database is not being used).&lt;br /&gt;
&lt;br /&gt;
After the specification and database schema have been approved, it is possible to proceed to creating instructions for the AI Agent.&lt;br /&gt;
&lt;br /&gt;
== Creating the Instruction File for the AI Agent ==&lt;br /&gt;
Having a clearly described specification for yourself and the team, the next step is to create an instruction file for the AI Agent. This is a .md file that will be located in the project root, and the agent will always take its contents into account during any code generation.&lt;br /&gt;
&lt;br /&gt;
It is important to describe the project in as much detail as possible, clarifying all nuances that the Agent might otherwise assume or misunderstand.&lt;br /&gt;
&lt;br /&gt;
It is better to write the project description in the instruction file in English so that the Agent does not have any issues understanding the language.&lt;br /&gt;
&lt;br /&gt;
An LLM will be needed to create a detailed and complete description. In the case of Bitva, Gemini was used.&lt;br /&gt;
&lt;br /&gt;
Asking an LLM to create such a file directly from the specification is not effective. Therefore, the process is divided into steps.&lt;br /&gt;
&lt;br /&gt;
=== Creating the General File Framework ===&lt;br /&gt;
First, the complete specification and data structure created in the previous step should be provided to the LLM. It is necessary to explain the situation: that we are going to work with an AI Agent and need to create a .md file containing complete instructions that will be taken into account by the Agent during development. The goal is to create a description that will be perfectly understandable specifically for an AI Agent. Next, ask the LLM to write an initial file structure with draft descriptions that fully describe the project. To simplify the process, this task can be divided into two separate parts - creating the file structure for the backend first, and then separately for the frontend.&lt;br /&gt;
&lt;br /&gt;
ㅤ&lt;br /&gt;
&lt;br /&gt;
In the case of Bitva, the following file structure was created:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Backend:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;md&amp;quot;&amp;gt;&lt;br /&gt;
# Project Context&lt;br /&gt;
## Core Philosophy&lt;br /&gt;
# Technical Stack&lt;br /&gt;
# Database Architecture &amp;amp; Indices&lt;br /&gt;
# Directory Structure&lt;br /&gt;
# Routing Rules&lt;br /&gt;
# Business Logic &amp;amp; Mechanics&lt;br /&gt;
## 1. Category &amp;amp; Tag Hierarchy&lt;br /&gt;
## 2. Game Selection Logic&lt;br /&gt;
## 3. Provider-Specific Integration&lt;br /&gt;
### Dynamic Tag &amp;amp; Category Resolution Algorithm&lt;br /&gt;
## 4. Import &amp;amp; Update Process (CRON)&lt;br /&gt;
## 5. Image Processing Pipeline&lt;br /&gt;
## 6. Frontend &amp;amp; AdBlock Mechanics&lt;br /&gt;
# Coding Guidelines&lt;br /&gt;
## 1. Security &amp;amp; Data Integrity&lt;br /&gt;
## 2. PHP Standards &amp;amp; Architecture&lt;br /&gt;
## 3. Performance &amp;amp; SQLite Optimization&lt;br /&gt;
## 4. Frontend &amp;amp; CSS Architecture&lt;br /&gt;
## 5. Code Style&lt;br /&gt;
# Constraints &amp;amp; Hard Limits&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
ㅤ&lt;br /&gt;
&lt;br /&gt;
Frontend:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;md&amp;quot;&amp;gt;&lt;br /&gt;
# Frontend &amp;amp; UI Architecture&lt;br /&gt;
## 1. Global Layout (layout.phtml)&lt;br /&gt;
## 2. Homepage View (HomeController@index)&lt;br /&gt;
## 3. Category &amp;amp; Tag Pages (`CategoryController@show` / `TagController@show`)&lt;br /&gt;
## 4. Navigation &amp;amp; Sidebar Architecture&lt;br /&gt;
## 5. Game Play Page (`GameController@show`)&lt;br /&gt;
## 6. Game Card Component (Thumbnail Anatomy)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
ㅤ&lt;br /&gt;
&lt;br /&gt;
=== Filling the Sections of the Instruction File ===&lt;br /&gt;
First, it is best to work on the backend separately and move to the frontend afterward.&lt;br /&gt;
&lt;br /&gt;
At this stage, it is necessary to once again provide the LLM with the '''complete specification that we originally created for ourselves''' (to refresh its context), along with the generated '''backend sections'''. The LLM should be asked to fill all backend sections in as much detail as possible (in English), using our specification as the primary source (the full specification is provided because frontend details may affect backend formulations). When making the request, emphasis should be placed on the fact that the descriptions must be written specifically so that an AI Agent can understand the instructions as clearly and transparently as possible, leaving no room for assumptions or creativity that could lead development in a direction different from what is intended.&lt;br /&gt;
&lt;br /&gt;
As a result, we will obtain a reasonably well-described backend section, which will become the foundation for further development.&lt;br /&gt;
&lt;br /&gt;
The generated result must be reviewed very carefully and thoughtfully, because some parts will inevitably be described differently from what is actually required, while many functions will be described with insufficient detail. This happens because our original specification, written for people, does not contain many details that seem &amp;quot;obvious&amp;quot; to us and would only overload human perception, but for an AI Agent these are critically important nuances. Without them, the Agent will begin making its own assumptions.&lt;br /&gt;
&lt;br /&gt;
All necessary corrections, additions, and clarifications should be communicated to the LLM, and it should be asked to update the relevant subsections so that the AI Agent has no unanswered questions and the text contains no inaccuracies that could mislead it or force it to make assumptions. As a result, the amount of text will increase significantly because many additional details and clarifications required for the Agent's precise understanding of the project will be added.&lt;br /&gt;
&lt;br /&gt;
After generating what appears to be a good backend section, work begins on each of its individual subsections.&lt;br /&gt;
&lt;br /&gt;
ㅤ&lt;br /&gt;
&lt;br /&gt;
=== Working with Individual Sections of the Instruction File ===&lt;br /&gt;
Now it is necessary to perform a very long and detailed process of reviewing and refining all details of each instruction subsection.&lt;br /&gt;
&lt;br /&gt;
First, we provide our LLM with the first backend subsection and the corresponding part of our specification (the one written for humans, if such a subsection exists in our specification). The request will look like: &amp;quot;&amp;lt;code&amp;gt;Now check specifically the subsection ''(subsection name)'' for formulations that an AI Agent might misinterpret, ambiguities, hidden bugs in our description, missing necessary clarifications for the AI Agent, and fix them&amp;lt;/code&amp;gt;&amp;quot;. As a result, a large number of nuances and hidden bugs will inevitably be discovered. The LLM will correct them and claim that the result is now an excellent reference version of the subsection. '''However, such statements must never be trusted'''. After receiving this revised version of the subsection, it must be reviewed manually. If corrections are needed, we must explain to the LLM what is wrong and ask it to specify '''exact lines or formulations''' that need to be replaced or corrected.&lt;br /&gt;
&lt;br /&gt;
'''Important: From this moment on, we no longer copy the full version of the section from the LLM chat. Instead, we must request only the specific lines that need to be changed or added in .md format so they can be copied directly. Otherwise, the LLM may start shortening previous formulations while adding new clarifications.'''&lt;br /&gt;
&lt;br /&gt;
Next, we again provide the final version of the subsection to the LLM with a request like: &amp;quot;&amp;lt;code&amp;gt;Check the final version of our subsection again for formulations that an AI Agent might misinterpret, ambiguities, hidden bugs in our description, missing necessary clarifications for the AI Agent, or any other issues&amp;lt;/code&amp;gt;&amp;quot;. To make the LLM more effective at finding vulnerabilities, we can assign it a role during review, for example: &amp;quot;&amp;lt;code&amp;gt;Read this subsection as a 'lazy' or overly literal AI agent that looks for any opportunity to simplify implementation. Find loopholes where it could make mistakes or do something unintended, and close them&amp;lt;/code&amp;gt;&amp;quot;. It will almost certainly find 2–3 critical issues that could cause hallucinations or bugs in the Agent's output. If it responds with the full subsection again or provides corrections in plain text instead of structured changes, it must be reminded that it should only provide lines to replace or append, formatted in .md so they can be copied directly. You may even paste its previous incorrect response and ask it to rewrite it properly.&lt;br /&gt;
&lt;br /&gt;
After applying these 2–3 rounds of corrections, the LLM will again claim the result is perfect. However, '''this should still not be trusted'''. The full subsection must be reviewed again with the same request: &amp;quot;&amp;lt;code&amp;gt;Check the final version of our subsection again for formulations that an AI Agent might misinterpret, ambiguities, hidden bugs in our description, missing necessary clarifications for the AI Agent, or any other issues. Read this subsection as a 'lazy' or overly literal AI agent that looks for any opportunity to simplify implementation. Find loopholes where it could make mistakes or do something unintended, and close them&amp;lt;/code&amp;gt;&amp;quot;. There is a 99% chance that 2–3 vulnerabilities or unclear formulations will still be found.&lt;br /&gt;
&lt;br /&gt;
This process of &amp;lt;code&amp;gt;&amp;quot;request review =&amp;gt; apply fixes =&amp;gt; request review&amp;quot;&amp;lt;/code&amp;gt; must be repeated until the LLM stops finding problems. Initially, critical vulnerabilities will be found, then potentially buggy formulations, then missing clarifications to prevent the agent from making assumptions, and finally minor cosmetic issues. It is very important to carefully read the LLM's explanations of the problems rather than blindly copying suggested replacements. Sometimes the LLM suggests optimizations or features that are unnecessary and should be rejected. This process '''may take 10, 20, or even more iterations''', depending on the complexity of the subsection. However, after eliminating the final minor issues, the LLM will eventually state that the description is perfect and no further improvements can be made. We ourselves see the progress of corrections (serious problems have long ceased to be found, and the last ones were very minor edits that simply bring the instructions to perfection), so such an answer '''in this context''' can be trusted.&lt;br /&gt;
&lt;br /&gt;
'''This process must be applied to every subsection.''' It is time-consuming and token-intensive, but it results in a highly detailed and precise description required for the AI Agent.&lt;br /&gt;
&lt;br /&gt;
Once all subsections of the backend are brought to a conditional ideal, it is necessary to give LLM a complete picture of all subsections of the backend with a request: &amp;lt;code&amp;gt;&amp;quot;Now carefully analyze the full backend structure and check whether there are any inconsistencies, contradictions, or new issues that appear in the combined context&amp;quot;&amp;lt;/code&amp;gt;. It is possible that the LLM will find additional issues that only appear when viewing the system as a whole. While these are unlikely to be critical (since the model remembers previous subsections), they can still occur, and it is better to be safe. If issues are found, the same iterative correction process must be applied again until no problems remain.&lt;br /&gt;
&lt;br /&gt;
As a result, we obtain a highly detailed and precise backend section (an ideal specification for the AI Agent).&lt;br /&gt;
&lt;br /&gt;
Next, '''following the same approach used for the backend section''', we create the frontend section. We already have subsection names with minimal descriptions from previous steps, so the same process is applied: generate the filled frontend section based on the human specification and subsection outline, then iteratively review, refine, and validate each subsection until it reaches an ideal state, ensuring consistency across all parts.&lt;br /&gt;
&lt;br /&gt;
Frontend subsections require even more iteration than backend ones because algorithms and rules are easier for an AI Agent to interpret than visual design and UI behavior, which can be implemented in multiple ways (and may, for example, break SEO). Therefore, frontend subsections will be much more detailed due to the large number of constraints introduced to prevent broken SEO, poor mobile responsiveness, or faulty JavaScript behavior.&lt;br /&gt;
&lt;br /&gt;
Special attention must be paid to the principle of a '''single source of truth'''. For example, media queries and screen breakpoints for mobile and desktop layouts must be defined at the very beginning of the document as global constants (e.g., strictly &amp;lt;code&amp;gt;&amp;lt; 1025px&amp;lt;/code&amp;gt; for mobile and &amp;lt;code&amp;gt;&amp;gt;= 1025px&amp;lt;/code&amp;gt; for desktop). If this value is not fixed at the beginning, the Agent may define different values in different sections, leading to a completely broken responsive design.&lt;br /&gt;
&lt;br /&gt;
After finalizing both backend and frontend sections, the full document must be validated as a whole. Similar to subsection validation, the entire file containing both frontend and backend must be reviewed for inconsistencies across sections. If necessary, specific lines are corrected and the document is revalidated until no issues remain.&lt;br /&gt;
&lt;br /&gt;
As a result, we obtain a high-quality instruction file (.md) for the AI Agent that will guide it throughout the entire development process. The Agent must still be reminded of these rules when generating functionality, as such a large file cannot be fully accounted for in every request. However, the key achievement is that we now have a maximally detailed and precise specification tailored for an AI Agent.&lt;br /&gt;
&lt;br /&gt;
== Website Development Using an AI Agent ==&lt;br /&gt;
After creating a clear and detailed instruction file for the AI agent, you can proceed to generating the project code.&lt;br /&gt;
&lt;br /&gt;
''The following describes the development experience of Bitva.com, but it is applicable to the development of most systems.''&lt;br /&gt;
&lt;br /&gt;
A project folder was created, and the instruction file (created in the previous steps) was placed in the root, along with prepared configurations. The agent was launched in the project directory, and generation was started with the prompt: &amp;lt;code&amp;gt;&amp;quot;read the instructions.md file and execute its instructions&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The agent analyzed the instructions.md file and asked what exactly I wanted it to do, providing examples — full project initialization, import, frontend, pages, configuration. The option of full project initialization was chosen — prompt to the agent: &amp;lt;code&amp;gt;&amp;quot;Perform full project initialization&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
After that, it spent about 5–10 minutes creating the basic website functionality according to the instructions from the instructions.md file. The agent reported that the work was completed and said that the site could now be launched and tested. It is important to remember that if we initially specify that index.php should be in the public folder, the agent will follow that structure, and the server must be started with the appropriate parameters. From the very first launch, the site worked (although not perfectly, but it did not crash with an error, which is encouraging).&lt;br /&gt;
&lt;br /&gt;
Next, you need to ask the agent to create an AGENTS.md file in the project root so that it can refer to it as a constant prompt regarding the main nuances of the site. Thus, there end up being 2 files with the project description in the project root - our huge and maximally detailed instructions.md (we will refer to its sections during tweaks and edits), and the compact (relative to instructions.md) AGENTS.md file, in which the agent has collected the most important details for itself that it needs to remember when executing any request.&lt;br /&gt;
&lt;br /&gt;
It is '''necessary''' to create a repository and commit the obtained result. And subsequently, every change made by the Agent must be committed.&lt;br /&gt;
&lt;br /&gt;
After that, you need to change the model (in the case of Bitva, DeepSeek was chosen) and request a recheck and optimization of the generated code. Prompt: &amp;lt;code&amp;gt;&amp;quot;Analyze the project once again and fix all problems&amp;quot;&amp;lt;/code&amp;gt;. It will perform refactoring and improvements across many files.&lt;br /&gt;
&lt;br /&gt;
In the Bitva project, the main functionality that needed to be tested first was the import of game data and images from provider sources, so the next step was a request for a detailed audit of the game import functionality code and checking it against our instructions. The agent found a minor bug with game naming, fixed it, and reported that everything now strictly corresponds to the instructions. It provided the command to run the import so that the functionality could be tested.&lt;br /&gt;
&lt;br /&gt;
After the first run of the game import, several bugs were discovered, and now the main assistant becomes not the agent, but our LLM, with which the instructions file was compiled. To eliminate minor bugs, it is easier to use the LLM (when it is also in the context of the project), so as not to spend the Agent's tokens, not to confuse its context with attempts to solve bugs, and not to risk that upon a requested minor fix it might start editing other working project files.&lt;br /&gt;
&lt;br /&gt;
For a minor fix, it is enough to give the LLM the function code (or the whole class, if necessary), describe the problem, and it is advisable to ask whether the solution to this bug is simple and fast and we can solve it ourselves, or if it will require sending a request to the agent. If the bug is minor, the LLM points it out very quickly and tells you what needs to be fixed (most often it is either the Agent's inattention or partially missing specific data). For example, the first bug found on Bitva was an incorrectly specified field name in the game provider's JSON, which suited the first provider but did not suit the second, so images from the second provider did not load. If we had told the Agent that the image import from the second provider was not working, it would have started analyzing and modifying the working code (with just one incorrectly specified field name), adding the handling of exceptions that are unrealistic in our case, wasting tokens in the process and confusing its context. But the LLM immediately said that the field name was specified incorrectly, since we compiled the instructions file with it and it was provided with JSON examples from the providers (examples were not included in the instructions file; field names were specified, but apparently the agent perceived them insufficiently accurately, since there were no examples that would overload the instructions file).&lt;br /&gt;
&lt;br /&gt;
In general, it can be said about this that '''it is much better to search for and fix minor bugs, discuss and reason about the project with the LLM''', the LLM's context can be loaded with examples and assumptions. '''And it is best to give the AI Agent clear prompts for development, without reasoning and inaccuracies'''. It copes perfectly with development according to instructions.&lt;br /&gt;
&lt;br /&gt;
Next comes the stage of tweaks and further improvements of the project.&lt;br /&gt;
&lt;br /&gt;
=== Stage of tweaks and improvements of the project ===&lt;br /&gt;
Most likely, the first generated version (even after fixing bugs) will be incomplete, or major edits will be required. In this case, you need to turn to our LLM, clearly and in detail describe the improvement, and ask whether it is necessary to involve the Agent for this, or if it can be done simply and quickly without its participation. If the edit is indeed major (requires understanding the logic and connection between several files), then the LLM will say that it will be more efficient to pass it to the Agent. In this case, it is necessary to ask the LLM to generate a prompt for the Agent: &amp;lt;code&amp;gt;&amp;quot;Generate a clear and understandable prompt for the AI Agent so that it implements my improvements. Write in such a way that even a lazy agent will understand everything, take it into account, and implement it. Also refer to the instructions.md file in the project root. For better understanding, here is the section of the instructions file that relates to the improvements: ''&amp;lt;u&amp;gt;*send the section of the instructions file that specifically relates to the improvements we want to make*&amp;lt;/u&amp;gt;''&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The LLM will generate a clear and understandable prompt for the Agent, which will describe in maximum detail exactly what we need to do. Usually, it takes from 5 to 20 lines, so it is necessary to create a file where we will copy and edit all prompts to the Agent before sending. You need to copy the generated prompt from the LLM into the prompt editing file, reread it, and if necessary - edit it. Only after this can you copy the ready prompt and paste it into the agent's input field (in the case of opencode, a short message [N lines pasted] will be displayed in the input line, which means everything was pasted correctly). Such manipulations are necessary so that in case of editing a large prompt directly in the agent's input line, you do not accidentally send an incomplete prompt and thereby clog the Agent's context with incorrect data.&lt;br /&gt;
&lt;br /&gt;
Such manipulations must be performed during every major improvement that requires the Agent's participation.&lt;br /&gt;
&lt;br /&gt;
=== The need for major edits/improvements ===&lt;br /&gt;
In the case when the technical specifications are changed or significantly supplemented during the development process, it is '''necessary''' to edit both the instructions.md file and AGENTS.md, otherwise, the Agent may in a few steps start returning the version of the functionality described in these files, or mix it with the new one.&lt;br /&gt;
&lt;br /&gt;
In such a situation, at the stage when we ask the LLM whether we will need to ask the Agent to perform the necessary edits/improvements, the next request should not be to generate a prompt for the Agent, but '''a re-analysis and editing of the instructions file'''. You need to send the LLM the old version of the section that describes the part of the project that needs to be changed/improved, and ask it to point out specifically and write in .md format (so that we can simply copy the new lines) what needs to be changed/added so that the instructions exactly match the new requirements. The prompt will be approximately like this: &amp;lt;code&amp;gt;&amp;quot;''&amp;lt;u&amp;gt;*detailed description of the new requirements*&amp;lt;/u&amp;gt;'' Write exactly what specifically needs to be replaced or added in the old version of the instructions block so that it exactly matches the new requirements. Write in .md format so that the lines can be easily copied. Write in detail and understandably for the AI Agent. Here is the old version of the block from the instructions file that needs to be edited: ''&amp;lt;u&amp;gt;*old version of the block from the instructions file that needs to be edited*&amp;lt;/u&amp;gt;''&amp;quot;&amp;lt;/code&amp;gt;. If the new requirements affect several sections of the instructions file, then '''it is better to edit them separately''' so that the LLM does not have to work with a huge text all at once.&lt;br /&gt;
&lt;br /&gt;
The LLM will output what exactly needs to be replaced/supplemented in the instructions section. You need to carefully read the edits, analyze them yourself, and see if there are any inconsistencies with our goal or contradictions with the rest of the functionality. It may be necessary to make edits. If the changes are global, you need to run the edited section through the LLM a few more times to clear the new version of possible bugs or inaccuracies (using the same scheme by which we initially generated and edited this file).&lt;br /&gt;
&lt;br /&gt;
After the entire instructions.md file completely matches the new requirements, it is necessary to make edits to the AGENTS.md file (it is much smaller, so no difficulties should arise), after which you can generate a prompt for the Agent. Now we give the LLM the section/sections that we have just edited with it, and act according to the known scheme from the '''''Stage of tweaks and improvements of the project'''''.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
The Agent copes perfectly with the development of the project according to clear instructions, so do not hesitate to invest time in a detailed description of the instructions.md file and in generating voluminous and maximally detailed prompts for the Agent. Only in this case will it create exactly what we need.&lt;br /&gt;
&lt;br /&gt;
The LLM handles minor bugs and improvements perfectly, so if you need to try something, test it, or make minor edits, it is best to use the LLM specifically for such tasks.&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Tutorial_on_creating_a_website_using_AI-Agent&amp;diff=826</id>
		<title>Tutorial on creating a website using AI-Agent</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Tutorial_on_creating_a_website_using_AI-Agent&amp;diff=826"/>
		<updated>2026-06-15T13:55:13Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &amp;lt;syntaxhighlight lang=&amp;quot;md&amp;quot;&amp;gt;, not markdown&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Etc]]&lt;br /&gt;
&lt;br /&gt;
== Technology Selection for Development ==&lt;br /&gt;
First, it is necessary to select and approve the technologies that will be used for project development:&lt;br /&gt;
* Programming language (preferably with the version specified from the start)&lt;br /&gt;
* Framework (if required)&lt;br /&gt;
* DBMS (if the use of a database is required)&lt;br /&gt;
In the case of Bitva, which is described in this tutorial, PHP 7.2 without any frameworks and SQLite were chosen.&lt;br /&gt;
&lt;br /&gt;
== Creating a Specification That Is Easy for People to Understand ==&lt;br /&gt;
Next, it is necessary to create a specification document that is easy and convenient to navigate.&lt;br /&gt;
&lt;br /&gt;
In the case of Bitva, the specification was divided into 2 parts - '''&amp;quot;Design&amp;quot;''' and '''&amp;quot;Logic and Mechanics&amp;quot;'''.&lt;br /&gt;
&lt;br /&gt;
=== Design ===&lt;br /&gt;
The &amp;quot;Design&amp;quot; section separately describes each page/element and its visual behavior.&lt;br /&gt;
&lt;br /&gt;
For example, the &amp;quot;Design&amp;quot; section for Bitva describes:&lt;br /&gt;
* The appearance of the main page&lt;br /&gt;
* The appearance of Category and Tag pages&lt;br /&gt;
* Navigation&lt;br /&gt;
* The appearance of the game page&lt;br /&gt;
It is also necessary to create mockup images for all pages/elements. This will help both when describing the interface in text and when creating specifications for the AI Agent later.&lt;br /&gt;
&lt;br /&gt;
If there are examples of interfaces from other similar websites, AI can be used to create a detailed and understandable description of the page design. If mockup images already exist at the interface description stage, they can also be provided.&lt;br /&gt;
&lt;br /&gt;
In the case of Bitva, Gemini (Pro 3.1) was used to describe some interface elements (navigation, part of the main page) based on example screenshots. However, it definitely will not describe an interface perfectly from a screenshot, because it will add details that are unnecessary or incorrectly describe the actual requirements. Therefore, a specification generated by Gemini should be considered a framework that can be used as a starting point to save time, but the entire text must still be reviewed and edited manually.&lt;br /&gt;
&lt;br /&gt;
=== Logic and Mechanics ===&lt;br /&gt;
The &amp;quot;Logic and Mechanics&amp;quot; section describes the main processes of the website. The behavior of pages and all functionality must be described in clear and understandable language.&lt;br /&gt;
&lt;br /&gt;
For Bitva, the &amp;quot;Logic and Mechanics&amp;quot; section was divided into the following parts:&lt;br /&gt;
* Categories/Tags/Collections (complete behavior of pages and their elements)&lt;br /&gt;
* Game Import (logic for importing game data from supplier JSON files)&lt;br /&gt;
** Gamepix supplier integration&lt;br /&gt;
** Zygomatic supplier integration&lt;br /&gt;
* Images (logic for saving, naming, and compressing images)&lt;br /&gt;
* Logic for assigning Categories and Tags&lt;br /&gt;
&lt;br /&gt;
=== Creating the Database Schema ===&lt;br /&gt;
It is also necessary to create a database schema (or a skeleton data structure if a database is not being used).&lt;br /&gt;
&lt;br /&gt;
After the specification and database schema have been approved, it is possible to proceed to creating instructions for the AI Agent.&lt;br /&gt;
&lt;br /&gt;
== Creating the Instruction File for the AI Agent ==&lt;br /&gt;
Having a clearly described specification for yourself and the team, the next step is to create an instruction file for the AI Agent. This is a .md file that will be located in the project root, and the agent will always take its contents into account during any code generation.&lt;br /&gt;
&lt;br /&gt;
It is important to describe the project in as much detail as possible, clarifying all nuances that the Agent might otherwise assume or misunderstand.&lt;br /&gt;
&lt;br /&gt;
It is better to write the project description in the instruction file in English so that the Agent does not have any issues understanding the language.&lt;br /&gt;
&lt;br /&gt;
An LLM will be needed to create a detailed and complete description. In the case of Bitva, Gemini was used.&lt;br /&gt;
&lt;br /&gt;
Asking an LLM to create such a file directly from the specification is not effective. Therefore, the process is divided into steps.&lt;br /&gt;
&lt;br /&gt;
=== Creating the General File Framework ===&lt;br /&gt;
First, the complete specification and data structure created in the previous step should be provided to the LLM. It is necessary to explain the situation: that we are going to work with an AI Agent and need to create a .md file containing complete instructions that will be taken into account by the Agent during development. The goal is to create a description that will be perfectly understandable specifically for an AI Agent. Next, ask the LLM to write an initial file structure with draft descriptions that fully describe the project. To simplify the process, this task can be divided into two separate parts - creating the file structure for the backend first, and then separately for the frontend.&lt;br /&gt;
&lt;br /&gt;
ㅤ&lt;br /&gt;
&lt;br /&gt;
In the case of Bitva, the following file structure was created:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Backend:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;md&amp;quot;&amp;gt;&lt;br /&gt;
# Project Context&lt;br /&gt;
## Core Philosophy&lt;br /&gt;
# Technical Stack&lt;br /&gt;
# Database Architecture &amp;amp; Indices&lt;br /&gt;
# Directory Structure&lt;br /&gt;
# Routing Rules&lt;br /&gt;
# Business Logic &amp;amp; Mechanics&lt;br /&gt;
## 1. Category &amp;amp; Tag Hierarchy&lt;br /&gt;
## 2. Game Selection Logic&lt;br /&gt;
## 3. Provider-Specific Integration&lt;br /&gt;
### Dynamic Tag &amp;amp; Category Resolution Algorithm&lt;br /&gt;
## 4. Import &amp;amp; Update Process (CRON)&lt;br /&gt;
## 5. Image Processing Pipeline&lt;br /&gt;
## 6. Frontend &amp;amp; AdBlock Mechanics&lt;br /&gt;
# Coding Guidelines&lt;br /&gt;
## 1. Security &amp;amp; Data Integrity&lt;br /&gt;
## 2. PHP Standards &amp;amp; Architecture&lt;br /&gt;
## 3. Performance &amp;amp; SQLite Optimization&lt;br /&gt;
## 4. Frontend &amp;amp; CSS Architecture&lt;br /&gt;
## 5. Code Style&lt;br /&gt;
# Constraints &amp;amp; Hard Limits&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
ㅤ&lt;br /&gt;
&lt;br /&gt;
Frontend:&lt;br /&gt;
python&lt;br /&gt;
# Frontend &amp;amp; UI Architecture&lt;br /&gt;
## 1. Global Layout (layout.phtml)&lt;br /&gt;
## 2. Homepage View (HomeController@index)&lt;br /&gt;
## 3. Category &amp;amp; Tag Pages (`CategoryController@show` / `TagController@show`)&lt;br /&gt;
## 4. Navigation &amp;amp; Sidebar Architecture&lt;br /&gt;
## 5. Game Play Page (`GameController@show`)&lt;br /&gt;
## 6. Game Card Component (Thumbnail Anatomy)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
ㅤ&lt;br /&gt;
&lt;br /&gt;
=== Filling the Sections of the Instruction File ===&lt;br /&gt;
First, it is best to work on the backend separately and move to the frontend afterward.&lt;br /&gt;
&lt;br /&gt;
At this stage, it is necessary to once again provide the LLM with the '''complete specification that we originally created for ourselves''' (to refresh its context), along with the generated '''backend sections'''. The LLM should be asked to fill all backend sections in as much detail as possible (in English), using our specification as the primary source (the full specification is provided because frontend details may affect backend formulations). When making the request, emphasis should be placed on the fact that the descriptions must be written specifically so that an AI Agent can understand the instructions as clearly and transparently as possible, leaving no room for assumptions or creativity that could lead development in a direction different from what is intended.&lt;br /&gt;
&lt;br /&gt;
As a result, we will obtain a reasonably well-described backend section, which will become the foundation for further development.&lt;br /&gt;
&lt;br /&gt;
The generated result must be reviewed very carefully and thoughtfully, because some parts will inevitably be described differently from what is actually required, while many functions will be described with insufficient detail. This happens because our original specification, written for people, does not contain many details that seem &amp;quot;obvious&amp;quot; to us and would only overload human perception, but for an AI Agent these are critically important nuances. Without them, the Agent will begin making its own assumptions.&lt;br /&gt;
&lt;br /&gt;
All necessary corrections, additions, and clarifications should be communicated to the LLM, and it should be asked to update the relevant subsections so that the AI Agent has no unanswered questions and the text contains no inaccuracies that could mislead it or force it to make assumptions. As a result, the amount of text will increase significantly because many additional details and clarifications required for the Agent's precise understanding of the project will be added.&lt;br /&gt;
&lt;br /&gt;
After generating what appears to be a good backend section, work begins on each of its individual subsections.&lt;br /&gt;
&lt;br /&gt;
ㅤ&lt;br /&gt;
&lt;br /&gt;
=== Working with Individual Sections of the Instruction File ===&lt;br /&gt;
Now it is necessary to perform a very long and detailed process of reviewing and refining all details of each instruction subsection.&lt;br /&gt;
&lt;br /&gt;
First, we provide our LLM with the first backend subsection and the corresponding part of our specification (the one written for humans, if such a subsection exists in our specification). The request will look like: &amp;quot;&amp;lt;code&amp;gt;Now check specifically the subsection ''(subsection name)'' for formulations that an AI Agent might misinterpret, ambiguities, hidden bugs in our description, missing necessary clarifications for the AI Agent, and fix them&amp;lt;/code&amp;gt;&amp;quot;. As a result, a large number of nuances and hidden bugs will inevitably be discovered. The LLM will correct them and claim that the result is now an excellent reference version of the subsection. '''However, such statements must never be trusted'''. After receiving this revised version of the subsection, it must be reviewed manually. If corrections are needed, we must explain to the LLM what is wrong and ask it to specify '''exact lines or formulations''' that need to be replaced or corrected.&lt;br /&gt;
&lt;br /&gt;
'''Important: From this moment on, we no longer copy the full version of the section from the LLM chat. Instead, we must request only the specific lines that need to be changed or added in .md format so they can be copied directly. Otherwise, the LLM may start shortening previous formulations while adding new clarifications.'''&lt;br /&gt;
&lt;br /&gt;
Next, we again provide the final version of the subsection to the LLM with a request like: &amp;quot;&amp;lt;code&amp;gt;Check the final version of our subsection again for formulations that an AI Agent might misinterpret, ambiguities, hidden bugs in our description, missing necessary clarifications for the AI Agent, or any other issues&amp;lt;/code&amp;gt;&amp;quot;. To make the LLM more effective at finding vulnerabilities, we can assign it a role during review, for example: &amp;quot;&amp;lt;code&amp;gt;Read this subsection as a 'lazy' or overly literal AI agent that looks for any opportunity to simplify implementation. Find loopholes where it could make mistakes or do something unintended, and close them&amp;lt;/code&amp;gt;&amp;quot;. It will almost certainly find 2–3 critical issues that could cause hallucinations or bugs in the Agent's output. If it responds with the full subsection again or provides corrections in plain text instead of structured changes, it must be reminded that it should only provide lines to replace or append, formatted in .md so they can be copied directly. You may even paste its previous incorrect response and ask it to rewrite it properly.&lt;br /&gt;
&lt;br /&gt;
After applying these 2–3 rounds of corrections, the LLM will again claim the result is perfect. However, '''this should still not be trusted'''. The full subsection must be reviewed again with the same request: &amp;quot;&amp;lt;code&amp;gt;Check the final version of our subsection again for formulations that an AI Agent might misinterpret, ambiguities, hidden bugs in our description, missing necessary clarifications for the AI Agent, or any other issues. Read this subsection as a 'lazy' or overly literal AI agent that looks for any opportunity to simplify implementation. Find loopholes where it could make mistakes or do something unintended, and close them&amp;lt;/code&amp;gt;&amp;quot;. There is a 99% chance that 2–3 vulnerabilities or unclear formulations will still be found.&lt;br /&gt;
&lt;br /&gt;
This process of &amp;lt;code&amp;gt;&amp;quot;request review =&amp;gt; apply fixes =&amp;gt; request review&amp;quot;&amp;lt;/code&amp;gt; must be repeated until the LLM stops finding problems. Initially, critical vulnerabilities will be found, then potentially buggy formulations, then missing clarifications to prevent the agent from making assumptions, and finally minor cosmetic issues. It is very important to carefully read the LLM's explanations of the problems rather than blindly copying suggested replacements. Sometimes the LLM suggests optimizations or features that are unnecessary and should be rejected. This process '''may take 10, 20, or even more iterations''', depending on the complexity of the subsection. However, after eliminating the final minor issues, the LLM will eventually state that the description is perfect and no further improvements can be made. We ourselves see the progress of corrections (serious problems have long ceased to be found, and the last ones were very minor edits that simply bring the instructions to perfection), so such an answer '''in this context''' can be trusted.&lt;br /&gt;
&lt;br /&gt;
'''This process must be applied to every subsection.''' It is time-consuming and token-intensive, but it results in a highly detailed and precise description required for the AI Agent.&lt;br /&gt;
&lt;br /&gt;
Once all subsections of the backend are brought to a conditional ideal, it is necessary to give LLM a complete picture of all subsections of the backend with a request: &amp;lt;code&amp;gt;&amp;quot;Now carefully analyze the full backend structure and check whether there are any inconsistencies, contradictions, or new issues that appear in the combined context&amp;quot;&amp;lt;/code&amp;gt;. It is possible that the LLM will find additional issues that only appear when viewing the system as a whole. While these are unlikely to be critical (since the model remembers previous subsections), they can still occur, and it is better to be safe. If issues are found, the same iterative correction process must be applied again until no problems remain.&lt;br /&gt;
&lt;br /&gt;
As a result, we obtain a highly detailed and precise backend section (an ideal specification for the AI Agent).&lt;br /&gt;
&lt;br /&gt;
Next, '''following the same approach used for the backend section''', we create the frontend section. We already have subsection names with minimal descriptions from previous steps, so the same process is applied: generate the filled frontend section based on the human specification and subsection outline, then iteratively review, refine, and validate each subsection until it reaches an ideal state, ensuring consistency across all parts.&lt;br /&gt;
&lt;br /&gt;
Frontend subsections require even more iteration than backend ones because algorithms and rules are easier for an AI Agent to interpret than visual design and UI behavior, which can be implemented in multiple ways (and may, for example, break SEO). Therefore, frontend subsections will be much more detailed due to the large number of constraints introduced to prevent broken SEO, poor mobile responsiveness, or faulty JavaScript behavior.&lt;br /&gt;
&lt;br /&gt;
Special attention must be paid to the principle of a '''single source of truth'''. For example, media queries and screen breakpoints for mobile and desktop layouts must be defined at the very beginning of the document as global constants (e.g., strictly &amp;lt;code&amp;gt;&amp;lt; 1025px&amp;lt;/code&amp;gt; for mobile and &amp;lt;code&amp;gt;&amp;gt;= 1025px&amp;lt;/code&amp;gt; for desktop). If this value is not fixed at the beginning, the Agent may define different values in different sections, leading to a completely broken responsive design.&lt;br /&gt;
&lt;br /&gt;
After finalizing both backend and frontend sections, the full document must be validated as a whole. Similar to subsection validation, the entire file containing both frontend and backend must be reviewed for inconsistencies across sections. If necessary, specific lines are corrected and the document is revalidated until no issues remain.&lt;br /&gt;
&lt;br /&gt;
As a result, we obtain a high-quality instruction file (.md) for the AI Agent that will guide it throughout the entire development process. The Agent must still be reminded of these rules when generating functionality, as such a large file cannot be fully accounted for in every request. However, the key achievement is that we now have a maximally detailed and precise specification tailored for an AI Agent.&lt;br /&gt;
&lt;br /&gt;
== Website Development Using an AI Agent ==&lt;br /&gt;
After creating a clear and detailed instruction file for the AI agent, you can proceed to generating the project code.&lt;br /&gt;
&lt;br /&gt;
''The following describes the development experience of Bitva.com, but it is applicable to the development of most systems.''&lt;br /&gt;
&lt;br /&gt;
A project folder was created, and the instruction file (created in the previous steps) was placed in the root, along with prepared configurations. The agent was launched in the project directory, and generation was started with the prompt: &amp;lt;code&amp;gt;&amp;quot;read the instructions.md file and execute its instructions&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The agent analyzed the instructions.md file and asked what exactly I wanted it to do, providing examples — full project initialization, import, frontend, pages, configuration. The option of full project initialization was chosen — prompt to the agent: &amp;lt;code&amp;gt;&amp;quot;Perform full project initialization&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
After that, it spent about 5–10 minutes creating the basic website functionality according to the instructions from the instructions.md file. The agent reported that the work was completed and said that the site could now be launched and tested. It is important to remember that if we initially specify that index.php should be in the public folder, the agent will follow that structure, and the server must be started with the appropriate parameters. From the very first launch, the site worked (although not perfectly, but it did not crash with an error, which is encouraging).&lt;br /&gt;
&lt;br /&gt;
Next, you need to ask the agent to create an AGENTS.md file in the project root so that it can refer to it as a constant prompt regarding the main nuances of the site. Thus, there end up being 2 files with the project description in the project root - our huge and maximally detailed instructions.md (we will refer to its sections during tweaks and edits), and the compact (relative to instructions.md) AGENTS.md file, in which the agent has collected the most important details for itself that it needs to remember when executing any request.&lt;br /&gt;
&lt;br /&gt;
It is '''necessary''' to create a repository and commit the obtained result. And subsequently, every change made by the Agent must be committed.&lt;br /&gt;
&lt;br /&gt;
After that, you need to change the model (in the case of Bitva, DeepSeek was chosen) and request a recheck and optimization of the generated code. Prompt: &amp;lt;code&amp;gt;&amp;quot;Analyze the project once again and fix all problems&amp;quot;&amp;lt;/code&amp;gt;. It will perform refactoring and improvements across many files.&lt;br /&gt;
&lt;br /&gt;
In the Bitva project, the main functionality that needed to be tested first was the import of game data and images from provider sources, so the next step was a request for a detailed audit of the game import functionality code and checking it against our instructions. The agent found a minor bug with game naming, fixed it, and reported that everything now strictly corresponds to the instructions. It provided the command to run the import so that the functionality could be tested.&lt;br /&gt;
&lt;br /&gt;
After the first run of the game import, several bugs were discovered, and now the main assistant becomes not the agent, but our LLM, with which the instructions file was compiled. To eliminate minor bugs, it is easier to use the LLM (when it is also in the context of the project), so as not to spend the Agent's tokens, not to confuse its context with attempts to solve bugs, and not to risk that upon a requested minor fix it might start editing other working project files.&lt;br /&gt;
&lt;br /&gt;
For a minor fix, it is enough to give the LLM the function code (or the whole class, if necessary), describe the problem, and it is advisable to ask whether the solution to this bug is simple and fast and we can solve it ourselves, or if it will require sending a request to the agent. If the bug is minor, the LLM points it out very quickly and tells you what needs to be fixed (most often it is either the Agent's inattention or partially missing specific data). For example, the first bug found on Bitva was an incorrectly specified field name in the game provider's JSON, which suited the first provider but did not suit the second, so images from the second provider did not load. If we had told the Agent that the image import from the second provider was not working, it would have started analyzing and modifying the working code (with just one incorrectly specified field name), adding the handling of exceptions that are unrealistic in our case, wasting tokens in the process and confusing its context. But the LLM immediately said that the field name was specified incorrectly, since we compiled the instructions file with it and it was provided with JSON examples from the providers (examples were not included in the instructions file; field names were specified, but apparently the agent perceived them insufficiently accurately, since there were no examples that would overload the instructions file).&lt;br /&gt;
&lt;br /&gt;
In general, it can be said about this that '''it is much better to search for and fix minor bugs, discuss and reason about the project with the LLM''', the LLM's context can be loaded with examples and assumptions. '''And it is best to give the AI Agent clear prompts for development, without reasoning and inaccuracies'''. It copes perfectly with development according to instructions.&lt;br /&gt;
&lt;br /&gt;
Next comes the stage of tweaks and further improvements of the project.&lt;br /&gt;
&lt;br /&gt;
=== Stage of tweaks and improvements of the project ===&lt;br /&gt;
Most likely, the first generated version (even after fixing bugs) will be incomplete, or major edits will be required. In this case, you need to turn to our LLM, clearly and in detail describe the improvement, and ask whether it is necessary to involve the Agent for this, or if it can be done simply and quickly without its participation. If the edit is indeed major (requires understanding the logic and connection between several files), then the LLM will say that it will be more efficient to pass it to the Agent. In this case, it is necessary to ask the LLM to generate a prompt for the Agent: &amp;lt;code&amp;gt;&amp;quot;Generate a clear and understandable prompt for the AI Agent so that it implements my improvements. Write in such a way that even a lazy agent will understand everything, take it into account, and implement it. Also refer to the instructions.md file in the project root. For better understanding, here is the section of the instructions file that relates to the improvements: ''&amp;lt;u&amp;gt;*send the section of the instructions file that specifically relates to the improvements we want to make*&amp;lt;/u&amp;gt;''&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The LLM will generate a clear and understandable prompt for the Agent, which will describe in maximum detail exactly what we need to do. Usually, it takes from 5 to 20 lines, so it is necessary to create a file where we will copy and edit all prompts to the Agent before sending. You need to copy the generated prompt from the LLM into the prompt editing file, reread it, and if necessary - edit it. Only after this can you copy the ready prompt and paste it into the agent's input field (in the case of opencode, a short message [N lines pasted] will be displayed in the input line, which means everything was pasted correctly). Such manipulations are necessary so that in case of editing a large prompt directly in the agent's input line, you do not accidentally send an incomplete prompt and thereby clog the Agent's context with incorrect data.&lt;br /&gt;
&lt;br /&gt;
Such manipulations must be performed during every major improvement that requires the Agent's participation.&lt;br /&gt;
&lt;br /&gt;
=== The need for major edits/improvements ===&lt;br /&gt;
In the case when the technical specifications are changed or significantly supplemented during the development process, it is '''necessary''' to edit both the instructions.md file and AGENTS.md, otherwise, the Agent may in a few steps start returning the version of the functionality described in these files, or mix it with the new one.&lt;br /&gt;
&lt;br /&gt;
In such a situation, at the stage when we ask the LLM whether we will need to ask the Agent to perform the necessary edits/improvements, the next request should not be to generate a prompt for the Agent, but '''a re-analysis and editing of the instructions file'''. You need to send the LLM the old version of the section that describes the part of the project that needs to be changed/improved, and ask it to point out specifically and write in .md format (so that we can simply copy the new lines) what needs to be changed/added so that the instructions exactly match the new requirements. The prompt will be approximately like this: &amp;lt;code&amp;gt;&amp;quot;''&amp;lt;u&amp;gt;*detailed description of the new requirements*&amp;lt;/u&amp;gt;'' Write exactly what specifically needs to be replaced or added in the old version of the instructions block so that it exactly matches the new requirements. Write in .md format so that the lines can be easily copied. Write in detail and understandably for the AI Agent. Here is the old version of the block from the instructions file that needs to be edited: ''&amp;lt;u&amp;gt;*old version of the block from the instructions file that needs to be edited*&amp;lt;/u&amp;gt;''&amp;quot;&amp;lt;/code&amp;gt;. If the new requirements affect several sections of the instructions file, then '''it is better to edit them separately''' so that the LLM does not have to work with a huge text all at once.&lt;br /&gt;
&lt;br /&gt;
The LLM will output what exactly needs to be replaced/supplemented in the instructions section. You need to carefully read the edits, analyze them yourself, and see if there are any inconsistencies with our goal or contradictions with the rest of the functionality. It may be necessary to make edits. If the changes are global, you need to run the edited section through the LLM a few more times to clear the new version of possible bugs or inaccuracies (using the same scheme by which we initially generated and edited this file).&lt;br /&gt;
&lt;br /&gt;
After the entire instructions.md file completely matches the new requirements, it is necessary to make edits to the AGENTS.md file (it is much smaller, so no difficulties should arise), after which you can generate a prompt for the Agent. Now we give the LLM the section/sections that we have just edited with it, and act according to the known scheme from the '''''Stage of tweaks and improvements of the project'''''.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
The Agent copes perfectly with the development of the project according to clear instructions, so do not hesitate to invest time in a detailed description of the instructions.md file and in generating voluminous and maximally detailed prompts for the Agent. Only in this case will it create exactly what we need.&lt;br /&gt;
&lt;br /&gt;
The LLM handles minor bugs and improvements perfectly, so if you need to try something, test it, or make minor edits, it is best to use the LLM specifically for such tasks.&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=User_talk:Slavinsky&amp;diff=788</id>
		<title>User talk:Slavinsky</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=User_talk:Slavinsky&amp;diff=788"/>
		<updated>2022-10-12T13:57:26Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Created page with &amp;quot;# выбор языка в левой панели влияет только на интерфейс, все диалоги только на одном языке? # русс...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;# выбор языка в левой панели влияет только на интерфейс, все диалоги только на одном языке?&lt;br /&gt;
# русского нет и не будет (политическое решение)? &lt;br /&gt;
# как создать переменную? и обратится к ней? или только через слот?&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Main_Page/ru&amp;diff=774</id>
		<title>Main Page/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Main_Page/ru&amp;diff=774"/>
		<updated>2022-07-13T07:03:50Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|&lt;br /&gt;
'''Lang:'''&lt;br /&gt;
|&lt;br /&gt;
[[Main Page|en]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#005500&amp;quot;&amp;gt;QuBot&amp;lt;/span&amp;gt; - это набор инструментов по созданию чат-ботов и виртуальных помощников.&lt;br /&gt;
----&lt;br /&gt;
;Первые шаги:&lt;br /&gt;
* Принципы дизайна бота&lt;br /&gt;
* [[Getting Started: Creating Your First Bot/ru|Начало работы: создание вашего первого бота]]     &lt;br /&gt;
* [[Qubot_NLU/ru|Создание умных ботов (НЛП)]] &lt;br /&gt;
&lt;br /&gt;
; Настройка и программирование:&lt;br /&gt;
* [[Qubot Customizing/ru]]&lt;br /&gt;
* [[Qubot Google Sheets Setup/ru|Подключение Google  таблиц к боту]]&lt;br /&gt;
* [[Qubot Script/ru]]&lt;br /&gt;
* [[Qubot NLU/ru|Создание умных ботов (NLP)]]&lt;br /&gt;
;&amp;lt;u&amp;gt;[[:Category:Integrations|Интеграция]]&amp;lt;/u&amp;gt;:&lt;br /&gt;
* [[How to add a chatbot to your website/ru|Установка чат-бота на собственный сайт]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website/ru|WordPress plugin]]&lt;br /&gt;
* [[Qubot Facebook Integration/ru|Facebook ]]&lt;br /&gt;
* [[Qubot Telegram Integration/ru|Telegram ]]&lt;br /&gt;
* [[Qubot Viber Integration/ru   |Viber ]]&lt;br /&gt;
* [[Qubot LiveChat Integration/ru|LiveChat]]&lt;br /&gt;
* [[Qubot Whatsapp Integration/ru|Whatsapp]]&lt;br /&gt;
----&lt;br /&gt;
* [[FAQ|Список часто задаваемых вопросов и ответов]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;strong&amp;gt;MediaWiki успешно установлена.&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Информацию по работе с этой вики можно найти в [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents справочном руководстве].&lt;br /&gt;
&lt;br /&gt;
== Некоторые полезные ресурсы ==&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Список возможных настроек];&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Manual:FAQ/ru Часто задаваемые вопросы и ответы по MediaWiki];&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Рассылка уведомлений о выходе новых версий MediaWiki].&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Перевод MediaWiki на свой язык]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Узнайте, как бороться со спамом в вашей вики]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Qubot|*]]&lt;br /&gt;
[[Category:ru]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=FAQ/ru&amp;diff=773</id>
		<title>FAQ/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=FAQ/ru&amp;diff=773"/>
		<updated>2022-07-06T15:56:04Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|style=&amp;quot;float:right; margin-left:0.8em; clear:right;&amp;quot;&lt;br /&gt;
|+[[Main_Page/ru|В начало]]&lt;br /&gt;
|&lt;br /&gt;
'''Lang:'''&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
[[FAQ|en]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[File:IconOwl.gif|200px|thumb|right|чаво]]&lt;br /&gt;
Это список часто задаваемых вопросов и ответов, относящихся к работе ботов&lt;br /&gt;
&lt;br /&gt;
* [[How to add a chatbot to your website/ru|Как добавить чат-бота на свой сайт]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website/ru|Как интегрировать плагин WordPress на сайт]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Qubot]]&lt;br /&gt;
[[Category:ru]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=FAQ/ru&amp;diff=772</id>
		<title>FAQ/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=FAQ/ru&amp;diff=772"/>
		<updated>2022-07-06T15:53:27Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:IconOwl.gif|200px|thumb|right|чаво]]&lt;br /&gt;
Это список часто задаваемых вопросов и ответов, относящихся к работе ботов&lt;br /&gt;
&lt;br /&gt;
* [[How to add a chatbot to your website/ru|Как добавить чат-бота на свой сайт]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website/ru|Как интегрировать плагин WordPress на сайт]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Qubot]]&lt;br /&gt;
[[Category:ru]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=First_Steps&amp;diff=771</id>
		<title>First Steps</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=First_Steps&amp;diff=771"/>
		<updated>2022-07-06T15:27:10Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;First steps:&lt;br /&gt;
* [[Principles of bot design]]&lt;br /&gt;
* [[Getting Started: Creating Your First Bot]]&lt;br /&gt;
* [[Qubot NLU|Creation of smart bots (NLP)]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Qubot|@]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Main_Page&amp;diff=770</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Main_Page&amp;diff=770"/>
		<updated>2022-07-06T15:26:32Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span style=&amp;quot;color:#005500&amp;quot;&amp;gt;QuBot&amp;lt;/span&amp;gt;  is a set of tools for creating chatbots and virtual assistants.&lt;br /&gt;
----&lt;br /&gt;
;First steps:&lt;br /&gt;
* [[Principles of bot design]]&lt;br /&gt;
* [[Getting Started: Creating Your First Bot]]&lt;br /&gt;
* [[Qubot NLU|Creation of smart bots (NLP)]]&lt;br /&gt;
; Setup and programming:&lt;br /&gt;
* [[Qubot Customizing]]&lt;br /&gt;
* [[Qubot Google Sheets Setup]]&lt;br /&gt;
* [[Qubot Script]]&lt;br /&gt;
;&amp;lt;u&amp;gt;[[:Category:Integrations|Integrations]]&amp;lt;/u&amp;gt;:&lt;br /&gt;
* [[Channels]]&lt;br /&gt;
* [[How to add a chatbot to your website]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website|WordPress plugin]]&lt;br /&gt;
* [[Qubot Facebook Integration|Facebook ]]&lt;br /&gt;
* [[Qubot Telegram Integration|Telegram]]&lt;br /&gt;
* [[Qubot Viber Integration|Viber ]]&lt;br /&gt;
* [[Qubot LiveChat Integration|LiveChat]]&lt;br /&gt;
* [[Qubot Whatsapp Integration|Whatsapp]]&lt;br /&gt;
----&lt;br /&gt;
* [[FAQ]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;strong&amp;gt;MediaWiki успешно установлена.&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Информацию по работе с этой вики можно найти в [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents справочном руководстве].&lt;br /&gt;
&lt;br /&gt;
== Некоторые полезные ресурсы ==&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Список возможных настроек];&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Manual:FAQ/ru Часто задаваемые вопросы и ответы по MediaWiki];&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Рассылка уведомлений о выходе новых версий MediaWiki].&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Перевод MediaWiki на свой язык]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Узнайте, как бороться со спамом в вашей вики]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Qubot|*]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=FAQ&amp;diff=769</id>
		<title>FAQ</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=FAQ&amp;diff=769"/>
		<updated>2022-07-06T15:22:47Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:IconOwl.gif|200px|thumb|right|чаво]]&lt;br /&gt;
This is a list of frequently asked questions and answers related to how bots work.&lt;br /&gt;
&lt;br /&gt;
* [[How to add a chatbot to your website]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Qubot|@]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=FAQ/ru&amp;diff=768</id>
		<title>FAQ/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=FAQ/ru&amp;diff=768"/>
		<updated>2022-07-06T15:21:05Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Created page with &amp;quot;чаво Это список часто задаваемых вопросов и ответов, относящихся к работе...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:IconOwl.gif|200px|thumb|right|чаво]]&lt;br /&gt;
Это список часто задаваемых вопросов и ответов, относящихся к работе ботов&lt;br /&gt;
&lt;br /&gt;
* [[How to add a chatbot to your website|Как добавить чат-бота на свой сайт]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website|Как интегрировать плагин WordPress на сайт]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Qubot]]&lt;br /&gt;
[[Category:ru]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=First_Steps&amp;diff=767</id>
		<title>First Steps</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=First_Steps&amp;diff=767"/>
		<updated>2022-07-06T15:15:53Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;First steps:&lt;br /&gt;
* [[Principles of bot design]]&lt;br /&gt;
* [[Getting Started: Creating Your First Bot]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Qubot|@]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Messengers_and_Integrations&amp;diff=766</id>
		<title>Messengers and Integrations</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Messengers_and_Integrations&amp;diff=766"/>
		<updated>2022-07-06T15:15:11Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Channels]]&lt;br /&gt;
* [[How to add a chatbot to your website]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website|WordPress plugin]]&lt;br /&gt;
* [[Qubot Facebook Integration|Facebook ]]&lt;br /&gt;
* [[Qubot Telegram Integration|Telegram]]&lt;br /&gt;
* [[Qubot Viber Integration|Viber ]]&lt;br /&gt;
* [[Qubot LiveChat Integration|LiveChat]]&lt;br /&gt;
* [[Qubot Whatsapp Integration|Whatsapp]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Qubot|@]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Messengers_and_Integrations&amp;diff=765</id>
		<title>Messengers and Integrations</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Messengers_and_Integrations&amp;diff=765"/>
		<updated>2022-07-06T15:14:34Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Created page with &amp;quot;* Channels * How to add a chatbot to your website * WordPress plugin * Facebook  * Qu...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Channels]]&lt;br /&gt;
* [[How to add a chatbot to your website]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website|WordPress plugin]]&lt;br /&gt;
* [[Qubot Facebook Integration|Facebook ]]&lt;br /&gt;
* [[Qubot Telegram Integration|Telegram]]&lt;br /&gt;
* [[Qubot Viber Integration|Viber ]]&lt;br /&gt;
* [[Qubot LiveChat Integration|LiveChat]]&lt;br /&gt;
* [[Qubot Whatsapp Integration|Whatsapp]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Qubot|#]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=First_Steps&amp;diff=764</id>
		<title>First Steps</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=First_Steps&amp;diff=764"/>
		<updated>2022-07-06T15:11:24Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Created page with &amp;quot;;First steps: * Principles of bot design * Getting Started: Creating Your First Bot  Category:Qubot&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;First steps:&lt;br /&gt;
* [[Principles of bot design]]&lt;br /&gt;
* [[Getting Started: Creating Your First Bot]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Qubot]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Main_Page&amp;diff=700</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Main_Page&amp;diff=700"/>
		<updated>2022-06-30T16:06:34Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span style=&amp;quot;color:#005500&amp;quot;&amp;gt;QuBot&amp;lt;/span&amp;gt;  is a set of tools for creating chatbots and virtual assistants.&lt;br /&gt;
----&lt;br /&gt;
;First steps:&lt;br /&gt;
* [[Principles of bot design]]&lt;br /&gt;
* [[Getting Started: Creating Your First Bot_en|Getting Started: Creating Your First Bot]]&lt;br /&gt;
; Setup and programming:&lt;br /&gt;
* [[Qubot Customizing]]&lt;br /&gt;
* [[Qubot Google Sheets Setup]]&lt;br /&gt;
* [[Qubot Script]]&lt;br /&gt;
;&amp;lt;u&amp;gt;[[:Category:Integrations|Integrations]]&amp;lt;/u&amp;gt;:&lt;br /&gt;
* [[Channels]]&lt;br /&gt;
* [[How to add a chatbot to your website]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website|WordPress plugin]]&lt;br /&gt;
* [[Qubot Facebook Integration|Facebook ]]&lt;br /&gt;
* [[Qubot Telegram Integration|Telegram]]&lt;br /&gt;
* [[Qubot Viber Integration|Viber ]]&lt;br /&gt;
* [[Qubot LiveChat Integration|LiveChat]]&lt;br /&gt;
* [[Qubot Whatsapp Integration|Whatsapp]]&lt;br /&gt;
----&lt;br /&gt;
* [[FAQ]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;strong&amp;gt;MediaWiki успешно установлена.&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Информацию по работе с этой вики можно найти в [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents справочном руководстве].&lt;br /&gt;
&lt;br /&gt;
== Некоторые полезные ресурсы ==&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Список возможных настроек];&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Manual:FAQ/ru Часто задаваемые вопросы и ответы по MediaWiki];&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Рассылка уведомлений о выходе новых версий MediaWiki].&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Перевод MediaWiki на свой язык]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Узнайте, как бороться со спамом в вашей вики]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Qubot|*]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Main_Page&amp;diff=699</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Main_Page&amp;diff=699"/>
		<updated>2022-06-30T16:05:45Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: First steps&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span style=&amp;quot;color:#005500&amp;quot;&amp;gt;QuBot&amp;lt;/span&amp;gt;  is a set of tools for creating chatbots and virtual assistants.&lt;br /&gt;
----&lt;br /&gt;
;First steps:&lt;br /&gt;
* [[Principles of bot design]]&lt;br /&gt;
* [[Getting Started: Creating Your First Bot_en|Getting Started: Creating Your First Bot]]&lt;br /&gt;
; Setup and programming:&lt;br /&gt;
* [[Qubot Customizing]]&lt;br /&gt;
* [[Qubot Google Sheets Setup]]&lt;br /&gt;
* [[Principles of bot design]]&lt;br /&gt;
* [[Qubot Script]]&lt;br /&gt;
;&amp;lt;u&amp;gt;[[:Category:Integrations|Integrations]]&amp;lt;/u&amp;gt;:&lt;br /&gt;
* [[Channels]]&lt;br /&gt;
* [[How to add a chatbot to your website]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website|WordPress plugin]]&lt;br /&gt;
* [[Qubot Facebook Integration|Facebook ]]&lt;br /&gt;
* [[Qubot Telegram Integration|Telegram]]&lt;br /&gt;
* [[Qubot Viber Integration|Viber ]]&lt;br /&gt;
* [[Qubot LiveChat Integration|LiveChat]]&lt;br /&gt;
* [[Qubot Whatsapp Integration|Whatsapp]]&lt;br /&gt;
----&lt;br /&gt;
* [[FAQ]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;strong&amp;gt;MediaWiki успешно установлена.&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Информацию по работе с этой вики можно найти в [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents справочном руководстве].&lt;br /&gt;
&lt;br /&gt;
== Некоторые полезные ресурсы ==&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Список возможных настроек];&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Manual:FAQ/ru Часто задаваемые вопросы и ответы по MediaWiki];&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Рассылка уведомлений о выходе новых версий MediaWiki].&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Перевод MediaWiki на свой язык]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Узнайте, как бороться со спамом в вашей вики]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Qubot|*]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Principles_of_bot_design&amp;diff=698</id>
		<title>Principles of bot design</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Principles_of_bot_design&amp;diff=698"/>
		<updated>2022-06-30T16:05:23Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Category:Qubot&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
== Principles of bot design ==&lt;br /&gt;
&lt;br /&gt;
By learning the concepts described in this section, you'll become equipped to design a bot that aligns with best practices and capitalizes on lessons learned thus far in this relatively new arena.&lt;br /&gt;
&lt;br /&gt;
The rise of artificial intelligence (AI) continues to drive changes in how enterprises innovate and communicate their business. But for the humans and consumers interfacing with products affected by this technology, what will an AI-empowered future look like? What will it feel like? Empowered by rapidly advancing machine intelligence, product designers are rethinking the fundamental principles that guide the way they work.&lt;br /&gt;
&lt;br /&gt;
The QuBot platform enables businesses and developers to create ChatBot experiences that solve a variety of business problems. By learning the concepts described in this section, you'll become equipped to design a bot that aligns with best practices and capitalizes on lessons learned thus far in this relatively new arena.&lt;br /&gt;
 &lt;br /&gt;
== Building a bot ==&lt;br /&gt;
&lt;br /&gt;
If you are building a bot, it is safe to assume that you are expecting users to use it. It is also safe to assume that you are hoping that users will prefer the bot experience over alternative experiences like apps, websites, phone calls, and other means of addressing their particular needs. In other words, your bot is competing for users' time against things like apps and websites. So, how can you maximize the odds that your bot will achieve its ultimate goal of attracting and keeping users? It's simply a matter of prioritizing the right factors when designing your bot.&lt;br /&gt;
&lt;br /&gt;
Users interact with your application through the user interface that you implement. For example, A simple chat window or a mobile app, or even a robot with a voice interface.&lt;br /&gt;
&lt;br /&gt;
== The chatbot's first user interaction ==&lt;br /&gt;
&lt;br /&gt;
'''First impressions matter'''&lt;br /&gt;
&lt;br /&gt;
The very first interaction between the user and bot is critical to the user experience. When designing your bot, keep in mind that there is more to that first message than just saying &amp;quot;hi.&amp;quot; When you build an app, you design the first screen to provide important navigation cues. Users should intuitively understand things such as where the menu is located and how it works, where to go for help, what the privacy policy is, and so on. When you design a bot, the user's first interaction with the bot should provide that same type of information. In other words, just saying &amp;quot;hi&amp;quot; won’t be enough.&lt;br /&gt;
&lt;br /&gt;
== Language versus menus ==&lt;br /&gt;
&lt;br /&gt;
'''Consider the following two designs:'''&lt;br /&gt;
&lt;br /&gt;
'''''Design 1'''''&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:V1.jpg|400px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''''Design 2'''''&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:V2.jpg|400px]]&lt;br /&gt;
&lt;br /&gt;
Starting the bot with an open-ended question such as &amp;quot;How can I help you?&amp;quot; is generally not recommended. If your bot has a hundred different things it can do, chances are users won’t be able to guess most of them. Your bot didn’t tell them what it can do, so how can they possibly know?&lt;br /&gt;
Menus provide a simple solution to that problem. First, by listing the available options, your bot is conveying its capabilities to the user. Second, menus spare the user from having to type too much. They can simply click. Finally, the use of menus can significantly simplify your natural language models by narrowing the scope of input that the bot could receive from the user.&lt;br /&gt;
&lt;br /&gt;
Menus are a valuable tool when designing bots for a great user experience. Don’t dismiss them as not being &amp;quot;smart enough.&amp;quot; You may design your bot to use menus while still supporting free-form input. If a user responds to the initial menu by typing rather than by selecting a menu option, your bot could attempt to parse the user's text input.&lt;br /&gt;
&lt;br /&gt;
== Rich user controls ==&lt;br /&gt;
&lt;br /&gt;
Rich user controls are common UI controls such as buttons, images, carousels, and menus that the bot presents to the user and the user engages with to communicate choice and intent. A bot can use a collection of UI controls to mimic an app or can even run embedded within an app. When a bot is embedded within an app or website, it can represent virtually any UI control by leveraging the capabilities of the app that is hosting it.&lt;br /&gt;
&lt;br /&gt;
For decades, application and website developers have relied on UI controls to enable users to interact with their applications. These same UI controls can also be very effective in bots. For example, buttons are a great way to present the user with a simple choice. Allowing the user to communicate &amp;quot;Booking&amp;quot; by clicking a button labeled Booking is easier and quicker than forcing the user to type &amp;quot;Booking.&amp;quot; This especially holds true on mobile devices, where the clicking is greatly preferred over typing.&lt;br /&gt;
&lt;br /&gt;
When designing your bot, do not automatically dismiss common UI elements as not being &amp;quot;smart enough.&amp;quot; As discussed previously, your bot should be designed to solve the user's problem in the best/quickest/easiest manner possible. Avoid the temptation to start by incorporating natural language understanding, as it is often unnecessary and just introduces unjustified complexity.&lt;br /&gt;
 &lt;br /&gt;
== Use Custom Error Message ==&lt;br /&gt;
&lt;br /&gt;
The «Custom Error Message» is like the «Error Page» of your website for your bot users. This message is shown if your bot repeatedly cannot parse a user's input.&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Getting_Started:_Creating_Your_First_Bot/ru&amp;diff=697</id>
		<title>Getting Started: Creating Your First Bot/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Getting_Started:_Creating_Your_First_Bot/ru&amp;diff=697"/>
		<updated>2022-06-30T16:04:56Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Category:Qubot&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
Creating your first Chatbot on the QuData platform.&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Channels&amp;diff=696</id>
		<title>Channels</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Channels&amp;diff=696"/>
		<updated>2022-06-30T15:39:28Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Category:Qubot&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
== Channels ==&lt;br /&gt;
Connect your bot to your desired channels.&lt;br /&gt;
&lt;br /&gt;
By channels, we mean the various platforms that allow people to communicate across the globe, including websites, email, SMS exchanges, messaging apps, etc.&lt;br /&gt;
&lt;br /&gt;
One of the great features of QuBot's service is that from the outset we were determined that our chatbots should be omnichannel. You only have to build a chatbot and it is easily made live on all the different channels.&lt;br /&gt;
&lt;br /&gt;
To connect your bot to your desired channel(s), select your bot and click '''Integrations'''.&lt;br /&gt;
&lt;br /&gt;
Each channel has its own way of connecting bots, but we've made the process straightforward. Follow the steps in the channel settings and your bot will be connected in no time.&lt;br /&gt;
&lt;br /&gt;
When you're done, try sending a message through your channel (such as Facebook Messenger) and see for yourself how powerful our tool is!&lt;br /&gt;
&lt;br /&gt;
== Webchat ==&lt;br /&gt;
The Webchat channel is pre-configured for you. You can start to use it right after you have created a bot. Also, you can embed a Webchat on your website or another service.&lt;br /&gt;
&lt;br /&gt;
To launch the Webchat, open the Integrations page and find the WebChat button. Make sure that activation toggle is enabled:&lt;br /&gt;
&lt;br /&gt;
[[File:Webchat.PNG|855 px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You need to click '''&amp;quot;Open&amp;quot;''' to start a web chat conversation. Click on the chatbot icon to open it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Webchat settings ==&lt;br /&gt;
In the settings panel for this channel, enter a link to your site in the field of step 1. Click '''“Save changes”'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Step1.PNG|800px]]&lt;br /&gt;
&lt;br /&gt;
Then, in step 2, click the '''“Copy”''' button.&lt;br /&gt;
&lt;br /&gt;
[[File:Step2_1.PNG|967px]]&lt;br /&gt;
&lt;br /&gt;
Open your webpage and access the HTML. Scroll down to the bottom and paste it.&lt;br /&gt;
&lt;br /&gt;
[[File:Step2_html.PNG|1113px]]&lt;br /&gt;
&lt;br /&gt;
Return to the settings page, and switch the toggle to '''“Active”'''.&lt;br /&gt;
&lt;br /&gt;
Reload your website page. The bot will appear as a button in the bottom right.&lt;br /&gt;
&lt;br /&gt;
Congratulations, the chatbot has been integrated to your WEB channel. It is now available on your company website.&lt;br /&gt;
&lt;br /&gt;
'''Watch this video tutorial &amp;quot;Connecting Channels&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
https://youtu.be/VPfBYaJJ7jM&lt;br /&gt;
&lt;br /&gt;
* [[How to add a chatbot to your website]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website|WordPress plugin]]&lt;br /&gt;
* [[Qubot Facebook Integration|Facebook ]]&lt;br /&gt;
* [[Qubot Telegram Integration|Telegram]]&lt;br /&gt;
* [[Qubot Viber Integration|Viber ]]&lt;br /&gt;
* [[Qubot LiveChat Integration|LiveChat]]&lt;br /&gt;
* [[Qubot Whatsapp Integration|Whatsapp]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Main_Page/ru&amp;diff=695</id>
		<title>Main Page/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Main_Page/ru&amp;diff=695"/>
		<updated>2022-06-30T15:31:51Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|&lt;br /&gt;
'''Lang:'''&lt;br /&gt;
|&lt;br /&gt;
[[Main Page|en]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#005500&amp;quot;&amp;gt;QuBot&amp;lt;/span&amp;gt; - это набор инструментов по созданию чат-ботов и виртуальных помощников.&lt;br /&gt;
----&lt;br /&gt;
; Настройка и программирование:&lt;br /&gt;
* [[Qubot Customizing/ru]]&lt;br /&gt;
* [[Qubot Google Sheets Setup/ru|Подключение Google  таблиц к боту]]&lt;br /&gt;
* [[Qubot Script/ru]]&lt;br /&gt;
;&amp;lt;u&amp;gt;[[:Category:Integrations|Интеграция]]&amp;lt;/u&amp;gt;:&lt;br /&gt;
* [[How to add a chatbot to your website/ru|Установка чат-бота на собственный сайт]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website/ru|WordPress plugin]]&lt;br /&gt;
* [[Qubot Facebook Integration/ru|Facebook ]]&lt;br /&gt;
* [[Qubot Telegram Integration/ru|Telegram ]]&lt;br /&gt;
* [[Qubot Viber Integration/ru   |Viber ]]&lt;br /&gt;
* [[Qubot LiveChat Integration/ru|LiveChat]]&lt;br /&gt;
* [[Qubot Whatsapp Integration/ru|Whatsapp]]&lt;br /&gt;
----&lt;br /&gt;
* [[FAQ|Список часто задаваемых вопросов и ответов]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;strong&amp;gt;MediaWiki успешно установлена.&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Информацию по работе с этой вики можно найти в [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents справочном руководстве].&lt;br /&gt;
&lt;br /&gt;
== Некоторые полезные ресурсы ==&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Список возможных настроек];&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Manual:FAQ/ru Часто задаваемые вопросы и ответы по MediaWiki];&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Рассылка уведомлений о выходе новых версий MediaWiki].&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Перевод MediaWiki на свой язык]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Узнайте, как бороться со спамом в вашей вики]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Qubot|*]]&lt;br /&gt;
[[Category:ru]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_LiveChat_Integration/ru&amp;diff=694</id>
		<title>Qubot LiveChat Integration/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_LiveChat_Integration/ru&amp;diff=694"/>
		<updated>2022-06-30T15:31:10Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Slavinsky moved page Qubot LiveChat Integration RU to Qubot LiveChat Integration/ru without leaving a redirect&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
[[Category:Integrations|L]]&lt;br /&gt;
&amp;lt;span id=&amp;quot;qubot-viber-integration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
Интеграция LiveChat с ботом позволяет добавлять живые коммуникации с агентами, поэтому обслуживание клиентов значительно улучшается. Следующая интеграция требует, чтобы у вас была учетная запись LiveChat.&lt;br /&gt;
&lt;br /&gt;
==ШАГ 1==&lt;br /&gt;
Войдите в https://www.livechat.com&lt;br /&gt;
&lt;br /&gt;
Если у вас нет аккаунта '''LiveChat''', зарегистрируйтесь на странице https://accounts.livechat.com/signup&lt;br /&gt;
&lt;br /&gt;
==ШАГ 2==&lt;br /&gt;
Перейдите к [https://developers.livechat.com/console LiveChat Developers Console], затем в '''My Profile''' и скопируйте '''Organization ID'''.&lt;br /&gt;
&lt;br /&gt;
[[File:21.png|350px]]&lt;br /&gt;
[[File:22.png|350px]]&lt;br /&gt;
&lt;br /&gt;
Вставьте его в поле ввода на '''Шаге 2''' в параметрах интеграции.&lt;br /&gt;
&lt;br /&gt;
[[File:23.png|700px]]&lt;br /&gt;
&lt;br /&gt;
==ШАГ 3==&lt;br /&gt;
Перейдите к '''My Apps''' и создайте новое приложение.&lt;br /&gt;
&lt;br /&gt;
[[File:24.png|350px]]&lt;br /&gt;
[[File:25.png|350px]]&lt;br /&gt;
[[File:26.png|350px]]&lt;br /&gt;
&lt;br /&gt;
==ШАГ 4==&lt;br /&gt;
Перейдите к разделу '''Building Blocks'''&lt;br /&gt;
&lt;br /&gt;
[[File:27.png|350px]]&lt;br /&gt;
[[File:28.png|350px]]&lt;br /&gt;
&lt;br /&gt;
В блоке '''App Authorization''' нажмите кнопку '''Get started'''&lt;br /&gt;
&lt;br /&gt;
[[File:29.png|350px]]&lt;br /&gt;
&lt;br /&gt;
В окне '''Creating the OAuth2.1 Client''' выберите параметр '''Server-side app''' и нажмите кнопку '''Continue'''&lt;br /&gt;
&lt;br /&gt;
[[File:30.png|350px]]&lt;br /&gt;
&lt;br /&gt;
После этого вы перейдете к настройкам '''App Authorization'''. Пожалуйста, не оставляйте эту страницу, пока не закончите '''Шаг 5''' этой инструкции.&lt;br /&gt;
&lt;br /&gt;
==ШАГ 5==&lt;br /&gt;
В конфигурации '''App Authorization''' найдите '''Client Id'''.&lt;br /&gt;
&lt;br /&gt;
[[File:31.png|350px]]&lt;br /&gt;
&lt;br /&gt;
Скопируйте его в поле ввода&lt;br /&gt;
&lt;br /&gt;
[[File:32.png|700px]]&lt;br /&gt;
&lt;br /&gt;
В конфигурации '''App Authorization''' найдите '''Client Secret'''.&lt;br /&gt;
&lt;br /&gt;
[[File:33.png|350px]]&lt;br /&gt;
&lt;br /&gt;
Скопируйте его в поле ввода&lt;br /&gt;
&lt;br /&gt;
[[File:34.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Вы не можете восстановить оригинальный '''Client Secret''', поэтому храните его в безопасном месте.&lt;br /&gt;
Будьте осторожны, вы не сможете увидеть '''Client Secret''' после перезагрузки страницы. В этом случае вам придется сгенерировать и предоставить нам новый ключ (старый будет сброшен).&lt;br /&gt;
&lt;br /&gt;
Перейдите к разделу '''Redirect URI whitelist''' и добавьте в список такие URL-адреса с помощью кнопки '''Add''':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
https://localhost&lt;br /&gt;
https://accounts.livechat.com&lt;br /&gt;
https://www.livechat.com&lt;br /&gt;
https://beta.console.qudata.com&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:35.png|350px]]&lt;br /&gt;
[[File:36.png|350px]]&lt;br /&gt;
&lt;br /&gt;
Перейдите к разделу '''App scopes and API access''' и выберите область доступа '''Select All'''&lt;br /&gt;
&lt;br /&gt;
[[File:37.png|350px]]&lt;br /&gt;
[[File:38.png|350px]]&lt;br /&gt;
[[File:39.png|350px]]&lt;br /&gt;
&lt;br /&gt;
Нажмите кнопку '''Save changes''' в разделе '''App scopes and API access'''.&lt;br /&gt;
&lt;br /&gt;
Затем, в верхней части страницы '''App Authorization''' нажмите кнопку '''Save changes''', чтобы подготовиться к развертыванию приложения.&lt;br /&gt;
&lt;br /&gt;
[[File:40.png|350px]]&lt;br /&gt;
&lt;br /&gt;
Предоставьте доступ к приложению. Нажмите кнопку '''Разрешить доступ''', чтобы начать быстрый автоматизированный процесс. Обратите внимание, что во время процесса вас могут попросить войти в '''Live Chat'''.&lt;br /&gt;
&lt;br /&gt;
[[File:41.png|350px]]&lt;br /&gt;
&lt;br /&gt;
==ШАГ 6==&lt;br /&gt;
В своей программе перейдите к разделу '''Building Blocks''', найдите блок '''Chat Webhooks''' и нажмите кнопку '''Get started'''.&lt;br /&gt;
&lt;br /&gt;
[[File:42.png|350px]]&lt;br /&gt;
&lt;br /&gt;
Скопируйте нижеприведенный ниже '''Webhook URL''' и введите его в соответствующее поле в конфигурации '''Chat Webhooks'''.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
https://services.qudata.com/bot/extensions/livechat/api/v1/webhook/&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:43.png|350px]]&lt;br /&gt;
&lt;br /&gt;
Предоставьте нам '''Secret Key'''. Нажмите кнопку '''Generate'''.&lt;br /&gt;
&lt;br /&gt;
[[File:44.png|350px]]&lt;br /&gt;
[[File:45.png|350px]]&lt;br /&gt;
&lt;br /&gt;
Скопируйте секретный ключ в поле ввода&lt;br /&gt;
&lt;br /&gt;
[[File:46.png|700px]]&lt;br /&gt;
&lt;br /&gt;
В разделе '''Webhook triggers''' выберите '''incoming_event'''. Для этого события выберите параметры: '''author type''', '''agent'''&lt;br /&gt;
&lt;br /&gt;
[[File:47.png|350px]]&lt;br /&gt;
[[File:48.png|350px]]&lt;br /&gt;
&lt;br /&gt;
Нажмите кнопку '''Save changes'''.&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Script/ru&amp;diff=693</id>
		<title>Qubot Script/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Script/ru&amp;diff=693"/>
		<updated>2022-06-30T15:28:13Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Category:ru&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span id=&amp;quot;qubot-script&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Qubot Script ==&lt;br /&gt;
&lt;br /&gt;
'''''Qubot Script''''' - это язык программирования, используемый для выполнения логических и математических операций при решении задач бота&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;объявление-слотов-переменных&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Слоты ==&lt;br /&gt;
&lt;br /&gt;
'''Слот''' - это переменная, значение которой доступно во всех состояниях бота. Также значение слота сохраняется, если бота закрыли и продолжили&lt;br /&gt;
с ним работать через время.&lt;br /&gt;
&lt;br /&gt;
Объявление слота происходит при первом присваивании в него значений. &amp;lt;br&amp;gt; Например:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
a = 7&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
объявляет слот с именем '''a''' и присваивает ему значение '''7'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;типы-слотов&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Локальные переменные ==&lt;br /&gt;
&lt;br /&gt;
В отличие от слотов локальные переменные сохраняются только внутри скрипта, где они объявлены. &amp;lt;br&amp;gt;&lt;br /&gt;
Объявление происходит путем добавления перед именем служебного слова '''local''':&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
local b = 8    // локальная переменная&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если локальная переменная объявлена внутри фигурных скобок '''{}''', то и ее значение доступно только там:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
local b = 8    // локальная переменная текущего скрипта&lt;br /&gt;
&lt;br /&gt;
if (b == 8)&lt;br /&gt;
{&lt;br /&gt;
   local c = 9 // локальная переменная блока оператора 'if'&lt;br /&gt;
   print(c)    // выведет 9&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
print(b)       // выведет 8 &lt;br /&gt;
print(c)       // выдаст ошибку, т.к. тут уже переменная 'с' недоступна&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;типы-слотов&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Типы переменных ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
sInt = 7                             // целочисленный&lt;br /&gt;
sFloat = 7.3                         // вещественный&lt;br /&gt;
sStr = &amp;quot;hello&amp;quot;                       // строковый&lt;br /&gt;
sArr = [7, 7.3, &amp;quot;hello&amp;quot;, sStr]       // массив&lt;br /&gt;
sDic = { n: 1, s: &amp;quot;Wine&amp;quot;  }          // словарь&lt;br /&gt;
sBool = true                         // бинарный&lt;br /&gt;
sRegExp = /[abc]/                    // регулярное выражение&lt;br /&gt;
sNone = none                         // неопределенное значение&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;логические-операции&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Логические операции ==&lt;br /&gt;
&lt;br /&gt;
* '''and''' - логическое ‘И’&lt;br /&gt;
* '''or''' - логическое ‘ИЛИ’&lt;br /&gt;
* '''not''' - отрицание ‘НЕТ’&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
a = true&lt;br /&gt;
b = false&lt;br /&gt;
c = true&lt;br /&gt;
res = not((a and b) or c)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;арифметические-операции&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Арифметические операции ==&lt;br /&gt;
&lt;br /&gt;
* '''+''' - сложение&lt;br /&gt;
* '''-''' - вычитание&lt;br /&gt;
* '''*''' - умножение&lt;br /&gt;
* '''/''' - деление&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;res = 2+3-4*5+(1.5-0.2/2)&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Комментарии ==&lt;br /&gt;
&lt;br /&gt;
Комментарии используются для документирования фрагментов скрипта.&lt;br /&gt;
Могут быть многострочыми и однострочными:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
Пример&lt;br /&gt;
    многострочного&lt;br /&gt;
        комментария&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
a = 2253 // пример однострочного комментария&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Также разрешается и питоновский стиль комментария:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
a = 2253 # пример однострочного комментария&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;работа-с-массивами&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;работа-со-словарем-объектом&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Работа со словарем (объектом) ==&lt;br /&gt;
&lt;br /&gt;
Объявление словаря:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;dic = { n: 1, s: &amp;quot;Wine&amp;quot;  } &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Доступ к значениям словаря:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;a = dic.n             // доступ к полю с именем &amp;quot;n&amp;quot; через точку  &lt;br /&gt;
a = dic[&amp;quot;n&amp;quot;]          // доступ к полю с именем &amp;quot;n&amp;quot; через оператор доступа&lt;br /&gt;
dic[&amp;quot;food&amp;quot;] = &amp;quot;milk&amp;quot;  // добавление в словарь пары ключ-значение&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Работа с массивами ==&lt;br /&gt;
&lt;br /&gt;
Объявление массива:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
arr = [1,2,3]         // создает массив с тремя элементами со значениями 1,2,3&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Доступ к элементам массива:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;first  = arr[0]       // получить первый элемент массива&lt;br /&gt;
last   = arr[-1]      // получить последний элемент массива&lt;br /&gt;
last   = arr[-2]      // получить предпоследний элемент массива&lt;br /&gt;
arr[0] = 7            // изменить значение первого элемента&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Функции работы с массивом:&lt;br /&gt;
&lt;br /&gt;
'''''push(val1,val2...)''''' - добавить в конец массива элементы со значениями '''val1, val2...'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
arr.push(4) // добавить значение '4' в конец массива&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''''unshift(val1,val2...)''''' - добавить в начало массива элементы со значениями '''val1, val2...'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
arr.unshift(0) // добавить значение '0' в начало&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''''pop()''''' - удалить последний элемент массива и вернуть его значение&lt;br /&gt;
&lt;br /&gt;
'''''shift()''''' - удалить первый элемент массива и вернуть его значение&lt;br /&gt;
&lt;br /&gt;
'''''slice(start,end)''''' - возвращает часть массива начиная с позиции '''start''' и если указана переменная '''end''', то до нее не включая&lt;br /&gt;
&lt;br /&gt;
'''''splice(start, deleteCount)''''' - удаляет '''deleteCount''' элементов начиная с позиции '''start'''&lt;br /&gt;
&lt;br /&gt;
'''''clear()''''' - очистить массив&lt;br /&gt;
&lt;br /&gt;
Функции работы с массивом словарей:&lt;br /&gt;
&lt;br /&gt;
'''''find(EXPR)''''' - ищет элементы массива, удовлетворяющие условию '''EXPR'''. Найденные элементы возвращаются в виде массива&amp;lt;br&amp;gt;&lt;br /&gt;
Например:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
arr = [                            // массив из трех объектов с продуктами&lt;br /&gt;
  {title: &amp;quot;Wine&amp;quot;, price: 120},&lt;br /&gt;
  {title: &amp;quot;Cheese&amp;quot;, price: 100},&lt;br /&gt;
  {title: &amp;quot;Cola&amp;quot;, price: 40},&lt;br /&gt;
] &lt;br /&gt;
&lt;br /&gt;
local res = arr.find(price &amp;gt; 80)   // найти все объекты у которых поле 'price' больше 80 и вернуть их в массиве&lt;br /&gt;
print('найдено $res.length:')      // выведет количество найденных объектов&lt;br /&gt;
print(res)                         // выведет объекты, удовлетворяющие условию&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''''total(EXPR)''''' - применить выражение '''EXPR''' к каждому элементу массива и суммировать все значения&amp;lt;br&amp;gt;&lt;br /&gt;
Например посчитаем сумму товаров в корзине:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
arr = [                                 // массив из трех объектов с продуктами&lt;br /&gt;
  {title: &amp;quot;Wine&amp;quot;, price: 120, amount: 3},&lt;br /&gt;
  {title: &amp;quot;Pizza&amp;quot;, price: 100, amount: 2},&lt;br /&gt;
  {title: &amp;quot;Cola&amp;quot;, price: 40, amount: 3},&lt;br /&gt;
] &lt;br /&gt;
&lt;br /&gt;
local res = arr.total(price * amount)   // для каждого элемента массива умножаем цену на количество и складываем результат&lt;br /&gt;
print(&amp;quot;К оплате: $res грн.&amp;quot;)            // выведет сумму товаров: &amp;quot;К оплате: 680 грн.&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''''count(EXPR)''''' - найти количество элементов массива для которых истинно выражение '''EXPR'''&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
arr = [                                 // массив из трех объектов с продуктами&lt;br /&gt;
  {title: &amp;quot;Wine&amp;quot;, price: 120, amount: 3},&lt;br /&gt;
  {title: &amp;quot;Pizza&amp;quot;, price: 100, amount: 2},&lt;br /&gt;
  {title: &amp;quot;Cola&amp;quot;, price: 40, amount: 3},&lt;br /&gt;
] &lt;br /&gt;
&lt;br /&gt;
local res = arr.count(price &amp;lt; 100)                            // для каждого элемента массива умножаем цену на количество и складываем результат&lt;br /&gt;
print(&amp;quot;Количество товаров, дешевле 100 грн: $res&amp;quot;)            // выведет количество товаров: &amp;quot;Количество товаров, дешевле 100 грн: 1&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''''sort(KEY)''''' - отсортировать массив&lt;br /&gt;
&lt;br /&gt;
Поддерживаются только массивы, в которых все значения одного типа: число или строка для sort() и словарь для sort(key)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
list = [1, 3, 2] // массив чисел&lt;br /&gt;
str  = [&amp;quot;a&amp;quot;, &amp;quot;hi&amp;quot;, &amp;quot;banana&amp;quot;] // массив строк&lt;br /&gt;
arr  = [         // массив из словарей с продуктами&lt;br /&gt;
  {title: &amp;quot;Wine&amp;quot;, price: 120, amount: 3},&lt;br /&gt;
  {title: &amp;quot;Pizza&amp;quot;, price: 100, amount: 2},&lt;br /&gt;
] &lt;br /&gt;
&lt;br /&gt;
list.sort()       // отсортировать массив по возрастанию&lt;br /&gt;
 str.sort()        // отсортировать массив по возрастанию&lt;br /&gt;
 arr.sort(price)   // отсортировать массив объектов по ключу 'price'&lt;br /&gt;
// TODO&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''''reverse()''''' - перевернуть массив &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
list = [1, 3, 2]  // массив&lt;br /&gt;
&lt;br /&gt;
list.reverse()    // [2, 3, 1]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;работа-со-строками&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Работа со строками ==&lt;br /&gt;
&lt;br /&gt;
Объявление строковых слотов:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
str = &amp;quot;hello&amp;quot;           // используя двойные кавычки &lt;br /&gt;
str = 'hello'           // используя одинарные кавычки&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Операции со строками:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
base = 'http://imgs/'&lt;br /&gt;
url = base + 'img1.png' // сложение строк&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;span id=&amp;quot;функции-перехода&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Подстановка слотов в строки:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
a = 5&lt;br /&gt;
str = &amp;quot;a = $a&amp;quot;          // вместо $a будет подставлено значение слота a&lt;br /&gt;
print(str)              // выведет: &amp;quot;a = 5&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Вставка выражений в строки:&lt;br /&gt;
&lt;br /&gt;
Выражения можно вставлять в строки, обрамляя их фигурными скобками:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
str = &amp;quot;2 + 3 = {2+3}&amp;quot;   // вычислит выражение и вставит результат в строку&lt;br /&gt;
print(str)              // выведет: &amp;quot;2 + 3 = 5&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Экранирование спецсимволов '$','{','}' происходит путем добавления наклонной черты '\'&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
str = &amp;quot;price: 4.99\$ \{sale\}&amp;quot;   // вычислит выражение и вставит результат в строку&lt;br /&gt;
print(str)                       // выведет: &amp;quot;price: 4.99$ {sale}&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Функции работы со строками:&lt;br /&gt;
&lt;br /&gt;
'''''length''''' - получить длинну строки&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
str = &amp;quot;hello&amp;quot;&lt;br /&gt;
len = str.length           // вернет 5 - число символов строки &amp;quot;hello&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''''substring(start,end)''''' - получить подстроку начиная с позиции '''start''' и до позиции '''end''' не включая&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
str = &amp;quot;http://server/im.png&amp;quot;&lt;br /&gt;
substr = str.substring(7,13)  // вернет строку &amp;quot;server&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''''search(pattern)''''' - найти позицию первого вхождения '''pattern''', иначе вернуть -1. Аргумент '''pattern''' может быть как строкой&lt;br /&gt;
так и регулярным выражением:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
str = &amp;quot;apple orange juice&amp;quot;&lt;br /&gt;
res = str.search('orange')          // вернет позицию строки 'orange': 6&lt;br /&gt;
res = str.search(/(orange|juice)/)  // вернет позицию строки 'orange' или 'juice'&lt;br /&gt;
res = str.search('pizza')           // не найдет 'pizza' и вернет -1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;условный-оператор&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Условный оператор ==&lt;br /&gt;
Оператор '''if''' используется, если необходимо ветвление логики в зависимости от условия&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
a = 9&lt;br /&gt;
if (a &amp;gt; 7) &lt;br /&gt;
{&lt;br /&gt;
    res = 'a more than 7'&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
    res = 'a less or equal 7'&lt;br /&gt;
}&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
В данном примере проверяется условие &amp;lt;code&amp;gt;a &amp;amp;gt; 7&amp;lt;/code&amp;gt; и если оно истинно, то выполняется первый блок скрипта, окруженный фигурными скобками, иначе выполняется блок после служебного слова '''else'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;цикл-while&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Цикл '''while''' ==&lt;br /&gt;
&lt;br /&gt;
Оператор цикла проверяет условие и пока оно истинно, выполняет код окруженный фигурными скобками&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;a = 7&lt;br /&gt;
while (a &amp;gt; 0) &lt;br /&gt;
{&lt;br /&gt;
    a = a - 1&lt;br /&gt;
}&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
В данном примере скрипт &amp;lt;code&amp;gt;a = a - 1&amp;lt;/code&amp;gt; будет выполнятся до тех пор пока значение слота &amp;lt;code&amp;gt;a&amp;lt;/code&amp;gt; не станет равным нулю&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;итератор-for&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Итератор '''for''' ==&lt;br /&gt;
&lt;br /&gt;
Итератор используется для перебора всех значений массива, либо ключей из словаря&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
arr = [3,2,1]&lt;br /&gt;
for(val in arr)&lt;br /&gt;
{&lt;br /&gt;
    print(val)&lt;br /&gt;
}&lt;br /&gt;
output:&lt;br /&gt;
3&lt;br /&gt;
2&lt;br /&gt;
1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
В данном примере цикл последовательно перебирает значения массива и заносит их во временную переменную '''val''' соответственно для каждого элемента массива выполняется окруженный фигурными скобками скрипт '''print(val)''' выводящий значение в отладочное окно&lt;br /&gt;
&lt;br /&gt;
Иногда удобно в цикле иметь и индекс массива, для этого перед переменной значения добавляем имя переменной индекса:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
arr = [3,2,1]&lt;br /&gt;
for(i, val in arr)&lt;br /&gt;
{&lt;br /&gt;
    print(&amp;quot;$i: $val&amp;quot;)&lt;br /&gt;
}&lt;br /&gt;
output:&lt;br /&gt;
0: 3&lt;br /&gt;
1: 2&lt;br /&gt;
2: 1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для перебора ключей и значений словаря используется аналогичная конструкция:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
arr = {pizza: 100, milk: 20, wine: 120}&lt;br /&gt;
for(key, val in arr)&lt;br /&gt;
{&lt;br /&gt;
    print(&amp;quot;$key: $val&amp;quot;)&lt;br /&gt;
}&lt;br /&gt;
output:&lt;br /&gt;
pizza: 100&lt;br /&gt;
milk: 20&lt;br /&gt;
wine: 120&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;оператор-switch&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Оператор выбора '''switch''' ==&lt;br /&gt;
&lt;br /&gt;
Конструкция '''switch''' заменяет собой сразу несколько '''if'''. Она представляет собой более наглядный способ сравнить выражение сразу с несколькими вариантами.&lt;br /&gt;
Имеет один или более блок '''case''' и необязательный блок '''default'''.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
a = 'one'&lt;br /&gt;
switch(a)&lt;br /&gt;
{&lt;br /&gt;
   case 'one': print('one'); break;&lt;br /&gt;
   case 'two': print('two'); break;&lt;br /&gt;
   default: print('def')&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Переменная проверяется на строгое соответствие значению справа от '''case''' и если оно совпадает, то выполняется код до тех пор пока не встретится &lt;br /&gt;
оператор '''break'''&lt;br /&gt;
&lt;br /&gt;
Если ни одно из '''case''' не подошло, выполняется код справа от '''default'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;оператор-in&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Оператор '''in''' ==&lt;br /&gt;
&lt;br /&gt;
Оператор '''in''' проверяет есть ли значение в массиве либо является ключём в словаре.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
sArr = [7, 7.3, &amp;quot;hello&amp;quot;]             // массив&lt;br /&gt;
print(&amp;quot;hello&amp;quot; in sArr)               // вернет true, т.к. значение &amp;quot;hello&amp;quot; присутствует в массиве sArr &lt;br /&gt;
sDic = { price: 100, food: &amp;quot;Wine&amp;quot;}   // словарь&lt;br /&gt;
print(&amp;quot;food&amp;quot; in sDic)                // вернет true, т.к. ключ &amp;quot;food&amp;quot; присутствует в словаре sDic&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Переменная проверяется на строгое соответствие значению справа от '''case''' и если оно совпадает, то выполняется код до тех пор пока не встретится &lt;br /&gt;
оператор '''break'''&lt;br /&gt;
&lt;br /&gt;
Если ни одно из '''case''' не подошло, выполняется код справа от '''default'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;оператор-button&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Оператор '''button''' ==&lt;br /&gt;
&lt;br /&gt;
'''''button(caption){ SCRIPT }'''''&amp;lt;br&amp;gt;&lt;br /&gt;
Данный оператор добавляет в интерфейс кнопку с текстом '''caption''' в текущее сообщение. После нажатия на кнопку выполняется логика '''SCRIPT'''.&lt;br /&gt;
Если '''caption''' - объект, то он должен состоять из двухбуквенных ключей (идентификаторов языка: en, ru,…) со строковыми значения на этих языках.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
button('click me')      // текст в кнопке&lt;br /&gt;
{&lt;br /&gt;
    // скрипт, который выполнится после нажатия &lt;br /&gt;
    print('button was clicked!')&lt;br /&gt;
    step('STATE_AFTER_CLICK')&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
При нажатии на кнопку скрипт будет выполнен в контексте локальных переменных на момент добавления данной кнопки, а также в контексте&lt;br /&gt;
значений слотов на момент нажатия на кнопку!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;функции-перехода&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Функции перехода ==&lt;br /&gt;
&lt;br /&gt;
'''''run(state)''''' - выполнить логику шага '''state'''&lt;br /&gt;
&lt;br /&gt;
'''''step(state)''''' - установка шага перехода по умолчанию в значение '''state'''&lt;br /&gt;
&lt;br /&gt;
'''''goto(state)''''' - мгновенный переход в шаг '''state'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;функции-работы-с-контентом&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Функции работы с контентом ==&lt;br /&gt;
&lt;br /&gt;
'''''text(obj)''''' - вывести в текущее сообщение текст. Если '''obj''' - это сторока, то она выводится не зависимо от текущего языка. Если '''obj''' - объект, то он должен состоять из двухбуквенных ключей (идентификаторов языка: en, ru,…) со строковыми значения на этих языках.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
text(&amp;quot;Hi world!&amp;quot;)     &lt;br /&gt;
text({ en: &amp;quot;Hi world!&amp;quot;, ru: &amp;quot;Привет мир!&amp;quot;, es: &amp;quot;¡Hola mundo!&amp;quot;})  &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''''images()''''' - создать новую строку картинок. Каждый последующий вызов image будет добавляться в эту строку, пока снова не будет вызван images().&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
URL = &amp;quot;https://qudata.com/qubot/im/&amp;quot;  &lt;br /&gt;
images()     &lt;br /&gt;
image(URL + &amp;quot;owl_a.png&amp;quot;)     &lt;br /&gt;
image(URL + &amp;quot;owl_b.png&amp;quot;) &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''''image(url, width)''''' - вывести в текущее сообщение картинку. Если '''url''' - это строка, то он используется не зависимо от текущего языка. Если '''url''' - объект, то он должен состоять из двухбуквенных ключей (идентификаторов языка: en, ru,…) со строковыми значения на этих языках.. Необязательный параметр '''width''' указывает насколько в процентах нужно сжать изображение &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
URL = &amp;quot;https://qudata.com/qubot/im/&amp;quot;     &lt;br /&gt;
image(URL + &amp;quot;owl_a.png&amp;quot;)  &lt;br /&gt;
image({ en: URL + &amp;quot;en.png&amp;quot;, ru: URL + &amp;quot;ru.png&amp;quot;}) &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''''buttons()''''' - создать новую строку кнопок. Каждый последующий вызов button будет добавляться в эту строку, пока снова не будет вызван buttons().&lt;br /&gt;
&lt;br /&gt;
'''''get_check()''''' - получить массив значений кнопок типа check (1 - нажата, 0 - отжата)&lt;br /&gt;
&lt;br /&gt;
'''''set_check(list)''''' - задать значения кнопок типа check из массива list.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
CHECK = [0,1,0]&lt;br /&gt;
set_check(CHECK) &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''''get_radio()''''' - получить массив значений кнопок типа radio (1 - нажата, 0 - отжата). Единица будет одна.&lt;br /&gt;
&lt;br /&gt;
'''''set_radio(list)''''' - задать значения кнопок типа radio из массива list.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;отладчные-функции&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Отладчные функции ==&lt;br /&gt;
&lt;br /&gt;
'''''print(args)''''' - вывод информации в окно отладки&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;округление&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Округление ==&lt;br /&gt;
&lt;br /&gt;
'''''floor(val)''''' - округление чисел в меньшую сторону:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;floor(5.8)    //  5&lt;br /&gt;
floor(-6.1)   // -7&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
'''''trunc(val)''''' - отбрасывание дробной части:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;trunc(5.51)   //  5&lt;br /&gt;
trunc(-6.99)  // -6&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
'''''ceil(val)''''' - округление чисел в большую сторону:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;ceil(5.15)    // 6&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
'''''round(val, num)''''' - округление '''val''' до '''num''' чисел после запятой:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;round(3.14159265, 2)  // 3.14&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;случайные-числа&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Случайные числа ==&lt;br /&gt;
&lt;br /&gt;
'''''randint(min,max)''''' - возвращает целое случайное число в диапазоне [min,max].&lt;br /&gt;
&lt;br /&gt;
'''''random()''''' - возвращает случайное вещественное число в диапазоне [0,1].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;дата-и-время&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Дата и время ==&lt;br /&gt;
&lt;br /&gt;
'''''date(format)''''' - возвращает текущую дату и время в указанном формате. По умолчанию аргумент '''format''' принимает значение: '''%d/%m/%Y %H:%M:%S'''&lt;br /&gt;
&lt;br /&gt;
Поддерживаемые коды форматирования:&lt;br /&gt;
&lt;br /&gt;
* '''%y''' - год без столетия ('22')&lt;br /&gt;
* '''%Y''' - год ('2022')&lt;br /&gt;
* '''%m''' - месяц&lt;br /&gt;
* '''%d''' - день &lt;br /&gt;
* '''%H''' - часы &lt;br /&gt;
* '''%M''' - минуты &lt;br /&gt;
* '''%S''' - секунды &lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;js&amp;quot;&amp;gt;&lt;br /&gt;
date()  // 17/05/2022 18:16:31 т.е. сейчас&lt;br /&gt;
date('%Y.%m.%d %H:%M:%S')  // 2022.05.17 18:16:31&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Qubot]]&lt;br /&gt;
[[Category:ru]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Facebook_Integration/ru&amp;diff=691</id>
		<title>Qubot Facebook Integration/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Facebook_Integration/ru&amp;diff=691"/>
		<updated>2022-06-30T14:08:20Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &amp;quot;шаги&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
[[Category:Integrations|F]]  [[Category:ru]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;float:right; margin-left:0.8em; clear:right;&amp;quot;&lt;br /&gt;
|+[[Main_Page/ru|В начало]]&lt;br /&gt;
|&lt;br /&gt;
'''Lang:'''&lt;br /&gt;
|&lt;br /&gt;
[[Qubot Facebook Integration|en]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;qubot-facebook-integration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Подключение бота в Facebook ==&lt;br /&gt;
&lt;br /&gt;
Чтобы настроить Facebook Messenger в качестве канала, вам потребуется создать приложение на Facebook,&amp;lt;br&amp;gt;&lt;br /&gt;
включить интеграцию веб-перехватчиков для платформы для отправки и получения сообщений,&amp;lt;br&amp;gt;&lt;br /&gt;
а также подписаться на приложение на странице Facebook.&amp;lt;br&amp;gt;&lt;br /&gt;
== Шаг 1. Создайте приложение ==&lt;br /&gt;
&lt;br /&gt;
Создайте приложение.&lt;br /&gt;
&lt;br /&gt;
Войдите на портал разработчиков Facebook https://developers.facebook.com/ и перейдите в раздел «Мои приложения».&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Нажмите кнопку «Создать приложение», затем выберите тип приложения «Бизнес».&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Введите все необходимые данные для вашего приложения и нажмите «Создать приложение».&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Ваше приложение будет создано, и вы будете перенаправлены на страницу настройки приложения.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Выберите Messenger и нажмите кнопку «Настроить», чтобы продолжить. Вы будете перенаправлены на страницу настроек.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 2. Сведения о странице==&lt;br /&gt;
&lt;br /&gt;
Сведения о странице.&lt;br /&gt;
&lt;br /&gt;
Свяжите страницу с приложением и сгенерируйте токен доступа к странице в разделе «Создание токена». Если у вас нет страницы, вы можете создать страницу Facebook здесь - https://www.facebook.com/pages/create .&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите вашего бота, в левой панели выберите пункт '''Интеграции'''. Далее выберите Messenger.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_6.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите Шаг 2 и введите этот токен доступа в поле Page Access Token(Токен доступа к странице).&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_7.png]]  [[File:FacebookStep2_8.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Перейдите в меню «Основные настройки», затем выберите «Основные настройки», запишите App ID(идентификатор приложения) &lt;br /&gt;
и App Secret. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Введите их в соответствующие поля на Шаге 2 вашего бота.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_9.png]]  [[File:FacebookStep2_10.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Из своей учетной записи Facebook перейдите на страницу Facebook, которую вы выбрали выше. Найдите меню '''About'''.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep5.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Скопируйте Page ID и введите их в соответствующие поля на Шаге 2 вашего бота.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_11.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 3. Настройка вебхука ==&lt;br /&gt;
&lt;br /&gt;
Настройка вебхука.&lt;br /&gt;
&lt;br /&gt;
Нажмите переключатель в правом верхнем углу, чтобы активировать канал. После активации канала интеграция с веб-перехватчиком включается автоматически.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Перейдите в меню «Настройки мессенджера» и прокрутите вниз до раздела '''Webhooks section'''. &lt;br /&gt;
В разделе '''Webhooks section''' выберите страницу, которую вы использовали для создания токена страницы, и нажмите '''Add subscriptions'''. &lt;br /&gt;
Проверьте следующие поля подписки: messages, messages_postbacks, message_deliveries, message_reads.&lt;br /&gt;
&lt;br /&gt;
Сохраните изменения&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep3_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Facebook3_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 4. утверждение на Facebook ==&lt;br /&gt;
&lt;br /&gt;
Отправьте приложение Facebook на утверждение.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
После утверждения вы можете включить канал Facebook Messenger для своего бота. &lt;br /&gt;
Для получения дополнительной информации о том, как отправить приложение, посетите https://developers.facebook.com/docs/messenger-platform/app-review#submission .&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Category:Ru&amp;diff=690</id>
		<title>Category:Ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Category:Ru&amp;diff=690"/>
		<updated>2022-06-30T14:01:04Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Created page with &amp;quot;Category:Qubot&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Customizing&amp;diff=643</id>
		<title>Qubot Customizing</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Customizing&amp;diff=643"/>
		<updated>2022-06-28T17:09:05Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: /* Webchat settings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span id=&amp;quot;qubot-customizing&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Webchat settings ==&lt;br /&gt;
&lt;br /&gt;
A guide to customizing your bot's appearance to match your brand's color scheme.&lt;br /&gt;
&lt;br /&gt;
In customizing the appearance of the bot, those brands that have already developed a color scheme and they need the appearance of the bot to match this scheme will be especially interested.&lt;br /&gt;
&lt;br /&gt;
It's easy to do. Select your bot, click '''Setup''' from the left panel.&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:SetupBot.png]]&lt;br /&gt;
&lt;br /&gt;
The following options are available:&lt;br /&gt;
&lt;br /&gt;
== Icons ==&lt;br /&gt;
&lt;br /&gt;
'''Logo''' - an icon that is displayed in the list of bots and the button to start the bot.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:LogoBot.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:BotStartButton.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''Agent''' - an icon that is displayed in every bot message.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:agent.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:agentIcon.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''Human''' - an icon that is displayed in each message of the user.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:human.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:humanIcon.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Texts ==&lt;br /&gt;
&lt;br /&gt;
'''Bot name''' - the bot's name is displayed in the upper left corner.&lt;br /&gt;
&lt;br /&gt;
'''Agent name''' - the name of the bot from which messages will be sent.&lt;br /&gt;
&lt;br /&gt;
'''Info text''' - text that provides specific information to the user is displayed at the top of the bot next to the bot's name.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:TextsSetup.png|500px]]  [[File:TextsBot.png|300px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Size and position ==&lt;br /&gt;
&lt;br /&gt;
'''Size''' - выбор готового размера окна бота: '''''обычный''''', '''''большой''''' и '''''огромный'''''. Для задания своих размеров выберите '''''пользовательский''''' и в полях '''''ширина''''' '''''высота''''' укажите желаемые размеры.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:sizeBot.png]]  [[File:sizeBotWindow.png|300px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Position''' - выберите угол для расположения вашего бота. В полях '''''слева''''' '''''вверх''''' установите отступы для окна бота.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:positionBot.png]]  [[File:positionBotWindow.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Стили ==&lt;br /&gt;
Здесь вы можете выбрать уже готовый стиль бота, который будет соответствовать цветовой схеме вашего бренда.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:styleBot.png|700px]]  [[File:styleBotWindow.png|300px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Пользовательские ==&lt;br /&gt;
Здесь вы можете настроить свой вид бота.&lt;br /&gt;
&lt;br /&gt;
Доступны следующие параметры:&lt;br /&gt;
&lt;br /&gt;
== Окно ==&lt;br /&gt;
&lt;br /&gt;
'''Тень''' - задание тени окна бота. Первый параметр задает перемещение тени вправо и вниз. Второй параметр задает уровень размытия тени. Третий - цвет тени.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ShadowSetup.png|400px]] [[File:Shadow.png|300px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Заголовок ==&lt;br /&gt;
Здесь вы можете отредактировать заголовок окна бота&lt;br /&gt;
&lt;br /&gt;
'''Заполнение''' - фон заголовка окна бота. Первый параметр задает цвет, второй - прозрачность.&lt;br /&gt;
&lt;br /&gt;
'''Рамка''' - рамка окна бота. Первый параметр задает цвет, второй - ширину рамки.&lt;br /&gt;
&lt;br /&gt;
'''Текст''' - имя бота в заголовке. Первый параметр задает цвет шрифта, второй задает размер шрифта, третий - высоту строки шрифта.&lt;br /&gt;
&lt;br /&gt;
'''Инфо''' - надпись в заголовке. Первый параметр задает цвет шрифта, второй задает размер шрифта, третий - высоту строки шрифта.&lt;br /&gt;
&lt;br /&gt;
'''Радиус''' - степень округленности верхних правого и левого углов окна бота.&lt;br /&gt;
&lt;br /&gt;
'''Тень''' - тень заголовка окна бота. Первый параметр задает смещение тени вниз, второй параметр задает степень размытия, третий - цвет.&lt;br /&gt;
&lt;br /&gt;
'''Закрыть''' - задание цветов кнопок обновления и закрытия бота. Первый параметр задает обычный цвет кнопок, второй параметр - цвет кнопок при наведении на них.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:HeaderSetup.png|400px]] [[File:Header.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Тело бота ==&lt;br /&gt;
Здесь вы можете отредактировать область переписки бота&lt;br /&gt;
&lt;br /&gt;
'''Заполнение''' - фон тела бота. Первый параметр задает цвет, второй задает прозрачность, третий - возможность установить текстуру в виде заднего фона.&lt;br /&gt;
&lt;br /&gt;
'''Рамка''' - рамка тела бота. Первый параметр задает цвет, второй - ширину рамки.&lt;br /&gt;
&lt;br /&gt;
'''Время''' - время и дата под сообщением. Первый параметр задает цвет шрифта, второй задает размер шрифта.&lt;br /&gt;
&lt;br /&gt;
'''Тень''' - тень для каждого сообщения. Первый параметр задает смещение тени вниз и правее, второй параметр задает степень размытия, третий - цвет.&lt;br /&gt;
&lt;br /&gt;
'''Радиус''' - степень округленности углов сообщения. Параметр задает степень округленности.&lt;br /&gt;
&lt;br /&gt;
'''Внутренние отступы''' - отступы от текста до стенок внутри сообщения. Параметр задает размер отступов.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:BodySetup.png|400px]] [[File:Body.png|300px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Агент ==&lt;br /&gt;
Здесь вы можете отредактировать сообщения агента в чате.&lt;br /&gt;
&lt;br /&gt;
'''Заполнение''' - фон сообщения агента. Параметр задает цвет.&lt;br /&gt;
&lt;br /&gt;
'''Рамка''' - рамка сообщения агента. Первый параметр задает цвет, второй - ширину рамки.&lt;br /&gt;
&lt;br /&gt;
'''Текст''' - текст сообщения агента. Первый параметр задает цвет шрифта, второй задает размер шрифта, третий - высоту строки шрифта.&lt;br /&gt;
&lt;br /&gt;
'''Имя''' - имя агента рядом с сообщением. Первый параметр задает цвет шрифта, второй задает размер шрифта, третий - высоту строки шрифта.&lt;br /&gt;
&lt;br /&gt;
'''Иконка''' - размер иконки агента.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:AgentCustomSetup.png|400px]] [[File:AgentCustom.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Человек ==&lt;br /&gt;
Здесь вы можете отредактировать сообщения пользователя в чате.&lt;br /&gt;
&lt;br /&gt;
'''Заполнение''' - фон сообщения пользователя. Параметр задает цвет.&lt;br /&gt;
&lt;br /&gt;
'''Рамка''' - рамка сообщения пользователя. Первый параметр задает цвет, второй - ширину рамки.&lt;br /&gt;
&lt;br /&gt;
'''Текст''' - текст сообщения пользователя. Первый параметр задает цвет шрифта, второй задает размер шрифта, третий - высоту строки шрифта.&lt;br /&gt;
&lt;br /&gt;
'''Иконка''' - размер иконки пользователя.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:HumanCustomSetup.png|400px]] [[File:HumanCustom.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Кнопки ==&lt;br /&gt;
Здесь вы можете отредактировать кнопки в чате.&lt;br /&gt;
&lt;br /&gt;
'''Текст''' - текст в кнопке. Первый параметр задает цвет шрифта, второй задает размер шрифта, третий - высоту строки шрифта.&lt;br /&gt;
&lt;br /&gt;
'''Рамка''' - рамка вокруг кнопки. Первый параметр задает цвет, второй - ширину рамки.&lt;br /&gt;
&lt;br /&gt;
'''Радиус''' - степень округленности углов кнопок.&lt;br /&gt;
&lt;br /&gt;
'''Заполнение''' - фон кнопок. Первый параметр задает фон в обычном состоянии, второй параметр задает фон при наведении, третий - фон при нажатии на кнопку.&lt;br /&gt;
&lt;br /&gt;
'''Высота''' - высота кнопки.&lt;br /&gt;
&lt;br /&gt;
'''Внешние отступы''' - отступы кнопки от остального контента.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ButtonSetup.png|400px]] [[File:Button.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Низ ==&lt;br /&gt;
Здесь вы можете отредактировать нижний колонтитул бота.&lt;br /&gt;
&lt;br /&gt;
'''Заполнение''' - фон нижней части бота. Первый параметр задает фон, второй параметр задает прозрачность.&lt;br /&gt;
&lt;br /&gt;
'''Рамка''' - рамка вокруг нижней части бота. Первый параметр задает цвет, второй - ширину рамки.&lt;br /&gt;
&lt;br /&gt;
'''Высота''' - высота нижней части бота.&lt;br /&gt;
&lt;br /&gt;
'''Радиус''' - степень округленности углов нижней части бота.&lt;br /&gt;
&lt;br /&gt;
'''Тень''' - тень нижней части бота. Первый параметр задает смещение тени вверх, второй параметр задает степень размытия, третий - цвет.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FooterSetup.png|400px]] [[File:Footer.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Поле ввода ==&lt;br /&gt;
Здесь вы можете отредактировать поле ввода.&lt;br /&gt;
&lt;br /&gt;
'''Радиус''' - степень округленности углов поля ввода.&lt;br /&gt;
&lt;br /&gt;
'''Высота''' - высота поля ввода.&lt;br /&gt;
&lt;br /&gt;
'''Внешние отступы''' - отступы поля ввода от остального контента. Первый параметр задает вертикальный отступ, второй - горизонтальный.&lt;br /&gt;
&lt;br /&gt;
'''Заполнение''' - фон поля ввода.&lt;br /&gt;
&lt;br /&gt;
'''Рамка''' - рамка поля ввода. Первый параметр задает цвет, второй - ширину рамки.&lt;br /&gt;
&lt;br /&gt;
'''Текст''' - оформление вводимого текста. Первый параметр задает цвет текста, второй - размерю&lt;br /&gt;
&lt;br /&gt;
'''Отправить''' - оформлении кнопки отправки данных. Первый параметр задает обычный цвет кнопки, второй параметр - цвет кнопок при наведении на нее.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:InputSetup.png|400px]] [[File:Input.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Кнопка открытия окна чата ==&lt;br /&gt;
Здесь вы можете отредактировать кнопку запуска бота.&lt;br /&gt;
&lt;br /&gt;
'''Радиус''' - радиус кнопки запуска бота. Первый параметр задает радиус всей кнопки запуска, второй - радиус иконки бот в кнопке.&lt;br /&gt;
&lt;br /&gt;
'''Рамка''' - рамка кнопки запуска. Первый параметр задает цвет, второй - ширину рамки.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:OpenButtonSetup.png|400px]] [[File:OpenButton.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Страница(для теста) ==&lt;br /&gt;
&lt;br /&gt;
'''Заполнение''' - фон на странице. Первый параметр задает задний фон под окном бота(пока только в консоли), второй параметр - картинку под окном бота(пока только в консоли).&lt;br /&gt;
&lt;br /&gt;
[[Category:Qubot]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=How_to_add_a_chatbot_to_your_website/ru&amp;diff=608</id>
		<title>How to add a chatbot to your website/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=How_to_add_a_chatbot_to_your_website/ru&amp;diff=608"/>
		<updated>2022-06-27T13:58:10Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ru]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;float:right; margin-left:0.8em; clear:right;&amp;quot;&lt;br /&gt;
|+[[Main_Page/ru|В начало]]&lt;br /&gt;
|&lt;br /&gt;
'''Lang:'''&lt;br /&gt;
|&lt;br /&gt;
[[How to add a chatbot to your website|en]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
;Youtube:[https://www.youtube.com/watch?v=VPfBYaJJ7jM How to add a chatbot to your website in 1 minute]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
== Установка чат-бота на собственный сайт ==&lt;br /&gt;
Для начала нам потребуется выбрать свой чат-бот.&lt;br /&gt;
&lt;br /&gt;
Для этого перейдите в консоль разработки ботов https://console.qudata.com/dashboard/bots и выберите желаемый чат-бот, нажав прямо на него.&lt;br /&gt;
&lt;br /&gt;
[[File:1.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Вы попадаете в раздел редактирования чат-бота.&lt;br /&gt;
Нажмите в боковой левой навигационной панели '''Integrations''' и выберите вид канала '''WebChat'''.&lt;br /&gt;
&lt;br /&gt;
[[File:2.png|700px]]&lt;br /&gt;
&lt;br /&gt;
В панели настройки данного канала, введите ссылку на ваш сайт в поле шага 1.&lt;br /&gt;
&lt;br /&gt;
[[File:3.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Затем, в шаге 2, нажмите на кнопку '''Copy'''.&lt;br /&gt;
&lt;br /&gt;
[[File:4.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Откройте свою веб-страницу и получите доступ к HTML. Прокрутите вниз и вставьте скопированный текст в самом конце тега '''&amp;lt;/body&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
[[File:5.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Вернитесь на страницу настройки и переключите ползунок в активное состояние.&lt;br /&gt;
&lt;br /&gt;
[[File:6.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Перезагрузите страницу вашего сайта. Бот появится в виде кнопки в правом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:7.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Поздравляем, бот успешно интегрирован в WEB канал. Теперь чат-бот доступен на вашем персональном сайте компании.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Integrations]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Main_Page/ru&amp;diff=606</id>
		<title>Main Page/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Main_Page/ru&amp;diff=606"/>
		<updated>2022-06-27T13:52:10Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|&lt;br /&gt;
'''Lang:'''&lt;br /&gt;
|&lt;br /&gt;
[[Main Page|en]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#005500&amp;quot;&amp;gt;QuBot&amp;lt;/span&amp;gt; - это набор инструментов по созданию чат-ботов и виртуальных помощников.&lt;br /&gt;
----&lt;br /&gt;
; Настройка и программирование:&lt;br /&gt;
* [[Qubot Customizing/ru]]&lt;br /&gt;
* [[Qubot Google Sheets Setup|Подключение Google  таблиц к боту]]&lt;br /&gt;
* [[Qubot Script]]&lt;br /&gt;
;&amp;lt;u&amp;gt;[[:Category:Integrations|Интеграция]]&amp;lt;/u&amp;gt;:&lt;br /&gt;
* [[How to add a chatbot to your website/ru|Установка чат-бота на собственный сайт]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website/ru|WordPress plugin]]&lt;br /&gt;
* [[Qubot Facebook Integration/ru|Facebook ]]&lt;br /&gt;
* [[Qubot Telegram Integration/ru|Telegram ]]&lt;br /&gt;
* [[Qubot Viber Integration/ru   |Viber ]]&lt;br /&gt;
* [[Qubot LiveChat Integration|LiveChat]]&lt;br /&gt;
* [[Qubot Whatsapp Integration/ru|Whatsapp]]&lt;br /&gt;
----&lt;br /&gt;
* [[FAQ|Список часто задаваемых вопросов и ответов]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;strong&amp;gt;MediaWiki успешно установлена.&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Информацию по работе с этой вики можно найти в [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents справочном руководстве].&lt;br /&gt;
&lt;br /&gt;
== Некоторые полезные ресурсы ==&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Список возможных настроек];&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Manual:FAQ/ru Часто задаваемые вопросы и ответы по MediaWiki];&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Рассылка уведомлений о выходе новых версий MediaWiki].&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Перевод MediaWiki на свой язык]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Узнайте, как бороться со спамом в вашей вики]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Qubot|*]]&lt;br /&gt;
[[Category:ru]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=How_to_add_a_chatbot_to_your_website/ru&amp;diff=605</id>
		<title>How to add a chatbot to your website/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=How_to_add_a_chatbot_to_your_website/ru&amp;diff=605"/>
		<updated>2022-06-27T13:51:07Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Slavinsky moved page How to add a chatbot to your website RU to How to add a chatbot to your website/ru without leaving a redirect&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!--&lt;br /&gt;
;Youtube:[https://www.youtube.com/watch?v=VPfBYaJJ7jM How to add a chatbot to your website in 1 minute]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
== Установка чат-бота на собственный сайт ==&lt;br /&gt;
Для начала нам потребуется выбрать свой чат-бот.&lt;br /&gt;
&lt;br /&gt;
Для этого перейдите в консоль разработки ботов https://console.qudata.com/dashboard/bots и выберите желаемый чат-бот, нажав прямо на него.&lt;br /&gt;
&lt;br /&gt;
[[File:1.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Вы попадаете в раздел редактирования чат-бота.&lt;br /&gt;
Нажмите в боковой левой навигационной панели '''Integrations''' и выберите вид канала '''WebChat'''.&lt;br /&gt;
&lt;br /&gt;
[[File:2.png|700px]]&lt;br /&gt;
&lt;br /&gt;
В панели настройки данного канала, введите ссылку на ваш сайт в поле шага 1.&lt;br /&gt;
&lt;br /&gt;
[[File:3.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Затем, в шаге 2, нажмите на кнопку '''Copy'''.&lt;br /&gt;
&lt;br /&gt;
[[File:4.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Откройте свою веб-страницу и получите доступ к HTML. Прокрутите вниз и вставьте скопированный текст в самом конце тега '''&amp;lt;/body&amp;gt;'''.&lt;br /&gt;
&lt;br /&gt;
[[File:5.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Вернитесь на страницу настройки и переключите ползунок в активное состояние.&lt;br /&gt;
&lt;br /&gt;
[[File:6.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Перезагрузите страницу вашего сайта. Бот появится в виде кнопки в правом нижнем углу.&lt;br /&gt;
&lt;br /&gt;
[[File:7.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Поздравляем, бот успешно интегрирован в WEB канал. Теперь чат-бот доступен на вашем персональном сайте компании.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Integrations]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Main_Page/ru&amp;diff=604</id>
		<title>Main Page/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Main_Page/ru&amp;diff=604"/>
		<updated>2022-06-27T13:46:37Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|&lt;br /&gt;
'''Lang:'''&lt;br /&gt;
|&lt;br /&gt;
[[Main Page|en]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#005500&amp;quot;&amp;gt;QuBot&amp;lt;/span&amp;gt; - это набор инструментов по созданию чат-ботов и виртуальных помощников.&lt;br /&gt;
----&lt;br /&gt;
; Настройка и программирование:&lt;br /&gt;
* [[Qubot Customizing/ru]]&lt;br /&gt;
* [[Qubot Google Sheets Setup|Подключение Google  таблиц к боту]]&lt;br /&gt;
* [[Qubot Script]]&lt;br /&gt;
;&amp;lt;u&amp;gt;[[:Category:Integrations|Интеграция]]&amp;lt;/u&amp;gt;:&lt;br /&gt;
* [[How to add a chatbot to your website|Установка чат-бота на собственный сайт]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website/ru|WordPress plugin]]&lt;br /&gt;
* [[Qubot Facebook Integration/ru|Facebook ]]&lt;br /&gt;
* [[Qubot Telegram Integration/ru|Telegram ]]&lt;br /&gt;
* [[Qubot Viber Integration/ru   |Viber ]]&lt;br /&gt;
* [[Qubot LiveChat Integration|LiveChat]]&lt;br /&gt;
* [[Qubot Whatsapp Integration/ru|Whatsapp]]&lt;br /&gt;
----&lt;br /&gt;
* [[FAQ|Список часто задаваемых вопросов и ответов]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;strong&amp;gt;MediaWiki успешно установлена.&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Информацию по работе с этой вики можно найти в [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents справочном руководстве].&lt;br /&gt;
&lt;br /&gt;
== Некоторые полезные ресурсы ==&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Список возможных настроек];&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Manual:FAQ/ru Часто задаваемые вопросы и ответы по MediaWiki];&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Рассылка уведомлений о выходе новых версий MediaWiki].&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Перевод MediaWiki на свой язык]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Узнайте, как бороться со спамом в вашей вики]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Qubot|*]]&lt;br /&gt;
[[Category:ru]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=How_to_integrate_WordPress_plugin_to_website/ru&amp;diff=603</id>
		<title>How to integrate WordPress plugin to website/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=How_to_integrate_WordPress_plugin_to_website/ru&amp;diff=603"/>
		<updated>2022-06-27T13:43:36Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ru]]&lt;br /&gt;
{|style=&amp;quot;float:right; margin-left:0.8em; clear:right;&amp;quot;&lt;br /&gt;
|+[[Main_Page/ru|В начало]]&lt;br /&gt;
|&lt;br /&gt;
'''Lang:'''&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
[[How to integrate WordPress plugin to website|en]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;qubot-viber-integration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Установка WordPress плагина ==&lt;br /&gt;
Инструкция по интеграции WordPress плагина '''QuBot''' на собственный сайт. Данное действие можно выполнить одним из предложенных способов.&lt;br /&gt;
Предпочтительнее первый способ, так как он обеспечивает автоматическую проверку актуальной версии плагина.&lt;br /&gt;
&lt;br /&gt;
== 1 Способ ==&lt;br /&gt;
Перейдите на страницу админ-панели WordPress на своем сайте. Нажмите '''Plugins''', затем '''Add New'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 0.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Справа в верхней части экрана введите в строке поиска слово '''QuBot'''. В результатах поиска отобразиться нужный плагин. Нажмите '''Install Now'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 1.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Ждем установки плагина, а затем нажимаем '''Activate'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 2.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Плагин установлен на ваш сайт!&lt;br /&gt;
&lt;br /&gt;
== 2 Способ ==&lt;br /&gt;
Перейдите в консоль разработки ботов https://console.qudata.com/ и нажмите кнопку '''Integrate'''. Выберите канал связи '''WordPress'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 3.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Для скачивания плагина нажмите '''Get Plugin'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 4.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Перейдите на страницу админ-панели WordPress на своем сайте. Нажмите '''Plugins''', затем '''Upload Plugin'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 5.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Для установки скачанного файла с плагином нажмите '''Choose File'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 6.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Выберите скачанный файл с плагином нажав на него, затем '''Open'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 7.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Далее нажмите '''Install Now''', дождитесь установки плагина и активируйте его нажатием '''Activate Plugin'''&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 8.png|350px]]  [[File:Screenshot 9.png|350px]]&lt;br /&gt;
&lt;br /&gt;
Плагин установлен на ваш сайт!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Integrations]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=How_to_integrate_WordPress_plugin_to_website/ru&amp;diff=602</id>
		<title>How to integrate WordPress plugin to website/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=How_to_integrate_WordPress_plugin_to_website/ru&amp;diff=602"/>
		<updated>2022-06-27T13:42:19Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Slavinsky moved page How to integrate WordPress plugin to website RU to How to integrate WordPress plugin to website/ru without leaving a redirect&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span id=&amp;quot;qubot-viber-integration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Установка WordPress плагина ==&lt;br /&gt;
Инструкция по интеграции WordPress плагина '''QuBot''' на собственный сайт. Данное действие можно выполнить одним из предложенных способов.&lt;br /&gt;
Предпочтительнее первый способ, так как он обеспечивает автоматическую проверку актуальной версии плагина.&lt;br /&gt;
&lt;br /&gt;
== 1 Способ ==&lt;br /&gt;
Перейдите на страницу админ-панели WordPress на своем сайте. Нажмите '''Plugins''', затем '''Add New'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 0.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Справа в верхней части экрана введите в строке поиска слово '''QuBot'''. В результатах поиска отобразиться нужный плагин. Нажмите '''Install Now'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 1.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Ждем установки плагина, а затем нажимаем '''Activate'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 2.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Плагин установлен на ваш сайт!&lt;br /&gt;
&lt;br /&gt;
== 2 Способ ==&lt;br /&gt;
Перейдите в консоль разработки ботов https://console.qudata.com/ и нажмите кнопку '''Integrate'''. Выберите канал связи '''WordPress'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 3.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Для скачивания плагина нажмите '''Get Plugin'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 4.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Перейдите на страницу админ-панели WordPress на своем сайте. Нажмите '''Plugins''', затем '''Upload Plugin'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 5.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Для установки скачанного файла с плагином нажмите '''Choose File'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 6.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Выберите скачанный файл с плагином нажав на него, затем '''Open'''.&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 7.png|700px]]&lt;br /&gt;
&lt;br /&gt;
Далее нажмите '''Install Now''', дождитесь установки плагина и активируйте его нажатием '''Activate Plugin'''&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot 8.png|350px]]  [[File:Screenshot 9.png|350px]]&lt;br /&gt;
&lt;br /&gt;
Плагин установлен на ваш сайт!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Integrations]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Whatsapp_Integration/ru&amp;diff=601</id>
		<title>Qubot Whatsapp Integration/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Whatsapp_Integration/ru&amp;diff=601"/>
		<updated>2022-06-27T13:40:00Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
[[Category:Integrations|W]] [[Category:ru]]&lt;br /&gt;
{|style=&amp;quot;float:right; margin-left:0.8em; clear:right;&amp;quot;&lt;br /&gt;
|+[[Main_Page/ru|В начало]]&lt;br /&gt;
|&lt;br /&gt;
'''Lang:'''&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
[[Qubot Whatsapp Integration|en]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;qubot-whatsapp-integration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Подключение бота в Whatsapp ==&lt;br /&gt;
&lt;br /&gt;
Чтобы получить доступ к WhatsApp Business API через нашу встроенную форму регистрации, следуйте этому руководству.&lt;br /&gt;
== Шаг 1 ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Перед регистрацией убедитесь, что у вас есть действующий номер телефона. Проверьте, соответствует ли ваш номер телефона критериям здесь - https://developers.facebook.com/docs/whatsapp/phone-numbers#phone-numbers.&lt;br /&gt;
* Для телефонных номеров с включенной системой IVR необходимо временно отключить IVR во время процесса регистрации.&lt;br /&gt;
== Шаг 2 ==&lt;br /&gt;
&lt;br /&gt;
Перейдите по ссылке на форму регистрации https://hub.360dialog.com/lp/whatsapp/VTOU8QPA, чтобы заполнить заявку на учетную запись WhatsApp Business.&lt;br /&gt;
&lt;br /&gt;
Вам нужно будет указать свой адрес электронной почты (который нельзя подключить к активной учетной записи 360dialog), ваше имя, название вашей компании и пароль, который будет использоваться при входе в 360 Client Hub.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup1.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
После нажатия кнопки «Принять условия» вы будете перенаправлены на встроенную страницу регистрации.&lt;br /&gt;
&lt;br /&gt;
== Шаг 3 ==&lt;br /&gt;
&lt;br /&gt;
Завершите встроенную регистрацию.&lt;br /&gt;
&lt;br /&gt;
Предупреждение: не держите встроенное всплывающее окно регистрации открытым более 1 часа, иначе сеанс истечет. Прежде чем начать, убедитесь, что у вас есть все предварительные условия из шага 1.&lt;br /&gt;
&lt;br /&gt;
Вам нужно будет войти в свой мета-аккаунт, чтобы двигаться вперед. Важно, чтобы у этой учетной записи Meta был доступ администратора к Meta Business Manager, который будет управлять этой учетной записью WhatsApp.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Активация аккаунта WhatsApp Business API  -  https://www.youtube.com/watch?v=_WxbHVdC8L4&lt;br /&gt;
&lt;br /&gt;
Выберите вашего бота, в левой панели выберите пункт Интеграции. Далее выберите Whatsapp.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите Шаг 3 и укажите номер телефона вашей компании в поле.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup4.png|400px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Как только встроенная регистрация будет завершена, мы немедленно развернем клиент WhatsApp Business API. Вы автоматически войдете в 360 Client Hub, где сможете сгенерировать свой ключ API.&lt;br /&gt;
&lt;br /&gt;
== Шаг 4 ==&lt;br /&gt;
&lt;br /&gt;
Создайте ключ API и убедитесь, что вы храните его в безопасном месте.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup5.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup6.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите вашего бота, в левой панели выберите пункт Интеграции. Далее выберите Whatsapp.Выберите Шаг 3 и скопируйте ключ API в поле ввода.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup7.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 5 ==&lt;br /&gt;
&lt;br /&gt;
Заполните профиль бизнес-менеджера.&lt;br /&gt;
&lt;br /&gt;
Чтобы сохранить подключение к API, вам необходимо добавить свою информацию в раздел бизнес-информации в настройках бизнес-менеджера. Узнайте, как это сделать тут https://www.facebook.com/business/help/257957338156440?id=180505742745347&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Main_Page/ru&amp;diff=600</id>
		<title>Main Page/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Main_Page/ru&amp;diff=600"/>
		<updated>2022-06-27T13:39:20Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|&lt;br /&gt;
'''Lang:'''&lt;br /&gt;
|&lt;br /&gt;
[[Main Page|en]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#005500&amp;quot;&amp;gt;QuBot&amp;lt;/span&amp;gt; - это набор инструментов по созданию чат-ботов и виртуальных помощников.&lt;br /&gt;
----&lt;br /&gt;
; Настройка и программирование:&lt;br /&gt;
* [[Qubot Customizing/ru]]&lt;br /&gt;
* [[Qubot Google Sheets Setup|Подключение Google  таблиц к боту]]&lt;br /&gt;
* [[Qubot Script]]&lt;br /&gt;
;&amp;lt;u&amp;gt;[[:Category:Integrations|Интеграция]]&amp;lt;/u&amp;gt;:&lt;br /&gt;
* [[How to add a chatbot to your website|Установка чат-бота на собственный сайт]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website|WordPress plugin]]&lt;br /&gt;
* [[Qubot Facebook Integration/ru|Facebook ]]&lt;br /&gt;
* [[Qubot Telegram Integration/ru|Telegram ]]&lt;br /&gt;
* [[Qubot Viber Integration/ru   |Viber ]]&lt;br /&gt;
* [[Qubot LiveChat Integration|LiveChat]]&lt;br /&gt;
* [[Qubot Whatsapp Integration/ru|Whatsapp]]&lt;br /&gt;
----&lt;br /&gt;
* [[FAQ|Список часто задаваемых вопросов и ответов]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;strong&amp;gt;MediaWiki успешно установлена.&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Информацию по работе с этой вики можно найти в [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents справочном руководстве].&lt;br /&gt;
&lt;br /&gt;
== Некоторые полезные ресурсы ==&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Список возможных настроек];&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Manual:FAQ/ru Часто задаваемые вопросы и ответы по MediaWiki];&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Рассылка уведомлений о выходе новых версий MediaWiki].&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Перевод MediaWiki на свой язык]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Узнайте, как бороться со спамом в вашей вики]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Qubot|*]]&lt;br /&gt;
[[Category:ru]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=FAQ&amp;diff=599</id>
		<title>FAQ</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=FAQ&amp;diff=599"/>
		<updated>2022-06-27T13:35:32Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:IconOwl.gif|200px|thumb|right|чаво]]&lt;br /&gt;
Это список часто задаваемых вопросов и ответов, относящихся к работе ботов&lt;br /&gt;
&lt;br /&gt;
* [[How to add a chatbot to your website]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website]]&lt;br /&gt;
* [[Category:Qubot]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Whatsapp_Integration_En&amp;diff=597</id>
		<title>Qubot Whatsapp Integration En</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Whatsapp_Integration_En&amp;diff=597"/>
		<updated>2022-06-27T13:25:03Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Protected &amp;quot;Qubot Whatsapp Integration En&amp;quot; ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
[[Category:Integrations|W]]&lt;br /&gt;
&amp;lt;span id=&amp;quot;qubot-whatsapp-integration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Подключение бота в Whatsapp ==&lt;br /&gt;
&lt;br /&gt;
To get WhatsApp Business API Access through our embedded signup form, follow this guide.&lt;br /&gt;
== Step 1 ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Before signing up, make sure you have a valid phone number.Check if your phone number meets the criteria here - https://developers.facebook.com/docs/whatsapp/phone-numbers#phone-numbers .&lt;br /&gt;
* For phone numbers with an IVR system enabled, the IVR needs to be temporarily disabled during the registration process.&lt;br /&gt;
== Step 2 ==&lt;br /&gt;
&lt;br /&gt;
Follow our signup form link https://hub.360dialog.com/lp/whatsapp/VTOU8QPA to fill out the WhatsApp Business Account application.&lt;br /&gt;
&lt;br /&gt;
You will need to provide your email address (which can't be connected to an active 360dialog account), your name, your company name, and the password that will be used in the 360 Client Hub login.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup1.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
After clicking the Accept Terms button, you will be redirected to the embedded signup page.&lt;br /&gt;
&lt;br /&gt;
== Step 3 ==&lt;br /&gt;
&lt;br /&gt;
Complete the embedded signup.&lt;br /&gt;
&lt;br /&gt;
Precaution: do not keep the embedded signup pop-up open for more than 1 hour, otherwise the session will expire. Please ensure that you have all the prerequisites from Step 1 ready before starting.&lt;br /&gt;
&lt;br /&gt;
You will need to log in to your Meta account to move forward. It's important that this Meta account has admin access to the Meta Business Manager that will manage this WhatsApp account.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
WhatsApp Business API Account Activation  -  https://www.youtube.com/watch?v=_WxbHVdC8L4&lt;br /&gt;
&lt;br /&gt;
Select your bot, in the left pane select Integrations. Next, select Whatsapp.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Select Step 3 and enter your company's phone number in the field.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup4.png|400px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the embedded signup is completed, we will immediately deploy the WhatsApp Business API Client. You will be automatically logged into 360 Client Hub, where you can generate your API Key.&lt;br /&gt;
&lt;br /&gt;
== Step 4 ==&lt;br /&gt;
&lt;br /&gt;
Generate an API Key and make sure you store it in a secure location.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup5.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup6.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Select your bot, select Integrations in the left pane. Next, select Whatsapp. Select Step 3 and copy the API key in the input field.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup7.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Step 5 ==&lt;br /&gt;
&lt;br /&gt;
Complete your business manager profile.&lt;br /&gt;
&lt;br /&gt;
To keep connected to the API, you should add your information in the business info section of business manager settings. Learn how to do it here - https://www.facebook.com/business/help/257957338156440?id=180505742745347&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Whatsapp_Integration&amp;diff=596</id>
		<title>Qubot Whatsapp Integration</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Whatsapp_Integration&amp;diff=596"/>
		<updated>2022-06-27T13:24:48Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Removed redirect to Qubot Whatsapp Integration/ru&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
[[Category:Integrations|W]]&lt;br /&gt;
&amp;lt;span id=&amp;quot;qubot-whatsapp-integration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Подключение бота в Whatsapp ==&lt;br /&gt;
&lt;br /&gt;
To get WhatsApp Business API Access through our embedded signup form, follow this guide.&lt;br /&gt;
== Step 1 ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Before signing up, make sure you have a valid phone number.Check if your phone number meets the criteria here - https://developers.facebook.com/docs/whatsapp/phone-numbers#phone-numbers .&lt;br /&gt;
* For phone numbers with an IVR system enabled, the IVR needs to be temporarily disabled during the registration process.&lt;br /&gt;
== Step 2 ==&lt;br /&gt;
&lt;br /&gt;
Follow our signup form link https://hub.360dialog.com/lp/whatsapp/VTOU8QPA to fill out the WhatsApp Business Account application.&lt;br /&gt;
&lt;br /&gt;
You will need to provide your email address (which can't be connected to an active 360dialog account), your name, your company name, and the password that will be used in the 360 Client Hub login.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup1.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
After clicking the Accept Terms button, you will be redirected to the embedded signup page.&lt;br /&gt;
&lt;br /&gt;
== Step 3 ==&lt;br /&gt;
&lt;br /&gt;
Complete the embedded signup.&lt;br /&gt;
&lt;br /&gt;
Precaution: do not keep the embedded signup pop-up open for more than 1 hour, otherwise the session will expire. Please ensure that you have all the prerequisites from Step 1 ready before starting.&lt;br /&gt;
&lt;br /&gt;
You will need to log in to your Meta account to move forward. It's important that this Meta account has admin access to the Meta Business Manager that will manage this WhatsApp account.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
WhatsApp Business API Account Activation  -  https://www.youtube.com/watch?v=_WxbHVdC8L4&lt;br /&gt;
&lt;br /&gt;
Select your bot, in the left pane select Integrations. Next, select Whatsapp.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Select Step 3 and enter your company's phone number in the field.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup4.png|400px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the embedded signup is completed, we will immediately deploy the WhatsApp Business API Client. You will be automatically logged into 360 Client Hub, where you can generate your API Key.&lt;br /&gt;
&lt;br /&gt;
== Step 4 ==&lt;br /&gt;
&lt;br /&gt;
Generate an API Key and make sure you store it in a secure location.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup5.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup6.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Select your bot, select Integrations in the left pane. Next, select Whatsapp. Select Step 3 and copy the API key in the input field.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup7.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Step 5 ==&lt;br /&gt;
&lt;br /&gt;
Complete your business manager profile.&lt;br /&gt;
&lt;br /&gt;
To keep connected to the API, you should add your information in the business info section of business manager settings. Learn how to do it here - https://www.facebook.com/business/help/257957338156440?id=180505742745347&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Whatsapp_Integration/ru&amp;diff=594</id>
		<title>Qubot Whatsapp Integration/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Whatsapp_Integration/ru&amp;diff=594"/>
		<updated>2022-06-27T13:24:16Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Slavinsky moved page Qubot Whatsapp Integration to Qubot Whatsapp Integration/ru: localization&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
[[Category:Integrations|W]]&lt;br /&gt;
&amp;lt;span id=&amp;quot;qubot-whatsapp-integration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Подключение бота в Whatsapp ==&lt;br /&gt;
&lt;br /&gt;
Чтобы получить доступ к WhatsApp Business API через нашу встроенную форму регистрации, следуйте этому руководству.&lt;br /&gt;
== Шаг 1 ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Перед регистрацией убедитесь, что у вас есть действующий номер телефона. Проверьте, соответствует ли ваш номер телефона критериям здесь - https://developers.facebook.com/docs/whatsapp/phone-numbers#phone-numbers.&lt;br /&gt;
* Для телефонных номеров с включенной системой IVR необходимо временно отключить IVR во время процесса регистрации.&lt;br /&gt;
== Шаг 2 ==&lt;br /&gt;
&lt;br /&gt;
Перейдите по ссылке на форму регистрации https://hub.360dialog.com/lp/whatsapp/VTOU8QPA, чтобы заполнить заявку на учетную запись WhatsApp Business.&lt;br /&gt;
&lt;br /&gt;
Вам нужно будет указать свой адрес электронной почты (который нельзя подключить к активной учетной записи 360dialog), ваше имя, название вашей компании и пароль, который будет использоваться при входе в 360 Client Hub.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup1.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
После нажатия кнопки «Принять условия» вы будете перенаправлены на встроенную страницу регистрации.&lt;br /&gt;
&lt;br /&gt;
== Шаг 3 ==&lt;br /&gt;
&lt;br /&gt;
Завершите встроенную регистрацию.&lt;br /&gt;
&lt;br /&gt;
Предупреждение: не держите встроенное всплывающее окно регистрации открытым более 1 часа, иначе сеанс истечет. Прежде чем начать, убедитесь, что у вас есть все предварительные условия из шага 1.&lt;br /&gt;
&lt;br /&gt;
Вам нужно будет войти в свой мета-аккаунт, чтобы двигаться вперед. Важно, чтобы у этой учетной записи Meta был доступ администратора к Meta Business Manager, который будет управлять этой учетной записью WhatsApp.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Активация аккаунта WhatsApp Business API  -  https://www.youtube.com/watch?v=_WxbHVdC8L4&lt;br /&gt;
&lt;br /&gt;
Выберите вашего бота, в левой панели выберите пункт Интеграции. Далее выберите Whatsapp.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите Шаг 3 и укажите номер телефона вашей компании в поле.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup4.png|400px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Как только встроенная регистрация будет завершена, мы немедленно развернем клиент WhatsApp Business API. Вы автоматически войдете в 360 Client Hub, где сможете сгенерировать свой ключ API.&lt;br /&gt;
&lt;br /&gt;
== Шаг 4 ==&lt;br /&gt;
&lt;br /&gt;
Создайте ключ API и убедитесь, что вы храните его в безопасном месте.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup5.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup6.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите вашего бота, в левой панели выберите пункт Интеграции. Далее выберите Whatsapp.Выберите Шаг 3 и скопируйте ключ API в поле ввода.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:WhatsappSetup7.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 5 ==&lt;br /&gt;
&lt;br /&gt;
Заполните профиль бизнес-менеджера.&lt;br /&gt;
&lt;br /&gt;
Чтобы сохранить подключение к API, вам необходимо добавить свою информацию в раздел бизнес-информации в настройках бизнес-менеджера. Узнайте, как это сделать тут https://www.facebook.com/business/help/257957338156440?id=180505742745347&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Whatsapp_Integration&amp;diff=595</id>
		<title>Qubot Whatsapp Integration</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Whatsapp_Integration&amp;diff=595"/>
		<updated>2022-06-27T13:24:16Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Slavinsky moved page Qubot Whatsapp Integration to Qubot Whatsapp Integration/ru: localization&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Qubot Whatsapp Integration/ru]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Facebook_Integration/ru&amp;diff=593</id>
		<title>Qubot Facebook Integration/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Facebook_Integration/ru&amp;diff=593"/>
		<updated>2022-06-27T13:21:23Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
[[Category:Integrations|F]]  [[Category:ru]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;float:right; margin-left:0.8em; clear:right;&amp;quot;&lt;br /&gt;
|+[[Main_Page/ru|В начало]]&lt;br /&gt;
|&lt;br /&gt;
'''Lang:'''&lt;br /&gt;
|&lt;br /&gt;
[[Qubot Facebook Integration|en]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;qubot-facebook-integration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Подключение бота в Facebook ==&lt;br /&gt;
&lt;br /&gt;
Чтобы настроить Facebook Messenger в качестве канала, вам потребуется создать приложение на Facebook,&amp;lt;br&amp;gt;&lt;br /&gt;
включить интеграцию веб-перехватчиков для платформы для отправки и получения сообщений,&amp;lt;br&amp;gt;&lt;br /&gt;
а также подписаться на приложение на странице Facebook.&amp;lt;br&amp;gt;&lt;br /&gt;
== Шаг 1 ==&lt;br /&gt;
&lt;br /&gt;
Создайте приложение.&lt;br /&gt;
&lt;br /&gt;
Войдите на портал разработчиков Facebook https://developers.facebook.com/ и перейдите в раздел «Мои приложения».&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Нажмите кнопку «Создать приложение», затем выберите тип приложения «Бизнес».&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Введите все необходимые данные для вашего приложения и нажмите «Создать приложение».&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Ваше приложение будет создано, и вы будете перенаправлены на страницу настройки приложения.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Выберите Messenger и нажмите кнопку «Настроить», чтобы продолжить. Вы будете перенаправлены на страницу настроек.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 2 ==&lt;br /&gt;
&lt;br /&gt;
Сведения о странице.&lt;br /&gt;
&lt;br /&gt;
Свяжите страницу с приложением и сгенерируйте токен доступа к странице в разделе «Создание токена». Если у вас нет страницы, вы можете создать страницу Facebook здесь - https://www.facebook.com/pages/create .&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите вашего бота, в левой панели выберите пункт '''Интеграции'''. Далее выберите Messenger.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_6.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите Шаг 2 и введите этот токен доступа в поле Page Access Token(Токен доступа к странице).&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_7.png]]  [[File:FacebookStep2_8.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Перейдите в меню «Основные настройки», затем выберите «Основные настройки», запишите App ID(идентификатор приложения) &lt;br /&gt;
и App Secret. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Введите их в соответствующие поля на Шаге 2 вашего бота.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_9.png]]  [[File:FacebookStep2_10.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Из своей учетной записи Facebook перейдите на страницу Facebook, которую вы выбрали выше. Найдите меню '''About'''.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep5.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Скопируйте Page ID и введите их в соответствующие поля на Шаге 2 вашего бота.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_11.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 3 ==&lt;br /&gt;
&lt;br /&gt;
Настройка вебхука.&lt;br /&gt;
&lt;br /&gt;
Нажмите переключатель в правом верхнем углу, чтобы активировать канал. После активации канала интеграция с веб-перехватчиком включается автоматически.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Перейдите в меню «Настройки мессенджера» и прокрутите вниз до раздела '''Webhooks section'''. &lt;br /&gt;
В разделе '''Webhooks section''' выберите страницу, которую вы использовали для создания токена страницы, и нажмите '''Add subscriptions'''. &lt;br /&gt;
Проверьте следующие поля подписки: messages, messages_postbacks, message_deliveries, message_reads.&lt;br /&gt;
&lt;br /&gt;
Сохраните изменения&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep3_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Facebook3_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 4 ==&lt;br /&gt;
&lt;br /&gt;
Отправьте приложение Facebook на утверждение.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
После утверждения вы можете включить канал Facebook Messenger для своего бота. &lt;br /&gt;
Для получения дополнительной информации о том, как отправить приложение, посетите https://developers.facebook.com/docs/messenger-platform/app-review#submission .&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Main_Page/ru&amp;diff=592</id>
		<title>Main Page/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Main_Page/ru&amp;diff=592"/>
		<updated>2022-06-27T13:20:05Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|&lt;br /&gt;
'''Lang:'''&lt;br /&gt;
|&lt;br /&gt;
[[Main Page|en]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#005500&amp;quot;&amp;gt;QuBot&amp;lt;/span&amp;gt; - это набор инструментов по созданию чат-ботов и виртуальных помощников.&lt;br /&gt;
----&lt;br /&gt;
; Настройка и программирование:&lt;br /&gt;
* [[Qubot Customizing/ru]]&lt;br /&gt;
* [[Qubot Google Sheets Setup|Подключение Google  таблиц к боту]]&lt;br /&gt;
* [[Qubot Script]]&lt;br /&gt;
;&amp;lt;u&amp;gt;[[:Category:Integrations|Интеграция]]&amp;lt;/u&amp;gt;:&lt;br /&gt;
* [[How to add a chatbot to your website|Установка чат-бота на собственный сайт]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website|WordPress plugin]]&lt;br /&gt;
* [[Qubot Facebook Integration/ru|Facebook ]]&lt;br /&gt;
* [[Qubot Telegram Integration/ru|Telegram ]]&lt;br /&gt;
* [[Qubot Viber Integration/ru   |Viber ]]&lt;br /&gt;
* [[Qubot LiveChat Integration|LiveChat]]&lt;br /&gt;
* [[Qubot Whatsapp Integration|Whatsapp]]&lt;br /&gt;
----&lt;br /&gt;
* [[FAQ|Список часто задаваемых вопросов и ответов]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;strong&amp;gt;MediaWiki успешно установлена.&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Информацию по работе с этой вики можно найти в [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents справочном руководстве].&lt;br /&gt;
&lt;br /&gt;
== Некоторые полезные ресурсы ==&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Список возможных настроек];&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Manual:FAQ/ru Часто задаваемые вопросы и ответы по MediaWiki];&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Рассылка уведомлений о выходе новых версий MediaWiki].&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Перевод MediaWiki на свой язык]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Узнайте, как бороться со спамом в вашей вики]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Qubot|*]]&lt;br /&gt;
[[Category:ru]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Main_Page&amp;diff=590</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Main_Page&amp;diff=590"/>
		<updated>2022-06-27T13:17:52Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span style=&amp;quot;color:#005500&amp;quot;&amp;gt;QuBot&amp;lt;/span&amp;gt;  is a set of tools for creating chatbots and virtual assistants.&lt;br /&gt;
----&lt;br /&gt;
; Setup and programming:&lt;br /&gt;
* [[Qubot Customizing]]&lt;br /&gt;
* [[Qubot Google Sheets Setup]]&lt;br /&gt;
* [[Qubot Script]]&lt;br /&gt;
;&amp;lt;u&amp;gt;[[:Category:Integrations|Integrations]]&amp;lt;/u&amp;gt;:&lt;br /&gt;
* [[How to add a chatbot to your website]]&lt;br /&gt;
* [[How to integrate WordPress plugin to website|WordPress plugin]]&lt;br /&gt;
* [[Qubot Facebook Integration|Facebook ]]&lt;br /&gt;
* [[Qubot Telegram Integration|Telegram]]&lt;br /&gt;
* [[Qubot Viber Integration|Viber ]]&lt;br /&gt;
* [[Qubot LiveChat Integration|LiveChat]]&lt;br /&gt;
* [[Qubot Whatsapp Integration|Whatsapp]]&lt;br /&gt;
* [[Qubot Whatsapp Integration En|Whatsapp En]]&lt;br /&gt;
----&lt;br /&gt;
* [[FAQ]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;strong&amp;gt;MediaWiki успешно установлена.&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Информацию по работе с этой вики можно найти в [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents справочном руководстве].&lt;br /&gt;
&lt;br /&gt;
== Некоторые полезные ресурсы ==&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Список возможных настроек];&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Manual:FAQ/ru Часто задаваемые вопросы и ответы по MediaWiki];&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Рассылка уведомлений о выходе новых версий MediaWiki].&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Перевод MediaWiki на свой язык]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Узнайте, как бороться со спамом в вашей вики]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
[[Category:Qubot|*]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Facebook_Integration&amp;diff=589</id>
		<title>Qubot Facebook Integration</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Facebook_Integration&amp;diff=589"/>
		<updated>2022-06-27T13:16:37Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Removed redirect to Qubot Facebook Integration/ru&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
[[Category:Integrations|F]]&lt;br /&gt;
&amp;lt;span id=&amp;quot;qubot-facebook-integration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Connecting a bot to Facebook ==&lt;br /&gt;
&lt;br /&gt;
To set up Facebook Messenger as a channel, developers will need to create an app on Facebook, enable webhook integration for the platform to send and receive messages, and subscribe the app to a Facebook page.&lt;br /&gt;
== Step 1 ==&lt;br /&gt;
&lt;br /&gt;
Create an App.&lt;br /&gt;
&lt;br /&gt;
Login to the Facebook developer portal(https://developers.facebook.com/) and go to My Apps.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Click the Create App button, then select an app type Business.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Enter all the relevant details for your app and click Create App.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Your App will be created and you will be redirected to the App setup page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Choose Messenger and click the Set up button to continue. You will be redirected to the Settings page.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Step 2 ==&lt;br /&gt;
&lt;br /&gt;
Get Page Details.&lt;br /&gt;
&lt;br /&gt;
Associate a page with the app and generate the Page Access Token from the Token Generation section. If you do not have a page, you can create a Facebook page here - https://www.facebook.com/pages/create .&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Select your bot, in the left pane select Integrations. Next, select Messenger.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_6.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Select Step 2 and enter your access token in the field.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_7.png]]  [[File:FacebookStep2_8.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Navigate to the Main Settings menu then select Basic Settings, capture the App ID and App Secret and enter it below.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Enter them into the appropriate fields in Step 2 of your bot.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_9.png]]  [[File:FacebookStep2_10.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
From your Facebook account, navigate to the Facebook page you have selected above. Locate the About menu.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep5.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Copy Page ID and enter it below and enter them into the appropriate fields in Step 2 of your bot.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_11.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Step 3 ==&lt;br /&gt;
&lt;br /&gt;
Setup Webhook.&lt;br /&gt;
&lt;br /&gt;
Enable this channel to start the webhook setup process. Click the switch in the top right to activate the channel. Once the channel is activated, the webhook integration is enabled automatically.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Navigate to the Messenger Settings menu and scroll down to the Webhooks section. Under the Webhooks section, select the page you have used to generate the page token and click on Add subscriptions. Check the following subscription fields: messages, messaging_postbacks, message_deliveries, message_reads.&lt;br /&gt;
&lt;br /&gt;
Save the changes.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep3_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Facebook3_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Step 4 ==&lt;br /&gt;
&lt;br /&gt;
Submit the Facebook app for approval.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Once approved, you can enable the Facebook Messenger channel for your bot. For more info on how to submit the app, visit here - https://developers.facebook.com/docs/messenger-platform/app-review#submission .&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Facebook_Integration_En&amp;diff=588</id>
		<title>Qubot Facebook Integration En</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Facebook_Integration_En&amp;diff=588"/>
		<updated>2022-06-27T13:16:21Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Protected &amp;quot;Qubot Facebook Integration En&amp;quot; ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
[[Category:Integrations|F]]&lt;br /&gt;
&amp;lt;span id=&amp;quot;qubot-facebook-integration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Connecting a bot to Facebook ==&lt;br /&gt;
&lt;br /&gt;
To set up Facebook Messenger as a channel, developers will need to create an app on Facebook, enable webhook integration for the platform to send and receive messages, and subscribe the app to a Facebook page.&lt;br /&gt;
== Step 1 ==&lt;br /&gt;
&lt;br /&gt;
Create an App.&lt;br /&gt;
&lt;br /&gt;
Login to the Facebook developer portal(https://developers.facebook.com/) and go to My Apps.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Click the Create App button, then select an app type Business.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Enter all the relevant details for your app and click Create App.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Your App will be created and you will be redirected to the App setup page.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Choose Messenger and click the Set up button to continue. You will be redirected to the Settings page.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Step 2 ==&lt;br /&gt;
&lt;br /&gt;
Get Page Details.&lt;br /&gt;
&lt;br /&gt;
Associate a page with the app and generate the Page Access Token from the Token Generation section. If you do not have a page, you can create a Facebook page here - https://www.facebook.com/pages/create .&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Select your bot, in the left pane select Integrations. Next, select Messenger.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_6.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Select Step 2 and enter your access token in the field.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_7.png]]  [[File:FacebookStep2_8.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Navigate to the Main Settings menu then select Basic Settings, capture the App ID and App Secret and enter it below.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Enter them into the appropriate fields in Step 2 of your bot.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_9.png]]  [[File:FacebookStep2_10.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
From your Facebook account, navigate to the Facebook page you have selected above. Locate the About menu.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep5.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Copy Page ID and enter it below and enter them into the appropriate fields in Step 2 of your bot.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_11.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Step 3 ==&lt;br /&gt;
&lt;br /&gt;
Setup Webhook.&lt;br /&gt;
&lt;br /&gt;
Enable this channel to start the webhook setup process. Click the switch in the top right to activate the channel. Once the channel is activated, the webhook integration is enabled automatically.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Navigate to the Messenger Settings menu and scroll down to the Webhooks section. Under the Webhooks section, select the page you have used to generate the page token and click on Add subscriptions. Check the following subscription fields: messages, messaging_postbacks, message_deliveries, message_reads.&lt;br /&gt;
&lt;br /&gt;
Save the changes.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep3_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Facebook3_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Step 4 ==&lt;br /&gt;
&lt;br /&gt;
Submit the Facebook app for approval.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Once approved, you can enable the Facebook Messenger channel for your bot. For more info on how to submit the app, visit here - https://developers.facebook.com/docs/messenger-platform/app-review#submission .&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Facebook_Integration/ru&amp;diff=586</id>
		<title>Qubot Facebook Integration/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Facebook_Integration/ru&amp;diff=586"/>
		<updated>2022-06-27T13:14:53Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Slavinsky moved page Qubot Facebook Integration to Qubot Facebook Integration/ru: localization&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
[[Category:Integrations|F]]&lt;br /&gt;
&amp;lt;span id=&amp;quot;qubot-facebook-integration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Подключение бота в Facebook ==&lt;br /&gt;
&lt;br /&gt;
Чтобы настроить Facebook Messenger в качестве канала, вам потребуется создать приложение на Facebook,&amp;lt;br&amp;gt;&lt;br /&gt;
включить интеграцию веб-перехватчиков для платформы для отправки и получения сообщений,&amp;lt;br&amp;gt;&lt;br /&gt;
а также подписаться на приложение на странице Facebook.&amp;lt;br&amp;gt;&lt;br /&gt;
== Шаг 1 ==&lt;br /&gt;
&lt;br /&gt;
Создайте приложение.&lt;br /&gt;
&lt;br /&gt;
Войдите на портал разработчиков Facebook https://developers.facebook.com/ и перейдите в раздел «Мои приложения».&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Нажмите кнопку «Создать приложение», затем выберите тип приложения «Бизнес».&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Введите все необходимые данные для вашего приложения и нажмите «Создать приложение».&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Ваше приложение будет создано, и вы будете перенаправлены на страницу настройки приложения.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Выберите Messenger и нажмите кнопку «Настроить», чтобы продолжить. Вы будете перенаправлены на страницу настроек.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep1_4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 2 ==&lt;br /&gt;
&lt;br /&gt;
Сведения о странице.&lt;br /&gt;
&lt;br /&gt;
Свяжите страницу с приложением и сгенерируйте токен доступа к странице в разделе «Создание токена». Если у вас нет страницы, вы можете создать страницу Facebook здесь - https://www.facebook.com/pages/create .&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите вашего бота, в левой панели выберите пункт '''Интеграции'''. Далее выберите Messenger.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_6.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите Шаг 2 и введите этот токен доступа в поле Page Access Token(Токен доступа к странице).&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_7.png]]  [[File:FacebookStep2_8.png|500px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Перейдите в меню «Основные настройки», затем выберите «Основные настройки», запишите App ID(идентификатор приложения) &lt;br /&gt;
и App Secret. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Введите их в соответствующие поля на Шаге 2 вашего бота.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_9.png]]  [[File:FacebookStep2_10.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Из своей учетной записи Facebook перейдите на страницу Facebook, которую вы выбрали выше. Найдите меню '''About'''.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep5.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Скопируйте Page ID и введите их в соответствующие поля на Шаге 2 вашего бота.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep2_11.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 3 ==&lt;br /&gt;
&lt;br /&gt;
Настройка вебхука.&lt;br /&gt;
&lt;br /&gt;
Нажмите переключатель в правом верхнем углу, чтобы активировать канал. После активации канала интеграция с веб-перехватчиком включается автоматически.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Перейдите в меню «Настройки мессенджера» и прокрутите вниз до раздела '''Webhooks section'''. &lt;br /&gt;
В разделе '''Webhooks section''' выберите страницу, которую вы использовали для создания токена страницы, и нажмите '''Add subscriptions'''. &lt;br /&gt;
Проверьте следующие поля подписки: messages, messages_postbacks, message_deliveries, message_reads.&lt;br /&gt;
&lt;br /&gt;
Сохраните изменения&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep3_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Facebook3_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 4 ==&lt;br /&gt;
&lt;br /&gt;
Отправьте приложение Facebook на утверждение.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:FacebookStep4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
После утверждения вы можете включить канал Facebook Messenger для своего бота. &lt;br /&gt;
Для получения дополнительной информации о том, как отправить приложение, посетите https://developers.facebook.com/docs/messenger-platform/app-review#submission .&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Facebook_Integration&amp;diff=587</id>
		<title>Qubot Facebook Integration</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Facebook_Integration&amp;diff=587"/>
		<updated>2022-06-27T13:14:53Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: Slavinsky moved page Qubot Facebook Integration to Qubot Facebook Integration/ru: localization&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Qubot Facebook Integration/ru]]&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.qudata.com//index.php?title=Qubot_Viber_Integration/ru&amp;diff=566</id>
		<title>Qubot Viber Integration/ru</title>
		<link rel="alternate" type="text/html" href="https://wiki.qudata.com//index.php?title=Qubot_Viber_Integration/ru&amp;diff=566"/>
		<updated>2022-06-27T10:35:26Z</updated>

		<summary type="html">&lt;p&gt;Slavinsky: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Qubot]]&lt;br /&gt;
[[Category:Integrations|V]] [[Category:ru]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;float:right; margin-left:0.8em; clear:right;&amp;quot;&lt;br /&gt;
|+[[Main_Page/ru|В начало]]&lt;br /&gt;
|&lt;br /&gt;
'''Lang:'''&lt;br /&gt;
|&lt;br /&gt;
[[Qubot_Viber_Integration|en]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;qubot-viber-integration&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
{{TOCright}}&lt;br /&gt;
== Подключение бота в Viber ==&lt;br /&gt;
&lt;br /&gt;
Для подключения бота следуйте шагам описанным ниже:&lt;br /&gt;
== Шаг 1 ==&lt;br /&gt;
&lt;br /&gt;
Загрузите официальное приложение Viber для своего телефона:  https://www.viber.com/download&lt;br /&gt;
== Шаг 2 ==&lt;br /&gt;
&lt;br /&gt;
Создайте аккаунт Viber:  https://account.viber.com/en/create-account&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ViberStep2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 3 ==&lt;br /&gt;
&lt;br /&gt;
Войдите в админ панель Viber.&amp;lt;br&amp;gt;&lt;br /&gt;
Перейдите на https://partners.viber.com и введите свой номер телефона.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ViberStep3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Вам придет сообщение Viber с кодом, который нужно ввести в поле ввода.&lt;br /&gt;
&lt;br /&gt;
== Шаг 4 ==&lt;br /&gt;
&lt;br /&gt;
Создайте учетную запись бота.&lt;br /&gt;
&lt;br /&gt;
Заполните следующую форму, примите Условия и положения, а затем нажмите '''«Создать учетную запись бота»'''. &amp;lt;br&amp;gt;&lt;br /&gt;
Это новый аккаунт Viber, привязанный к вашему номеру телефона (как администратора), в котором будет работать бот.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ViberStep4.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 5 ==&lt;br /&gt;
&lt;br /&gt;
После создания учетной записи вы получите приватный токен.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ViberStep5.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите вашего бота, в левой панели выберите пункт '''Интеграции'''. Далее выберите Viber.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ViberStep5_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите Шаг 5 и введите в поле токен.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ViberStep5_3.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Шаг 6 ==&lt;br /&gt;
&lt;br /&gt;
Viber позволяет настроить приветственное сообщение для вашего профиля бота, которое отображается пользователям при первом взаимодействии с вашим ботом.&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите вашего бота, в левой панели выберите пункт '''Интеграции'''. Далее выберите Viber.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ViberStep5_2.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Выберите Шаг 6 и введите в поле сообщение.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:ViberStep6.png|700px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Slavinsky</name></author>
		
	</entry>
</feed>