.titleBar { margin-bottom: 5px!important; }

Konferenz von extern

Dieses Thema im Forum "Asterisk Rufnummernplan" wurde erstellt von siam, 6 Aug. 2004.

  1. siam

    siam Neuer User

    Registriert seit:
    27 Juli 2004
    Beiträge:
    39
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo liebe VoIP Fans,

    ich hab mal wieder eine Frage:

    Wie könnte ich das realisieren:
    ich bin unterwegs. Ich möchte eine Konferenz mit meiner Frau und unserem Eheberater führen :shock: .
    Ich wähle mich (mit DISA) in mein Asterisk ein. Ich wähle die Nummer meiner Frau und schicke sie (per transfer) in der Konferenzraum. Dann rufe ich auch noch den Eheberater an und schicke ihn ebenfalls in den Konferenzraum. Zum Schluss gehe ich selber noch in den Konferenzraum.

    Zwischendurch sollte ich natürlich nicht aus der Leitung geschmissen werden, d.h. das ganze sollte mit einem Anruf funktionieren.

    Das wäre eine echt praktische Sache, wenn das funktionieren würde.

    gruß Siam
     
  2. siam

    siam Neuer User

    Registriert seit:
    27 Juli 2004
    Beiträge:
    39
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo,

    ich werde meine Frage einfach enger schnüren, da ich mir schon ein paar Sachen selbst erarbeitet habe.

    Also Frage:
    Wie kann man bei einem solchen Dial-Aufruf auf das Annehmen des Anrufs reagieren?
    Also ich rufe an, der Angerufene nimmt ab und GENAU dann wird etwas getan

    Code:
    exten => 22,1,Dial(SIP/22,60,tr)
    #TODO: wenn Anruf angenommen
    #exten => 22,2,Transfer(101)
    
    Es gibt ja die Option 'g' bei Dial. Die ist aber leider für den Fall, dass der Angerufene auflegt :cry:

    Danke schon mal!

    gruß Siam
     
  3. siam

    siam Neuer User

    Registriert seit:
    27 Juli 2004
    Beiträge:
    39
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo,

    ich habe mir jetzt selber die Lösung erarbeitet. (hat aber viel Gehirnschmalz gekostet, bin ja noch ziemlich neewbe...)

    Hier für alle, die irgendwann einmal danach Suchen:

    Möglich ist so etwas mit Call-Files, AGI und Manager Interface. Ich habe mich für Call-File entschieden:

    Erstellt einfach eine Datei im Ordner /var/spool/asterisk/outgoing (oder wo auch immer bei euch outgoing liegt) mitdem Namen test.call

    test.call:
    Code:
    Channel: <Channel + Nummer> #z.B. Zap/g1/12345
    RetryTime: 60
    WaitTime: 30
    Context: meeting
    Extension: 500 #statischer Konferenzraum
    Priority: 1
    
    
    Ich habe mir jetzt schnell auch noch ein HTML-GUI erstellt, worin ich in einem Formular Nummern eintragen kann. Schicke ich das Formular ab, so werden für jede Nummer eine *.call Datei erzeugt. Der asterisk ruft somit alle Nummern aus dem Formular an und schickt sie gleich in den Konferenzraum.

    Toll! :lol:

    Hier die (in sehr schlechtem HTML + PERL geschriebenen) Dateien.
    Die Pfade mussen angepasst werden!
    Das Verzeichniss "/var/spool/asterisk/outgoing" muss für euren http-daemon (z.B. Apache) beschreibbar sein!

    meeting.html
    Code:
    <html>
    <body>
    <form action="/cgi-bin/meeting/meeting.pl" method="post">
    <center>
    <h1>Asterisk Conference</h1>
    <table border="1">
    <th>No</th><th>Number</th><th>Internal</th><th>ISDN</th><th>VoIP</th>
     <tr>
      <td align="center">1</td>
      <td align="center"><input size="11" maxlength="20" name="user1"></td>
      <td align="center"><input type="radio" name="type1" value="internal"></t
    d>
      <td align="center"><input type="radio" name="type1" value="isdn" checked
    ></td>
      <td align="center"><input type="radio" name="type1" value="voip"></td>
     </tr>
     <tr>
      <td align="center">2</td>
      <td align="center"><input size="11" maxlength="20" name="user2"></td>
      <td align="center"><input type="radio" name="type2" value="internal"></t
    d>
      <td align="center"><input type="radio" name="type2" value="isdn" checked
    ></td>
      <td align="center"><input type="radio" name="type2" value="voip"></td>
     </tr>
     <tr>
      <td align="center">3</td>
      <td align="center"><input size="11" maxlength="20" name="user3"></td>
      <td align="center"><input type="radio" name="type3" value="internal"></t
    d>
      <td align="center"><input type="radio" name="type3" value="isdn" checked
    ></td>
      <td align="center"><input type="radio" name="type3" value="voip"></td>
     </tr>
     <tr>
      <td align="center">4</td>
      <td align="center"><input size="11" maxlength="20" name="user4"></td>
      <td align="center"><input type="radio" name="type4" value="internal"></t
    d>
      <td align="center"><input type="radio" name="type4" value="isdn" checked
    ></td>
      <td align="center"><input type="radio" name="type4" value="voip"></td>
     </tr>
    </table>
    
    
    <input type="submit" value="Try Call Users"></p>
    </form>
    </center>
    </body>
    </html>
    
    Code:
    #!/usr/bin/perl -w
    
    use strict;
    use CGI;
    my $cgi = new CGI;
    use CGI::Carp qw(fatalsToBrowser);
    
    my @users = ($cgi->param('user1'),
                $cgi->param('user2'),
                $cgi->param('user3'),
                $cgi->param('user4'));
    
    my @types = ($cgi->param('type1'),
                $cgi->param('type2'),
                $cgi->param('type3'),
                $cgi->param('type4'));
    
    print $cgi->header();
    print $cgi->start_html('Asterisk Conference');
    print '<center>
    
    will try to call</p>';
    for(my $i = 0; $i < 4; $i++) {
        if($users[$i] ne '') {
            my $r = rand 1000;
            open FH, ">/var/spool/asterisk/outgoing/meeting_user$r.call" or print "<
    h2>error: $!<\/h2>";
            print FH "Channel: ";
            print FH "SIP\/$users[$i]\n"            if($types[$i] eq 'internal');
            print FH "Zap\/g1\/$users[$i]\n"        if($types[$i] eq 'isdn');
            print FH "SIP\/$users[$i]\@sipgate\n"   if($types[$i] eq 'voip');
            print FH "RetryTime: 60\n";
            print FH "WaitTime: 30\n";
            print FH "Context: meeting\n";
            print FH "Extension: 500\n";
            close FH;
            print "
    
    [b]$users[$i]<\/b> through [b]$types[$i]<\/b><\/p>";
        }
    }
    print '<form><input type="button" value="back" onclick="history.go(-1)"></form>'
    ;
    print "<a href=\"/meeting/meeting.html\">Main</a><\/center>";
    print $cgi->end_html();
    
    
    Hmmm...ob überhaupt irgendeiner mein Monolog hier mitbekommt :?: :roll: :?:

    Hier noch ein paar Links:
    http://www.voip-info.org/wiki-Asterisk+auto-dial+out
    http://www.voip-info.org/wiki-Asterisk+cmd+MeetMe
     
  4. fabe

    fabe Neuer User

    Registriert seit:
    13 Juli 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    wenn ich wieder etwas mehr zeit habe, werde ich an den meetme features weiterarbeiten. dann wird es hoffentlich bald möglich sein, aus einer konferenz heraus (in der man admin ist), ins menü zu gehen, eine ausgehende nummer eingeben und diese so in die konferenz einladen...
     
  5. siam

    siam Neuer User

    Registriert seit:
    27 Juli 2004
    Beiträge:
    39
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo,

    das wäre natürlich viel einfacher.... :wink:


    Viel Spaß am Coden!

    gruß Siam
     
  6. thorsten.gehrig

    thorsten.gehrig Mitglied

    Registriert seit:
    14 Juni 2004
    Beiträge:
    490
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hi,
    das mit dem Einladen währe natürlich nett...

    @Siam: warum so kompliziert? Richte dir doch einfach eine Telefonnummer ein unter der man direkt mit der KOnferenz verbunden ist. Dann schicke jedem einen Termin mit zugangsnummer... so macht man doch eine telefonkonferenz....
    (Ich habe mir dafür extra eine SIPGATE-Nummer eingerichtet... kostet ja nix)

    Gruß
    Thorsten
     
  7. Blackvel

    Blackvel Mitglied

    Registriert seit:
    4 Mai 2004
    Beiträge:
    624
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Beruf:
    selbständig als IT-Consultant (VoIP, Asterisk, J2E
    Ort:
    Nürnberg, Einsatzorte Schwerpunkt D6-D9 (MCH, STG,
    Ein IVR Menü wäre evtl. hilfreich.
    Nix drücken -> Endgerät wird angewählt
    Zimmer im IVR drücken -> Konferenz-Raum

    Erfordert halt leider, dass jeder Dich anruft. Ist also nicht ganz das, was Du willst.