# huesos Basis for developing chat-robots with "Web App" technology for Telegram ## Installation ### AnangoDB 1. Create a Graph with the specified values **Name:** catalog **edgeDefinition:** entry **fromCollections:** categoy, product **toCollections:** category 2. Create a Graph with the specified values **Name:** sessions **edgeDefinition:** connect **fromCollections:** account **toCollections:** session 3. Create indexes for the "product" collection **Type:** "Inverted Index" **Fields:** name.ru **Analyzer:** "text_ru" **Search field:** true **Name:** name_ru *Add indexes for all search parameters and for all languages (search language is selected based on the user's language, otherwise from the default language specified in the active settings from **settings** collection document)* *See fields in the `mirzaev/arming_bot/models/product` **name.ru**, **description.ru** and **compatibility.ru*** 4. Create a View with the specified values **type:** search-alias (you can also use "arangosearch") **name:** **product**s_search **indexes:** ` "indexes": [ { "collection": "product", "index": "title_ru" (THIS IS AN EXAMPLE) } ] ` ### NGINX 1. Example of NGINX server file ` location / { try_files $uri $uri/ /index.php; } location ~ /(?categories|products) { root /var/www/arming_bot/mirzaev/arming_bot/system/storage; try_files $uri =404; } location ~ \.php$ { ... } ` ### SystemD (or any alternative you like) 1. Execute: `sudo cp telegram-huesos.service /etc/systemd/system/telegram-huesos.service` *before you execute the command think about **what it does** and whether the **paths** are specified correctly* *the configuration file is very simple and you can remake it for any alternative to SystemD that you like* ## Settings Settings of chat-robot and Web App Make sure you have a **settings** collection (can be created automatically) and at least one document with the "status" parameter set to "active" ` { "status": "active" } ` ### language Language for system messages if user language could not be determined **Value:** en ## Suspensions System of suspensions of chat-robot and Web App Make sure you have a **suspension** collection (can be created automatically) ` { "end": 1726068961, "targets": { "chat-robot": true, "web app": true } "access": { "tester": true, "developer": true }, "description": { "ru": "Разрабатываю каталог, поиск и корзину", "en": "I am developing a catalog, search and cart" } } `