Domanda

Io lavoro per un negozio di software, che ha una casa di prodotto predictive dialer, e abbiamo bisogno di implementare una soluzione di obbedire alle liste do-not-call.

In sostanza, ho un database con i clienti / potenziali clienti che ho bisogno di chiamare, e un altro database con i numeri di telefono che non posso chiamare. Poiché il sistema è un predictive dialer, sulla base del rendimento dell'operazione, medie temporali e roba del genere, sarà comporre più o meno le chiamate per utente del sistema connesso. Di solito questo numero 'magia' è di circa 3 -. 4 chiamate per agente connesso

Il telefono repository numero per il predictive dialer è un database PostgreSQL. Il predictive dialer prendere un po 'di numeri fino dal database e inviare un comando al PBX per comporre il gruppo, e quindi la logica di business continua a trasferire i chiamate valide per gli impiegati del call center, ed ecc (questo è irrilevante come il mio problema è prima della chiamata).

Ho bisogno di implementare la funzionalità lista do-not-call. La lista di do-not-call sarà fornito alla nostra azienda da un ente governativo, in un file CSV, su base giornaliera. Ogni volta che ricevo un nuovo file CSV, devo eliminare il vecchio do-not-call-list, e mettere il nuovo al suo posto.

Il mio primo pensiero per la sua attuazione era fare un elaborazione batch, incrociando il Do Not Call lista con il mio database dei clienti attuali. Ma penso che, a seconda delle dimensioni della entrambi i database, il controllo incrociato sarebbe molto le prestazioni ad alta intensità, e, talvolta, non poteva essere finito durante la notte. Ho avuto questo tipo di problemi con l'elaborazione batch prima, e non è una bella cosa da vedere.

La mia seconda idea è nata quando ho pensato a come le grandi istituzioni di gestire sistemi di autorizzazione ad alte prestazioni e ad alta produttività, come la carta di credito o utente autenticazione / autorizzazione. Ho pensato che la creazione di un servizio di autenticazione per il Do Not Call numeri LIST, e cambiare l'algoritmo della mia predictive dialer per controllare ogni numero contro questo servizio di autorizzazione prima della composizione sarebbe stato facile.

Come sto confabulando solo qui, non ho idea di quale idea è il migliore, o se ho capito totalmente sbagliato e dovrebbe cercare di un'altra direzione. Quindi, la mia domanda è: quale sarebbe il tuo consiglio? Conservare la non chiami file CSV in memoria? usare LDAP? usare MySQL? PostgreSQL? Fare la cosa elaborazione batch? O sto sicuramente fregato?

Lo so che non sono la prima persona al mondo ad avere questo tipo di problema, quindi per favore mi illumini.

È stato utile?

Soluzione

La vostra sfida, di trovare un numero di voci all'interno di un vasto spazio di possibili voci, mi ricorda liste nere DNS / blocco .

  

rbldnsd è un piccolo e veloce DNS   daemon che è fatto specialmente   servire zone DNSBL. Questo daemon è stato   ispirato rbldns di Dan J. Bernstein   il programma si trova nel pacchetto djbdns. Più rbldnsd, da parte di Google

Ha il supporto per le zone name-based, in modo da potrebbe convertire l'elenco dei numeri di URI-style ENUM - ad esempio + 1-555-4242 diventa 2.4.2.4.5.5.5.1.e164.arpa. Questo viene poi inserito nel file di dati rbldnsd, compilato in memoria e vi si accede come qualsiasi altro blocklist. Un mezzo di ingresso di default possono-chiamare, o se esiste la voce, si sarebbe dato una voce DoNotCall.

Hai ancora il problema di conversione batch, però, anche se sarebbe uno script po 'più semplice, del tutto possibile a che fare con Perl o AWK. Si potrebbe anche essere in grado di dividere i file CSV in arrivo a più file per l'elaborazione in parallelo, e una fusione finale.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top