اطلاعیه

بستن
هنوز اطلاعیه ای در دست نیست.

اجرای AGI بعد از HangUp

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    اجرای AGI بعد از HangUp

    با سلام به دوستان و مخصوصا آقای کریمی و خانم وحید
    بنده مشکلی دارم. می خوام برای تماسهای ورودی به الستیکس بعد از اینکه شماره داخلی قطع کرد تلفن تماس گیرنده خارجی قطع نشه و در ادامه یک AGI Script براش اجرا بشه و عملی رو انجام بده. من همه کارها رو انجام دادم و یک context جدید ایجاد کردم و در اون context اسکریپت agi رو فراخونی کردم

    [execute-agi]
    exten => 900,1,Answer
    (exten => 900,n,AGI(testagi.php
    exten => 900,n,Hangup
    سپس در فایل extensions_override_elastix درون کانتکست [macro-hangupcall] اونجایی که Hangup فراخوانی میشه عبارت exten => s,n(theend),Hangup رو به عبارت زیر تغییر دادم


    (exten => s,n(theend),GoTo(execute-agi,900,1
    exten => s,n,Hangup
    قاعدتا باید قبل از اینکه hangup اتفاق بیوفته agi اجرا بشه ولی مشکل اینجاست که وقتی agi debug رو فعال می کنم خطای زیر نمایش داده میشه


    511The command connot be executed on a dead channel
    این خطا بدین معنیه که agi نمیتونه رو کانال hangup شده اجرا شه. کلی در اینترنت سرچ کردم و راههای نختلفی رو امتحان کردم ولی هیچکدوم جواب نداد
    مثلا استفاده از deadagi بجای agi و یا استفاده از آپشن g در کامند dial برای ادامه dialplan بعد از hangup
    لطفا اگه امکانش هست آقای کریمی خانم وحید و یا دوستانی که در این زمینه تجربه دارن بنده رو راهنمایی کنن ممنون میشم.
    کلا اگه بخواییم یک اسکریپت agi رو برای یک طرف تماس بعد از قطع تماس از سوی طرف مقابل اجرا کنیم چه باید بکنیم؟
    با تشکر منتظر جواباتون هستم

    #2
    سلام
    ورژن استریکستون چنده؟
    Instagram : https://www.instagram.com/iranlinuxforum

    Voip Trainer - Asterisk - Elastix - Agi Programming- NewRock

    Voip Expert :ASTERISK-ELASTIX-NewRock Certified-With Experience of Working With
    Sangoma-Digium-Openvox-Synway-Atcom-Quintum Tenor-Polycom-Yealink-Rtx-Snom
    Cisco Collaboration - CME-CUCM-CUPs-CUC-WEBEX
    LPI ( Fundamental - LPI1 and LPI2 ) - Monitoring: ZABBIX-VOIPMONITOR-NAGIOS - CCNA

    Linkedin Profile : https://www.linkedin.com/in/masuma-vahid-26b17b66/

    کامنت


      #3
      سلام ممنون از پاسخگوییتون خانم وحید.
      من روی الستیکس 2.3 کار می کنم که ورژن استریسکش 1.8 هستش البته ورژن الستیکس 2.4 رو هم دارم که ورژن استریسکش 11.17 هستش ولی روی اون تست نکردم. به نظر شما از ورژن استریسکه؟ من خیلی تو نت سرچ کردم ولی همه جوابها به این ختم شده که نمیشه این کارو به راحتی انجام داد چون کانال ورودی hangup میشه ولی خودم راستش قانع نشدم. مطمئنا راه حلی هست. من مشکلم با agi نیست مشکلم با هنگ اپ شدن کاناله. اصلا فرض کنید بحث agi نیست و من فقط میخوام بعد از اینکه تماس از طرف داخل قطع شد کانال تماس گیرنده قطع نشه و مثلا بره رو ivr یا مثلا یه پیغامی برای تماس گیرنده پخش بشه ولی تو هر داکیومنتی خوندم گفته چون کانال هنگ اپ میشه هر کاری که با کانال سر و کار داره مثلا توابع playback یا background قابل اجرا نیست. لطفا اگه راهی به ذهنتون میرسه بنده رو راهنمایی کنید. با تشکر

      کامنت


        #4
        سلام بله لطف کنید روی الستیکس 2.4 به بالا تست کنید.
        اکستن h برای این کار استفاده میشه.
        شما یه تست ساده بگیر:
        کد:
        [test]
        exten => 22,1,dial(sip/100)
        exten => h,1,verbose(ok)
        با کد بالا بعد از اینکه داخلی ۱۰۰ تماس رو قطع کنه تماس به اکستن h میره و لاگ اون داخل کنسول دیده میشه.
        آخرین ویرایش توسط masome vahid; در تاریخ/ساعت 03-02-2016, 04:06 PM. دلیل: H
        Instagram : https://www.instagram.com/iranlinuxforum

        Voip Trainer - Asterisk - Elastix - Agi Programming- NewRock

        Voip Expert :ASTERISK-ELASTIX-NewRock Certified-With Experience of Working With
        Sangoma-Digium-Openvox-Synway-Atcom-Quintum Tenor-Polycom-Yealink-Rtx-Snom
        Cisco Collaboration - CME-CUCM-CUPs-CUC-WEBEX
        LPI ( Fundamental - LPI1 and LPI2 ) - Monitoring: ZABBIX-VOIPMONITOR-NAGIOS - CCNA

        Linkedin Profile : https://www.linkedin.com/in/masuma-vahid-26b17b66/

        کامنت


          #5
          عجیبه واقعا. متاسفانه روی الستیکس 2.4 هم جواب نداد و همون ارور
          511The command cannot be executed on a dead channel
          رو داد. واقعا برام سواله که چطور میشه اینکارو کرد؟ شما خودتون واقعا اینو تست میکنید جواب می گیرید؟ لطفا اگه تجربه این رو دارید بنده رو راهنمایی کنید.

          کامنت


            #6
            دوستان لطفا بنده رو راهنمایی بفرمایید من تست کردم به هیچ وجه بعد از اینکه کانال توسط called channel قطع میشه من نمیتونم فایل صوتی برای calling channel پخش کنم. مشکل از کجاست به نظرتون؟

            کامنت


              #7
              خانم وحید این کدی که گذاشتین رو خودتون تست می کنید جواب میده واقعا؟ من دقیقا همین کد رو تست میکنم کانال هنگ اپ میشه وچیزی پخش نمیشه.

              کامنت


                #8
                سلام کد جواب میده ولی چیزی پخش نمیشه منظور من این بود که در لاگ نمایش داده میشه بهتر بود به جای playback از یه اپلیکیشنی مثل verbose استفاد میکردیم
                کلا playback در اکستن h نمیتونه چیزی رو پخش کنه
                در مورد فراخونی agi در اکستن h در الستیکس ۲.۴ مشکلی نیست و به درستی اجرامیشه منتها بخشی از agi که قراره چیزی پخش بشه کار نخواهد کرد
                منان مثال رو صرفا برای نحوه ی استفاده از h گفتم وگرنه منظورم این بود که AGI اجرا خواهد شد.
                شما اگر دقیقا هدفت این باشه که بخوای بعد از قطع تماس ، تماس گیرنده یه فایلی رو بشنوه باید از آپشن g استفاده کنی:
                کد:
                [test]
                exten => 22,1,dial(sip/100,,g)
                exten => 22,2,playback(hello)
                Instagram : https://www.instagram.com/iranlinuxforum

                Voip Trainer - Asterisk - Elastix - Agi Programming- NewRock

                Voip Expert :ASTERISK-ELASTIX-NewRock Certified-With Experience of Working With
                Sangoma-Digium-Openvox-Synway-Atcom-Quintum Tenor-Polycom-Yealink-Rtx-Snom
                Cisco Collaboration - CME-CUCM-CUPs-CUC-WEBEX
                LPI ( Fundamental - LPI1 and LPI2 ) - Monitoring: ZABBIX-VOIPMONITOR-NAGIOS - CCNA

                Linkedin Profile : https://www.linkedin.com/in/masuma-vahid-26b17b66/

                کامنت


                  #9
                  ممنون خانم وحید از جوابتون
                  بله آپشن g رو بنده تست کرده بودم ولی مشکلش اینه در الستیکس تو هر ورژنش فقط برای تماسهای داخلی کار می کنه و برای تماسهای incoming عمل نمیکنه یعنی agi script رو به درستی اجرا نمیکنه. اگر امکاناتشو دارید میتونید تست کنید و به جواب بنده می رسید.
                  بالاخره بعد از کلی کلنجار رفتن در کد extensions.conf و بررسی لاگها تغییراتی رو در فایل extensions.conf انجام دادم و تونستم به نتیجه برسم ممنون از پیگیریتون

                  کامنت


                    #10
                    تماس ورودی و خروجی فرقی نمیکنه. در حقیقت شما باید کانتکست مورد نظر رو به درستی تغییر بدین .
                    باید کانتکست آی وی آر رو پیدا کنین و تغییراتتون رو در اون اعمال کنید.

                    من قلبی بزرگ با رویاهایی بزرگ دارم. دانسته هایمان را با هم به اشتراک بگذاریم.

                    کامنت

                    درباره انجمن منطقه لینوکسی ها

                    انجمن منطقه لینوکسی ها با هدف ارتقاء سطح علمی کاربران در سطح جهانی و همچنین کمک به بالا بردن سطح علمی عمومی در زمینه های تخصصی فوق پایه گذاری شده است. انجمن منطقه لینوکسی ها از طریق کارشناسان و متخصصان پاسخگوی سوالات گوناگون کاربران مبتدی یا پیشرفته میباشد تا حد امکان تلاش شده که محیطی متنوع و کاربر پسند و به دور از هرگونه حاشیه جهت فعالیت کاربران در این انجمن ایجاد شود. لذا ما به صورت مستمر برای پیشرفت کمی و کیفی محتوی و اطلاعات انجمنمان میکوشیم که این برای ما ارزشمند و حائز اهمیت است. کلیه حقوق،اطلاعات و مقالات در این انجمن متعلق به سایت منطقه لینوکسی ها میباشد، و هرگونه نسخه برداری بدون ذکر منبع مورد پیگرد قانونی خواهد شد.

                    شبکه های اجتماعی
                    در حال انجام ...
                    X