ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

GotoIfTime

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

GotoIfTime

Сообщение Andrey Safonov » 22 янв 2018, 18:06

Как правильно в данном случае
Код: выделить все
[pstn-in]
include = office-people
include = remote-offices
include = fax

exten = 800,1,Answer
exten = 800,n,NoOp(${CALLERID(num)})
exten = 800,n,GotoIf(${DB_EXISTS(BLACKLIST/${CALLERID(num):-10})}?blyes:blno)
exten = 800,n(blyes),Hangup
exten = 800,n(blno),GotoIfTime(09:00-18:00,mon-fri,*,*?day:night)
exten = 800,n(day),PlayBack(welcome-day8k)
exten = 800,n,Macro(startrecord)
exten = 800,n,Queue(q1,Tt)
exten = 800,n,Hangup
exten = 800,n(night),PlayBack(welcome-night8k)
exten = 800,n,VoiceMail(101,s)
exten = 800,n,Hangup

Вместо
Код: выделить все
exten = 800,n(blno),GotoIfTime(09:00-18:00,mon-fri,*,*?day:night)

Сделать
Код: выделить все
GotoIfTime(9:00-18:00,mon-thu,*,*?day:night)
GotoIfTime(9:00-16:45,fri,*,*?day:night)

То есть сделать два условия вместо одного. Если бы не (blno)в начале строки, то всё понятно, но если дважды указывать (blno), то не работает. Станция под нагрузкой, особо играться не получается, ночью тоже.
Andrey Safonov
 
Сообщений: 27
Зарегистрирован: 07 окт 2014, 09:58

Re: GotoIfTime

Сообщение awsswa » 22 янв 2018, 18:18

не обязательно писать два условия - типа или туда или туда
можно одно - совпало - туда, не совпало - дальше по коду

GotoIfTime(9:00-16:45,fri,*,*?day)
платный суппорт по мере возможностей
awsswa
 
Сообщений: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: GotoIfTime

Сообщение Andrey Safonov » 22 янв 2018, 18:23

Тут условий получается больше чем два:
    - понедельник- четверг с 9:00 до 18:00
    - Пятница с 9:00 до 16:45
    - Выходные круглосуточно и рабочие дни, вне указанного выше диапазона.
Andrey Safonov
 
Сообщений: 27
Зарегистрирован: 07 окт 2014, 09:58

Re: GotoIfTime

Сообщение fecyt » 22 янв 2018, 18:42

Не надо две метки blno, если это будет пятница, то первое GotoIfTime пропустится и отработает второе.
fecyt
 
Сообщений: 148
Зарегистрирован: 17 янв 2017, 18:51

Re: GotoIfTime

Сообщение ded » 22 янв 2018, 18:42

Вы нарисуйте блок схему:
1) Сегодня выходной? Да? - на метку businessout -Нет? - next (см. сл. п. 2)
2) Сегодня пятница и время с 00:00 до 9:00 или с 16:46 до 24:00? - на метку businessout -Нет? - next (см. сл. п. 3)
3) сегодня понедельник- четверг с 9:00 до 18:00 ? - на метку working day, Нет? на метку businessout
ded
 
Сообщений: 15803
Зарегистрирован: 26 авг 2010, 19:00

Re: GotoIfTime

Сообщение Andrey Safonov » 22 янв 2018, 18:43

А не могли бы вы прямо от exten написать, как должно быть? С блок-схемой у меня хорошо.... с синтаксисом плохо...
Andrey Safonov
 
Сообщений: 27
Зарегистрирован: 07 окт 2014, 09:58

Re: GotoIfTime

Сообщение ded » 22 янв 2018, 21:19

Не, копипасты не будет.
ded
 
Сообщений: 15803
Зарегистрирован: 26 авг 2010, 19:00

Re: GotoIfTime

Сообщение awsswa » 22 янв 2018, 21:48

exten = 800,n,GotoIfTime(9:00-18:00,mon-thu,*,*?ura-rabotaem)
exten = 800,n,GotoIfTime(9:00-16:45,fri,*,*?ura-rabotaem)
exten = 800,n,HangUp
exten = 800,n(ura-rabotaem),PlayBack(welcome-day8k)
платный суппорт по мере возможностей
awsswa
 
Сообщений: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: GotoIfTime

Сообщение Andrey Safonov » 22 янв 2018, 22:56

A (blno)? В ней-то самая засада..
Andrey Safonov
 
Сообщений: 27
Зарегистрирован: 07 окт 2014, 09:58

Re: GotoIfTime

Сообщение BorisTheBlade » 24 янв 2018, 14:17

exten = 800,n(blno),GotoIfTime(09:00-18:00,mon-fri,*,*?day)
exten = 800,n,GotoIfTime(09:00-18:00,mon-fri,*,*?day:night)
BorisTheBlade
 
Сообщений: 167
Зарегистрирован: 14 фев 2011, 15:24

След.

Вернуться в Вопросы новичков

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH