asterisksipconference

How to automatically add users to confbridge asterisk from dialplan?


[play-context]
exten => _X.,1,Answer()
exten => _X.,n,NoOp('Exten:')
exten => _X.,n,NoOp(${EXTEN})
exten => _X.,n,ConfBridge(dconf-${EXTEN}-${STRFTIME(${EPOCH},,%d.%m.%Y-%H:%M:%S)})
exten => _X.,n,Originate(SIP/5678,exten,conferences,100,1)

[conferences]
exten => _X.,1,NoOp(${EXTEN})
exten => _X.,n,ConfBridge(dconf-${EXTEN}-${STRFTIME(${EPOCH},,%d.%m.%Y-%H:%M:%S)})

when i create a new confBridge conference, i want to join some users in it. How i can do it automaticaly? I try this config, but it dont worked. Before this line

exten => _X.,n,Originate(SIP/5678,exten,conferences,100,1)

just does not reach. I do not understand why. Please, help.


Solution

  • Your channel (your audio when you call the number of the conference) will enter in the conference when it comes to the Confbridge statement in your dialplan. The problem with Confbridge is that once the dialplan has arrived to the Confbridge statement, you will remain there until you exit from it. If you wanted to find there some friends you should have made some previous tasks

    So, dialplan for conferences is usually not trivial. Let us assume that you do not want to make the first check. So, you are including a guy as you stablish the conference. In order to simplify and to avoid some headaches I am going to use a name for the conference that do not depend on the second at which the dialplan is read (depending on how do you mantain the dialplan your conference could be different from the conference at which you invite your mate), let us suppose that the conference has a name that only depends on the EXTEN dialed. You should do something similar to:

    exten => _X,1,Answer()
    ...
    same => n,Originate(SIP/5678,app,ConfBridge,"${EXTEN},rest-of-parameters-for-5678")
    ... (Check ORIGINATE_STATUS if you do really need your friend)
    same => n,ConfBridge(${EXTEN},rest-of-parameters-for-youself)
    

    Here I have used originate with the parameter app. You can, of course, follow the hint of @arheops and use exten with a Local channel. But if you do so, be carefull with the seconds ;).

    If you want to stablish automatically the conferences as asterisk starts, consider including some originate statements in cli.conf.