Push delle chiamate entranti

  • 4 Risposte
  • 581 Visite

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline effe77

  • Nuovo Iscritto
  • *
  • 13
Push delle chiamate entranti
« il: 06 Agosto 2019, 23:16 »
Ciao a tutti, premesso che non so se questa mia richiesta può essere fattibile ma avrei la necessità di inviare l'ID delle chiamate entranti voip (su un router Tim Hub) in tempo reale alla chiamata o leggera differita (va bene anche un polling ogni 60 secondi) verso l'esterno (per esempio attraverso mail) Ho provato un po' a spippolare ma non trovato assolutamente niente :-(
Nel registro delle chiamate il dato c'è...ma come si preleva??? Mi basterebbe anche la possibilta di accedere alla pagina http://192.168.1.1/modals/mmpbx-log-modal.lp senza auth!!!

Confido in voi!
« Ultima modifica: 06 Agosto 2019, 23:32 da effe77 »

Offline FrancYescO

  • VIP
  • *****
  • 2506
Re:Push delle chiamate entranti
« Risposta #1 il: 07 Agosto 2019, 00:23 »
/etc/config/web

togli tutti o aggiungi il role guest a quella pagina

Offline yhcim86

  • Membro Anziano
  • ***
  • 182
  • Sesso: Maschio
  • Smachinatore Ufficiale Seriale
Re:Push delle chiamate entranti
« Risposta #2 il: 07 Agosto 2019, 11:18 »
Mi interesserebbe anche a me questa cosa ma mi puoi spiegare dettagliatamente il da farsi???
Grazie mille
« Ultima modifica: 07 Agosto 2019, 11:19 da MisterFTTH »
Tim AGTEF EVO con 2.1.0 Root e Gui Ansuel ultima versione DEV grazie a @Ansuel
Tim AGTHP HUB con 2.0.0 Root e Gui Ansuel grazie a @Ansuel muletto in caso di sciagure!!!!

Offline effe77

  • Nuovo Iscritto
  • *
  • 13
Re:Push delle chiamate entranti
« Risposta #3 il: 07 Agosto 2019, 12:08 »
La mia idea iniziare era di fare un grabbing della pagina indicata (http://192.168.1.1/modals/mmpbx-log-modal.lp) e sparare per mail i nuovi record.
Ho però trovato il file dove sono memorizzati questi dati, ovvero un database di sqlite 3.x su /etc/lasdb.db quindi voglio provare a lavorare direttamente su quello...vediamo se arrivo a qualcosa!

Offline effe77

  • Nuovo Iscritto
  • *
  • 13
Re:Push delle chiamate entranti
« Risposta #4 il: 07 Agosto 2019, 14:23 »
La mia idea iniziare era di fare un grabbing della pagina indicata (http://192.168.1.1/modals/mmpbx-log-modal.lp) e sparare per mail i nuovi record.
Ho però trovato il file dove sono memorizzati questi dati, ovvero un database di sqlite 3.x su /etc/lasdb.db quindi voglio provare a lavorare direttamente su quello...vediamo se arrivo a qualcosa!

edit

Se a qualcuno può servire, ecco lo script che ho messo sul TimHub (per adesso per l'invio delle mail mi appoggio a un'altra macchina) da far girare tramite cron

Codice: [Seleziona]
#!/bin/sh
db_rows2event()
{
        db_sqlite=$1
        from_id=$2
        to_id=$3
        sql="Select EntryIdentifier, case when ReadStatus = 255 then 'NO' else 'SI' end as risposta, Remote, Direction, Cast((JulianDay(endtime) - JulianDay(connectedTime)) * 24 * 60 * 60 as Integer) as durata, strftime('%s', connectedTime) as data from calllog where EntryIdentifier between $from_id and $to_id"
        for row in `/usr/bin/sqlite3  $db_sqlite "$sql"` ;do
                echo -e "GET http://192.168.xx.xx/event.php?$row HTTP/1.1\r\nHost: 192.168.xx.xx.eg\r\n\r\n" | nc 192.168.xx.xx 80 > /dev/null
        done
}


db_sqlite=/etc/lasdb.db
file_last_id="/tmp/last-call-id"
last_id=0
new_id=0
if [ -f "$file_last_id" ]; then
        last_id=`cat $file_last_id`
fi

new_id=`/usr/bin/sqlite3 $db_sqlite "Select max(EntryIdentifier) from calllog;"`

if [ "$new_id" -gt "$last_id" ]; then
        #record da inviare
        db_rows2event $db_sqlite $last_id $new_id
        echo $new_id > $file_last_id
fi

Sul server poi faccio il parsing della chiamata "GET http://192.168.xx.xx/event.php?591|SI|12345789|1|186|1565179052 HTTP/1.1" 404 287 "-" "-" 
dove i parametri sono, nell'ordine
ID del record
SI|NO indica se la telefonata ha avuto risposta
Numero chiamante o chiamato
1|2 chiamata in entrata/uscita
Durata telefonata (sec)
Timestamp telefonata


« Ultima modifica: 07 Agosto 2019, 17:03 da effe77 »