Indice del forum www.zeroshell.net
Distribuzione Linux ZeroShell
 
 FAQFAQ   CercaCerca  GruppiGruppi   RegistratiRegistrati 
 ProfiloProfilo  Log inLog in   Messaggi privatiMessaggi privati 

Interfaccia vocale per impostazione password

 
Nuovo argomento   Rispondi    Indice del forum -> ZeroTruth
Precedente :: Successivo  
Autore Messaggio
mdeserventi



Registrato: 02/12/11 13:34
Messaggi: 18

MessaggioInviato: Sab Set 20, 2014 12:58 pm    Oggetto: Interfaccia vocale per impostazione password Rispondi citando

Ho creato un interfaccia vocale tramite asterisk con lo scopo di cambiare la password agli utenti al posto degli sms. In pratica l'utente si registra su zerotruth come nel caso degli sms con GAMMU ma invece di mandare un sms l'utente chiama un portale vocale che riconosce il numero chiamante e cambia la password su zerotruth.
Ho trovato sul forum alcuni script che sfruttano l'ssh per lanciare script locali ma avrei bisogno di sapere se si puo' aggiungere a ZT una funzione che viene chiamata e cambia la password all'utente. In pratica una funzione tipo:
zt "ExecSms"

Nel mio caso potrebbe essere zt "ExecVP" $1 $2
Dove $1 e' il numero di telefono e cioe' il nome utente (creato nella registrazione) e $2 la password.

E' possibile?


Grazie
Top
Profilo Invia messaggio privato
truthahn



Registrato: 12/06/12 11:46
Messaggi: 2225

MessaggioInviato: Sab Set 20, 2014 4:45 pm    Oggetto: Rispondi citando

Ciao, credo che si possa fare così, prevedendo di impostare la nuova password con un numero

in extensions.conf

Codice:
[macro-zerotruth]
   exten => s,1,Set(LANGUAGE()=it)
   exten => s,n,Answer()
   exten => s,n,Read(INPUT,agent-pass,0,,3,10)
   exten => s,n,SayDigits(${INPUT})
   exten => s,n,AGI(zerotruth.sh,${INPUT},${CALLERID(num)})
   exten => s,n,Hangup()

[for_zt]
  exten => numerochiamato,1,Macro(zerotruth)


in zerotruth.sh inserisci la chiamata a zerotruth


Codice:
#!/bin/bash
curl http://IP_ZEROTRUTH:8088/cgi-bin/cpasterisk.sh?conrol=$1+$2




cpasterisk.sh si deve trovare in /DB/apache2/htdocs/zerotruth/cgi-bin

Codice:
#!/bin/bash
source /DB/apache2/cgi-bin/zerotruth/conf/zt.config
source /DB/apache2/cgi-bin/zerotruth/functions.sh
PHONE=$(echo "$QUERY_STRING" | cut -d"=" -f2 | cut -d"+" -f1 )
PHONE="$(echo "$PHONE" | sed 's/^+//g' | sed 's/^00//g')
PASSWORD=$(echo "$QUERY_STRING" | cut -d"=" -f2 | cut -d"+" -f2 )
QUERY=$(/usr/local/bin/ldapsearch -xLLL -b "ou=People,$C_LDAPBASE" telephoneNumber=$PHONE uid)
USERNAME=$( echo "$QUERY" | grep -e '^uid: ' | sed 's/^uid: //g')
QUERY=$(/usr/local/bin/ldapsearch -xLLL -b "ou=Radius,$C_LDAPBASE" cn=$USERNAME sn )
PASSWORD_ORI=$(echo "$QUERY" | grep -e '^sn: ' | sed 's/^sn: //g')
[ -n "$(echo "$PASSWORD_ORI" | cut -sd'-' -f2)" ] && PASSWORD="$PASSWORD-$RANDOM"
DATA="dn: cn=$USERNAME,ou=Radius,$C_LDAPBASE\nsn: $PASSWORD"
echo -e "$DATA" | /usr/local/bin/ldapmodify -c -x -D "$C_LDAPMANAGER,$C_LDAPBASE" -w $C_LDAPROOT

exit


facci sapere.

Saluti.
Top
Profilo Invia messaggio privato
mdeserventi



Registrato: 02/12/11 13:34
Messaggi: 18

MessaggioInviato: Dom Set 21, 2014 5:17 pm    Oggetto: Rispondi citando

Ho provato ma mi restituisce sempre internal server error.

Ho messo le permission 755 allo script:
lrwxrwxrwx 1 root root 43 Sep 21 17:38 cpasterisk.sh -> /DB/apache2/cgi-bin/zerotruth/cpasterisk.sh
-rwxr-xr-x 1 root root 858 Sep 21 17:55 /DB/apache2/cgi-bin/zerotruth/cpasterisk.sh

Ho scritto :
curl http://IP_ZEROTRUTH:8088/cgi-bin/cpasterisk.sh?control=$1+$2
INVECE DI
curl http://IP_ZEROTRUTH:8088/cgi-bin/cpasterisk.sh?conrol=$1+$2

Ho tolto i doppi apici:
PHONE=$(echo "$PHONE" | sed 's/^+//g' | sed 's/^00//g')
INVECE DI
PHONE="$(echo "$PHONE" | sed 's/^+//g' | sed 's/^00//g')

Ma non va ugualmente.
Sto provando sull'interfaccia interno dei zeroshell.
Top
Profilo Invia messaggio privato
truthahn



Registrato: 12/06/12 11:46
Messaggi: 2225

MessaggioInviato: Dom Set 21, 2014 5:40 pm    Oggetto: Rispondi citando

Ciao,
lo script va in
/DB/apache2/htdocs/zerotruth/cgi-bin

la porta da chiamare è la 8088 0 8089 ora non ricordo.

Ho pensato comunque di integrare la cosa in zerotruth, anzi anche la registrazione. Come funzionerà:

1- Un utente si autoregistra normalmente, inserendo i propri dati comprensivi del numero di cell.
2- Viene inserito nel database ma bloccato
3- al termine dell'autoregistrazione nell'info post registrazione verròà inserito.
Il tuo username è...
la tua pss è....
Per attivare l'account telefona a XXXXXXX con il numero di telefono inserito precedentemente.

L'utente chiama un asterisk che passa il numero chiamate ad uno script e chiude senza rispondere (per tutti gratis quindi).

Il server con asterisk fa una chiamata con curl a zerotruth raggiungibile se ha un ip pubblico o via vpn passando n di telefono e una password condivisa.

lo script su zerotruth controlla la passord condivisa e casomai chiude.
Se il controllo passa sblocca l'utente.

Che dici? Ci sono punti deboli?.

Grazie.
Top
Profilo Invia messaggio privato
mdeserventi



Registrato: 02/12/11 13:34
Messaggi: 18

MessaggioInviato: Dom Set 21, 2014 8:47 pm    Oggetto: Rispondi citando

Buona idea...
La password condivisa va benissimo. La uso già in un'app per inviare gli sms con soap telecom ed è ok.
Non capisco però perchè dici ip pubblico. Io su zt uso tre interfacce:
Interna
Cp
Pubblica

L'asterisk ce l'ho sull'interna.

Tornando invece a prima lo script l'ho messo lì lincato cone gli altri oppure fisico ma non mi funziona...
Però se lo fai così è grandioso...
Top
Profilo Invia messaggio privato
truthahn



Registrato: 12/06/12 11:46
Messaggi: 2225

MessaggioInviato: Dom Set 21, 2014 9:01 pm    Oggetto: Rispondi citando

Ciao,
pubblico perché asterisk potrebbe essere remoto e in qualche modo deve poter comunicare con zerotruth.
Top
Profilo Invia messaggio privato
mdeserventi



Registrato: 02/12/11 13:34
Messaggi: 18

MessaggioInviato: Dom Set 21, 2014 11:24 pm    Oggetto: Rispondi citando

Ciao,
perfetto.
Dimmi quando posso provarlo.
Tornando a prima però ho provato sulla porta 8088 e gli altri script vanno ma quando chiamo quello fallisce. Sono sicuro di chiamarlo perchè se sbaglio nome mi da not found. Dove posso teovare i log per capire cosa non va?

Ciao
Top
Profilo Invia messaggio privato
elpiratel



Registrato: 27/07/13 16:28
Messaggi: 100

MessaggioInviato: Mer Ott 01, 2014 2:48 pm    Oggetto: Rispondi citando

Ciao a tutti, come funziona la chiamata con asterix..??
bob ho capito se devo avere un centralino asterix o altro..
mi potete spiegare ..?'
grazie
Top
Profilo Invia messaggio privato
truthahn



Registrato: 12/06/12 11:46
Messaggi: 2225

MessaggioInviato: Mer Ott 01, 2014 3:13 pm    Oggetto: Rispondi citando

Salve,

naturalmente per usare asterisk lo devi aver installato da qulache parte.
Top
Profilo Invia messaggio privato
mdeserventi



Registrato: 02/12/11 13:34
Messaggi: 18

MessaggioInviato: Dom Ott 05, 2014 10:54 am    Oggetto: Rispondi citando

Si devi avere una situazione simile a questa:

1) Macchina con installato asterisk (basta anche un'installazione standalone solo per questo servizio). Si puo' installare anche su zeroshell ma per questioni di performance non lo consiglio molto soprattutto in ambienti grandi.
2) Un gateway PSTN che gira le specifiche chiamate sulla macchina asterisk. Un router voip, o un mini ATA con porta PSTN. Si puo' guardare quelli di:
cisco
patton
grandstream
linksys
...
3) La piattaforma zeroshell con installato zerotruth dalla versione 2.1.

Se vuoi altri dettagli chiedi pure.

Saluti
Top
Profilo Invia messaggio privato
Skeige



Registrato: 20/05/17 00:11
Messaggi: 22

MessaggioInviato: Dom Mag 28, 2017 4:26 pm    Oggetto: Rispondi citando

Ciao qualcuno sa dirmi cosa inserire nei file sip external ecc... Di asterisk?
Non riesco a farlo funzionare.

Grazie.
Top
Profilo Invia messaggio privato
truthahn



Registrato: 12/06/12 11:46
Messaggi: 2225

MessaggioInviato: Dom Mag 28, 2017 8:51 pm    Oggetto: Rispondi citando

Salve,
ti serve solo sip.conf e extensions.conf da impostare.
in sip.conf devi inserire i parametri in base al tuo provider... sicuramente sul loro sito c'è più di un esempio.
Saluti.
Top
Profilo Invia messaggio privato
truthahn



Registrato: 12/06/12 11:46
Messaggi: 2225

MessaggioInviato: Dom Mag 28, 2017 8:57 pm    Oggetto: Rispondi citando

Esempio sip.conf per eutelia:

[general]
port=5060
bindaddr=0.0.0.0
language=it
localnet=tua_localnet/255.255.255.0
externip=tuo_ip_pubblico
allowgues=no
alwaysauthreject=yes


register => tuonumero:tuapasswoord@voip.eutelia.it:5060/tuonumero

[tuonumero]; zerotruth
nat=yes
limit-call=1
defaultuser=tuonumero
type=peer
secret=tuapasswoord
qualify=yes
port=5060
insecure=invite,port
host=voip.eutelia.it
fromuser=tuonumero
dtmfmode=auto
disallow=all
context=from_zerotruth
canreinvite=no
allow=gsm
allow=alaw
Top
Profilo Invia messaggio privato
Skeige



Registrato: 20/05/17 00:11
Messaggi: 22

MessaggioInviato: Lun Mag 29, 2017 4:58 pm    Oggetto: Rispondi citando

Ciao,
Tutto ok! sono riuscito a farlo funzionare finalmente per la registrazione degli utenti!

Però ho un problemino...non mi funziona il tasto "password dimenticata".

O meglio se clicco su quel tasto mi chiede "utente" e "cellulare" in utente ho provato a mettere anche il cellulare preceduto dal 39 (visto che ho messo che i clienti che si registrano prendono in automatico il loro numero di cellulare come nome utente) ma poi mi da soltanto il tasto "salva" invece di "invia" e quindi cliccando salva non mi recupera la password ma si ripresenta con i campi da ricompilare!
Crying or Very sad
Top
Profilo Invia messaggio privato
Skeige



Registrato: 20/05/17 00:11
Messaggi: 22

MessaggioInviato: Mar Lug 04, 2017 8:14 pm    Oggetto: Rispondi citando

Ciao Truthahn,
Mi aiuti gentilmente?

Con i tuoi consigli di sopra sono riuscito a configurare asterisk per l'attivazione del profilo ma non mi funziona il tasto password dimenticata.

Riesci a dirmi se devo impostare altro per il recupero della password?

Grazie.
Top
Profilo Invia messaggio privato
Mostra prima i messaggi di:   
Nuovo argomento   Rispondi    Indice del forum -> ZeroTruth Tutti i fusi orari sono GMT + 1 ora
Pagina 1 di 1

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi


Powered by phpBB © 2001, 2005 phpBB Group
phpbb.it