Task description:
A specialist is needed to fully install and configure the working connection on our server.
We have:
- Hetzner Ubuntu server with a public IP;
- website on OpenCart/ocStore;
- aaPanel on the server;
- SIP number Kyivstar with IP authorization;
- Telegram bot @msm_order_bot;
- the task is to create a custom system without KeyCRM, Bitrix24, SendPulse, and other CRMs.
Install and configure Asterisk
Requirements:
- install or restore Asterisk on Ubuntu;
- connect the Kyivstar SIP trunk via IP authorization;
- use PJSIP;
- configure incoming calls;
- and outgoing calls
- configure Asterisk to start automatically after server reboot.
3. Configure IVR
4. Link Asterisk with n8n via webhook
5. Install and configure n8n
6. Configure the Telegram bot
The Telegram bot should continue the script after the call.
7. Bind the Telegram bot to the OpenCart/ocStore website database
8. Save applications
9. SMS if the client does not have Telegram
Asterisk Security
It is essential to set up protection so that no one can call through our SIP trunk.
Requirements:
- allow SIP/PJSIP port only from Kyivstar IP and trusted IPs;
- close SIP to the entire internet;
- configure RTP only in the required range;
- disable anonymous / guest SIP calls;
- prohibit outgoing calls without authorization;
- prohibit international, premium, and unknown destinations;
- configure Fail2Ban;
- use complex passwords for internal subscribers;
- close AMI/ARI from external access;
- do not leave FreePBX/control panel open to the outside if it will be used;
- enable CDR and call logs.
The work is considered completed if:
1. Incoming (outgoing) call from Kyivstar reaches Asterisk.
2. A greeting is played.
3. Pressing 1 sends a webhook doors to n8n.
4. Pressing 2 sends a webhook loft to n8n.
5. Pressing 3 sends a webhook complaint to n8n.
6. A missed call sends a webhook missed_call.
7. n8n creates an application ID.
8. The Telegram link opens the correct script.
9. Before the script, the client confirms consent.
10. The fact of consent is saved.
11. The bot reads products and prices from the OpenCart/ocStore website database.
12. The bot shows the product, price, photo, and link to the website.
13. After the client's responses, the application is saved.
14. The administrator receives the application in Telegram.
15. SIP is protected from external access.
16. International and unknown outgoing calls are prohibited.
17. Fail2Ban is configured.
18. After the server reboot, Asterisk and n8n start automatically.
19. The website and aaPanel continue to work.
20. A brief instruction is provided.