1. واحد سخت افزار سیاق
  2. عمومی - ایزابل، الستیکس، فری پی بی اکس ...
  3. چهارشنبه, 08 شهریور 1391
با درود
من یک منشی دیجیتال (ivr) راه انداخته ام که با زدن هر کلید به یک داخلی راهنمایی می شود . می خواهم پس از پایان مکالمه ، امکان ([color=#008080]پخش یک پیام و ضبط صدای مشتری[/color]) یا (پ[color=#008080]خش یک پیام که از مشتری می خواهد میزان رضایت مندی خود را با زدن کلیدی بین یک تا 3 اعلام کند و سپس دریافت و ثبت کلید[/color]) را ایجاد کنم . خواهشمندم راهنمایی بفرمایید .

با سپاس
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
سلام دوست عزیز
برای انجام این کار میتونید agi نویسی کنید. با php میتونید برنامش رو بنویسید.
مدیر ویپ ایران
مدرس رسمی ویپ در ایران
کانال تلگرام ویپ ایران
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
خواهش میکنم . گفتم که با php میتونید این برنامه رو بنویسید و وقتی یه برنامه php توی استریسک مینویسید باید اونو تو قسمت agi بزارین که بتونین از برنامه ای که نوشتین استفاده کنید.
مدیر ویپ ایران
مدرس رسمی ویپ در ایران
کانال تلگرام ویپ ایران
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
سلام دوست من

این لینک ها میتونه برات مفید باشه که هم نحوه فراخوانی فایل agi رو توضیح داده و هم نمونه ساده داره برا یادگیری

Asterisk cmd AGI - voip-info.org
Asterisk AGI - voip-info.org
A very simple PHPAGI example - Elastix Forums :: Open Source Unified Communications Server
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
من با نرم افزار winscp به جستجوی فایلهای صوتی ضبط شده پرداختم (مثلا en/beep ) . اما نتیجه ای نداشت . این فایل ها در چه مسیری هستند ؟
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
سلام مسیر پیش فرض فایل های صوتی var/lib/asterisk/sounds
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
با سلام مجدد . من agi نویسی را آغاز کردم . دانستم که ابتدا باید در فایل /etc/asterisk/extensions_custom.conf چند خط مانند زیر اضافه کنم :

[CODE][LEFT]include => test1

[test1]
exten => 85,1,Answer
exten => 85,n,Wait(2)
exten => 85,n,AGI(agitest1.php)
exten => 85,n,hangup()
[/LEFT]
[/CODE]

سپس در مسیر /var/lib/asterisk/agi-bin/agitest1.php در فایل agitest1.php یک کد php می نویسیم شبیه به این :
[LEFT][CODE]

#!/usr/bin/php -q

<?php
set_time_limit(30);
ob_implicit_flush(false);
require('include/phpagi.php');
error_reporting(0);
$agi = new AGI();
$agi->answer();
$agi->stream_file("demo-congrats","#";);
do
{
$agi->stream_file("enter-some-digits","#";);
$result = $agi->get_data('beep', 3000, 20);
$keys = $result['result'];
$agi->stream_file("you-entered","#";);
$agi->say_digits($keys);
}
while($keys != '111');
$agi->hangup();
?>
[/CODE]
[/LEFT]
همه همین حد برای agi نویسی می گویند . اما حالا آن را چطور استفاده کنیم ؟ کجا استفاده کنیم ؟ در منوی منشی دیجیتال جطور این را به کار ببریم ؟ مثلا اگر خواستم به ازای زدن عدد 5 در منوی منشی دیجیتال به سراغ این فایل agitest1.php آمده و شروع به اجرای دستورات مرحله به مرحله درون آن بکند ، چطور این ارتباط کد را با منشی تلفنی یا جاهای دیگر برقرار کنم ؟ کسی در این باره بحث نکرده یا من ندیدم . لطفا راهنمایی کنید . مرجعی هست که agi نویسی را step by step آموزش بدهد و چگونگی به کارگیری آن در الستیک را توضیح دهد ؟

در همان برنامه نمونه بالا 85 یعنی چه ؟ یعنی یک extension که باید از قبل ایجاد کرده باشم یا نباید ایجاد شده باشد ؟ در همین برنامه نمونه گفته شده که عدد 888 را بگیریم تا آن را تست کنیم ! این عدد کجای کد فوق تعریف شده ؟ منبع این کد مسیر زیر است :
simple PHPAGI example for Elastix Easy
نگاه کنید به صفحات 141 و 151 و 152 مطلب .
واقعا یک راهنمای مرحله به مرحله مناسب روی این مطلب agi نیافتم .
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
سلام
وقتی شما یک ivr با الستیکس میسازید یک context با عنوان ivr-number ساخته میشه در آدرس [FONT=&amp]etc/asterisk/extensions_additional.conf [/FONT]
داخل اون Context عددی رو که مد نظرتون هست رو بزنید به این صورت
exten => 2000,n,agi(test.php)
با زدن کلید 2000 فایل Test.php اجرا می شود
این فایل test.php رو در آدرس var/lib/asterisk/agi-bin کپی کنید و سطح دسترسی 777 رو بهش بدین
دیگه برنامه نویسی php رو که دیگه خودتون باید انجام بدید
فرمت کلی فایل php به این صورت باید باشد
[PHP]#!/usr/bin/php -q
<?php
require('phpagi.php');
error_reporting(E_ALL);
$agi = new AGI();
$agi->answer();
//codeeeeeee
?>

[/PHP]

برای پخش یک پیام که دستور Streamfile و برای ضبط هم باید از دستور record استفاده کنید . برای گرفتن عدد از میزان رضایت مندی هم شما به چه دیتا بیسی میخواید وصل بشید ؟
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
ممنونم آقای کریمی . agi من کار می کنه و من مشکلی با اجرای کد php ندارم .من این کد را در extensions_custom.php نوشته ام و از طریق آن به برنامه php ام می روم .

[LEFT][CODE]
[agitest]
exten => 1818,1,Answer
exten => 1818,n,Wait(1)
exten => 1818,n,AGI(agitest.php)
exten => 1818,n,Hangup
[/CODE]
[/LEFT]
وقتی با soft phone شماره 1818 را می گیرم ، توابع درون agi ام در فایل agitest.php به درستی اجرا می شوند ، از بانک اطلاعاتی می خوانند و صدارها را پخش می کنند و کلید می گیرند و ...
اکنون سوال اصلی ام اینست که کجا و چگونه باید در منوهای IVR ام (Digital Receptionist) این متصل شدن به 1818 را تعریف کنم . 1818 که یک extension تعریف شده در pbx من نیست و تازه وقتی آنرا تعریف می کنم ، دیگر تابع agi ام با گرفتن 1818 کار نمی کند (شاید هم باید 1818 را از نوع خاصی از extension تعریف کنم؟). در منوی IVR جایی که گفته می شود مثلا با زدن 9 باید چه کنیم چند گزینه وجود دارد : call back , extension , gabcast , ivr , ... کدام را انتخاب کنم و چگونه به 1818 وصلش کنم ؟ و اینکه در جاهای دیگری به جز IVR چطور به سراغ 1818 بروم ؟
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
با الستیکس کار میکنید یا استریسک ؟ اگر با الستیکس کار میکنید و ivr خودتون را ساختید که در قسمت بالا گفتم چه کاری انجام بدید .
نظر
هنوز هیچ نظری ارسال نشده است!
پاسخ پذیرفته شده Pending Moderation
0
رای
بازگشت
با درود . پرسش آغازین این گفتگو به چگونگی برنامه نویسی agi انجامید . از آنجا که این پرسش خود من هم هست که چگونه پس از پایان تماس و پیش از قطع تماس می توانم یک agi را فرابخوانم و برای مثال نظرسنجی کنم یا سپاسگذاری یا ....
لطفا راهنمایی کنید .
نظر
هنوز هیچ نظری ارسال نشده است!
  • صفحه :
  • 1


هنوز به این موضوع پاسخی داده نشده است

دسته بندی ها

سیستم های تلفنی کدباز
  1. 107 پست
  2. 0 زیرمجموعه
سیسکو Cisco
  1. 61 پست
  2. 0 زیرمجموعه
سیستم تلفنی FreePBX
  1. 48 پست
  2. 0 زیرمجموعه
شبکه و زیرساخت
  1. 65 پست
  2. 0 زیرمجموعه
تازه واردین دنیای ویپ
  1. 927 پست
  2. 0 زیرمجموعه