Newsgroup: it.comp.lang.delphi
Titolo: Effettuare chiamate VOIP

Buongiorno a tutto il gruppo,
ho ricevuto la richiesta da alcuni miei clienti di interfacciarmi con il loro centralino telefonico per far si che dal mio gestionale possa partire la chiamata al numero che è evidenziato senza che l'operatore digiti il numero sulla tastiera.
 
Dalle poche, per adesso, informazioni che ho da un mio primo cliente dovrei interfacciarmi con una sorta di "barra telefonica SoftPhone" ( così l'ha chiamata ) installata su ogni client ed attraverso questa inoltrare le mie richieste per la composizione del numero, chiusura chiamata etc...
 
Ho dato un'occhiata in internet ed ho trovato un paio di link a questi componenti :
 
http://www.da-soft.com/simpleiax/
 
http://www.sipcomponents.com/
 
 
qualcuno di voi li conosce o ne conosce di alternativi migliori ?
 
Non so se esiste un modo "standard" di interfacciarsi con tutti i centralini VOIP oppure se sono obbligato ogni volta a sviluppare qualcosa di specifico in base al centralino che ha il cliente. 
 
Premesso, ma penso che si sia capito, che non ho alcuna esperienza in merito cerco qualcuno che mi sappia dare informazioni ed indicazioni a riguardo su come affrontare il problema e da dove partire.
 
Sarei eventualmente anche interessato a valutare se c'è qualcuno disposto a collaborare per implementare queste funzionalità nel mio progetto.
 
Grazie
 
Alberto
 

 collaborare per implementare queste funzionalità nel mio progetto.
 
La cosa potrebbe interessarmi.
Se mi scrivi in privato possiamo parlarne:
 
zzzato (chi@cciola) su 
gmail.com
 
 
A.

 Non so se esiste un modo "standard" di interfacciarsi con tutti i centralini VOIP oppure se sono obbligato ogni volta a sviluppare qualcosa di specifico in base al centralino che ha il cliente.
 
Lo standard VoIP che và per la maggiore è il SIP che ormai trovi 
implementato su tutti i sistemi moderni. E' stato ratificato come 
RFC3261 (
http://tools.ietf.org/html/rfc3261
) e aggiornato nella 
RFC6768... questi i riferimenti per farla breve perchè in realtà la 
famiglia è piuttosto numerosa.
Un altro protocollo standard decisamente in discesa è H323 ma oggi come 
oggi lo trovi solo in prodotti legacy.
 
IAX, quello implementato dal componente del primo link, è un protocollo 
aperto, ma non standard, creato da Digium con lo scopo principale di 
interconnettere sistemi Asterisk oltre ad avere un payload più contenuto 
e per superare le difficoltà del SIP in reti dietro NAT. La segnalazione 
e gli stream RTP in IAX utilizzano una sola porta mentre SIP usa porte 
distinte.
Giusto per evidenziare una grossa differenza di implementazione mente 
IAX ha un payload binario la segnalazione SIP è in modalità testo e 
somiglia maledettamente all'http.
 
Conosco ambedue i componenti che citi sopra, non fosse altro che in 
delphi/pascal non ci sono molte scelte se vuoi rimanere su codice 
nativo; se parlassimo di C o java ci sarebebro tonnellate di codice ed 
applicazioni oss da cui attingere.
Ho acquistato il secondo che citi parecchio tempo fà (costava la metà) 
ma non ne ho fatto grande uso e non mi ha entusiasmato. Posso dire che 
implementa solo un abbozzo delle specifiche del protocollo... poco più 
del necessario a chiamare e rispondere.
L'autore è un tipo disponibile ma non si preoccupa nè di documentare nè 
di tenerti aggiornato su fix e relese, insomma non è il massimo.
 
Comunque considerando che di client SIP ce ne sono davvero tanti 
(gratuiti, open source o a pagamento) non sono certo che il gioco di 
aprtire da zero valga la candela.
Ad esempio Zoiper è un prodotto piuttosto valido, stabile, economico ed 
offre una API decente per l'integrazione:
- 
http://www.zoiper.com/downloads/Zoiper_API_Documentation.pdf
 
- 
http://www.zoiper.com/en
 (mi riferisco alla versione "classic")
nota: le versioni gratuite non rispondono alle chimate via API.
 
 
-- 
TeeBX VoIP communication platform (coming soon)
http://code.google.com/p/teebx/
 
-----------------------------------------------
Lightweight++ Business Friendly++ Open++

Grazie Giovanni,
per la risposta molto completa.
 
Ho fatto che prendere sia lo Zoiper che il SIPComponents per provarli e 
testarli
 
Eventualmente, se possibile, vorrei chiederti se posso contattarti in 
privato per una consulenza più specifica.
 
Grazie
 
Alberto
alberto.menghini chi@cciola 
asoft.it
 
 
 

 Non so se esiste un modo "standard" di interfacciarsi con tutti i centralini VOIP oppure se sono obbligato ogni volta a sviluppare qualcosa di specifico in base al centralino che ha il cliente.
 
Ciao,
 
il modo standard ci sarebbe ed è documentato in
https://tools.ietf.org/html/bcp144#section-2.18
 
 
Non ti interfacci al centralino ma direttamente allo UA
(softphone, telefono IP...). E' supportato sicuramente dai telefoni IP
Polycom e mi sembra anche da Yealink negli ultimi firmware.
Per i softphone, devi provare. Non ti occorre uno stack SIP serio,
perché l'esigenza è minimale e neanche un parser degno di questo nome.
Spari un pacchetto di REFER ed aspetti una risposta 2xx (è andata bene)
o 4xx (è andata male).
 
Rappresenta un buco di sicurezza spaventoso degli apparati perché
per far partire una chiamata ad un 899 o a Cuba, basta fare arrivare
un pacchetto UDP al telefono con 4 header in croce, senza
autenticazioni di sorta, ma tant'è.
 
Buon lavoro.
 
 
-- 
Virgilio Lattanzi        Teamsystem Communication srl
Tel: 
+39 0733 818863
     via Fontanella, 38
Fax: 
+39 0733 819133
     62012 Civitanova Marche MC
WWW: 
www.tscomm.it
       ITALY