راهنمای اتصال مرکز تلفن به حسابیکس (Hesabix Telephony Connector)
[ویرایش | ویرایش مبدأ]این راهنما برای مدیران سیستم، مدیران تلفن و کاربران نهایی نوشته شده است. هدف آن توضیح سادهٔ نصب، پیکربندی و استفاده از کانکتور تلفنی حسابیکس روی سرور Issabel یا Asterisk است.
این راهنما برای توسعهدهندگان نیست.
کانکتور چیست و چه کاری انجام میدهد؟
[ویرایش | ویرایش مبدأ]Hesabix Telephony Connector یک برنامهٔ سبک است که روی سرور تلفن شما (Issabel/Asterisk) نصب میشود و آن را به حسابیکس وصل میکند.
بدون کانکتور
[ویرایش | ویرایش مبدأ]- حسابیکس نمیتواند تماسهای ورودی/خروجی را ببیند
- Screen Pop، Click-to-Call و تاریخچه تماس کار نمیکند
- وضعیت مرکز تلفن در حسابیکس «آفلاین» میماند
با کانکتور
[ویرایش | ویرایش مبدأ]- رویدادهای تماس از Asterisk به حسابیکس ارسال میشود
- حسابیکس میتواند دستور تماس (مثل برقراری تماس خروجی) را به سرور تلفن بفرستد
- اپراتورها در وب، موبایل و دسکتاپ میتوانند:
- هنگام زنگ خوردن، اطلاعات تماسگیرنده را ببینند (Screen Pop)
- از روی پروفایل مشتری تماس خروجی بگیرند (Click-to-Call)
- تاریخچه تماس را ببینند
- وضعیت آنلاین/آفلاین مرکز تلفن را مشاهده کنند
نکته مهم درباره معماری
[ویرایش | ویرایش مبدأ]کانکتور روی سرور تلفن شما نصب میشود، نه روی سرور حسابیکس.
| کاربر (اپراتور) | ← → | حسابیکس (ابر/سرور شما) |
| کانکتور | ← → | Issabel / Asterisk (سرور تلفن) |
کانکتور فقط از سرور تلفن به سمت حسابیکس خروجی HTTPS میزند؛ معمولاً نیازی به باز کردن پورت ورودی روی فایروال سرور تلفن نیست.
پیشنیازها
[ویرایش | ویرایش مبدأ]سختافزار و شبکه
[ویرایش | ویرایش مبدأ]- یک سرور Issabel یا Asterisk فعال
- دسترسی root به سرور تلفن (با یا بدون دستور
sudo) - اتصال اینترنت از سرور تلفن به آدرس API حسابیکس (پورت ۴۴۳ / HTTPS)
- Asterisk AMI فعال (پورت پیشفرض: ۵۰۳۸)
نرمافزار
[ویرایش | ویرایش مبدأ]اسکریپت نصب در صورت نبود، این موارد را خودکار نصب میکند:
- Python 3
- rsync
- curl
- git
توزیعهای پشتیبانیشده
[ویرایش | ویرایش مبدأ]| خانواده | نمونه توزیعها | مدیر بسته |
|---|---|---|
| Debian | Debian، Ubuntu | apt-get
|
| RHEL | CentOS، Rocky، Alma، Issabel | yum یا dnf
|
دسترسیهای لازم در حسابیکس
[ویرایش | ویرایش مبدأ]قبل از نصب کانکتور، در پنل حسابیکس این کارها انجام شود:
- افزونه تلفنی / Telephony برای کسبوکار فعال باشد
- یک مرکز تلفن (PBX) ساخته شود
- توکن Connector از تنظیمات مرکز تلفن کپی شود
- (در صورت نیاز) شناسه کسبوکار و شناسه مرکز تلفن یادداشت شود
آمادهسازی در حسابیکس (قبل از نصب)
[ویرایش | ویرایش مبدأ]گام ۱: فعالسازی افزونه
[ویرایش | ویرایش مبدأ]- وارد حسابیکس شوید
- به بخش مارکتپلیس / افزونهها بروید
- افزونه تلفنی (Telephony) را برای کسبوکار خود فعال کنید
گام ۲: ساخت مرکز تلفن
[ویرایش | ویرایش مبدأ]- به بخش مرکز تلفن / Telephony بروید
- یک مرکز تلفن جدید بسازید (نام، توضیحات و …)
- نوع اتصال: Issabel / Asterisk (یا معادل آن در رابط کاربری)
گام ۳: دریافت اطلاعات اتصال
[ویرایش | ویرایش مبدأ]از صفحهٔ تنظیمات مرکز تلفن این موارد را یادداشت کنید:
| مورد | توضیح | مثال |
|---|---|---|
| آدرس API حسابیکس | آدرس سرویس حسابیکس شما | https://hsxn.hesabix.ir
|
| شناسه کسبوکار (Business ID) | عدد شناسه کسبوکار | 12
|
| شناسه مرکز تلفن (PBX ID) | عدد شناسه مرکز تلفن | 3
|
| توکن Connector | رشتهٔ امن اتصال | hsx_tel_...
|
هشدار امنیتی: توکن را مثل رمز عبور نگه دارید. در اختیار کسی قرار ندهید.
نصب کانکتور
[ویرایش | ویرایش مبدأ]نصب روی سرور تلفن انجام میشود (SSH به Issabel/Asterisk).
روش پیشنهادی: نصب یکخطی
[ویرایش | ویرایش مبدأ]اگر سیستم شما sudo دارد (مثلاً Ubuntu):
curl -fsSL https://source.hesabix.ir/hesabix/arc/raw/branch/master/extraScripts/HesabixTelephonyConnector/install.sh | sudo bash
اگر sudo ندارید (مثلاً Debian یا Issabel با ورود مستقیم root):
curl -fsSL https://source.hesabix.ir/hesabix/arc/raw/branch/master/extraScripts/HesabixTelephonyConnector/install.sh | bash
تغییر آدرس API هنگام نصب
[ویرایش | ویرایش مبدأ]
پیشفرض آدرس API برابر https://hsxn.hesabix.ir است. اگر سرور اختصاصی دارید:
curl -fsSL https://source.hesabix.ir/hesabix/arc/raw/branch/master/extraScripts/HesabixTelephonyConnector/install.sh \
| HESABIX_API_URL=https://my-api.example.com bash
مراحلی که اسکریپت خودکار انجام میدهد
[ویرایش | ویرایش مبدأ]- تشخیص سیستمعامل (Debian/Ubuntu یا Issabel/CentOS/RHEL)
- نصب پیشنیازها در صورت نیاز
- دانلود کانکتور از مخزن حسابیکس
- نصب دستور
hesabix-pbxدر سیستم - اجرای ویزارد پیکربندی
- ثبت و فعالسازی سرویس
systemd
مسیر نصب پیشفرض
[ویرایش | ویرایش مبدأ]/opt/HesabixTelephonyConnector
ویزارد پیکربندی (اولین بار)
[ویرایش | ویرایش مبدأ]بعد از نصب، ویزارد از شما میپرسد:
| سؤال | توضیح | پیشفرض |
|---|---|---|
| آدرس API حسابیکس | آدرس سرویس حسابیکس | https://hsxn.hesabix.ir
|
| شناسه کسبوکار | Business ID از حسابیکس | — |
| شناسه مرکز تلفن | PBX ID از حسابیکس | — |
| توکن Connector | از تنظیمات مرکز تلفن | — |
| آدرس AMI | معمولاً همان سرور محلی | 127.0.0.1
|
| پورت AMI | پورت Asterisk Manager | 5038
|
| کاربر AMI | نام کاربری AMI | hesabix
|
| رمز AMI | رمز کاربر AMI | — |
| ساخت کاربر AMI؟ | آیا کانکتور کاربر را در manager.conf بسازد؟
|
معمولاً N مگر مطمئن نباشید
|
نکته: اگر Issabel از قبل کاربر AMI دارد، همان را وارد کنید. در غیر این صورت میتوانید با پاسخ y اجازه دهید کانکتور کاربر را بسازد.
پیکربندی در این فایل ذخیره میشود:
/opt/HesabixTelephonyConnector/.env
تست اتصال
[ویرایش | ویرایش مبدأ]بعد از نصب، حتماً تست کنید:
hesabix-pbx test
این دستور دو تست انجام میدهد:
- تست AMI — اتصال به Asterisk و ورود با کاربر AMI
- تست Heartbeat حسابیکس — ارسال سیگنال زنده به API حسابیکس
اگر هر دو موفق باشند، در حسابیکس وضعیت مرکز تلفن باید آنلاین (Online) شود.
برای مشاهده وضعیت کلی:
hesabix-pbx status
دستورات روزمره (CLI)
[ویرایش | ویرایش مبدأ]همهٔ دستورات زیر روی سرور تلفن و با دسترسی root اجرا میشوند.
| دستور | کاربرد |
|---|---|
hesabix-pbx status
|
نمایش وضعیت سرویس، سیستمعامل، API، AMI و … |
hesabix-pbx test
|
تست AMI و اتصال به حسابیکس |
hesabix-pbx configure
|
تغییر توکن، آدرس API، تنظیمات AMI |
hesabix-pbx start
|
شروع سرویس کانکتور |
hesabix-pbx stop
|
توقف سرویس |
hesabix-pbx restart
|
ریاستارت سرویس |
hesabix-pbx update
|
بهروزرسانی کانکتور از مخزن حسابیکس |
hesabix-pbx reinstall
|
نصب مجدد (فایل .env حفظ میشود)
|
hesabix-pbx logs
|
مشاهده آخرین لاگها (پیشفرض ۸۰ خط) |
hesabix-pbx logs 200
|
مشاهده ۲۰۰ خط آخر لاگ |
hesabix-pbx follow
|
مشاهده زندهٔ لاگ (مثل tail -f)
|
hesabix-pbx uninstall
|
حذف سرویس و دستور CLI |
hesabix-pbx help
|
نمایش راهنمای دستورات |
مثال: اجرا با sudo
[ویرایش | ویرایش مبدأ]sudo hesabix-pbx status
sudo hesabix-pbx test
sudo hesabix-pbx update
مثال: اجرا بدون sudo (کاربر root)
[ویرایش | ویرایش مبدأ]hesabix-pbx status
hesabix-pbx test
hesabix-pbx update
بهروزرسانی کانکتور
[ویرایش | ویرایش مبدأ]برای دریافت آخرین نسخه:
hesabix-pbx update
این دستور:
- پیشنیازها را بررسی میکند
- فایلهای جدید را دانلود میکند
- سرویس را ریاستارت میکند
- فایل
.envشما را حفظ میکند
بعد از بهروزرسانی:
hesabix-pbx status
hesabix-pbx test
تغییر تنظیمات بعد از نصب
[ویرایش | ویرایش مبدأ]تغییر توکن، API یا AMI
[ویرایش | ویرایش مبدأ]hesabix-pbx configure
hesabix-pbx restart
hesabix-pbx test
موارد رایج تغییر
[ویرایش | ویرایش مبدأ]- توکن جدید بعد از لو رفتن توکن قبلی
- آدرس API بعد از تغییر دامنه حسابیکس
- رمز AMI بعد از تغییر در Asterisk
پیکربندی دستی (بدون ویزارد)
[ویرایش | ویرایش مبدأ]اگر ترجیح میدهید فایل را مستقیم ویرایش کنید:
cp /opt/HesabixTelephonyConnector/config.example.env /opt/HesabixTelephonyConnector/.env
nano /opt/HesabixTelephonyConnector/.env
hesabix-pbx restart
hesabix-pbx test
نمونه محتوای فایل .env
[ویرایش | ویرایش مبدأ]HESABIX_API_URL=https://hsxn.hesabix.ir
HESABIX_BUSINESS_ID=1
HESABIX_PBX_ID=1
HESABIX_CONNECTOR_TOKEN=hsx_tel_replace_me
AMI_HOST=127.0.0.1
AMI_PORT=5038
AMI_USER=hesabix
AMI_SECRET=change_me
کاربرد برای کاربران حسابیکس
[ویرایش | ویرایش مبدأ]بعد از اتصال موفق، این امکانات (بسته به فعال بودن افزونه و دسترسی کاربر) در دسترس است:
برای اپراتور (فروش / پشتیبانی)
[ویرایش | ویرایش مبدأ]- Screen Pop: هنگام زنگ خوردن، نام مشتری، مانده حساب و اطلاعات مرتبط نمایش داده میشود
- Click-to-Call: از پروفایل مشتری میتوان تماس خروجی گرفت
- تاریخچه تماس: مشاهده تماسهای قبلی هر مشتری
- ثبت نتیجه تماس: یادداشت و پیگیری بعد از مکالمه
برای مدیر تلفن
[ویرایش | ویرایش مبدأ]- مشاهده وضعیت آنلاین/آفلاین مرکز تلفن
- نگاشت کاربر حسابیکس ↔ داخلی تلفن
- تنظیمات شناسایی شماره و رفتار Screen Pop
برای مدیر سیستم
[ویرایش | ویرایش مبدأ]- مانیتورینگ اتصال از طریق
hesabix-pbx status - بررسی لاگها با
hesabix-pbx logs - بهروزرسانی و نگهداری با
hesabix-pbx update
عیبیابی (مشکلات رایج)
[ویرایش | ویرایش مبدأ]۱. مرکز تلفن در حسابیکس آفلاین است
[ویرایش | ویرایش مبدأ]- روی سرور تلفن:
hesabix-pbx status - تست اتصال:
hesabix-pbx test - بررسی لاگ:
hesabix-pbx logs - مطمئن شوید توکن، Business ID و PBX ID درست است
- مطمئن شوید سرور تلفن به آدرس API دسترسی HTTPS دارد
۲. تست AMI ناموفق است
[ویرایش | ویرایش مبدأ]- Asterisk در حال اجرا باشد
- پورت AMI (معمولاً ۵۰۳۸) باز باشد — فقط روی localhost کافی است
- کاربر و رمز AMI درست باشد
- در صورت نیاز:
asterisk -rx "manager reload"
۳. تست API حسابیکس ناموفق است
[ویرایش | ویرایش مبدأ]- آدرس
HESABIX_API_URLرا بررسی کنید (بدون اسلش اضافه در انتها) - DNS و فایروال سرور تلفن را بررسی کنید
- توکن را در حسابیکس تجدید کنید و با
hesabix-pbx configureوارد کنید
۴. دستور sudo شناخته نمیشود
[ویرایش | ویرایش مبدأ]با کاربر root وارد شوید و دستور را بدون sudo اجرا کنید:
hesabix-pbx status
۵. بعد از بهروزرسانی مشکل پیش آمد
[ویرایش | ویرایش مبدأ]hesabix-pbx reinstall
hesabix-pbx test
۶. سرویس اجرا نمیشود
[ویرایش | ویرایش مبدأ]hesabix-pbx status
hesabix-pbx logs
systemctl status hesabix-telephony-connector
نکات امنیتی
[ویرایش | ویرایش مبدأ]- کانکتور فقط به حسابیکس خروجی HTTPS میزند — نیازی به باز کردن پورت ورودی روی اینترنت نیست
- پورت AMI (۵۰۳۸) را به اینترنت باز نکنید — فقط localhost یا شبکه داخلی
- فایل
.envحاوی توکن و رمز AMI است؛ مجوز آن600است - اگر توکن لو رفت:
- در حسابیکس توکن جدید بسازید
- روی سرور:
hesabix-pbx configure - سپس:
hesabix-pbx restart
حذف کانکتور
[ویرایش | ویرایش مبدأ]hesabix-pbx uninstall
در پایان از شما پرسیده میشود آیا فایل .env نگه داشته شود یا نه.
- نگه داشتن .env — برای نصب مجدد بعدی مفید است
- حذف کامل — همهٔ فایلها پاک میشود
سوالات متداول (FAQ)
[ویرایش | ویرایش مبدأ]آیا کانکتور روی سرور حسابیکس نصب میشود؟
[ویرایش | ویرایش مبدأ]خیر. روی سرور Issabel/Asterisk نصب میشود.
آیا باید پورت جدیدی روی فایروال باز کنم؟
[ویرایش | ویرایش مبدأ]معمولاً خیر. فقط خروجی HTTPS به حسابیکس لازم است.
آیا با FreePBX هم کار میکند؟
[ویرایش | ویرایش مبدأ]اگر Asterisk AMI استاندارد داشته باشد، معمولاً بله. تمرکز رسمی روی Issabel است.
آدرس پیشفرض API چیست؟
[ویرایش | ویرایش مبدأ]چطور بفهمم همهچیز درست کار میکند؟
[ویرایش | ویرایش مبدأ]hesabix-pbx testهر دو تست را پاس کند- در حسابیکس وضعیت مرکز تلفن «آنلاین» باشد
- یک تماس تست بگیرید و Screen Pop را در حسابیکس ببینید
خلاصه دستورات پرکاربرد
[ویرایش | ویرایش مبدأ]# نصب (یکخطی)
curl -fsSL https://source.hesabix.ir/hesabix/arc/raw/branch/master/extraScripts/HesabixTelephonyConnector/install.sh | bash
# وضعیت و تست
hesabix-pbx status
hesabix-pbx test
# تغییر تنظیمات
hesabix-pbx configure
hesabix-pbx restart
# بهروزرسانی
hesabix-pbx update
# لاگ
hesabix-pbx logs
hesabix-pbx follow