From: "Dmitry Akindinov" Received: by mx.demos.su (CommuniGate Pro PIPE 5.0.14) with PIPE id 548796040; Thu, 25 Jul 2013 01:17:49 +0400 X-Spam-Status: No, hits=0.5 required=5.0 tests=AWL,BAYES_00,FUZZY_XPILL, RP_MATCHES_RCVD,SPF_HELO_PASS,SPF_PASS autolearn=no version=3.3.2-st2.demos X-Spam-Level: X-Spam-Checker-Version: SpamAssassin 3.3.2-st2.demos (2011-06-06) X-Spam-Report: 0.5 points, 5.0 required; * -0.0 SPF_HELO_PASS SPF: HELO matches SPF record * -0.0 SPF_PASS SPF: sender matches SPF record * -0.3 RP_MATCHES_RCVD Envelope sender domain matches handover relay domain * 2.8 FUZZY_XPILL BODY: Attempt to obfuscate words in spam * -0.5 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -1.5 AWL AWL: From: address is in the auto white-list Received: from mail.moscow.stalker.com ([89.175.185.228] verified) by mx.demos.su (CommuniGate Pro SMTP 5.0.14) with ESMTP id 548796039 for CGatePro@mx.ru; Thu, 25 Jul 2013 01:17:42 +0400 Received: from [37.204.175.169] (account dimak@mail.moscow.stalker.com HELO [192.168.0.112]) by mail.moscow.stalker.com (CommuniGate Pro SMTP 6.0.6k) with ESMTPSA id 37947128 for CGatePro@mx.ru; Thu, 25 Jul 2013 01:17:33 +0400 Message-ID: <51F0446A.60400@stalker.com> Date: Thu, 25 Jul 2013 01:17:30 +0400 Organization: Stalker Labs User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:13.0) Gecko/20120614 Thunderbird/13.0.1 MIME-Version: 1.0 To: CommuniGate Pro Russian Discussions Subject: Re: [CGP] =?KOI8-R?Q?=E9=D3=CB=CC=C0=DE=C5=CE=C9=C5_=CF=D0=D2=C5?= =?KOI8-R?Q?=C4=C5=CC=C5=CE=CE=D9=C8_=CE=CF=CD=C5=D2=CF=D7_=C9=DA_=C4?= =?KOI8-R?Q?=CF=CE=C1=C2=CF=D2=C1?= References: In-Reply-To: Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit Здравствуйте, On 2013-07-25 00:17, alex sss wrote: > 16.07.13, Dmitry Akindinov написал(а): >> Здравствуйте, >> >> On 2013-07-16 21:26, alex sss wrote: >>> Доброго времени суток! >>> >>> Есть инстанция коммунигейта 6.0.5. Входящий звонок обрабатывается >>> аккаунтом pbx. В процессе обработки входящего звонка есть возможность >>> донабрать внутренний номер. >>> Возникла необходимость исключить часть внутренних номеров из донабора. >>> Как это сделать? >> >> 1. Решение "в лоб": подправить reception.sppi, определив массивчик >> запрещённых "экстеншенов" в начале скрипта (в начале функции doSwitchBoard) >> >> forbidden = TextToObject("(222,252,267)"); >> >> и потом в строках 119-120 >> >> if IsString(command) then >> toCall = prefix + command; >> >> добавить >> if Find(toCall,forbidden) >= 0 then toCall = "error"; end if; > > Попробывал. Не поехало. > Вставил: > procedure doSwitchBoard(targetAccount,prefs) is > customPrompt = > ReadStorageFile(fullName("receptionprompt.wav",targetAccount)); > forbidden = TextToObject("(102,103)"); > if customPrompt != null then > .... > и > > if IsString(command) then > toCall = prefix + command; > if Find(toCall,forbidden) >= 0 then toCall = "error"; end if; > elif command == null then // time-out w/o any digit > toCall = "error"; command = ""; > end if; > > Более, того. В логе я не вижу вызова файлика reception.sppi. Из sppi > есть только: > callerleg.sppi(bridgeCaller) started > при входящем звонке. reception.sppi - часть pbx.sppr, котороая, собственно, проигрываеит меню и предлагает ввести экстеншен. Ну вставьте ещё syslog("About to call " + String(toCall) + ", looking for it in " + ObjectToString(forbidden)); if Find(toCall,forbidden) >= 0 then toCall = "error"; end if; Это должно выдать строчку в лог при донаборе экстеншена. > Заранее благодарю > >> 2. Чуть красивее: определить группу forbidden, запретить почту и звонки >> в неё, добавить в неё аккаунты, на которые нельзя звонить через >> автосекретаря. В reception.sppi поправить функцию >> >> function connectTo(toWhom) is >> >> добавив в её начало код: >> >> forbidden = ReadGroupMembers("forbidden@" + MyDomain()); >> if isArray(forbidden) then >> index = Length(forbidden); >> toWhomRoute = RouteAddress(toWhom,"signal"); >> while index > 0 loop >> index -= 1; >> if RouteAddress(forbidden[index],"signal") == toWhomRoute then >> return false; >> end if; >> end loop; >> end if; >> >>> Заранее благодарю. >> >> Не проверял, но должно сработать. >> >> -- >> Best regards, >> Dmitry Akindinov >> >> >> >> ################################################################## >> Вы получили это сообщение потому, что подписаны на список рассылки >> . >> >> Чтобы отписаться, отправьте сообщение на адрес >> Чтобы переключиться в режим дайджеста - mailto: >> Чтобы переключиться в индексный режим - mailto: >> Для административных запросов адрес >> Архив списка: http://mx.demos.su/lists/cgp-russian/ >> >> >> >> > > ################################################################## > Вы получили это сообщение потому, что подписаны на список рассылки > . > > Чтобы отписаться, отправьте сообщение на адрес > Чтобы переключиться в режим дайджеста - mailto: > Чтобы переключиться в индексный режим - mailto: > Для административных запросов адрес > Архив списка: http://mx.demos.su/lists/cgp-russian/ > > > -- Best regards, Dmitry Akindinov